aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThien-Thi Nguyen2000-09-23 02:37:50 +0000
committerThien-Thi Nguyen2000-09-23 02:37:50 +0000
commit9b4a7800433b33bc402676e17da152f1e358bf4f (patch)
treea601a7f4f2be6257df4de34dfe8fa7c492fd0e66
parent0c356565b96bc0ecd249a5beee403dff3d00b917 (diff)
downloademacs-9b4a7800433b33bc402676e17da152f1e358bf4f.tar.gz
emacs-9b4a7800433b33bc402676e17da152f1e358bf4f.zip
Update author email address.
Generally, sync w/ maintainer version 5.22. (hs-hide-all-non-comment-function): New var. (hs-hide-hook, hs-show-hook, hs-minor-mode): Update docstrings. (hs-hide-all): Use `hs-hide-all-non-comment-function'. (hs-show-region): Delete this command. (hs-minor-mode-map): Change bindings to leave "C-c LETTER" alone.
-rw-r--r--lisp/ChangeLog99
-rw-r--r--lisp/progmodes/hideshow.el191
2 files changed, 154 insertions, 136 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index c6b02211682..b1d1fad795a 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,14 @@
12000-09-23 Thien-Thi Nguyen <ttn@gnu.org>
2
3 * progmodes/hideshow.el: Update author email address.
4 Generally, sync w/ maintainer version 5.22.
5
6 (hs-hide-all-non-comment-function): New var.
7 (hs-hide-hook, hs-show-hook, hs-minor-mode): Update docstrings.
8 (hs-hide-all): Use `hs-hide-all-non-comment-function'.
9 (hs-show-region): Delete this command.
10 (hs-minor-mode-map): Change bindings to leave "C-c LETTER" alone.
11
12000-09-22 Dave Love <fx@gnu.org> 122000-09-22 Dave Love <fx@gnu.org>
2 13
3 * hl-line.el (hl-line-overlay): Don't make it buffer-local. 14 * hl-line.el (hl-line-overlay): Don't make it buffer-local.
@@ -17,10 +28,10 @@
17 28
182000-09-22 Andre Spiegel <spiegel@gnu.org> 292000-09-22 Andre Spiegel <spiegel@gnu.org>
19 30
20 * vc.el (vc-switch-backend): Signal an error if the file is not 31 * vc.el (vc-switch-backend): Signal an error if the file is not
21 registered under the new backend. 32 registered under the new backend.
22 33
23 * vc-rcs.el (vc-rcs-checkin): Fix bug that prevented check-in 34 * vc-rcs.el (vc-rcs-checkin): Fix bug that prevented check-in
24 without explicit revision number. 35 without explicit revision number.
25 36
262000-09-21 Stefan Monnier <monnier@cs.yale.edu> 372000-09-21 Stefan Monnier <monnier@cs.yale.edu>
@@ -40,14 +51,14 @@
40 51
41 * startup.el (command-line): If frame was created with a non-zero 52 * startup.el (command-line): If frame was created with a non-zero
42 tool-bar-lines parameter, switch tool-bar-mode on. 53 tool-bar-lines parameter, switch tool-bar-mode on.
43 54
44 * add-log.el (change-log-date-face, change-log-name-face) 55 * add-log.el (change-log-date-face, change-log-name-face)
45 (change-log-email-face, change-log-file-face) 56 (change-log-email-face, change-log-file-face)
46 (change-log-list-face, change-log-conditionals-face) 57 (change-log-list-face, change-log-conditionals-face)
47 (change-log-function-face, change-log-acknowledgement-face): New 58 (change-log-function-face, change-log-acknowledgement-face): New
48 faces, inheriting from font-lock faces. 59 faces, inheriting from font-lock faces.
49 (change-log-font-lock-keywords): Use them. 60 (change-log-font-lock-keywords): Use them.
50 61
512000-09-21 Dave Love <fx@gnu.org> 622000-09-21 Dave Love <fx@gnu.org>
52 63
53 * progmodes/cperl-mode.el (top-level): Clean up 64 * progmodes/cperl-mode.el (top-level): Clean up
@@ -88,9 +99,9 @@
88 (vc-rcs-unregister, vc-rcs-receive-file, 99 (vc-rcs-unregister, vc-rcs-receive-file,
89 vc-rcs-set-non-strict-locking): New functions. 100 vc-rcs-set-non-strict-locking): New functions.
90 101
91 * vc-hooks.el (vc-name): Force correct computation of the value 102 * vc-hooks.el (vc-name): Force correct computation of the value
92 in case it is missing. 103 in case it is missing.
93 104
942000-09-21 Gerd Moellmann <gerd@gnu.org> 1052000-09-21 Gerd Moellmann <gerd@gnu.org>
95 106
96 * startup.el (fancy-splash-tail): Use a different foreground 107 * startup.el (fancy-splash-tail): Use a different foreground
@@ -239,7 +250,7 @@
239 underlined. 250 underlined.
240 251
2412000-09-19 Richard M. Stallman <rms@gnu.org> 2522000-09-19 Richard M. Stallman <rms@gnu.org>
242 253
243 * progmodes/sh-script.el (sh-search-word): Rewritten for 254 * progmodes/sh-script.el (sh-search-word): Rewritten for
244 speed. 255 speed.
245 256
@@ -268,7 +279,7 @@
268 (fancy-splash-screens): New functions. 279 (fancy-splash-screens): New functions.
269 (command-line-1): If display has a `display' frame parameter, has 280 (command-line-1): If display has a `display' frame parameter, has
270 colors, and we have XPM support, show more fancy splash screens. 281 colors, and we have XPM support, show more fancy splash screens.
271 282
2722000-09-19 Dave Love <fx@gnu.org> 2832000-09-19 Dave Love <fx@gnu.org>
273 284
274 * map-ynp.el (map-y-or-n-p): Check use-dialog-box. Don't lose 285 * map-ynp.el (map-y-or-n-p): Check use-dialog-box. Don't lose
@@ -295,7 +306,7 @@
295 (diff-apply-hunk): Try to jump to the line in the source text 306 (diff-apply-hunk): Try to jump to the line in the source text
296 corresponding to the position of point in the in the hunk. 307 corresponding to the position of point in the in the hunk.
297 308
298 * info.el (Info-title-3-face, Info-title-2-face) 309 * info.el (Info-title-3-face, Info-title-2-face)
299 (Info-title-1-face): Use face inheritance and relative sizes 310 (Info-title-1-face): Use face inheritance and relative sizes
300 instead of hard-wiring things. 311 instead of hard-wiring things.
301 312
@@ -478,7 +489,7 @@
478 (ansi-color-get-face): Doc change. 489 (ansi-color-get-face): Doc change.
479 (ansi-color-make-face): Removed. 490 (ansi-color-make-face): Removed.
480 (ansi-color-for-shell-mode): New option. 491 (ansi-color-for-shell-mode): New option.
481 492
4822000-09-13 Kenichi Handa <handa@etl.go.jp> 4932000-09-13 Kenichi Handa <handa@etl.go.jp>
483 494
484 * international/quail.el (quail-start-translation): Translate KEY 495 * international/quail.el (quail-start-translation): Translate KEY
@@ -593,8 +604,8 @@
593 604
5942000-09-08 Stefan Monnier <monnier@cs.yale.edu> 6052000-09-08 Stefan Monnier <monnier@cs.yale.edu>
595 606
596 * vc-sccs.el (vc-sccs-register): 607 * vc-sccs.el (vc-sccs-register):
597 * vc-rcs.el (vc-rcs-register): 608 * vc-rcs.el (vc-rcs-register):
598 * vc-cvs.el (vc-cvs-register): Don't clear file's properties. 609 * vc-cvs.el (vc-cvs-register): Don't clear file's properties.
599 * vc.el (vc-register): Clear file's properties. 610 * vc.el (vc-register): Clear file's properties.
600 611
@@ -643,14 +654,14 @@
6432000-09-07 Gerd Moellmann <gerd@gnu.org> 6542000-09-07 Gerd Moellmann <gerd@gnu.org>
644 655
645 * faces.el (color-values): Doc fix. 656 * faces.el (color-values): Doc fix.
646 657
647 * faces.el (frame-set-background-mode): Use frame-parameter 658 * faces.el (frame-set-background-mode): Use frame-parameter
648 instead of frame-parameters. 659 instead of frame-parameters.
649 660
650 * frame.el (filtered-frame-list): Reduce consing. 661 * frame.el (filtered-frame-list): Reduce consing.
651 (frames-on-display-list): Call frame-parameter instead of 662 (frames-on-display-list): Call frame-parameter instead of
652 frame-parameters. 663 frame-parameters.
653 664
6542000-09-07 Kenichi Handa <handa@etl.go.jp> 6652000-09-07 Kenichi Handa <handa@etl.go.jp>
655 666
656 * language/devan-util.el (devanagari-to-indian-region): In the 667 * language/devan-util.el (devanagari-to-indian-region): In the
@@ -661,7 +672,7 @@
661 * menu-bar.el (menu-bar-update-buffers): Call frame-parameter 672 * menu-bar.el (menu-bar-update-buffers): Call frame-parameter
662 instead of frame-parameters. 673 instead of frame-parameters.
663 674
664 * faces.el (set-face-attribute): Simplify by calling 675 * faces.el (set-face-attribute): Simplify by calling
665 internal-set-lisp-face-attribute with FRAME being 0. 676 internal-set-lisp-face-attribute with FRAME being 0.
666 677
667 * vc.el: Remove `Id' version control keyword. 678 * vc.el: Remove `Id' version control keyword.
@@ -725,10 +736,10 @@
725 (vc-default-merge-news): Removed. The existence of a merge-news 736 (vc-default-merge-news): Removed. The existence of a merge-news
726 implementation is now checked on caller sites. 737 implementation is now checked on caller sites.
727 738
728 * vc-hooks.el (vc-default-mode-line-string): Removed CVS special 739 * vc-hooks.el (vc-default-mode-line-string): Removed CVS special
729 case. 740 case.
730 741
731 * vc-cvs.el (vc-cvs-mode-line-string): New function, handles the 742 * vc-cvs.el (vc-cvs-mode-line-string): New function, handles the
732 special case that has been removed from the default in vc-hooks.el. 743 special case that has been removed from the default in vc-hooks.el.
733 744
7342000-09-05 Stefan Monnier <monnier@cs.yale.edu> 7452000-09-05 Stefan Monnier <monnier@cs.yale.edu>
@@ -742,18 +753,18 @@
742 macro `with-vc-properties' in vc.el. 753 macro `with-vc-properties' in vc.el.
743 (vc-file-getprop): Doc fix. 754 (vc-file-getprop): Doc fix.
744 (vc-after-save): Call `vc-dired-resynch-file' only if vc is loaded. 755 (vc-after-save): Call `vc-dired-resynch-file' only if vc is loaded.
745 756
746 * vc.el: Require dired-aux during compilation. 757 * vc.el: Require dired-aux during compilation.
747 (vc-name-assoc-file): Moved to vc-sccs.el. 758 (vc-name-assoc-file): Moved to vc-sccs.el.
748 (with-vc-properties): New macro. 759 (with-vc-properties): New macro.
749 (vc-checkin, vc-checkout, vc-revert, vc-cancel-version, 760 (vc-checkin, vc-checkout, vc-revert, vc-cancel-version,
750 vc-finish-steal): Use it. 761 vc-finish-steal): Use it.
751 (vc-cancel-version): Moved RCS-specific code to vc-rcs.el. The call 762 (vc-cancel-version): Moved RCS-specific code to vc-rcs.el. The call
752 to the backend-specific function is now supposed to do the checkout, 763 to the backend-specific function is now supposed to do the checkout,
753 too. 764 too.
754 (vc-log-edit): Handle FILE being nil and added a FIXME for log-edit. 765 (vc-log-edit): Handle FILE being nil and added a FIXME for log-edit.
755 766
756 * vc-cvs.el (vc-cvs-checkin, vc-cvs-checkout): Don't bother to 767 * vc-cvs.el (vc-cvs-checkin, vc-cvs-checkout): Don't bother to
757 set file properties; that gets done in the generic code now. 768 set file properties; that gets done in the generic code now.
758 769
759 * vc-rcs.el (vc-rcs-uncheck): Renamed to `vc-rcs-cancel-version'. 770 * vc-rcs.el (vc-rcs-uncheck): Renamed to `vc-rcs-cancel-version'.
@@ -812,7 +823,7 @@
8122000-09-04 Gerd Moellmann <gerd@gnu.org> 8232000-09-04 Gerd Moellmann <gerd@gnu.org>
813 824
814 * vc.el (vc-dired-resynch-file): Add autoload cookie. 825 * vc.el (vc-dired-resynch-file): Add autoload cookie.
815 826
816 * vc.el (toplevel): Require `dired' at run-time for dired-mode-map. 827 * vc.el (toplevel): Require `dired' at run-time for dired-mode-map.
817 828
818 * Makefile.in (DONTCOMPILE): Fix typo in file name. 829 * Makefile.in (DONTCOMPILE): Fix typo in file name.
@@ -847,7 +858,7 @@
847 858
848 * vc-cvs.el (vc-cvs-show-log-entry): New function. 859 * vc-cvs.el (vc-cvs-show-log-entry): New function.
849 860
850 * vc-hooks.el (vc-default-mode-line-string): Show state 861 * vc-hooks.el (vc-default-mode-line-string): Show state
851 `needs-patch' as a `-' too. 862 `needs-patch' as a `-' too.
852 863
8532000-09-04 Andre Spiegel <spiegel@gnu.org> 8642000-09-04 Andre Spiegel <spiegel@gnu.org>
@@ -863,7 +874,7 @@
863 (vc-retrieve-snapshot): Corrected prompt order. 874 (vc-retrieve-snapshot): Corrected prompt order.
864 875
865 * vc-hooks.el (vc-after-save): Call vc-dired-resynch-file. 876 * vc-hooks.el (vc-after-save): Call vc-dired-resynch-file.
866 877
867 * vc-cvs.el (vc-cvs-stay-local): Allow it to be a hostname regexp 878 * vc-cvs.el (vc-cvs-stay-local): Allow it to be a hostname regexp
868 as well. 879 as well.
869 (vc-cvs-remote-p): Renamed to vc-cvs-stay-local-p. Handle 880 (vc-cvs-remote-p): Renamed to vc-cvs-stay-local-p. Handle
@@ -872,7 +883,7 @@
872 (vc-cvs-could-register): New function. 883 (vc-cvs-could-register): New function.
873 (vc-cvs-retrieve-snapshot): Parse "cvs update" output, keep file 884 (vc-cvs-retrieve-snapshot): Parse "cvs update" output, keep file
874 properties up-to-date. 885 properties up-to-date.
875 886
876 * vc-rcs.el (vc-rcs-register): If there is no RCS subdir, ask the 887 * vc-rcs.el (vc-rcs-register): If there is no RCS subdir, ask the
877 user whether to create one. 888 user whether to create one.
878 889
@@ -915,7 +926,7 @@
915 (vc-cvs-dir-state-heuristic): New function, subroutine of the above. 926 (vc-cvs-dir-state-heuristic): New function, subroutine of the above.
916 (vc-cvs-parse-entry): New function, also to be used in 927 (vc-cvs-parse-entry): New function, also to be used in
917 vc-cvs-registered. 928 vc-cvs-registered.
918 929
9192000-09-04 Stefan Monnier <monnier@cs.yale.edu> 9302000-09-04 Stefan Monnier <monnier@cs.yale.edu>
920 931
921 * vc.el (vc-revert-buffer): Hide the frame for dedicated windows 932 * vc.el (vc-revert-buffer): Hide the frame for dedicated windows
@@ -930,7 +941,7 @@
930 941
931 * vc-sccs.el (vc-sccs-update-changelog): Dummy implementation that 942 * vc-sccs.el (vc-sccs-update-changelog): Dummy implementation that
932 simply signals an error. 943 simply signals an error.
933 944
9342000-09-04 Stefan Monnier <monnier@cs.yale.edu> 9452000-09-04 Stefan Monnier <monnier@cs.yale.edu>
935 946
936 * vc-cvs.el (vc-cvs-checkout): Slight restructuring to make the 947 * vc-cvs.el (vc-cvs-checkout): Slight restructuring to make the
@@ -953,7 +964,7 @@
953 964
954 * vc-*.el (vc-*-checkout): Switch off coding systems for checkout 965 * vc-*.el (vc-*-checkout): Switch off coding systems for checkout
955 via stdout. (Merge from main line.) 966 via stdout. (Merge from main line.)
956 967
9572000-09-04 Stefan Monnier <monnier@cs.yale.edu> 9682000-09-04 Stefan Monnier <monnier@cs.yale.edu>
958 969
959 * vc.el (vc-finish-logentry): Thinko in the "same comment" 970 * vc.el (vc-finish-logentry): Thinko in the "same comment"
@@ -2369,7 +2380,7 @@
2369 2380
23702000-08-31 Peter Breton <pbreton@ne.mediaone.net> 23812000-08-31 Peter Breton <pbreton@ne.mediaone.net>
2371 2382
2372 * filecache.el (file-cache-add-directory-using-find): Don't quote 2383 * filecache.el (file-cache-add-directory-using-find): Don't quote
2373 wildcards on MS-DOS. Suggested by Eli Zaretskii <eliz@is.elta.co.il>. 2384 wildcards on MS-DOS. Suggested by Eli Zaretskii <eliz@is.elta.co.il>.
2374 2385
23752000-08-31 Kenichi Handa <handa@etl.go.jp> 23862000-08-31 Kenichi Handa <handa@etl.go.jp>
@@ -2420,7 +2431,7 @@
2420 2431
2421 * comint.el (comint-send-input): Create overlays using the proper 2432 * comint.el (comint-send-input): Create overlays using the proper
2422 front/read-advance arguments. 2433 front/read-advance arguments.
2423 2434
24242000-08-29 Vinicius Jose Latorre <vinicius@cpqd.com.br> 24352000-08-29 Vinicius Jose Latorre <vinicius@cpqd.com.br>
2425 2436
2426 * ps-print.el: Even/odd pages printing. Doc fix. 2437 * ps-print.el: Even/odd pages printing. Doc fix.
@@ -2435,7 +2446,7 @@
2435 (ebnf-user-arrow): Change variable customization to sexp. 2446 (ebnf-user-arrow): Change variable customization to sexp.
2436 (ebnf-user-arrow): Function eliminated. 2447 (ebnf-user-arrow): Function eliminated.
2437 (ebnf-eps-finish-and-write, ebnf-insert-ebnf-prologue): Code fix. 2448 (ebnf-eps-finish-and-write, ebnf-insert-ebnf-prologue): Code fix.
2438 2449
24392000-08-29 Kenichi Handa <handa@etl.go.jp> 24502000-08-29 Kenichi Handa <handa@etl.go.jp>
2440 2451
2441 * help.el (help-xref-mule-regexp): New variable. 2452 * help.el (help-xref-mule-regexp): New variable.
@@ -2522,9 +2533,9 @@
2522 entries (used for group/user name aliasing to multiple IDs) are 2533 entries (used for group/user name aliasing to multiple IDs) are
2523 ignored. 2534 ignored.
2524 2535
2525 * eshell/em-xtra.el (eshell/expr): 2536 * eshell/em-xtra.el (eshell/expr):
2526 * eshell/em-unix.el (eshell/du, eshell/cat, eshell/make) 2537 * eshell/em-unix.el (eshell/du, eshell/cat, eshell/make)
2527 (eshell-grep, eshell/diff, eshell/locate): 2538 (eshell-grep, eshell/diff, eshell/locate):
2528 * eshell/em-dirs.el (eshell-dirs-substitute-cd): Flatten the 2539 * eshell/em-dirs.el (eshell-dirs-substitute-cd): Flatten the
2529 argument list, before passing it to the system command. 2540 argument list, before passing it to the system command.
2530 2541
@@ -2556,8 +2567,8 @@
2556 * eshell/esh-mode.el (eshell-mode): Disable auto-fill-function in 2567 * eshell/esh-mode.el (eshell-mode): Disable auto-fill-function in
2557 Eshell buffers. 2568 Eshell buffers.
2558 2569
2559 * eshell/esh-var.el (eshell-interpolate-variable): 2570 * eshell/esh-var.el (eshell-interpolate-variable):
2560 * eshell/esh-mode.el (eshell-move-argument): 2571 * eshell/esh-mode.el (eshell-move-argument):
2561 * eshell/em-unix.el (eshell-du-sum-directory): 2572 * eshell/em-unix.el (eshell-du-sum-directory):
2562 * eshell/em-rebind.el (eshell-delchar-or-maybe-eof): 2573 * eshell/em-rebind.el (eshell-delchar-or-maybe-eof):
2563 * eshell/em-ls.el (eshell-ls-decorated-name): Use /= instead of 2574 * eshell/em-ls.el (eshell-ls-decorated-name): Use /= instead of
@@ -2573,7 +2584,7 @@
2573 Don't convert \n into \0177 in memory. 2584 Don't convert \n into \0177 in memory.
2574 (eshell-read-history, eshell-write-history): Convert \n to \0177, 2585 (eshell-read-history, eshell-write-history): Convert \n to \0177,
2575 and back again, when reading and writing. 2586 and back again, when reading and writing.
2576 2587
25772000-08-28 Eli Zaretskii <eliz@is.elta.co.il> 25882000-08-28 Eli Zaretskii <eliz@is.elta.co.il>
2578 2589
2579 * eshell/esh-util.el (eshell-processp): Added to relieve constant 2590 * eshell/esh-util.el (eshell-processp): Added to relieve constant
@@ -2617,7 +2628,7 @@
2617 * locate.el (locate): Cleaned up locate command's interactive prompting 2628 * locate.el (locate): Cleaned up locate command's interactive prompting
2618 Thanks to Fran,Ag(Bois_Pinard <pinard@iro.umontreal.ca> for suggestions. 2629 Thanks to Fran,Ag(Bois_Pinard <pinard@iro.umontreal.ca> for suggestions.
2619 2630
2620 * filecache.el (file-cache-case-fold-search): New variable 2631 * filecache.el (file-cache-case-fold-search): New variable
2621 (file-cache-assoc-function): New variable 2632 (file-cache-assoc-function): New variable
2622 (file-cache-minibuffer-complete): Use file-cache-assoc-function. 2633 (file-cache-minibuffer-complete): Use file-cache-assoc-function.
2623 Use file-cache-case-fold-search variable 2634 Use file-cache-case-fold-search variable
@@ -2739,7 +2750,7 @@
2739 * comint.el (comint-output-filter): Compare end of 2750 * comint.el (comint-output-filter): Compare end of
2740 comint-last-output-overlay with the start of the newly inserted 2751 comint-last-output-overlay with the start of the newly inserted
2741 text, not the end, when deciding whether to extend it. 2752 text, not the end, when deciding whether to extend it.
2742 Set saved-point's insertion type to advance after insertion. 2753 Set saved-point's insertion type to advance after insertion.
2743 2754
2744 * shell.el (shell-font-lock-keywords): Remove prompt highlighting, 2755 * shell.el (shell-font-lock-keywords): Remove prompt highlighting,
2745 since this is now done independently of font-lock mode. 2756 since this is now done independently of font-lock mode.
@@ -2753,7 +2764,7 @@
2753 (server-buffer-done): If server-kill-new-buffers is t, kill the 2764 (server-buffer-done): If server-kill-new-buffers is t, kill the
2754 buffer, unless it was already present before visiting it with 2765 buffer, unless it was already present before visiting it with
2755 Emacs server. 2766 Emacs server.
2756 2767
27572000-08-21 Eli Zaretskii <eliz@is.elta.co.il> 27682000-08-21 Eli Zaretskii <eliz@is.elta.co.il>
2758 2769
2759 * man.el (Man-init-defvars): Don't reset Man-fontify-manpage-flag, 2770 * man.el (Man-init-defvars): Don't reset Man-fontify-manpage-flag,
@@ -2973,7 +2984,7 @@
2973 2984
2974 * loadhist.el (unload-feature): Typo. 2985 * loadhist.el (unload-feature): Typo.
2975 2986
2976 * finder.el (finder-compile-keywords): 2987 * finder.el (finder-compile-keywords):
2977 * cus-dep.el (custom-make-dependencies): Add local-variable settings 2988 * cus-dep.el (custom-make-dependencies): Add local-variable settings
2978 to the generated file. 2989 to the generated file.
2979 2990
@@ -2982,8 +2993,8 @@
2982 2993
2983 * play/landmark.el: 2994 * play/landmark.el:
2984 * options.el (Edit-options-{set,toggle,t,nil}): 2995 * options.el (Edit-options-{set,toggle,t,nil}):
2985 * mail/mailabbrev.el (mail-abbrevs-mode): 2996 * mail/mailabbrev.el (mail-abbrevs-mode):
2986 * textmodes/tex-mode.el (tex-expand-files): 2997 * textmodes/tex-mode.el (tex-expand-files):
2987 * textmodes/outline.el (outline-minor-mode): Don't quote lambda. 2998 * textmodes/outline.el (outline-minor-mode): Don't quote lambda.
2988 2999
2989 * term/bg-mouse.el (bg-mouse-report): screen-height -> frame-height. 3000 * term/bg-mouse.el (bg-mouse-report): screen-height -> frame-height.
@@ -2991,7 +3002,7 @@
2991 * emacs-lisp/ewoc.el (ewoc-locate): Default POS to (point). 3002 * emacs-lisp/ewoc.el (ewoc-locate): Default POS to (point).
2992 (ewoc-goto-prev, ewoc-goto-next): Remove arg POS. 3003 (ewoc-goto-prev, ewoc-goto-next): Remove arg POS.
2993 Allow going past the last element. 3004 Allow going past the last element.
2994 * pcvs.el (cvs-mode-previous-line, cvs-mode-next-line, cvs-mode-mark) 3005 * pcvs.el (cvs-mode-previous-line, cvs-mode-next-line, cvs-mode-mark)
2995 (cvs-mode-unmark-up, cvs-get-marked): Update calls to ewoc. 3006 (cvs-mode-unmark-up, cvs-get-marked): Update calls to ewoc.
2996 (cvs-mouse-toggle-mark): Don't move point. 3007 (cvs-mouse-toggle-mark): Don't move point.
2997 (cvs-revert-if-needed): Avoid re-eval of local variables and modes. 3008 (cvs-revert-if-needed): Avoid re-eval of local variables and modes.
diff --git a/lisp/progmodes/hideshow.el b/lisp/progmodes/hideshow.el
index 6fccb860d4b..f47e5cd7a74 100644
--- a/lisp/progmodes/hideshow.el
+++ b/lisp/progmodes/hideshow.el
@@ -2,10 +2,10 @@
2 2
3;; Copyright (C) 1994, 95, 96, 97, 98, 99, 2000 Free Software Foundation 3;; Copyright (C) 1994, 95, 96, 97, 98, 99, 2000 Free Software Foundation
4 4
5;; Author: Thien-Thi Nguyen <ttn@netcom.com> 5;; Author: Thien-Thi Nguyen <ttn@gnu.org>
6;; Dan Nicolaescu <dann@ics.uci.edu> 6;; Dan Nicolaescu <dann@ics.uci.edu>
7;; Keywords: C C++ java lisp tools editing comments blocks hiding outlines 7;; Keywords: C C++ java lisp tools editing comments blocks hiding outlines
8;; Maintainer-Version: 5.11 8;; Maintainer-Version: 5.22
9;; Time-of-Day-Author-Most-Likely-to-be-Recalcitrant: early morning 9;; Time-of-Day-Author-Most-Likely-to-be-Recalcitrant: early morning
10 10
11;; This file is part of GNU Emacs. 11;; This file is part of GNU Emacs.
@@ -33,13 +33,12 @@
33;; are available, implementing block hiding and showing. They (and their 33;; are available, implementing block hiding and showing. They (and their
34;; keybindings) are: 34;; keybindings) are:
35;; 35;;
36;; hs-hide-block C-c h 36;; hs-hide-block C-c C-h
37;; hs-show-block C-c s 37;; hs-show-block C-c C-s
38;; hs-hide-all C-c H 38;; hs-hide-all C-c C-M-h
39;; hs-show-all C-c S 39;; hs-show-all C-c C-M-s
40;; hs-show-region C-c R 40;; hs-hide-level C-c C-l
41;; hs-hide-level C-c L 41;; hs-toggle-hiding C-c C-c
42;; hs-toggle-hiding
43;; hs-mouse-toggle-hiding [(shift button-2)] 42;; hs-mouse-toggle-hiding [(shift button-2)]
44;; hs-hide-initial-comment-block 43;; hs-hide-initial-comment-block
45;; 44;;
@@ -55,10 +54,25 @@
55;; 54;;
56;; You can use `M-x customize-variable' on the following variables: 55;; You can use `M-x customize-variable' on the following variables:
57;; 56;;
58;; hs-hide-comments-when-hiding-all -- self-explanatory! 57;; - hs-hide-comments-when-hiding-all -- self-explanatory!
59;; hs-isearch-open -- what kind of hidden blocks to 58;; - hs-hide-all-non-comment-function -- if non-nil, when doing a
59;; `hs-hide-all', this function
60;; is called w/ no arguments
61;; - hs-isearch-open -- what kind of hidden blocks to
60;; open when doing isearch 62;; open when doing isearch
61;; 63;;
64;; Some languages (e.g., Java) are deeply nested, so the normal behavior
65;; of `hs-hide-all' (hiding all but top-level blocks) results in very
66;; little information shown, which is not very useful. You can use the
67;; variable `hs-hide-all-non-comment-function' to implement your idea of
68;; what is more useful. For example, the following code shows the next
69;; nested level in addition to the top-level:
70;;
71;; (defun ttn-hs-hide-level-1 ()
72;; (hs-hide-level 1)
73;; (forward-sexp 1))
74;; (setq hs-hide-all-non-comment-function 'ttn-hs-hide-level-1)
75;;
62;; Hideshow works w/ incremental search (isearch) by setting the variable 76;; Hideshow works w/ incremental search (isearch) by setting the variable
63;; `hs-headline', which is the line of text at the beginning of a hidden 77;; `hs-headline', which is the line of text at the beginning of a hidden
64;; block that contains a match for the search. You can have this show up 78;; block that contains a match for the search. You can have this show up
@@ -74,10 +88,12 @@
74;; Hooks are run after some commands: 88;; Hooks are run after some commands:
75;; 89;;
76;; hs-hide-hook in hs-hide-block, hs-hide-all, hs-hide-level 90;; hs-hide-hook in hs-hide-block, hs-hide-all, hs-hide-level
77;; hs-show-hook hs-show-block, hs-show-all, hs-show-region 91;; hs-show-hook hs-show-block, hs-show-all
78;; 92;;
79;; All hooks are run w/ `run-hooks'. See docs for each variable or hook 93;; One of `hs-hide-hook' or `hs-show-hook' is run for the toggling
80;; for more info. 94;; commands when the result of the toggle is to hide or show blocks,
95;; respectively. All hooks are run w/ `run-hooks'. See docs for each
96;; variable or hook for more info.
81;; 97;;
82;; Normally, hideshow tries to determine appropriate values for block 98;; Normally, hideshow tries to determine appropriate values for block
83;; and comment definitions by examining the buffer's major mode. If 99;; and comment definitions by examining the buffer's major mode. If
@@ -102,7 +118,8 @@
102;; Then, add the following to your ~/.emacs: 118;; Then, add the following to your ~/.emacs:
103;; 119;;
104;; (load-library "hideshow") 120;; (load-library "hideshow")
105;; (add-hook 'X-mode-hook 'hs-minor-mode) ; other modes similarly 121;; (add-hook 'X-mode-hook ; other modes similarly
122;; '(lambda () (hs-minor-mode 1)))
106;; 123;;
107;; where X = {emacs-lisp,c,c++,perl,...}. You can also manually toggle 124;; where X = {emacs-lisp,c,c++,perl,...}. You can also manually toggle
108;; hideshow minor mode by typing `M-x hs-minor-mode'. After hideshow is 125;; hideshow minor mode by typing `M-x hs-minor-mode'. After hideshow is
@@ -121,37 +138,39 @@
121;; (3) Hideshow 5.x is developed and tested on GNU Emacs 20.4. 138;; (3) Hideshow 5.x is developed and tested on GNU Emacs 20.4.
122;; XEmacs compatibility may have bitrotted since 4.29. 139;; XEmacs compatibility may have bitrotted since 4.29.
123;; 140;;
141;; (4) Some buffers can't be `byte-compile-file'd properly. This is because
142;; `byte-compile-file' inserts the file to be compiled in a temporary
143;; buffer and switches `normal-mode' on. In the case where you have
144;; `hs-hide-initial-comment-block' in `hs-minor-mode-hook', the hiding of
145;; the initial comment sometimes hides parts of the first statement (seems
146;; to be only in `normal-mode'), so there are unbalanced "(" and ")".
147;;
148;; The workaround is to clear `hs-minor-mode-hook' when byte-compiling:
149;;
150;; (defadvice byte-compile-file (around
151;; byte-compile-file-hideshow-off
152;; act)
153;; (let ((hs-minor-mode-hook nil))
154;; ad-do-it))
155
124;; Correspondance welcome; please indicate version number. Send bug 156;; Correspondance welcome; please indicate version number. Send bug
125;; reports and inquiries to <ttn@netcom.com>. 157;; reports and inquiries to <ttn@gnu.org>.
126 158
127;; * Thanks 159;; * Thanks
128;; 160;;
129;; Thanks go to the following people for valuable ideas, code and 161;; Thanks go to the following people for valuable ideas, code and
130;; bug reports. 162;; bug reports.
131;; 163;;
132;; adahome@ix.netcom.com Dean Andrews 164;; Dean Andrews, Alf-Ivar Holm, Holger Bauer, Christoph Conrad, Dave
133;; alfh@ifi.uio.no Alf-Ivar Holm 165;; Love, Dirk Herrmann, Gael Marziou, Jan Djarv, Guillaume Leray,
134;; bauer@itsm.uni-stuttgart.de Holger Bauer 166;; Moody Ahmad, Preston F. Crow, Lars Lindberg, Reto Zimmermann,
135;; christoph.conrad@post.rwth-aachen.de Christoph Conrad 167;; Keith Sheffield, Chew Meng Kuan, Tony Lam, Pete Ware, François Pinard
136;; d.love@dl.ac.uk Dave Love
137;; dirk@ida.ing.tu-bs.de Dirk Herrmann
138;; gael@gnlab030.grenoble.hp.com Gael Marziou
139;; jan.djarv@sa.erisoft.se Jan Djarv
140;; leray@dev-lme.pcc.philips.com Guillaume Leray
141;; moody@mwt.net Moody Ahmad
142;; preston.f.crow@dartmouth.edu Preston F. Crow
143;; qhslali@aom.ericsson.se Lars Lindberg
144;; reto@synopsys.com Reto Zimmermann
145;; sheff@edcsgw2.cr.usgs.gov Keith Sheffield
146;; smes@post1.com Chew Meng Kuan
147;; tonyl@eng.sun.com Tony Lam
148;; ware@cis.ohio-state.edu Pete Ware
149;; 168;;
150;; Special thanks go to Dan Nicolaescu <dann@ics.uci.edu>, who reimplemented 169;; Special thanks go to Dan Nicolaescu, who reimplemented hideshow using
151;; hideshow using overlays (rather than selective display), added isearch 170;; overlays (rather than selective display), added isearch magic, folded
152;; magic, folded in custom.el compatibility, generalized comment handling, 171;; in custom.el compatibility, generalized comment handling, incorporated
153;; incorporated mouse support, and maintained the code in general. Version 172;; mouse support, and maintained the code in general. Version 4.0 is
154;; 4.0 is largely due to his efforts. 173;; largely due to his efforts.
155 174
156;; * History 175;; * History
157;; 176;;
@@ -236,13 +255,18 @@ If any of the elements is left nil or omitted, hideshow tries to guess
236appropriate values. The regexps should not contain leading or trailing 255appropriate values. The regexps should not contain leading or trailing
237whitespace. Case does not matter.") 256whitespace. Case does not matter.")
238 257
258(defvar hs-hide-all-non-comment-function nil
259 "*Function called if non-nil when doing `hs-hide-all' for non-comments.")
260
239(defvar hs-hide-hook nil 261(defvar hs-hide-hook nil
240 "*Hook called (with `run-hooks') at the end of commands to hide text. 262 "*Hook called (with `run-hooks') at the end of commands to hide text.
241These commands include `hs-hide-all', `hs-hide-block' and `hs-hide-level'.") 263These commands include the toggling commands (when the result is to hide
264a block), `hs-hide-all', `hs-hide-block' and `hs-hide-level'.")
242 265
243(defvar hs-show-hook nil 266(defvar hs-show-hook nil
244 "*Hook called (with `run-hooks') at the end of commands to show text. 267 "*Hook called (with `run-hooks') at the end of commands to show text.
245These commands include `hs-show-all', `hs-show-block' and `hs-show-region'.") 268These commands include the toggling commands (when the result is to show
269a block), `hs-show-all' and `hs-show-block'..")
246 270
247;;--------------------------------------------------------------------------- 271;;---------------------------------------------------------------------------
248;; internal variables 272;; internal variables
@@ -637,39 +661,34 @@ If `hs-hide-comments-when-hiding-all' is non-nil, also hide the comments."
637 (save-excursion 661 (save-excursion
638 (hs-flag-region (point-min) (point-max) nil) ; eliminate weirdness 662 (hs-flag-region (point-min) (point-max) nil) ; eliminate weirdness
639 (goto-char (point-min)) 663 (goto-char (point-min))
640 (if hs-hide-comments-when-hiding-all 664 (let ((count 0)
641 (let ((c-reg nil) 665 (re (concat "\\("
642 (count 0) 666 hs-block-start-regexp
643 (block-and-comment-re 667 "\\)"
644 (concat "\\(" 668 (if hs-hide-comments-when-hiding-all
645 hs-block-start-regexp 669 (concat "\\|\\("
646 "\\)\\|\\(" 670 hs-c-start-regexp
647 hs-c-start-regexp 671 "\\)")
648 "\\)"))) 672 ""))))
649 (while (re-search-forward block-and-comment-re (point-max) t) 673 (while (progn
650 (if (match-beginning 1) ;; we have found a block beginning 674 (unless hs-hide-comments-when-hiding-all
651 (progn 675 (forward-comment (point-max)))
652 (goto-char (match-beginning 1)) 676 (re-search-forward re (point-max) t))
653 (hs-hide-block-at-point t) 677 (if (match-beginning 1)
654 (message "Hiding ... %d" (setq count (1+ count)))) 678 ;; we have found a block beginning
655 ;;found a comment
656 (setq c-reg (hs-inside-comment-p))
657 (if (and c-reg (car c-reg))
658 (if (> (count-lines (car c-reg) (nth 1 c-reg)) 1)
659 (progn
660 (hs-hide-block-at-point t c-reg)
661 (message "Hiding ... %d" (setq count (1+ count))))
662 (goto-char (nth 1 c-reg)))))))
663 (let ((count 0)
664 (buf-size (buffer-size)))
665 (while
666 (progn 679 (progn
667 (forward-comment buf-size) 680 (goto-char (match-beginning 1))
668 (re-search-forward hs-block-start-regexp (point-max) t)) 681 (if hs-hide-all-non-comment-function
669 (goto-char (match-beginning 0)) 682 (funcall hs-hide-all-non-comment-function)
670 (hs-hide-block-at-point t) 683 (hs-hide-block-at-point t)))
671 (message "Hiding ... %d" (setq count (1+ count)))))) 684 ;; found a comment, probably
672 (hs-safety-is-job-n)) 685 (let ((c-reg (hs-inside-comment-p))) ; blech!
686 (when (and c-reg (car c-reg))
687 (if (> (count-lines (car c-reg) (nth 1 c-reg)) 1)
688 (hs-hide-block-at-point t c-reg)
689 (goto-char (nth 1 c-reg))))))
690 (message "Hiding ... %d" (setq count (1+ count)))))
691 (hs-safety-is-job-n))
673 (beginning-of-line) 692 (beginning-of-line)
674 (message "Hiding all blocks ... done") 693 (message "Hiding all blocks ... done")
675 (run-hooks 'hs-hide-hook))) 694 (run-hooks 'hs-hide-hook)))
@@ -741,18 +760,6 @@ See documentation for functions `hs-hide-block' and `run-hooks'."
741 (hs-safety-is-job-n) 760 (hs-safety-is-job-n)
742 (run-hooks 'hs-show-hook)))) 761 (run-hooks 'hs-show-hook))))
743 762
744(defun hs-show-region (beg end)
745 "Show all lines from BEG to END, without doing any block analysis.
746Note: `hs-show-region' is intended for use when `hs-show-block' signals
747\"unbalanced parentheses\" and so is an emergency measure only. You may
748become very confused if you use this command indiscriminately.
749The hook `hs-show-hook' is run; see `run-hooks'."
750 (interactive "r")
751 (hs-life-goes-on
752 (hs-flag-region beg end nil)
753 (hs-safety-is-job-n)
754 (run-hooks 'hs-show-hook)))
755
756(defun hs-hide-level (arg) 763(defun hs-hide-level (arg)
757 "Hide all blocks ARG levels below this block. 764 "Hide all blocks ARG levels below this block.
758The hook `hs-hide-hook' is run; see `run-hooks'." 765The hook `hs-hide-hook' is run; see `run-hooks'."
@@ -808,7 +815,7 @@ commands and the hideshow commands are enabled.
808The value '(hs . t) is added to `buffer-invisibility-spec'. 815The value '(hs . t) is added to `buffer-invisibility-spec'.
809 816
810The main commands are: `hs-hide-all', `hs-show-all', `hs-hide-block', 817The main commands are: `hs-hide-all', `hs-show-all', `hs-hide-block',
811`hs-show-block', `hs-hide-level' and `hs-show-region'. There is also 818`hs-show-block', `hs-hide-level' and `hs-toggle-hiding'. There is also
812`hs-hide-initial-comment-block' and `hs-mouse-toggle-hiding'. 819`hs-hide-initial-comment-block' and `hs-mouse-toggle-hiding'.
813 820
814Turning hideshow minor mode off reverts the menu bar and the 821Turning hideshow minor mode off reverts the menu bar and the
@@ -853,14 +860,14 @@ Key bindings:
853 (lambda (ent) 860 (lambda (ent)
854 (define-key hs-minor-mode-map (aref ent 2) (aref ent 1)) 861 (define-key hs-minor-mode-map (aref ent 2) (aref ent 1))
855 (if (aref ent 0) ent "-----")) 862 (if (aref ent 0) ent "-----"))
856 ;; I believe there is nothing bound on these keys. 863 ;; These bindings roughly imitate those used by Outline mode.
857 ;; menu entry command key 864 ;; menu entry command key
858 '(["Hide Block" hs-hide-block "\C-ch"] 865 '(["Hide Block" hs-hide-block "\C-c\C-h"]
859 ["Show Block" hs-show-block "\C-cs"] 866 ["Show Block" hs-show-block "\C-c\C-s"]
860 ["Hide All" hs-hide-all "\C-cH"] 867 ["Hide All" hs-hide-all "\C-c\C-\M-h"]
861 ["Show All" hs-show-all "\C-cS"] 868 ["Show All" hs-show-all "\C-c\C-\M-s"]
862 ["Hide Level" hs-hide-level "\C-cL"] 869 ["Hide Level" hs-hide-level "\C-c\C-l"]
863 ["Show Region" hs-show-region "\C-cR"] 870 ["Toggle Hiding" hs-toggle-hiding "\C-c\C-c"]
864 [nil hs-mouse-toggle-hiding [(shift button2)]] 871 [nil hs-mouse-toggle-hiding [(shift button2)]]
865 ))))) 872 )))))
866 873