diff lisp/help.el @ 4506:bd28481bb0e1

Port #'window-buffer-height, #'fit-window-to-buffer, & window, buf, functions. lisp/ChangeLog addition: 2008-08-31 Aidan Kehoe <kehoea@parhasard.net> * window.el (only-window-p): New. Check if WINDOW is the only window in some context, normally its frame. (one-window-p): Implemented this in terms of #'only-window-p, calling it on the selected window. (window-buffer-height): Uncomment this, make it work. (count-screen-lines): Support a BUFFER argument. (fit-window-to-buffer): Uncomment this, correct its implementation to work with XEmacs. * help.el (temp-buffer-resize-mode): New. Name taken from GNU, implementation our own. * (resize-temp-buffer-window): New. GNU-compatible alias for #'shrink-window-if-larger-than-buffer. * dumped-lisp.el (preloaded-file-list): Move easy-mmode before help, now that the latter uses #'define-minor-mode. * frame.el: Point to #'temp-buffer-resize-mode in a comment. Some of this code is from GNU; help.el CVS version 1.327 of 2007-03-21, window.el CVS version 1.122, of 2007-06-24. Both these are GPLV2 or later.
author Aidan Kehoe <kehoea@parhasard.net>
date Sun, 31 Aug 2008 12:26:46 +0200
parents e7b3a3266356
children 69a1eda3da06
line wrap: on
line diff
--- a/lisp/help.el	Wed Aug 27 21:47:21 2008 +0200
+++ b/lisp/help.el	Sun Aug 31 12:26:46 2008 +0200
@@ -1878,4 +1878,21 @@
             (find-variable (extent-property e 'find-variable-symbol)))
 	(mouse-track event)))))
 
+(define-minor-mode temp-buffer-resize-mode
+  "Toggle the mode which makes windows smaller for temporary buffers.
+With prefix argument ARG, turn the resizing of windows displaying temporary
+buffers on if ARG is positive or off otherwise.
+This makes the window the right height for its contents, but never
+less than `window-min-height' nor a higher proportion of its frame than
+`temp-buffer-max-height'. (Note the differing semantics of the latter
+versus GNU Emacs, where `temp-buffer-max-height' is an integer number of
+lines.)
+This applies to `help', `apropos' and `completion' buffers, and some others."
+    :global t :group 'help
+    ;; XEmacs; our implementation of this is very different. 
+    (setq temp-buffer-shrink-to-fit temp-buffer-resize-mode))
+
+;; GNU name for this function. 
+(defalias 'resize-temp-buffer-window 'shrink-window-if-larger-than-buffer)
+
 ;;; help.el ends here