From 1e0e9b382c9e983e32472dedff84da33118bc3f1 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Mon, 6 Mar 2006 04:49:42 +0000 Subject: [PATCH] (hide-sublevels): Provide better interactive default. --- lisp/ChangeLog | 56 ++++++++++++++++++++++++------------------------- lisp/outline.el | 12 ++++++++--- 2 files changed, 37 insertions(+), 31 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 73ea842b8e5..2cec86754d1 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,7 +1,11 @@ +2006-03-05 Stefan Monnier + + * outline.el (hide-sublevels): Provide better interactive default. + 2006-03-06 Kenichi Handa - * international/fontset.el (create-fontset-from-fontset-spec): Fix - regexp for paring FONTSET-SPEC (allow spaces after `:'). + * international/fontset.el (create-fontset-from-fontset-spec): + Fix regexp for paring FONTSET-SPEC (allow spaces after `:'). 2006-03-05 Luc Teirlinck @@ -27,8 +31,8 @@ 2006-03-03 Agustin Martin - * textmodes/flyspell.el (flyspell-process-localwords): Be - case-sensitive. + * textmodes/flyspell.el (flyspell-process-localwords): + Be case-sensitive. 2006-03-03 Martin Rudalics @@ -41,7 +45,7 @@ they have no special meaning. * midnight.el (clean-buffer-list): Handle case where base-buffer of - indirect buffer gets killed before indirect buffer. Use dolist. + indirect buffer gets killed before indirect buffer. Use dolist. 2006-03-03 Ken Manheimer @@ -50,8 +54,8 @@ 2006-03-03 Slawomir Nowaczyk (tiny change) - * textmodes/flyspell.el (flyspell-external-point-words): Be - case-sensitive. + * textmodes/flyspell.el (flyspell-external-point-words): + Be case-sensitive. 2006-03-03 Ryan Yeske @@ -75,8 +79,8 @@ * dframe.el (dframe-frame-mode): Don't burp when menu-bar-lines is nil. - * progmodes/gud.el (gud-speedbar-menu-items): Use - buffer-local-value and add missing :visible keyword. + * progmodes/gud.el (gud-speedbar-menu-items): + Use buffer-local-value and add missing :visible keyword. * progmodes/gdb-ui.el (gdb-speedbar-refresh): Quieten speedbar-refresh. @@ -93,8 +97,7 @@ (org-read-date): Add (require 'parse-time). (org-set-tags): Fix bug with extra inserted space. (org-export-html-style): Define a style class for targets. - (org-agenda-keymap, org-mouse-map): Add a binding for - `follow-link'. + (org-agenda-keymap, org-mouse-map): Add a binding for `follow-link'. (org-hide-leading-stars): New option. (org-hide): New face. (org-set-font-lock-defaults): Allow to hide leading stars. @@ -114,7 +117,7 @@ * progmodes/gdb-ui.el (gdb-speedbar-refresh): Rename from gdb-speedbar-timer-fn. Use speedbar-refresh instead of - speedbar-timer-fn + speedbar-timer-fn. (gdb-var-update-handler, gdb-var-update-handler-1): Use it. (gdb-speedbar-expand-node): Use speedbar-delete-subblock instead of gdb-speedbar-timer-fn. @@ -201,17 +204,17 @@ * startup.el (command-line): * subr.el (locate-library): * emacs-lisp/autoload.el (update-directory-autoloads): - * emacs-lisp/find-func.el (find-library-suffixes): Use - `get-load-suffixes' instead of `load-suffixes'. + * emacs-lisp/find-func.el (find-library-suffixes): + Use `get-load-suffixes' instead of `load-suffixes'. * subr.el (locate-library): - * emacs-lisp/find-func.el (find-library-name): Use - `load-file-rep-suffixes' instead of '(""). + * emacs-lisp/find-func.el (find-library-name): + Use `load-file-rep-suffixes' instead of '(""). 2006-02-26 Kim F. Storm - * ido.el (ido-save-history, ido-load-history): Simplify. Don't - use find-file-noselect to avoid interference from other modes. + * ido.el (ido-save-history, ido-load-history): Simplify. + Don't use find-file-noselect to avoid interference from other modes. 2006-02-25 Thien-Thi Nguyen @@ -230,8 +233,8 @@ 2006-02-24 Alan Mackenzie - * progmodes/cc-mode.el (c-postprocess-file-styles): Bind - inhibit-read-only to t, around the call to + * progmodes/cc-mode.el (c-postprocess-file-styles): + Bind inhibit-read-only to t, around the call to c-remove-any-local-eval-or-mode-variables, so that it works on a RO file. @@ -272,13 +275,12 @@ * progmodes/cc-mode.el: [Supersedes patch to cc-engine.el 2005-12-16T20:07:49Z!monnier@iro.umontreal.ca] - (c-after-change): Protect the match data with save-match-data. It - was getting corrupted by c-after-change-check-<>-operators. + (c-after-change): Protect the match data with save-match-data. + It was getting corrupted by c-after-change-check-<>-operators. * cc-defs.el: [Supersedes patch V1.38]: (top level): Check for a buggy font-lock-compile-keywords ONLY in - XEmacs. GNU Emacs 22 now has a check which would throw an error - here. + XEmacs. GNU Emacs 22 now has a check which would throw an error here. * progmodes/cc-awk.el (c-awk-after-change): Protect the match data with save-match-data. It was being corrupted when Font Lock was @@ -294,14 +296,12 @@ (c-forward-objc-directive): Replace c-forward-token-2 with crude coding; c-f-t-2 doesn't move over a token at EOB. - * progmodes/cc-defs.el (c-version): Update version number to - 5.31.2 + * progmodes/cc-defs.el (c-version): Update version number to 5.31.2. * progmodes/cc-cmds.el, cc-mode.el, cc-engine.el (c-update-modeline): Concatenate the minor mode indicators directly onto mode-name, removing c-submode-indicators. - Sometimes, c-s-i got separated from the mode name on the mode - line. + Sometimes, c-s-i got separated from the mode name on the mode line. * progmodes/cc-cmds.el (c-electric-brace, c-electric-semi&comma) (c-electric-colon): Correct doc-strings: "/ln" -> "/la". diff --git a/lisp/outline.el b/lisp/outline.el index fdbad00ada3..92542bae7e3 100644 --- a/lisp/outline.el +++ b/lisp/outline.el @@ -46,7 +46,7 @@ :group 'editing) (defcustom outline-regexp "[*\^L]+" - "*Regular expression to match the beginning of a heading. + "Regular expression to match the beginning of a heading. Any line whose beginning matches this regexp is considered to start a heading. Note that Outline mode only checks this regexp at the start of a line, so the regexp need not (and usually does not) start with `^'. @@ -56,7 +56,7 @@ in the file it applies to. See also `outline-heading-end-regexp'." :group 'outlines) (defcustom outline-heading-end-regexp "\n" - "*Regular expression to match the end of a heading line. + "Regular expression to match the end of a heading line. You can assume that point is at the beginning of a heading when this regexp is searched for. The heading ends at the end of the match. The recommended way to set this is with a `Local Variables:' list @@ -828,7 +828,13 @@ Show the heading too, if it is currently invisible." (defun hide-sublevels (levels) "Hide everything but the top LEVELS levels of headers, in whole buffer." - (interactive "p") + (interactive (list + (cond + (current-prefix-arg (prefix-numeric-value current-prefix-arg)) + ((save-excursion (beginning-of-line) + (looking-at outline-regexp)) + (funcall outline-level)) + (t 1)))) (if (< levels 1) (error "Must keep at least one level of headers")) (let (outline-view-change-hook) -- 2.39.2