diff options
Diffstat (limited to 'lisp')
233 files changed, 13499 insertions, 11587 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 0620164c6dd..055ec17160e 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,7 +1,1378 @@ +2014-10-14 Jérémy Compostella <jeremy.compostella@intel.com> + Michael Albinus <michael.albinus@gmx.de> + + * net/tramp-sh.el (tramp-open-connection-setup-interactive-shell): + Reduce the amount of set environment variable commands. + +2014-10-12 Fabián Ezequiel Gallina <fgallina@gnu.org> + + Fix import completion. (Bug#18582) + * progmodes/python.el (python-shell-completion-get-completions): + Fix import case regexp. + +2014-10-12 Stefan Monnier <monnier@iro.umontreal.ca> + + * progmodes/bat-mode.el (bat-font-lock-keywords): Fix \\<_ typo + (bug#18622). Reported by Arni Magnusson <arnima@hafro.is>. + * progmodes/prolog.el (prolog-electric--underscore): Same. + +2014-10-12 Michael Albinus <michael.albinus@gmx.de> + + * net/tramp-sh.el (tramp-get-remote-id): Check also for "gid". + +2014-10-11 Jan Djärv <jan.h.d@swipnet.se> + + * cus-start.el (all): Add missing ns and boolean to + ns-use-fullscreen-animation. + +2014-10-11 Leo Liu <sdl.web@gmail.com> + + * progmodes/cfengine.el (cfengine3-defuns, cfengine3-vartypes): + Use strings. + (cfengine3-create-imenu-index): New function. + (cfengine3-mode): Use it for `imenu-create-index-function'. + (cfengine-auto-mode): Improve and prefer cfengine3-mode when + buffer is empty. + +2014-10-11 Jan Djärv <jan.h.d@swipnet.se> + + * cus-start.el (all): Add ns-use-fullscreen-animation. + +2014-10-11 Glenn Morris <rgm@gnu.org> + + * calendar/diary-lib.el (diary-display-function): + Drop support for deprecated nil and list forms. + (diary-list-entries): Update for the above. + * calendar/cal-x.el (calendar-dedicate-diary): Simplify accordingly. + +2014-10-10 Leo Liu <sdl.web@gmail.com> + + * window.el (temp-buffer-window-show): Make BUFFER a required arg. + (Bug#18656) + +2014-10-10 Stefan Monnier <monnier@iro.umontreal.ca> + + * select.el (gui-selection-exists-p-alist): New method. + * menu-bar.el (menu-bar-edit-menu, clipboard-yank): + * simple.el (deactivate-mark): Use it. + * term/x-win.el (gui-selection-exists-p): + * term/w32-win.el (gui-selection-exists-p): + * term/pc-win.el (gui-selection-exists-p): + * term/ns-win.el (gui-selection-exists-p): Provide a backend instance. + +2014-10-10 Glenn Morris <rgm@gnu.org> + + * info.el (Info-fontify-maximum-menu-size): Bump to 400k. (Bug#16227) + Fix :type. Allow t to mean no limit. + (Info-fontify-node): Handle Info-fontify-maximum-menu-size = t. + +2014-10-09 Glenn Morris <rgm@gnu.org> + + * frame.el (display-monitor-attributes-list): Doc tweaks. + +2014-10-09 Eli Zaretskii <eliz@gnu.org> + + * faces.el (display-grayscale-p): Mention in the doc string that + the argument can be either a display name or a frame. + + * frame.el (display-pixel-height, display-pixel-width) + (display-mm-height, display-mm-width, display-backing-store) + (display-save-under, display-planes, display-color-cells) + (display-visual-class, display-monitor-attributes-list) + (display-screens): Mention in the doc string that the argument can + be either a display name or a frame. Improve the docs of the + monitor attributes. (Bug#18636) + +2014-10-09 Martin Rudalics <rudalics@gmx.at> + + * term.el (term-window-width): Subtract 1 from the width when + any fringe has zero width, not just the right fringe. (Bug#18601) + +2014-10-09 Stefan Monnier <monnier@iro.umontreal.ca> + + * frame.el (make-frame): Use t rather than nil for `w' (bug#18653). + +2014-10-08 Leo Liu <sdl.web@gmail.com> + + * emacs-lisp/cl-extra.el (cl-fresh-line): New function. + +2014-10-08 Glenn Morris <rgm@gnu.org> + + * calendar/cal-x.el (calendar-dedicate-diary): + Drop support for recently deleted aliases. + +2014-10-08 Leo Liu <sdl.web@gmail.com> + + * progmodes/cfengine.el (cfengine3-make-syntax-cache): + Always return a syntax. Replace call-process-shell-command with + process-file. Ensure cfengine-mode-syntax-functions-regex is + always set. Ensure cache when cfengine-cf-promises fails. + (Bug#18620) + +2014-10-07 Glenn Morris <rgm@gnu.org> + + * font-lock.el (font-lock-fontify-buffer): Fix interactive-only markup. + +2014-10-07 Wilson Snyder <wsnyder@wsnyder.org> + + Sync with upstream verilog-mode revision c075a492. + * progmodes/verilog-mode.el (verilog-mode-version): Bump. + (verilog-menu): Add AUTOINSERTLAST. + (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if' + is nil, fix indenting initial/final to match always statements, bug825. + Reported by Tim Clapp. + (verilog-extended-complete-re): Fix indentation of DPI-C imports, + bug557. Reported by ZeDong Mao and Jason Forkey. + (verilog-read-decls): Fix parsing typed interfaces. + Fix AUTOINOUTMODPORT missing types. Reported by Stephan Bourduas. + (verilog-auto-arg-ports): Fix verilog-auto-arg-format single. + (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY, bug793. + Reported by Pierre-David Pfister. + (verilog-auto-insert-lisp): Doc fix. + (verilog-auto-insert-last, verilog-auto): Add AUTOINSERTLAST to + allow post-AUTO user fixups, bug826. Reported by Dennis Muhlestein. + (verilog-sk-ovm-class, verilog-sk-uvm-object) + (verilog-sk-uvm-component): Fix missing string keyword in class + skeletons, bug824. Reported by eldad faruhi. + +2014-10-06 Stefan Monnier <monnier@iro.umontreal.ca> + + * term/w32-win.el: Move all code from 32-common-fns.el here. + (gui-select-text, gui-selection-value): Use w32 handlers in the w32 + console as well (bug#18629). + * w32-common-fns.el: Remove. + * loadup.el: Don't load w32-common-fns.el. + * w32-fns.elc: Don't require w32-common-fns. + + * icomplete.el: Move Iswitchb autoload here. Much simpler. + * obsolete/iswitchb.el (iswitchb-mode): Use normal autoload cookie. + Remove redundant obsolescence thingy. + * loadup.el: Don't load obsolete/loaddefs.el. + * Makefile.in (obsolete-autoloads): Remove. + (AUTOGENEL): Remove obsolete/loaddefs.el. + +2014-10-06 Glenn Morris <rgm@gnu.org> + + * Makefile.in (obsolete-autoloads): Write to a separate file, + to workaround autoloads bug. (Bug#17407) + (AUTOGENEL): Add obsolete/loaddefs.el. + * loadup.el: Load obsolete/loaddefs.el if present. + * subr.el (do-after-load-evaluation): + Don't warn about obsolete/loaddefs.el. + + * menu-bar.el (menu-bar-games-menu): Remove landmark. + It has zero relationship to a game. + +2014-10-06 Leo Liu <sdl.web@gmail.com> + + * imenu.el (imenu): Re-write for clarity. + +2014-10-06 Glenn Morris <rgm@gnu.org> + + Remove calendar code obsolete since at least version 23.1. + * calendar/cal-bahai.el (calendar-absolute-from-bahai) + (calendar-print-bahai-date, calendar-bahai-prompt-for-date) + (calendar-goto-bahai-date, list-bahai-diary-entries) + (mark-bahai-calendar-date-pattern, mark-bahai-diary-entries) + (insert-bahai-diary-entry, insert-monthly-bahai-diary-entry) + (insert-yearly-bahai-diary-entry): + * calendar/cal-china.el (chinese-calendar-time-zone) + (chinese-calendar-location-name) + (chinese-calendar-daylight-time-offset) + (chinese-calendar-standard-time-zone-name) + (chinese-calendar-daylight-time-zone-name) + (chinese-calendar-daylight-savings-starts) + (chinese-calendar-daylight-savings-ends) + (chinese-calendar-daylight-savings-starts-time) + (chinese-calendar-daylight-savings-ends-time) + (chinese-calendar-celestial-stem) + (chinese-calendar-terrestrial-branch) + (calendar-absolute-from-chinese, calendar-print-chinese-date) + (calendar-goto-chinese-date): + * calendar/cal-coptic.el (calendar-absolute-from-coptic) + (calendar-print-coptic-date, coptic-prompt-for-date) + (calendar-goto-coptic-date, calendar-absolute-from-ethiopic) + (calendar-print-ethiopic-date, calendar-goto-ethiopic-date): + * calendar/cal-french.el (calendar-absolute-from-french) + (calendar-print-french-date, calendar-goto-french-date): + * calendar/cal-hebrew.el (diary-sabbath-candles-minutes) + (calendar-absolute-from-hebrew, calendar-print-hebrew-date) + (hebrew-calendar-yahrzeit, calendar-goto-hebrew-date) + (holiday-rosh-hashanah-etc, holiday-hanukkah) + (holiday-passover-etc, holiday-tisha-b-av-etc) + (list-hebrew-diary-entries, mark-hebrew-calendar-date-pattern) + (mark-hebrew-diary-entries, insert-hebrew-diary-entry) + (insert-monthly-hebrew-diary-entry) + (insert-yearly-hebrew-diary-entry, list-yahrzeit-dates) + (diary-omer, diary-yahrzeit, diary-rosh-hodesh, diary-parasha) + (diary-sabbath-candles): + * calendar/cal-islam.el (calendar-absolute-from-islamic) + (calendar-print-islamic-date, calendar-goto-islamic-date) + (list-islamic-diary-entries, mark-islamic-calendar-date-pattern) + (mark-islamic-diary-entries, insert-islamic-diary-entry) + (insert-monthly-islamic-diary-entry) + (insert-yearly-islamic-diary-entry): + * calendar/cal-iso.el (calendar-absolute-from-iso) + (calendar-print-iso-date, calendar-iso-read-args) + (calendar-goto-iso-date, calendar-goto-iso-week): + * calendar/cal-julian.el (calendar-absolute-from-julian) + (calendar-print-julian-date, calendar-goto-julian-date) + (calendar-absolute-from-astro, calendar-print-astro-day-number) + (calendar-goto-astro-day-number): + * calendar/cal-mayan.el (calendar-print-mayan-date) + (calendar-next-haab-date, calendar-previous-haab-date) + (calendar-next-tzolkin-date, calendar-previous-tzolkin-date) + (calendar-next-calendar-round-date) + (calendar-previous-calendar-round-date) + (calendar-absolute-from-mayan-long-count) + (calendar-goto-mayan-long-count-date): + * calendar/cal-move.el (scroll-calendar-left) + (scroll-calendar-right, scroll-calendar-left-three-months) + (scroll-calendar-right-three-months): + * calendar/cal-persia.el (calendar-absolute-from-persian) + (calendar-print-persian-date, persian-prompt-for-date) + (calendar-goto-persian-date): + * calendar/cal-x.el (calendar-after-frame-setup-hooks): + * calendar/calendar.el (view-diary-entries-initially) + (mark-diary-entries-in-calendar, calendar-today-face) + (diary-face, holiday-face, view-calendar-holidays-initially) + (mark-holidays-in-calendar, initial-calendar-window-hook) + (today-visible-calendar-hook, today-invisible-calendar-hook) + (hebrew-diary-entry-symbol, islamic-diary-entry-symbol) + (bahai-diary-entry-symbol, american-date-diary-pattern) + (european-date-diary-pattern, european-calendar-display-form) + (american-calendar-display-form, holidays-in-diary-buffer) + (all-hebrew-calendar-holidays, all-christian-calendar-holidays) + (all-islamic-calendar-holidays, all-bahai-calendar-holidays) + (fancy-diary-buffer, increment-calendar-month) + (extract-calendar-month, extract-calendar-day) + (extract-calendar-year, exit-calendar, calendar-date-is-legal-p) + (mark-visible-calendar-date, calendar-version): + * calendar/diary-lib.el (diary-button-face, sexp-diary-entry-symbol) + (diary-display-hook, list-diary-entries-hook) + (mark-diary-entries-hook, nongregorian-diary-listing-hook) + (nongregorian-diary-marking-hook, print-diary-entries-hook) + (abbreviated-calendar-year, number-of-diary-entries) + (view-other-diary-entries, add-to-diary-list) + (include-other-diary-files, simple-diary-display) + (fancy-diary-display, print-diary-entries, mark-diary-entries) + (mark-sexp-diary-entries, mark-included-diary-files) + (mark-calendar-days-named, mark-calendar-month) + (mark-calendar-date-pattern, sort-diary-entries) + (list-sexp-diary-entries, make-diary-entry, insert-diary-entry) + (insert-weekly-diary-entry, insert-monthly-diary-entry) + (insert-yearly-diary-entry, insert-anniversary-diary-entry) + (insert-block-diary-entry, insert-cyclic-diary-entry) + (fancy-diary-font-lock-keywords, fancy-diary-display-mode): + * calendar/holidays.el (general-holidays, oriental-holidays) + (local-holidays, other-holidays, hebrew-holidays) + (christian-holidays, islamic-holidays, bahai-holidays) + (solar-holidays, list-calendar-holidays) + (check-calendar-holidays, mark-calendar-holidays) + (filter-visible-calendar-holidays): + * calendar/lunar.el (calendar-phases-of-moon, phases-of-moon) + (diary-phases-of-moon): Remove obsolete aliases. + * calendar/cal-menu.el (cal-menu-load-hook): Remove obsolete hook. + * calendar/cal-x.el (calendar-one-frame-setup) + (calendar-only-one-frame-setup, calendar-two-frame-setup): + Remove obsolete functions. + (cal-x-load-hook): Remove obsolete hook. + * calendar/calendar.el (european-calendar-style): + Remove obsolete variable. + (calendar-date-style): No longer consult european-calendar-style. + * calendar/calendar.el (european-calendar, american-calendar): + Remove obsolete commands. + * calendar/calendar.el (calendar-for-loop): Remove obsolete macro. + * calendar/diary-lib.el (diary-face): Remove obsolete variable. + (diary-font-lock-date-forms, diary-fancy-font-lock-keywords): + Use the face `diary' instead of the variable `diary-face'. + * calendar/holidays.el (hebrew-holidays-1, hebrew-holidays-2) + (hebrew-holidays-3, hebrew-holidays-4): Remove obsolete variables. + * calendar/icalendar.el (icalendar--date-style): Remove function. + Replace all uses with calendar-date-style. + * textmodes/remember.el (calendar-date-style): Declare. + (remember-diary-convert-entry): + No longer consult european-calendar-style. + +2014-10-05 Leo Liu <sdl.web@gmail.com> + + * imenu.el (imenu-default-goto-function): Fix typo. + +2014-10-04 Thomas Fitzsimmons <fitzsim@fitzsim.org> + + * net/ntlm.el (ntlm-build-auth-request): + Add NTLM2 Session support. (Bug#15603) + +2014-10-04 Glenn Morris <rgm@gnu.org> + + * apropos.el (apropos-symbols-internal): + Avoid error with non-symbol properties. (Bug#18337#16) + + * startup.el (command-line): + Handle altered user-emacs-directory in load-path warning. (Bug#18512) + +2014-10-04 Martin Rudalics <rudalics@gmx.at> + + * window.el (window-full-height-p): Make it behave correctly for + minibuffer window. + (window-current-scroll-bars): Fix code. + (fit-frame-to-buffer): Use window-scroll-bar-height instead of + window-scroll-bars. + * frame.el (frame-current-scroll-bars): Fix doc-string. + * scroll-bar.el (toggle-horizontal-scroll-bar): New command. + +2014-10-04 Mark Oteiza <mvoteiza@udel.edu> (tiny change) + + * files.el (auto-mode-alist): Use sh-mode for .zsh files. (Bug#18488) + +2014-10-04 Glenn Morris <rgm@gnu.org> + + * frame.el (frame-monitor-attributes) + (display-monitor-attributes-list): Doc fixes. + +2014-10-04 Stefan Monnier <monnier@iro.umontreal.ca> + + Merge trivially safe differences from standalone CC-mode. + * progmodes/cc-mode.el (c-initialize-cc-mode): Don't quote a symbol + just to then pass it to `symbol-value'. + (prog-mode): Provide fallback definition, if needed. + * progmodes/cc-langs.el: Always load `cl'. Don't load `cl-lib'. + Remove "cl-" prefix accordingly. + * progmodes/cc-fonts.el (c-font-lock-invalid-string): Use integerp or + characterp depending on the type of characters. + (c-font-lock-enum-tail): Remove unused var `start'. + * progmodes/cc-engine.el: Load CL at compile-time. + (c-declare-lang-variables): Use mapcan. + (c-append-to-state-cache): Remove unused var `ce+1'. + (c-parse-state-state): Make buffer-local. + (c-ssb-lit-begin): Remove unused var `pps-end-pos'. + (c-just-after-func-arglist-p): Remove unused var `end'. + * progmodes/cc-defs.el: Load cc-fix if delete-dups is undefined. + (c-<-as-paren-syntax, c->-as-paren-syntax): Move definition earlier. + (c-make-keywords-re): Use delete-dups. + (c-get-current-file): Avoid file-name-base. + * progmodes/cc-cmds.el (c-electric-lt-gt): Remove unused var + `close-paren-inserted'. + * progmodes/cc-awk.el (c-forward-sws): Remove unused declaration. + + * progmodes/python.el: Avoid building unneeded markers. + (python-font-lock-keywords, python-indent-dedent-line) + (python-fill-paren, python-shell-completion-complete-or-indent): + Prefer point over point-marker. + (inferior-python-mode): Remove redundant completion settings. + +2014-10-03 Dmitry Gutov <dgutov@yandex.ru> + + * vc/vc-svn.el (vc-svn-ignore-completion-table): Implement. + (vc-svn-ignore): Use it. (Bug#18619) + +2014-10-03 Martin Rudalics <rudalics@gmx.at> + + * frame.el (toggle-frame-maximized, toggle-frame-fullscreen): + In doc-string mention need to set `frame-resize-pixelwise'. + +2014-10-03 Stefan Monnier <monnier@iro.umontreal.ca> + + * vc/vc-svn.el (vc-svn-after-dir-status): Fix the non-remote regexp, + similarly to Rogers's 2010-06-16 change for the remote case + (bug#18605). + +2014-10-03 Stefan Monnier <monnier@iro.umontreal.ca> + + New gui-selection-value consolidating x-selection-value. + * select.el (gui-selection-value-alist): New method. + (gui-selection-value): New function. + (x-selection-value): Make it an obsolete alias. + * simple.el (interprogram-paste-function): Default to + gui-selection-value. + * w32-common-fns.el (w32-get-selection-value): Simplify. + (x-selection-value): Remove alias. + (interprogram-paste-function): Don't set. + (gui-selection-value): Define for w32. + * term/x-win.el (gui-selection-value): Define for x. + (x--selection-value): Rename from x--selection-value. + (interprogram-paste-function): Don't set. + * term/pc-win.el (w16-get-selection-value): Simplify. + (msdos-initialize-window-system): Don't set + interprogram-paste-function. + (gui-selection-value): Define for pc. + * term/ns-win.el (x-selection-value): Remove. + (gui-selection-value): Define for ns, instead. + * term/common-win.el (x-setup-function-keys): Don't set + interprogram-paste-function. + * obsolete/mouse-sel.el (mouse-sel-get-selection-function): + Use gui-selection-value. + +2014-10-02 David Raynes <rayners@gmail.com> (tiny change) + + * term/ns-win.el: Add functions to ns frame, not x frame (bug#18614). + +2014-10-02 Stefan Monnier <monnier@iro.umontreal.ca> + + * obsolete/lucid.el (read-number): Remove, redundant. + * obsolete/cl-compat.el (cl-floor, cl-ceiling, cl-round, cl-truncate): + Remove, broken. + +2014-10-02 Glenn Morris <rgm@gnu.org> + + * emacs-lisp/package.el (package-import-keyring): + Create gnupg directory private. (Bug#17625#155) + +2014-10-02 Stefan Monnier <monnier@iro.umontreal.ca> + + * progmodes/python.el (python-shell-completion-get-completions): + Use python-shell--prompt-calculated-input-regexp from the + process buffer (bug#18582). + Don't assume that `line' comes from the process buffer. + +2014-10-02 Stefan Monnier <monnier@iro.umontreal.ca> + + * frame.el: Use lexical-binding (bug#18598). + (make-frame): Use t rather than nil for tty's window-system. + * startup.el (command-line): Use gui-method. + + Consolidate management/ownership of selections. + * select.el (gui-get-selection-alist): New method. + (gui-get-selection): Use it. Rename from x-get-selection. + (x-get-selection): Define as obsolete alias. + (x-get-clipboard): Mark obsolete. + (gui-get-primary-selection): New function. + (x-get-selection-value): Mark obsolete. + (gui-own-selection-alist, gui-disown-selection-alist) + (gui-selection-owner-p-alist): New methods. + (gui-set-selection): Use them. Rename from x-set-selection. + (x-set-selection): Define as obsolete alias. + (gui--valid-simple-selection-p): Rename from + x-valid-simple-selection-p. + * w32-common-fns.el (gui-own-selection, gui-disown-selection) + (gui-selection-owner-p, gui-get-selection): Define for w32. + (w32-get-selection-value): Rename from x-get-selection-value. + Use the new gui-last-selected-text. + * term/x-win.el (x-get-selection-value): Remove. + (x-clipboard-yank): Declare obsolete. + (gui-own-selection, gui-disown-selection, gui-get-selection) + (gui-selection-owner-p): Define for x. + * term/w32-win.el (w32-win-suspend-error): Rename from + x-win-suspend-error. + * term/pc-win.el (w16-get-selection-value): Rename from + x-get-selection-value. + (w16-selection-owner-p): Rename from x-selection-owner-p. + (gui-own-selection, gui-disown-selection, gui-get-selection) + (gui-selection-owner-p): Define for pc. + (w16--select-text): New function. + * term/ns-win.el (gui-own-selection, gui-disown-selection) + (gui-get-selection, gui-selection-owner-p): Define for ns. + * term.el (term-mouse-paste): + * mouse.el (mouse-yank-primary): Use gui-get-primary-selection. + +2014-10-02 H. Dieter Wilhelm <dieter@duenenhof-wilhelm.de> (tiny change) + + * calc/calc-help.el (calc-describe-thing): Quote strings + which could look like regexps. + +2014-10-01 Stefan Monnier <monnier@iro.umontreal.ca> + + Consolidate x-select-text. + * frame.el (gui-method, gui-method-define, gui-method-declare) + (gui-call): New macros. + (gui-method--name): New function. + (frame-creation-function-alist): Use gui-method-declare. + (make-frame): Use gui-method. + * select.el (gui-select-enable-clipboard): Rename from + x-select-enable-clipboard and move here. + (x-select-enable-clipboard): Define as obsolete alias. + (gui-last-selected-text): New var, to replace x-last-selected-text. + (gui-select-text): New GUI method. + (gui-select-text): New function. + (x-select-text): Define as obsolete alias. + * term/common-win.el (x-select-enable-clipboard, x-select-text): + Move to select.el. + * simple.el (interprogram-cut-function): Change default to + x-select-text. + (interprogram-paste-function): Change default to `ignore'. + * w32-common-fns.el (interprogram-cut-function): Don't modify. + * term/x-win.el (interprogram-cut-function): Don't modify. + (gui-select-text): Add method for x. + * term/w32-win.el (gui-select-text): Add method for w32. + * term/pc-win.el (x-last-selected-text): Remove, use + gui-last-selected-text instead. + (msdos-initialize-window-system): Don't set interprogram-cut-function. + (gui-select-text): Add method for pc. + * term/ns-win.el (ns-last-selected-text): Remove, use + gui-last-selected-text instead. + (gui-select-text): Add method for ns. + (x-setup-function-keys): Don't change interprogram-cut-function. + * loadup.el ("startup"): Load after "frame". + * subr.el (package--builtin-versions, package--description-file): + Move from startup.el. + * startup.el (package--builtin-versions, package--description-file): + Move to subr.el. + (handle-args-function-alist, window-system-initialization-alist): + Use gui-method-declare. + (command-line): Use gui-method. + +2014-10-01 Stefan Monnier <monnier@iro.umontreal.ca> + + * subr.el (alist-get): New accessor. + * emacs-lisp/gv.el (alist-get): Provide expander. + * winner.el (winner-remember): + * tempo.el (tempo-use-tag-list): + * progmodes/gud.el (minor-mode-map-alist): + * international/mule-cmds.el (define-char-code-property): + * frameset.el (frameset-filter-params): + * files.el (dir-locals-set-class-variables): + * register.el (get-register, set-register): + * calc/calc-yank.el (calc-set-register): Use it. + * ps-print.el (ps-get, ps-put, ps-del): Mark as obsolete. + * tooltip.el (tooltip-set-param): Mark as obsolete. + (tooltip-show): Use alist-get instead. + * ses.el (ses--alist-get): Remove. Use alist-get instead. + +2014-10-01 Ulf Jasper <ulf.jasper@web.de> + + * net/newst-backend.el: Remove Time-stamp. Rename variable + `newsticker--download-logos' to `newsticker-download-logos' and + make it customizable. + (newsticker--sentinel-work): Move xml-workarounds to function + `newsticker--do-xml-workarounds', call unless libxml-parser is + used. Allow single quote in regexp for encoding. + Use libxml-parser if available, else fall back to `xml-parse-region'. + Take care of possibly missing namespace prefixes (like "RDF" + instead of "rdf:RDF") when checking xml nodes and attributes (as + libxml correctly removes the prefixes). Always use Atom 1.0 as + fallback feed type. Rename `newsticker--download-logos' to + `newsticker-download-logos' + (newsticker--unxml, newsticker--unxml-node) + (newsticker--unxml-attribute): New. + (newsticker--parse-atom-1.0): Call `unxml' in case that embedded + HTML code has become part of the xml parse tree. + (newsticker--parse-rss-1.0, newsticker--parse-rss-2.0): Take care + of possibly missing namespace prefixes. + (newsticker--parse-generic-items): Code formatting. Typo. + (newsticker--images-dir): Add trailing slash. + (newsticker--image-get): Fix error message. + + * net/newst-plainview.el: Remove Time-stamp. + + * net/newst-reader.el: Remove Time-stamp. + (newsticker-download-logos): Rename variable + `newsticker--download-logos' to `newsticker-download-logos' and + make it customizable. + (newsticker--print-extra-elements): Add optional parameter + 'htmlish for using html markup. Amend list of ignored elements. + (newsticker--do-print-extra-element): Add parameter 'htmlish for + using html markup. + + * net/newst-ticker.el: Remove Time-stamp. + + * net/newst-treeview.el (newsticker--treeview-item-show): Use html + for formatting extra elements. + + * net/newsticker.el: Remove Time-stamp, Version. + (newsticker-version): Make obsolete. + +2014-09-30 Leonardo Nobrega <leonobr@gmail.com> (tiny change) + + * progmodes/python.el (python-fill-paren): Don't inf-loop at EOB + (bug#18462). + +2014-09-30 Stefan Monnier <monnier@iro.umontreal.ca> + + * emacs-lisp/package.el (package-check-signature): Default to nil if + GPG is not available. + (package-refresh-contents): Don't mess with the keyring if we won't + check the signatures anyway. + +2014-09-30 Stefan Monnier <monnier@iro.umontreal.ca> + + * ses.el (ses--row, ses--col): New dyn-scoped vars, to replace row&col. + (ses-center, ses-center-span): Use them. + (ses-print-cell): Bind them while calling the printer. + (row, col, maxrow, maxcol): Don't declare as dynamically scoped. + (ses-dorange): Revert last change. + (ses-calculate-cell): Don't bind row&col dynamically while evaluating + the formula. + (ses-set-cell): Avoid `eval'. + (ses--time-check): Rename it from ses-time-check and turn it into + a macro. + + * ses.el (ses-setup): Don't assume modifying the iteration var of + dotimes affects the iteration (bug#18191). + +2014-09-30 Vincent Belaïche <vincentb1@users.sourceforge.net> + + * ses.el (ses-calculate-cell): Bind row and col dynamically to + their values with 'cl-progv'. + (ses-dorange): Bind row, col, maxrow and maxcol dynamically to + their values with 'cl-progv', also use non-interned symbols for + row, minrow, maxrow, mincol and maxcol. + (maxrow maxcol): New defvar, to make the compiler happy. + +2014-09-30 Stefan Monnier <monnier@iro.umontreal.ca> + + * minibuffer.el (completion-at-point): Emit warning for ill-behaved + completion functions. + +2014-09-29 Stefan Monnier <monnier@iro.umontreal.ca> + + * ses.el (ses--letref): Quote value before it gets re-evaluated. + +2014-09-28 Thien-Thi Nguyen <ttn@gnu.org> + + Font-lock `cl-flet*', too. + * emacs-lisp/lisp-mode.el (lisp-cl-font-lock-keywords-2): + Add "flet*" to intermediate var `cl-lib-kw'. + +2014-09-27 Stefan Monnier <monnier@iro.umontreal.ca> + + * epg-config.el (epg-gpg-program): Use the plain program names rather + than their absolute file name. + + * subr.el (track-mouse): New macro. + * emacs-lisp/cconv.el (cconv-convert, cconv-analyse-form): + Remove track-mouse case. + * emacs-lisp/bytecomp.el (byte-compile-track-mouse): Remove. + +2014-09-27 Leo Liu <sdl.web@gmail.com> + + * progmodes/elisp-mode.el (elisp--eldoc-last-data): Use defvar. + + * emacs-lisp/eldoc.el (eldoc-mode): Fix thinko. + +2014-09-27 Stefan Monnier <monnier@iro.umontreal.ca> + + * emacs-lisp/pcase.el (pcase--split-match, pcase--app-subst-match): + Handle the case where `match' is :pcase--succeed or :pcase--fail + (bug#18554). + + Introduce global-eldoc-mode. Move Elisp-specific code to elisp-mode.el. + * emacs-lisp/eldoc.el (global-eldoc-mode): New minor mode. + (eldoc-schedule-timer): Obey it. + (eldoc-documentation-function): Default to nil. + (eldoc-mode): Don't enable if eldoc-documentation-function is not set. + (eldoc-documentation-function-default, eldoc-get-fnsym-args-string) + (eldoc-highlight-function-argument, eldoc-get-var-docstring) + (eldoc-last-data-store, eldoc-docstring-first-line) + (eldoc-docstring-format-sym-doc, eldoc-fnsym-in-current-sexp) + (eldoc-beginning-of-sexp, eldoc-current-symbol) + (eldoc-function-argstring): Move to elisp-mode.el. + (eldoc-symbol-function): Remove, unused. + * progmodes/elisp-mode.el: New file. Rename all "eldoc-*" to "elisp--*". + (elisp-completion-at-point): Rename from lisp-completion-at-point. + (elisp--preceding-sexp): Rename from preceding-sexp. + * loadup.el: Load new file progmodes/elisp-mode. + * ielm.el (inferior-emacs-lisp-mode): Set eldoc-documentation-function. + * emacs-lisp/lisp.el (lisp--local-variables-1, lisp--local-variables) + (lisp--local-variables-completion-table, lisp--expect-function-p) + (lisp--form-quoted-p, lisp--company-doc-buffer) + (lisp--company-doc-string, lisp--company-location) + (lisp-completion-at-point): Move to elisp-mode.el. + * emacs-lisp/lisp-mode.el (lisp--mode-syntax-table): New syntax-table, + extracted from emacs-lisp-mode-syntax-table. + (emacs-lisp-mode-abbrev-table, emacs-lisp-mode-syntax-table): Move to + elisp-mode.el. + (lisp-imenu-generic-expression): Add comments to document what comes + from which Lisp dialect. + (emacs-lisp-mode-map, emacs-lisp-byte-compile) + (emacs-lisp-byte-compile-and-load, emacs-lisp-mode-hook) + (emacs-lisp-mode, emacs-list-byte-code-comment-re) + (emacs-lisp-byte-code-comment) + (emacs-lisp-byte-code-syntax-propertize, emacs-lisp-byte-code-mode) + (lisp-interaction-mode-map, lisp-interaction-mode) + (eval-print-last-sexp, last-sexp-setup-props) + (last-sexp-toggle-display, prin1-char, preceding-sexp) + (eval-last-sexp-1, eval-last-sexp-print-value) + (eval-last-sexp-fake-value, eval-sexp-add-defvars, eval-last-sexp) + (eval-defun-1, eval-defun-2, eval-defun): Move to elisp-mode.el. + +2014-09-26 Paul Eggert <eggert@cs.ucla.edu> + + * progmodes/grep.el (grep-regexp-alist): Use more-accurate regexp. + Do not match file names that end in '/', as they cannot be 'grep' + hits nowadays. This prevents confusion when 'grep -r' reports a + match in a file whose basename is ':12345:'. Conversely, do not + require exactly the same sequence of spaces and tabs after both + colons, and allow spaces or tabs before the second colon, as per + the POSIX spec for 'grep' output. + +2014-09-26 Leo Liu <sdl.web@gmail.com> + + Add cl-parse-integer based on parse-integer (Bug#18557) + * calendar/parse-time.el (parse-time-digits): Remove. + (digit-char-p, parse-integer) Moved to cl-lib.el. + (parse-time-tokenize, parse-time-rules, parse-time-string): + Use cl-parse-integer. + + * emacs-lisp/cl-extra.el (cl-parse-integer): New function. + + * emacs-lisp/cl-lib.el (cl-digit-char-table): New var. + (cl-digit-char-p): New function. + +2014-09-25 Juri Linkov <juri@jurta.org> + + * vc/add-log.el (change-log-next-buffer): Don't create an empty + buffer "ChangeLog" when the current buffer doesn't match ChangeLog.[0-9]. + Return the current buffer if no files match the default pattern + ChangeLog.[0-9]. Signal "end of multi" when file is nil. (Bug#18547) + +2014-09-25 Stefan Monnier <monnier@iro.umontreal.ca> + + * net/tramp-sh.el (tramp-sh-handle-vc-registered): Don't modify + the global vc-handled-backends (bug#18535). + +2014-09-24 Stefan Monnier <monnier@iro.umontreal.ca> + + * find-cmd.el (find-cmd): Use grep's `find-program' (bug#18518). + Suggested by <lompik@voila.fr>. + +2014-09-24 Ulf Jasper <ulf.jasper@web.de> + + * net/newst-treeview.el (newsticker--treeview-do-get-node-by-id): + Rename from `newsticker--treeview-do-get-node'. + (newsticker--treeview-get-node-by-id): + Rename from `newsticker--treeview-get-node'. + (newsticker--treeview-buffer-init) + (newsticker--treeview-buffer-init): Disable buffer undo. + (newsticker--treeview-unfold-node): Adapt to modified + `newsticker--group-find-parent-group'. + (newsticker--group-do-find-group): + Rename from `newsticker--group-do-find-group-for-feed'. + Now works for both, groups and feeds. + (newsticker--group-find-parent-group): + Rename from `newsticker--group-find-group-for-feed'. + Now works for both, groups and feeds. + (newsticker--group-do-get-parent-group) + (newsticker--group-get-parent-group): Remove. + (newsticker-group-add-group): Change interactive prompts. + (newsticker-group-add-group): Finally jump to added group. + (newsticker-group-delete-group): Finally jump to current feed. + (newsticker--group-do-rename-group, newsticker-group-rename-group) + (newsticker--get-group-names, newsticker--group-names): New. + (newsticker-group-move-feed): Finally jump to moved feed. + (newsticker-group-shift-feed-down, newsticker-group-shift-feed-up) + (newsticker-group-shift-group-down) + (newsticker-group-shift-group-up, newsticker--group-shift): New. + (newsticker-treeview-mode-map): New keybindings for new shift commands. + + * net/newst-backend.el (newsticker--item-list) + (newsticker--item-position, newsticker--prev-message) + (newsticker--scrollable-text): Move to newst-ticker.el. + + * net/newst-ticker.el (newsticker--item-list) + (newsticker--item-position, newsticker--prev-message) + (newsticker--scrollable-text): Move from newst-backend.el. + +2014-09-22 Kan-Ru Chen <kanru@kanru.info> + + * window.el (fit-window-to-buffer): When counting buffer width, + count the whole visible buffer. Correctly convert the body-height + to pixel size for window-text-pixel-size (Bug#18498). + +2014-09-22 Sam Steingold <sds@gnu.org> + + * progmodes/sql.el (sql-product-alist): Improve the Vertica entry. + (sql-execute): Use `special-mode'. + +2014-09-22 Stefan Monnier <monnier@iro.umontreal.ca> + + Add pcase-defmacro, as well as `quote' and `app' patterns. + * loadup.el: Increase max-lisp-eval-depth when macroexpanding macroexp. + * emacs-lisp/pcase.el: Allow (F . ARGS) in `app' patterns. + (pcase--funcall, pcase--eval): New functions. + (pcase--u1): Use them for guard, pred, let, and app. + (\`): Use the new feature to generate better code for vector patterns. + * emacs-lisp/pcase.el: Use pcase-defmacro to handle backquote. + (pcase--upat): Remove. + (pcase--macroexpand): Don't hardcode handling of `. + (pcase--split-consp, pcase--split-vector): Remove. + (pcase--split-equal): Disregard ` since it's expanded away. + (pcase--split-member): Optimize for quote rather than for `. + (pcase--split-pred): Optimize for quote rather than for `. + (pcase--u1): Remove handling of ` (and of `or' and `and'). + Quote non-selfquoting values when passing them to `eq'. + Drop `app's let-binding if the variable is not used. + (pcase--q1): Remove. + (`): Define as a pattern macro. + * emacs-lisp/pcase.el (pcase--match): New smart-constructor function. + (pcase--expand pcase--q1, pcase--app-subst-match): Use it. + (pcase--macroexpand): Handle self-quoting patterns here, expand them to + quote patterns. + (pcase--split-match): Don't hoist or/and here any more. + (pcase--split-equal): Optimize quote patterns as well as ` patterns. + (pcase--flip): New helper macro. + (pcase--u1): Optimize the memq case directly. + Don't handle neither self-quoting nor and/or patterns any more. + * emacs-lisp/pcase.el (pcase-defmacro): New macro. + (pcase--macroexpand): New function. + (pcase--expand): Use it. + * emacs-lisp/pcase.el (pcase--app-subst-match, pcase--app-subst-rest): + New optimization functions. + (pcase--u1): Add support for `quote' and `app'. + (pcase): Document them in the docstring. + +2014-09-22 Stefan Monnier <monnier@iro.umontreal.ca> + + Use lexical-bindin in Ibuffer. + * ibuffer.el (ibuffer-do-toggle-read-only): `arg' is unused. + (ibuffer-compile-format): Simplify. + (ibuffer-clear-summary-columns): Simplify. + * ibuf-ext.el (ibuffer-generate-filter-groups): Don't use the third + elem of dotimes when we don't refer to the iteration var from it. + (ibuffer-toggle-sorting-mode): Avoid add-to-list. + * ibuf-macs.el (define-ibuffer-column, define-ibuffer-op): + Silence byte-compiler. + +2014-09-22 Stefan Monnier <monnier@iro.umontreal.ca> + + * font-lock.el (font-lock-compile-keyword): Don't confuse a lambda + expression for a list. + + * emacs-lisp/bytecomp.el (byte-compile-lambda): Don't add fundoc usage + for functions with no arguments. + + * mpc.el (mpc-data-directory): Use locate-user-emacs-file. + (mpc-volume-refresh): Make sure the corresponding header-line is updated. + +2014-09-17 Tom Willemse <tom@ryuslash.org> (tiny change) + + * simple.el (clone-indirect-buffer): Mention the return value + (bug#18478). + + * progmodes/prog-mode.el (prog-mode-hook): Replace reference to + Text mode in docstring (bug#18464). + +2014-09-21 Stefan Monnier <monnier@iro.umontreal.ca> + + * progmodes/perl-mode.el (perl-syntax-propertize-function): + Accept underscores in identifiers after "sub" (bug#18502). + +2014-09-21 Tassilo Horn <tsdh@gnu.org> + + * textmodes/reftex-sel.el (reftex-select-label-mode) + (reftex-select-bib-mode, reftex-insert-docstruct): Derive modes + from special-mode (instead of fundamental-mode) and propertize + with font-lock-face instead of just face. (Bug#18496) + + * textmodes/reftex-toc.el (reftex-toc-mode, reftex-toc): Ditto. + +2014-09-19 Dmitry Gutov <dgutov@yandex.ru> + + * emacs-lisp/lisp.el (lisp-completion-at-point): Only calculate + `table-etc' when `end' is non-nil. + (lisp-completion-at-point): Move `end' back if it's after quote. + If in comment or string, only complete when after backquote. + (Bug#18265) + (lisp-completion-at-point): Don't use + `lisp--local-variables-completion-table' in the + `lisp--form-quoted-p' case. + +2014-09-19 Dmitry Gutov <dgutov@yandex.ru> + + * emacs-lisp/lisp.el (lisp--expect-function-p) + (lisp--form-quoted-p): New functions. + (lisp-completion-at-point): Use them to see if we're completing a + variable reference, a function name, or just any symbol. + http://lists.gnu.org/archive/html/emacs-devel/2014-02/msg00229.html + +2014-09-18 Ivan Kanis <ivan@kanis.fr> + + * net/shr.el, net/eww.el: Don't override `shr-width', but + introduce a new variable `shr-internal-width'. This allows users + to specify a width themselves. + +2014-09-18 Lars Magne Ingebrigtsen <larsi@gnus.org> + + * image-mode.el (image-toggle-display-image): If we have a + `fit-width' or a `fit-height', don't limit the size of the image + to the window size, because that doesn't preserve the aspect ratio. + * image-mode.el: Move defvars earlier to avoid a byte-compilation + warning. + +2014-09-17 Reuben Thomas <rrt@sc3d.org> + + * progmodes/js.el: Add interpreter-mode-alist support for various + JavaScript interpreters. + +2014-09-17 Paul Eggert <eggert@cs.ucla.edu> + + Don't assume 'grep' supports GREP_OPTIONS. + The GREP_OPTIONS environment variable is planned to be marked + obsolescent in GNU grep, due to problems in its use, so stop + relying on it. + * progmodes/grep.el (grep-highlight-matches): Document this. + (grep-process-setup): Do not set GREP_OPTIONS. + (grep-compute-defaults): Use an explicit --color option if supported. + +2014-09-16 Stefan Monnier <monnier@iro.umontreal.ca> + + * msb.el (msb--make-keymap-menu, msb-menu-bar-update-buffers): + Don't add outdated key-shortcut cache (bug#18482). + +2014-09-15 Glenn Morris <rgm@gnu.org> + + * image.el (image-multi-frame-p): Fix thinko - do not force + a delay if none was specified. (Bug#18334) + +2014-09-15 Kan-Ru Chen <kanru@kanru.info> + + * window.el (fit-window-to-buffer): Doc fix. + +2014-09-15 Ivan Shmakov <ivan@siamics.net> + + * desktop.el (desktop-create-buffer): Check that buffers are still live + before burying them (bug#18373). + +2014-09-15 Glenn Morris <rgm@gnu.org> + + * calendar/diary-lib.el (diary-list-entries): + Restore 24.3 display behavior. (Bug#18381) + +2014-09-15 Eli Zaretskii <eliz@gnu.org> + + * mouse.el (mouse-drag-line): On text-mode frames, count the mode + line and header line as 1 pixel. This fixes the 1-"pixel" (row) + discrepancy between window-pixel-edges and mouse events, and + avoids moving mode line up when the mouse click is on the modeline + and no drag is attempted. + +2014-09-14 Daniel Colascione <dancol@dancol.org> + + * register.el (insert-register): Change default interactive + insertion mode. + +2014-09-14 Michael Albinus <michael.albinus@gmx.de> + + * net/tramp-cache.el (tramp-flush-file-function): Simplify check. + Suppress debug messages. + + * net/tramp.el (tramp-file-name-handler): + * net/tramp-gvfs.el (tramp-gvfs-url-file-name): Apply `cons' where + appropriate. + +2014-09-13 Christopher Schmidt <ch@ristopher.com> + + * calendar/calendar.el (calendar-update-mode-line): + Do not overwrite mode-line-format if calendar-mode-line-format is + nil. (Bug#18467) + +2014-09-13 Leo Liu <sdl.web@gmail.com> + + * emacs-lisp/pcase.el (pcase--dontwarn-upats): New var. + (pcase--expand): Use it. + (pcase-exhaustive): New macro. (Bug#16567) + + * emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): + Add pcase-exhaustive. + +2014-09-13 Eli Zaretskii <eliz@gnu.org> + + * mail/rmailmm.el (rmail-mime-insert-html): Decode the HTML part + using the specified transfer-encoding, if any, or 'undecided'. + (rmail-mime-render-html-shr): Bind shr-width to nil, so lines are + broken at the window margin. + +2013-12-27 Ken Olum <kdo@cosmos.phy.tufts.edu> + + Support rendering of HTML parts in Rmail (bug#4258). + * mail/rmailmm.el (rmail-mime-process): Handle text/html + separately from other text/ types. Suppress tagline for + multipart body. + (rmail-mime-parse): Don't change visibility of tagline here. + (rmail-mime-set-bulk-data, rmail-mime-insert-bulk): + Handle text/html specially. + (rmail-mime-render-html-function,rmail-mime-prefer-html): New variables. + (rmail-mime-insert-html, rmail-mime-render-html-shr) + (rmail-mime-render-html-lynx): New functions. + (rmail-mime-fix-inserted-faces): New function. + (rmail-mime-process-multipart): Find the best part to show + following rmail-mime-prefer-html if set. + (rmail-mime-searching): New variable. + (rmail-search-mime-message): Bind rmail-mime-searching to + suppress rendering while searching. + +2014-09-12 Sam Steingold <sds@gnu.org> + + * progmodes/sql.el (sql-product-alist): Add vertica. + (sql-vertica-program, sql-vertica-options) + (sql-vertica-login-params, sql-comint-vertica, sql-vertica): + New functions and variables to support Vertica. + Inspired by code by Roman Scherer <roman@burningswell.com>. + +2014-09-11 Paul Eggert <eggert@cs.ucla.edu> + + * ses.el (ses-file-format-extend-parameter-list): Rename from + ses-file-format-extend-paramter-list, to correct a misspelling. + All uses changed. + +2014-09-10 Alan Mackenzie <acm@muc.de> + + CC Mode: revert recent changes and fix bug 17463 (cc-langs.elc + gets loaded at run-time). + * progmodes/cc-langs.el (c-no-parens-syntax-table): Rename the + c-lang-const to c-make-no-parens-syntax-table and correct the + logic. + (c-no-parens-syntax-table): Correct the logic of the + c-lang-defvar. + +2014-09-10 Stefan Monnier <monnier@iro.umontreal.ca> + + CC-mode: Set open-paren-in-column-0-is-defun-start to nil; + plus misc cleanup. + * progmodes/cc-mode.el (c-basic-common-init): + Set open-paren-in-column-0-is-defun-start. + (adaptive-fill-first-line-regexp, font-lock-syntactic-keywords): + Remove declarations, unused. + (run-mode-hooks): Remove declaration. + (font-lock-defaults): Use plain `defvar' to declare. + (c-run-mode-hooks): Test existence of run-mode-hooks with fboundp. + * progmodes/cc-langs.el (c-filter-ops): Avoid `setq'. + (c-make-mode-syntax-table): Don't micro-optimize. + (c-keywords, c-keyword-member-alist): Simplify. + (c-kwds-lang-consts): Don't eval at compile-time. + (c-primary-expr-regexp): Comment out unused vars. + * progmodes/cc-fonts.el (c-font-lock-context): Declare at top-level. + (c-font-byte-compile): New var. + (c--compile): New function. Use it instead of `byte-compile'. + (c-cpp-matchers): Quote the value returned by + `c-make-syntactic-matcher' in case it's not self-evaluating. + (c-basic-matchers-before): Avoid a plain MATCHER as keyword, wrap it in + parentheses instead (in case MATCHER happens to be a list). + (c-font-lock-enum-tail): Remove unused var `start'. + (c-font-lock-objc-methods): Silence byte-compiler warnings. + * progmodes/cc-engine.el (c-syntactic-re-search-forward): Sink an `if' + test into an argument. + * progmodes/cc-defs.el (c-point, c-major-mode-is, c-put-char-property) + (c-get-char-property): Don't use `eval' just to unquote a constant. + (c-use-extents): Remove. Use (featurep 'xemacs), compiled + more efficiently. + (c-put-char-property-fun): Don't call `byte-compile' by hand. + (c-clear-char-property, c-clear-char-properties): Check that `property' + is a quoted constant. + (c-emacs-features): Remove `infodock', `syntax-properties', and + `pps-extended-state' (never used), `8-bit' and `1-bit' (use (featurep + 'xemacs) instead). Use `with-temp-buffer' and let-bind vars after + changing buffer, so we don't have to setq them again afterwards. + (c-lang-const): Remove redundant symbolp assertions. + (c-find-assignment-for-mode): Use `or'. + * Makefile.in (compile-one-process): Remove cc-mode dependency. + +2014-09-09 Sam Steingold <sds@gnu.org> + + * progmodes/sql.el (sql-default-directory): Fix type annotation. + +2014-09-09 Stefan Monnier <monnier@iro.umontreal.ca> + + * progmodes/cc-awk.el: Remove unneeded cc-bytecomp use. + Change doc comments into docstrings. + * Makefile.in: Remove cc-awk dependency. + +2014-09-08 Sam Steingold <sds@gnu.org> + + * progmodes/sql.el (sql-send-line-and-next): New command, + bound to C-c C-n. + (sql-show-sqli-buffer): Display the buffer instead of its name and + bind the command to C-c C-z. + (sql-default-directory): New user option. + (sql-product-interactive): Bind `default-directory' to it to + enable remote connections using Tramp. + (sql-set-sqli-buffer): Call `sql-product-interactive' when no + suitable buffer is available. + +2014-09-08 Glenn Morris <rgm@gnu.org> + + * calendar/calendar.el (calendar-basic-setup): + Fix calendar-view-holidays-initially-flag and fancy display. + * calendar/diary-lib.el (diary-live-p): Doc fix. + + * calendar/calendar.el (calendar-basic-setup): + Avoid clobbering calendar with diary. (Bug#18381) + +2014-09-08 Stefan Monnier <monnier@iro.umontreal.ca> + + * vc/vc-dir.el (vc-dir-update): Don't burp in corner case. + +2014-09-08 Lars Ljung <lars@matholka.se> (tiny change) + + * isearch.el (isearch-yank-word-or-char): Obey superword-mode + as well (bug#18400). + +2014-09-08 Eli Zaretskii <eliz@gnu.org> + + * subr.el (posn-actual-col-row): Doc fix. (Bug#18385) + +2014-09-06 Leo Liu <sdl.web@gmail.com> + + * emacs-lisp/pcase.el (pcase): Doc fix. + (pcase--split-vector): New function. + (pcase--q1): Support vector qpattern. (Bug#18327) + +2014-09-05 Sam Steingold <sds@gnu.org> + + * textmodes/tex-mode.el (tex-print-file-extension): New user + option. + (tex-print): Use it instead of the hard-coded string. + +2014-09-05 Michael Albinus <michael.albinus@gmx.de> + + * net/tramp-sh.el (tramp-sh-handle-start-file-process): + Expand `default-directory'. + +2014-09-05 Martin Rudalics <rudalics@gmx.at> + + * scroll-bar.el (horizontal-scroll-bars-available-p): + New function. + (horizontal-scroll-bar-mode): Rewrite using + horizontal-scroll-bars-available-p. + * menu-bar.el (menu-bar-showhide-scroll-bar-menu): Rewrite using + horizontal-scroll-bars-available-p. + +2014-09-05 Stefan Monnier <monnier@iro.umontreal.ca> + + * subr.el (call-process-shell-command, process-file-shell-command): + Make the `args' obsolete (bug#18409). + (start-process-shell-command, start-file-process-shell-command): + Use `declare'. + +2014-09-05 Jay Belanger <jay.p.belanger@gmail.com> + + * calc/calc-forms.el (math-normalize-hms): Do a better check for + "negative" hms forms. + +2014-09-04 Rasmus Pank Roulund <emacs@pank.eu> + + * vc/vc-git.el (vc-git-conflicted-files): Fix bug when git status + returns nil (bug#18391). + +2014-09-04 Stefan Monnier <monnier@iro.umontreal.ca> + + * emacs-lisp/eldoc.el (eldoc-function-argstring): Don't strip + terminating paren (bug#18352). + (eldoc-last-data-store): Return cached data. + (eldoc-get-var-docstring): Avoid setq. + (eldoc-get-fnsym-args-string): Clarify data flow. + +2014-09-04 Thierry Volpiatto <thierry.volpiatto@gmail.com> + + * emacs-lisp/eldoc.el (eldoc-highlight-function-argument): Handle the + case where we're currently providing part of the &rest arg after some + &key args, as in define-ibuffer-op (bug#18048). + +2014-09-03 Stefan Monnier <monnier@iro.umontreal.ca> + + * progmodes/which-func.el (which-func-ff-hook): Obey pre-existing + buffer-local setting of which-func-mode. + (which-func-mode): Use defvar-local. + (which-function-mode): Don't reset which-func-mode in each buffer since + it might have been set by someone else. + (which-func-update-ediff-windows): Check which-function-mode. + +2014-09-03 Martin Rudalics <rudalics@gmx.at> + + * frame.el (frame-initialize): Remove horizontal-scroll-bars + from frame-initial-frame-alist. + * scroll-bar.el (previous-horizontal-scroll-bar-mode) + (horizontal-scroll-bar-mode-explicit) + (set-horizontal-scroll-bar-mode, get-horizontal-scroll-bar-mode) + (toggle-horizontal-scroll-bar): Remove. + (horizontal-scroll-bar-mode): Remove defcustom. + (horizontal-scroll-bar-mode): Fix doc-string. + (scroll-bar-toolkit-scroll) + (scroll-bar-toolkit-horizontal-scroll): Add doc-strings stubs. + +2014-09-03 Stefan Monnier <monnier@iro.umontreal.ca> + + * emacs-lisp/package.el (package-generate-description-file): + Properly quote the arguments (bug#18332). Change second arg. + (package--alist-to-plist-args): Rename from package--alist-to-plist and + quote the elements. + (package--make-autoloads-and-stuff): Fix the test for pre-existence of + the *-pkg.el file. Adjust to new calling convention of + package-generate-description-file. + + * progmodes/gud.el (gud-gdb-completion-at-point): Add hack (bug#18282). + (gud-gdb-completions): Remove obsolete workaround. + +2014-09-03 Eli Zaretskii <eliz@gnu.org> + + * subr.el (posn-col-row): Revert the change from commit + 2010-11-13T21:07:58Z!eliz@gnu.org, which + was inadvertently merged from emacs-23 release branch in 2010-11-18T03:54:14Z!monnier@iro.umontreal.ca + monnier@iro.umontreal.ca-20101118035414-yvlg7k7dk4k4l3q, and + introduced an off-by-one error in the reported row when there is a + header line. (Bug#18384) + +2014-09-03 Fabián Ezequiel Gallina <fgallina@gnu.org> + + * progmodes/python.el (python-indent-post-self-insert-function): + Avoid electric colon at beginning-of-defun. (Bug#18228) + +2014-09-03 Glenn Morris <rgm@gnu.org> + + * tutorial.el (tutorial--display-changes): + Fix 2014-08-01 change. (Bug#18382) + +2014-09-03 Ken Brown <kbrown@cornell.edu> + + * startup.el (fancy-splash-frame): Extend the fix for Bug#16014 to + the Cygwin-w32 build. (Bug#18347) + +2014-09-03 Glenn Morris <rgm@gnu.org> + + * tar-mode.el (tar--extract, tar-extract): + Avoid permanently disabling undo in extracted buffers. (Bug#18344) + +2014-09-03 Stefan Monnier <monnier@iro.umontreal.ca> + + * progmodes/sh-script.el (sh-font-lock-quoted-subshell): Try to better + handle multiline elements (bug#18380). + +2014-09-01 Eli Zaretskii <eliz@gnu.org> + + * ls-lisp.el (ls-lisp-use-string-collate) + (ls-lisp-UCA-like-collation): New defcustoms. + (ls-lisp-string-lessp): Use them to control sorting by file + names. (Bug#18051) + (ls-lisp-version-lessp): New function. + (ls-lisp-handle-switches): Use it to implement the -v switch of + GNU ls. + (ls-lisp--insert-directory): Mention the -v switch in the doc string. + +2014-08-31 Christoph Scholtes <cschol2112@gmail.com> + + * ibuffer.el: Replace mode-specific quit function with + `quit-window' via `special-mode'. + (ibuffer-mode-map): Use keybindings from special-mode-map instead + of local overrides. + (ibuffer): Don't store previous windows configuration. + Let `quit-window' handle restoring. + (ibuffer-quit): Remove function. Use `quit-window' instead. + (ibuffer-restore-window-config-on-quit): Remove variable. + (ibuffer-prev-window-config): Remove variable. + +2014-08-29 Michael Heerdegen <michael_heerdegen@web.de> + + * emacs-lisp/easy-mmode.el (define-minor-mode): Use mode function + name instead of variable name in hook docstring. (Bug#18349) + +2014-08-29 Martin Rudalics <rudalics@gmx.at> + + * window.el (display-buffer-at-bottom): Prefer bottom-left + window to other bottom windows. Reuse a bottom window if it + shows the buffer already. Suggested by Juri Linkov + <juri@jurta.org> in discussion of (Bug#18181). + +2014-08-29 Leo Liu <sdl.web@gmail.com> + + * files.el (minibuffer-with-setup-hook): Allow (:append FUN) to + append to minibuffer-setup-hook. (Bug#18341) + +2014-08-28 Stefan Monnier <monnier@iro.umontreal.ca> + + * progmodes/cc-defs.el: Expose c-lanf-defconst's expressions to the + byte-compiler. + (lookup-syntax-properties): Silence byte-compiler. + (c-lang-defconst): Quote the code with `lambda' rather than with + `quote'. + (c-lang-const): Avoid unneeded setq. + (c-lang-constants-under-evaluation): Add docstring. + (c-lang--novalue): New constant. + (c-find-assignment-for-mode): Use it instead of c-lang-constants. + (c-get-lang-constant): Same here. + Get the mode's value using `funcall' now that the code is quoted + with `lambda'. + +2014-08-28 Michael Albinus <michael.albinus@gmx.de> + + * net/tramp.el (tramp-handle-shell-command): Use `display-buffer'. + (Bug#18326) + +2014-08-28 Martin Rudalics <rudalics@gmx.at> + + * scroll-bar.el (scroll-bar-horizontal-drag-1): Handle new + interpretation of `portion-whole'. + +2014-08-28 Michael Albinus <michael.albinus@gmx.de> + + * net/tramp-adb.el: Spell author name correctly. + +2014-08-28 João Távora <joaotavora@gmail.com> + + * net/shr.el (shr-expand-url): Plain expand-file-name is not enough; + use url-expand-file-name. (Bug#18310) + +2014-08-28 Glenn Morris <rgm@gnu.org> + + * emulation/cua-rect.el (cua--highlight-rectangle): + Avoid error at point-min. (Bug#18309) + +2014-08-28 Stefan Monnier <monnier@iro.umontreal.ca> + + * progmodes/python.el (python-shell-prompt-detect): Remove redundant + executable-find (bug#18244). + + * simple.el (self-insert-uses-region-functions): Defvar. + +2014-08-28 Glenn Morris <rgm@gnu.org> + + * subr.el (remq): Revert 2014-08-25 doc change (not always true). + +2014-08-27 Dmitry Antipov <dmantipov@yandex.ru> + + * startup.el (normal-top-level): Now use internal--top-level-message. + +2014-08-26 Dmitry Antipov <dmantipov@yandex.ru> + + * startup.el (normal-top-level): Use top-level-message. + +2014-08-25 Lars Magne Ingebrigtsen <larsi@gnus.org> + + * net/shr.el (shr-copy-url): Encode copied URL to avoid getting + URLs containing spaces and the like. + +2014-08-25 Christoph Scholtes <cschol2112@gmail.com> + + * subr.el (remq): Fix docstring (Bug#18253). + +2014-08-25 Christoph Scholtes <cschol2112@gmail.com> + + * replace.el (query-replace): Fix typo in docstring (Bug#18320). + +2014-08-24 Alan Mackenzie <acm@muc.de> + + Handle C++11's "auto" and "decltype" constructions. + * progmodes/cc-engine.el (c-forward-type): Enhance to recognise + and return 'decltype. + (c-forward-decl-or-cast-1): New let variables backup-kwd-sym, + prev-kwd-sym, new-style-auto. Enhance to handle the new "auto" + keyword. + * progmodes/cc-fonts.el (c-font-lock-declarations): Handle the + "decltype" keyword. + (c-font-lock-c++-new): Handle "decltype" constructions. + * progmodes/cc-langs.el (c-auto-ops, c-auto-ops-re): + New c-lang-defconsts/defvars. + (c-haskell-op, c-haskell-op-re): New c-lang-defconsts/defvars. + (c-typeof-kwds, c-typeof-key): New c-lang-defconsts/defvars. + (c-typeless-decl-kwds): Append "auto" onto the C++ value. + (c-not-decl-init-keywords): Also exclude c-typeof-kwds from value. + + Make ">>" act as double template ender in C++ Mode. + * progmodes/cc-langs.el (c->-op-cont-tokens): New lang-const split + off from c->-op-cont-re. + (c->-op-cont-tokens): Change to use the above. + (c->-op-without->-cont-regexp): New lang-const. + * progmodes/cc-engine.el (c-forward-<>-arglist-recur): + Use c->-op-without->-cont-regexp in place of c->-op-cont-tokens. + + +2014-08-23 Alan Mackenzie <acm@muc.de> + + * progmodes/cc-fonts.el (c-font-lock-declarators): Fix infinite + loop, bug #18306. The bug was introduced on 2014-08-02. + 2014-08-21 Eli Zaretskii <eliz@gnu.org> - * textmodes/texnfo-upd.el (texinfo-specific-section-type): Don't - recognize a Top node if there are other sectioning commands + * textmodes/texnfo-upd.el (texinfo-specific-section-type): + Don't recognize a Top node if there are other sectioning commands earlier in the Texinfo file. This fixes a bug in texinfo-make-menu and avoids inflooping in texinfo-all-menus-update when they are invoked on texinfo.texi. @@ -91,19 +1462,19 @@ 2014-08-13 Eric S. Raymond <esr@thyrsus.com> - * vc/vc.git.el (vc-git-resolve-when-done): New function. + * vc/vc-git.el (vc-git-resolve-when-done): New function. Call "git add" when there are no longer conflict markers. 2014-08-13 Rüdiger Sonderfeld <ruediger@c-plusplus.de> - * vc/vc.git.el (vc-git-find-file-hook): New function. + * vc/vc-git.el (vc-git-find-file-hook): New function. Adds support for calling smerge (and resolve) on a conflicted file. (vc-git-conflicted-files): New function. Useful in itself and a step towards better smerge support. 2014-08-12 Stefan Monnier <monnier@iro.umontreal.ca> - * mpc.el (mpc-reorder): Don't bother splitting the "active"s elements + * mpc.el (mpc-reorder): Don't bother splitting the "active" elements to the first part if they're the same as the selection. 2014-08-12 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -232,24 +1603,13 @@ 2014-08-07 Eli Zaretskii <eliz@gnu.org> - * files.el (auto-mode-alist): Remove support for VMS from a - pattern. - -2014-08-07 Reuben Thomas <rrt@sc3d.org> - - Refer to MS-DOS using the same name everywhere. - - * arc-mode.el: Fix a couple of ``MS-DOG''s missed in the previous - commit. - * file-mode.el: ditto. + * files.el (auto-mode-alist): Remove support for VMS from a pattern. 2014-08-07 Reuben Thomas <rrt@sc3d.org> Refer to MS-DOS using the same name everywhere. - - * arc-mode.el: ``MS-DOG'', ``MSDOG'' and ``msdog'' become - ``MS-DOS''. - * frame.el: ditto. + * arc-mode.el, files.el, frame.el: ``MS-DOG'', ``MSDOG'' and + ``msdog'' become ``MS-DOS''. 2014-08-07 Michael Albinus <michael.albinus@gmx.de> @@ -258,8 +1618,8 @@ 2014-08-07 Leo Liu <sdl.web@gmail.com> - * help.el (temp-buffer-setup-hook,temp-buffer-show-hook): Revert - change on 2014-03-22. + * help.el (temp-buffer-setup-hook,temp-buffer-show-hook): + Revert change on 2014-03-22. 2014-08-06 Ulf Jasper <ulf.jasper@web.de> @@ -292,8 +1652,8 @@ * progmodes/python.el: Fix completions inside (i)pdb. (python-shell-completion-pdb-string-code): Make obsolete. - (python-shell-completion-get-completions): Use - python-shell-completion-string-code resending setup code + (python-shell-completion-get-completions): + Use python-shell-completion-string-code resending setup code continuously for (i)pdb. 2014-08-04 Paul Eggert <eggert@cs.ucla.edu> @@ -320,8 +1680,8 @@ 2014-08-02 Alan Mackenzie <acm@muc.de> - Fix confusion in C++ file caused by comma in "= {1,2},". Bug - #17756. + Fix confusion in C++ file caused by comma in "= {1,2},". + Bug #17756. * progmodes/cc-engine.el (c-beginning-of-statement-1): In checking for a statement boundary marked by "}", check there's no "=" before the "{". @@ -350,8 +1710,8 @@ 2014-07-30 Christophe Deleuze <christophe.deleuze@free.fr> (tiny change) - * calendar/icalendar.el (icalendar--decode-isodatetime): Use - actual current-time-zone when converting to local time. (Bug#15408) + * calendar/icalendar.el (icalendar--decode-isodatetime): + Use actual current-time-zone when converting to local time. (Bug#15408) 2014-07-29 Martin Rudalics <rudalics@gmx.at> @@ -462,17 +1822,17 @@ 2014-07-28 Fabián Ezequiel Gallina <fgallina@gnu.org> Grab all Python process output before inferior-python-mode hooks. - * progmodes/python.el (inferior-python-mode): Call - accept-process-output and sit-for to ensure all output for process + * progmodes/python.el (inferior-python-mode): + Call accept-process-output and sit-for to ensure all output for process has been received before running hooks. - (python-shell-internal-get-or-create-process): Cleanup - accept-process-output and sit-for calls. + (python-shell-internal-get-or-create-process): + Cleanup accept-process-output and sit-for calls. 2014-07-28 Fabián Ezequiel Gallina <fgallina@gnu.org> More robust shell startup and code setup. - * progmodes/python.el (python-shell-make-comint): Remove - accept-process-output call. + * progmodes/python.el (python-shell-make-comint): + Remove accept-process-output call. (python-shell-get-buffer): Return current buffer if major-mode is inferior-python-mode. (python-shell-get-or-create-process): Use it. @@ -481,8 +1841,8 @@ 2014-07-27 Eli Zaretskii <eliz@gnu.org> - * scroll-bar.el (scroll-bar-toolkit-horizontal-scroll): Add - rudimentary support for bidirectional text. + * scroll-bar.el (scroll-bar-toolkit-horizontal-scroll): + Add rudimentary support for bidirectional text. 2014-07-27 Martin Rudalics <rudalics@gmx.at> @@ -856,8 +2216,8 @@ (linum-update-window): Use it to adjust margin to linum's width. * leim/quail/sisheng.el (sisheng-list): Don't bother with-case-table. - * eshell/em-smart.el (eshell-smart-scroll-window): Use - with-selected-window. + * eshell/em-smart.el (eshell-smart-scroll-window): + Use with-selected-window. * xt-mouse.el (xterm-mouse-translate-1): Intern drag event (bug#17894). Remove also pointless window&mark manipulation. @@ -938,7 +2298,7 @@ (dbus-register-service): Register it. (Bug#17858) (dbus-managed-objects-handler): Fix docstring. -2014-07-04 Phil Sainty <psainty@orcon.net.nz> (tiny change) +2014-07-04 Phil Sainty <psainty@orcon.net.nz> * emacs-lisp/lisp.el (narrow-to-defun-include-comments): New var. (narrow-to-defun): New arg include-comments, defaulting to it @@ -1963,7 +3323,7 @@ outside of ignored environments. (tildify-build-regexp): Remove function since it is now incorporated in `tildify-foreach-region-outside-env' where it is - optimised and simplified by the use of `mapconcat'. + optimized and simplified by the use of `mapconcat'. (tildify-tildify): Return number of substitutions made so that… (tildify-count): …can be removed. (tildify-find-env): Accept a new PAIRS argument which was @@ -1976,7 +3336,7 @@ and instead using or. * textmodes/tildify.el (tildify-ignored-environments-alist): - Optimise environments regexes + Optimize environments regexes Each time beginning of an environment to ignore is found, `tildify-find-env' needs to identify regexp for the ending @@ -2058,7 +3418,7 @@ The most trivial fix would be to replace `expression' in the true-part of the if-statement with `aux', but instead, this commit - optimises `tildify-find-env' by changing it to use `mapconcat' + optimizes `tildify-find-env' by changing it to use `mapconcat' rather than open-coded while-loop. 2014-06-05 Mario Lang <mlang@delysid.org> @@ -3889,7 +5249,7 @@ 2014-03-23 Lars Ingebrigtsen <larsi@gnus.org> * calendar/parse-time.el (parse-time-iso8601-regexp) - (parse-iso8601-time-string): Copied from `url-dav' so that we can use + (parse-iso8601-time-string): Copy from `url-dav' so that we can use it more generally. 2014-03-23 Lars Ingebrigtsen <larsi@gnus.org> @@ -3909,9 +5269,7 @@ 2014-03-23 Daniel Colascione <dancol@dancol.org> Change subword-mode to use `find-word-boundary-function-table' and - replace `capitalized-words-mode'. Also, convert to lexical - binding. - + replace `capitalized-words-mode'. Also, convert to lexical binding. * progmodes/cap-words.el: Delete now-obsolete file. * progmodes/subword.el: Reimplement using `find-word-boundary-function-table'. @@ -5493,7 +6851,7 @@ * help-at-pt.el (help-at-pt-string, help-at-pt-maybe-display): Also try to display local help from just before point. -2014-02-02 Alan Mackenzie <bug-cc-mode@gnu.org> +2014-02-02 Alan Mackenzie <acm@muc.de> c-parse-state. Don't "append-lower-brace-pair" in certain circumstances. Also fix an obscure bug where "\\s!" shouldn't be @@ -5980,15 +7338,15 @@ COMMAND-alternatives variable, assign COMMAND as its definition name so that `describe-variable' can relocate it. -2014-01-14 Matthew Leach <matthew@mattleach.net> (tiny change) +2014-01-14 Matthew Leach <matthew@mattleach.net> * font-lock.el (font-lock-keywords): Fix typo in docstring (bug#16307). 2014-01-14 AgustÃn MartÃn Domingo <agustin.martin@hispalinux.es> - * ispell.el (ispell-region): Reset `in-comment' for new line - instead of wrongly reset `add-coment' (bug#13577). + * textmodes/ispell.el (ispell-region): Reset `in-comment' for new + line instead of wrongly reset `add-coment' (bug#13577). 2014-01-14 Daiki Ueno <ueno@gnu.org> @@ -8253,7 +9611,7 @@ Add option to delete file when done. (Bug#15647) (python-shell-send-string, python-shell-send-region): Use it. -2013-11-23 Ivan Shmakov <ivan@siamics.net> (tiny change) +2013-11-23 Ivan Shmakov <ivan@siamics.net> * vc/diff-mode.el (diff-mode): Only allow diff-default-read-only to set buffer-read-only to t, never to nil. (Bug#15938) @@ -15282,7 +16640,7 @@ 2013-06-04 Alan Mackenzie <acm@muc.de> - Remove faulty optimisation from indentation calculation. + Remove faulty optimization from indentation calculation. * progmodes/cc-engine.el (c-guess-basic-syntax): Don't calculate search limit based on 2000 characters back from indent-point. diff --git a/lisp/ChangeLog.10 b/lisp/ChangeLog.10 index dd5267725e5..bcd2dacd0f9 100644 --- a/lisp/ChangeLog.10 +++ b/lisp/ChangeLog.10 @@ -1,4 +1,4 @@ -2003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-07-03 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-menus.el (cc-imenu-init): Do not set `imenu-create-index-function' if the second argument is left @@ -9,7 +9,7 @@ (c-lineup-arglist-close-under-paren): Fixes to cope with special brace lists in Pike. -2003-07-03 Alan Mackenzie <bug-cc-mode@gnu.org> +2003-07-03 Alan Mackenzie <acm@muc.de> * progmodes/cc-mode.el (awk-mode): Call c-awk-after-change to ensure syntax-table props at loading. @@ -21,7 +21,7 @@ analyze AWK top-level forms properly (c-guess-basic-syntax CASE 5P), c-awk-backward-syntactic-ws. -2003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-07-03 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-fix.el: cc-mode-19.el has been renamed to progmodes/cc-fix.el since it now contains compatibility stuff @@ -59,7 +59,7 @@ * progmodes/cc-langs.el (comment-end): Put a space in front of the comment ender in C, as it was before the move from cc-mode.el. -2003-07-03 Alan Mackenzie <bug-cc-mode@gnu.org> +2003-07-03 Alan Mackenzie <acm@muc.de> * progmodes/cc-fonts.el: Do not load progmodes/cc-awk.elc or awk-font-lock-keywords unless there is an AWK Mode buffer. @@ -72,7 +72,7 @@ * progmodes/cc-engine.el, progmodes/cc-fonts.el: Changes for the new AWK support. -2003-07-03 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-07-03 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el, progmodes/cc-langs.el (c-decl-block-key, c-search-uplist-for-classkey): Check that @@ -940,8 +940,8 @@ This change is slightly incompatible. Although the calling convention for line-up functions is strictly extended, the format - of the `c-syntactic-context' variable has changed slightly. It's - believed that this incompatibility is minor, though; not a single + of the `c-syntactic-context' variable has changed slightly. + It's believed that this incompatibility is minor, though; not a single line-up function distributed with CC Mode needed to be changed, for instance. @@ -1612,7 +1612,7 @@ * dabbrev.el (dabbrev--goto-start-of-abbrev): Use minibuffer-prompt-end. - * comint.el (comint-move-point-for-output): Renamed from + * comint.el (comint-move-point-for-output): Rename from comint-scroll-to-bottom-on-output. Old name is alias. All uses changed. Doc fix. (comint-scroll-show-maximum-output): Doc fix. @@ -2918,7 +2918,7 @@ 2003-05-09 Sam Steingold <sds@gnu.org> - * pcvs.el (cvs-mode-find-file): Fixed the last patch's logic. + * pcvs.el (cvs-mode-find-file): Fix the last patch's logic. 2003-05-09 Stefan Monnier <monnier@cs.yale.edu> @@ -3253,7 +3253,7 @@ 2003-05-03 Richard M. Stallman <rms@gnu.org> - * emacs-lisp/autoload.el (update-directory-autoloads): Renamed from + * emacs-lisp/autoload.el (update-directory-autoloads): Rename from update-autoloads-from-directories. * progmodes/cperl-mode.el (cperl-nonoverridable-face): Doc fix. @@ -3792,7 +3792,7 @@ for both the argument and the value. * desktop.el (desktop-base-file-name): - Renamed from desktop-basefilename. Add defvaralias. + Rename from desktop-basefilename. Add defvaralias. 2003-04-14 John Paul Wallington <jpw@gnu.org> @@ -3859,7 +3859,7 @@ (describe-minor-mode-completion-table-for-symbol): New functions. minor-mode-list is used here. (describe-minor-mode-from-symbol): - Renamed from (old) describe-minor-mode. + Rename from (old) describe-minor-mode. Use describe-minor-mode-completion-table-for-symbol. Don't use eval. Just use symbol-name. (describe-minor-mode-from-indicator): Document is updated. @@ -3929,7 +3929,7 @@ * international/mule.el: Don't set after-insert-file-adjust-coding-function. (after-insert-file-set-coding): - Renamed from after-insert-file-set-buffer-file-coding-system. + Rename from after-insert-file-set-buffer-file-coding-system. 2003-04-11 Kenichi Handa <handa@m17n.org> @@ -3952,13 +3952,13 @@ (quail-make-guidance-frame): Delete the arg BUF. Fix position calculation. Don't set the window buffer, just return the new frame. (quail-minibuffer-message): New function. - (quail-show-guidance): Renamed from quail-show-guidance-buf. + (quail-show-guidance): Rename from quail-show-guidance-buf. Use message and quail-minibuffer-message to display the guidance. - (quail-hide-guidance): Renamed from quail-hide-guidance-buf. + (quail-hide-guidance): Rename from quail-hide-guidance-buf. Only delete quail-guidance-frame. (quail-update-guidance): Just update quail-guidance-str, not display it. - (quail-get-translations): Renamed from quail-show-translations. + (quail-get-translations): Rename from quail-show-translations. Return a string instead of inserting it in quail-guidance-buf. 2003-04-11 Kenichi Handa <handa@m17n.org> @@ -3969,7 +3969,7 @@ 2003-04-10 Juanma Barranquero <lektu@terra.es> - * frame.el (modify-all-frames-parameters): Deleted. + * frame.el (modify-all-frames-parameters): Delete. 2003-04-10 Sebastian Tennant <seb@albert.vcisp.net> (tiny change) @@ -4071,7 +4071,7 @@ (utf-16-le-with-signature, utf-16-be-with-signature) (utf-16): Aliases of the above coding systems. -2003-04-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-04-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-langs.el (c-symbol-key): Use POSIX char classes to match symbols. This makes CC Mode cope with the full range @@ -4146,7 +4146,7 @@ 2003-04-06 Masatake YAMATO <jet@gyve.org> - * progmodes/etags.el (tag-find-file-of-tag): Renamed from + * progmodes/etags.el (tag-find-file-of-tag): Rename from find-file-of-tag to avoid name space pollution. (tag-find-file-of-tag-noselect): Likewise. (etags-list-tags, etags-tags-apropos): @@ -4270,10 +4270,10 @@ 2003-04-02 Masatake YAMATO <jet@gyve.org> - * woman.el (woman-xref): Removed. + * woman.el (woman-xref): Remove. (woman-mode): Use `Man-highlight-references' instead of `WoMan-highlight-references'. - (WoMan-highlight-references): Removed. + (WoMan-highlight-references): Remove. * man.el (toplevel): Require button. (Man-header-file-path): New option. @@ -4285,7 +4285,7 @@ `button-buffer-map'. (Man-xref-man-page, Man-xref-header-file, Man-xref-normal-file): New buttons. `Man-xref-man-page' comes from woman.el. - (man-follow-mouse): Removed. + (man-follow-mouse): Remove. (Man-fontify-manpage): Use `Man-highlight-references' instead of calling `add-text-properties' directly. (Man-highlight-references, Man-highlight-references0): New functions. @@ -4525,7 +4525,7 @@ * net/net-utils.el (dns-lookup-host): New function. -2003-03-23 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-03-23 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-mode.el (c-parse-state): Add kludge to avoid an infinite loop when Emacs' open-paren-in-column-zero rule @@ -5471,8 +5471,8 @@ * ffap.el: Many doc fixes. (ffap-replace-file-component): - Renamed from ffap-replace-path-component. Callers changed. - (ffap-host-to-filename): Renamed from ffap-host-to-path. Callers chgd. + Rename from ffap-replace-path-component. Callers changed. + (ffap-host-to-filename): Rename from ffap-host-to-path. Callers chgd. * international/iso-ascii.el (iso-ascii-display-table): New variable. (iso-ascii-standard-display-table): New variable. @@ -5801,13 +5801,13 @@ * language/ind-util.el (indian-itrans-v5-table): Add entries for "E" and "O". -2003-02-10 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-02-10 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-styles.el (c-set-offset): Don't find a default syntactic element through syntactic analysis if called outside a CC Mode buffer. -2003-02-09 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-02-09 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-mode.el (c-basic-common-init): Install `c-fill-paragraph' on `fill-paragraph-function'. @@ -5974,7 +5974,7 @@ * term.el (term-raw-map): Set it up at load time. (term-char-mode): Don't set up term-raw-map here. (term-set-escape-char): Don't set up C-x subcommand. - (term-ansi-face-already-done): Renamed from + (term-ansi-face-already-done): Rename from term-ansi-face-alredy-done. (term-command-hook): Avoid error if STRING is empty. (term, term-mode): Doc fixes. @@ -6134,7 +6134,7 @@ (antlr-slow-syntactic-context): Use cache. (antlr-slow-cache-enabling-symbol): New internal variable. (antlr-slow-cache-diff-threshold): New variable. - (antlr-fast-invalidate-context-cache): Renamed from + (antlr-fast-invalidate-context-cache): Rename from antlr-xemacs-bug-workaround. (antlr-imenu-create-index-function): Search from beginning. @@ -6152,13 +6152,13 @@ (antlr-simple-read-shell-command): Define. (antlr-simple-with-displaying-help-buffer): Define. (antlr-simple-scan-sexps, antlr-simple-scan-lists): - Renamed from antlr-scan-{sexps,lists}-internal. + Rename from antlr-scan-{sexps,lists}-internal. Changes from 2002-02-28: * progmodes/antlr-mode.el: Version 2.2 is released. - * progmodes/antlr-mode.el (antlr): Moved to SourceForge.net + * progmodes/antlr-mode.el (antlr): Move to SourceForge.net * progmodes/antlr-mode.el: Minor bug fixes: insert options and indentation. @@ -6284,7 +6284,7 @@ * ibuf-ext.el (ibuffer-yank-filter-group): Move check for empty `ibuffer-filter-group-kill-ring' out of `interactive' declaration. -2003-01-28 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-01-28 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-vars.el, progmodes/cc-mode.el (c-require-final-newline): Made this variable an alist to @@ -6325,7 +6325,7 @@ * progmodes/ebrowse.el (ebrowse-draw-tree-fn): Likewise. -2003-01-26 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-01-26 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-vars.el, progmodes/cc-mode.el (c-require-final-newline): Add a variable to make the @@ -6930,7 +6930,7 @@ 2003-01-08 Francesco Potortì <pot@gnu.org> - * mail/undigest.el (unforward-rmail-message): Simplified. + * mail/undigest.el (unforward-rmail-message): Simplify. No functional change. 2003-01-07 Markus Rost <rost@math.ohio-state.edu> @@ -7354,7 +7354,7 @@ (makeinfo-compilation-sentinel-buffer, makeinfo-current-node): New functions. (makeinfo-compile): Add a sentinel parameter. - (makeinfo-compilation-sentinel-region): Renamed from + (makeinfo-compilation-sentinel-region): Rename from makeinfo-compilation-sentinel, and makeinfo-temp-file now never nil. (makeinfo-region): Use this. * info.el (Info-revert-find-node): New function. @@ -7412,7 +7412,7 @@ 2002-12-20 Francesco Potortì <pot@gnu.org> - * mail/undigest.el (rmail-mail-separator): Renamed from + * mail/undigest.el (rmail-mail-separator): Rename from rmail-digest-mail-separator. All users changed. (unforward-rmail-message): Rewritten to be more robust and to additionally account for the common style of forwarding messages @@ -7618,7 +7618,7 @@ 2002-12-10 Steven Tamm <steventamm@mac.com> - * generic-x.el (javascript-generic-mode): Added C style block + * generic-x.el (javascript-generic-mode): Add C style block comments as used in ECMA-262 standard. 2002-12-10 Kenichi Handa <handa@m17n.org> @@ -8136,7 +8136,7 @@ * progmodes/sql.el: Added LINTER support. (sql-linter-program): New variable. (sql-linter-options): New variable. - (sql-mode-menu): Added Linter keywords. + (sql-mode-menu): Add Linter keywords. (sql-mode-linter-font-lock-keywords): New variable. (sql-highlight-linter-keywords): New function. (sql-linter): New function. @@ -8165,7 +8165,7 @@ 2002-11-20 Markus Rost <rost@math.ohio-state.edu> - * Makefile.in (setwins_almost): Renamed from finder_setwins. + * Makefile.in (setwins_almost): Rename from finder_setwins. (custom-deps): Use it. (finder-data): Adjust to that name change. @@ -8317,10 +8317,10 @@ diary-entries-list. (diary-mode, fancy-diary-display-mode): New derived modes, for diary file and fancy diary buffer respectively. - (fancy-diary-font-lock-keywords, diary-font-lock-keywords): New - variables. - (font-lock-diary-sexps, font-lock-diary-date-forms): New - functions, used in diary-font-lock-keywords. + (fancy-diary-font-lock-keywords, diary-font-lock-keywords): + New variables. + (font-lock-diary-sexps, font-lock-diary-date-forms): + New functions, used in diary-font-lock-keywords. * calendar/calendar.el (diary-face): New. (european-calendar-display-form, describe-calendar-mode) @@ -8335,9 +8335,9 @@ * international/codepage.el (cp866-decode-table): Fix the translation table. -2002-11-16 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-11-16 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-bytecomp.el (cc-bytecomp-defun): Fixed bug that + * progmodes/cc-bytecomp.el (cc-bytecomp-defun): Fix bug that caused existing function definitions to be overridden by phonies when the bytecomp environment is restored. @@ -8390,7 +8390,7 @@ * files.el (mode-name): Mark it as risky-local-variable like the other mode-line elements (moved from bindings.el). - * bindings.el (mode-name): Moved mark as risky-local-variable to + * bindings.el (mode-name): Move mark as risky-local-variable to files.el. 2002-11-14 Juanma Barranquero <lektu@terra.es> @@ -8655,13 +8655,13 @@ don't defvar, and make permanent-local. (ucs-unify-8859, ucs-unify-8859, ucs-fragment-8859): Add/remove set-buffer-major-mode-hook, not quail-activate-hook. - (ucs-set-table-for-input): Renamed from ucs-quail-activate. + (ucs-set-table-for-input): Rename from ucs-quail-activate. (ucs-unify-8859, ucs-unify-8859, ucs-fragment-8859): Setup keyboard-translate-table, not translation-table-for-input. Modify set-buffer-major-mode-hook, not quail-activate-hook. (ucs-fragment-8859): Don't use translation-table-for-input coding system property. - (ucs-quail-activate): Deleted. + (ucs-quail-activate): Delete. (ucs-set-table-for-input): New. (ucs-minibuffer-setup): Use it. @@ -8691,7 +8691,7 @@ 2002-11-06 Kim F. Storm <storm@cua.dk> - * info.el (Info-fontify-node): Fixed hiding of *note references + * info.el (Info-fontify-node): Fix hiding of *note references with embedded file names like (xxx.yyy). Avoid making any lines visibly longer if hiding newlines inside note references by wrapping line after references if it contained @@ -8852,7 +8852,7 @@ 2002-10-29 Kim F. Storm <storm@cua.dk> - * ido.el (ido-wide-find-dirs-or-files): Fixed problem that caused + * ido.el (ido-wide-find-dirs-or-files): Fix problem that caused incomplete list of matches to be returned. 2002-10-29 Masayuki Ataka <ataka@milk.freemail.ne.jp> (tiny change) @@ -9119,21 +9119,21 @@ * international/mule-diag.el (non-iso-charset-alist): Add koi8-u. - * international/code-pages.el (cp-make-translation-table): Use - ucs-mule-to-mule-unicode. + * international/code-pages.el (cp-make-translation-table): + Use ucs-mule-to-mule-unicode. (cp-fix-safe-chars): Fix typo. (non-iso-charset-alist): Don't define. (cp-make-coding-system): Use utf-8-translation-table-for-decode. Define translation-table-for-input. (cp866): Reinstate. (alternativnj): Don't define alias. - (koi8-u): Deleted. + (koi8-u): Delete. * language/european.el ("Slovenian"): Use slovenian input-method. (encode-mac-roman): Use ucs-mule-to-mule-unicode. - * language/cyrillic.el (cyrillic-alternativnyj-decode-table): Fix - the table. + * language/cyrillic.el (cyrillic-alternativnyj-decode-table): + Fix the table. (cyrillic-alternativnyj): Don't give it `mime-charset' property. (cp866): Delete this alias. ("Bulgarian"): Fix the value of `input-method'. @@ -9162,8 +9162,8 @@ 2002-10-15 Kenichi Handa <handa@m17n.org> - * mail/sendmail.el (sendmail-send-it): Call - select-message-coding-system before changing the current buffer to + * mail/sendmail.el (sendmail-send-it): + Call select-message-coding-system before changing the current buffer to " sendmail temp". 2002-10-14 Andre Spiegel <spiegel@gnu.org> @@ -9171,7 +9171,7 @@ * files.el (insert-directory): Handle //SUBDIRED// lines in recursive listings from ls --dired. - * vc.el (vc-dired-reformat-line): Simplified. Handles text + * vc.el (vc-dired-reformat-line): Simplify. Handles text properties correctly now. 2002-10-14 Juanma Barranquero <lektu@terra.es> @@ -9208,7 +9208,7 @@ * ediff-init.el (ediff-frame-char-height): Use frame-selected-window. - * ediff-util.el (ediff-file-checked-in-p): Changed progn with and. + * ediff-util.el (ediff-file-checked-in-p): Change progn with and. * ediff-wind.el (ediff-skip-unsuitable-frames): Distinguish selected frame from frame of selected window. @@ -9341,7 +9341,7 @@ 2002-10-07 Kim F. Storm <storm@cua.dk> * emulation/cua-base.el (cua-normal-cursor-color): - Fixed initialization to make "Erase Customization" work. + Fix initialization to make "Erase Customization" work. 2002-10-07 Stefan Monnier <monnier@cs.yale.edu> @@ -9469,7 +9469,7 @@ (widget-editable-list-entry-create): Update caller. * wid-edit.el (widget-types-copy): New function. - (default): Added :copy keyword. + (default): Add :copy keyword. (menu-choice): Ditto. (checklist): Ditto. (radio-button-choice): Ditto. @@ -9580,17 +9580,17 @@ * international/utf-8.el (ucs-mule-to-mule-unicode): Don't define this translation-table name here. (utf-translation-table-for-encode): New translation-table name. - (utf-fragmentation-table): Renamed from utf-8-fragmentation-table. + (utf-fragmentation-table): Rename from utf-8-fragmentation-table. (utf-defragmentation-table): New variable. - (ucs-mule-cjk-to-unicode): Renamed from utf-8-subst-rev-table. + (ucs-mule-cjk-to-unicode): Rename from utf-8-subst-rev-table. (utf-subst-table-for-encode): New translation-table name. - (ucs-unicode-to-mule-cjk): Renamed from utf-8-subst-table. + (ucs-unicode-to-mule-cjk): Rename from utf-8-subst-table. (utf-subst-table-for-decode): New translation-table name. - (utf-fragment-on-decoding): Renamed from + (utf-fragment-on-decoding): Rename from utf-8-fragment-on-decoding. Correctly handle the case that unify-8859-on-encoding-mode is off. Handle mule-utf-16-le and mule-utf-16-be too. - (utf-translate-cjk): Renamed from utf-8-translate-cjk. + (utf-translate-cjk): Rename from utf-8-translate-cjk. Handle mule-utf-16-le and mule-utf-16-be too. (ccl-decode-mule-utf-8): Refer to utf-translation-table-for-decode and utf-subst-table-for-decode. @@ -10044,7 +10044,7 @@ (gamegrid-display-type): Use Emacs' standard `display-.*-p' functions to check for display capabilities. Fix the recognition of image-support in Emacs 21 by this way. - (gamegrid-hide-cursor): Removed. + (gamegrid-hide-cursor): Remove. (gamegrid-setup-default-font): Ported the code from XEmacs to Emacs: create a new face and assign the variable `gamegrid-face' to it. Make sure that the face is not higher than the smallest @@ -10234,7 +10234,7 @@ 2002-09-10 Michael Albinus <Michael.Albinus@alcatel.de> - * net/tramp.el (tramp-handle-write-region): Added missing + * net/tramp.el (tramp-handle-write-region): Add missing `)'. Hope it's the right place. 2002-09-09 Kai Großjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> @@ -10246,7 +10246,7 @@ something harmless, but the /bin/sh will display a dollar sign which confused the subsequent prompt recognition. (tramp-multi-action-password): More debugging output. - (tramp-encoding-shell): Renamed from tramp-sh-program. + (tramp-encoding-shell): Rename from tramp-sh-program. More documentation. Default to cmd.exe on Windows NT. (tramp-encoding-command-switch): New variable. Use instead of hard-wired "-c" which is only good for /bin/sh. @@ -10286,7 +10286,7 @@ (tramp-completion-handle-file-name-all-completions): Change function call for user/host completion according to definition in `tramp-completion-function-alist'. - (tramp-parse-passwd): Added exception handling for "root", because + (tramp-parse-passwd): Add exception handling for "root", because `tramp-get-completion-su' (the previous place for this stuff) doesn't exist any longer. @@ -10375,7 +10375,7 @@ (tramp-multi-file-name-hop-structure-unified) (tramp-multi-file-name-hop-structure-separate) (tramp-make-multi-tramp-file-format-unified) - (tramp-make-multi-tramp-file-format-separate): Removed. + (tramp-make-multi-tramp-file-format-separate): Remove. (tramp-make-tramp-file-name): Allow partial tramp file names. Generate tramp file format on-the-fly depending on parameters. Apply atomar format strings resp expressions. @@ -10402,7 +10402,7 @@ (tramp-completion-file-name-handler-alist): Add handler for `file-exists-p. (tramp-completion-handle-file-exists-p): New function. - (tramp-completion-handle-file-name-completion): Simplified. + (tramp-completion-handle-file-name-completion): Simplify. (tramp-completion-dissect-file-name): Regexp's reorganized. (tramp-completion-handle-file-name-all-completions): Call completion-function only if `user' or `host' is given. @@ -10683,7 +10683,7 @@ * viper-util.el (viper-chars-in-region): Simplification. - * viper.el (viper-emacs-state-mode-list): Added modes. + * viper.el (viper-emacs-state-mode-list): Add modes. 2002-09-18 Jonathan Yavner <jyavner@engineer.com> @@ -10766,13 +10766,13 @@ (nonincremental-search-forward, nonincremental-re-search-forward) (nonincremental-search-backward, nonincremental-re-search-backward): Set menu-bar-last-search-type to string or regexp. - (nonincremental-repeat-re-search-forward): Removed. - (nonincremental-repeat-re-search-backward): Removed. + (nonincremental-repeat-re-search-forward): Remove. + (nonincremental-repeat-re-search-backward): Remove. (menu-bar-replace-menu): New keymap for "Edit->Replace" submenu. (menu-bar-i-search-menu): New keymap for "Incremental Search" submenu. - (menu-bar-adv-search-menu): Removed. + (menu-bar-adv-search-menu): Remove. (menu-bar-search-menu): Reorganized. - (menu-bar-edit-menu): Added "Replace" submenu. + (menu-bar-edit-menu): Add "Replace" submenu. 2002-09-15 Richard M. Stallman <rms@gnu.org> @@ -10917,7 +10917,7 @@ 2002-09-13 Kim F. Storm <storm@cua.dk> - * kmacro.el (kmacro-keymap): Changed bindings: + * kmacro.el (kmacro-keymap): Change bindings: C-x C-k s to kmacro-start-macro, C-x C-k b to kmacro-bind-to-key. 2002-09-12 Richard M. Stallman <rms@gnu.org> @@ -11033,7 +11033,7 @@ * loadup.el ("simple.el"): Move to after loaddefs.el. - * subr.el (define-mail-user-agent): Moved from simple.el. + * subr.el (define-mail-user-agent): Move from simple.el. 2002-09-10 Richard M. Stallman <rms@gnu.org> @@ -11051,11 +11051,11 @@ * international/ucs-tables.el: Bind utf-8-translation-table-for-decode when setting up tables and remove useless optimize-char-table. - (ucs-mule-to-mule-unicode): Deleted. + (ucs-mule-to-mule-unicode): Delete. (ucs-unify-8859): Maybe optimize ucs-mule-to-mule-unicode. * international/utf-16.el (utf-16-le-pre-write-conversion) - (utf-16-be-pre-write-conversion): Deleted. + (utf-16-be-pre-write-conversion): Delete. (mule-utf-16-le, mule-utf-16-be): Register encoding translation table. 2002-09-10 Richard M. Stallman <rms@gnu.org> @@ -11384,10 +11384,10 @@ * vc-hooks.el: Require vc.el at compile-time. (vc-workfile-unchanged-p, vc-default-workfile-unchanged-p): - Moved here from vc.el. + Move here from vc.el. * vc.el (vc-workfile-unchanged-p, vc-default-workfile-unchanged-p): - Moved to vc-hooks.el. + Move to vc-hooks.el. * vc-rcs.el (vc-rcs-state): Don't require vc.el. @@ -11540,7 +11540,7 @@ 2002-08-30 ARISAWA Akihiro <ari@mbf.sphere.ne.jp> (tiny change) - * ps-print.el (ps-lp-system): Fixed typo in `usg-unix-v'. + * ps-print.el (ps-lp-system): Fix typo in `usg-unix-v'. 2002-08-30 Markus Rost <rost@math.ohio-state.edu> @@ -11660,7 +11660,7 @@ 2002-08-28 Juanma Barranquero <lektu@terra.es> - * replace.el (occur-hook): Renamed from `occur-mode-hook'. + * replace.el (occur-hook): Rename from `occur-mode-hook'. (occur-mode): Remove call to `occur-mode-hook'. (occur-rename-buffer): Fix reference to `occur-mode-hook' in docstring. (occur-1): Add call to `occur-hook'. @@ -11700,9 +11700,9 @@ (reftex-section-number): Better handling of parts: No chapter counter resets. - * textmodes/reftex.el (reftex-highlight-overlays): Added a third + * textmodes/reftex.el (reftex-highlight-overlays): Add a third overlay. - (reftex-mode-menu): Added entry for `reftex-toc-recenter. + (reftex-mode-menu): Add entry for `reftex-toc-recenter. Also moved `reftex-reset-mode' to top level. * textmodes/reftex-toc.el (reftex-toc-recenter): New command. @@ -11745,15 +11745,15 @@ 2002-08-25 Miles Bader <miles@gnu.org> * rfn-eshadow.el (file-name-shadow-properties-custom-type): - Renamed from `read-file-name-electric-shadow-properties-custom-type'. + Rename from `read-file-name-electric-shadow-properties-custom-type'. Change name of face. - (file-name-shadow-properties): Renamed from + (file-name-shadow-properties): Rename from `read-file-name-electric-shadow-properties'. - (file-name-shadow-tty-properties): Renamed from + (file-name-shadow-tty-properties): Rename from `read-file-name-electric-shadow-tty-properties'. - (file-name-shadow): Renamed from `read-file-name-electric-shadow'. + (file-name-shadow): Rename from `read-file-name-electric-shadow'. (rfn-eshadow-setup-minibuffer): Update references to renamed variables. - (file-name-shadow-mode): Renamed from + (file-name-shadow-mode): Rename from `read-file-name-electric-shadow-mode'. Update references to renamed variables. @@ -11797,7 +11797,7 @@ * files.el (ange-ftp-completion-hook-function): Add safe-magic prop. * subr.el (symbol-file-load-history-loaded) - (load-symbol-file-load-history): Deleted. + (load-symbol-file-load-history): Delete. (symbol-file): Don't call load-symbol-file-load-history. 2002-08-23 Andre Spiegel <spiegel@gnu.org> @@ -11859,18 +11859,18 @@ 2002-08-21 Kim F. Storm <storm@cua.dk> - * bindings.el (mode-line-format): Moved global-mode-string last. - (mode-line-position): Moved %p first. Added padding to %l/%c to + * bindings.el (mode-line-format): Move global-mode-string last. + (mode-line-position): Move %p first. Added padding to %l/%c to eliminate jumpiness in modeline. Use (%l,%c) format if both line-number-mode and column-number-mode are enabled. -2002-08-20 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-08-20 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-engine.el (c-forward-syntactic-ws): Fixed a bug + * progmodes/cc-engine.el (c-forward-syntactic-ws): Fix a bug that could cause an infinite loop if something that looks like a macro begins in the middle of a line. - * progmodes/cc-engine.el (c-parse-state): Fixed a bug that + * progmodes/cc-engine.el (c-parse-state): Fix a bug that could cause `c-state-cache' to contain two conses in sequence when there's an unbalanced open paren in a macro. @@ -11990,7 +11990,7 @@ 2002-08-15 Carsten Dominik <dominik@sand.science.uva.nl> - * textmodes/reftex.el (reftex-mode): Moved the creation of special + * textmodes/reftex.el (reftex-mode): Move the creation of special syntax tables to top-level. 2002-08-15 David Kastrup <David.Kastrup@t-online.de> @@ -12094,7 +12094,7 @@ * international/mule-cmds.el (search-unencodable-char): New function. (select-safe-coding-system): Show unencodable characters. - (unencodable-char-position): Deleted, and implemented in C in coding.c. + (unencodable-char-position): Delete, and implemented in C in coding.c. 2002-04-09 John Wiegley <johnw@gnu.org> @@ -12177,9 +12177,9 @@ 2002-08-05 Alan Shutko <ats@acm.org> - * ibuffer.el (ibuffer-mode-map): Added ibuffer-filter-by-used-mode. - (ibuffer-mode-map): Added ibuffer-filter-by-used-mode. - (ibuffer-mode): Added ibuffer-filter-by-used-mode to doc string. + * ibuffer.el (ibuffer-mode-map): Add ibuffer-filter-by-used-mode. + (ibuffer-mode-map): Add ibuffer-filter-by-used-mode. + (ibuffer-mode): Add ibuffer-filter-by-used-mode to doc string. * ibuf-ext.el (ibuffer-list-buffer-modes): New. (ibuffer-filter-by-used-mode): New. @@ -12359,11 +12359,11 @@ 2002-07-31 Richard M. Stallman <rms@gnu.org> - * makefile.w32-in (compile-after-backup): Renamed from `compile'. + * makefile.w32-in (compile-after-backup): Rename from `compile'. Use `compile-always'. (bootstrap): Use `compile', not `compile-files'. Use `update-subdirs'. - (compile): Renamed from `compile-files'. - (compile-CMD, compile-SH): Renamed from `compile-files-*'. + (compile): Rename from `compile-files'. + (compile-CMD, compile-SH): Rename from `compile-files-*'. * emacs-lisp/bytecomp.el (byte-compile-find-cl-functions): Check that (car elt) is a string. @@ -12574,10 +12574,10 @@ 2002-07-25 Carsten Dominik <dominik@astro.uva.nl> * textmodes/reftex.el (reftex-compile-variables): - Simplified regular expression. + Simplify regular expression. * textmodes/reftex-parse.el (reftex-locate-bibliography-files): - Simplified the regexp. + Simplify the regexp. * textmodes/reftex-cite.el (reftex-get-bibkey-default): New function. (reftex-extract-bib-entries-from-thebibliography): @@ -12639,8 +12639,8 @@ * warnings.el (warning-levels): Add %s to the strings. (warning-group-format): New variable. - (warning-suppress-log-types): Renamed from warning-suppress-log. - (warning-suppress-types): Renamed from warning-suppress. + (warning-suppress-log-types): Rename from warning-suppress-log. + (warning-suppress-types): Rename from warning-suppress. (display-warning): Implement those changes. 2002-07-23 Richard M. Stallman <rms@gnu.org> @@ -12677,7 +12677,7 @@ (finder-inf.el): Remove. (update-authors): New target. (TAGS-LISP): Remove $(lispsource). - (compile-always): Renamed from `compile-files'. + (compile-always): Rename from `compile-files'. (compile): New target, adapted from `compile-files'. (compile-calc): New target. (recompile): Change `.' to $(lisp). @@ -12698,7 +12698,7 @@ * net/browse-url.el (browse-url-lynx-input-attempts): Use defcustom. (browse-url-lynx-input-delay): Add custom type and group. - * cus-start.el (double-click-fuzz): Added. + * cus-start.el (double-click-fuzz): Add. 2002-07-22 Alan Shutko <ats@acm.org> @@ -12747,7 +12747,7 @@ (reftex-toc-split-windows-horizontally): New option. (reftex-toc-split-windows-horizontally-fraction): New option. (reftex-include-file-commands): New option. - (reftex-cite-format-builtin): Added ?n for nocite. + (reftex-cite-format-builtin): Add ?n for nocite. * textmodes/reftex-index.el (reftex-query-index-phrase): Use `reftex-index-verify-function'. @@ -12764,7 +12764,7 @@ * textmodes/reftex.el (reftex-compile-variables): Use `reftex-include-file-commands'. - (reftex-type-query-prompt): Changed defconst to defvar. + (reftex-type-query-prompt): Change defconst to defvar. (reftex-type-query-help, reftex-typekey-to-format-alist) (reftex-typekey-to-prefix-alist, reftex-env-or-mac-alist) (reftex-special-env-parsers, reftex-label-mac-list) @@ -12929,7 +12929,7 @@ (ucs-mule-to-mule-unicode): New. (ucs-unify-8859): Use utf-8-fragment-on-decoding, set up Quail translation. - (ucs-fragment-8859): Modified consistent with ucs-unify-8859. + (ucs-fragment-8859): Modify consistent with ucs-unify-8859. (unify-8859-on-encoding-mode): Doc mod. Fix custom version. (unify-8859-on-decoding-mode): Doc mod. Change code. Fix custom version. Add custom dependencies. @@ -13184,7 +13184,7 @@ 2002-07-13 Kim F. Storm <storm@cua.dk> - * progmodes/compile.el (grep-tree): Fixed autoload. + * progmodes/compile.el (grep-tree): Fix autoload. Corrected use of undefined variable `match-files-aliases'. 2002-07-12 Glenn Morris <gmorris@ast.cam.ac.uk> @@ -13263,7 +13263,7 @@ (tramp-handle-file-name-directory): Don't return "/" when completing a remote root directory (where the filename looks like "/method:user@host:/"). - (tramp-handle-ange-ftp): Deleted. + (tramp-handle-ange-ftp): Delete. (tramp-disable-ange-ftp): New function, called at toplevel, deletes Ange-FTP from file-name-handler-alist. (tramp-handle-make-symbolic-link): Implement. @@ -13357,7 +13357,7 @@ * files.el (after-find-file): Don't check for read-only status of files just created (and not yet saved on disk). - * ido.el (ido-completion-help): Changed XEmacs specific code to + * ido.el (ido-completion-help): Change XEmacs specific code to avoid byte compiler warning in GNU Emacs. (ido-set-matches1): Use regexp-quote instead of identity. (ido-complete-space): New function. @@ -13549,7 +13549,7 @@ (define-stroke, strokes-fix-button2-command, strokes-insinuated) (strokes-insinuate, global-set-stroke, describe-stroke) (load-user-strokes, save-strokes, strokes-bug-address) - (strokes-click-command): Deleted. + (strokes-click-command): Delete. (strokes-execute-stroke): Remove strokes-click-p case. (strokes-describe-stroke): Remove strokes-click-p stuff. (strokes-help): Fix. @@ -13868,7 +13868,7 @@ end-statement, specially with regards to nested subprograms. (comment-region advice): Initially disabled, for better compatibility with other modes. - (ada-fill-comment-paragraph): Fixed (no longer worked with Emacs 21). + (ada-fill-comment-paragraph): Fix (no longer worked with Emacs 21). * progmodes/ada-xref.el: Update copyright notice. (ada-xref-create-ali): The default is now not to create automatically @@ -13889,7 +13889,7 @@ (ada-find-references): New parameters arg and local-only. (ada-find-any-references): New parameters local-only and append. (ada-goto-declaration): Fix handling of predefined entities in xref. - (ada-get-all-references): Updated to the new xref format in GNAT 3.15, + (ada-get-all-references): Update to the new xref format in GNAT 3.15, still compatible with GNAT 3.14 of course. Fix various calls to count-lines, that didn't work correctly when the buffer was narrowed. @@ -13958,17 +13958,17 @@ * simple.el (what-cursor-position): Use describe-char. - * descr-text.el (describe-char): Moved from mule-diag.el, renamed + * descr-text.el (describe-char): Move from mule-diag.el, renamed from describe-char-after. Now calls describe-text-properties. - (describe-property-list): Renamed from describe-text-properties. - (describe-text-properties): Renamed from describe-text-at. + (describe-property-list): Rename from describe-text-properties. + (describe-text-properties): Rename from describe-text-at. New arg OUTPUT-BUFFER. (describe-text-properties-1): New subroutine, broken out from describe-text-properties. Output a newline before each section of the output. * international/mule-diag.el (describe-char-after): - Moved to descr-text.el. + Move to descr-text.el. 2002-06-17 Eli Zaretskii <eliz@is.elta.co.il> @@ -14143,9 +14143,9 @@ (eshell-sublist): Use copy-sequence. (eshell-copy-tree): Make it an alias for copy-tree. - * emacs-lisp/cl.el (copy-list): Moved back from subr.el. + * emacs-lisp/cl.el (copy-list): Move back from subr.el. - * subr.el (copy-list): Moved to cl.el. + * subr.el (copy-list): Move to cl.el. (copy-tree): Don't use copy-list or cl-pop. 2002-06-10 Miles Bader <miles@gnu.org> @@ -14189,7 +14189,7 @@ `tty-color-translate' and `tty-color-by-index'; this is now the main place to do it. -2002-06-09 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-06-09 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-styles.el (c-set-style, c-set-style-1): Add another state for the `dont-override' flag where it only keeps @@ -14218,13 +14218,13 @@ 2002-06-08 Colin Walters <walters@verbum.org> - * subr.el (copy-list): Moved here from cl.el. - (copy-tree): Renamed here from `cl-copy-tree' in cl-extra.el. + * subr.el (copy-list): Move here from cl.el. + (copy-tree): Rename here from `cl-copy-tree' in cl-extra.el. - * emacs-lisp/cl-extra.el (cl-copy-tree): Moved to `copy-tree' in + * emacs-lisp/cl-extra.el (cl-copy-tree): Move to `copy-tree' in subr.el. Add a defalias with the old name. - * emacs-lisp/cl.el (copy-list): Moved to subr.el. + * emacs-lisp/cl.el (copy-list): Move to subr.el. * replace.el (occur-mode): Don't set up categories. Do set `font-lock-defaults', and be sure to set `font-lock-core-only'. @@ -14245,7 +14245,7 @@ (ibuffer-compile-format): Don't treat `name' category specially. (ibuffer-column name): Use `font-lock-face'. (filename-and-process): Ditto. - (ibuffer-buffer-name-category): Renamed to + (ibuffer-buffer-name-category): Rename to `ibuffer-buffer-name-face'. Don't use categories. (ibuffer-update-title-and-summary): Use `font-lock-face'. (ibuffer-insert-filter-group): Ditto. @@ -14374,15 +14374,15 @@ * subr.el (open-network-stream, open-network-stream-nowait) (open-network-stream-server, process-kill-without-query): - Moved from simple.el. + Move from simple.el. * simple.el (open-network-stream, open-network-stream-nowait) (open-network-stream-server, process-kill-without-query): - Moved to subr.el. + Move to subr.el. * simple.el (byte-compiling-files-p): Function deleted. - * textmodes/ispell.el (ispell-library-directory): Renamed from + * textmodes/ispell.el (ispell-library-directory): Rename from ispell-library-path. If Ispell is not installed, init to nil. (check-ispell-version): Doc fix. (ispell-menu-map): Get rid of byte-compiling-files-p hackery; @@ -14432,7 +14432,7 @@ * textmodes/sgml-mode.el (xml-mode): New alias for `sgml-mode'. - * emacs-lisp/bytecomp.el (byte-compile-last-line): Deleted. + * emacs-lisp/bytecomp.el (byte-compile-last-line): Delete. (byte-compile-delete-first): New function. (byte-compile-read-position): New variable. (byte-compile-last-position): New variable. @@ -14460,7 +14460,7 @@ 2002-05-27 Kim F. Storm <storm@cua.dk> - * simple.el (push-mark-command): Added optional NOMSG arg. + * simple.el (push-mark-command): Add optional NOMSG arg. * emulation/cua-base.el (cua-set-mark): Align pop to mark behavior with standard set-mark-command. @@ -14506,7 +14506,7 @@ * rot13.el (rot13-translate-table): New variable. (rot13, rot13-string, rot13-region): New functions. -2002-05-25 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-05-25 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-add-stmt-syntax): Fix some cases of wrong anchoring, e.g. for else-if compounds. @@ -14575,7 +14575,7 @@ (apropos-command, apropos, apropos-value, apropos-documentation): Allow keywords in addition to regexp. Added scoring. (apropos-documentation-check-doc-file) - (apropos-documentation-check-elc-file): Added scoring. + (apropos-documentation-check-elc-file): Add scoring. (apropos-print): Sort according to score. 2002-05-22 Colin Walters <walters@cis.ohio-state.edu> @@ -14660,8 +14660,8 @@ (ibuffer-compile-format): If the current column is a `name' column, figure out the appropriate category to put on it. (filename-and-process): Use category property. - (ibuffer-fontify-region-function): Deleted. - (ibuffer-unfontify-region-function): Deleted. + (ibuffer-fontify-region-function): Delete. + (ibuffer-unfontify-region-function): Delete. (ibuffer-update-title-and-summary): Use category properties. (ibuffer-insert-filter-group): Ditto. (ibuffer-mode): Set up category properties. @@ -14677,7 +14677,7 @@ * ibuffer.el (toplevel): Require font-lock, to get the face definitions. - (ibuffer-use-fontification): Deleted. + (ibuffer-use-fontification): Delete. (column filename-and-process): New column. (ibuffer-formats): Use it by default. (ibuffer-name-map, ibuffer-mode-name-map) @@ -15096,8 +15096,8 @@ * emacs-lisp/find-func.el (find-function-search-for-symbol): Add autoload cookie. - (find-function-regexp): Include - "\(quote " to match the defaliases in loaddefs.el. + (find-function-regexp): + Include "\(quote " to match the defaliases in loaddefs.el. * filesets.el (filesets-conditional-sort): Use copy-sequence, not copy-list. @@ -15287,7 +15287,7 @@ 2002-05-03 John Wiegley <johnw@gnu.org> - * eshell/esh-var.el (eshell-modify-global-environment): Added this + * eshell/esh-var.el (eshell-modify-global-environment): Add this customization variable, which will cause any "export" commands within any eshell buffer to modify the global Emacs environment. It defaults to nil, which means that such commands will only @@ -15375,7 +15375,7 @@ * align.el (align-region): Fix the fix to align-region, because the "name" argument was appearing twice. -2002-05-01 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-05-01 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-beginning-of-decl-1): Better way to handle protection labels, one which doesn't get confused by @@ -15465,7 +15465,7 @@ * subr.el (remove-yank-excluded-properties): New helper function. (insert-for-yank, insert-buffer-substring-as-yank): Use it. - * simple.el (yank-excluded-properties): Added help-echo to list. + * simple.el (yank-excluded-properties): Add help-echo to list. 2002-04-29 Glenn Morris <gmorris@ast.cam.ac.uk> @@ -15556,7 +15556,7 @@ not a list. * replace.el (occur-revert-arguments): - Renamed from occur-revert-properties. All uses changed. + Rename from occur-revert-properties. All uses changed. 2002-04-28 Pavel JanÃk <Pavel@Janik.cz> @@ -15838,7 +15838,7 @@ (buffers-menu-show-status): New variables. (menu-bar-update-buffers-1): Use them. -2002-04-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-mask-comment): More fixes when used from `c-do-auto-fill' and point is at or near the limit of the @@ -15863,19 +15863,19 @@ (occur-mode-display-occurrence): Handle buffer property. (list-matching-lines-face): Use defcustom. (list-matching-lines-buffer-name-face): New variable. - (occur-accumulate-lines): Renamed from `ibuffer-accumulate-lines', + (occur-accumulate-lines): Rename from `ibuffer-accumulate-lines', in ibuffer.el. (occur-read-primary-args): Move out of `occur'. (occur): Delete. Now simply call `occur-1'. (multi-occur, multi-occur-by-filename-regexp): New functions. (occur-1): New function. - (occur-engine): Renamed from `ibuffer-occur-engine' to replace the + (occur-engine): Rename from `ibuffer-occur-engine' to replace the previous implementation of `occur'; taken from ibuf-ext.el. (occur-fontify-on-property): New function. (occur-fontify-region-function, occur-unfontify-region-function): New functions. - * ibuffer.el (ibuffer-accumulate-lines): Moved to replace.el. + * ibuffer.el (ibuffer-accumulate-lines): Move to replace.el. * ibuf-ext.el (ibuffer-depropertize-string): Delete. (ibuffer-occur-match-face): Delete. @@ -15883,7 +15883,7 @@ (ibuffer-occur-mouse-display-occurence): Delete. (ibuffer-occur-goto-occurence, ibuffer-occur-display-occurence) (ibuffer-do-occur-1, ibuffer-occur-revert-buffer-function): Delete. - (ibuffer-occur-engine): Moved to replace.el. + (ibuffer-occur-engine): Move to replace.el. (ibuffer-do-occur): Simply call `occur-1'. * play/gamegrid.el (gamegrid-add-score-with-update-game-score): @@ -15921,9 +15921,9 @@ * dired.el (dired-mouse-find-file-other-window): Handle events that move out of the window. -2002-04-23 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-23 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-cmds.el (c-mask-comment): Fixed bug where point + * progmodes/cc-cmds.el (c-mask-comment): Fix bug where point was moved to the following line when it was at the first line of a block comment where comment-start-skip matched to eol. @@ -15948,13 +15948,13 @@ * diary-lib.el (include-other-diary-files): Allow modifying included buffer, to turn off selective display. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-mode.el (c-define-abbrev-table): New function to pass the SYSTEM-FLAG to `define-abbrev' in a way that works in emacsen that doesn't support it. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-align.el, progmodes/cc-engine.el, * progmodes/cc-styles.el, progmodes/cc-vars.el @@ -15976,27 +15976,27 @@ (c-opt-asm-stmt-key): New language variable to recognize the beginning of asm statements. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-guess-basic-syntax): Detect variable declarations after class and struct declarations correctly. Fixed limit error when finding the anchor for template-args-cont and topmost-intro-cont. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-beginning-of-defun) (c-declaration-limits): Find the "line oriented" declaration start too, just like the "line oriented" end is found. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-vars.el (c-offsets-alist): A more sane default for `inexpr-statement'. This is not compatible, though. I think the benefit of a good default style outweights that in this case. Besides, `inexpr-statement' is not very common. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-electric-delete-forward): Fix silly bug that caused it to delete backwards in hungry delete @@ -16013,7 +16013,7 @@ list initializers correctly (but costly; it ought to be integrated into `c-beginning-of-statement-1'). -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el, progmodes/cc-engine.el (c-beginning-of-defun, c-end-of-defun, c-mark-function): @@ -16028,7 +16028,7 @@ handles declarations that continue after the block. * progmodes/cc-engine.el (c-syntactic-re-search-forward): - Added an option to restrict matching to the top level of the + Add an option to restrict matching to the top level of the current paren sexp. * progmodes/cc-langs.el (c-opt-block-decls-with-vars-key): @@ -16036,9 +16036,9 @@ (c-syntactic-eol): New regexp to match a "syntactic" eol. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-engine.el (c-guess-basic-syntax): Fixed a bug + * progmodes/cc-engine.el (c-guess-basic-syntax): Fix a bug that often caused the backward limit to be lost at the top level. This improves performance a bit. @@ -16052,12 +16052,12 @@ (c-beginning-of-decl-1): New function that put point at the beginning of the declaration. It handles K&R argdecl blocks. - (c-guess-basic-syntax): Replaced the `knr-argdecl' recognition + (c-guess-basic-syntax): Replace the `knr-argdecl' recognition code with one that doesn't depend on the current indentation. The anchor position for `knr-argdecl' has also changed, but in a way that is unlikely to cause compatibility problems. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-defs.el, progmodes/cc-engine.el (c-forward-comment): `forward-comment' in XEmacs skips over @@ -16069,19 +16069,19 @@ setup of the language specific variables. The regexp-opt mangling is also done at compile time now. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-indent-line-or-region): Call `c-indent-line' directly instead of through `indent-according-to-mode' so that this function always indents syntactically. - * progmodes/cc-engine.el (c-guess-basic-syntax): Fixed a bug + * progmodes/cc-engine.el (c-guess-basic-syntax): Fix a bug where a class beginning with a nested class could cause an infinite loop (the state outside the narrowed out class is never used now). -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-align.el, progmodes/cc-cmds.el, progmodes/cc-engine.el, progmodes/cc-vars.el: Fixes so that @@ -16102,7 +16102,7 @@ * progmodes/cc-align.el: Use the vector form in the return value in all cases where lineup functions return absolute columns. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-add-stmt-syntax) (c-guess-basic-syntax): Anchor `brace-list-intro' and @@ -16122,7 +16122,7 @@ (c-major-mode-is): Compare against the buffer local variable `c-buffer-is-cc-mode', which is faster than using `derived-mode-class'. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-forward-syntactic-ws) (c-backward-syntactic-ws, c-forward-token-1) @@ -16133,19 +16133,19 @@ That's signified by making their documentation into docstrings. (c-whack-state, c-hack-state, c-skip-case-statement-forward): - Removed these internal functions since they aren't used. + Remove these internal functions since they aren't used. (c-forward-to-cpp-expression): Classified this function as internal. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-langs.el (c-ObjC-class-key, c-Java-class-key): - Simplified these regexps; the class keywords they contain + Simplify these regexps; the class keywords they contain ought to be enough to avoid false matches, so checking for following identifiers etc is just unnecessary (and might also fail for oddly formatted code). -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el, progmodes/cc-cmds.el (c-forward-comment-lc): New function that behaves like @@ -16160,7 +16160,7 @@ normal label in a switch block as a case label, to get consistent lineup with the case labels. - * progmodes/cc-engine.el (c-backward-syntactic-ws): Fixed bug + * progmodes/cc-engine.el (c-backward-syntactic-ws): Fix bug in skipping over a macro that ends with an empty line. * progmodes/cc-styles.el: Require cc-align since styles added @@ -16168,7 +16168,7 @@ defined there, and so the `c-valid-offset' check might otherwise complain on them. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-align.el, progmodes/cc-mode.el: * progmodes/cc-vars.el: Added two new lineup functions: @@ -16195,7 +16195,7 @@ * progmodes/cc-langs.el (c-symbol-key): Made this variable mode specific, to handle Pike special symbols like `== better. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el, progmodes/cc-engine.el, progmodes/cc-vars.el (c-report-syntactic-errors): A new @@ -16203,13 +16203,13 @@ to off; since CC Mode ignores most syntactic errors it might as well ignore them all for the sake of consistency. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-looking-at-inexpr-block): Optimization. Can give a noticeable speedup if there's a large preceding function or class body. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-align.el, progmodes/cc-cmds.el: Use more efficient and correct insertion functions in many places. @@ -16221,21 +16221,21 @@ * progmodes/cc-styles.el (c-read-offset): Unbind SPC in the completion to make it easier to enter lists. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-cmds.el (c-beginning-of-defun): Fixed bug where + * progmodes/cc-cmds.el (c-beginning-of-defun): Fix bug where c-state-cache was clobbered. * progmodes/cc-cmds.el, progmodes/cc-engine.el - (c-calculate-state): Moved from cc-cmds.el to cc-engine.el due + (c-calculate-state): Move from cc-cmds.el to cc-engine.el due to dependency. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-parse-state): Ignore unbalanced open parens in macros (if point isn't in the same one). -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-context-open-line): New function that is the `open-line' equivalent to `c-context-line-break'. @@ -16244,7 +16244,7 @@ for Emacs 21 since `indent-new-comment-line' has been changed to `comment-indent-new-line' there. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el, progmodes/cc-langs.el (c-stmt-delim-chars, c-stmt-delim-chars-with-comma): @@ -16257,7 +16257,7 @@ the set of statement delimiting characters, to allow it to be changed dynamically and per-mode. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-looking-at-bos) (c-looking-at-inexpr-block, c-add-stmt-syntax) @@ -16270,21 +16270,21 @@ Made arglist-cont anchor correctly in arglists that contain statements. * progmodes/cc-engine.el (c-guess-basic-syntax): - Fixed consistent anchoring of defun-block-intro in defuns in code + Fix consistent anchoring of defun-block-intro in defuns in code blocks (can only occur in Pike). * progmodes/cc-engine.el (c-looking-at-inexpr-block) - (c-looking-at-inexpr-block-backward): Changed the arguments to + (c-looking-at-inexpr-block-backward): Change the arguments to require containing sexps and paren state, for better efficiency. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el, progmodes/cc-engine.el, progmodes/cc-vars.el: Improved anchoring of statement and handling of labels in front of substatements. (c-guess-continued-construct, c-guess-basic-syntax): - Improved and unified anchoring at statements. Statements beginning + Improve and unified anchoring at statements. Statements beginning with comments or labels are now avoided, by going out of blocks and containing statements if necessary. This nesting handling also fixes the case when there's a statement after a @@ -16293,7 +16293,7 @@ (c-electric-colon): Map the new `substatement-label' to `label' when consulting `c-hanging-colons-alist'. - (c-offsets-alist): Added substatement-label. Updated the + (c-offsets-alist): Add substatement-label. Updated the comments for the new anchoring positions at statements. * progmodes/cc-engine.el (c-guess-basic-syntax): Use more sane @@ -16302,7 +16302,7 @@ neutralized by a kludge in `c-get-syntactic-indentation' which ignored such anchor points. - (c-get-syntactic-indentation): Removed the kludge that was + (c-get-syntactic-indentation): Remove the kludge that was necessary due to buggy anchor points. * progmodes/cc-engine.el (c-guess-basic-syntax): Do not check @@ -16312,7 +16312,7 @@ recognized as normal arglist-cont if we're directly in a macro arglist, for consistency with other "bare" statements. - * progmodes/cc-engine.el (c-looking-at-bos): Added optional + * progmodes/cc-engine.el (c-looking-at-bos): Add optional limit arg for backward searches. * progmodes/cc-engine.el (c-looking-at-inexpr-block): @@ -16325,7 +16325,7 @@ in the list of syntactic symbols. Only the first is used as the base for the offset calculation. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-indent-defun): Indent the current macro if inside one at the top level. Do not throw an error @@ -16340,7 +16340,7 @@ * progmodes/cc-engine.el (c-least-enclosing-brace): Rewritten to not be destructive. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-context-line-break): Only do a macro line break when point is inside the content of it; if it's in @@ -16349,21 +16349,21 @@ * progmodes/cc-engine.el (c-guess-basic-syntax): Do not add cpp-macro-cont inside the argument list to a #define. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-defs.el (c-forward-comment): Implemented a kludge to avoid the problem most forward-comment incarnations have with `\' together with comment parsing. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-engine.el (c-check-state-cache): Fixed bug + * progmodes/cc-engine.el (c-check-state-cache): Fix bug which could cause the state returned by `c-parse-state' to lack a closed paren element. That in turn could result in very long searches, since it's common that they start from the last preceding close brace. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-beginning-of-statement-1): Do not treat else-if as a single continuation, since that'd make it @@ -16373,7 +16373,7 @@ the starting if, but that doesn't affect the indentation for any reasonably sane style. Also introduced a noerror flag. - (c-beginning-of-closest-statement): Removed; + (c-beginning-of-closest-statement): Remove; c-beginning-of-statement-1 now avoids the problem this one solved. * progmodes/cc-engine.el (c-guess-continued-construct) @@ -16384,7 +16384,7 @@ before the start of the statement. * progmodes/cc-engine.el (c-looking-at-inexpr-block): - Added flag to disable looking at the type of the surrounding paren + Add flag to disable looking at the type of the surrounding paren since that confuses c-beginning-of-statement-1 and a couple of other places. @@ -16392,7 +16392,7 @@ Avoid stepping to the previous statement in case 18. Improvements in recognition of statement blocks on the top level. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-beginning-of-statement-1) (c-crosses-statement-barrier-p): Rewritten to get a well @@ -16400,7 +16400,7 @@ in recognition of do-while constructs. (c-backward-to-start-of-do, c-backward-to-start-of-if): - Removed; use c-beginning-of-statement-1 instead. + Remove; use c-beginning-of-statement-1 instead. (c-guess-continued-construct, c-guess-basic-syntax): Various fixes to not depend on the bugs previously in @@ -16408,20 +16408,20 @@ use the new behavior of c-beginning-of-statement-1 better. Fixed recognition of catch blocks inside macros. - * progmodes/cc-engine.el (c-backward-syntactic-ws): Fixed bug + * progmodes/cc-engine.el (c-backward-syntactic-ws): Fix bug in skipping over a macro. * progmodes/cc-langs.el (c-label-kwds): New variable to contain the appropriate c-*-label-kwds value. - * progmodes/cc-vars.el (defcustom-c-stylevar): Fixed value + * progmodes/cc-vars.el (defcustom-c-stylevar): Fix value evaluation bug that caused the widget for c-block-comment-prefix to bug out. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-guess-basic-syntax): - Improved recognition of statements: They are now recognized in + Improve recognition of statements: They are now recognized in contexts where they normally can't occur, e.g. on the top level or in function call arguments. This is mainly useful to recognize statements in macros at the top level, and in arguments to @@ -16444,7 +16444,7 @@ analysis in ObjC mode. * progmodes/cc-engine.el (c-beginning-of-statement-1): - Fixed bug in do-while statements where the body is not a block. + Fix bug in do-while statements where the body is not a block. * progmodes/cc-styles.el (c-set-style): Reset c-special-indent-hook to its global value if in override mode. @@ -16454,7 +16454,7 @@ * progmodes/cc-engine.el (c-evaluate-offset, c-get-offset): Use c-benign-error to report the c-strict-syntax-p error. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-align.el, progmodes/cc-defs.el: * progmodes/cc-cmds.el, progmodes/cc-engine.el, progmodes/cc-vars.el: @@ -16469,7 +16469,7 @@ default. An extra flag argument is required to do that. (c-macro-start, c-query-macro-start) - (c-query-and-set-macro-start): Added a cache for the macro + (c-query-and-set-macro-start): Add a cache for the macro start position. (c-forward-syntactic-ws, c-backward-syntactic-ws): Fixes for @@ -16477,7 +16477,7 @@ in forward-comment in some emacsen when it hits a buffer limit with a large repeat count. - (c-lineup-macro-cont): Improved behavior when + (c-lineup-macro-cont): Improve behavior when c-syntactic-indentation-in-macros is nil. (c-syntactic-indentation-in-macros, c-backslash-max-column) @@ -16495,15 +16495,15 @@ (c-benign-error): New macro to report errors that doesn't need to interrupt the operation. - * progmodes/cc-defs.el (c-point): Added eonl and eopl positions. + * progmodes/cc-defs.el (c-point): Add eonl and eopl positions. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-electric-brace, c-indent-region): - Removed most of the c-state-cache fiddling, since the global + Remove most of the c-state-cache fiddling, since the global state cache now handles this. - * progmodes/cc-engine.el (c-guess-basic-syntax): Fixed bug + * progmodes/cc-engine.el (c-guess-basic-syntax): Fix bug when there's an open paren at the very first char of the visible buffer region. @@ -16515,7 +16515,7 @@ * progmodes/cc-engine.el (c-whack-state-after): Slight optimization. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el, progmodes/cc-langs.el, progmodes/cc-align.el: Improvements to syntactic analysis @@ -16524,7 +16524,7 @@ (c-block-stmt-1-kwds, c-block-stmt-2-kwds): New variables used by `c-guess-basic-syntax'. - (c-parse-state): Fixed bug with braces inside macros when + (c-parse-state): Fix bug with braces inside macros when using cached state info. (c-forward-to-cpp-expression): New function to aid in @@ -16542,7 +16542,7 @@ (c-offsets-alist): Made `c-lineup-macro-cont' the default for cpp-macro-cont. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-beginning-of-statement-1) (c-forward-syntactic-ws): Fixes to handle continued lines. @@ -16550,7 +16550,7 @@ (c-backward-to-start-of-if, c-guess-basic-syntax): Do syntactic analysis inside macros. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-indent-region): Did a speedup made possible by the more flexible state cache. @@ -16558,22 +16558,22 @@ * progmodes/cc-engine.el (c-parse-state, c-whack-state-before) (c-whack-state-after, c-hack-state) (c-narrow-out-enclosing-class, c-guess-basic-syntax): - Improved the state cache system. It now can use partial info from + Improve the state cache system. It now can use partial info from an old cached state to calculate a new one at a different position. Removed some kludges to avoid the state cache. The new functions `c-whack-state-before' and `c-whack-state-after' replace the now obsolete `c-whack-state'. * progmodes/cc-engine.el (c-beginning-of-statement-1): - Optimized backing through a macro. This can speed things up + Optimize backing through a macro. This can speed things up quite a bit when there are long macros before point. (c-beginning-of-macro): Do not ignore the limit. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-electric-continued-statement): - Fixed a bug where the keyword wasn't reindented correctly if + Fix a bug where the keyword wasn't reindented correctly if followed by another keyword or identifier. * progmodes/cc-engine.el (c-parse-state): Ignore closed brace @@ -16581,7 +16581,7 @@ second of two "do { } while (0)" macros after each other indented differently. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-beginning-of-macro) (c-forward-syntactic-ws): Recognize "#!" as a preprocessor @@ -16589,13 +16589,13 @@ interpreter lines like "#!/usr/bin/pike" at the beginning of the file. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-looking-at-inexpr-block): Recognize brace blocks inside a parenthesis expression as inexpr-statement. Useful when writing statements as macro arguments. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-fill-paragraph, c-do-auto-fill) (c-mask-comment): Broke out the comment masking code from @@ -16603,14 +16603,14 @@ able to do the same thing in `c-do-auto-fill'. This should make auto-fill-mode behave better. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-electric-brace, c-electric-paren): Check `executing-macro' to avoid blinking parens when macros are executed. * progmodes/cc-mode.el, progmodes/cc-styles.el - (c-setup-filladapt): Moved from cc-mode.el to cc-styles.el for + (c-setup-filladapt): Move from cc-mode.el to cc-styles.el for consistency with `c-setup-paragraph-variables' (which was placed there due to the dependency from `c-set-style'). @@ -16619,14 +16619,14 @@ there already is a style called "user" defined when CC Mode starts up for the first time. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el, progmodes/cc-vars.el - (c-comment-indent, c-indent-comment-alist): Added new variable + (c-comment-indent, c-indent-comment-alist): Add new variable `c-indent-comment-alist' to allow better control over `c-comment-indent'. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-align.el (c-lineup-C-comments): Try to match both `comment-start-skip' and the comment prefix on the @@ -16636,29 +16636,29 @@ `comment-start-skip' match whatever `c-comment-prefix-regexp' matches. * progmodes/cc-mode.el, progmodes/cc-styles.el (c-common-init) - (c-set-style-1, c-setup-paragraph-variables): Moved the + (c-set-style-1, c-setup-paragraph-variables): Move the variable initialization based on `c-comment-prefix-regexp' to a new function `c-setup-paragraph-variables', which is now used both at mode init and when a style that sets `c-comment-prefix-regexp' is activated. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-beginning-of-member-init-list): Better handling of C++ template args to avoid confusion with `<' and `>' used as operators in member init expressions. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-most-enclosing-brace) - (c-least-enclosing-brace): Added optional second arg to limit + (c-least-enclosing-brace): Add optional second arg to limit the search to before a certain point. - * progmodes/cc-engine.el (c-guess-basic-syntax): Fixed bug which + * progmodes/cc-engine.el (c-guess-basic-syntax): Fix bug which could cause incorrect analysis if a cached state is used (usually only happens when an electric key reindents a line). -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-defs.el (c-forward-comment): More idiosyncrasy insulation. This time for XEmacs 21. @@ -16676,25 +16676,25 @@ the indentation of the current line. Switched places on cases 5D.3 and 5D.4 and made them use more syntactically correct methods. - (c-inher-key): Removed since the code in + (c-inher-key): Remove since the code in `c-guess-basic-syntax' now uses token-based search. * progmodes/cc-cmds.el, progmodes/cc-mode.el (c-mode-menu): - Added a submenu to access some toggles. + Add a submenu to access some toggles. (c-toggle-syntactic-indentation): New function to toggle the variable `c-syntactic-indentation'. - * progmodes/cc-styles.el (c-set-style): Improved the error + * progmodes/cc-styles.el (c-set-style): Improve the error message for incorrect offsets a bit. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-indent-exp): Don't require that the sexp follows point immediately, instead find the closest following open paren that ends on another line. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-align.el (c-lineup-cascaded-calls): New indentation function. @@ -16702,26 +16702,26 @@ * progmodes/cc-engine.el (c-beginning-of-macro): Bugfix for directives with whitespace between the '#' and the name. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-forward-syntactic-ws) (c-backward-syntactic-ws): Handle line continuations as whitespace. Don't move past a macro if that'd take us past the limit. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-beginning-of-macro) (c-forward-syntactic-ws): Multiline strings begin with `#"' in Pike, and that shouldn't be confused with a preprocessor directive. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el: Extended the kludge to interoperate with the delsel and pending-del packages wrt to the new function `c-electric-delete-forward'. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-indent-exp): Keep the indentation of the block itself, i.e. only indent the contents in it. @@ -16730,38 +16730,38 @@ argument to completing-read instead of initial-contents, if the function is recent enough to support it. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-mode.el (c-mode-help-address): - Removed bug-gnu-emacs@gnu.org from the receiver list for bug reports. + Remove bug-gnu-emacs@gnu.org from the receiver list for bug reports. I've almost never seen a bug reported this way that should go to that list, but it's rather common that the reports concern the combination CC Mode and XEmacs instead. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-cmds.el (c-electric-paren): Fixed bug when both + * progmodes/cc-cmds.el (c-electric-paren): Fix bug when both brace-elseif-brace and brace-catch-brace are active and there's a "else if"-block before the catch block. * progmodes/cc-menus.el (cc-imenu-c++-generic-expression): Detect function headers that span lines. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-electric-brace) (c-electric-semi&comma, c-electric-colon, c-electric-paren): Check for last on line only for doing the auto-newline-mode stuff, not for the reindentation. - * progmodes/cc-cmds.el (c-electric-brace): Fixed bugs in the + * progmodes/cc-cmds.el (c-electric-brace): Fix bugs in the handling of c-syntactic-indentation: When it's nil, indent the new lines but don't reindent the current one. Reindent the line only when the inserted brace comes first on it, instead of last. * progmodes/cc-cmds.el (c-electric-brace) - (c-electric-semi&comma): Fixed two places where + (c-electric-semi&comma): Fix two places where c-syntactic-indentation wasn't heeded. * progmodes/cc-cmds.el (c-electric-pound): Don't be electric @@ -16772,7 +16772,7 @@ is found. Fixed case where an else following a do-while statement could be associated with an if inside the do-while. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-guess-fill-prefix): Tuned the dwim for the fallback to add a single space after the comment prefix. @@ -16781,15 +16781,15 @@ behavior in some special cases, especially for single-line comments. Avoid breaking up a comment starter or ender. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-outline-level): Applied patch from the Emacs sources to make this work in invisible text. - * progmodes/cc-langs.el (c-switch-label-key): Fixed regexp to + * progmodes/cc-langs.el (c-switch-label-key): Fix regexp to not be confused by a later ':' on the same line as the label. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el, progmodes/cc-mode.el (c-electric-delete, c-electric-delete-forward): @@ -16800,20 +16800,20 @@ `c-electric-delete-forward' is now bound to C-d to get the electric behavior on that key too. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-cmds.el (c-fill-paragraph): Fixed bogus direct + * progmodes/cc-cmds.el (c-fill-paragraph): Fix bogus direct use of c-comment-prefix-regexp, which caused an error when it's a list. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-mode.el, progmodes/cc-vars.el (c-common-init) - (c-default-style): Removed the hardcoded switch to "java" style + (c-default-style): Remove the hardcoded switch to "java" style in Java mode. It's instead taken care of by the default value for c-default-style. -2002-04-22 Martin Stjernholm <bug-cc-mode@gnu.org> +2002-04-22 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-align.el (c-lineup-math): Fix bug where lineup was triggered by equal signs in string literals. @@ -16864,9 +16864,9 @@ 2002-04-19 Miles Bader <miles@gnu.org> * custom.el (customize-mark-to-save, customize-mark-as-set) - (custom-quote): Moved here from `cus-edit.el'. + (custom-quote): Move here from `cus-edit.el'. * cus-edit.el (customize-mark-to-save, customize-mark-as-set) - (custom-quote): Moved to `custom.el'. + (custom-quote): Move to `custom.el'. 2002-04-18 Richard M. Stallman <rms@gnu.org> @@ -16958,7 +16958,7 @@ (ediff-clone-buffer-for-region-comparison): More robust window arrangement while prompting for regions to compare. (ediff-make-cloned-buffer): Use generate-new-buffer-name. - (ediff-inferior-compare-regions): Deleted unused vars + (ediff-inferior-compare-regions): Delete unused vars ctl-buf and quit-now. 2002-04-15 Richard M. Stallman <rms@gnu.org> @@ -17039,7 +17039,7 @@ call `math-group-float'. * play/gamegrid.el (gamegrid-add-score-with-update-game-score): - Renamed from `gamegrid-add-score'. + Rename from `gamegrid-add-score'. (gamegrid-add-score-insecure): Restored from the old `gamegrid-add-score'. (gamegrid-add-score): Just dispatch on `system-type' to one of the @@ -17453,7 +17453,7 @@ (sgml-insert-end-tag): New funs taken from xml-lite.el. (sgml-calculate-indent): Use them. (sgml-slash-matching): Rename from sgml-slash. - (sgml-slash): Copied from xml-lite and changed to use + (sgml-slash): Copy from xml-lite and changed to use sgml-slash-matching and sgml-quick-keys. * international/mule-cmds.el (standard-keyboard-coding-systems): @@ -17502,10 +17502,10 @@ * info.el (info-tool-bar-map): Use tool-bar-local-item-from-menu. - * toolbar/tool-bar.el (tool-bar-local-item): Renamed from + * toolbar/tool-bar.el (tool-bar-local-item): Rename from tool-bar-add-item, and new arg MAP. (tool-bar-add-item): Now calls tool-bar-local-item. - (tool-bar-local-item-from-menu): Renamed from + (tool-bar-local-item-from-menu): Rename from tool-bar-add-item-from-menu, and new arg IN-MAP. (tool-bar-add-item-from-menu): Now calls tool-bar-local-item-from-menu. @@ -17542,9 +17542,9 @@ 2002-03-29 Richard M. Stallman <rms@gnu.org> - * subr.el (play-sound-file): Moved to simple.el. + * subr.el (play-sound-file): Move to simple.el. - * simple.el (play-sound-file): Moved from subr.el, made unconditional. + * simple.el (play-sound-file): Move from subr.el, made unconditional. 2002-03-29 Colin Walters <walters@verbum.org> @@ -17626,7 +17626,7 @@ 2002-03-28 Richard M. Stallman <rms@gnu.org> - * dired.el (dired-toggle-marks): Renamed from dired-do-toggle. + * dired.el (dired-toggle-marks): Rename from dired-do-toggle. Bindings changed. * progmodes/compile.el (compilation-handle-exit): @@ -17714,7 +17714,7 @@ * gud.el (gud-jdb-sourcepath): New variable, saves jdb -sourcepath parameter value. (gud-jdb-build-source-files-list): Comment clarification. - (gud-jdb-massage-args): Reworked into loop-based argument list + (gud-jdb-massage-args): Rework into loop-based argument list processing in order to support -classpath and -sourcepath argument processing. (gud-jdb-find-source-using-classpath): Prepend gud-jdb-sourcepath @@ -17894,11 +17894,11 @@ * ediff-util.el (ediff-toggle-hilit): Fix toggling of highlighting. (ediff-select-difference): Take highlighting style into account. (ediff-clone-buffer-for-region-comparison): New function. - (ediff-inferior-compare-regions): Added comparison of current diff + (ediff-inferior-compare-regions): Add comparison of current diff regions. * ediff.el (ediff-clone-buffer-for-region-comparison) - (ediff-clone-buffer-for-window-comparison): Moved to ediff-util.el. + (ediff-clone-buffer-for-window-comparison): Move to ediff-util.el. 2002-03-19 Paul Reilly <pmr-sav@hamm.pajato.com> @@ -17977,7 +17977,7 @@ 2002-03-17 Stefan Monnier <monnier@cs.yale.edu> - * textmodes/sgml-mode.el (sgml-xml-mode): Renamed from sgml-xml. + * textmodes/sgml-mode.el (sgml-xml-mode): Rename from sgml-xml. (sgml-xml-guess): Simplify. (sgml-mode-common): Remove (move into sgml-mode). (sgml-mode): Add code from sgml-mode-common. @@ -18020,7 +18020,7 @@ 2002-03-16 Simon Marshall <simon.marshall@misys.com> - * imenu.el (imenu-menubar-modified-tick): Renamed from + * imenu.el (imenu-menubar-modified-tick): Rename from imenu-update-menubar-modified-tick. (imenu-update-menubar): Update imenu-menubar-modified-tick whenever outer condition succeeds. @@ -18098,7 +18098,7 @@ (dired-internal-do-deletions): Use dired-fun-in-all-buffers and dired-delete-entry, to update this buffer (and others). - * dired-aux.el (dired-fun-in-all-buffers): Moved to dired.el. + * dired-aux.el (dired-fun-in-all-buffers): Move to dired.el. * facemenu.el (facemenu-add-new-face): Pass region args to facemenu-set-face, when there is a region. @@ -18167,7 +18167,7 @@ (lisp-loop-forms-indentation, lisp-simple-loop-indentation): New user options. (extended-loop-p, common-lisp-loop-part-indentation): New functions. - (common-lisp-indent-function-1): Renamed from + (common-lisp-indent-function-1): Rename from common-lisp-indent-function. (common-lisp-indent-function): Handle loop forms specially. (lisp-indent-defmethod): Use car/cdr instead of first/rest. @@ -18278,7 +18278,7 @@ (ibuffer-insert-buffer-line): Ditto. (ibuffer-map-lines): Ditto. (ibuffer-insert-buffers-and-marks): Ditto. - (ibuffer-update-title-and-summary): Renamed from + (ibuffer-update-title-and-summary): Rename from `ibuffer-update-title'. Handle "summarizer" columns. (ibuffer-clear-summary-columns): New function. @@ -18321,7 +18321,7 @@ (hif-tokenize): Handle `?' and ':' as tokens. (hif-expr): Parse conditional expressions. (hif-or-expr): Parse `||' expressions. - (hif-and-expr): Renamed from hif-term. + (hif-and-expr): Rename from hif-term. (hif-conditional): New function to evaluate a conditional expression. @@ -18441,14 +18441,14 @@ * cus-start.el: Rename automatic-hscroll-step and automatic-hscroll-margin into hscroll-step and hscroll-margin. - * frame.el (auto-hscroll-mode): Renamed from automatic-hscrolling. + * frame.el (auto-hscroll-mode): Rename from automatic-hscrolling. (automatic-hscrolling): Now a defvaralias for auto-hscroll-mode. * mouse.el (mouse-region-delete-keys): Add deletechar. 2002-03-03 Sam Steingold <sds@gnu.org> - * play/snake.el (snake-score-file): Fixed parens (broken by the + * play/snake.el (snake-score-file): Fix parens (broken by the last patch). * play/tetris.el (tetris-score-file): Ditto. @@ -18574,14 +18574,14 @@ `winner-boring-buffers', will no longer be restored by `winner-undo'. (winner-sorted-window-list): Used to improve comparison between window configurations. - (winner-win-data): Simplified and moved. - (winner-conf): Simplified (now uses `winner-win-data'). + (winner-win-data): Simplify and moved. + (winner-conf): Simplify (now uses `winner-win-data'). (winner-change-fun, winner-save-old-configurations) (winner-save-(un)conditionally, winner-redo): Changes made while in the minibuffer will be ignored. (Such changes are undone upon exit for the minibuffer, anyway.) (winner-set-conf): Preserve selected window whenever possible. - (winner-make-point-alist): Simplified. + (winner-make-point-alist): Simplify. (winner-mode, winner-save-unconditionally): Save current window configuration on entering minibuffer. (minor-mode-alist): Don't add winner-mode to `minor-mode-alist', @@ -18589,11 +18589,11 @@ 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il> - * international/mule-conf.el (compound-text): Renamed back from + * international/mule-conf.el (compound-text): Rename back from compound-text-no-extensions. (ctext-no-compositions): Remove the mime-charset property. - (compound-text-with-extensions): Renamed from compound-text. - (x-ctext-with-extensions, ctext-with-extensions): Renamed aliases. + (compound-text-with-extensions): Rename from compound-text. + (x-ctext-with-extensions, ctext-with-extensions): Rename aliases. 2002-02-26 Juanma Barranquero <lektu@terra.es> @@ -18636,7 +18636,7 @@ 2002-02-25 Per Abrahamsen <abraham@dina.kvl.dk> - * ps-print.el (ps-print-printer): Added `lpr' customize group member. + * ps-print.el (ps-print-printer): Add `lpr' customize group member. 2002-02-25 Juanma Barranquero <lektu@terra.es> @@ -18715,7 +18715,7 @@ (snake-update-game, snake-move-left) (snake-move-right, snake-move-up, snake-move-down, snake-active-p) (snake-start-game): Use that queue. - (snake-use-glyphs-flag): Renamed from snake-use-glyphs. + (snake-use-glyphs-flag): Rename from snake-use-glyphs. (snake-use-color-flag): Likewise. (snake-mode): Rename uses of those variables. @@ -18725,7 +18725,7 @@ * international/mule-conf.el (ctext-no-compositions): New coding system. - (compound-text-no-extensions): Renamed from compound-text. + (compound-text-no-extensions): Rename from compound-text. (x-ctext-no-extensions, ctext-no-extensions): Aliases for compound-text-no-extensions. (compound-text): Redefined using post-read and pre-write conversions. @@ -18813,7 +18813,7 @@ 2002-02-19 Per Abrahamsen <abraham@dina.kvl.dk> - * facemenu.el (describe-text-mode-map): Removed bootstrap kludge. + * facemenu.el (describe-text-mode-map): Remove bootstrap kludge. * toolbar/tool-bar.el (tool-bar-mode): Made the standard value t. * menu-bar.el (menu-bar-mode): Ditto. @@ -18860,10 +18860,10 @@ 2002-02-17 Per Abrahamsen <abraham@dina.kvl.dk> - * menu-bar.el (menu-bar-showhide-menu): Added speedbar. - (menu-bar-tools-menu): Removed speedbar. + * menu-bar.el (menu-bar-showhide-menu): Add speedbar. + (menu-bar-tools-menu): Remove speedbar. - * textmodes/ispell.el (ispell-menu-map): Added `customize-ispell' + * textmodes/ispell.el (ispell-menu-map): Add `customize-ispell' and `flyspell-mode' entries. * textmodes/flyspell.el (flyspell): Add to ispell group. @@ -18962,13 +18962,13 @@ 2002-02-16 John Wiegley <johnw@gnu.org> - * eshell/esh-ext.el (eshell-external-command): Added a fix for + * eshell/esh-ext.el (eshell-external-command): Add a fix for XEmacs' new dired.el, which adds a global entry in the `file-name-handler-alist'. 2002-02-16 John Wiegley <johnw@gnu.org> - * align.el (align-region): Added a missing name argument. + * align.el (align-region): Add a missing name argument. 2002-02-16 John Wiegley <johnw@gnu.org> @@ -19037,7 +19037,7 @@ 2002-02-12 Per Abrahamsen <abraham@dina.kvl.dk> - * menu-bar.el (menu-bar-options-save): Removed `truncate-lines'. + * menu-bar.el (menu-bar-options-save): Remove `truncate-lines'. (menu-bar-options-menu): Don't set default value for `truncate-lines'. 2002-02-12 Per Abrahamsen <abraham@dina.kvl.dk> @@ -19063,7 +19063,7 @@ 2002-02-11 Per Abrahamsen <abraham@dina.kvl.dk> - * toolbar/tool-bar.el (tool-bar-mode): Removed standard value. + * toolbar/tool-bar.el (tool-bar-mode): Remove standard value. * menu-bar.el (menu-bar-mode): Ditto. * cus-edit.el (customize-mark-to-save): Always save variables without a standard value. @@ -19111,7 +19111,7 @@ table information. Maybe report char-code-property-table info. Maybe report character's unicode. Tweak printing of list info. (list-input-methods): Add xref buttons. - (dump-charsets, dump-codings): Deleted (obsolete). + (dump-charsets, dump-codings): Delete (obsolete). From Dave Love <fx@gnu.org>. 2002-02-10 Pavel JanÃk <Pavel@Janik.cz> @@ -19455,8 +19455,8 @@ (batch-byte-compile-if-not-done): New function. * Makefile.in (compile): New target. - (compile-always): Renamed from compile-files. - (compile-after-backup): Renamed from compile. + (compile-always): Rename from compile-files. + (compile-after-backup): Rename from compile. (bootstrap): Depend on compile-always, not compile-files. * emulation/pc-select.el (pc-select-save-and-set-mode): @@ -19769,7 +19769,7 @@ 2002-01-16 Richard M. Stallman <rms@gnu.org> - * mouse.el (mouse-drag-region-1): Renamed from mouse-drag-region, + * mouse.el (mouse-drag-region-1): Rename from mouse-drag-region, more or less. (mouse-drag-region): New function. For a click in the echo area, show *Messages*. @@ -19812,7 +19812,7 @@ (eudc-pre-select-window-configuration, eudc-insertion-marker): Variables removed. (eudc-insert-selected): Function removed. - (eudc-select): Reimplemented. + (eudc-select): Reimplement. (eudc-expand-inline): Delete the strings only after its expansion is chosen not before. @@ -20045,7 +20045,7 @@ * viper-util.el: Use viper-cond-compile-for-xemacs-or-emacs. (viper-read-key-sequence, viper-set-unread-command-events) - (viper-char-symbol-sequence-p, viper-char-array-p): Moved here. + (viper-char-symbol-sequence-p, viper-char-array-p): Move here. * viper-ex.el: Use viper-cond-compile-for-xemacs-or-emacs. @@ -20072,7 +20072,7 @@ (ediff-convert-fine-diffs-to-overlays, ediff-empty-diff-region-p) (ediff-whitespace-diff-region-p, ediff-get-region-contents): Move to ediff-util.el. - (ediff-event-key): Moved here. + (ediff-event-key): Move here. * ediff-merge.el: Got rid of unreferenced variables. @@ -20091,7 +20091,7 @@ (ediff-unhighlight-diff, ediff-unhighlight-diffs-totally) (ediff-empty-diff-region-p, ediff-whitespace-diff-region-p) (ediff-get-region-contents, ediff-make-current-diff-overlay): - Moved here. + Move here. (ediff-format-bindings-of): New function by Hannu Koivisto <azure@iki.fi>. (ediff-setup): Make sure the merge buffer is always widened and @@ -20116,7 +20116,7 @@ (ediff-regions-internal): Get rid of the warning about comparing regions of the same buffer. - * ediff-diff.el (ediff-convert-fine-diffs-to-overlays): Moved here. + * ediff-diff.el (ediff-convert-fine-diffs-to-overlays): Move here. Plus the following fixes courtesy of Dave Love: Doc fixes. (ediff-word-1): Use word class and move - to the front per regexp documentation. @@ -20177,19 +20177,19 @@ 2002-01-05 Andre Spiegel <spiegel@gnu.org> * vc.el (vc-branch-part): Return nil if there's no `.'. - (vc-default-previous-version): Renamed from vc-previous-version. + (vc-default-previous-version): Rename from vc-previous-version. New args BACKEND and FILE. Return nil for revision numbers without a `.'. (vc-version-diff): Call vc-BACKEND-previous-version. (vc-steal-lock): Steal lock before composing mail, so that no mail is sent when the stealing goes wrong. And we'll actually see the error in that case now. - (vc-finish-steal): Removed. + (vc-finish-steal): Remove. * vc-rcs.el (vc-rcs-steal-lock): Do a real checkout after stealing the lock, so that we see expanded headers. (vc-rcs-trunk-p, vc-rcs-branch-part, vc-rcs-branch-p) - (vc-rcs-minor-part, vc-rcs-previous-version): Removed. These are + (vc-rcs-minor-part, vc-rcs-previous-version): Remove. These are available from vc.el. Updated all callers. 2002-01-05 Richard M. Stallman <rms@gnu.org> @@ -20235,7 +20235,7 @@ 2002-01-03 Per Abrahamsen <abraham@dina.kvl.dk> - * custom.el (defcustom): Documented :tag, :link and :load. + * custom.el (defcustom): Document :tag, :link and :load. 2002-01-03 Eli Zaretskii <eliz@is.elta.co.il> @@ -20321,7 +20321,7 @@ (xscheme-send-string-1): Call xscheme-insert-expression to save expression in ring. (xscheme-yank-previous-send): Now an alias for xscheme-yank. - (xscheme-previous-send): Deleted variable. + (xscheme-previous-send): Delete variable. (xscheme-send-string-2, xscheme-send-char, xscheme-send-proceed) (xscheme-send-control-g-interrupt): Use process-send-string rather @@ -20591,15 +20591,15 @@ * viper-cmd.el (viper-change-state): Got rid of make-local-hook. (viper-special-read-and-insert-char): Make C-m work right in the r command. - (viper-buffer-search-enable): Fixed format string. + (viper-buffer-search-enable): Fix format string. * viper-ex.el (ex-token-alist): Use ex-set-visited-file-name instead of viper-info-on-file. (ex-set-visited-file-name): New function. - * viper.el (viper-emacs-state-mode-list): Added mail-mode. + * viper.el (viper-emacs-state-mode-list): Add mail-mode. - * ediff-mult.el (ediff-meta-mark-equal-files): Added optional + * ediff-mult.el (ediff-meta-mark-equal-files): Add optional action argument. * ediff-init.el: Fixed some doc strings. @@ -20626,7 +20626,7 @@ * emacs-lisp/elint.el (elint-unknown-builtin-args): Remove mocklisp entries. - * subr.el (insert-string): Moved from mocklisp.c, reimplemented in + * subr.el (insert-string): Move from mocklisp.c, reimplemented in Lisp. Obsoleted. * emulation/mlconvert.el: File removed. @@ -20887,8 +20887,8 @@ (lm-crack-copyright): Cope with multi-line copyright `lines'. * simple.el (newline): Doc fix. - (eval-expression-print-level, eval-expression-print-length): Doc - fix. Amend :type. + (eval-expression-print-level, eval-expression-print-length): + Doc fix. Amend :type. (next-line, previous-line): Make arg optional. (newline): Doc fix. @@ -20914,10 +20914,10 @@ 2001-12-16 Richard M. Stallman <rms@gnu.org> - * dired.el (dired-copy-filename-as-kill): Moved from dired-x.el. + * dired.el (dired-copy-filename-as-kill): Move from dired-x.el. (dired-mode-map): Bind w to dired-copy-filename-as-kill. - * dired-x.el (dired-copy-filename-as-kill): Moved to dired.el. + * dired-x.el (dired-copy-filename-as-kill): Move to dired.el. * autoinsert.el (auto-insert-alist): Redo finding C and C++ headers. Add a DESCRIPTION for the makefile item. @@ -20977,26 +20977,26 @@ 2001-12-15 Richard M. Stallman <rms@gnu.org> * language/ind-util.el (range): Function deleted. - (indian-regexp-of-hashtbl-keys): Renamed from `regexp-of-hashtbl-keys'. + (indian-regexp-of-hashtbl-keys): Rename from `regexp-of-hashtbl-keys'. All calls changed. - * language/devan-util.el (devanagari-range): Renamed from `range'. + * language/devan-util.el (devanagari-range): Rename from `range'. All calls changed. (devanagari-regexp-of-hashtbl-keys): - Renamed from `regexp-of-hashtbl-keys'. All calls changed. + Rename from `regexp-of-hashtbl-keys'. All calls changed. 2001-12-15 Dave Love <fx@gnu.org> * language/ind-util.el: Don't require cl. (indian-glyph-char, indian-glyph-max-char) - (indian-char-glyph): Moved from indian.el. + (indian-char-glyph): Move from indian.el. (indian--puthash-char, mapthread): Don't quote lambda. (indian--map): New function. (indian--puthash-v, indian--puthash-c, indian--puthash-m) (indian--puthash-cv): Use it. * language/indian.el (indian-glyph-char, indian-glyph-max-char) - (indian-char-glyph): Moved to ind-util.el + (indian-char-glyph): Move to ind-util.el * language/devan-util.el (devanagari-post-read-conversion): New function. @@ -21132,7 +21132,7 @@ * derived.el (derived-mode-p): Function moved to subr.el. - * subr.el (derived-mode-p): Moved here from derived.el. + * subr.el (derived-mode-p): Move here from derived.el. * international/mule.el (set-auto-coding): Use set-auto-mode-1. @@ -21282,7 +21282,7 @@ 2001-12-07 Miles Bader <miles@gnu.org> * progmodes/compile.el (compilation-error-regexp-alist): - Added regexps for RXP. + Add regexps for RXP. 2001-12-05 Eli Zaretskii <eliz@is.elta.co.il> @@ -21792,7 +21792,7 @@ * menu-bar.el (menu-bar-apropos-menu): New variable. Moved all `apropos' bindings to this menu. - (menu-bar-help-menu): Added `menu-bar-apropos-menu'. + (menu-bar-help-menu): Add `menu-bar-apropos-menu'. 2001-11-24 KAWABATA, Taichi <batta@beige.ocn.ne.jp> @@ -22048,7 +22048,7 @@ (browse-url-galeon, browse-url-galeon-sentinel): New functions. (browse-url-default-browser): New function. (browse-url-process-environment): Use browse-url-browser-display. - (browse-url-browser-display): Renamed from browse-url-netscape-display. + (browse-url-browser-display): Rename from browse-url-netscape-display. (browse-url-mozilla-startup-arguments, browse-url-galeon-program) (browse-url-galeon-arguments, browse-url-galeon-startup-arguments) (browse-url-mozilla-program, browse-url-mozilla-arguments): New vars. @@ -22077,7 +22077,7 @@ (Math-integer-neg, Math-equal, Math-lessp, Math-primp) (Math-num-integerp, Math-bignum-test, Math-equal-int) (Math-natnum-lessp, math-format-radix-digit): Change to `defsubst'. - (calc-record-compilation-date-macro): Deleted. Callers updated. + (calc-record-compilation-date-macro): Delete. Callers updated. (math-format-radix-digit): Move to calc-bin.el. * calc/calc.el (calc-record-compilation-date): Remove. @@ -22523,7 +22523,7 @@ * calc/calc-keypd.el (toplevel): Bind mouse buttons. (calc-do-keypad): Don't attempt to use nonexistent global mouse-map, use calc-keypad-map. - (calc-keypad-x-left-click): Renamed to calc-keypad-left-click. + (calc-keypad-x-left-click): Rename to calc-keypad-left-click. (calc-keypad-left-click): Don't use mouse-map; update to new event interface. (calc-keypad-x-middle-click, calc-keypad-x-right-click): Ditto. @@ -22632,7 +22632,7 @@ * textmodes/flyspell.el (flyspell-correct-word/local-keymap): Function deleted. (flyspell-correct-word): Old definition deleted. - (flyspell-correct-word/mouse-keymap): Renamed to flyspell-correct-word. + (flyspell-correct-word/mouse-keymap): Rename to flyspell-correct-word. All references renamed too. 2001-11-10 Gerd Moellmann <gerd@gnu.org> @@ -22641,7 +22641,7 @@ 2001-11-09 Per Abrahamsen <abraham@dina.kvl.dk> - * wid-edit.el (checklist): Removed `:menu-tag'. + * wid-edit.el (checklist): Remove `:menu-tag'. (radio-button-choice): Ditto. (editable-list): Ditto. @@ -23102,7 +23102,7 @@ 2001-10-28 Per Abrahamsen <abraham@dina.kvl.dk> - * cus-start.el (recursive-load-depth-limit): Added. + * cus-start.el (recursive-load-depth-limit): Add. 2001-10-28 Richard M. Stallman <rms@gnu.org> @@ -23176,7 +23176,7 @@ 2001-10-27 Sam Steingold <sds@gnu.org> - * textmodes/sgml-mode.el (sgml-xml): Renamed from `html-xhtml'. + * textmodes/sgml-mode.el (sgml-xml): Rename from `html-xhtml'. (sgml-xml-guess): Extracted from `html-mode' and generalized. (sgml-mode-common): Call it. (sgml-mode, html-mode): Set `mode-name' based on `sgml-xml'. @@ -23369,10 +23369,10 @@ 2001-10-24 Sam Steingold <sds@gnu.org> - * mouse.el (mouse-buffer-menu-mode-groups): Added "Version + * mouse.el (mouse-buffer-menu-mode-groups): Add "Version Control" and "SGML" groups. -2001-10-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2001-10-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-beginning-of-member-init-list): Better handling of C++ template args to avoid confusion with `<' @@ -23455,25 +23455,25 @@ * vc.el (vc-annotate-display-default): Accept colormap scaling ratio (now deprecated). - (vc-annotate-display-autoscale): Added. + (vc-annotate-display-autoscale): Add. (vc-annotate-add-menu): New autoscaling menu options "Span to Oldest" and "Span Oldest->Newest". Easymenu support added for toggle menus driven by customize variable `vc-annotate-display-mode'. - (vc-annotate-display-select): Added. - (vc-annotate): Changed temp-buffer-show-function to + (vc-annotate-display-select): Add. + (vc-annotate): Change temp-buffer-show-function to `vc-annotate-display-select'. - (vc-annotate-display): Removed arguments BUFFER and BACKEND. + (vc-annotate-display): Remove arguments BUFFER and BACKEND. Added argument OFFSET. Instead of backend function, calls now generic `vc-annotate-difference'. - (vc-annotate-difference): Added as generic function instead of + (vc-annotate-difference): Add as generic function instead of backend-specific function. No longer takes argument POINT, but instead accepts a time OFFSET. - (vc-default-annotate-current-time): Added. + (vc-default-annotate-current-time): Add. - * vc-cvs.el (vc-cvs-annotate-difference): Removed to generic + * vc-cvs.el (vc-cvs-annotate-difference): Remove to generic version in vc.el. - (vc-cvs-annotate-current-time): Added, as override of default. - (vc-cvs-annotate-time): Added. Taken mostly from the (now removed) + (vc-cvs-annotate-current-time): Add, as override of default. + (vc-cvs-annotate-time): Add. Taken mostly from the (now removed) `vc-cvs-annotate-difference'. 2001-10-22 Gerd Moellmann <gerd@gnu.org> diff --git a/lisp/ChangeLog.11 b/lisp/ChangeLog.11 index bbba11dd9be..eee8b91f70f 100644 --- a/lisp/ChangeLog.11 +++ b/lisp/ChangeLog.11 @@ -40,8 +40,8 @@ * progmodes/fortran.el (fortran-mode): Use mode-require-final-newline. * progmodes/f90.el (f90-mode): Use mode-require-final-newline. * progmodes/cperl-mode.el (cperl-mode): Use mode-require-final-newline. - * progmodes/cfengine.el (cfengine-mode): Use - mode-require-final-newline. + * progmodes/cfengine.el (cfengine-mode): + Use mode-require-final-newline. * progmodes/ada-mode.el (ada-mode): Use mode-require-final-newline. * textmodes/text-mode.el (text-mode): Use mode-require-final-newline. * textmodes/texinfo.el (texinfo-mode): Use mode-require-final-newline. @@ -438,8 +438,8 @@ * net/tramp-smb.el (tramp-smb-advice-PC-do-completion): Make the advice less fragile. Surround temporary redefinition of - `substitute-in-file-name' with `unwind-protect'. Suggested by - Matt Hodges <MPHodges@member.fsf.org>. + `substitute-in-file-name' with `unwind-protect'. + Suggested by Matt Hodges <MPHodges@member.fsf.org>. 2004-12-17 Juri Linkov <juri@jurta.org> @@ -1608,9 +1608,9 @@ 2004-11-24 Jay Belanger <belanger@truman.edu> - * calc/calc.el (calc-embedded-active): Removed unnecessary + * calc/calc.el (calc-embedded-active): Remove unnecessary declaration. - (calc-show-banner): Removed redundant declaration. + (calc-show-banner): Remove redundant declaration. * calc/calc-graph.el (calc-gnuplot-default-device) (calc-gnuplot-default-output, calc-gnuplot-print-device) @@ -1662,7 +1662,7 @@ (math-nri-n): New variable. (math-nth-root-integer, math-nth-root-int-iter): Replace variable n by declared variable. - (calcFunc-log): Removed misplaced condition. + (calcFunc-log): Remove misplaced condition. 2004-11-24 Stefan Monnier <monnier@iro.umontreal.ca> @@ -3366,8 +3366,8 @@ 2004-10-24 Kai Grossjohann <kai.grossjohann@gmx.net> - * simple.el (process-file): Accept nil for INFILE. Reported by - Luc Teirlinck. + * simple.el (process-file): Accept nil for INFILE. + Reported by Luc Teirlinck. 2004-10-24 Masatake YAMATO <jet@gyve.org> @@ -3969,7 +3969,7 @@ * indent.el (set-left-margin, set-right-margin): Rename `lm' arg to `width' for consistency with docstring. Doc fix. -2004-10-01 Martin Stjernholm <bug-cc-mode@gnu.org> +2004-10-01 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-langs.el: Load cl here since cc-defs doesn't do it. This is necessary for derived modes. @@ -4330,8 +4330,8 @@ (calc-mode): Compare `calc-settings-file' to `user-init-file' rather than "\\.emacs" to determine if it is the user-init-file. - * calc/calc-embed.el (calc-embedded-set-modes): Use - `calc-mode-var-list' correctly. + * calc/calc-embed.el (calc-embedded-set-modes): + Use `calc-mode-var-list' correctly. 2004-09-15 Thien-Thi Nguyen <ttn@gnu.org> @@ -5129,7 +5129,7 @@ (speedbar-directory): New image (unused pixmap already existed). (speedbar-expand-image-button-alist): Use it. -2004-08-11 Martin Stjernholm <bug-cc-mode@gnu.org> +2004-08-11 Martin Stjernholm <mast@lysator.liu.se> CC Mode update to 5.30.9: @@ -5212,7 +5212,7 @@ Fix bug that could cause an error from `after-change-functions' when the changed region is at bob. -2004-08-11 Alan Mackenzie <bug-cc-mode@gnu.org> +2004-08-11 Alan Mackenzie <acm@muc.de> CC Mode update to 5.30.9: @@ -5503,8 +5503,8 @@ since Emacs 22.1 only (XEmacs has it). Implementation rewritten in order to avoid this function. (tramp-handle-write-region): Set current buffer. If connection - wasn't open, `file-modes' has changed it accidentally. Reported by - David Kastrup <dak@gnu.org>. + wasn't open, `file-modes' has changed it accidentally. + Reported by David Kastrup <dak@gnu.org>. (tramp-enter-password, tramp-read-passwd): New arguments USER and HOST. (tramp-action-password, tramp-multi-action-password): Apply it. @@ -8532,8 +8532,8 @@ 2004-04-16 Dave Love <fx@gnu.org> - * progmodes/python.el (python-compilation-line-number): Fix - braindamage. + * progmodes/python.el (python-compilation-line-number): + Fix braindamage. (python-load-file): Fix python-orig-start setting. * progmodes/compile.el: Doc fixes. @@ -9482,8 +9482,8 @@ 2004-03-22 Luc Teirlinck <teirllm@auburn.edu> - * autorevert.el (global-auto-revert-non-file-buffers): Expand - docstring. + * autorevert.el (global-auto-revert-non-file-buffers): + Expand docstring. (buffer-stale-function): New variable. (auto-revert-list-diff, auto-revert-dired-file-list) (auto-revert-dired-changed-p, auto-revert-buffer-p): Delete. @@ -10230,8 +10230,8 @@ * progmodes/ebnf-abn.el: New file, implements an ABNF parser. - * progmodes/ebnf2ps.el: Doc fix. Accept ABNF (Augmented BNF). New - arrow shapes: semi-up-hollow, semi-up-full, semi-down-hollow and + * progmodes/ebnf2ps.el: Doc fix. Accept ABNF (Augmented BNF). + New arrow shapes: semi-up-hollow, semi-up-full, semi-down-hollow and semi-down-full. Fix a bug on productions like test = {"test"}* | ( "tt" ["test"] ). Reported by Markus Dreyer <mdreyer@ix.urz.uni-heidelberg.de>. @@ -10568,7 +10568,7 @@ (ses-mode-map): Use them. (ses-read-number) New fun. Duplicates code from interactive "N" spec. -2004-02-14 Martin Stjernholm <bug-cc-mode@gnu.org> +2004-02-14 Martin Stjernholm <mast@lysator.liu.se> * Makefile.in: Fix the CC Mode recompile kludge so it works when building in a different directory. @@ -10642,7 +10642,7 @@ * tar-mode.el (tar-extract): Fix for the case that a file doesn't have end-of-line. -2004-02-09 Martin Stjernholm <bug-cc-mode@gnu.org> +2004-02-09 Martin Stjernholm <mast@lysator.liu.se> * Makefile.in: Added extra dependencies in the recompile target needed to cope with the compile time macro expansions in CC Mode. @@ -11034,8 +11034,8 @@ 2004-01-21 Jan Djärv <jan.h.d@swipnet.se> - * term/x-win.el (x-clipboard-yank, menu-bar-edit-menu): Call - menu-bar-enable-clipboard and make Paste use clipboard first. + * term/x-win.el (x-clipboard-yank, menu-bar-edit-menu): + Call menu-bar-enable-clipboard and make Paste use clipboard first. 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca> @@ -11714,8 +11714,8 @@ 2003-11-30 Kai Grossjohann <kai.grossjohann@gmx.net> Version 2.0.38 of Tramp released. - * net/tramp.el (tramp-chunksize): Extend docstring. Suggested by - Charles Curley <charlescurley@charlescurley.com>. + * net/tramp.el (tramp-chunksize): Extend docstring. + Suggested by Charles Curley <charlescurley@charlescurley.com>. (tramp-multi-connection-function-alist): Add ssht entry which adds "-e none -t -t" to the list of ssh args. Suggested by Adrian Aichner. @@ -11932,7 +11932,7 @@ by returning the original value of 8 in all cases, but 99% of the time this is a waste of whitespace). -2003-11-16 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-11-16 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-guess-continued-construct) (c-guess-basic-syntax): Check a little more carefully if it's a @@ -12696,13 +12696,13 @@ * window.el (window-current-scroll-bars): New defun. -2003-09-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-09-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-parse-state): Fix bug that could cause errors when the state cache contains info on parts that have been narrowed out. -2003-09-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-09-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-vars.el (c-comment-prefix-regexp): Document that `c-setup-paragraph-variables' has to be used when this variable is @@ -12712,7 +12712,7 @@ * progmodes/cc-styles.el (c-setup-paragraph-variables): Make it interactive. -2003-09-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-09-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-fonts.el (c-font-lock-declarations): Fix recognition of constructors and destructors for classes whose @@ -12721,14 +12721,14 @@ * progmodes/cc-langs.el (c-type-list-kwds): If "operator" is followed by an identifier in C++ then it's a type. -2003-09-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-09-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-fonts.el (c-font-lock-invalid-string): Fix eob problem that primarily affected XEmacs. Don't use faces to find unterminated strings since Emacs and XEmacs fontify strings differently - this function should now work better in XEmacs. -2003-09-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-09-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-electric-brace): Fix a bug in the `expand-abbrev' workaround which caused braces to misbehave inside @@ -12737,7 +12737,7 @@ * progmodes/cc-engine.el (c-forward-keyword-clause): Fix error handling. This bug could cause interactive font locking to bail out. -2003-09-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-09-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-just-after-func-arglist-p): Handle paren-style types in Pike. Also fixed some cases of @@ -13113,13 +13113,13 @@ * image.el (image-jpeg-p): Don't search beyond length of data. -2003-08-26 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-08-26 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-electric-brace): Work around for a misfeature in `expand-abbrev' which caused electric keywords like "else" to disappear if an open brace was typed directly afterwards. -2003-08-26 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-08-26 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-vars.el (c-extra-types-widget): The doc string is mandatory in `define-widget'. @@ -13132,7 +13132,7 @@ (c-assignment-op-regexp): New language var used by `c-lineup-math'. -2003-08-26 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-08-26 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-just-after-func-arglist-p): Safeguard against unbalanced sexps. @@ -13467,12 +13467,12 @@ * textmodes/reftex.el (reftex-region-active-p): New function. - * textmodes/reftex-parse.el (reftex-locate-bibliography-files): Improved the + * textmodes/reftex-parse.el (reftex-locate-bibliography-files): Improve the regexp to find the \bibliography macro. - * textmodes/reftex-vars.el (reftex-section-levels): Removed subsubparagraph, + * textmodes/reftex-vars.el (reftex-section-levels): Remove subsubparagraph, which does not exist in LaTeX. - (reftex-cite-format-builtin): Added amsrefs support. + (reftex-cite-format-builtin): Add amsrefs support. (reftex-toc-confirm-promotion): New option * textmodes/reftex-toc.el @@ -13482,7 +13482,7 @@ (reftex-toc-promote-action, reftex-toc-extract-section-number) (reftex-toc-newhead-from-alist) (reftex-toc-load-all-files-for-promotion): New functions. - (reftex-toc-help): Added description of new keys. + (reftex-toc-help): Add description of new keys. (reftex-toc-split-windows-fraction): New option. (reftex-recenter-toc-when-idle): Search *toc* window on all visible frames. @@ -13498,8 +13498,8 @@ (reftex-toc-quit): Adapted to delete frame when called in dedicated frame. - * textmodes/reftex-index.el (reftex-index-phrase-match-is-indexed): Check - all enclosing macros. + * textmodes/reftex-index.el (reftex-index-phrase-match-is-indexed): + Check all enclosing macros. 2003-08-08 Vinicius Jose Latorre <viniciusjl@ig.com.br> @@ -13618,7 +13618,7 @@ * calendar/holidays.el, calendar/lunar.el, calendar/solar.el: (displayed-month, displayed-year): Define for compiler. -2003-08-03 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-08-03 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-mode.el (c-init-language-vars-for): Add argument MODE. Renamed from c-init-c-language-vars'. @@ -13632,7 +13632,7 @@ (pike-mode): Ditto. (awk-mode): Ditto. -2003-08-03 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-08-03 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-end-of-current-token): Return whether or not the point moved. @@ -13850,7 +13850,7 @@ * simple.el (current-word): Don't include punctuation char when `really-word' arg is non-nil. -2003-07-17 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-07-17 Martin Stjernholm <mast@lysator.liu.se> * progmodes/awk-mode.el: Obsoleted by the AWK support in CC Mode - moved to the directory obsolete. @@ -13865,12 +13865,12 @@ (syntax-ppss-after-change-function): New alias. Update uses. (syntax-ppss): Catch the case where the buffer is narrowed. -2003-07-16 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-07-16 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-defs.el (c-langelem-sym, c-langelem-pos) (c-langelem-2nd-pos): Add accessor functions for syntactic elements. -2003-07-16 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-07-16 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-literal-faces): Declare as a variable since it might be modified. @@ -13964,8 +13964,8 @@ 2003-07-10 Vinicius Jose Latorre <viniciusjl@ig.com.br> - * ps-print.el: Print line number correctly in a region. Reported by - Tim Allen <timallen@ls83.fsnet.co.uk>. + * ps-print.el: Print line number correctly in a region. + Reported by Tim Allen <timallen@ls83.fsnet.co.uk>. (ps-print-version): New version number (6.6.2). (ps-printing-region): Code fix. @@ -14004,24 +14004,24 @@ * dired.el (dired-move-to-filename-regexp): Allow quote in months. -2003-07-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-07-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-guess-basic-syntax): Do not do hidden buffer changes; there's third party code that calls this function directly. -2003-07-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-07-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-fonts.el (javadoc-font-lock-keywords) (autodoc-font-lock-keywords): Don't byte compile on font lock initialization when running from byte compiled files. -2003-07-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2003-07-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-engine.el: Fix AWK mode indentation when previous statement ends with auto-increment "++". -2003-07-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-07-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-langs.el, progmodes/cc-styles.el (c-style-alist) (c-lang-variable-inits, c-lang-variable-inits-tail): The values of @@ -14110,13 +14110,13 @@ * info.el (Info-menu-entry-name-re): Add `:' to second [] part. This should fix the infinite loop when extracting menu names. -2003-07-05 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-07-05 Martin Stjernholm <mast@lysator.liu.se> * files.el (auto-mode-alist, interpreter-mode-alist): Remove entries to CC Mode modes to avoid duplicates; they are now added with autoload directives in cc-mode.el. -2003-07-05 Martin Stjernholm <bug-cc-mode@gnu.org> +2003-07-05 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-langs.el, progmodes/cc-styles.el (c-style-alist) (c-lang-variable-inits, c-lang-variable-inits-tail): The values of diff --git a/lisp/ChangeLog.12 b/lisp/ChangeLog.12 index 7d868b9db09..5699c90cb80 100644 --- a/lisp/ChangeLog.12 +++ b/lisp/ChangeLog.12 @@ -932,7 +932,7 @@ * international/quail.el (quail-setup-completion-buf): Make the completion buffer read-only. - (quail-completion): Adjusted for the above change. Leave the + (quail-completion): Adjust for the above change. Leave the modified flag nil. 2007-03-20 David Kastrup <dak@gnu.org> @@ -2371,8 +2371,8 @@ 2007-01-27 Eli Zaretskii <eliz@gnu.org> * ls-lisp.el (ls-lisp-use-localized-time-format): New defcustom. - (ls-lisp-format-time-list): Doc fix. Mention - ls-lisp-use-localized-time-format. + (ls-lisp-format-time-list): Doc fix. + Mention ls-lisp-use-localized-time-format. (ls-lisp-format-time): Use ls-lisp-format-time-list if ls-lisp-use-localized-time-format is non-nil, even if a valid locale is defined. @@ -3410,8 +3410,8 @@ * wdired.el (wdired-change-to-wdired-mode, wdired-finish-edit) (wdired-search-and-rename): Simplify code. - (wdired-preprocess-files, wdired-preprocess-perms): Make - read-only property of preceding character rear-nonsticky to + (wdired-preprocess-files, wdired-preprocess-perms): + Make read-only property of preceding character rear-nonsticky to avoid that it can be modified. Put old-name and old-link properties on character preceding name and replace put-text-property by add-text-properties. @@ -3560,8 +3560,8 @@ 2006-12-04 Michael Albinus <michael.albinus@gmx.de> * net/tramp.el (tramp-methods): Add "ControlPath" and - "ControlMaster" to scp, scp1 and scp2 methods. Suggested by - Andreas Schwab <schwab@suse.de>. + "ControlMaster" to scp, scp1 and scp2 methods. + Suggested by Andreas Schwab <schwab@suse.de>. (tramp-do-copy-or-rename-file-out-of-band) (tramp-open-connection-rsh): Compute format spec for ?t. (tramp-process-actions): Trace command parameters. @@ -6782,9 +6782,9 @@ * mail/feedmail.el (feedmail-buffer-to-sendmail): Look for sendmail in several common directories. - * mail/sendmail.el (sendmail-program): Moved here from paths.el. + * mail/sendmail.el (sendmail-program): Move here from paths.el. - * paths.el (sendmail-program): Removed. + * paths.el (sendmail-program): Remove. 2006-09-04 Daiki Ueno <ueno@unixuser.org> @@ -6822,8 +6822,8 @@ * net/rcirc.el (rcirc-keywords): New variable. (rcirc-bright-nicks, rcirc-dim-nicks): New variables. - (rcirc-bright-nick-regexp, rcirc-dim-nick-regexp): Remove - variables. + (rcirc-bright-nick-regexp, rcirc-dim-nick-regexp): + Remove variables. (rcirc-responses-no-activity): New function. (rcirc-handler-generic): Check for responses in above. (rcirc-process-command): Add ?: character to arguments of raw @@ -6870,8 +6870,8 @@ 2006-08-31 Richard Stallman <rms@gnu.org> * cus-edit.el (custom-save-variables): Slight cleanup. - (Custom-no-edit): Renamed from custom-no-edit. - (Custom-newline): Renamed from custom-newline. + (Custom-no-edit): Rename from custom-no-edit. + (Custom-newline): Rename from custom-newline. (custom-mode-map): Use new names. * emacs-lisp/easy-mmode.el (define-minor-mode): Reference manual @@ -7465,7 +7465,7 @@ 2006-08-09 John Wiegley <johnw@newartisans.com> - * calendar/timeclock.el (timeclock-use-elapsed): Added a new + * calendar/timeclock.el (timeclock-use-elapsed): Add a new variable, which causes timeclock to report elapsed time worked, instead of just work remaining. @@ -8041,8 +8041,8 @@ instead of retired `allout-resumptions'. For hook functions, use `local' parameter so hook settings are created and removed as buffer-local settings. Revise (resumptions) setting - auto-fill-function so it is set only if already active. The - related fill-function settings are all made in either case, so + auto-fill-function so it is set only if already active. + The related fill-function settings are all made in either case, so that activating auto-fill-mode activity will have the custom allout-mode behaviors (hanging indent on topics, if configured for it). Remove all allout-exposure-category overlays on mode deactivation. @@ -9914,7 +9914,7 @@ * progmodes/idlw-shell.el (idlwave-shell-move-or-history): Remove spurious move to point-max (new comint behavior fixes). - * progmodes/idlwave.el (idlwave-push-mark): Removed obsolete + * progmodes/idlwave.el (idlwave-push-mark): Remove obsolete compatibility function (Emacs 18/19). (idlwave-is-continuation-line): Always return point at start of previous non-blank continuation line. @@ -9978,12 +9978,12 @@ `point'. (diff-hunk-text, diff-goto-source): Doc fix. - * startup.el (fancy-splash-screens, normal-splash-screen): Use - face `mode-line-buffer-id' for mode-line buffer face instead of + * startup.el (fancy-splash-screens, normal-splash-screen): + Use face `mode-line-buffer-id' for mode-line buffer face instead of hard-coded `(:weight bold)'. - * arc-mode.el (archive-set-buffer-as-visiting-file): Bind - buffer-undo-list to t (undo-ask is reproducible by visiting + * arc-mode.el (archive-set-buffer-as-visiting-file): + Bind buffer-undo-list to t (undo-ask is reproducible by visiting nested archives). 2006-05-09 Kim F. Storm <storm@cua.dk> @@ -9999,9 +9999,9 @@ 2006-05-09 Masatake YAMATO <jet@gyve.org> - * font-lock.el (cpp-font-lock-keywords-source-directives): Added - "warning" and "import". - (cpp-font-lock-keywords): Added "warning". + * font-lock.el (cpp-font-lock-keywords-source-directives): + Add "warning" and "import". + (cpp-font-lock-keywords): Add "warning". 2006-05-08 Dan Nicolaescu <dann@ics.uci.edu> @@ -12213,41 +12213,41 @@ * progmodes/etags.el (tags-completion-table): Do completion from all the tables in the current list, as documented in the manual. -2006-02-24 Alan Mackenzie <bug-cc-mode@gnu.org> +2006-02-24 Alan Mackenzie <acm@muc.de> * CC Mode Update to 5.31.3. -2006-02-24 Alan Mackenzie <bug-cc-mode@gnu.org> +2006-02-24 Alan Mackenzie <acm@muc.de> * 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. -2006-02-24 Alan Mackenzie <bug-cc-mode@gnu.org> +2006-02-24 Alan Mackenzie <acm@muc.de> * progmodes/cc-awk.el: Correct a typo. -2006-02-24 Alan Mackenzie <bug-cc-mode@gnu.org> +2006-02-24 Alan Mackenzie <acm@muc.de> * progmodes/cc-cmds.el, progmodes/cc-mode.el: Rename c-hungry-backspace to c-hungry-delete-backwards, at the request of RMS. Leave the old name as an alias. -2006-02-24 Alan Mackenzie <bug-cc-mode@gnu.org> +2006-02-24 Alan Mackenzie <acm@muc.de> * progmodes/cc-mode.el: Correct a typo. -2006-02-24 Alan Mackenzie <bug-cc-mode@gnu.org> +2006-02-24 Alan Mackenzie <acm@muc.de> * progmodes/cc-defs.el: Update the version number to 5.31.3. -2006-02-24 Alan Mackenzie <bug-cc-mode@gnu.org> +2006-02-24 Alan Mackenzie <acm@muc.de> * progmodes/cc-cmds.el (c-electric-brace): Fix clean-up brace-else-brace (error due to mbeg, mend being undefined). -2006-02-24 Alan Mackenzie <bug-cc-mode@gnu.org> +2006-02-24 Alan Mackenzie <acm@muc.de> * progmodes/cc-mode.el: File Local variables: Solve the problem where both `mode' and c-file-offsets are specified: `mode' will @@ -12257,7 +12257,7 @@ c-tentative-buffer-change, to splat `mode' and `eval' before the second hack-local-variables. -2006-02-24 Alan Mackenzie <bug-cc-mode@gnu.org> +2006-02-24 Alan Mackenzie <acm@muc.de> * progmodes/cc-mode.el: [Supersedes patch to cc-engine.el 2005-12-16T20:07:49Z!monnier@iro.umontreal.ca] @@ -12272,7 +12272,7 @@ with save-match-data. It was being corrupted when Font Lock was not enabled. -2006-02-24 Alan Mackenzie <bug-cc-mode@gnu.org> +2006-02-24 Alan Mackenzie <acm@muc.de> * progmodes/cc-langs.el (c-mode-menu): Add menu items for Electric Mode and Subword Mode. @@ -12292,7 +12292,7 @@ * progmodes/cc-cmds.el (c-electric-brace, c-electric-semi&comma) (c-electric-colon): Correct doc-strings: "/ln" -> "/la". -2006-02-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2006-02-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-langs.el (c-make-init-lang-vars-fun): Improve the error message when there's an evaluation error to show whether @@ -12630,8 +12630,8 @@ (Info-isearch-push-state): Add quote before Info-current-file and Info-current-node. (Info-isearch-pop-state): Use `equal' instead of `string='. - (Info-extract-pointer, Info-following-node-name): Use - `match-string-no-properties' instead of `match-string'. + (Info-extract-pointer, Info-following-node-name): + Use `match-string-no-properties' instead of `match-string'. (Info-up): Check `old-file' for `stringp'. (Info-history): Use `equal' instead of `string-equal'. Check `file' for `stringp'. @@ -12681,8 +12681,8 @@ (rcirc-get-buffer-create): Fix bug with setting the target. (rcirc-any-buffer): Rename from rcirc-get-any-buffer, and include test for rcirc-always-use-server-buffer-flag here. - (rcirc-response-formats): Add %N, which is a facified nick. %n - uses the default face. Change the ACTION format string. If the + (rcirc-response-formats): Add %N, which is a facified nick. + %n uses the default face. Change the ACTION format string. If the "nick" is the server, don't print anything for that field. Comment fixes. (rcirc-target-buffer): Don't test @@ -12707,7 +12707,7 @@ (allout-version): Incremented, corrected, revised, and refined module commentary. - (provide 'allout): Moved to the bottom, added a require of overlay. + (provide 'allout): Move to the bottom, added a require of overlay. (allout-encrypt-unencrypted-on-saves): Defaults to t instead of `except-current'. @@ -12730,19 +12730,19 @@ Clarify provision for various write-file hook var names. Adjusted for invisible-text overlays instead of selective-display. - (allout-depth): Really return 0 if not within any topic. This - rectifies `allout-beginning-of-level' and sequence numbering + (allout-depth): Really return 0 if not within any topic. + This rectifies `allout-beginning-of-level' and sequence numbering errors that occur when cutting and pasting numbered topics. Changed from a in-line subst to a regular function, as well. - (allout-pre-next-prefix): Renamed from allout-pre-next-preface. + (allout-pre-next-prefix): Rename from allout-pre-next-preface. (allout-end-of-subtree, allout-end-of-subtree) (allout-end-of-entry, allout-end-of-current-heading) (allout-next-visible-heading, allout-open-topic, allout-show-entry) (allout-show-children, allout-show-to-offshoot) - (allout-hide-current-entry, allout-show-current-entry): Rectified - handling of trailing blank lines between items. + (allout-hide-current-entry, allout-show-current-entry): + Rectified handling of trailing blank lines between items. (allout-line-boundary-regexp, set-allout-regexp, allout-depth) (allout-current-depth, allout-unprotected, allout-hidden-p) @@ -12753,11 +12753,11 @@ (allout-hide-region-body, allout-toggle-subtree-encryption) (allout-encrypt-string, allout-encrypted-key-info) (allout-next-topic-pending-encryption, allout-encrypt-decrypted) - (allout-file-vars-section-data): Adjusted for use with + (allout-file-vars-section-data): Adjust for use with invisible-text overlays instead of selective-display. (allout-kill-line, allout-kill-topic, allout-yank-processing): - Reworked for use with invisible text overlays. + Rework for use with invisible text overlays. (allout-current-topic-collapsed-p): New function. @@ -12777,8 +12777,8 @@ (allout-overlay-insert-in-front-handler) (allout-overlay-interior-modification-handler) - (allout-before-change-handler, allout-isearch-end-handler): New - functions to handle extraordinary actions affecting concealed + (allout-before-change-handler, allout-isearch-end-handler): + New functions to handle extraordinary actions affecting concealed text. (allout-flag-region): Use overlays instead of selective-display @@ -12810,8 +12810,8 @@ 2006-02-17 AgustÃn MartÃn <agustin.martin@hispalinux.es> - * textmodes/ispell.el (ispell-change-dictionary): Call - ispell-buffer-local-dict instead of + * textmodes/ispell.el (ispell-change-dictionary): + Call ispell-buffer-local-dict instead of ispell-accept-buffer-local-defs. (ispell-local-dictionary-alist): Accept as valid any coding-system supported by Emacs. @@ -12918,8 +12918,8 @@ (hack-local-variables): Construct list of variable-value pairs, and apply or reject them in one go. Ask for confirmation if variables are not known safe. - (hack-local-variables-confirm): Complete rewrite. Support - `safe-local-variable-values'. + (hack-local-variables-confirm): Complete rewrite. + Support `safe-local-variable-values'. (enable-local-variables): Update docstring to reflect new behavior. (ignored-local-variables): Ignore ignored-local-variables and @@ -13018,8 +13018,8 @@ 2006-02-12 Michael Albinus <michael.albinus@gmx.de> * net/tramp.el (tramp-remote-path): Add "/usr/xpg4/bin" on top, - because on Solaris a POSIX compatible "id" is needed. Reported by - Magnus Henoch <mange@freemail.hu>. + because on Solaris a POSIX compatible "id" is needed. + Reported by Magnus Henoch <mange@freemail.hu>. 2006-02-12 Juri Linkov <juri@jurta.org> @@ -13103,10 +13103,10 @@ * help.el (describe-key-briefly): Now a wrapper for describe-key-briefly-internal. Bind enable-disabled-menus-and-buttons to t. Populate yank-menu if empty. - (describe-key-briefly-internal): Renamed from describe-key-briefly. + (describe-key-briefly-internal): Rename from describe-key-briefly. (describe-key): Now a wrapper for describe-key-internal. Bind enable-disabled-menus-and-buttons to t. Populate yank-menu if empty. - (describe-key-internal): Renamed from describe-key. + (describe-key-internal): Rename from describe-key. 2006-02-11 Milan Zamazal <pdm@zamazal.org> @@ -13641,8 +13641,8 @@ 2006-01-22 Kenichi Handa <handa@m17n.org> - * international/mule.el (make-subsidiary-coding-system): Reset - `coding-system-define-form' property of subsidiaries to nil. + * international/mule.el (make-subsidiary-coding-system): + Reset `coding-system-define-form' property of subsidiaries to nil. Avoid duplicated entry in coding-system-alist. (make-coding-system): Avoid duplicated entry in coding-system-alist. @@ -13790,8 +13790,8 @@ (tramp-unload-file-name-handler-alist) (tramp-unload-tramp): New defuns. (tramp-advice-PC-expand-many-files): New defadvice. - (tramp-save-PC-expand-many-files, tramp-setup-complete): Defuns - removed. + (tramp-save-PC-expand-many-files, tramp-setup-complete): + Defuns removed. (tramp-handle-expand-file-name): Remove double slash. (tramp-handle-file-attributes-with-ls): Return t as 9th attribute. It doesn't matter, because it will be converted later on. @@ -13869,7 +13869,7 @@ 2006-01-20 Carsten Dominik <dominik@science.uva.nl> - * textmodes/org.el (org-open-at-point): Fixed bug with matching a + * textmodes/org.el (org-open-at-point): Fix bug with matching a link. Fixed buggy argument sequence in call to `org-view-tags'. (org-compile-prefix-format): Set `org-prefix-has-tag'. (org-prefix-has-tag): New variable. @@ -13886,8 +13886,8 @@ images remain visible. (thumbs-file-alist): Construct list in thumbs-buffer and reverse order. - (thumbs-show-image-num): Get image from thumbs-file-alist. Set - mode name. + (thumbs-show-image-num): Get image from thumbs-file-alist. + Set mode name. (thumbs-next-image, thumbs-previous-image): Make them work. 2006-01-19 Luc Teirlinck <teirllm@auburn.edu> @@ -14197,8 +14197,8 @@ 2006-01-12 Masatake YAMATO <jet@gyve.org> - * progmodes/ld-script.el (auto-mode-alist): Support - suffix conventions used in netbsd and eCos. + * progmodes/ld-script.el (auto-mode-alist): + Support suffix conventions used in netbsd and eCos. 2006-01-11 Luc Teirlinck <teirllm@auburn.edu> @@ -15573,7 +15573,7 @@ * hi-lock.el (hi-lock-mode): Rename from hi-lock-buffer-mode; react if global-hi-lock-mode seems intended. - (global-hi-lock-mode): Renamed from hi-lock-mode. + (global-hi-lock-mode): Rename from hi-lock-mode. (hi-lock-archaic-interface-message-used) (hi-lock-archaic-interface-deduce): New variables. (turn-on-hi-lock-if-enabled, hi-lock-line-face-buffer) @@ -15723,7 +15723,7 @@ No need to check gud-comint-buffer is bound. (gdb): Prevent multiple debugging when first session uses gdba. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> CC Mode update to 5.31. @@ -15736,7 +15736,7 @@ New macros c-sentence-end and c-default-value-sentence end, to cope with Emacs 22's new function `sentence-end'. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-show-syntactic-information): Solve the compat issue using `c-put-overlay' and `c-delete-overlay'. @@ -15744,7 +15744,7 @@ * progmodes/cc-defs.el (c-put-overlay, c-delete-overlay): New compat macros to handle overlays/extents. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-fix.el: Add definitions of the macros push and pop (for GNU Emacs 20.4). @@ -15761,7 +15761,7 @@ call to the new macro c-int-to-char. This solves XEmacs's regarding characters as different from integers. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-fonts.el (c-make-syntactic-matcher): New internal helper. @@ -15777,7 +15777,7 @@ * progmodes/cc-fonts.el (c-negation-char-face-name): New variable to map to `font-lock-negation-char-face' in emacsen where it exists. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-mode.el: Bind c-subword-mode to C-c C-w. @@ -15787,12 +15787,12 @@ * progmodes/cc-mode.el: Added tty suitable bindings for C-c <delete> and C-c C-<delete>. (To the c-hungry- delete functions). -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-mode.el: Added autoload directive for `c-subword-move-mode' for use in older emacsen. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-mode.el: (i): Insert a binding for C-c C-backspace into @@ -15810,7 +15810,7 @@ * progmodes/cc-awk.el: Apply a tidy-up patch (from Stefan Monnier). -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-fonts.el, progmodes/cc-vars.el (gtkdoc-font-lock-doc-comments, gtkdoc-font-lock-doc-protection) @@ -15829,7 +15829,7 @@ <delete> key behavior in XEmacs according to `delete-forward-p'. C.f. `c-electric-delete'. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-mode.el: Give c-hungry-backspace and c-hungry-delete-forward permanent key bindings. @@ -15847,7 +15847,7 @@ response to a report from Joseph Kiniry <kiniry@acm.org> that it was difficult to understand. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-on-identifier): Fix bug when at the first char of an identifier. @@ -15855,7 +15855,7 @@ * progmodes/cc-engine.el (c-on-identifier): Handle the "operator +" syntax in C++. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-cmds.el (c-mask-paragraph): Correct, so that auto-fill doesn't split a c-comment's last word from a hanging @@ -15871,7 +15871,7 @@ with blank comment-prefix, and a blank line as the comment's second line. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-fonts.el (c-cpp-matchers, c-basic-matchers-before): Incorporate the patterns added in the Emacs development branch @@ -15883,7 +15883,7 @@ * progmodes/cc-engine.el (c-literal-faces): Add `font-lock-comment-delimiter-face' which is new in Emacs 22. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-cmds.el: Make C-c C-a (`c-toggle-auto-newline') forcibly enable c-electric-flag. @@ -15892,7 +15892,7 @@ `comment-close-slash' on c-electric-slash: if enabled, typing `/' just after the comment-prefix of a C-style comment will close that comment. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-fonts.el (c-basic-matchers-before) (c-complex-decl-matchers): Fix the "not-arrow-prefix" regexp used @@ -15956,11 +15956,11 @@ Enable heuristics below the point to cope with classes inside special brace lists in Pike. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-cmds.el: Amend c-point-syntax to handle macros. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-guess.el (cc-guess-install): New function to install an already guessed style in another buffer. @@ -15969,7 +15969,7 @@ sets `inhibit-read-only' - `c-save-buffer-state' should be used anyway if the change always is undone. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> Implement togglable electricity: @@ -16009,7 +16009,7 @@ (c-electric-semi&comma, c-electric-colon, c-electric-paren): restructure a bit. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-show-syntactic-information): Show the anchor position(s) using faces. Thanks to Masatake YAMATO for the idea. @@ -16037,7 +16037,7 @@ (c-subword-move-mode): Minor mode that replaces all the standard word handling functions with their subword equivalences. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-vars.el (c-cleanup-list): Insert a customization entry for one-liner-defun. @@ -16064,7 +16064,7 @@ c-max-one-liner-length. In c-default-style, set the default style for AWK to "awk". -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-forward-label): Fix fontification of macros inside labels. @@ -16139,7 +16139,7 @@ * progmodes/cc-engine.el (c-beginning-of-statement-1): Fix a macro related issue. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-awk.el: Change the terminology of regexps: A char list is now [asdf], a char class [:alpha:]. @@ -16175,14 +16175,14 @@ c-string-par-start, c-string-par-separate to be more like Text Mode than Fundamental Mode. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-fonts.el (c-font-lock-declarations): Always narrow to the fontified region so that fontification doesn't occur outside it (could happen e.g. when fontifying a line with an unfinished declaration). -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-awk.el: Move regexps for analyzing AWK code to near the start of the file. ^L now separate sections of the file. @@ -16220,7 +16220,7 @@ * progmodes/cc-mode.el: Fix what's almost a semantic ambiguity in a comment. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-electric-brace): Clean up using `c-tentative-buffer-changes'. @@ -16241,7 +16241,7 @@ avoid some false alarms. * progmodes/cc-engine.el, progmodes/cc-langs.el (c-looking-at-inexpr-block): - Fixed a situation where an error could be thrown for unbalanced + Fix a situation where an error could be thrown for unbalanced parens. Changed to make use of c-keyword-member' to avoid some repeated regexp matches. @@ -16279,7 +16279,7 @@ * progmodes/cc-defs.el (c-point): Add `bosws' and `eosws'. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-cmds.el, progmodes/cc-styles.el: * progmodes/cc-vars.el: New variables @@ -16290,7 +16290,7 @@ * progmodes/cc-cmds.el (c-electric-brace): Don't delete a comment which precedes the newly inserted `{'. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el, progmodes/cc-langs.el: Rewrote the recognition function for declaration level blocks. It should now cope with @@ -16475,7 +16475,7 @@ when macros occur in obscure places. Optimized the sexp movement a bit. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> Enhancements for c-beginning-of-statement to work in AWK Mode: @@ -16498,7 +16498,7 @@ * progmodes/cc-mode.el: Put M-a and M-e into awk-mode-map. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el, progmodes/cc-fonts.el: * progmodes/cc-langs.el: Cleaned up the @@ -16650,13 +16650,13 @@ (c-lineup-math): Change to use `c-lineup-assignments'. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-cmds.el: Fix some bugs in subfunctions of c-beginning-of-statement. New subfunctions c-in-comment-line-prefix-p, c-narrow-to-comment-innards. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-fonts.el, progmodes/cc-langs.el: Use `c-simple-ws' instead of hardcoded char classes wherever possible. Changed a couple of @@ -16688,7 +16688,7 @@ in `regexp-opt' in Emacs 20 and XEmacs when strings contain newlines. Allow and ignore nil elements in the list. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-cmds.el: Comment out a (n almost certainly superfluous) check, (eq here (point-max)) in c-beginning-of-statement. @@ -16712,7 +16712,7 @@ c-beginning-of-statement, including new variable c-block-comment-start-regexp. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-langs.el (c-known-type-key): Optimize simple symbols from `*-font-lock-extra-types' so that there's no need to @@ -16731,7 +16731,7 @@ * progmodes/cc-vars.el (c-emacs-features): Remove compatibility with older emacsen: We now require `pps-extended-state'. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-cmds.el: New function c-beginning-of-sentence, which obviates the need to hack sentence-end. This now handles @@ -16746,7 +16746,7 @@ * progmodes/cc-cmds.el: Restructure c-beginning-of-statement: Improve its doc-string. Improve the handling of certain specific cases. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el, progmodes/cc-fonts.el, progmodes/cc-langs.el (c-guess-basic-syntax): Change the way class-level labels are @@ -16857,16 +16857,16 @@ `template-args-cont' in nested template arglists. There's still much to be desired in this area, though. -2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-12-08 Alan Mackenzie <acm@muc.de> * progmodes/cc-cmds.el, progmodes/cc-engine.el: * progmodes/cc-langs.el, progmodes/cc-vars.el: Make the "Text Filling and Line Breaking" commands work for AWK buffers. -2005-12-08 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-12-08 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-defs.el, progmodes/cc-engine.el (c-mode-is-new-awk-p): - Removed; (c-major-mode-is 'awk-mode) can be used instead now. + Remove; (c-major-mode-is 'awk-mode) can be used instead now. * progmodes/cc-mode.el: Always set up AWK mode since emacsen where it doesn't work no longer are supported. @@ -17613,7 +17613,7 @@ 2005-11-24 Chong Yidong <cyd@stupidchicken.com> - * hi-lock.el (hi-lock-buffer-mode): Renamed from `hi-lock-mode'. + * hi-lock.el (hi-lock-buffer-mode): Rename from `hi-lock-mode'. Use define-minor-mode, and make it a local mode. Turn on font-lock. (hi-lock-mode): New global minor mode. (turn-on-hi-lock-if-enabled): New function. @@ -17659,8 +17659,8 @@ New functions. (org-move-item-down, org-move-item-up): New commands. (org-export-as-html): New classes for CSS support. Bug fix in - regular expression detecting fixed-width regions. Respect - `org-local-list-ordered-item-terminator'. + regular expression detecting fixed-width regions. + Respect `org-local-list-ordered-item-terminator'. (org-set-autofill-regexps, org-adaptive-fill-function): "1)" is also a list item. (org-metaup, org-metadown, org-shiftmetaup, org-shiftmetadown): @@ -17685,8 +17685,8 @@ (gdb-var-update-handler): Find values for all variable objects. (gdb-info-frames-custom): Identify frames by leading "#". - * progmodes/gud.el (gud-speedbar-menu-items): Add - gdb-speedbar-auto-raise as radio button. + * progmodes/gud.el (gud-speedbar-menu-items): + Add gdb-speedbar-auto-raise as radio button. (gud-speedbar-buttons): Raise speedbar if requested. Don't match on "char **...". (gud-speedbar-buttons): Add (pointer) value for non-leaves. @@ -20089,8 +20089,8 @@ 2005-10-17 Bill Wohler <wohler@newt.com> Move all remaining images from lisp/toolbar to etc/images, move - lisp/toolbar/tool-bar to lisp and "delete" lisp/toolbar. Place - the low resolution images in their own directory (low-color). + lisp/toolbar/tool-bar to lisp and "delete" lisp/toolbar. + Place the low resolution images in their own directory (low-color). * toolbar/attach.*, toolbar/cancel.*, toolbar/close.* * toolbar/copy.*, toolbar/cut.*, toolbar/diropen.*, toolbar/exit.* @@ -20357,8 +20357,8 @@ 2005-10-13 Jan Djärv <jan.h.d@swipnet.se> * toolbar/diropen.xpm, toolbar/diropen.pbm: New versions made from - Gnome file-manager.png. Suggested by - Joachim Nilsson <joachim.nilsson@vmlinux.org>. + Gnome file-manager.png. + Suggested by Joachim Nilsson <joachim.nilsson@vmlinux.org>. * toolbar/README: Add diropen.xpm. @@ -20636,8 +20636,8 @@ trailing ":". Reported by Kurt Steinkraus <kurt@steinkraus.us>. (tramp-chunksize): Improve docstring. (tramp-set-auto-save-file-modes): Octal integer code #o600 breaks - Emacs 20. Use `tramp-octal-to-decimal' therefore. Reported by - Christian Joergensen <bugs@razor.dk>. + Emacs 20. Use `tramp-octal-to-decimal' therefore. + Reported by Christian Joergensen <bugs@razor.dk>. 2005-10-07 Glenn Morris <rgm@gnu.org> @@ -20792,8 +20792,8 @@ * emulation/viper-cmd.el (viper-normalize-minor-mode-map-alist) (viper-refresh-mode-line): Use make-local-variable to localize - some vars instead of make-variable-buffer-local. Suggested by - Stefan Monnier. + some vars instead of make-variable-buffer-local. + Suggested by Stefan Monnier. * emulation/viper-init.el (viper-make-variable-buffer-local): Delete alias. @@ -21035,23 +21035,23 @@ Frame management code (including timer, and mouse click specifics) moved to dframe.el: - (speedbar-attached-frame): Removed. Use dframe-attached-frame. - (speedbar-timer): Removed. Use dframe-timer. - (speedbar-close-frame): Removed. Use dframe-close-frame. - (speedbar-activity-change-focus-flag): Removed. Use - dframe-activity-change-focus-flag. - (speedbar-update-speed, speedbar-navigating-speed): Obsolete. Use - dframe-update-speed. + (speedbar-attached-frame): Remove. Use dframe-attached-frame. + (speedbar-timer): Remove. Use dframe-timer. + (speedbar-close-frame): Remove. Use dframe-close-frame. + (speedbar-activity-change-focus-flag): Remove. + Use dframe-activity-change-focus-flag. + (speedbar-update-speed, speedbar-navigating-speed): Obsolete. + Use dframe-update-speed. (speedbar-current-frame): New macro. Use this instead of the variable speedbar-frame. (speedbar-use-images, speedbar-expand-image-button-alist) - (speedbar-insert-image-button-maybe): Moved to sb-image.el. + (speedbar-insert-image-button-maybe): Move to sb-image.el. - (speedbar-find-image-on-load-path): Removed. Replaced by + (speedbar-find-image-on-load-path): Remove. Replaced by defezimage in ezimage.el. - (speedbar-expand-image-button-alist): Removed. Replaced by + (speedbar-expand-image-button-alist): Remove. Replaced by ezimage-expand-image-button-alist in ezimage.el. (speedbar-ignored-directory-regexp) @@ -21059,7 +21059,7 @@ (speedbar-ignored-directory-expressions) (speedbar-line-directory, speedbar-buffers-line-directory) (speedbar-directory-line, speedbar-buffers-line-directory): - Renamed, replacing `path' with `directory'. + Rename, replacing `path' with `directory'. (speedbar-create-directory, speedbar-expand-line-descendants) (speedbar-toggle-line-expansion) @@ -21617,8 +21617,8 @@ 2005-09-17 Milan Zamazal <pdm@zamazal.org> - * progmodes/glasses.el (glasses-make-readable): If - glasses-separator differs from underscore, put appropriate + * progmodes/glasses.el (glasses-make-readable): + If glasses-separator differs from underscore, put appropriate overlays over underscore characters. (glasses-convert-to-unreadable): If glasses-separator differs from underscore, try to convert glasses-separator characters to @@ -21975,7 +21975,7 @@ * custom.el (custom-known-themes): Clarify meaning of "standard". (custom-push-theme): Save old values in the standard theme. (disable-theme): Correct typo. - (custom-face-theme-value): Deleted unused function. + (custom-face-theme-value): Delete unused function. (custom-theme-recalc-face): Rewritten to treat enable/disable properly. 2005-09-05 Stefan Monnier <monnier@iro.umontreal.ca> @@ -25828,14 +25828,14 @@ (antlr-font-lock-default-face, antlr-font-lock-keyword-face) (antlr-font-lock-syntax-face, antlr-font-lock-ruledef-face) (antlr-font-lock-tokendef-face, antlr-font-lock-ruleref-face) - (antlr-font-lock-tokenref-face, antlr-font-lock-literal-face): New - backward-compatibility aliases for renamed faces. + (antlr-font-lock-tokenref-face, antlr-font-lock-literal-face): + New backward-compatibility aliases for renamed faces. (antlr-default-face, antlr-keyword-face, antlr-syntax-face) (antlr-ruledef-face, antlr-tokendef-face, antlr-ruleref-face) (antlr-tokenref-face, antlr-literal-face): Variables renamed to remove "font-lock-". Use renamed antlr-mode faces. - (antlr-font-lock-additional-keywords): Use renamed faces. Replace - literal face-names with face variable references. + (antlr-font-lock-additional-keywords): Use renamed faces. + Replace literal face-names with face variable references. * buff-menu.el (Buffer-menu-buffer): Remove "-face" suffix from face name. @@ -27387,7 +27387,7 @@ * emacs-lisp/cl.el (acons, pairlis): Add docstring. -2005-05-23 Martin Stjernholm <bug-cc-mode@gnu.org> +2005-05-23 Martin Stjernholm <mast@lysator.liu.se> CC Mode update to 5.30.10: @@ -27417,7 +27417,7 @@ * progmodes/cc-engine.el (c-guess-basic-syntax): Fix anchoring in `objc-method-intro' and `objc-method-args-cont'. -2005-05-23 Alan Mackenzie <bug-cc-mode@gnu.org> +2005-05-23 Alan Mackenzie <acm@muc.de> CC Mode update to 5.30.10: @@ -28294,8 +28294,8 @@ 2005-05-11 Stefan Monnier <monnier@iro.umontreal.ca> - * files.el (executable-find): Move from executable.el. Use - locate-file. + * files.el (executable-find): Move from executable.el. + Use locate-file. * progmodes/executable.el (executable-find): Move to files.el. * font-lock.el (font-lock-fontify-keywords-region): Use a marker @@ -28524,8 +28524,8 @@ * term/mac-win.el: Don't define or bind scroll bar functions if x-toolkit-scroll-bars is t. - (x-select-text, x-get-selection-value): Clear - x-last-selected-text-clipboard if x-select-enable-clipboard is + (x-select-text, x-get-selection-value): + Clear x-last-selected-text-clipboard if x-select-enable-clipboard is nil. (PRIMARY): Put mac-scrap-name property. (mac-select-convert-to-file-url): New function. @@ -30854,8 +30854,8 @@ Catch `dont-send' signal. (tramp-set-auto-save-file-modes): Set always permissions, because there might be an old auto-saved file belonging to another - original file. This could be a security threat. Reported by - Kjetil Kjernsmo <kjetil@kjernsmo.net>. + original file. This could be a security threat. + Reported by Kjetil Kjernsmo <kjetil@kjernsmo.net>. Check for Emacs 21.3.50 removed. * net/tramp-smb.el (all): Remove debug construct for @@ -31383,7 +31383,7 @@ 2005-03-07 Karl Chen <quarl@cs.berkeley.edu> - * align.el (align-rules-list): Added an alignment rule for CSS + * align.el (align-rules-list): Add an alignment rule for CSS declarations (applies to css-mode and html-mode buffers). 2005-03-07 Stefan Monnier <monnier@iro.umontreal.ca> @@ -32731,8 +32731,8 @@ * net/tramp-vc.el (tramp-vc-do-command, tramp-vc-do-command-new) (tramp-vc-simple-command): Call `tramp-handle-shell-command' but - `shell-command', because it isn't magic in XEmacs. Reported by - Adrian Aichner <adrian@xemacs.org>. + `shell-command', because it isn't magic in XEmacs. + Reported by Adrian Aichner <adrian@xemacs.org>. * net/tramp-smb.el (tramp-smb-file-name-handler-alist): Add entry for `substitute-in-file-name'. diff --git a/lisp/ChangeLog.14 b/lisp/ChangeLog.14 index 52612a7a724..3c2a7ff7ee3 100644 --- a/lisp/ChangeLog.14 +++ b/lisp/ChangeLog.14 @@ -5178,7 +5178,7 @@ * kmacro.el (kmacro-insert-counter): Doc fix. -2008-11-21 Ivan Shmakov <oneingray@gmail.com> (tiny change) +2008-11-21 Ivan Shmakov <oneingray@gmail.com> * progmodes/tcl.el (tcl-filter): Don't forcibly move point. diff --git a/lisp/ChangeLog.15 b/lisp/ChangeLog.15 index 6f71a6ade88..9c793ff4615 100644 --- a/lisp/ChangeLog.15 +++ b/lisp/ChangeLog.15 @@ -8502,7 +8502,7 @@ * tutorial.el (help-with-tutorial): Hack safe file-local variables after reading the tutorial. -2010-08-06 Alan Mackenzie <bug-cc-mode@gnu.org> +2010-08-06 Alan Mackenzie <acm@muc.de> * progmodes/cc-cmds.el (c-mask-paragraph, c-fill-paragraph): Fix for the case that a C style comment has its delimiters alone on @@ -8844,9 +8844,9 @@ (sql-mode-menu): Add submenu to select connections. (sql-interactive-mode-menu): Add "Save Connection" item. (sql-add-product): Fix menu item. - (sql-get-product-feature): Improved error handling. + (sql-get-product-feature): Improve error handling. (sql--alt-buffer-part, sql--alt-if-not-empty): Remove. - (sql-make-alternate-buffer-name): Simplified. + (sql-make-alternate-buffer-name): Simplify. (sql-product-interactive): Handle missing product. (sql-connect): Support string keys, minor improvements. (sql-save-connection): New function. @@ -8908,7 +8908,7 @@ (sql-connection-alist): New variable. (sql-connect): New function. (sql--alt-buffer-part, sql--alt-if-not-empty) - (sql-make-alternate-buffer-name): Improved alternative buffer name. + (sql-make-alternate-buffer-name): Improve alternative buffer name. 2010-07-17 Thierry Volpiatto <thierry.volpiatto@gmail.com> @@ -9383,7 +9383,7 @@ `compose-mail-user-agent-warnings', instead of to the nonexistent `compose-mail-check-user-agent'. -2010-06-21 Alan Mackenzie <bug-cc-mode@gnu.org> +2010-06-21 Alan Mackenzie <acm@muc.de> Fix an indentation bug: @@ -9392,7 +9392,7 @@ of existing values. * progmodes/cc-engine.el (c-clear-<-pair-props-if-match-after) - (c-clear->-pair-props-if-match-before): now return t when they've + (c-clear->-pair-props-if-match-before): Now return t when they've cleared properties, nil otherwise. (c-before-change-check-<>-operators): Set c-new-beg/end correctly by taking account of the existing value. diff --git a/lisp/ChangeLog.16 b/lisp/ChangeLog.16 index 2e8c6df24a6..b4c475aff10 100644 --- a/lisp/ChangeLog.16 +++ b/lisp/ChangeLog.16 @@ -1,6 +1,6 @@ 2013-03-11 Glenn Morris <rgm@gnu.org> - * Version 24.3 released. + * Version 24.3 released. 2013-03-11 Stefan Monnier <monnier@iro.umontreal.ca> @@ -5052,7 +5052,7 @@ (w32-handle-dropped-file): Convert incoming dropped files from Windows paths to Cygwin ones before passing them on to the rest of Emacs. - (w32-drag-n-drop): New paramter new-frame. Simplify logic. + (w32-drag-n-drop): New parameter new-frame. Simplify logic. (w32-initialize-window-system): Assert we're not initialized twice. * term/x-win.el: Require cl-lib; add ourselves to display-format-alist. @@ -7534,7 +7534,7 @@ In doc-strings state whether the argument window has to denote a live, valid or any window. -2012-08-16 Phil Sainty <psainty@orcon.net.nz> (tiny change) +2012-08-16 Phil Sainty <psainty@orcon.net.nz> * progmodes/subword.el (subword-forward-function) (subword-backward-function, subword-forward-regexp) @@ -17100,7 +17100,7 @@ * vc/ediff-init.el (ediff-toggle-read-only-function): Use toggle-read-only. -2011-10-22 Alan Mackenzie <bug-cc-mode@gnu.org> +2011-10-22 Alan Mackenzie <acm@muc.de> Fix bug #9560, sporadic wrong indentation; improve instrumentation of c-parse-state. diff --git a/lisp/ChangeLog.3 b/lisp/ChangeLog.3 index 767b4dd46ab..c9bd4e79c9a 100644 --- a/lisp/ChangeLog.3 +++ b/lisp/ChangeLog.3 @@ -26,7 +26,7 @@ (find-file-read-only-other-window): Likewise. (find-file-read-only-other-frame): Likewise. - * timer.el (cancel-function-timers): Renamed from spurious duplicate + * timer.el (cancel-function-timers): Rename from spurious duplicate definition of cancel-timer. * add-log.el (find-change-log): Use file-chase-links. @@ -82,7 +82,7 @@ * paths.el (Info-default-directory-list): Take out ../../info. Avoid duplication. - (manual-formatted-dirlist, manual-formatted-dir-prefix): Deleted. + (manual-formatted-dirlist, manual-formatted-dir-prefix): Delete. * subr.el (baud-rate): Doc fix. @@ -137,7 +137,7 @@ Delete the "local thinking machines" definitions at the end since they caused compilation failure. - * cl.el (cl-member): Renamed from member. + * cl.el (cl-member): Rename from member. * time.el (display-time-day-and-date): Use defvar, not defconst. @@ -163,7 +163,7 @@ (timezone-make-date-sortable): Make autoload for this. (rmail-sort-by-recipient): Downcase the strings for sorting. (rmail-sort-by-recipient): Likewise. - (rmail-sort-by-lines): Renamed from rmail-sort-by-size-lines. + (rmail-sort-by-lines): Rename from rmail-sort-by-size-lines. Use numbers to sort by. (rmail-summary-...): New functions. Bind in rmail-summary-mode-map. (rmail-sort-from-summary): New function. @@ -172,10 +172,10 @@ Choose string< or < as predicate. Reorder messages by exchanging them, with inhibit-quit bound. (rmail-fetch-field): Start by widening. - (rmail-sortable-date-string): Deleted. + (rmail-sortable-date-string): Delete. (rmail-make-date-sortable): New function, used instead. - * paths.el (gnus-local-organization): Renamed from ...-your-... + * paths.el (gnus-local-organization): Rename from ...-your-... (gnus-local-domain): Likewise. 1993-05-26 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) @@ -185,8 +185,8 @@ (set-face-font): Only use x-resolve-font-name if FONT is a string. Copying a faces shouldn't resolve the font. - * paths.el (Info-default-directory-list): Add - configure-info-directory to this list. + * paths.el (Info-default-directory-list): + Add configure-info-directory to this list. 1993-05-26 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -247,15 +247,15 @@ 1993-05-25 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) - * term/x-win.el (command-switch-alist, x-switch-definitions): Treat - `-i' like `-itype', as in Emacs 18. + * term/x-win.el (command-switch-alist, x-switch-definitions): + Treat `-i' like `-itype', as in Emacs 18. 1993-05-25 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * Version 19.8 released. - * startup.el (command-line-1): Don't handle `-i'. We're - abandoning the `insert file' meaning in favor of the `use a + * startup.el (command-line-1): Don't handle `-i'. + We're abandoning the `insert file' meaning in favor of the `use a bitmapped icon' meaning. * faces.el (set-face-font): Call x-resolve-font-name on the font @@ -265,8 +265,8 @@ * iso-syntax.el: Make downcase into a proper case table before passing it to set-standard-case-table. - * disp-table.el (standard-display-european): Doc fix. Make - it autoload. Make it respond to prefix arg like a minor mode. + * disp-table.el (standard-display-european): Doc fix. + Make it autoload. Make it respond to prefix arg like a minor mode. 1993-05-24 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -360,8 +360,8 @@ 1993-05-22 Jim Blandy (jimb@geech.gnu.ai.mit.edu) - * cl.el (cl-floor, cl-ceiling, cl-truncate, cl-round): Renamed - from floor, ceiling, truncate, and round; the old names conflict + * cl.el (cl-floor, cl-ceiling, cl-truncate, cl-round): + Rename from floor, ceiling, truncate, and round; the old names conflict with built-in functions. 1993-05-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -524,7 +524,7 @@ 1993-05-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) - * texinfo.el (texinfo-chapter-level-regexp): Copied here. + * texinfo.el (texinfo-chapter-level-regexp): Copy here. 1993-05-17 Roland McGrath (roland@geech.gnu.ai.mit.edu) @@ -536,7 +536,7 @@ * gnus.el, gnuspost.el, gnusmail.el, gnusmisc.el, * nntp.el, nnspool.el, mhspool.el: Version 3.15 from Umeda. - * frame.el (toggle-scroll-bar): Renamed from toggle-vertical-scroll... + * frame.el (toggle-scroll-bar): Rename from toggle-vertical-scroll... 1993-05-16 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -623,14 +623,14 @@ * menu-bar.el (menu-bar-mode): New command. Use for initialization. * faces.el (make-face): Add interactive spec. - (set-default-font): Deleted. + (set-default-font): Delete. * isearch.el (isearch-mode-map): Handle any length vector in keymap. (isearch-char-to-string): Handle non-character events properly. 1993-05-14 Jim Blandy (jimb@geech.gnu.ai.mit.edu) - * subr.el (overlay-start, overlay-end, overlay-buffer): Removed. + * subr.el (overlay-start, overlay-end, overlay-buffer): Remove. * vc.el (vc-version-diff): Match parens. @@ -643,26 +643,26 @@ * emerge.el: Installed version 5 from drw. Merged in previous FSF changes, plus new changes: - (emerge-count-matches-string): Renamed from count-matches-string. + (emerge-count-matches-string): Rename from count-matches-string. (emerge-command-prefix): Now C-c C-c. - (emerge-shadow-key-definition): Deleted. + (emerge-shadow-key-definition): Delete. Callers use substitute-key-definition. - (emerge-recursively-substitute-key-definition): Deleted. + (emerge-recursively-substitute-key-definition): Delete. Callers use substitute-key-definition. - (emerge-unselect-hook): Renamed from emerge-unselect-hooks. + (emerge-unselect-hook): Rename from emerge-unselect-hooks. (emerge-files-internal): Use file-local-copy to handle remote files. (emerge-files-with-ancestor-internal): Likewise. - (emerge-remote-file-p): Deleted. + (emerge-remote-file-p): Delete. (emerge-abort): New command. - (describe-mode): Deleted. - (emerge-hash-string-into-string): Renamed from hash-string-into-string. - (emerge-unslashify-name): Renamed from unslashify-name. + (describe-mode): Delete. + (emerge-hash-string-into-string): Rename from hash-string-into-string. + (emerge-unslashify-name): Rename from unslashify-name. (emerge-write-and-delete): Don't write-file if file-out is nil. (emerge-setup-fixed-keymaps): Put emerge-abort on C-]. - (emerge-find-difference-diff): Renamed from emerge-find-difference. + (emerge-find-difference-diff): Rename from emerge-find-difference. (emerge-find-difference): New command. Now on `.'. - (emerge-diff-ok-lines-regexp): Renamed from emerge-diff-ok-lines. - (emerge-diff3-ok-lines-regexp): Renamed from emerge-diff3-ok-lines. + (emerge-diff-ok-lines-regexp): Rename from emerge-diff-ok-lines. + (emerge-diff3-ok-lines-regexp): Rename from emerge-diff3-ok-lines. 1993-05-13 Paul Eggert (eggert@twinsun.com) @@ -877,9 +877,9 @@ * comint.el (comint-previous-matching-input): New command, on M-r. (comint-next-matching-input): New command, on M-s. - (comint-previous-similar-input): Commented out. + (comint-previous-similar-input): Comment out. (comint-next-similar-input): Likewise. - (comint-previous-input-matching): Deleted. + (comint-previous-input-matching): Delete. (comint-last-input-match): Var commented out. (comint-mode): Don't make comint-last-input-match local. @@ -911,8 +911,8 @@ * help.el (help-for-help): Use lower case letters for help options. - * rect.el (string-rectangle): Renamed from fill-rectangle. - (string-rectangle-line): Renamed from fill-rectangle-line. + * rect.el (string-rectangle): Rename from fill-rectangle. + (string-rectangle-line): Rename from fill-rectangle-line. 1993-05-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -944,8 +944,8 @@ FORCE argument non-nil, so that we don't get an error if the mark isn't set yet. - * edebug.el (global-edebug-prefix, global-edebug-map): Add - autoload cookies for these, so they are present when Emacs starts + * edebug.el (global-edebug-prefix, global-edebug-map): + Add autoload cookies for these, so they are present when Emacs starts up. * edebug.el (global-edebug-map): Bind `C-x X d' to edebug-defun in @@ -957,7 +957,7 @@ * complete.el: New file. - * vc.el (vc-match-substring): Renamed from match-substring. + * vc.el (vc-match-substring): Rename from match-substring. (vc-parse-buffer): Use new name. * shell.el (shell-prompt-pattern): Undo last change. @@ -965,7 +965,7 @@ * files.el (file-truename): Redo esr's change. * loaddefs.el: Put arrow key bindings back to the ordinary Emacs cmds. - * simple.el (up-arrow, down-arrow, left-arrow, right-arrow): Deleted. + * simple.el (up-arrow, down-arrow, left-arrow, right-arrow): Delete. * simple.el (kill-line, next-line-add-newlines): Doc fix. (kill-whole-line): Doc fix. @@ -1089,42 +1089,42 @@ * gud.el: Set no-byte-compile local variable t to work around a byte-compiler bug. - (gud-def, global-map): Move C-x C-a commands to global map. Restore - original C-x SPC global binding. + (gud-def, global-map): Move C-x C-a commands to global map. + Restore original C-x SPC global binding. * vc.el (vc-diff): Get proper error message when you run this with no prefix arg on an empty buffer. (vc-directory): Better directory format --- replace the user and group IDs with locking-user (if any). - (vc-finish-logentry, vc-next-comment, vc-previous-comment): Replace - *VC-comment-buffer* with a ring vector. + (vc-finish-logentry, vc-next-comment, vc-previous-comment): + Replace *VC-comment-buffer* with a ring vector. 1993-04-25 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) - * simple.el (down-arrow): New function. Uses - next-line-add-newlines to suppress addition of new lines at end of + * simple.el (down-arrow): New function. + Uses next-line-add-newlines to suppress addition of new lines at end of buffer. (up-arrow): Alias of previous-line, added for consistency. These changes complete terminal-type-independent support for arrow keys. - * tex-mode.el (tex-compilation-parse-errors): Added. At the + * tex-mode.el (tex-compilation-parse-errors): Add. At the moment, this would have to be applied manually. It's not worth trying to integrate this with the rest of the mode more tightly until we decide whether and how compile's interface is going to change away from a closed subsystem. - * files.el (cd): Changed to use to resolve relative cd calls. - (cd-absolute): Added. This is actually the old cd code with a + * files.el (cd): Change to use to resolve relative cd calls. + (cd-absolute): Add. This is actually the old cd code with a changed doc string. - (parse-colon-path): Added. Path-to-string exploder --- may be + (parse-colon-path): Add. Path-to-string exploder --- may be useful elsewhere. * ring.el: Added and fixed documentation. (ring-rotate): Nuked. It was (a) unused, and (b) totally broken (as in, any attempt to use it died with a type error, and when I patched it to fix that I found its algorithm was broken). - (ring-ref): Added doc string. + (ring-ref): Add doc string. 1993-04-25 Jim Blandy (jimb@totoro.cs.oberlin.edu) @@ -1144,7 +1144,7 @@ 1993-04-23 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) - * bytecomp.el (define-function): Changed name back to defaliases + * bytecomp.el (define-function): Change name back to defaliases to get things in a known-good state. The unload patch had been half-applied, leading to lossage. @@ -1158,7 +1158,7 @@ * telnet.el: Commentary added. (telnet): Doc fix. - (rsh): Added entry point for rsh to remote host, per suggestion by + (rsh): Add entry point for rsh to remote host, per suggestion by Michael McNamara <mac@ardent.com>. No change to any other code. * info.el (Info-find-node, Info-insert-subfile): Do the right @@ -1166,15 +1166,15 @@ saving me lots of disk space. * simple.el: All fsets changed to defaliases. - (kill-forward-chars, kill-backward-chars): Deleted. These were + (kill-forward-chars, kill-backward-chars): Delete. These were internal subroutines used by delete-char and delete-backward-char before those functions were moved into the C kernel. Now nothing uses them. - (kill-line): Added kill-whole-line variable. Defaults to nil; a + (kill-line): Add kill-whole-line variable. Defaults to nil; a non-nil value causes a kill-line at the beginning of a line to kill the newline as well as the line. I find it very convenient. Emulates Unipress' &kill-lines-magic variable. - (next-line): Added next-line-add-newlines variable. If nil, + (next-line): Add next-line-add-newlines variable. If nil, next-line will not insert newlines when invoked at the end of a buffer. This obviates three LCD packages. (left-arrow, right-arrow): New functions. These do backward-char @@ -1182,7 +1182,7 @@ left or right as necessary to make sure point is visible. * loaddefs.el: All fsets changes to defaliases. - (global-map): Changed bindings of [left] and [right] to left-arrow and + (global-map): Change bindings of [left] and [right] to left-arrow and right-arrow respectively. 1993-04-22 Roland McGrath (roland@mole.gnu.ai.mit.edu) @@ -1240,7 +1240,7 @@ 1993-04-16 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) * electric.el (shrink-window-if-larger-than-buffer): - Moved to window.el. + Move to window.el. 1993-04-16 Jim Blandy (jimb@totoro.cs.oberlin.edu) @@ -1267,12 +1267,12 @@ 1993-04-14 Richard Stallman (rms@mole.gnu.ai.mit.edu) - * resume.el (resume-suspend-hook): Renamed from empty-args-file. + * resume.el (resume-suspend-hook): Rename from empty-args-file. Add autoload cookie. - (resume-emacs-args-buffer): Renamed. - (resume-write-buffer-to-file): Renamed. + (resume-emacs-args-buffer): Rename. + (resume-write-buffer-to-file): Rename. - * two-column.el (tc-dissociate): Renamed from tc-kill-association. + * two-column.el (tc-dissociate): Rename from tc-kill-association. Move binding to C-x 6 d. 1993-04-14 Roland McGrath (roland@churchy.gnu.ai.mit.edu) @@ -1291,7 +1291,7 @@ * gud.el (gud-mode): Created C-c synonym bindings in the GUD buffer's local map. - (gud-key-prefix): Changed to C-x C-a. + (gud-key-prefix): Change to C-x C-a. 1993-04-14 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) @@ -1307,11 +1307,11 @@ ability to browse package commentary sections and a completely point-and-shoot interface similar to Dired's. - * window.el (shrink-window-if-larger-than-buffer): Moved from + * window.el (shrink-window-if-larger-than-buffer): Move from electric.el to windows.el, minor bug fix. This is to avoid code duplication between vc.el, electric.el, and finder.el. - (ctl-x-map): Added C-x - and C-x + as experimental bindings for + (ctl-x-map): Add C-x - and C-x + as experimental bindings for shrink-window-if-larger-than-buffer and balance-windows respectively. Since shrink-window-if-larger-than-buffer has to live here anyhow, let users use it to manage screen space. @@ -1354,7 +1354,7 @@ 1993-04-10 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) - * gud.el (gdb, sdb, dbx): Improved prompting a la grep. + * gud.el (gdb, sdb, dbx): Improve prompting a la grep. * comint.el: Clean up cmu* uses in header comments. @@ -1380,8 +1380,8 @@ 1993-04-09 Jim Blandy (jimb@totoro.cs.oberlin.edu) - * subr.el (overlay-start, overlay-end, overlay-buffer): New - defsubsts. + * subr.el (overlay-start, overlay-end, overlay-buffer): + New defsubsts. * finder.el (finder-by-keyword): Build an alist to pass to completing-read, instead of building an invalid obarray. @@ -1443,7 +1443,7 @@ (compile-internal): Make it the process's filter. * compile.el (compilation-error-regexp-alist): - Fixed MIPS CC regexp to match file + Fix MIPS CC regexp to match file names longer than one char. (compilation-parse-errors): Error if compilation-error-regexp-alist is nil. @@ -1473,7 +1473,7 @@ * compile.el (compilation-filter): New function. (compile-internal): Make it the process's filter. - * compile.el (compilation-error-regexp-alist): Fixed MIPS CC + * compile.el (compilation-error-regexp-alist): Fix MIPS CC regexp to match file names longer than one char. (compilation-parse-errors): Error if compilation-error-regexp-alist is nil. @@ -1492,7 +1492,7 @@ (add-change-log-entry): FILE-NAME frobnicating code moved there; call it. * vc.el (vc-comment-to-change-log): - Renamed from vc-comment-to-changelog. + Rename from vc-comment-to-changelog. Take optional arg and pass it to find-change-log. Added docstring and interactive spec. @@ -1505,7 +1505,7 @@ Apollo cc regexp: make "s optional, and don't anchor to bol. * compile.el (compilation-error-regexp-alist): - Changed MIPS RISC CC regexp (last one) to + Change MIPS RISC CC regexp (last one) to be anchored at bol, and to never match multiple lines. 1993-04-03 Eric S. Raymond (eric@geech.gnu.ai.mit.edu) @@ -1528,7 +1528,7 @@ * mpuz.el (mpuz-try-letter): Use read-char to read digit. Use message directly also. Use downcase. - (mpuz-read-map): Deleted. + (mpuz-read-map): Delete. * dired.el (dired-unmark-all-files): Read the arg as just a char. @@ -1614,7 +1614,7 @@ 1993-03-29 Eric S. Raymond (eric@geech.gnu.ai.mit.edu) * vc.el (vc-next-action, vc-print-log, vc-diff, vc-revert-buffer): - Improved logic for parent buffer finding. + Improve logic for parent buffer finding. (vc-cancel-version): Bug fix. @@ -1627,7 +1627,7 @@ * fill.el (fill-individual-paragraphs): When skipping mail headers, skip to a blank line. - * env.el (setenv): Renamed back from putenv. + * env.el (setenv): Rename back from putenv. * replace.el (regexp-history): New history list. (occur, flush-lines, keep-lines, how-many): Use it. @@ -1638,7 +1638,7 @@ 1993-03-28 Noah Friedman (friedman@splode.com) * setenv.el: Renamed to env.el. Provide `env', not `setenv'. - (setenv): Renamed to `putenv', which is the more proper complement + (setenv): Rename to `putenv', which is the more proper complement of `getenv'. `setenv' retained as an alias. Make VALUE parameter optional; if not set, remove VARIABLE from process-environment. @@ -1664,10 +1664,10 @@ * makefile.el: Added autoload cookie for entry point. - * files.el (auto-mode-alist): Added pairs for .ms, .man, .mk, + * files.el (auto-mode-alist): Add pairs for .ms, .man, .mk, [Mm]akefile, .lex. - * electric.el (shrink-window-if-larger-than-buffer): Added doc + * electric.el (shrink-window-if-larger-than-buffer): Add doc string. Made argument optional, because window-buffer does the right thing with nil. @@ -1691,8 +1691,8 @@ * rlogin.el: Updated copyright year and added autoload cookies. (rlogin): Set process marker to beginning of buffer. - (rlogin-filter): Use unwind-protect to restore match-data. Use - insert-before-markers instead of insert to keep input and output + (rlogin-filter): Use unwind-protect to restore match-data. + Use insert-before-markers instead of insert to keep input and output from getting garbled. Delete spurious ?\C-m chars in output instead of replacing them with ?\ . @@ -1710,26 +1710,26 @@ 1993-03-27 Eric S. Raymond (eric@geech.gnu.ai.mit.edu) - * lpr.el (printify-buffer): Added, debugged from Roland McGrath's + * lpr.el (printify-buffer): Add, debugged from Roland McGrath's printify-buffer code in LCD. - * cookie.el (cookie): Enhanced it to handle both LINS files and + * cookie.el (cookie): Enhance it to handle both LINS files and UNIX fortune files. - * rect.el (fill-rectangle): Added. Inspired by Lynn Slater's + * rect.el (fill-rectangle): Add. Inspired by Lynn Slater's insert-box package in LCD, but the interface and implementation are different. - * loaddefs.el (ctl-x-map): Added binding for fill-rectangle. + * loaddefs.el (ctl-x-map): Add binding for fill-rectangle. - * buff-menu.el (Buffer-menu-toggle-read-only): Added, per Rob + * buff-menu.el (Buffer-menu-toggle-read-only): Add, per Rob Austein's suggestion in the LCD package bm-toggle.el. - * subr.el (add-hook): Added optional arg to cause hook to be + * subr.el (add-hook): Add optional arg to cause hook to be appended rather than prepended to the hook list. This obviates the 23 different hook-bashing packages in LCD. - * subr.el (current-word): Added. Lots of help and default-generator + * subr.el (current-word): Add. Lots of help and default-generator functions in LCD use it, and it's remarkably difficult to get right, especially given the new syntax primitives. @@ -1741,8 +1741,8 @@ 1993-03-26 Eric S. Raymond (eric@geech.gnu.ai.mit.edu) - * yow.el (psychoanalyze-pinhead): Needed a prefrontal lobotomy. I - gave it one. + * yow.el (psychoanalyze-pinhead): Needed a prefrontal lobotomy. + I gave it one. * two-column.el: Added Commentary. @@ -1754,13 +1754,13 @@ 1993-03-25 Eric S. Raymond (eric@geech.gnu.ai.mit.edu) - * lisp-mnt.el (lm-last-modified-date): Fixed return bug. + * lisp-mnt.el (lm-last-modified-date): Fix return bug. (lm-author, lm-maintainer): These now return cons pairs, not strings. * shell.el: Brent Benson's patch to support `cd -'. - * mh-e.el (mh-unshar): Added. + * mh-e.el (mh-unshar): Add. * emacsbug.el: Added a (provide 'emacsbug); lisp-mnt.el needs this. @@ -1873,8 +1873,8 @@ * time.el (display-time): Doc fix. - * isearch.el (isearch-switch-frame-handler): Call - handle-switch-frame instead of select-frame; it has been renamed. + * isearch.el (isearch-switch-frame-handler): + Call handle-switch-frame instead of select-frame; it has been renamed. * simple.el (comment-indent-function): New variable, intended to replace comment-indent-hook. @@ -1930,7 +1930,7 @@ 1993-03-18 Richard Stallman (rms@geech.gnu.ai.mit.edu) - * frame.el (make-frame): Renamed from new-frame. + * frame.el (make-frame): Rename from new-frame. (new-frame): Alias for make-frame. 1993-03-18 Edward M. Reingold (reingold@emr.cs.uiuc.edu) @@ -2048,8 +2048,8 @@ 1993-03-14 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) - * sort.el (sort-float-fields, sort-numeric-fields): Use - string-to-number, not string-to-float or string-to-int. + * sort.el (sort-float-fields, sort-numeric-fields): + Use string-to-number, not string-to-float or string-to-int. * sort.el (sort-float-fields): Make this autoloaded. @@ -2080,7 +2080,7 @@ 1993-03-12 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) - * loaddefs.el (global-map): Fixed a typo in the binding of + * loaddefs.el (global-map): Fix a typo in the binding of [kp-backtab]. * term/x-win.el: Added library headers back in. Didn't touch @@ -2122,8 +2122,8 @@ and featureful interface across many different keyboard types. * loaddefs.el (global-map): Natural default keybindings set up for - almost all supported keysyms other than function keys. All - other keysyms are now default-bound to a function which explains + almost all supported keysyms other than function keys. + All other keysyms are now default-bound to a function which explains that the key is not bound to anything, then raises an error. * term/README: Terminal package conventions and standard keysym @@ -2144,8 +2144,8 @@ * term/news.el: Cleaned up, headers added. - * term/sun.el: Headers added, [again] changed to [redo]. This - package is a hairball and should probably be scrapped if we + * term/sun.el: Headers added, [again] changed to [redo]. + This package is a hairball and should probably be scrapped if we can find or built a better one. * term/tvi970.el: Headers added, [enter] changed to [kp-enter]. @@ -2170,7 +2170,7 @@ * help.el: Added binding and menu line for new `P' package-finder command. Won't actually take effect till the next Emacs build. - * vc.el (vc-backend-checkin): Fixed bizarre POM-dependent bug + * vc.el (vc-backend-checkin): Fix bizarre POM-dependent bug introduced into VC by a bad patch. This was one for the books....badly corrupted vc-checkin code somehow mostly functioned for three days. The Code That Would Not Die... @@ -2252,7 +2252,7 @@ 1993-03-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) * subr.el (posn-timestamp, posn-col-row, posn-point, posn-window) - (event-end, event-start, mouse-movement-p): Moved from mouse.el. + (event-end, event-start, mouse-movement-p): Move from mouse.el. * mouse.el: Functions moved to subr.el. 1993-03-07 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -2363,7 +2363,7 @@ 1993-03-05 Richard Stallman (rms@mole.gnu.ai.mit.edu) * disp-table.el: Add autoload comments. - (rope-to-vector): Deleted. + (rope-to-vector): Delete. (describe-display-table): Don't use rope-to-vector. * compare-w.el (compare-windows): Use compare-buffer-substrings. @@ -2424,7 +2424,7 @@ (rmail-undelete-previous-message, rmail-delete-forward) (rmail-get-new-mail, rmail-show-message): Update summary buffer if any. Call rmail-maybe-display-summary to put it back on screen. - (rmail-only-expunge): Renamed from rmail-expunge. + (rmail-only-expunge): Rename from rmail-expunge. (rmail-expunge): New function. (rmail-message-recipients-p, rmail-message-regexp-p): New functions. (rmail-summary-exists, rmail-summary-displayed): New functions. @@ -2470,7 +2470,7 @@ 1993-03-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) * frame.el: Doc fixes. - (set-pointer-color): Renamed to set-mouse-color. + (set-pointer-color): Rename to set-mouse-color. (set-border-color): New function. * info.el (Info-insert-dir): Make menu items in Top node @@ -2510,8 +2510,8 @@ 1993-02-26 Richard Stallman (rms@mole.gnu.ai.mit.edu) - * frame.el (auto-raise-mode): Renamed from toggle-auto-raise. - (auto-lower-mode): Renamed from toggle-auto-lower. + * frame.el (auto-raise-mode): Rename from toggle-auto-raise. + (auto-lower-mode): Rename from toggle-auto-lower. 1993-02-26 Jim Blandy (jimb@totoro.cs.oberlin.edu) @@ -2550,8 +2550,8 @@ * gud.el (gud-break): With a prefix argument, set a temporary breakpoint. - (gud-apply-from-source): New argument ARGS, to pass to FUNC. Now - it's really like `apply'. + (gud-apply-from-source): New argument ARGS, to pass to FUNC. + Now it's really like `apply'. (gud-set-break): Add another argument to this method. Document it in the section describing how the methods are supposed to be used. @@ -2614,11 +2614,11 @@ * frame.el (frame-initialize): Fix error syntax. (toggle-horizontal-scroll-bar): Likewise. - (toggle-horizontal-scroll-bar): Renamed from set-horizontal-bar. + (toggle-horizontal-scroll-bar): Rename from set-horizontal-bar. (toggle-vertical-scroll-bar): Likewise. (toggle-auto-lower, toggle-auto-raise): Likewise. (set-foreground-color, set-background-color): - Renamed from set-frame-{fore,back}ground. + Rename from set-frame-{fore,back}ground. 1993-02-15 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) @@ -2674,7 +2674,7 @@ 1993-02-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) - * flow-ctrl.el (enable-flow-control...): Renamed from evade... + * flow-ctrl.el (enable-flow-control...): Rename from evade... (enable-flow-control): Add autoload. 1993-02-10 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -2691,7 +2691,7 @@ * fortran.el (fortran-prepare-abbrev-list-buffer): Put quote in front of first argument to `insert-abbrev-table-description'. - * fortran.el (fortran-is-in-string-p): Fixed incorrect behavior + * fortran.el (fortran-is-in-string-p): Fix incorrect behavior when in first statement of a buffer. 1993-02-08 Roland McGrath (roland@geech.gnu.ai.mit.edu) @@ -2737,7 +2737,7 @@ 1993-02-05 Roland McGrath (roland@geech.gnu.ai.mit.edu) - * comint.el (make-comint): Added docstring. + * comint.el (make-comint): Add docstring. 1993-02-05 Roland McGrath (roland@geech.gnu.ai.mit.edu) @@ -2766,7 +2766,7 @@ 1993-01-31 Roland McGrath (roland@geech.gnu.ai.mit.edu) * mailabbrev.el (mail-abbrev-end-of-buffer): - Changed interactive spec from "P" to "p". + Change interactive spec from "P" to "p". 1993-01-29 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -2789,7 +2789,7 @@ x-own-selection has been renamed to x-set-selection, and the order of its arguments has been reversed, for consistency with other lisp functions like put and aset. - * term/x-win.el (x-select-text): Adjusted. + * term/x-win.el (x-select-text): Adjust. (x-cut-buffer-or-selection-value): Check the primary selection, using x-selection, instead of checking the cut buffer again. @@ -2804,7 +2804,7 @@ x-own-selection has been renamed to x-set-selection, and the order of its arguments has been reversed, for consistency with other lisp functions like put and aset. - * term/x-win.el (x-select-text): Adjusted. + * term/x-win.el (x-select-text): Adjust. (x-cut-buffer-or-selection-value): Check the primary selection, using x-selection, instead of checking the cut buffer again. @@ -3070,13 +3070,13 @@ * etags.el: Many comments added and docstrings fixed. (tags-table-list): Elt of nil is not special. (tags-expand-table-name): Value of nil is not special. - (tags-next-table): Removed arg RESET; no caller used it. + (tags-next-table): Remove arg RESET; no caller used it. (visit-tags-table-buffer): Don't need to do tags-expand-table-name in or form. When table is invalid, only set tags-file-name to nil globally if its global value contained the losing table file name. (find-tag-tag): Return a string, not a list. (find-tag-noselect, find-tag, find-tag-other-window) - (find-tag-other-frame): Changed callers. + (find-tag-other-frame): Change callers. (etags-recognize-tags-table): Call etags-verify-tags-table, rather than duplicating its functionality. (visit-tags-table-buffer): When CONT is 'same, set it to nil after the @@ -3153,7 +3153,7 @@ 1992-12-09 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) - * info.el (Info-{first,second,third,fourth,fifth}-menu-item): Removed. + * info.el (Info-{first,second,third,fourth,fifth}-menu-item): Remove. (Info-nth-menu-item): New function; bound to 1..9. 1992-12-08 Jim Blandy (jimb@totoro.cs.oberlin.edu) @@ -3167,8 +3167,8 @@ Just that. * ls-lisp.el (insert-directory): Just that. - * ange-ftp.el (ange-ftp-unhandled-file-name-directory): New - function. Set ange-ftp's `unhandled-file-name-property' to its + * ange-ftp.el (ange-ftp-unhandled-file-name-directory): + New function. Set ange-ftp's `unhandled-file-name-property' to its name. 1992-12-07 Jim Blandy (jimb@totoro.cs.oberlin.edu) @@ -3238,7 +3238,7 @@ * paths.el (rmail-spool-directory): Add dgux-unix to the list of systems which put their mail in "/usr/mail". - * lpr.el (lpr-command, lpr-switches): Removed strings starting + * lpr.el (lpr-command, lpr-switches): Remove strings starting with \newline; this file is loaded in loaddefs.el, and doesn't need to follow that convention. @@ -3351,8 +3351,8 @@ * fortran.el: Version 1.28.7a. Cleaned up some doc strings. - (fortran-abbrev-help, fortran-prepare-abbrev-list-buffer): Use - `insert-abbrev-table-description' and make buffer in abbrevs-mode. + (fortran-abbrev-help, fortran-prepare-abbrev-list-buffer): + Use `insert-abbrev-table-description' and make buffer in abbrevs-mode. * fortran.el: Version 1.28.7. Many changes since version 1.28.3. Added auto-fill-mode, support @@ -3366,7 +3366,7 @@ New functions to implement auto fill. (fortran-indent-line, fortran-reindent-then-newline-and-indent): - Added auto fill support. + Add auto fill support. (find-comment-start-skip, is-in-fortran-string-p): New functions. @@ -3376,7 +3376,7 @@ (fortran-indent-to-column): Use find-comment-start-skip instead of searching for `comment-start-skip'. - (fortran-mode, calculate-fortran-indent): Added indentation + (fortran-mode, calculate-fortran-indent): Add indentation for fortran 90 statements. (fortran-next-statement, fortran-previous-statement): Bug fixes. @@ -3431,7 +3431,7 @@ 1992-10-31 Richard Stallman (rms@mole.gnu.ai.mit.edu) - * files.el (make-directory): Renamed from make-directory-path. + * files.el (make-directory): Rename from make-directory-path. Optional argument says whether to create parent dirs. Invoke file-name handler here. (after-find-file): Delete code that offers to create dir. @@ -3469,7 +3469,7 @@ * info.el: Rename buffer-flush-undo to buffer-disable-undo. (Info-goto-emacs-key-command-node): Fix typo. - (Info-menu-item-sequence): Commented out. + (Info-menu-item-sequence): Comment out. (Info-follow-nearest-node): Use new event format. Select the window clicked on. @@ -3561,9 +3561,9 @@ * mailabbrev.el: Delete version 18 compatibility stuff. (mail-abbrevs, build-mail-abbrevs, rebuild-mail-abbrevs) - (merge-mail-abbrevs): Renamed `mail-aliases' to `mail-abbrevs'. - (mail-abbrev-end-of-buffer): Renamed from abbrev-hacking-end-of-buffer. - (mail-abbrev-next-line): Renamed from abbrev-hacking-next-line. + (merge-mail-abbrevs): Rename `mail-aliases' to `mail-abbrevs'. + (mail-abbrev-end-of-buffer): Rename from abbrev-hacking-end-of-buffer. + (mail-abbrev-next-line): Rename from abbrev-hacking-next-line. * isearch-mode.el (isearch-mode-map): Use sparse keymaps. Start printing-char loop at SPC. @@ -3729,7 +3729,7 @@ 1992-10-05 Richard Stallman (rms@mole.gnu.ai.mit.edu) - * ls-lisp.el (insert-directory): Renamed from dired-ls. + * ls-lisp.el (insert-directory): Rename from dired-ls. All other functions renamed to start with ls-lisp. * ls-lisp.el: New file from Kremer. @@ -3748,7 +3748,7 @@ * mouse.el: Begin adapting this to the new event format. (event-window, event-point, mouse-coords, mouse-timestamp): - Removed. + Remove. (event-start, event-end, posn-window, posn-point, posn-col-row) (posn-timestamp): New accessors; these are defsubsts. (mouse-delete-window, mouse-delete-other-windows) @@ -3783,7 +3783,7 @@ 1992-09-30 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) - * gud.el (gud-last-frame): Added defvar for this. + * gud.el (gud-last-frame): Add defvar for this. 1992-09-29 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -3814,8 +3814,8 @@ Use x-get-cut-buffer and x-set-cut-buffer, instead of expecting x-selection-value to manipulate the cut buffers. - * term/x-win.el (x-cut-buffer-or-selection-value): Treat - selections whose value is the empty string like unset selections. + * term/x-win.el (x-cut-buffer-or-selection-value): + Treat selections whose value is the empty string like unset selections. This allows us to truncate cut buffers to the empty string (if the text is too large, say) without causing interprogram-paste-function to wipe out the latest kill. @@ -3841,13 +3841,13 @@ latter doesn't exist. (gud-dbx-debugger-setup): Use the argument `f', not the variable `file', which happens to be bound in the caller. - (gud-filter-insert): The variable `start' is never used. The - variable `moving' is unnecessary. The variable `old-buffer' and + (gud-filter-insert): The variable `start' is never used. + The variable `moving' is unnecessary. The variable `old-buffer' and the unwind-protect form are unneeded, since save-excursion can do their work. The binding of output-after-point should be done after switching to the process's buffer, not in whatever random buffer - happens to be current when the process filter is called. There's - no need to set the process mark if we've just inserted at its + happens to be current when the process filter is called. + There's no need to set the process mark if we've just inserted at its location using insert-before-markers. (gud-read-address): Don't bother setting the variable `result'; it is never used. @@ -3920,8 +3920,8 @@ * two-column.el (tc-window-width, tc-separator, tc-other): Add permanent-local property. - (tc-two-columns): Renamed from tc-split. - (tc-split): Renamed from tc-unmerge. Put it on C-x 6 s. + (tc-two-columns): Rename from tc-split. + (tc-split): Rename from tc-unmerge. Put it on C-x 6 s. Use make-local-variable on tc-separator. * spook.el (spook): Make it autoload. @@ -3929,7 +3929,7 @@ * gomoku.el (gomoku): Make it autoload. * mpuz.el: Fix setup of mpuz-read-map not to depend on keymap format. - (mpuz): Renamed from mult-puzzle. Make it autoload. + (mpuz): Rename from mult-puzzle. Make it autoload. * setenv.el (setenv): Doc fix. Make it autoload. @@ -3969,9 +3969,9 @@ * texinfo.el (texinfo-mode): Capitalize the mode name string. - * mail-extr.el (mail-undo-backslash-quoting): Renamed from undo-... - (mail-safe-move-sexp): Renamed from safe-... - (mail-variant-method): Renamed from variant-method. + * mail-extr.el (mail-undo-backslash-quoting): Rename from undo-... + (mail-safe-move-sexp): Rename from safe-... + (mail-variant-method): Rename from variant-method. * tq.el: Doc fixes. Make tq-create autoload. @@ -3994,7 +3994,7 @@ * prompt.el: File deleted. - * find-dired.el (start-process-shell-command): Deleted. + * find-dired.el (start-process-shell-command): Delete. * diff.el (diff-switches): Default is now -c. (diff-parse-differences): Use line beg as location of message. @@ -4028,7 +4028,7 @@ (search-last-string, search-last-regexp): Vars deleted. (search-highlight): No longer a user option. - * subr.el (baud-rate): Defined. + * subr.el (baud-rate): Define. (substitute-key-definition): Understand today's keymap format. New arg OLDMAP. Operate recursively on prefix keys. @@ -4060,7 +4060,7 @@ 1992-09-16 Joseph Arceneaux (jla@churchy.gnu.ai.mit.edu) - * isearch-mode.el (isearch-ring-advance-edit): Added missing + * isearch-mode.el (isearch-ring-advance-edit): Add missing closing paren to end of this function. 1992-09-16 Roland McGrath (roland@geech.gnu.ai.mit.edu) @@ -4087,7 +4087,7 @@ * simple.el (previous-history-element): Doc fix. * isearch-mode.el (isearch-event-data-type): - Renamed from isearch-events-exist. + Rename from isearch-events-exist. (isearch-frames-exist): Set properly in Emacs 18. (isearch-mode): Use baud-rate as variable, not function. (isearch-abort): Use nil as 2nd arg to `signal'. @@ -4137,8 +4137,8 @@ Don't try using length of keymap. (isearch-update): Handle unread-command-char properly for Emacs 19. (isearch-switch-frame-handler): Use select-frame to switch frames. - (isearch-pre-command-hook): Commented out. - (search-upper-case): Renamed from search-caps-disable-folding. + (isearch-pre-command-hook): Comment out. + (search-upper-case): Rename from search-caps-disable-folding. 1992-09-14 Roland McGrath (roland@geech.gnu.ai.mit.edu) @@ -4240,7 +4240,7 @@ * dired-aux.el (dired-add-entry, dired-insert-subdir-doinsert): Use insert-directory. * dired.el (dired-readin-insert): Use insert-directory. - (dired-ls, dired-ls-program): Deleted. + (dired-ls, dired-ls-program): Delete. 1992-09-12 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -4264,7 +4264,7 @@ * term/x-win.el (scroll-bar-mode): New function (and variable too). - * dired.el (dired-next-subdir, dired-subdir-index): Moved here + * dired.el (dired-next-subdir, dired-subdir-index): Move here * dired-aux.el: From here. * dired.el (dired-build-subdir-alist): Don't print msg after each dir. Clarify final message. @@ -4296,7 +4296,7 @@ 1992-09-08 Joseph Arceneaux (jla@geech.gnu.ai.mit.edu) - * mailabbrev.el (sendmail-pre-abbrev-expand-hook): Changed the + * mailabbrev.el (sendmail-pre-abbrev-expand-hook): Change the structure of this function: don't check to call mail-resolve-all-aliases unless we are actually in a header field where an abbrev should be expanded. @@ -4345,7 +4345,7 @@ 1992-09-02 Jim Blandy (jimb@pogo.cs.oberlin.edu) - * c-mode.el (c-auto-newline): Added backslashed before quotes in + * c-mode.el (c-auto-newline): Add backslashed before quotes in docstring. 1992-09-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -4446,7 +4446,7 @@ (mail-signature-file): This, since this is the way all the other lisp packages do it, and it's how people always say they want it on the mailing lists. - (mail-setup, mail-signature): Adjusted accordingly. + (mail-setup, mail-signature): Adjust accordingly. (mail): Doc fix. 1992-08-17 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -4544,9 +4544,9 @@ * calendar.el (calendar-interval): Fix doc string. - * calendar.el (calendar): Changed use of prefix arg--now it causes + * calendar.el (calendar): Change use of prefix arg--now it causes prompting for the month and year. - (regenerate-calendar-window): Renamed generate-calendar-window. + (regenerate-calendar-window): Rename generate-calendar-window. Changed optional argument from an offset from the current month to a month, year pair. (redraw-calendar, calendar-current-month, scroll-calendar-left) @@ -4562,7 +4562,7 @@ 1992-08-08 Jim Blandy (jimb@pogo.cs.oberlin.edu) - * frame.el (set-screen-width, set-screen-height): Changed these + * frame.el (set-screen-width, set-screen-height): Change these from fset aliases to actual functions, since they aren't supposed to take a frame argument, while set-frame-{width,height} do. @@ -4595,8 +4595,8 @@ * appt.el (appt-issue-message, appt-message-warning-time) (appt-audible, appt-visible, appt-display-mode-line) - (appt-msg-window, appt-display-duration, appt-display-diary): Added - ;;;###autoload cookies for these variables, since they are options + (appt-msg-window, appt-display-duration, appt-display-diary): + Add ;;;###autoload cookies for these variables, since they are options for the user to set. * tex-mode.el (tex-shell-file-name, tex-directory, tex-offer-save) (tex-run-command, latex-run-command, latex-block-names) @@ -4610,29 +4610,29 @@ * add-log.el (add-log-current-defun): Use eq instead of = when one side might be nil. - * compile.el (compilation-mode-map): Change - compilation-previous/next-file bindings to M-{ and M-}. + * compile.el (compilation-mode-map): + Change compilation-previous/next-file bindings to M-{ and M-}. 1992-08-05 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) * cl.el (*cl-valid-named-list-accessors*, *cl-valid-nth-offsets*) - (byte-compile-named-accessors): Deleted. + (byte-compile-named-accessors): Delete. (first, second, ... tenth, rest): Define these with defsubst, to get the same effect. - (byte-compile-ca*d*r): Deleted. + (byte-compile-ca*d*r): Delete. (caar, cadr, ..., cddddr): Define these using defsubst. Installed changes from Zawinski-Furuseth 2.04 to 2.07: * byte-run.el (dont-compile): Doc fix. (make-obsolete-variable): New function. - * bytecomp.el (byte-compile-log-1): Added new optional argument, + * bytecomp.el (byte-compile-log-1): Add new optional argument, FILL; if it is non-nil, reformat the error message. (byte-compile-warn): Use that flag. (byte-recompile-directory): Offer to recompile subdirectories. If prefix argument is zero, create .elc files for those .el files which lack them, without asking. - (byte-compile-output-form, byte-compile-output-docform): Disable - print-gensym while writing the form. + (byte-compile-output-form, byte-compile-output-docform): + Disable print-gensym while writing the form. (byte-compile-form): Warn if t or nil are called as functions. (byte-compile-variable-ref): Check for, and warn about, obsolete variable uses. @@ -4649,7 +4649,7 @@ * inf-lisp.el (inferior-lisp-filter-regexp, inferior-lisp-program) (inferior-lisp-load-command, inferior-lisp-prompt) - (inferior-lisp-mode-hook, inferior-lisp): Added ;;;###autoload + (inferior-lisp-mode-hook, inferior-lisp): Add ;;;###autoload cookies for these. * bytecomp.el (byte-compile-warnings): When choosing the default @@ -4685,8 +4685,8 @@ * info.el (Info-mode): scroll-up, scroll-down now do the right thing for preorder browsing when the beginning/end of the node - is visible. RET now goes to the next preorder node. These - changes make sequential reading of info subtrees easier. + is visible. RET now goes to the next preorder node. + These changes make sequential reading of info subtrees easier. 1992-08-04 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) @@ -4698,7 +4698,7 @@ * vc.el (vc-next-action, vc-register, vc-diff, vc-insert-headers) (vc-directory, vc-create-snapshot, vc-retrieve-snapshot) (vc-print-log, vc-revert-buffer, vc-cancel-version) - (vc-update-change-log): Added the ;;;###autoload cookies to these + (vc-update-change-log): Add the ;;;###autoload cookies to these functions, since they get bound to keys in the global keymap. * loadup.el: Load vc-hooks.el. @@ -4773,7 +4773,7 @@ (medit-zap-define-to-mdl): Change `medit-save-defun' to `medit-save-define'. (medit-save-region, medit-save-buffer, medit-zap-define-to-mdl): - Changed `medit-go-to-mdl' to `medit-goto-mdl'. Did anyone ever + Change `medit-go-to-mdl' to `medit-goto-mdl'. Did anyone ever try this code? 1992-08-02 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -4805,13 +4805,13 @@ (dired-create-files, dired-handle-overwrite): Rename overwrite-confirmed to dired-overwrite-confirmed. (dired-do-kill-lines): Handle prefix arg as number of lines to kill. - (dired-kill-line-or-subdir): Deleted. + (dired-kill-line-or-subdir): Delete. 1992-08-01 Roland McGrath (roland@churchy.gnu.ai.mit.edu) - * mailabbrev.el [from jwz] (mail-interactive-insert-alias): Do - mail-aliases-setup if necessary before completing for interactive. - (build-mail-aliases): Changed parsing regexp. + * mailabbrev.el [from jwz] (mail-interactive-insert-alias): + Do mail-aliases-setup if necessary before completing for interactive. + (build-mail-aliases): Change parsing regexp. * compile.el (compilation-parse-errors): Take 2nd arg FIND-AT-LEAST. If non-nil, stop after parsing that many new errors. @@ -4826,7 +4826,7 @@ * comint.el: ring-* functions deleted--get them from ring.el. - * ring.el (ring-mod): Renamed from comint-mod. + * ring.el (ring-mod): Rename from comint-mod. Provide `ring', not history'. (make-ring, ring-p): Add autoloads. * history.el: Link deleted. @@ -4846,7 +4846,7 @@ Use buffer-disable-undo instead of buffer-flush-undo; the latter is obsolete. - * lpr.el (print-region-new-buffer): Added arguments START and END; + * lpr.el (print-region-new-buffer): Add arguments START and END; this used to use dynamic scope, but it makes things less readable. (print-region-1): Always call this with two arguments, not sometimes two and sometimes none. @@ -4877,7 +4877,7 @@ * hideif.el (hif-endif-to-ifdef): Fix munged comment which was interfering with parsing. - * hexl.el (hexl-next-line): Fixed up malformed let binding. + * hexl.el (hexl-next-line): Fix up malformed let binding. * bytecomp.el (byte-compile-file): Catch errors that occur during compilation, and record them in the compilation log. This allows @@ -5042,10 +5042,10 @@ 1992-07-28 Richard Stallman (rms@mole.gnu.ai.mit.edu) - * files.el (backup-extract-version): Copied from Emacs 18. + * files.el (backup-extract-version): Copy from Emacs 18. (find-backup-file-name): Use that. - * dired-aux.el (dired-clean-directory): Moved here. + * dired-aux.el (dired-clean-directory): Move here. (dired-map-dired-file-lines, dired-collect-file-versions) (dired-trample-file-versions): Likewise. * dired.el: Moved from here. @@ -5070,7 +5070,7 @@ * compile.el (compile-goto-error): Doc fix. - * etags.el (find-tag): Fixed prompt. + * etags.el (find-tag): Fix prompt. (tag-exact-match-p): Rewritten (again). * startup.el (command-line): Load site-start here. @@ -5082,7 +5082,7 @@ * completion.el: Moved to external-lisp. - * diff.el (diff-rcs, diff-sccs): Deleted. + * diff.el (diff-rcs, diff-sccs): Delete. 1992-07-27 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) @@ -5127,9 +5127,9 @@ 1992-07-26 Richard Stallman (rms@mole.gnu.ai.mit.edu) * diff.el (diff-backup): New function. - (diff-last-backup-file): Renamed from dired-last-backup-file. + (diff-last-backup-file): Rename from dired-last-backup-file. * dired-aux.el (dired-backup-diff): Use diff-backup. - (dired-last-backup-file): Moved and renamed. + (dired-last-backup-file): Move and renamed. * dired.el, dired-aux.el (dired-diff, dired-backup-diff): Doc fixes. * help.el (command-apropos): Fix call to apropos for new arg. @@ -5185,9 +5185,9 @@ * replace.el (perform-replace): Fix typo: match-after => match-again. (map-query-replace-regexp): Delete duplicate definition. - * subr.el (defun-inline): Commented out. + * subr.el (defun-inline): Comment out. - * comint.el (comint-input-ring*): Renamed from input-ring*. + * comint.el (comint-input-ring*): Rename from input-ring*. (ring-remove, ring-rotate): Use setcar, not set-car. * co-isearch.el: input-ring* renamed to comint-input-ring*. @@ -5227,7 +5227,7 @@ 1992-07-22 Richard Stallman (rms@mole.gnu.ai.mit.edu) * emerge.el (emerge-startup-hook, emerge-quit-hook): - Renamed from ...-hooks. + Rename from ...-hooks. * dired.el (dired-display-file): New command, on C-o. @@ -5282,15 +5282,15 @@ * c-mode.el (c-backslash-region): New command. (c-append-backslash, c-delete-backslash): New functions. * c++-mode.el (c++-macroize-region, backslashify-current-line): - Deleted. - (c++-comment-region, c++-uncomment-region): Deleted. + Delete. + (c++-comment-region, c++-uncomment-region): Delete. comment-region works just fine. - (c++-beginning-of-defun, c++-end-defun, c++-indent-defun): Deleted. - (c++-point-bol): Renamed from point-bol. - (c++-within-string-p): Renamed from within-string-p. - (c++-count-char-in-string): Renamed from count-char-in-string. - (fill-c++-comment): Renamed from fill-C-comment. - (c++-insert-header): Deleted. + (c++-beginning-of-defun, c++-end-defun, c++-indent-defun): Delete. + (c++-point-bol): Rename from point-bol. + (c++-within-string-p): Rename from within-string-p. + (c++-count-char-in-string): Rename from count-char-in-string. + (fill-c++-comment): Rename from fill-C-comment. + (c++-insert-header): Delete. 1992-07-21 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) @@ -5329,7 +5329,7 @@ * simple.el (end-of-buffer): If buffer end is on screen, don't scroll. - * c-mode.el (set-c-style): Deleted the first version of this function. + * c-mode.el (set-c-style): Delete the first version of this function. It was badly written. Modified the remaining version by adding new argument GLOBAL and setting the parameters locally if GLOBAL is nil. @@ -5343,7 +5343,7 @@ 1992-07-21 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) - * frame.el (get-frame): Renamed to get-other-frame; get-frame + * frame.el (get-frame): Rename to get-other-frame; get-frame sounds like a parallel to get-buffer or get-process. * c-mode.el (set-c-style): Remove the extraneous copy of this @@ -5352,7 +5352,7 @@ * c++-mode.el (within-string-p): Use `%', not `mod', as the name of the modulus function. - * frame.el (frame-height, frame-width): Fixed several confusions + * frame.el (frame-height, frame-width): Fix several confusions here. * blackbox.el: When building blackbox-mode-map, locally rebind all @@ -5384,7 +5384,7 @@ (visit-tags-file): If find-file-noselect changed the file name, propagate the change to tags-file-name and tags-table-list. - * startup.el (command-line): Fixed typo in comment. + * startup.el (command-line): Fix typo in comment. 1992-07-20 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) @@ -5406,7 +5406,7 @@ (frame-configuration-to-register): New function. * loaddefs.el: Put them on C-x r w, C-x r f. * window.el (window-config-to-register, register-to-window-config): - Deleted, along with keybindings C-x 6 and C-x 7. + Delete, along with keybindings C-x 6 and C-x 7. 1992-07-19 Edward M. Reingold (reingold@emr.cs.uiuc.edu) @@ -5431,7 +5431,7 @@ (calendar-mode-map): Put it on a key. (calendar-mode): Describe it. - * cal-french.el (diary-french-date): Moved from diary.el and fixed + * cal-french.el (diary-french-date): Move from diary.el and fixed accent. * diary.el: Move dairy-french-date to cal-french.el and autoload it. @@ -5469,7 +5469,7 @@ * files.el (auto-mode-alist): Recognize .texi. - * rmail.el (rmail-delete-forward): Removed the feature + * rmail.el (rmail-delete-forward): Remove the feature of moving back if there's nowhere to go forward. 1992-07-17 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) @@ -5519,12 +5519,12 @@ form so that it returns a list containing the filename and the prefix argument, not just the prefix argument by itself. - * bytecomp.el (byte-compile-file): Changed reference to + * bytecomp.el (byte-compile-file): Change reference to byte-compile-report-call-tree to use display-call-tree. * bytecomp.el (byte-recompile-directory, byte-compile-file) (batch-byte-compile, byte-compile, compile-defun) - (display-call-tree): Added autoload cookies for these functions. + (display-call-tree): Add autoload cookies for these functions. 1992-07-16 Roland McGrath (roland@churchy.gnu.ai.mit.edu) @@ -5533,7 +5533,7 @@ 1992-07-16 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) - * byte-run.el (defsubst): Removed extra closing paren at the end + * byte-run.el (defsubst): Remove extra closing paren at the end of this function. 1992-07-16 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) @@ -5567,7 +5567,7 @@ * bytecomp.el: Deleted support for running compiler in Emacs 18. Spell "Emacs 18" properly. (byte-compile-version): FSF 2.1. - (byte-compiler-valid-options): Deleted. + (byte-compiler-valid-options): Delete. (byte-compile-single-version): Always return nil. (byte-compiler-version-cond): Always return the argument. @@ -5588,7 +5588,7 @@ * buff-menu.el, bg-mouse.el, appt.el, abbrevlist.el, term/x-win.el, * term/wyse50.el, term/vt200.el, term/vt100.el: All uses changed. * screen.el (screen-height, screen-width, set-screen-height) - (set-screen-width): Defined as aliases for frame-height, + (set-screen-width): Define as aliases for frame-height, frame-width, set-frame-height, and set-frame-width. (set-frame-height, set-frame-width): Functions deleted; they are defined in frame.c. @@ -5613,8 +5613,8 @@ * rmailsort.el: Change copyright to FSF; update permission notice. * byte-run.el: Delete compatibility definition of make-byte-code. - (byte-compiler-options): Commented out. - (proclaim-inline, proclaim-notinline): Commented out. + (byte-compiler-options): Comment out. + (proclaim-inline, proclaim-notinline): Comment out. * byte-opt.el: Change several doc strings to comments. They had the wrong format anyway. @@ -5623,22 +5623,22 @@ * disass.el: Require just bytecomp, not byte-opt. * bytecomp.el (emacs-lisp-file-regexp): - Renamed from elisp-source-file-re. All uses changed. + Rename from elisp-source-file-re. All uses changed. (byte-compile-dest-file): Don't use that var. - (compile-defun): Renamed from elisp-compile-defun. + (compile-defun): Rename from elisp-compile-defun. (byte-compile-report-ops): Define unconditionally. It's a bad idea to make function definitions of moderate size conditional on anything. - (byte-compile-and-load-file): Commented out. + (byte-compile-and-load-file): Comment out. (byte-compiler-valid-options): - Renamed from byte-compiler-legal-options. + Rename from byte-compiler-legal-options. (byte-compile-overwrite-file): Variable deleted. (byte-compile-file): Don't use that var. (byte-compile-compatibility): - Renamed from byte-compile-emacs18-compatibility. + Rename from byte-compile-emacs18-compatibility. (byte-compile-generate-emacs19-bytecodes): Variable deleted. Use byte-compile-compatibility instead. - (byte-compiler-options-handler): Deleted. + (byte-compiler-options-handler): Delete. (byte-compile-body-do-effect, byte-compile-form-do-effect): Use defsubst, not proclaim-inline. @@ -5694,7 +5694,7 @@ * disass.el: New version of the disassembler, to fit with the new compiler. - * mouse.el (mouse-select-buffer-line): Removed extraneous setting + * mouse.el (mouse-select-buffer-line): Remove extraneous setting of the variable `the-buffer'; it's never used elsewhere. * mouse.el (mouse-kill): Don't set the mark; pass point and the @@ -5702,7 +5702,7 @@ 1992-07-09 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) - * abbrev.el (write-abbrev-file): Removed extraneous interactive spec. + * abbrev.el (write-abbrev-file): Remove extraneous interactive spec. * screen.el (current-screen-configuration, set-screen-configuration): New functions. @@ -5713,8 +5713,8 @@ instead of `deiconify-screen'; the latter no longer exists. * files.el (find-backup-file-name): Replace the reference to - `backup-extract-version' with a literal `function' form. This - eliminates the use of dynamic binding, and allows us to remove + `backup-extract-version' with a literal `function' form. + This eliminates the use of dynamic binding, and allows us to remove backup-extract-version, which doesn't really want to be its own function. (backup-extract-version): Function removed. @@ -5766,7 +5766,7 @@ * tex-mode.el: Require comint instead of oshell. (tex-start-shell): Use comint, not oshell. - (tex-filter): Deleted function; no filter is now longer needed. + (tex-filter): Delete function; no filter is now longer needed. * tex-mode.el (tex-run-command, latex-run-command, slitex-run-command) (tex-bibtex-run-command, tex-dvi-print-command) @@ -5843,7 +5843,7 @@ 1992-06-28 Jim Blandy (jimb@pogo.cs.oberlin.edu) * completion.el (completion-separator-self-insert-autofilling): - Changed references to `auto-fill-hook' to `auto-fill-function'. + Change references to `auto-fill-hook' to `auto-fill-function'. * mh-e.el (mh-letter-mode): Same thing. * texinfo-upd.el (texinfo-update-node, texinfo-sequential-node-update): Same thing. @@ -5863,7 +5863,7 @@ calendar-daylight-savings-starts, calendar-daylight-savings-ends. Add autoload of calendar-sunrise-sunset. (calendar-mode): Add description of sunrise/sunset capability. - (calendar-version): Changed to 5. + (calendar-version): Change to 5. * diary.el: Autoload diary-sunrise-sunset and diary-sabbath-candles. @@ -5915,10 +5915,10 @@ (all-christian-calendar-holidays, all-islamic-calendar-holidays) (list-diary-entries-hook, diary-display-hook) (nongregorian-diary-listing-hook, nongregorian-diary-marking-hook) - (diary-list-include-blanks): Added autoload cookie for these; + (diary-list-include-blanks): Add autoload cookie for these; Reingold's distribution suggests that these variables are ones that you are especially likely to want to customize. - * holiday.el (holidays): Added autoload cookie for this. + * holiday.el (holidays): Add autoload cookie for this. 1992-06-25 Edward M. Reingold (reingold@emr.cs.uiuc.edu) @@ -5953,7 +5953,7 @@ * dired.el: Complete rewrite, mostly by sk@thp.uni-koeln.de. * dired-aux.el: Other parts of dired. - * files.el (enable-local-eval): Renamed from `ignore-local-eval'; + * files.el (enable-local-eval): Rename from `ignore-local-eval'; now has values like `enable-local-variables'. (hack-local-variables): Test `enable-local-eval' properly. @@ -5974,7 +5974,7 @@ 1992-06-21 Jim Blandy (jimb@pogo.cs.oberlin.edu) - * screen.el (ctl-x-5-map): Removed declaration and initialization + * screen.el (ctl-x-5-map): Remove declaration and initialization of this here; it's done in subr.el, alongside ctl-x-4-map. * autoload.el (generate-file-autoloads): If FILE is in the same @@ -6003,7 +6003,7 @@ 1992-06-18 Jim Blandy (jimb@pogo.cs.oberlin.edu) - * edebug.el (edebug-debug): Added autoload cookie for this. + * edebug.el (edebug-debug): Add autoload cookie for this. * etags.el (find-tag-other-frame): New function. Bind it to `C-x 5 .'. @@ -6043,7 +6043,7 @@ now the keymap `isearch-mode-map' controls special characters in isearch-mode. - * blackbox.el (blackbox): Added ;;;###autoload cookie. + * blackbox.el (blackbox): Add ;;;###autoload cookie. * add-log.el (change-log-mode): Integrated some code from the `change-log-mode' function in `text-mode.el'. Docstring now @@ -6085,7 +6085,7 @@ 1992-06-12 Joseph Arceneaux (jla@churchy.gnu.ai.mit.edu) - * simple.el (current-kill): Fixed misnamed parameter and + * simple.el (current-kill): Fix misnamed parameter and reorganized code slightly. 1992-06-11 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -6122,7 +6122,7 @@ 1992-06-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) - * csharp.el (c-find-nesting): Renamed from csharp-find-nesting. + * csharp.el (c-find-nesting): Rename from csharp-find-nesting. Add autoload. All other functions in this file renamed to start with c-find-nesting. @@ -6204,7 +6204,7 @@ 1992-06-02 Roland McGrath (roland@geech.gnu.ai.mit.edu) * add-log.el: Fixed copyright years to not use a range. - (change-log-mode): Added docstring. + (change-log-mode): Add docstring. (add-change-log-entry): Put a space between the file name and "(function name):". Put a colon after the file name if we have found no function name. @@ -6247,7 +6247,7 @@ * fill.el (fill-region-as-paragraph): Treat } like closeparen. If a fill prefix is specified globally, always use that one. - * flow-ctrl.el (evade-flow-control-memstr=): Renamed from memstr=. + * flow-ctrl.el (evade-flow-control-memstr=): Rename from memstr=. 1992-05-31 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) @@ -6258,7 +6258,7 @@ 1992-05-31 Noah Friedman (friedman@splode.com) - * subr.el (lambda): Added docstring. + * subr.el (lambda): Add docstring. 1992-05-31 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) @@ -6286,7 +6286,7 @@ of writing out its code. * comint.el: Merged with Olin Shivers' comint version 2.03. - (comint-version): Changed accordingly. + (comint-version): Change accordingly. (comint-previous-input-matching): Bind this to c-m-r, rather than c-c c-r. (comint-exec-hook): Make this variable buffer-local. @@ -6300,8 +6300,8 @@ to "Non-echoed text: ". This conforms with the convention used by existing prompts, and gives more room to type stuff. - * comint.el (comint-last-input-start): New variable. In - particular, this helps support subprocesses that insist on echoing + * comint.el (comint-last-input-start): New variable. + In particular, this helps support subprocesses that insist on echoing their input. Added comments to porting guide indicating that this should probably not be used for implementing history stuff. (comint-mode): Create and initialize comint-last-input-start as a @@ -6340,9 +6340,9 @@ 1992-05-24 Edward M. Reingold (reingold@emr.cs.uiuc.edu) * calendar.el (list-yahrzeit-dates): New function. - (hebrew-calendar-yahrzeit): Moved from diary.el. + (hebrew-calendar-yahrzeit): Move from diary.el. - * diary.el (hebrew-calendar-yahrzeit): Moved to calendar.el. + * diary.el (hebrew-calendar-yahrzeit): Move to calendar.el. (diary-ordinal-suffix): Give correct suffix for 111, 112, 113, 211, 212, 213, etc. @@ -6361,7 +6361,7 @@ below instead of manipulating the kill ring directly, since the functions correctly deal with interprogram cutting and pasting. (kill-new): New function. - (kill-append): Added doc string. Be sure to call the + (kill-append): Add doc string. Be sure to call the interprogram-cut-function on the new string. (current-kill): New function. (rotate-yank-pointer): New optional argument do-not-move, to @@ -6388,7 +6388,7 @@ how many characters were saved, and it's hard to interpret intuitively. - * screen.el (ctl-x-3-map): Renamed to ctl-x-5-map, and now bound + * screen.el (ctl-x-3-map): Rename to ctl-x-5-map, and now bound to C-x 5, not C-x 3. This makes a nicer analogy with C-x 4. Moving split-window-horizontally to C-x 3 also makes a nicer analogy with C-x 2. @@ -6503,7 +6503,7 @@ 1992-04-21 Jim Blandy (jimb@pogo.cs.oberlin.edu) - * doctor.el (doctor-svo): Deleted second expression from top let + * doctor.el (doctor-svo): Delete second expression from top let binding; it used to read "(let ((foo <exp> sent)) ...)"; let bindings can only have one expression. @@ -6649,7 +6649,7 @@ * compile.el (compilation-mode-hook): New variable. (compilation-mode): Run it. (compilation-search-path): Made user variable, added autoload cookie. - (compilation-window-height): Added autoload cookie. + (compilation-window-height): Add autoload cookie. 1992-02-27 Jim Blandy (jimb@pogo.cs.oberlin.edu) @@ -6720,7 +6720,7 @@ 1992-01-08 Jim Blandy (jimb@occs.cs.oberlin.edu) - * simple.el (temporary-goal-column): Added missing closing paren. + * simple.el (temporary-goal-column): Add missing closing paren. 1991-12-25 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -6752,7 +6752,7 @@ 1991-12-14 Eric S. Raymond (eric@mole.gnu.ai.mit.edu) - * etags.el (find-tag-noselect): Fixed subtle bug due to + * etags.el (find-tag-noselect): Fix subtle bug due to save-excursion. (tags-tag-match): New function, made smarter about exact matches. @@ -6803,7 +6803,7 @@ 1991-12-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) * diff.el (diff-internal-diff): New subroutine. - (diff): Removed from here. + (diff): Remove from here. (diff-sccs, diff-rcs): New commands using diff-internal-diff. (diff-rcs-extension): New variable. @@ -6855,7 +6855,7 @@ 1991-11-06 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) * screen.el (screen-initialize, screen-notice-user-settings): - Renamed global-minibuffer-screen to default-minibuffer-screen. + Rename global-minibuffer-screen to default-minibuffer-screen. 1991-11-05 Edward M. Reingold (reingold@emr.cs.uiuc.edu) @@ -6864,8 +6864,8 @@ 1991-10-31 Richard Mlynarik (mly@peduncle) - * ebuff-menu.el (electric-buffer-menu-mode-map): Define - < and > to scroll-left and scroll-right per user suggestion. + * ebuff-menu.el (electric-buffer-menu-mode-map): + Define < and > to scroll-left and scroll-right per user suggestion. 1991-10-31 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) @@ -6881,7 +6881,7 @@ * cmushell.el: This is now the real shell.el. Removed the "cmu" prefix from names. - (shell): Marked this to be autoloaded. + (shell): Mark this to be autoloaded. 1991-10-29 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) @@ -6902,8 +6902,8 @@ 1991-10-26 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) * disass.el (disassemble): Correctly distinguish functions with no - interactive spec and functions that are (interactive). Correctly - extract components of explicit calls to byte-code (old-style + interactive spec and functions that are (interactive). + Correctly extract components of explicit calls to byte-code (old-style compiled functions). Correctly pass byte code of function to disassemble-1. (disassemble-1): Use nth to extract components of explicit call to @@ -6923,14 +6923,14 @@ 1991-10-15 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) - * info.el (Info-follow-nearest-node): Adjusted for new return + * info.el (Info-follow-nearest-node): Adjust for new return value format from coordinates-in-window-p. 1991-10-08 Roland McGrath (roland@albert.gnu.ai.mit.edu) * add-log.el (change-log-name): New fn. - (add-change-log-entry, add-change-log-entry-other-window): All - args optional. FILE-NAME defaults to new var + (add-change-log-entry, add-change-log-entry-other-window): + All args optional. FILE-NAME defaults to new var `change-log-default-name'. Give this var a local value in the buffer we were run from, pointing to the file we found. @@ -6972,7 +6972,7 @@ 1991-09-26 Roland McGrath (roland@churchy.gnu.ai.mit.edu) - * map-ynp.el (map-y-or-n-p): Fixed for lists containing nil. + * map-ynp.el (map-y-or-n-p): Fix for lists containing nil. 1991-09-10 Roland McGrath (roland@wookumz.gnu.ai.mit.edu) @@ -7034,7 +7034,7 @@ * rmail.el (rmail-convert-to-babyl-format): Roland added the missing paren in the wrong place; fixed. - * screen.el (screen-initialize): Added missing `function' around + * screen.el (screen-initialize): Add missing `function' around lambda expression. 1991-08-20 Roland McGrath (roland@churchy.gnu.ai.mit.edu) @@ -7063,7 +7063,7 @@ 1991-08-17 Roland McGrath (roland@geech.gnu.ai.mit.edu) * doctor.el (doctor-strangelove): New fn. - (doctor-member): Removed. + (doctor-member): Remove. (doctor-doc): Use member instead of doctor-member. (doctor-rms): Restored. @@ -7073,7 +7073,7 @@ 1991-08-15 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) - * screen.el (screen-create-initial-screen): Renamed to + * screen.el (screen-create-initial-screen): Rename to screen-initialize. Arrange to cause errors if people try to create screens when no window system is running. @@ -7085,14 +7085,14 @@ * loaddefs.el (ctl-x-4-map): Move definition from here... * subr.el (ctl-x-4-map): To here. (ctl-x-3-map): New prefix. - (mouse-map): Deleted. + (mouse-map): Delete. * screen.el (new-screen-x-delta, new-screen-y-delta) - (new-screen-position): Removed. - (new-screen): Simplified. - (split-to-other-screen): Removed. + (new-screen-position): Remove. + (new-screen): Simplify. + (split-to-other-screen): Remove. (switch-to-buffer-other-screen, find-file-other-screen) - (find-file-read-only-other-screen, mail-other-screen): Moved, along + (find-file-read-only-other-screen, mail-other-screen): Move, along with their keybindings, to... * files.el (switch-to-buffer-other-screen, find-file-other-screen) (find-file-read-only-other-screen): Here... @@ -7136,11 +7136,11 @@ * screen.el, term/x-win.el: Renamed screen-default-alist to default-screen-alist. - (default-screen-alist): Moved declaration to screen.c; the + (default-screen-alist): Move declaration to screen.c; the screen creation subrs should consult this transparently. - * term/x-win.el (x-get-resources, x-pop-initial-window): Functions - deleted. Don't call them at the bottom of the file anymore. + * term/x-win.el (x-get-resources, x-pop-initial-window): + Functions deleted. Don't call them at the bottom of the file anymore. 1991-08-12 Roland McGrath (roland@geech.gnu.ai.mit.edu) @@ -7152,15 +7152,15 @@ 1991-08-12 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) * window.el (split-window-keep-point): New user option. - (split-window-vertically): Modified to support it. + (split-window-vertically): Modify to support it. * startup.el (command-line): Choose a default value for split-window-keep-point according to the baud rate. * term/x-win.el: Set split-window-keep-point. 1991-08-10 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) - * term/x-win.el (x-daemon-mode, x-establish-daemon-mode): Removed - these functions; we do this differently now. + * term/x-win.el (x-daemon-mode, x-establish-daemon-mode): + Remove these functions; we do this differently now. 1991-08-07 Roland McGrath (roland@geech.gnu.ai.mit.edu) @@ -7169,7 +7169,7 @@ 1991-08-05 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) - * screen.el (screen-creation-func): Renamed to + * screen.el (screen-creation-func): Rename to screen-creation-function, as per the convention. * screen.el (screen-creation-func): Do not initialize this @@ -7184,7 +7184,7 @@ * startup.el (pre-init-hook): New variable. (window-setup-hook): Doc fix. (command-line): Call pre-init-hook. - (command-line-1): Updated copyright date. + (command-line-1): Update copyright date. 1991-07-31 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) @@ -7193,7 +7193,7 @@ 1991-07-31 Roland McGrath (roland@churchy.gnu.ai.mit.edu) - * screen.el (auto-new-screen-function): Renamed to + * screen.el (auto-new-screen-function): Rename to pop-up-screen-function. (buffer-in-other-screen): Use pop-up-screens, not auto-new-screen. @@ -7239,12 +7239,12 @@ * view.el: (define-key "C-xv" 'view-file). (view-file-other-window, view-buffer-other-window): New functions. - (view-prev-buffer): Renamed to view-return-here. + (view-prev-buffer): Rename to view-return-here. (view-exit): If view-return-here is a buffer, switch to it; if it is a window configuration, apply it. - * subr.el (search-forward-regexp, search-backward-regexp): Added - alternate names. + * subr.el (search-forward-regexp, search-backward-regexp): + Add alternate names. 1991-07-24 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) @@ -7256,7 +7256,7 @@ * isearch.el (isearch): If the user switches to a different screen, exit the isearch. - * isearch.el (isearch): Changed reference to `cmds' to use + * isearch.el (isearch): Change reference to `cmds' to use variable's new name `history'. 1991-07-23 Roland McGrath (roland@churchy.gnu.ai.mit.edu) @@ -7264,7 +7264,7 @@ * rmail.el (rmail-first-unseen-message): Make loop looking for unseen msgs not skip the first one. - * rmail.el (rmail-widen-to-current-msgbeg): Added missing close paren. + * rmail.el (rmail-widen-to-current-msgbeg): Add missing close paren. 1991-07-21 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) @@ -7286,7 +7286,7 @@ 1991-07-19 Roland McGrath (roland@albert.gnu.ai.mit.edu) - * files.el (save-some-buffers): Added save-excursions around code + * files.el (save-some-buffers): Add save-excursions around code that does set-buffer. 1991-07-15 Roland McGrath (roland@churchy.gnu.ai.mit.edu) @@ -7297,7 +7297,7 @@ (find-tag-tag): Pass 'tags-completion-alist as TABLE to completing-read, so the table is built on demand. - * sendmail.el (mail-do-fcc): Added missing close paren. + * sendmail.el (mail-do-fcc): Add missing close paren. 1991-07-15 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) @@ -7313,8 +7313,8 @@ * fortran.el version 1.28.3 Now works in either mode when `tab-width' is not 8. - (fortran-electric-line-number, fortran-indent-to-column): Use - `fortran-minimum-statement-indent' instead of 8. + (fortran-electric-line-number, fortran-indent-to-column): + Use `fortran-minimum-statement-indent' instead of 8. (fortran-current-line-indentation): Now skips over line number and whitespace correctly when tab-width is not 8. @@ -7331,7 +7331,7 @@ * startup.el (command-line): Remove the arguments from command-line-args as we process them. - (command-line-1): Removed code to ignore the arguments processed + (command-line-1): Remove code to ignore the arguments processed in command-line, because they're all deleted now. * replace.el (occur): Set tem to the location of the match before @@ -7351,7 +7351,7 @@ 1991-07-09 Roland McGrath (roland@albert.gnu.ai.mit.edu) - * map-ynp.el (map-y-or-n-p): Fixed lossage on ? or random char. + * map-ynp.el (map-y-or-n-p): Fix lossage on ? or random char. 1991-07-08 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -7368,8 +7368,8 @@ * fortran.el: Added ;;;###autoload definition for fortran-tab-mode-default variable. - * fortran.el (fortran-numerical-continuation-char): Replace - (backward-line 1) with (forward-line -1) since backward-line is + * fortran.el (fortran-numerical-continuation-char): + Replace (backward-line 1) with (forward-line -1) since backward-line is defined only in edt. (fortran-previous-statement): Fix error in parens. (fortran-indent-to-column): Likewise. @@ -7378,7 +7378,7 @@ * files.el (save-some-buffers): Use map-y-or-n-p return value. - * map-ynp.el (map-y-or-n-p): Fixed bug that caused first elt on ! + * map-ynp.el (map-y-or-n-p): Fix bug that caused first elt on ! hit not get acted on. 1991-07-04 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -7390,7 +7390,7 @@ 1991-07-01 Roland McGrath (roland@churchy.gnu.ai.mit.edu) - * map-ynp.el (map-y-or-n-p): Fixed misplaced paren. + * map-ynp.el (map-y-or-n-p): Fix misplaced paren. Fixed list-eating bug. 1991-07-01 Richard Stallman (rms@mole.gnu.ai.mit.edu) @@ -7425,7 +7425,7 @@ 1991-06-20 Jim Blandy (jimb@wookumz.gnu.ai.mit.edu) - * subr.el (ignore): Added docstring for this; it appears as a key + * subr.el (ignore): Add docstring for this; it appears as a key binding, so it ought to be described. 1991-06-19 Roland McGrath (roland@albert.gnu.ai.mit.edu) @@ -7443,16 +7443,16 @@ 1991-06-12 Roland McGrath (roland@albert.gnu.ai.mit.edu) - * upd-copyr.el (update-copyright): Fixed typo in help text. + * upd-copyr.el (update-copyright): Fix typo in help text. 1991-05-26 Roland McGrath (roland@albert.gnu.ai.mit.edu) - * disass.el (disassemble-internal): Fixed typo string? -> stringp. + * disass.el (disassemble-internal): Fix typo string? -> stringp. 1991-05-26 Edward M. Reingold (reingold@emr.cs.uiuc.edu) - * holiday.el (calendar-holiday-function-passover-etc): Correct - date and spelling of Yom HaAtzma'ut. + * holiday.el (calendar-holiday-function-passover-etc): + Correct date and spelling of Yom HaAtzma'ut. 1991-05-23 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) @@ -7501,14 +7501,14 @@ screen-default-alist alone; don't use x-switches-specified. (x-read-resources): New function to read the X defaults and put them in screen-default-alist. Call this function at the bottom. - * screen.el (death-function): Removed, because this is now handled + * screen.el (death-function): Remove, because this is now handled better in startup.el. (pop-initial-screen): Don't do a condition-case to call death-function. 1991-05-18 Jim Blandy (jimb@pogo.gnu.ai.mit.edu) - * macros.el (apply-macro-to-region-lines): Added a save-excursion + * macros.el (apply-macro-to-region-lines): Add a save-excursion around the macro invocation, so that the macro doesn't need to stay on the same line. @@ -7614,7 +7614,7 @@ * find-dired.el (find-dired-filter): Don't search; use forward-line instead. - (find-dired-filter, find-dired-sentinel): Changed docstrings to + (find-dired-filter, find-dired-sentinel): Change docstrings to comments. 1991-05-11 Roland McGrath (roland@albert.gnu.ai.mit.edu) @@ -7755,8 +7755,8 @@ Now supports tab or fixed format style of continuation control and indentation. In tab style, lines start with a tab, or a line number followed by a tab. If the first character after the tab is - a digit from 1 to 9, the line is a continuation line. When - entering fortran mode for a file, the first line that begins with + a digit from 1 to 9, the line is a continuation line. + When entering fortran mode for a file, the first line that begins with 6 spaces or a tab is found. The buffer is then set respectively to either fixed format or tab format style. The mode may be toggled with the command fortran-tab-mode. @@ -7965,7 +7965,7 @@ 1991-02-25 Paul Hilfinger (hilfingr@hilfinger.cs.nyu.edu) - * fill.el (fill-individual-paragraphs): Changed response to mailp + * fill.el (fill-individual-paragraphs): Change response to mailp to effect only leading lines in a region (was getting confused about colons embedded in ordinary text). Changed method of moving to next paragraph in the main loop to use forward-paragraph @@ -7978,7 +7978,7 @@ 1991-02-23 Roland McGrath (mcgrath@cygint.cygnus.com) - * compile.el (next-error): Fixed bug in rms's optimization. + * compile.el (next-error): Fix bug in rms's optimization. 1991-02-23 Richard Stallman (rms@mole.ai.mit.edu) @@ -8040,7 +8040,7 @@ 1991-02-04 Jim Blandy (jimb@gnu.ai.mit.edu) - * simple.el (eval-current-buffer): Removed, since it has been + * simple.el (eval-current-buffer): Remove, since it has been reintroduced to the C code. 1991-02-02 Jim Blandy (jimb@gnu.ai.mit.edu) @@ -8114,8 +8114,8 @@ * bibtex.el: Expanded the various bibtex-field-* patterns to allow fields like 'title = poft # "Fifth Triquaterly" # random-conf,'. Needs to have more work done to accept all cases. Added code for - the bibtex 'crossref' command, which subsumes other options. Made - field ordering different when this option on. Also allow user to + the bibtex 'crossref' command, which subsumes other options. + Made field ordering different when this option on. Also allow user to have a list of field to be added to all entries (bibtex-mode-user-optional-fields). Merged in Bengt Martensson's changes. @@ -8148,13 +8148,13 @@ 1991-01-08 Roland McGrath (roland@albert.ai.mit.edu) - * compile.el (compilation-parse-errors): Fixed maintenance of + * compile.el (compilation-parse-errors): Fix maintenance of last-linenum, so dups are really found. 1991-01-08 Jim Blandy (jimb@pogo.ai.mit.edu) - * bytecomp.el (byte-compile-byte-code-maker): Since - byte-compile-lambda is free to return the original lambda + * bytecomp.el (byte-compile-byte-code-maker): + Since byte-compile-lambda is free to return the original lambda expression, we'd better be prepared to handle things that aren't bytecode objects. @@ -8242,8 +8242,8 @@ 1990-12-20 Chris Hanson (cph@kleph) - * texnfo-upd.el (texinfo-update-menu-region-beginning): Change - code that searches for "top" node so it returns the position of + * texnfo-upd.el (texinfo-update-menu-region-beginning): + Change code that searches for "top" node so it returns the position of the beginning of the node line. Always search from the buffer's start when looking for that node. (texinfo-make-one-menu): Bump forward over the outer node line. @@ -8317,7 +8317,7 @@ 1990-12-12 Roland McGrath (roland@albert.ai.mit.edu) - * compile.el (compilation-error-buffer): Removed. + * compile.el (compilation-error-buffer): Remove. (compilation-last-buffer): Now last buffer in which any of: started compilation; C-x `; C-c C-c; was done. (compile-internal): Don't set compilation-error-buffer. @@ -8340,7 +8340,7 @@ error-message, and regexp-alist. (compile-internal): Do it here, after calling compilation-mode. - * compile.el (compilation-error-list): Changed elt format. + * compile.el (compilation-error-list): Change elt format. (compilation-parse-errors): Don't find files when parsing. Instead record ((DIR . FILE) . LINENO) structures to describe each error. @@ -8401,35 +8401,35 @@ 1990-11-30 Mike Newton (newton@gumby.cs.caltech.edu) - * bibtex.el (start comments): Added earlier comments of Bengt + * bibtex.el (start comments): Add earlier comments of Bengt Martensson. Some of the changes listed below are originally his (including clean-entry, OPTkey and OPTannote, the function renaming and the preamble code). - * bibtex.el (bibtex-field-* patterns): Expanded to allow fields + * bibtex.el (bibtex-field-* patterns): Expand to allow fields like 'title = poft # "Fifth Triquaterly" # random-conf,'. Needs to have more work done to accept all cases. - * bibtex.el (bibtex-clean-entry-zap-empty-opts): Added. + * bibtex.el (bibtex-clean-entry-zap-empty-opts): Add. - * bibtex.el (bibtex-include-OPTcrossref): Added. If set, changes + * bibtex.el (bibtex-include-OPTcrossref): Add. If set, changes order of the lists presented to luser. - * bibtex.el (bibtex-include-OPTkey & bibtex-include-OPTannote): Added. + * bibtex.el (bibtex-include-OPTkey & bibtex-include-OPTannote): Add. * bibtex.el (bibtex-mode-user-optional-fields): Can be set to a list of field the user wants to add to entries. - * bibtex.el (bibtex-mode documentation string): Updated for new changes, + * bibtex.el (bibtex-mode documentation string): Update for new changes, DEAthesis added back in, bibtex-preamble call added. * bibtex.el (bibtex-entry): Add OPTkey/annote. If OPTcrossref set then put it in. - * bibtex.el (bibtex-make-entry): Renamed bibtex-make-field. + * bibtex.el (bibtex-make-entry): Rename bibtex-make-field. - * bibtex.el (bibtex-make-optional-entry): Renamed - bibtex-make-optional-field. + * bibtex.el (bibtex-make-optional-entry): + Rename bibtex-make-optional-field. * bibtex.el (bibtex-Article): Change order of presentation if OPTcrossref is set. @@ -8443,16 +8443,16 @@ * bibtex.el (bibtex-InProceedings): Change order of presentation if OPTcrossref is set. - * bibtex.el (bibtex-MastersThesis): Added "note". + * bibtex.el (bibtex-MastersThesis): Add "note". - * bibtex.el (bibtex-preamble): Added. + * bibtex.el (bibtex-preamble): Add. * bibtex.el (bibtex-inside-field): Only go backwards if quote is there. - * bibtex.el (bibtex-clean-entry): Added call to + * bibtex.el (bibtex-clean-entry): Add call to bibtex-clean-entry-zap-empty-opts, OPT field testing for errors. - * bibtex.el (bibtex-x-help): Added options Conference and preamble, + * bibtex.el (bibtex-x-help): Add options Conference and preamble, restored DEAthesis. 1990-11-30 Richard Stallman (rms@mole.ai.mit.edu) @@ -8552,7 +8552,7 @@ (insert-hebrew-diary-entry, insert-monthly-hebrew-diary-entry) (insert-yearly-hebrew-diary-entry, insert-islamic-diary-entry) (insert-monthly-islamic-diary-entry) - (insert-yearly-islamic-diary-entry): Modified so that if a prefix arg + (insert-yearly-islamic-diary-entry): Modify so that if a prefix arg is supplied these make nonmarking diary entries; otherwise the entries made are marking. (insert-block-diary-entry, insert-anniversary-diary-entry) @@ -8572,27 +8572,27 @@ 1990-11-06 Ed Reingold (reingold@emr.cs.uiuc.edu) * calendar.el (sexp-diary-entry-symbol): New variable. - (cursor-to-iso-calendar-date): Simplified, slightly. - (cursor-to-calendar-day-of-year): Fixed punctuation. - (cursor-to-french-calendar-date): Moved French names to arrays. + (cursor-to-iso-calendar-date): Simplify, slightly. + (cursor-to-calendar-day-of-year): Fix punctuation. + (cursor-to-french-calendar-date): Move French names to arrays. * diary.el (list-sexp-diary-entries, diary-sexp-entry, diary-cyclic) (diary-hebrew-date, diary-iso-date, diary-day-of-year) (diary-float, diary-islamic-date, diary-anniversary, diary-block) (diary-french-date, diary-omer, diary-yahrzeit, diary-parasha) (diary-rosh-hodesh, hebrew-calendar-parasha-name): New functions. - (list-diary-entries): Added call to (list-sexp-diary-entries) and + (list-diary-entries): Add call to (list-sexp-diary-entries) and fixed an obscure error that caused a diary entry to be missed if it was preceded by an empty entry of the same style. - (list-hebrew-diary-entries, list-islamic-diary-entries): Fixed an + (list-hebrew-diary-entries, list-islamic-diary-entries): Fix an obscure error that caused a diary entry to be missed if it was preceded by an empty entry of the same style. - (mark-islamic-calendar-date-pattern): Renamed some local variables + (mark-islamic-calendar-date-pattern): Rename some local variables more appropriately. 1990-11-05 Roland McGrath (roland@geech.ai.mit.edu) - * compile.el (compilation-window-height): Added defconst for this, + * compile.el (compilation-window-height): Add defconst for this, since it somehow disappeared. * compile.el: Unoverhauled. Restored from old 19 compile.el, plus @@ -8622,7 +8622,7 @@ called to generate a name for a compilation buffer. Passed one arg, the name of the major mode of the buffer. (compile-internal): Use it. [From tale's changes:] - (compile): Moved window enlarging to compile-internal. + (compile): Move window enlarging to compile-internal. (compile-internal): Don't use with-output-to-temp-buffer. Use display-buffer instead. @@ -8704,10 +8704,10 @@ 1990-10-23 David Lawrence (tale@pogo.ai.mit.edu) - * emerge.el (emerge-setup, emerge-setup-with-ancestor): Moved - insert-buffer calls back before call to emerge-extract-diffs where + * emerge.el (emerge-setup, emerge-setup-with-ancestor): + Move insert-buffer calls back before call to emerge-extract-diffs where the merge-buffer really needs to have something in it. - (emerge-extract-diffs,emerge-extract-diffs3): Moved errant + (emerge-extract-diffs,emerge-extract-diffs3): Move errant kill-buffer which interfered with return value of functions. 1990-10-22 David Lawrence (tale@pogo.ai.mit.edu) @@ -8782,7 +8782,7 @@ (texinfo-menu-locate-entry-p, texinfo-copy-menu-title) (texinfo-update-menu-region-beginning, texinfo-update-menu-region-end): Handle `@ifinfo' as well as comment line following node line. - (texinfo-multiple-files-update and aux. files): Added to handle + (texinfo-multiple-files-update and aux. files): Add to handle multi-file Texinfo sources. 1990-10-18 Richard Stallman (rms@mole.ai.mit.edu) @@ -8830,9 +8830,9 @@ * dired.el (dired-compress, dired-uncompress): Put output from subprocess in a buffer to display it. - * appt.el (fix-time): Deleted. - (appt-select-lowest-window): Renamed from select-lowest-window. - (appt-visible): Renamed from appt-visable. + * appt.el (fix-time): Delete. + (appt-select-lowest-window): Rename from select-lowest-window. + (appt-visible): Rename from appt-visable. * time.el (display-time-filter): Run display-time-hook. @@ -8842,10 +8842,10 @@ 1990-10-08 Ed Reingold (reingold@emr.cs.uiuc.edu) - * holiday.el (calendar-holiday-function-hebrew): Fixed minor problem + * holiday.el (calendar-holiday-function-hebrew): Fix minor problem with the code to short-circuit the calculations to save time. - * diary.el (mark-hebrew-calendar-date-pattern): Fixed minor problem + * diary.el (mark-hebrew-calendar-date-pattern): Fix minor problem with the code to short-circuit the calculations to save time. 1990-10-08 Richard Stallman (rms@mole.ai.mit.edu) @@ -8957,7 +8957,7 @@ 1990-09-18 Richard Stallman (rms@mole.ai.mit.edu) - * doctor.el (doctor-caddr, doctor-cadr, doctor-cddr): Renamed. + * doctor.el (doctor-caddr, doctor-cadr, doctor-cddr): Rename. 1990-09-13 Richard Stallman (rms@mole.ai.mit.edu) @@ -8979,7 +8979,7 @@ 1990-09-10 Ed Reingold (reingold@emr.cs.uiuc.edu) * diary.el (list-diary-entries, list-hebrew-diary-entries) - (list-islamic-diary-entries): Fixed to use add-to-diary-list. + (list-islamic-diary-entries): Fix to use add-to-diary-list. 1990-09-10 Chris Hanson (cph@kleph) @@ -9039,7 +9039,7 @@ * diary.el (mark-diary-entries, mark-islamic-diary-entries) (mark-hebrew-diary-entries): Eliminated use of constant alists for month and day names. - (prepare-fancy-diary-buffer): Fixed the way holidays are displayed + (prepare-fancy-diary-buffer): Fix the way holidays are displayed when there are no diary entries but lots of holidays. (ordinary-list-diary-hook, add-to-diary-list): New functions. @@ -9049,21 +9049,21 @@ Changed reference at beginning of file from the report to the published version of the paper. Changed all calls to `mod' to call `%' to avoid problem with cl. - (calendar-date-string): Added optional parameter `nodayname'. - (cursor-to-islamic-calendar-date): Fixed so that + (calendar-date-string): Add optional parameter `nodayname'. + (cursor-to-islamic-calendar-date): Fix so that calendar-date-string doesn't try find the day name. - (cursor-to-hebrew-calendar-date): Fixed so that + (cursor-to-hebrew-calendar-date): Fix so that calendar-date-string doesn't try find the day name. nongregorian-diary-marking-hook: Fixed typo in doc string. - (calendar-mode): Fixed a typo in doc string. + (calendar-mode): Fix a typo in doc string. (cursor-to-iso-calendar-date): Made message consistent with similar functions for Julian, Islamic, Hebrew, and French calendars. - (calendar-absolute-from-gregorian): Simplified calculation. - (calendar-mark-today): Changed today mark to `=' to avoid + (calendar-absolute-from-gregorian): Simplify calculation. + (calendar-mark-today): Change today mark to `=' to avoid confusion with the default holiday mark. (calendar-julian-from-absolute): Rewrote parallel to other functions. (calendar-islamic-from-absolute): Rewrote parallel to other functions. - (calendar-forward-day): Fixed movement when cursor is not on a date + (calendar-forward-day): Fix movement when cursor is not on a date and arg is negative. Added description of new `if' form to doc string for calendar-holidays. @@ -9074,10 +9074,10 @@ * holiday.el: Changed all calls to `mod' to call `%' to avoid problem with cl. - (calendar-holiday-function-rosh-hashanah-etc): Fixed grammatical + (calendar-holiday-function-rosh-hashanah-etc): Fix grammatical error in a comment. - (calendar-holiday-function-hebrew): Fixed typo in doc string. - (calendar-holiday-function-islamic): Fixed typo in doc string. + (calendar-holiday-function-hebrew): Fix typo in doc string. + (calendar-holiday-function-islamic): Fix typo in doc string. (calendar-holiday-function-if): New function. 1990-09-06 Richard Stallman (rms@mole.ai.mit.edu) @@ -9114,12 +9114,12 @@ * loaddefs.el: (gnus, gnus-post-news): Autoload gnus. (sendnews, postnews): fset to gnus-post-news instead of news-post-news. - (rnews, news-post-news): Removed autoloads. + (rnews, news-post-news): Remove autoloads. * gnus.el: New file. - (gnus-make-newsrc-file): Removed. + (gnus-make-newsrc-file): Remove. (gnus-read-newsrc-file): Work without above. - (gnus-Info-directory): Removed. + (gnus-Info-directory): Remove. (gnus-Info-find-node): Work without above. (lots of variables): Made non-interactive. Some doc fixes. @@ -9151,7 +9151,7 @@ (fortran-current-line-indentation): Only skip over continuation char or line number for statements. It was giving back wrong values for statements which started in columns 1-6. - (fortran-mode-version): Removed. + (fortran-mode-version): Remove. 1990-08-28 David Lawrence (tale@pogo.ai.mit.edu) @@ -9161,8 +9161,8 @@ copy-vector. Calling copy-sequence does the job. (defsetf for point): Point's inverse is goto-char. Of course, what do we do with the other basic types of Emacs Lisp? - (member): Another, perhaps counterproductive, speed hack. When - test or testnot are symbols (hopefully, non-null), they are + (member): Another, perhaps counterproductive, speed hack. + When test or testnot are symbols (hopefully, non-null), they are replaced by their symbol-function slots. This presumably reduces one indirection per each funcall in the inner loop. (byte-compile-named-list-accessors): Another byte-compile @@ -9172,7 +9172,7 @@ (with-keyword-args): Macro that simplifies most of the handling of klists. The only neglected functionality is that no supplied-p forms exist (although that is true also of lambda lists in Emacs Lisp). - (cl-eval-print-last-sexp): Added half-hearted support for -, +, + (cl-eval-print-last-sexp): Add half-hearted support for -, +, ++, +++, *, **, ***, /, //, ///; and cleared the mvalues mechanism at every call. (declare, proclaim, the): Make some more CL codes easy to load. @@ -9183,7 +9183,7 @@ (byte-compile-ca*d*r): New function, used as a handler from byte-compile-form to eliminate the extra call to the c*r functions in compiled code. - (adjoin, map): Changed to use `memq' instead of `member', too. + (adjoin, map): Change to use `memq' instead of `member', too. (case, ecase): Via a change in case-clausify, these macros now generate tests using the primitive `memq', instead of the heavier `member'. @@ -9203,8 +9203,8 @@ functions. (build-klist): Better error messages. (psetf): Rewrote, patterned after the new psetq. - (psetq): Added early check for even number of arguments. This - causes a better error message than previously. + (psetq): Add early check for even number of arguments. + This causes a better error message than previously. (defstruct, parse$defstruct$options): asp@CS.CMU.EDU (James Aspnes) reported that defstruct wasn't handling properly the use of accessors of an :included definition applied to instances of @@ -9252,8 +9252,8 @@ *Completions* not *Help*. * help.el (describe-mode): Use Dale Worley's version to also show - minor mode documentation if argument is given. Fset - defining-keyboard-macro to start-keyboard-macro so its + minor mode documentation if argument is given. + Fset defining-keyboard-macro to start-keyboard-macro so its documentation can be found. Currently does not work with auto-fill-mode because of the hook nature of its minor mode indicator variable. @@ -9357,7 +9357,7 @@ 1990-07-26 David Lawrence (tale@pogo.ai.mit.edu) * c-mode.el (c-auto-newline): Doc addition. - (electric-c-terminator): Removed bogus set-marker. + (electric-c-terminator): Remove bogus set-marker. (electric-c-sharp-sign): Make sure c-auto-newline is nil for call to electric-c-terminator. @@ -9464,7 +9464,7 @@ * compile.el (grep): Use `grep-command' to also hold args for grep, like compile-command. - * simple.el (kill-ring-save): Fixed to not reference free + * simple.el (kill-ring-save): Fix to not reference free variable `verbose' but to just unconditionally echo message. (shell-command): Use new `last-shell-command' interactively. (shell-command-on-region): Use new `last-shell-command-on-region' @@ -9478,7 +9478,7 @@ 1990-06-23 Randall Smith (randy@substantia-nigra) - * dired.el (dired-flag-regexp-files): Added function to flag all + * dired.el (dired-flag-regexp-files): Add function to flag all files matching a REGEXP for deletion. (): Bound this function to key "F" in dired-mode ("D" was already taken). @@ -9506,8 +9506,8 @@ * isearch.el (isearch): Do exit on meta keys. Also exit on function keys and mouse clicks. * loaddefs.el (search-exit-char): Change back to escape. - (search-ring-advance-char): Moved from isearch.el. - (search-ring-retreat-char): Renamed from ...-recline-char and moved. + (search-ring-advance-char): Move from isearch.el. + (search-ring-retreat-char): Rename from ...-recline-char and moved. * float.el: Provide 'float. @@ -9561,7 +9561,7 @@ updated all existing menus (very time consuming). (texinfo-all-menus-update, texinfo-every-node-update): - Added a save-excursion to each so that point does not move when + Add a save-excursion to each so that point does not move when you update the menus or nodes. * texinfmt.el (texinfo-format-parse-args): Expand arguments so @@ -9572,16 +9572,16 @@ * backquote.el (bq-splicequote): Correctly splice in elements when followed by constant elements; don't list the constant elements. - * add-log.el (add-change-log-entry): Fixed match test for full name. + * add-log.el (add-change-log-entry): Fix match test for full name. - * lpr.el (print-buffer): Removed an extra trailing parenthesis. + * lpr.el (print-buffer): Remove an extra trailing parenthesis. 1990-05-30 David Lawrence (tale@geech) * comint.el (comint-load-hook): Superseded by eval-after-load. - * inf-lisp.el (lisp-eval-region, lisp-compile-region): Use - temporary files instead of send-string to avoid problems with pty + * inf-lisp.el (lisp-eval-region, lisp-compile-region): + Use temporary files instead of send-string to avoid problems with pty buffering. * tex-mode.el (tex-close-latex-block): Allow whitespace after @@ -9629,7 +9629,7 @@ * informat.el (Info-tagify): Give status messages before and after tagifying. - (batch-info-validate): Removed status messages around Info-tagify. + (batch-info-validate): Remove status messages around Info-tagify. * rmailout.el (rmail-output): Check for From:, Really-From: and Sender: fields, in that order, and run mail-strip-quoted-names on @@ -9637,13 +9637,13 @@ 1990-05-21 Richard Stallman (rms@mole.ai.mit.edu) - * buff-menu.el (Buffer-menu-buffer): Simplified. + * buff-menu.el (Buffer-menu-buffer): Simplify. Set Buffer-menu-buffer-column initially. 1990-05-18 Robert J. Chassell (bob@apple-gunkies) * page-ext.el (pages-addresses-file-name): - Renamed from addresses-file-name. + Rename from addresses-file-name. 1990-05-17 Robert J. Chassell (bob@apple-gunkies) @@ -9990,12 +9990,12 @@ * screen.el (iconify-function, iconify-emacs, deiconify-function): New functions. - * files.el (save-some-buffers): Removed last parameter skip-list. + * files.el (save-some-buffers): Remove last parameter skip-list. Now this checks for buffer-local variable save-buffers-skip to determine whether or not to avoid asking to save the buffer. - * rmail.el (rmail-mode): Removed skip-list stuff. + * rmail.el (rmail-mode): Remove skip-list stuff. (rmail-variables): make-local-variable save-buffers-skip. - * compile.el (compile): Removed additional parameter to save-buffers. + * compile.el (compile): Remove additional parameter to save-buffers. 1990-02-26 David Lawrence (tale@pogo.ai.mit.edu) @@ -10004,21 +10004,21 @@ display-time-string. (rmail-pop-up): Default display-time-hook to automatically retrieve new mail if the variable rmail-pop-up is non-nil. - (add-clock-handler): Removed; superseded by timer.el. + (add-clock-handler): Remove; superseded by timer.el. * loaddefs.el: Removed add-clock-handler. 1990-02-25 David Lawrence (tale@pogo.ai.mit.edu) * c++-mode.el: New file. - (point-bol): Removed this function. + (point-bol): Remove this function. * loaddefs.el: Autoload C++-mode. (auto-mode-alist): c++-mode for .C and .cc files. 1990-02-25 Joseph Arceneaux (jla@gnu.ai.mit.edu) - * lisp-mode.el (indent-sexp): Changed opoint to last-point. + * lisp-mode.el (indent-sexp): Change opoint to last-point. Very strange, I thought I'd already fixed this. * screen.el: New file. @@ -10048,11 +10048,11 @@ * files.el (file-newest-backup): Return either the name of an existing backup file or nil if none exists. - * server.el (server-program): Renamed from "server" to "emacsserver". + * server.el (server-program): Rename from "server" to "emacsserver". 1990-02-20 Joseph Arceneaux (jla@gnu.ai.mit.edu) - * fill.el (fill-region-as-paragraph): Fixed regexp typo in call to + * fill.el (fill-region-as-paragraph): Fix regexp typo in call to re-search-forward. 1990-02-19 David Lawrence (tale@pogo.ai.mit.edu) @@ -10110,9 +10110,9 @@ * calendar.el (french-calendar-leap-year-p): Rewritten with corrected rule. - (calendar-absolute-from-french): Fixed comments. + (calendar-absolute-from-french): Fix comments. (calendar-french-from-absolute): Rewrote using calendar-sum. - (cursor-to-french-calendar-date): Simplified and corrected spelling. + (cursor-to-french-calendar-date): Simplify and corrected spelling. 1990-02-06 Richard Stallman (rms@mole.ai.mit.edu) @@ -10151,9 +10151,9 @@ 1990-01-27 Ed Reingold (reingold@emr.cs.uiuc.edu) - * calendar.el (scroll-calendar-left): Fixed so it works when the cursor + * calendar.el (scroll-calendar-left): Fix so it works when the cursor is not positioned on a day. - (cursor-to-calendar-day-of-year): Fixed so that "day" is properly + (cursor-to-calendar-day-of-year): Fix so that "day" is properly pluralized, depending how many days remain in the year. (french-calendar-leap-year-p): New function. (french-calendar-last-day-of-month): New function. @@ -10222,14 +10222,14 @@ 1990-01-11 Ed Reingold (reingold@emr.cs.uiuc.edu) - * diary.el (list-diary-entries): Deleted several lines of extraneous + * diary.el (list-diary-entries): Delete several lines of extraneous code and added `nongregorian-diary-listing-hook' to the list of hooks called@the end; this is for use in including Hebrew, Islamic, Julian, or ISO diary entries. A similar `nongregorian-diary-marking-hook' was added to the list of hooks called at the end of mark-diary-entries for the same reason. - (diary-name-pattern): Fixed the documentation and added an optional + (diary-name-pattern): Fix the documentation and added an optional parameter FULLNAME which insists on the full spelling of the name; this is also for use in marking Hebrew or Islamic diary entries (those month names are not unique in the first three characters). @@ -10241,8 +10241,8 @@ (list-islamic-diary-entries): New function. (mark-islamic-calendar-date-pattern): New function. - (list-diary-entries): Added nongregorian-diary-listing-hook. - (mark-diary-entries): Added nongregorian-diary-marking-hook. + (list-diary-entries): Add nongregorian-diary-listing-hook. + (mark-diary-entries): Add nongregorian-diary-marking-hook. * calendar.el: Added documentation for the hooks described above. @@ -10256,7 +10256,7 @@ 1990-01-08 Robert J. Chassell (bob@apple-gunkies.ai.mit.edu) * texnfo-upd.el (texinfo-update-node, texinfo-sequential-node-update): - Fixed auto-fill-hook bug. + Fix auto-fill-hook bug. 1990-01-08 Joseph Arceneaux (jla@spiff) @@ -10265,7 +10265,7 @@ 1990-01-08 Ed Reingold (reingold@emr.cs.uiuc.edu) * calendar.el (calendar-date-is-visible-p): - Fixed so it does not switch to the calendar buffer. + Fix so it does not switch to the calendar buffer. * diary.el (prepare-fancy-diary-buffer): Compute the list of holidays only once for each three-month period, not once for each date @@ -10275,12 +10275,12 @@ 1990-01-07 Ed Reingold (reingold@emr.cs.uiuc.edu) * calendar.el: Fixed the value of list-diary-entries-hook. - (regenerate-calendar-window): Changed (update-display) to (sit-for 0). + (regenerate-calendar-window): Change (update-display) to (sit-for 0). Corrected several instances of "dairy" to "diary". - (describe-calendar-mode): Added this function to issue the message + (describe-calendar-mode): Add this function to issue the message "Preparing..." to `?' key in calendar-mode because it's so incredibly slow for describe-mode to prepare the help buffer. - (calendar-holidays): Fixed the examples in the doc-string. + (calendar-holidays): Fix the examples in the doc-string. * diary.el: Corrected several instances of "dairy" to "diary". @@ -10323,7 +10323,7 @@ (calendar-iso-from-absolute): New function. (calendar-absolute-from-iso): New function. - (cursor-to-iso-calendar-date): Added `D' calendar command to give + (cursor-to-iso-calendar-date): Add `D' calendar command to give the day number in the Gregorian year and number of days remaining. (mark-diary-entries): Made two-digit abbreviated years acceptable in diary entries. Changed possible diary entry styles: DAY @@ -10338,11 +10338,11 @@ (all functions containing the word `hebrew'). (list-diary-entries, mark-diary-entries) (include-other-diary-files, mark-included-diary-files): - Added the possibility of `shared diary files' with a recursive + Add the possibility of `shared diary files' with a recursive include mechanism like the C preprocessor. (list-calendar-holidays): Eliminated the 'special class of holidays, rewriting the entire mechanism to make it more general. - (calendar-holiday-function-float): Changed the 'float class of + (calendar-holiday-function-float): Change the 'float class of holidays so that negative values count backward from end of month: 5 is no longer used for the last occurrence of a day in a month; -1 is used instead. @@ -10408,8 +10408,8 @@ 1989-12-11 David Lawrence (tale@cocoa-puffs) - * telnet.el: Converted to use comint. Removed - delete-char-or-send-eof and telnet-copy-last-input. Added + * telnet.el: Converted to use comint. + Removed delete-char-or-send-eof and telnet-copy-last-input. Added telnet-mode-hook. Modified telnet-filter to insert-before-markers at the process-mark. @@ -10418,8 +10418,8 @@ * prolog.el: Converted to use comint. Replaced copy-keymap for copy-alist of comint-mode-map. - * kermit.el: Converted to use comint. Replaced - kermit-clean-filter with a more efficient version. + * kermit.el: Converted to use comint. + Replaced kermit-clean-filter with a more efficient version. * comint.el: Added optional arguments ``terminator'' and ``delete'' to comint-send-input, for processes that want to see @@ -10449,7 +10449,7 @@ 1989-12-05 David Lawrence (tale@wheat-chex) * comint.el (new file): - Added FSF copyright. + Add FSF copyright. Moved bindings off of C-c LETTER. Cleaned up references to cmu* files. Made comint-send-input do unconditional end-of-line before processing. @@ -10594,7 +10594,7 @@ * x-mouse.el (x-paste-text): push-mark before inserting text. (x-insert-selection, x-select): - Moved these functions over from mouse.el. + Move these functions over from mouse.el. 1989-10-12 Richard Stallman (rms@mole.ai.mit.edu) @@ -10768,7 +10768,7 @@ 1989-09-11 Robert J. Chassell (bob@apple-gunkies.ai.mit.edu) * texinfo.el (texinfo-update-node, texinfo-make-menu) - (texinfo-master-menu, texinfo-sequential-node-update): Added functions + (texinfo-master-menu, texinfo-sequential-node-update): Add functions to insert or update the next, previous, and up node pointers in a Texinfo file, or alternatively to insert node pointers as a depth-first traversal---sequentially through the file, each pointing to the next @@ -10953,7 +10953,7 @@ 1989-07-12 Joseph Arceneaux (jla@spiff) - * lisp.el (insert-parentheses): Changed conditions for pre- and + * lisp.el (insert-parentheses): Change conditions for pre- and post- insertion of blanks. * bytecomp.el (byte-compile-file): If current buffer is in @@ -11072,7 +11072,7 @@ 1989-06-08 Joseph Arceneaux (jla@apple-gunkies.ai.mit.edu) - * term/x-win.el (new-screen): Added this function, which is the default + * term/x-win.el (new-screen): Add this function, which is the default auto-screen function. It uses new variables new-screen-x-delta and new-screen-y-delta. (next-multiscreen-window, previous-multiscreen-window): @@ -11200,7 +11200,7 @@ 1989-05-15 Joseph Arceneaux (jla@apple-gunkies.ai.mit.edu) - * tags.el (next-file): Fixed typo: " *next-file*" --> "*next-file*" + * tags.el (next-file): Fix typo: " *next-file*" --> "*next-file*" 1989-05-14 Richard Stallman (rms@mole.ai.mit.edu) @@ -11280,7 +11280,7 @@ confusing and incompatible with xterm. * mouse.el (mouse-scroll, mouse-del-char, mouse-kill-line) - (narrow-window-to-region, mouse-window-to-region): Added these + (narrow-window-to-region, mouse-window-to-region): Add these new functions. 1989-05-08 Richard Stallman (rms@mole.ai.mit.edu) @@ -11439,7 +11439,7 @@ * replace.el (occur-mode-goto-occurrence): Insure arg to count-lines is@start of line. - * replace.el (occur): Removed an extraneous save-excursion. + * replace.el (occur): Remove an extraneous save-excursion. * replace.el (perform-replace): Make ! undo as a unit. @@ -11530,7 +11530,7 @@ (view-exit): Restore old mode from those local variables. Apply specified fn to buffer that was viewed. This is on C-c and q. - (view-command-loop): Deleted. + (view-command-loop): Delete. (view-window-size): Now applies to selected window. * startup.el (normal-top-level): Use PWD envvar to set default dir. @@ -11651,8 +11651,8 @@ (bibtex-enclosing-reference, bibtex-enclosing-regexp, bibtex-flash-entr) (bibtex-flash-head, bibtex-inside-field, bibtex-make-optional-entry) (bibtex-remove-OPT): New functions. - (bibtex-find-it, bibtex-make-OPT-entry, bibtex-next-position): Deleted. - (kill-current-line): Deleted. + (bibtex-find-it, bibtex-make-OPT-entry, bibtex-next-position): Delete. + (kill-current-line): Delete. (bibtex-mode-map): C-c keys to make entries moved to C-c C-e. (general): Use regexps instead of simple-minded cursor motion. New keys include C-c C-p, C-c C-n, C-c C-k, C-c C-d, C-c C-c, TAB, LF. @@ -12400,7 +12400,7 @@ * compile.el (grep): Use grep-command for program. * loaddefs.el (grep-command): New variable. - (compile-command): Moved to compile.el. + (compile-command): Move to compile.el. * c-mode.el (electric-c-terminator): Make insertpos a marker. diff --git a/lisp/ChangeLog.7 b/lisp/ChangeLog.7 index a4f02875972..093f467163c 100644 --- a/lisp/ChangeLog.7 +++ b/lisp/ChangeLog.7 @@ -13,10 +13,10 @@ * speedbar.el (speedbar-timer-fn): Disable updating if the frame is an icon, or if the user is using the minibuffer. - (speedbar-key-map): Added Q binding to destroy the frame. - (speedbar-easymenu-definition-trailer): Added Quit item. + (speedbar-key-map): Add Q binding to destroy the frame. + (speedbar-easymenu-definition-trailer): Add Quit item. (speedbar-frame-mode): Set the frame position at creation time. - (speedbar-file-unshown-regexp): Added .# lock files. + (speedbar-file-unshown-regexp): Add .# lock files. 1998-08-18 Kenichi Handa <handa@etl.go.jp> @@ -56,8 +56,8 @@ 1998-08-17 Kenichi Handa <handa@etl.go.jp> - * international/mule-cmds.el (set-language-environment): Reset - syntax and case table to the defaults if the value of + * international/mule-cmds.el (set-language-environment): + Reset syntax and case table to the defaults if the value of unibyte-syntax key is nil. 1998-08-16 Richard Stallman <rms@psilocin.ai.mit.edu> @@ -86,8 +86,8 @@ * international/mule-cmds.el (language-info-alist): Doc-string modified. - (set-language-info-alist): Fix typo in doc-string. Update - setup-language-environment-map unconditionally. + (set-language-info-alist): Fix typo in doc-string. + Update setup-language-environment-map unconditionally. (mule-keymap): Key bindings for set-selection-coding-system and set-next-selection-coding-system. (set-coding-system-map): Add items of set-selection-coding-system @@ -110,13 +110,13 @@ 1998-08-14 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - * international/mule-cmds.el (select-safe-coding-system): If - default-coding-system is no-conversion return that, it is always + * international/mule-cmds.el (select-safe-coding-system): + If default-coding-system is no-conversion return that, it is always safe. 1998-08-13 Eric Ludlam <zappo@mescaline.gnu.org> - * speedbar.el (speedbar-frame-parameters): Removed scroll-bar-width. + * speedbar.el (speedbar-frame-parameters): Remove scroll-bar-width. 1998-08-13 Richard Stallman <rms@psilocin.ai.mit.edu> @@ -124,9 +124,9 @@ * dired-aux.el (dired-do-rename-regexp): Doc fix. - * midnight.el (midnight-float-time): Renamed from float-time. - (midnight-time-float): Renamed from time-float. - (midnight-buffer-display-time): Renamed from buffer-display-time. + * midnight.el (midnight-float-time): Rename from float-time. + (midnight-time-float): Rename from time-float. + (midnight-buffer-display-time): Rename from buffer-display-time. (midnight-mode): Specify :initialize. Use nil as default value. * complete.el (PC-do-completion): Exclude ./ and ../ from completion. @@ -201,14 +201,14 @@ (read-language-name): Handle the case that the arg KEY is nil. (describe-language-environment): Handle input-method property. - * international/quail.el (quail-start-translation): If - enable-multibyte-characters is nil, convert multibyte character to + * international/quail.el (quail-start-translation): + If enable-multibyte-characters is nil, convert multibyte character to unibyte. (quail-start-conversion): Likewise. * language/: All files under this directory modified as below. - (setup-XXX-environment): Just call set-language-environment. If - they used to do some other jobs than what done by + (setup-XXX-environment): Just call set-language-environment. + If they used to do some other jobs than what done by set-language-environment, those jobs are done in setup-XXX-environment-internal now. ("LANGUAGE-ENVIRONMENT"): Delete property setup-function or change @@ -278,7 +278,7 @@ 1998-08-08 Eric M. Ludlam <zappo@ultranet.com> * speedbar.el (speedbar-edit-line, speedbar-buffer-kill-buffer) - (speedbar-buffer-revert-buffer): Updated buffer finding regex to + (speedbar-buffer-revert-buffer): Update buffer finding regex to handle the [?] tag. (speedbar-find-selected-file): New function. (speedbar-clear-current-file): Uses `speedbar-find-selected-file'. @@ -364,18 +364,18 @@ (quail-start-translation): Handle the case the arg KEY is nil. Bind echo-keystrokes and help-char. Initialize quail-current-str to "". If input-method-use-echo-area is non-nil, call - read-key-sequence with appropriate PROMPT arg. Setup - last-command-event by local variable `keyseq'. Generate an event + read-key-sequence with appropriate PROMPT arg. + Setup last-command-event by local variable `keyseq'. Generate an event list form quail-current-str. If input-method-exit-on-first-char is non-nil, return only the first event. - (quail-start-conversion): Likewise. Initialize - quail-conversion-str to "". Generate an event list form + (quail-start-conversion): Likewise. + Initialize quail-conversion-str to "". Generate an event list form quail-conversion-str. (quail-update-translation): Expect that the function given by (quail-update-translation-function) returns a new control-flag. - Handle the case the length of quail-current-key is 1. Use - string-as-unibyte if enable-multibyte-characters is nil. Always - assures that quail-current-str is Lisp string. + Handle the case the length of quail-current-key is 1. + Use string-as-unibyte if enable-multibyte-characters is nil. + Always assures that quail-current-str is Lisp string. (quail-self-insert-command): Use `or' instead of `unless'. (quail-update-current-translations): Always assures that quail-current-str is Lisp string. @@ -429,14 +429,14 @@ 1998-08-04 Eric Ludlam <zappo@mescaline.gnu.org> - * speedbar.el (speedbar-refresh): Removed special code to remove + * speedbar.el (speedbar-refresh): Remove special code to remove the speedbar update message. Not necessary here. (speedbar-timer-fn): Add code to remove the updating message and thus restore the minibuffer. - (speedbar-center-buffer-smartly): Fixed center error to handle + (speedbar-center-buffer-smartly): Fix center error to handle the whole buffer. (speedbar-delete-subblock): Rewrote to be more robust, less clever. - (speedbar-timer-fn): Removed short display time for messages. + (speedbar-timer-fn): Remove short display time for messages. 1998-08-04 Dave Love <d.love@dl.ac.uk> @@ -445,8 +445,8 @@ 1998-08-04 Eli Zaretskii <eliz@delysid.gnu.org> - * international/mule.el (find-new-buffer-file-coding-system): When - inhibit-eol-conversion is non-nil and the buffer didn't already + * international/mule.el (find-new-buffer-file-coding-system): + When inhibit-eol-conversion is non-nil and the buffer didn't already set a fully-qualified coding system, force -unix eol-type. 1998-08-04 Richard Stallman <rms@psilocin.ai.mit.edu> @@ -469,15 +469,15 @@ 1998-08-03 Eric Ludlam <zappo@mescaline.gnu.org> - * info.el (Info-speedbar-hierarchy-buttons): Improved the speedbar + * info.el (Info-speedbar-hierarchy-buttons): Improve the speedbar frame management. - * speedbar.el (speedbar-update-current-file): Added call to + * speedbar.el (speedbar-update-current-file): Add call to `speedbar-center-buffer-smartly' to improve the display. (speedbar-center-buffer-smartly) Fixed off-by-one error in window height calculation. (speedbar-hack-buffer-menu): New function. - (speedbar-frame-parameters): Removed scroll bar width. + (speedbar-frame-parameters): Remove scroll bar width. (speedbar-frame-mode): Change pointer shape for X and W32 window-systems only. When window-system is pc, bind the speedbar frame name to "Speedbar", and select that frame so it is @@ -488,8 +488,8 @@ (speedbar-directory-buttons-follow): Support both upper- and lower-case drive letters. Use directory-sep-char instead of a literal backslash. - (speedbar-reconfigure-keymaps): Call - `easy-menu-remove' before reconfiguring for a new menu bar. + (speedbar-reconfigure-keymaps): + Call `easy-menu-remove' before reconfiguring for a new menu bar. (speedbar-previous-menu): New Variable. (speedbar-frame-plist): Remove pointers. (speedbar-refresh): Prevent the mark from being deactivated. @@ -505,8 +505,8 @@ * international/kkc.el (kkc-lookup-cache): Initialize it to nil. (kkc-lookup-cache-tag): New constant. - (kkc-lookup-key): If kkc-lookup-cache is nil, initialize it. Use - kkc-init-file-name. + (kkc-lookup-key): If kkc-lookup-cache is nil, initialize it. + Use kkc-init-file-name. (kkc-region): Fix previous change. Call kkc-error on error. (kkc-shorter-conversion, kkc-longer-phrase): New functions. (kkc-keymap): Bind them to "I" and "O" respectively. @@ -547,8 +547,8 @@ * language/cyril-util.el (cyrillic-encode-koi8-r-char): New function. (cyrillic-encode-alternativnyj-char): New function. - * language/cyrillic.el (cyrillic-koi8-r-decode-table): New - variable. + * language/cyrillic.el (cyrillic-koi8-r-decode-table): + New variable. (cyrillic-koi8-r-encode-table): Likewise. (ccl-decode-koi8): Use cyrillic-koi8-r-decode-table. (ccl-encode-koi8): Use cyrillic-koi8-r-encode-table. @@ -558,10 +558,10 @@ charset-origin-alist properties. (cyrillic-alternativnyj-decode-table): New variable. (cyrillic-alternativnyj-encode-table): Likewise. - (ccl-decode-alternativnyj): Use - cyrillic-alternativnyj-decode-table. - (ccl-encode-alternativnyj): Use - cyrillic-alternativnyj-encode-table. + (ccl-decode-alternativnyj): + Use cyrillic-alternativnyj-decode-table. + (ccl-encode-alternativnyj): + Use cyrillic-alternativnyj-encode-table. (ccl-encode-alternativnyj-font): Likewise. (cyrillic-alternativnyj-nonascii-translation-table): New variable. ("Cyrillic-ALT"): Add nonascii-translation-table and @@ -615,8 +615,8 @@ * emacs-lisp/cl-indent.el (lisp-indent-defun-method): New variable. (common-lisp-indent-function): Use it. (lisp-indent-259): Uncomment the `&lambda' code. - (top-level let): Remove duplicate `catch' and `block'. Use - `&lambda' when appropriate. Now the lambda lists are indented + (top-level let): Remove duplicate `catch' and `block'. + Use `&lambda' when appropriate. Now the lambda lists are indented appropriately. 1998-07-30 Richard Stallman <rms@psilocin.ai.mit.edu> @@ -697,7 +697,7 @@ 1998-07-27 Richard Stallman <rms@psilocin.ai.mit.edu> * textmodes/flyspell.el (flyspell-emacs-popup): - Renamed from flyspell-gnuemacs-popup. Callers changed. + Rename from flyspell-gnuemacs-popup. Callers changed. (push): Macro deleted. Callers changed to do it explicitly. (flyspell-incorrect-face, flyspell-duplicate-face): Use defface. (flyspell-incorrect-color): Variable deleted. @@ -705,7 +705,7 @@ (flyspell-underline-p): Variable deleted. (flyspell-font-lock-make-face): Function deleted. (flyspell-mark-duplications-flag): - Renamed from flyspell-doublon-as-error-flag. + Rename from flyspell-doublon-as-error-flag. (flyspell-mode-on): Delete the debugging message. (flyspell-mode-off): Delete the debugging message. (flyspell-mode-on): Set flyspell-generic-check-word-p @@ -796,16 +796,16 @@ 1998-07-25 Kenichi Handa <handa@etl.go.jp> * international/mule.el (auto-coding-alist): New variable. - (set-auto-coding): Argument FILENAME is added. Check - auto-coding-alist at first. + (set-auto-coding): Argument FILENAME is added. + Check auto-coding-alist at first. * international/kkc.el (kkc-region): Unwind-protect the conversion process. (kkc-show-conversion-list-update): Pay attention to the length of kkc-show-conversion-list-index-chars. - * international/mule-cmds.el (find-multibyte-characters): New - function. + * international/mule-cmds.el (find-multibyte-characters): + New function. (select-safe-coding-system): Highlight characters which can't be encoded. Show list of such characters also in *Warning* buffer. @@ -822,10 +822,10 @@ (crisp-last-last-command): Doc fix. (mark-something): Function deleted. (crisp-mark-line): Avoid using mark-something. - (crisp-region-active): Renamed from region-active. - (crisp-set-clipboard): Renamed from copy-primary-selection. - (crisp-kill-region): Renamed from kill-primary-selection. - (crisp-yank-clipboard): Renamed from yank-clipboard-selection. + (crisp-region-active): Rename from region-active. + (crisp-set-clipboard): Rename from copy-primary-selection. + (crisp-kill-region): Rename from kill-primary-selection. + (crisp-yank-clipboard): Rename from yank-clipboard-selection. * files.el (basic-save-buffer-2): New function. (basic-save-buffer-1): Use basic-save-buffer-2, @@ -850,8 +850,8 @@ 1998-07-23 Ken'ichi Handa <handa@melange.gnu.org> - * international/quail.el (quail-start-translation): Call - this-single-command-raw-keys instead of this-single-command-keys. + * international/quail.el (quail-start-translation): + Call this-single-command-raw-keys instead of this-single-command-keys. (quail-start-conversion): Likewise. 1998-07-23 Kenichi Handa <handa@etl.go.jp> @@ -862,8 +862,8 @@ not isearch-printing-char, don't read multibyte chars from minibuffer, but just call isearch-process-search-char. - * international/quail.el (quail-start-translation): Use - this-single-command-keys to get raw events instead of + * international/quail.el (quail-start-translation): + Use this-single-command-keys to get raw events instead of listify-key-sequence. (quail-start-conversion): Likewise. @@ -878,7 +878,7 @@ (imenu-extract-index-name-function, imenu-default-goto-function) (imenu-sort-function, imenu-prev-index-position-function): Likewise. - * ange-ftp.el (ange-ftp-reread-dir): Renamed from `re-read'. + * ange-ftp.el (ange-ftp-reread-dir): Rename from `re-read'. Old name defined as alias. Doc fix. 1998-07-21 Kenichi Handa <handa@etl.go.jp> @@ -888,8 +888,8 @@ (kkc-terminate): Update kkc-overlay-head correctly. (kkc-cancel): Don't call kkc-terminate, but set kkc-converting to nil. - * international/quail.el (quail-simple-translation-keymap): Typo - in doc-string fixed. + * international/quail.el (quail-simple-translation-keymap): + Typo in doc-string fixed. (quail-start-translation): Check start position of quail-overlay before calling quail-overlay-region-events. (quail-start-conversion): Likewise. @@ -915,8 +915,8 @@ * isearch.el (isearch-input-method-function): New variable. (isearch-input-method-local-p): New variable. - (isearch-mode): Setup the above two variable. Set - input-method-function to nil locally. + (isearch-mode): Setup the above two variable. + Set input-method-function to nil locally. (isearch-done): Restore the previous value of input-method-function. @@ -939,7 +939,7 @@ * international/kkc.el (kkc-region): Fix the return value. * international/isearch-x.el - (isearch-toggle-specified-input-method): Adjusted for the change + (isearch-toggle-specified-input-method): Adjust for the change in isearch.el. (isearch-toggle-input-method): Likewise. (isearch-minibuffer-local-map): New variable. @@ -949,8 +949,8 @@ characters from minibuffer with the keymap isearch-minibuffer-local-map. - * international/mule-cmds.el (read-multilingual-string): Don't - activate an input method in the current buffer, but just bind + * international/mule-cmds.el (read-multilingual-string): + Don't activate an input method in the current buffer, but just bind current-input-method. * language/japan-util.el (japanese-replace-region): New function. @@ -964,7 +964,7 @@ 1998-07-17 Simon Marshall <simon@gnu.org> - * lazy-lock.el (lazy-lock-fontify-after-visage): Renamed from + * lazy-lock.el (lazy-lock-fontify-after-visage): Rename from lazy-lock-fontify-after-outline. (lazy-lock-install-hooks): Add it to hs-hide-hook too. (lazy-lock-unstall): Remove it from hs-hide-hook too. @@ -989,14 +989,14 @@ * international/kkc.el (kkc-show-conversion-list-index-chars): Default value changed. - (kkc-keymap): Renamed from kkc-mode-map. Key binding for + (kkc-keymap): Rename from kkc-mode-map. Key binding for kkc-non-kkc-command are deleted. (kkc-mode): This function deleted. (kkc-canceled): This variable deleted. (kkc-converting): New variable. (kkc-region): 3rd optional arg is deleted. Completely rewritten to adjust for the change in quail.el. - (kkc-terminate, kkc-cancel): Adjusted for the change of + (kkc-terminate, kkc-cancel): Adjust for the change of kkc-region. (kkc-non-kkc-command): This function deleted. (kkc-select-from-list): Use last-input-event instead of @@ -1008,16 +1008,16 @@ (quail-current-str, quail-current-translations): Likewise. (quail-reset-conversion-region): This variable deleted. (quail-use-package): Call quail-activate at the tail. - (quail-translation-keymap, quail-simple-translation-keymap): Key - bindings for quail-execute-non-quail-command deleted. + (quail-translation-keymap, quail-simple-translation-keymap): + Key bindings for quail-execute-non-quail-command deleted. (quail-conversion-keymap): Likewise. Add key bindings for quail-self-insert-command. (quail-delete-overlays): Check overlay-start for overlays before deleting them. (quail-mode): This function deleted. (quail-inactivate, quail-activate): New functions. - (quail-saved-current-map, quail-saved-current-buffer): These - variables deleted. + (quail-saved-current-map, quail-saved-current-buffer): + These variables deleted. (quail-toggle-mode-temporarily, quail-execute-non-quail-command): These functions deleted. (quail-exit-conversion-mode, quail-prefix-arg): These variables @@ -1032,9 +1032,9 @@ (quail-start-conversion): New function. (quail-terminate-translation): Just set quail-translating to nil. (quail-update-translation): Put some events back to - unread-input-method-events instead of unread-command-events. Call - quail-error instead of error. - (quail-self-insert-command): Adjusted for the change of + unread-input-method-events instead of unread-command-events. + Call quail-error instead of error. + (quail-self-insert-command): Adjust for the change of quail-start-translation. (quail-next-translation): Don't call quail-execute-non-quail-command, instead, put an event back of @@ -1079,7 +1079,7 @@ (crisp-mode-map): Make this a sparse keymap parented from current-global-map. (crisp-mode-original-keymap): Don't copy the keymap. - (crisp-last-last-command): Renamed from last-last-command. defvar it. + (crisp-last-last-command): Rename from last-last-command. defvar it. (crisp-mode): Honor ARG. (crisp-kill-line, crisp-copy-line): When a region isn't highlighted, @@ -1145,7 +1145,7 @@ 1998-07-12 Richard Stallman <rms@psilocin.ai.mit.edu> * international/mule.el (set-selection-coding-system): - Renamed from set-clipboard-coding-system. + Rename from set-clipboard-coding-system. Set the variable's new name, selection-coding-system. * mail/rmailout.el (rmail-output-to-rmail-file): @@ -1155,9 +1155,9 @@ * speedbspec.el: Deleted; now integrated into speedbar.el. * speedbar.el: More commentary. - (speedbar-xemacsp): Moved definition. - (speedbar-initial-expansion-mode-list): Was - `speedbar-initial-expansion-list' and now has multiple modes. + (speedbar-xemacsp): Move definition. + (speedbar-initial-expansion-mode-list): + Was `speedbar-initial-expansion-list' and now has multiple modes. (speedbar-stealthy-function-list): Now has mode labels. (speedbar-initial-expansion-list-name) (speedbar-previously-used-expansion-list-name) @@ -1165,27 +1165,27 @@ (speedbar-tag-hierarchy-method, speedbar-tag-split-minimum-length) (speedbar-tag-regroup-maximum-length) (speedbar-hide-button-brackets-flag): New variables. - (speedbar-special-mode-expansion-list): Updated documentation. + (speedbar-special-mode-expansion-list): Update documentation. (speedbar-navigating-speed, speedbar-update-speed): Phasing out. - (speedbar-vc-indicator): Removed space from this var. + (speedbar-vc-indicator): Remove space from this var. (speedbar-indicator-separator, speedbar-obj-do-check) (speedbar-obj-to-do-point, speedbar-obj-indicator, speedbar-obj-alist) (speedbar-indicator-regex): New variables. (speedbar-directory-unshown-regexp): New variable. - (speedbar-supported-extension-expressions): Added more extensions. + (speedbar-supported-extension-expressions): Add more extensions. (speedbar-add-supported-extension) (speedbar-add-ignored-path-regexp): Made interactive. (speedbar-update-flag): Nil w/ no window system. - (speedbar-file-key-map): Moved some key bindings from + (speedbar-file-key-map): Move some key bindings from `speedbar-key-map' to this map. (speedbar-make-specialized-keymap): New function. (speedbar-file-key-map): New key map. - (speedbar-easymenu-definition-special): Updated to new functions. - (speedbar-easymenu-definition-trailer): Changed conditional part. - (speedbar-frame-mode): Removed commented code, fixed W32 cursor + (speedbar-easymenu-definition-special): Update to new functions. + (speedbar-easymenu-definition-trailer): Change conditional part. + (speedbar-frame-mode): Remove commented code, fixed W32 cursor bug, Updated to better handle terminal frames. (speedbar-switch-buffer-attached-frame): New function. - (speedbar-mode): Updated documentation, no local keymap, + (speedbar-mode): Update documentation, no local keymap, correct `temp-buffer-show-function' use, enable mouse-tracking. (speedbar-show-info-under-mouse): New function. (speedbar-reconfigure-keymaps): Was `speedbar-reconfigure-menubar'. @@ -1195,9 +1195,9 @@ (speedbar-restricted-move, speedbar-restricted-next) (speedbar-restricted-prev, speedbar-navigate-list) (speedbar-forward-list, speedbar-backward-list): New commands. - (speedbar-refresh): Updated message printing & verbosity. - (speedbar-item-load): Updated message. - (speedbar-item-byte-compile): Updated doc & reset scanners. + (speedbar-refresh): Update message printing & verbosity. + (speedbar-item-load): Update message. + (speedbar-item-byte-compile): Update doc & reset scanners. (speedbar-item-info): Overhauled with more details. (speedbar-item-copy): Update messages. (speedbar-generic-item-info): New function. @@ -1245,7 +1245,7 @@ * mail/rmail.el: No longer depends on speedbspec for byte compile. (rmail-speedbar-match-folder-regexp): New variable. - (rmail-speedbar-menu-items): Updated speedbar menu items. + (rmail-speedbar-menu-items): Update speedbar menu items. (rmail-speedbar-key-map): New keymap. (rmail-install-speedbar-variables): New function. Install speedbar keymap only when speedbar is loaded. @@ -1264,13 +1264,13 @@ * gud.el (gud-speedbar-key-map): New variable. (gud-install-speedbar-variables): New function Install speedbar keymap only when speedbar is loaded. - (gud-gdb-get-stackframe): Added ":" to regex for c++. + (gud-gdb-get-stackframe): Add ":" to regex for c++. 1998-07-09 Sam Steingold <sds@usa.net> * emacs-lisp/cl-indent.el: Indent `handler-case' correctly. - * font-lock.el (lisp-font-lock-keywords): Fontify - `handler-case', `ccase', `ctypecase', `assert', `error'. + * font-lock.el (lisp-font-lock-keywords): + Fontify `handler-case', `ccase', `ctypecase', `assert', `error'. 1998-07-09 Andrew Innes <andrewi@harlequin.co.uk> @@ -1342,8 +1342,8 @@ 1998-07-05 Richard Stallman <rms@psilocin.ai.mit.edu> - * mail/mail-utils.el (rmail-dont-reply-to): Understand - about doublequotes; don't be fooled by commas inside them. + * mail/mail-utils.el (rmail-dont-reply-to): + Understand about doublequotes; don't be fooled by commas inside them. 1998-07-04 Richard Stallman <rms@psilocin.ai.mit.edu> @@ -1378,7 +1378,7 @@ 1998-07-03 Espen Skoglund <espensk@stud.cs.uit.no> - * pascal.el (pascal-insert-block): Fixed space-deletion bug in + * pascal.el (pascal-insert-block): Fix space-deletion bug in front of the "begin" string. (pascal-beg-of-defun): Used to locate the beginning of a function incorrectly when a function contained several begin-end blocks. @@ -1398,7 +1398,7 @@ * dos-vars.el (dos-printer): Obsolete variable deleted. (dos-ps-printer): Likewise. - * dos-w32.el (direct-print-region-function): Renamed from + * dos-w32.el (direct-print-region-function): Rename from dos-print-region-function. Added &rest keyword. (print-region-function): Set to direct-print-region-function. (lpr-headers-switches): Initialize. @@ -1441,12 +1441,12 @@ 1998-07-03 Eric Ludlam <zappo@mescaline.gnu.org> - * emacs-lisp/checkdoc.el (checkdoc): Updated commentary. - (checkdoc-autofix-flag): Updated doc. - (checkdoc-force-docstrings-flag): Updated doc. + * emacs-lisp/checkdoc.el (checkdoc): Update commentary. + (checkdoc-autofix-flag): Update doc. + (checkdoc-force-docstrings-flag): Update doc. (checkdoc-force-history-flag): New flag. - (checkdoc-triple-semi-comment-check-flag): Fixed name. - (checkdoc-spellcheck-documentation-flag): Fixed doc. + (checkdoc-triple-semi-comment-check-flag): Fix name. + (checkdoc-spellcheck-documentation-flag): Fix doc. (checkdoc-ispell-lisp-words): Update default value. (checkdoc-generate-compile-warnings-flag, checkdoc-proper-noun-list) (checkdoc-proper-noun-regexp, checkdoc-symbol-words): New variables. @@ -1458,22 +1458,22 @@ Cursor now sits next to the error, forcing scrolling if needed, and using a better centering algorithm, and much better error navigation after choosing "f"ix. - (checkdoc-next-error): Added parameter ENABLE-FIX. + (checkdoc-next-error): Add parameter ENABLE-FIX. (checkdoc-next-message-error, checkdoc-recursive-edit): New functions. (checkdoc-start): Was `checkdoc', uses new note taking system. (checkdoc-current-buffer, checkdoc-continue, checkdoc-comments): - Updated to use new note taking system. + Update to use new note taking system. (checkdoc-rogue-spaces, checkdoc-rogue-space-check-engine): - Added INTERACT parameter, uses new warnings functions. + Add INTERACT parameter, uses new warnings functions. (checkdoc-message-text, checkdoc-defun): - Updated to use new note taking system. + Update to use new note taking system. (checkdoc-ispell-current-buffer, checkdoc-ispell-interactive): Fix doc. (checkdoc-ispell-message-text, checkdoc-ispell-start): New function. (checkdoc-create-error, checkdoc-error-text, checkdoc-error-start) (checkdoc-error-end, checkdoc-error-unfixable): New functions. - (checkdoc-minor-keymap): Updated keybinds to new interactive functions, + (checkdoc-minor-keymap): Update keybinds to new interactive functions, completely re-arranged the minor-mode menu. - (checkdoc-this-string-valid): Moved no doc-string warning here, + (checkdoc-this-string-valid): Move no doc-string warning here, and added autofix if a comment already exists there. (checkdoc-this-string-valid-engine): Fix doc, robusted doc finder. All previously returned errors now call `checkdoc-create-error'. @@ -1497,7 +1497,7 @@ for history and commentary. All previously returned errors now call `checkdoc-create-error'. Message spelling and format. (checkdoc-message-text-search): - Moved parts to `checkdoc-message-text-next-string'. + Move parts to `checkdoc-message-text-next-string'. (checkdoc-message-text-next-string): New function. (checkdoc-message-text-engine): All previously returned errors now call `checkdoc-create-error'. Can find/skip 'format' call @@ -1506,12 +1506,12 @@ (checkdoc-y-or-n-p): New function. (checkdoc-autofix-ask-replace): Update doc. Protect match-data. Correctly handle `checkdoc-autofix-flag' of 'never. New behavior - with `checkdoc-autofix-flag' of 'automatic-then-never. Better - overlay handling. - (checkdoc-output-font-lock-keywords): Updated to new output format. + with `checkdoc-autofix-flag' of 'automatic-then-never. + Better overlay handling. + (checkdoc-output-font-lock-keywords): Update to new output format. (checkdoc-pending-errors): New variable. - (checkdoc-find-error): Updated to new output format. - (checkdoc-start-section, checkdoc-error): Improved the output. + (checkdoc-find-error): Update to new output format. + (checkdoc-start-section, checkdoc-error): Improve the output. (checkdoc-show-diagnostics): Smarter show algorithm. 1998-07-03 Kenichi Handa <handa@etl.go.jp> @@ -1563,12 +1563,12 @@ * derived.el (derived-mode-hooks-name): Use -hook, not -hooks, in mode hook name. - (derived-mode-hook-name): Renamed from ...-hooks; caller changed. + (derived-mode-hook-name): Rename from ...-hooks; caller changed. 1998-07-01 Ken'ichi Handa <handa@melange.gnu.org> - * international/mule.el (mule-version): Changed to 4.0. - (mule-version-date): Updated. + * international/mule.el (mule-version): Change to 4.0. + (mule-version-date): Update. 1998-06-30 Richard Stallman <rms@psilocin.ai.mit.edu> @@ -1679,7 +1679,7 @@ * language/korea-util.el (isearch-toggle-korean-input-method) (isearch-hangul-switch-symbol-ksc, isearch-hangul-switch-hanja): New functions. - (korean-key-bindings): Renamed from exit-korean-environment-data. + (korean-key-bindings): Rename from exit-korean-environment-data. Initialized appropriately. (setup-korean-environment): Setup key bindings according to korean-key-bindings. @@ -1714,10 +1714,10 @@ of `find-function-noselect'. (find-function-search-for-symbol): `regexp-quote' the symbol name: needed to find-function `mapcar*' for example. - (find-function-noselect): Improved docstring. Don't include + (find-function-noselect): Improve docstring. Don't include `library' in let. Use `symbol-file' instead of `describe-symbol-find-file'. - (find-function-read): Renamed from `find-function-read-function'. + (find-function-read): Rename from `find-function-read-function'. With optional arg now read a variable. (find-function-read): Separate `completing-read' calls for variables and functions. @@ -1746,7 +1746,7 @@ (find-variable-other-window): Remove most of docstring and add reference to `find-variable' instead. (find-variable-other-frame): Ditto. - (find-function-on-key): Simplified. Removed stuff now taken care + (find-function-on-key): Simplify. Removed stuff now taken care of by interactive "k". (find-function-at-point): New function. (find-variable-at-point): Ditto. @@ -1768,7 +1768,7 @@ 1998-06-24 Andrew Innes <andrewi@mescaline.gnu.org> - * dos-w32.el (null-device): Renamed from grep-null-device. + * dos-w32.el (null-device): Rename from grep-null-device. 1998-06-24 Richard Stallman <rms@psilocin.ai.mit.edu> @@ -1795,8 +1795,8 @@ (ange-ftp-generate-anonymous-password): Use `other' widget type. * autoinsert.el (auto-insert, auto-insert-query): Use `other' widget type. - * bookmark.el (bookmark-save-flag, bookmark-version-control): Use - `other' widget type. + * bookmark.el (bookmark-save-flag, bookmark-version-control): + Use `other' widget type. * comint.el (comint-input-autoexpand): Use `other' widget type. * complete.el (PC-first-char): Use `other' widget type. * cus-edit.el (custom-magic-show): Use `other' widget type. @@ -1855,8 +1855,8 @@ 1998-06-23 Ken'ichi Handa <handa@melange.gnu.org> - * international/fontset.el (x-style-funcs-alist): Remove - duplicated code. + * international/fontset.el (x-style-funcs-alist): + Remove duplicated code. 1998-06-23 Richard Stallman <rms@psilocin.ai.mit.edu> @@ -1896,8 +1896,8 @@ `composition'. Add property `jisx0208' to Japanese hankaku characters. (japanese-kana-table): Add more data. (japanese-symbol-table): Change the order of elements. - (japanese-katakana-region): Adjusted for the above changes. Check - character code properties directly here. + (japanese-katakana-region): Adjust for the above changes. + Check character code properties directly here. (japanese-hiragana-region): Likewise. (japanese-hankaku-region): Likewise. (japanese-zenkaku-region): Likewise. @@ -1983,8 +1983,8 @@ 1998-06-20 Kenichi Handa <handa@etl.go.jp> - * international/fontset.el (x-style-funcs-alist): If - x-make-font-demibold or x-make-font-bold return nil, don't try + * international/fontset.el (x-style-funcs-alist): + If x-make-font-demibold or x-make-font-bold return nil, don't try further style modification. * international/encoded-kb.el (encoded-kbd-self-insert-sjis): @@ -2003,8 +2003,8 @@ ethio-mode-map, and function ethio-mode. (exit-ethiopic-environment-data): New variable. (setup-ethiopic-environment): Recode information of changed key - bindings in exit-ethiopic-environment-data. Add - ethio-select-a-translation to quail-mode-hook. + bindings in exit-ethiopic-environment-data. + Add ethio-select-a-translation to quail-mode-hook. (exit-ethiopic-environment): New function. (ethio-find-file): Don't check ethio-mode. (ethio-write-file): Likewise. @@ -2067,7 +2067,7 @@ * international/mule.el (set-auto-coding): Redo the previous change. - * tar-mode.el (tar-extract): Adjusted for the change of the spec + * tar-mode.el (tar-extract): Adjust for the change of the spec of set-auto-coding-function. 1998-06-14 Richard Stallman <rms@psilocin.ai.mit.edu> @@ -2154,8 +2154,8 @@ * faces.el (set-face-font): Pay attention to fontset. (set-face-font-auto): Call resolve-fontset-name. - * international/fontset.el (instantiate-fontset): Delete - duplicated call of x-complement-fontset-spec. Call new-fontset + * international/fontset.el (instantiate-fontset): + Delete duplicated call of x-complement-fontset-spec. Call new-fontset with a correct argument. (x-compose-font-name): Argument name adjusted for the doc-string. (x-complement-fontset-spec): Don't alter the contents of the @@ -2163,8 +2163,8 @@ (x-style-funcs-alist): The format changed. (x-modify-font-name): New function. (create-fontset-from-fontset-spec): The arg STYLE-VARIANT-P is - changed to STYLE-VARIANT, the format also changed. Use - x-modify-font-name instead of calling functions in + changed to STYLE-VARIANT, the format also changed. + Use x-modify-font-name instead of calling functions in x-style-funcs-alist directly. (instantiate-fontset): Use x-modify-font-name instead of calling functions in x-style-funcs-alist directly. @@ -2283,8 +2283,8 @@ 1998-06-09 Ed Reingold <reingold@cs.uiuc.edu> - * calendar/cal-tex.el (cal-tex-list-diary-entries): Set - diary-display-hook correctly. + * calendar/cal-tex.el (cal-tex-list-diary-entries): + Set diary-display-hook correctly. * calendar/cal-menu.el (calendar-mouse-holidays) (calendar-mouse-view-diary-entries) @@ -2342,8 +2342,8 @@ 1998-06-08 Andrew Innes <andrewi@harlequin.co.uk> - * ange-ftp.el (ange-ftp-file-name-completion): Use - ange-ftp-this-dir instead of literal "/" when calling real + * ange-ftp.el (ange-ftp-file-name-completion): + Use ange-ftp-this-dir instead of literal "/" when calling real completion function. 1998-06-08 Richard Stallman <rms@psilocin.ai.mit.edu> @@ -2450,8 +2450,8 @@ 1998-06-05 Andrew Innes <andrewi@harlequin.co.uk> - * jka-compr.el (jka-compr-write-region): Ensure - `last-coding-system-used' is updated, so that basic-save-buffer + * jka-compr.el (jka-compr-write-region): + Ensure `last-coding-system-used' is updated, so that basic-save-buffer sees the right value. 1998-06-05 Richard Stallman <rms@gnu.org> @@ -2531,8 +2531,8 @@ * docref.el: Deleted in view of current approach to doc strings. - * startup.el (normal-top-level-add-subdirs-to-load-path): Ignore - CVS directories too. + * startup.el (normal-top-level-add-subdirs-to-load-path): + Ignore CVS directories too. 1998-06-02 Richard Stallman <rms@gnu.org> @@ -2571,15 +2571,15 @@ 1998-06-01 Per Starbäck <starback@update.uu.se> - * apropos.el (apropos-variable): Fixed argument to apropos-command. + * apropos.el (apropos-variable): Fix argument to apropos-command. (apropos-command): Let `var-predicate' have higher priority than `do-all'. 1998-06-01 Dave Love <fx@gnu.org> * textmodes/sgml-mode.el (sgml-font-lock-keywords-1): Add -. as - NMCHARs. Elide upper case (see font-lock-defaults). Generalize - comment declaration not to exclude markup. + NMCHARs. Elide upper case (see font-lock-defaults). + Generalize comment declaration not to exclude markup. 1998-05-31 Richard Stallman <rms@gnu.org> @@ -2602,8 +2602,8 @@ 1998-05-31 Alan Shutko <shutkoa@ugsolutions.com> - * emacs-lisp/easy-mmode.el (easy-mmode-define-minor-mode): Add - missing format arg. + * emacs-lisp/easy-mmode.el (easy-mmode-define-minor-mode): + Add missing format arg. 1998-05-30 Dave Love <fx@gnu.org> @@ -2626,17 +2626,17 @@ 1998-05-30 Michael Kifer <kifer@cs.sunysb.edu> * ediff-mult.el (ediff-mark-for-hiding-at-pos) - (ediff-mark-for-operation-at-pos): Renamed from + (ediff-mark-for-operation-at-pos): Rename from ediff-mark-for-hiding, ediff-mark-for-operation. (ediff-mark-session-for-hiding, ediff-mark-session-for-operation) - (ediff-unmark-all-for-operation, ediff-unmark-all-for-hiding): New - functions. - (ediff-setup-meta-map): Changed bindings. + (ediff-unmark-all-for-operation, ediff-unmark-all-for-hiding): + New functions. + (ediff-setup-meta-map): Change bindings. * viper-cmd.el (viper-backward-Word, viper-skip-separators): Bugfix. (viper-switch-to-buffer, viper-switch-to-buffer-other-window): Bugfix. * viper-util.el (viper-skip-syntax): Bug fix for eob/bob cases. - * viper-mous.el (viper-surrounding-word): Added '_' to alpha modifiers. + * viper-mous.el (viper-surrounding-word): Add '_' to alpha modifiers. 1998-05-30 Ralph Schleicher <rs@purple.UL.BaWue.DE> @@ -2700,8 +2700,8 @@ 1998-05-27 Ed Reingold <reingold@cs.uiuc.edu> - * calendar/calendar.el (calendar-buffer-list): Add - other-calendars-buffer. + * calendar/calendar.el (calendar-buffer-list): + Add other-calendars-buffer. (calendar-mode): Use activate-menubar-hook only in a window system. 1998-05-27 Dave Love <fx@gnu.org> @@ -2794,13 +2794,13 @@ * emacs-lisp/byte-opt.el (byte-boolean-vars): Add print-escape-nonascii. - * emacs-lisp/autoload.el (generate-file-autoloads): Set - print-escape-nonascii when printing autoload form. + * emacs-lisp/autoload.el (generate-file-autoloads): + Set print-escape-nonascii when printing autoload form. 1998-05-25 Kenichi HANDA <handa@etl.go.jp> - * international/mule.el (set-coding-priority): Call - set-coding-priority-internal at the tail. + * international/mule.el (set-coding-priority): + Call set-coding-priority-internal at the tail. 1998-05-24 Stephen Eglen <stephen@cns.ed.ac.uk> @@ -2924,12 +2924,12 @@ Use translation-table, not character-translation-table, as char-table subtype. (define-translation-table): - Renamed from define-character-translation-table. + Rename from define-character-translation-table. * mule-util.el: Likewise. * mule-conf.el: Likewise. (standard-translation-table-for-decode) (standard-translation-table-for-encode): - Renamed from standard-character-translation-table-... + Rename from standard-character-translation-table-... 1998-05-21 Richard Stallman <rms@psilocin.ai.mit.edu> @@ -2965,17 +2965,17 @@ 1998-05-21 Eli Zaretskii <eliz@mescaline.gnu.org> - * arc-mode.el (archive-file-name-invalid-regexp): Remove. All - users changed to use file-name-invalid-regexp instead. + * arc-mode.el (archive-file-name-invalid-regexp): Remove. + All users changed to use file-name-invalid-regexp instead. * files.el (file-name-invalid-regexp): New variable, moved here from arc-mode.el. 1998-05-21 Richard Stallman <rms@psilocin.ai.mit.edu> * progmodes/vhdl-mode.el (vhdl-customize-colors): - Renamed from vhdl-use-default-colors, and sense reversed. + Rename from vhdl-use-default-colors, and sense reversed. (vhdl-customize-faces): - Renamed from vhdl-use-default-faces, and sense reversed. + Rename from vhdl-use-default-faces, and sense reversed. (vhdl-font-lock-init, vhdl-ps-init): Implement those changes. (vhdl-submit-bug-report): Use new variable names. @@ -2994,10 +2994,10 @@ FONTLIST). (x-style-funcs-alist): New variable. (create-fontset-from-fontset-spec): 2nd optional arg is changed - from STYLE to STYLE-VARIANT-P. The meaning also changed. Delete - unused code. Adjusted for the change of + from STYLE to STYLE-VARIANT-P. The meaning also changed. + Delete unused code. Adjusted for the change of uninstantiated-fontset-alist. - (instantiate-fontset): Adjusted for the change of + (instantiate-fontset): Adjust for the change of uninstantiated-fontset-alist. * international/mule.el (make-coding-system): If ISO2022 based @@ -3039,21 +3039,21 @@ 1998-05-20 Kenichi Handa <handa@etl.go.jp> - * international/fontset.el (x-font-name-charset-alist): New - variable. + * international/fontset.el (x-font-name-charset-alist): + New variable. (register-alternate-fontnames): Doc-string modified. (x-complement-fontset-spec): Likewise. - (x-complement-fontset-spec): Delete unused local variable. Delete - ad hoc code for Latin-1, instead refer to + (x-complement-fontset-spec): Delete unused local variable. + Delete ad hoc code for Latin-1, instead refer to x-font-name-charset-alist. (uninstantiated-fontset-alist): Format changed (BASE-FONTSET -> FONTLIST). (x-style-funcs-alist): New variable. (create-fontset-from-fontset-spec): 2nd optional arg is changed - from STYLE to STYLE-VARIANT-P. The meaning also changed. Delete - unused code. Adjusted for the change of + from STYLE to STYLE-VARIANT-P. The meaning also changed. + Delete unused code. Adjusted for the change of uninstantiated-fontset-alist. - (instantiate-fontset): Adjusted for the change of + (instantiate-fontset): Adjust for the change of uninstantiated-fontset-alist. * international/mule.el (make-coding-system): If ISO2022 based @@ -3083,7 +3083,7 @@ * international/mule-cmds.el: Several doc fixes. (get-language-info, set-language-info): Rename argument. (set-language-info-alist): Likewise. - (find-coding-systems-region-subset-p): Renamed from subset-p. + (find-coding-systems-region-subset-p): Rename from subset-p. (find-coding-systems-region): Use new name. (register-input-method): Rename argument. (activate-input-method): If INPUT-METHOD is nil, deactivate. @@ -3179,13 +3179,13 @@ (checkdoc-message-text-search, checkdoc-message-text-engine): New functions. (checkdoc-this-string-valid-engine): - Added ambiguous function/symbol checking. Added new auto-fix + Add ambiguous function/symbol checking. Added new auto-fix for missing parameters. 1998-05-16 Richard Stallman <rms@psilocin.ai.mit.edu> * international/mule-cmds.el (find-coding-systems-region-subset-p): - Renamed from subset-p. + Rename from subset-p. (find-coding-systems-for-charsets): Call changed. 1998-05-16 Dan Nicolaescu <done@ece.arizona.edu> @@ -3217,7 +3217,7 @@ Use expand-file-name on it. * files.el (temporary-file-directory): - Renamed from system-tmp-directory. + Rename from system-tmp-directory. Value is now a directory name, not a file name. * dired-aux.el (dired-mark-subdir-files): Doc fix. @@ -3298,10 +3298,10 @@ All callers changed. (archive-unique-fname): New function. (archive-maybe-copy): Use it. - (archive-maybe-copy, archive-write-file): Bind - coding-system-for-write to no-conversion. - (archive-maybe-update, archive-mode-revert): Bind - coding-system-for-read to no-conversion. + (archive-maybe-copy, archive-write-file): + Bind coding-system-for-write to no-conversion. + (archive-maybe-update, archive-mode-revert): + Bind coding-system-for-read to no-conversion. (archive-maybe-update): Remain at the same line in the archive listing, after updating the archive. Print the buffer name of the archive to be saved. @@ -3309,8 +3309,8 @@ read-only. Don't set buffer-file-type. Remove the write-contents hook for remote archives. Warn about read-only archives inside other archives. - (archive-write-file-member): Handle remote archives. Restore - value of last-coding-system-used. + (archive-write-file-member): Handle remote archives. + Restore value of last-coding-system-used. (archive-*-write-file-member): Handle archives inside other archives. Save the value of last-coding-system-used. (archive-write-file): New optional variable FILE: where to write @@ -3442,10 +3442,10 @@ 1998-05-08 Richard Stallman <rms@psilocin.gnu.org> - * ps-print.el (ps-alist-position): Renamed from ps-position. + * ps-print.el (ps-alist-position): Rename from ps-position. Look for ITEM as the car of an element. (ps-font-number): Use ps-alist-position. - (ps-font-alist): Renamed from ps-font-list. + (ps-font-alist): Rename from ps-font-list. * mail/reporter.el (reporter-bug-hook): Use rfc822-goto-eoh. @@ -3520,13 +3520,13 @@ 1998-05-06 Sam Steingold <sds@usa.net> - * window.el (quit-window): Fixed FRAME to be the frame and + * window.el (quit-window): Fix FRAME to be the frame and never window. 1998-05-06 Michael Kifer <kifer@cs.sunysb.edu> * ediff-init.el (ediff-highlight-all-diffs, ediff-use-faces): - Changed the defaults. + Change the defaults. 1998-05-06 Richard Stallman <rms@psilocin.gnu.org> @@ -3577,7 +3577,7 @@ 1998-05-05 Simon Marshall <simon@gnu.org> - * font-lock.el (lisp-font-lock-keywords-1): Fixed 1998-04-24 change; + * font-lock.el (lisp-font-lock-keywords-1): Fix 1998-04-24 change; moved defpackage to here from lisp-font-lock-keywords-2. 1998-05-05 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> @@ -3613,7 +3613,7 @@ Now checks for toolbar support before referring toolbars. * ediff-init.el (ediff-has-toolbar-support-p, ediff-use-toolbar-p): - Moved here from ???. + Move here from ???. * ediff-vers.el (cvs-run-ediff-on-file-descriptor): Set default-directory. @@ -3663,8 +3663,8 @@ * progmodes/compile.el (compilation-directory-stack): Doc fix. (compilation-mode): Accept optional parameter and initialize mode-name from it. - (compile-internal): Pass name-of-mode to compilation-mode. Don't - set mode-name here. + (compile-internal): Pass name-of-mode to compilation-mode. + Don't set mode-name here. (compilation-minor-mode): Don't let mode-line-process change. (compilation-next-error-locus): Use forward-char instead of move-to-column. @@ -3723,11 +3723,11 @@ 1998-05-02 Andre Spiegel <spiegel@inf.fu-berlin.de> - * vc-hooks.el (vc-parse-cvs-status): Optimized. Ignore - "Locally Removed" files. + * vc-hooks.el (vc-parse-cvs-status): Optimize. + Ignore "Locally Removed" files. * vc.el (vc-fetch-cvs-status): Don't specify DIR on the command line. - (vc-dired-hook): Optimized for CVS. + (vc-dired-hook): Optimize for CVS. 1998-05-02 Richard Stallman <rms@psilocin.gnu.org> @@ -3776,19 +3776,19 @@ (file-cache-add-directory): Checks to see if directory exists before adding it. Non-existing directories are simply skipped. - * generic.el (generic): Added defgroup declaration. + * generic.el (generic): Add defgroup declaration. (generic-make-keywords-list): Uses regexp-opt. (generic-mode-set-font-lock): Uses regexp-opt. - * generic-x.el (generic-x): Added defgroup declaration. + * generic-x.el (generic-x): Add defgroup declaration. - * generic-x.el (generic-bat-mode-setup-function): Fixed comment-start + * generic-x.el (generic-bat-mode-setup-function): Fix comment-start variable. - * generic-x.el (generic-define-mswindows-modes): Enable - hosts-generic-mode and apache-generic-mode. + * generic-x.el (generic-define-mswindows-modes): + Enable hosts-generic-mode and apache-generic-mode. (generic-define-unix-modes): Enable alias-generic-mode. - (java-properties-generic-mode): Changed regexp to allow property + (java-properties-generic-mode): Change regexp to allow property and value to be separated by whitespace or an equal sign. (alias-generic-mode): Check generic-extras-enable-list before defining this mode. @@ -3815,8 +3815,8 @@ (universal-coding-system-argument): Use buffer-file-coding-system as default. - * international/quail.el (quail-show-translations): Show - followable keys in alphabetic order. + * international/quail.el (quail-show-translations): + Show followable keys in alphabetic order. 1998-04-29 Richard Stallman <rms@psilocin.gnu.org> @@ -3937,10 +3937,10 @@ (ispell-dictionary-alist): Now customizable. Fixed type of custom variables: ispell-help-in-bufferp. (ispell-use-framepop-p): New variable. - (ispell-dictionary-alist): Added dictionaries: castellano, castellano8 + (ispell-dictionary-alist): Add dictionaries: castellano, castellano8 czech, esperanto, esperanto-tex, norsk, russian. Capitalize XEmacs correctly, and change lucid to xemacs in code. - (ispell-menu-lucid): Renamed to ispell-menu-xemacs. + (ispell-menu-lucid): Rename to ispell-menu-xemacs. Changed string compares for version number to be correct for XEmacs. Fixed to work with string properties. (ispell-recursive-edit-marker): New marker saving return point. @@ -4003,7 +4003,7 @@ 1998-04-28 Inge Frick <inge@nada.kth.se> - * emacs-lisp/easymenu.el (easy-menu-define-key): Fixed bug with BEFORE + * emacs-lisp/easymenu.el (easy-menu-define-key): Fix bug with BEFORE argument. Now it works also if you repeat an identical call to easy-menu-define-key. @@ -4099,7 +4099,7 @@ * emacs-lisp/cl-indent.el: Indent defpackage correctly. - * font-lock.el (lisp-font-lock-keywords-2): Added `defpackage'. + * font-lock.el (lisp-font-lock-keywords-2): Add `defpackage'. 1998-04-23 Geoff Voelker <voelker@cs.washington.edu> @@ -4126,17 +4126,17 @@ * easymenu.el: Use new menu item format. Don't simulate button prefix. (easy-menu-create-menu): Understand also keywords :active, :label and :visible. Don't worry about button prefix. - (easy-menu-button-prefix): Modified value. + (easy-menu-button-prefix): Modify value. (easy-menu-do-add-item): Extensive changes to use new menu item format. (easy-menu-define-key, easy-menu-always-true): New functions. - (easy-menu-make-symbol): Don't use indirection for symbols. Property - `menu-alias' not set. - (easy-menu-filter, easy-menu-update-button): Deleted. + (easy-menu-make-symbol): Don't use indirection for symbols. + Property `menu-alias' not set. + (easy-menu-filter, easy-menu-update-button): Delete. (easy-menu-add-item): Don't worry about button prefix. - (easy-menu-remove-item): Don't worry about button prefix. Use - `easy-menu-define-key'. - (easy-menu-is-button, easy-menu-have-button): Deleted. - (easy-menu-real-binding, easy-menu-change-prefix): Deleted. + (easy-menu-remove-item): Don't worry about button prefix. + Use `easy-menu-define-key'. + (easy-menu-is-button, easy-menu-have-button): Delete. + (easy-menu-real-binding, easy-menu-change-prefix): Delete. 1998-04-23 Richard Stallman <rms@psilocin.gnu.org> @@ -4177,8 +4177,8 @@ 1998-04-22 Eli Zaretskii <eliz@delysid.gnu.org> - * term/pc-win.el (x-select-text, x-get-selection-value): Replace - win16 with w16. + * term/pc-win.el (x-select-text, x-get-selection-value): + Replace win16 with w16. 1998-04-22 Dave Love <fx@gnu.org> @@ -4244,9 +4244,9 @@ 1998-04-20 Piet van Oostrum <piet@cs.ruu.nl> - * smtpmail.el (smtpmail-send-it): Deleted all code related + * smtpmail.el (smtpmail-send-it): Delete all code related to Resent-To: processing. - (smtpmail-deduce-address-list): Changed the search for + (smtpmail-deduce-address-list): Change the search for Resent-\(To\|Cc\|Bcc\) headers. (smtpmail-do-bcc): Delete Resent-Bcc: headers. @@ -4308,11 +4308,11 @@ 1998-04-20 Kenichi Handa <handa@etl.go.jp> - * international/ccl.el (ccl-compile-unify-character): Inhibit - unification tables specified by integer value. + * international/ccl.el (ccl-compile-unify-character): + Inhibit unification tables specified by integer value. (ccl-compile-translate-single-map): Likewise. (ccl-compile-multiple-map-function): Likewise. - (ccl-compile-translate-multiple-map): Modified for nested tables. + (ccl-compile-translate-multiple-map): Modify for nested tables. (ccl-dump-iterate-multiple-map): Handle the case that ID is not integer. (ccl-dump-translate-multiple-map): Likewise. @@ -4323,8 +4323,8 @@ * international/mule.el (make-coding-system): If TYPE is 4, FLAGS can be a cons of CCL-PROGRAM symbols. - * international/quail.el (quail-start-translation): Bind - prefix-arg to current-prefix-arg. + * international/quail.el (quail-start-translation): + Bind prefix-arg to current-prefix-arg. (quail-mode): Doc-string modified. * language/cyrillic.el: FLAGS arguments for make-coding-system @@ -4367,7 +4367,7 @@ * which-func.el (which-func): Add defgroup. - * emacs-lisp/checkdoc.el (checkdoc): Added :version. + * emacs-lisp/checkdoc.el (checkdoc): Add :version. * play/gametree.el (gametree): Likewise. @@ -4442,8 +4442,8 @@ (ange-ftp-file-name-all-completions): Handle Windows filenames. (file-name-handler-alist) [windows-nt]: Add patterns for name with drive letters. - (ange-ftp-dired-call-process, ange-ftp-call-chmod): Use - dired-chmod-program. + (ange-ftp-dired-call-process, ange-ftp-call-chmod): + Use dired-chmod-program. (ange-ftp-disable-netrc-security-check) [windows-nt]: Disable by default. (ange-ftp-real-expand-file-name-actual): New function. @@ -4504,8 +4504,8 @@ (cperl-beautify-levels): New command. (cperl-electric-keyword): Allow here-docs contain `=head1' and friends for keyword expansion. - Fix for broken `font-lock-unfontify-region-function'. Should - preserve `syntax-table' properties even with `lazy-lock'. + Fix for broken `font-lock-unfontify-region-function'. + Should preserve `syntax-table' properties even with `lazy-lock'. (cperl-indent-region-fix-else): New command. (cperl-fix-line-spacing): New command. (cperl-invert-if-unless): New command (C-c C-t and in Menu). @@ -4517,7 +4517,7 @@ Workaround for another `font-lock's `syntax-table' text-property bug. `zerop' could be applied to nil. At last, may work with `font-lock' without setting `cperl-font-lock'. - (cperl-indent-region-fix-constructs): Renamed from + (cperl-indent-region-fix-constructs): Rename from `cperl-indent-region-fix-constructs'. (cperl-fix-line-spacing): Could be triggered inside strings, would not know what to do with BLOCKs of map/printf/etc. @@ -4535,9 +4535,9 @@ (cperl-set-style-back): Old value of style is memorized when choosing a new style, may be restored from the same menu. Mode-documentation added to micro-docs. - (cperl-praise): Updated. + (cperl-praise): Update. (cperl-toggle-construct-fix): New command. Added on C-c C-w and menu. - (auto-fill-mode): Added on C-c C-f and menu. + (auto-fill-mode): Add on C-c C-f and menu. (cperl-style-alist): `PerlStyle' style added. (cperl-find-pods-heres): Message for termination of scan corrected. (cperl-speed): New variable with hints. @@ -4592,8 +4592,8 @@ * arc-mode.el (archive-extract-by-stdout): Don't use binary-process-output. Bind coding-system-for-read `undecided', - so coding system is determined on the fly. Bind - inherit-process-coding-system to t. + so coding system is determined on the fly. + Bind inherit-process-coding-system to t. (archive-dos-members): Remove. (archive-extract): Don't call archive-check-dos. Handle pkunzip errors. @@ -4690,7 +4690,7 @@ * vc.el (vc-next-action-on-file): Don't check out after registering. This is two steps instead of one, and the second does not make sense under CVS. - (vc-next-action): Changed doc string to reflect the above. + (vc-next-action): Change doc string to reflect the above. 1998-04-14 Andreas Schwab <schwab@mescaline.gnu.org> @@ -4804,7 +4804,7 @@ 1998-04-09 Andre Spiegel <spiegel@inf.fu-berlin.de> - * vc.el (vc-next-action): Fixed bug that prevented registering + * vc.el (vc-next-action): Fix bug that prevented registering files using C-x v v. 1998-04-09 Stephen Eglen <stephen@gnu.org> @@ -4843,7 +4843,7 @@ * gud.el (jdb): Do proper analysis of classes defined in a Java source. This removes the restriction of one class per file. - (gud-jdb-package-of-file): Removed. Replaced with parsing routines. + (gud-jdb-package-of-file): Remove. Replaced with parsing routines. (gud-jdb-skip-whitespace): New function. (gud-jdb-skip-single-line-comment): New function. (gud-jdb-skip-traditional-or-documentation-comment): New function. @@ -4914,7 +4914,7 @@ (fortran-mode): Make `fill-column' buffer-local; set `fill-paragraph-function', `indent-region-function', `indent-line-function'. - (calculate-fortran-indent): Renamed to `fortran-calculate-indent'. + (calculate-fortran-indent): Rename to `fortran-calculate-indent'. (fortran-split-line): Simplify. (fortran-remove-continuation): New function. (fortran-join-line): Use it. @@ -4967,18 +4967,18 @@ * language/japanese.el: Set exit-function to exit-japanese-environment for Japanese environment. - * language/japan-util.el (setup-japanese-environment): Setup - sentence-end suitable for Japanese text. + * language/japan-util.el (setup-japanese-environment): + Setup sentence-end suitable for Japanese text. (exit-japanese-environment): New function. - * international/mule-cmds.el (subset-p): Renamed from + * international/mule-cmds.el (subset-p): Rename from find-safe-coding-system-list-subset-p. - (find-coding-systems-region, find-coding-systems-string): New - functions. - (find-coding-systems-for-charsets): Renamed from + (find-coding-systems-region, find-coding-systems-string): + New functions. + (find-coding-systems-for-charsets): Rename from find-safe-coding-system. This is now a helper function of the above two. - (select-safe-coding-system): Adjusted for the above changes. + (select-safe-coding-system): Adjust for the above changes. 1998-04-05 Per Abrahamsen <abraham@dina.kvl.dk> @@ -4997,14 +4997,14 @@ hook, not a local variable. * vc.el (vc-merge, vc-backend-merge): New functions. - (vc-resolve-conflicts): Added optional parameters for buffer names. + (vc-resolve-conflicts): Add optional parameters for buffer names. (vc-branch-p): New function. - * vc-hooks.el (vc-prefix-map): Added "m" for vc-merge. + * vc-hooks.el (vc-prefix-map): Add "m" for vc-merge. * vc.el (vc-ensure-vc-buffer): New function. - (vc-registration-error): Replaced by the above. Updated all callers. - (file-executable-p-18, file-regular-p-18): Removed. + (vc-registration-error): Replace by the above. Updated all callers. + (file-executable-p-18, file-regular-p-18): Remove. 1998-04-05 Richard Stallman <rms@psilocin.gnu.org> @@ -5066,15 +5066,15 @@ 1998-04-03 Andre Spiegel <spiegel@inf.fu-berlin.de> * vc-hooks.el (vc-parse-cvs-status): New function. - (vc-fetch-master-properties): Moved cvs status retrieval to + (vc-fetch-master-properties): Move cvs status retrieval to the above. (vc-backend): If a file is not registered, remember that by setting the property to `none'. (vc-name): Use the mechanism of vc-backend to compute the value. (vc-after-save): Don't access vc-backend property directly. - * vc.el (vc-next-action-dired): Use dired-do-redisplay. Handle - window configuration correctly. + * vc.el (vc-next-action-dired): Use dired-do-redisplay. + Handle window configuration correctly. (vc-next-action): Save window configuration for vc-next-action-dired. (vc-finish-logentry): Only kill log buffer if it does exist. (vc-dired-mode): Rewritten so that it works entirely through @@ -5082,9 +5082,9 @@ ordinary dired. (vc-dired-hook): New function. (vc-state-info, vc-dired-reformat-line): Adapted. - (vc-dired-update, vc-dired-update-line): Removed. + (vc-dired-update, vc-dired-update-line): Remove. (vc-directory): Rewritten. - (vc-directory-18): Removed. + (vc-directory-18): Remove. (vc-dired-mark-locked): New function, bound to "*l" in vc-dired-mode. (vc-do-command): Only compute vc-name if it is really needed. (vc-fetch-cvs-status): New function. @@ -5121,7 +5121,7 @@ * help.el: Make hyperlinks for cross-reference info intuited from *Help* buffer. - (help-font-lock-keywords): Removed. + (help-font-lock-keywords): Remove. (help-mode-map): Define keys for navigating hyperlinks. (help-xref-stack, help-xref-stack-item): New permanent-local variables. @@ -5138,8 +5138,8 @@ New variables. (help-setup-xref, help-make-xrefs, help-xref-button) (help-xref-interned, help-xref-mode, help-follow-mouse) - (help-xref-go-back, help-go-back, help-follow, help-next-ref): New - functions. + (help-xref-go-back, help-go-back, help-follow, help-next-ref): + New functions. 1998-04-02 Richard Stallman <rms@psilocin.gnu.org> @@ -5216,7 +5216,7 @@ (iswitchb-complete): Use iswitchb-common-match-string rather than recomputing the value. (iswitchb-toggle-ignore): Recompute list of buffers. - (iswitchb-init-XEmacs-trick): Renamed from iswitchb-init-Xemacs-trick. + (iswitchb-init-XEmacs-trick): Rename from iswitchb-init-Xemacs-trick. 1998-03-31 Andre Spiegel <spiegel@inf.fu-berlin.de> @@ -5300,8 +5300,8 @@ 1998-03-25 Simon Marshall <simon@gnu.org> - * font-lock.el (c-font-lock-keywords-2): Added "sizeof". - (c++-font-lock-keywords-2): Added "export" and "typename". + * font-lock.el (c-font-lock-keywords-2): Add "sizeof". + (c++-font-lock-keywords-2): Add "export" and "typename". * lazy-lock.el (lazy-lock-fontify-after-scroll) (lazy-lock-fontify-after-trigger): Use new window-end UPDATE arg @@ -5324,8 +5324,8 @@ 1998-03-23 Andreas Schwab <schwab@gnu.org> - * xt-mouse.el (xterm-mouse-translate, xterm-mouse-event): Replace - obsolete `concat with integer' by format. + * xt-mouse.el (xterm-mouse-translate, xterm-mouse-event): + Replace obsolete `concat with integer' by format. * rsz-mini.el (resize-minibuffer-mode): Make it a proper minor mode: toggle resize-minibuffer mode when called without argument. @@ -5341,8 +5341,8 @@ 1998-03-22 Johan Vromans <jvromans@squirrel.nl> - * complete.el (PC-expand-many-files): Apply - completion-ignored-extensions. + * complete.el (PC-expand-many-files): + Apply completion-ignored-extensions. 1998-03-21 Richard Stallman <rms@psilocin.gnu.org> @@ -5361,8 +5361,8 @@ when user tries to check-in, but file on disk has changed. (vc-do-command): Rewrote doc string. Consider LAST argument only if FILE is non-nil. - (vc-add-triple, vc-record-rename, vc-lookup-file): Find - vc-name-assoc-file based on vc-name of FILE. + (vc-add-triple, vc-record-rename, vc-lookup-file): + Find vc-name-assoc-file based on vc-name of FILE. (vc-backend-admin, vc-rename-file): Handle the SCCS PROJECTDIR feature. @@ -5406,8 +5406,8 @@ 1998-03-18 Dave Love <fx@gnu.org> - * emacs-lisp/lisp-mode.el (lisp-fill-paragraph): Adjust - paragraph-start in default filling case so that filling doc + * emacs-lisp/lisp-mode.el (lisp-fill-paragraph): + Adjust paragraph-start in default filling case so that filling doc strings works. 1998-03-18 Andre Spiegel <spiegel@inf.fu-berlin.de> @@ -5446,9 +5446,9 @@ 1998-03-16 Peter Breton <pbreton@ne.mediaone.net> * generic-x.el: Customize. - (fvwm-generic-mode): Added new keywords, and .fvwm2rc config file. - (ini-generic-mode): Changed regexps so that value can contain equal signs. - (java-manifest-generic-mode): Added new keywords. + (fvwm-generic-mode): Add new keywords, and .fvwm2rc config file. + (ini-generic-mode): Change regexps so that value can contain equal signs. + (java-manifest-generic-mode): Add new keywords. 1998-03-16 Alfred Correira <ACorreir@pervasive-sw.com> @@ -5496,9 +5496,9 @@ * locate.el (locate-current-line-number): No longer interactive. * dirtrack.el: Customized. - (dirtrack-forward-slash): Renamed from `forward-slash'. - (dirtrack-backward-slash): Renamed from `backward-slash'. - (dirtrack-replace-slash): Renamed from `replace-slash'. + (dirtrack-forward-slash): Rename from `forward-slash'. + (dirtrack-backward-slash): Rename from `backward-slash'. + (dirtrack-replace-slash): Rename from `replace-slash'. * emacs-lisp/elp.el (elp-version): Now 3.2. @@ -5587,17 +5587,17 @@ (undo-start): New args BEG and END. (undo): If arg or active region, pass args to undo-start. - * mouse.el (mouse-buffer-menu-maxlen): Renamed from + * mouse.el (mouse-buffer-menu-maxlen): Rename from mouse-menu-buffer-maxlen. 1998-03-10 Eric M. Ludlam <zappo@ultranet.com> - * checkdoc.el (checkdoc-continue): Removed check for doc string. + * checkdoc.el (checkdoc-continue): Remove check for doc string. (checkdoc-this-string-valid-engine): Smarter keycode check regexp. 1998-03-10 Carsten Dominik <cd@delysid.gnu.org> - * textmodes/reftex.el (reftex-mode-map): Added keybinding for + * textmodes/reftex.el (reftex-mode-map): Add keybinding for `reftex-mouse-view-crossref' to `S-mouse-2'. 1998-03-09 Carsten Dominik <cd@delysid.gnu.org> @@ -5634,7 +5634,7 @@ 1998-03-08 Carsten Dominik <cd@gnu.org> * textmodes/reftex.el (reftex-offer-label-menu) - (reftex-select-item): Removed match-everywhere interpretation. + (reftex-select-item): Remove match-everywhere interpretation. 1998-03-08 Carsten Dominik <cd@gnu.org> @@ -5660,8 +5660,8 @@ (vc-resynch-buffer): When operating on the current buffer, don't use save-excursion, because that would undo the effects of the above functions. - (vc-clear-headers): Fixed regexp. - (vc-resynch-window): Deleted code that removed vc-find-file-hook + (vc-clear-headers): Fix regexp. + (vc-resynch-window): Delete code that removed vc-find-file-hook temporarily. This was unnecessary, because find-file-hooks are not called when the buffer is reverted. @@ -5671,7 +5671,7 @@ 1998-03-07 Richard Stallman <rms@psilocin.gnu.org> - * subr.el (read-passwd): Renamed from read-password. + * subr.el (read-passwd): Rename from read-password. New second arg CONFIRM. * wid-edit.el (widget-choice-value-create): If there is an @@ -5684,7 +5684,7 @@ * dos-fns.el, find-file.el, follow.el, ispell4.el, shadowfile.el: * tempo.el, tmm.el, vcursor.el, xscheme.el: Customize. -1998-03-06 Barry A. Warsaw <cc-mode-help@python.org> +1998-03-06 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * Release 5.21 @@ -5697,7 +5697,7 @@ * progmodes/cc-engine.el (c-inside-bracelist-p): Fix for enum test. * progmodes/cc-mode.el (c-initialize-cc-mode): - Moved require's to top level. + Move require's to top level. * progmodes/cc-cmds.el (c-fill-paragraph): Bind fill-paragraph-function to nil when calling fill-paragraph, @@ -5711,8 +5711,8 @@ the same relative position. Fill comment before point if there's nothing else on the same line. Fill block comments after code a little better. Try harder to find a good fill-prefix when point - is on a block comment ender line. Use - c-Java-javadoc-paragraph-start in block comments in Java mode. + is on a block comment ender line. + Use c-Java-javadoc-paragraph-start in block comments in Java mode. Leave block comment ender alone when c-hanging-comment-ender-p is nil and point is on that line. Detect paragraph-separate in multiparagraph comments. Fix for bug that may strip the `*' off @@ -5733,8 +5733,8 @@ always bol. It's always bol when on the top level, however. Changed cases: 5A.5, 5I, 14A. - * progmodes/cc-engine.el (c-forward-token-1, c-backward-token-1): New - functions to move by tokens. + * progmodes/cc-engine.el (c-forward-token-1, c-backward-token-1): + New functions to move by tokens. (c-guess-basic-syntax): Fixes for Java 1.1 array initialization brace lists. @@ -5791,19 +5791,19 @@ 1998-03-06 Kenichi Handa <handa@etl.go.jp> - * international/titdic-cnv.el (titdic-convert): Use - set-buffer-multibyte. + * international/titdic-cnv.el (titdic-convert): + Use set-buffer-multibyte. * international/quail.el (quail-defrule-internal): New arg REPLACE. (quail-defrule): Call quail-defrule-internal with REPLACE t. 1998-03-05 Peter Breton <pbreton@ne.mediaone.net> - * generic.el (generic-mode-ini-file-find-file-hook): Use - and-s instead of if-s. - (generic-use-find-file-hook): Changed from defvar to defcustom. - (generic-lines-to-scan): Changed from defvar to defcustom. - (generic-find-file-regexp): Changed from defvar to defcustom. + * generic.el (generic-mode-ini-file-find-file-hook): + Use and-s instead of if-s. + (generic-use-find-file-hook): Change from defvar to defcustom. + (generic-lines-to-scan): Change from defvar to defcustom. + (generic-find-file-regexp): Change from defvar to defcustom. 1998-03-05 Ivar Rummelhoff <ivarr@ifi.uio.no> @@ -5829,14 +5829,14 @@ configuration if the same command (changing the window configuration) is applied several times in a row. - * winner.el (winner-switch): Removed the command + * winner.el (winner-switch): Remove the command `winner-switch' (and the variables connected to it), since because of the change above, any "switching package" may now be used without disturbing winner-mode too much. * winner.el: Use list syntax for key definitions. - * winner.el (winner-change-fun): Removed the pushnew + * winner.el (winner-change-fun): Remove the pushnew command, so that `cl' will not have to be loaded. * winner.el (winner-set-conf): Introduced "wrapper" around @@ -5969,12 +5969,12 @@ * subr.el (sref): Typo in doc-string fixed. - * international/mule-cmds.el (set-default-coding-systems): Set - default-file-name-coding-system. Doc-string modified. + * international/mule-cmds.el (set-default-coding-systems): + Set default-file-name-coding-system. Doc-string modified. (prefer-coding-system): Doc-string modified. - * language/japan-util.el (setup-japanese-environment): Set - default-file-name-coding-system to japanese-iso-8bit. + * language/japan-util.el (setup-japanese-environment): + Set default-file-name-coding-system to japanese-iso-8bit. 1998-03-02 Richard Stallman <rms@psilocin.gnu.org> @@ -6004,18 +6004,18 @@ 1998-03-01 Peter Breton <pbreton@ne.mediaone.net> * locate.el (locate-update): New function. - (locate-current-line-number): Renamed from `current-line'. + (locate-current-line-number): Rename from `current-line'. (locate-default-make-command-line): Use list, not cons. - (locate): Added a `save-window-excursion' form. + (locate): Add a `save-window-excursion' form. (locate): Used an `apply' form for the start-process call. (locate-mode): Now has a `revert-buffer-function'. (locate-do-setup): Now longer deletes window. (locate-header-face): Use underline, not region. (locate-update-command): New option. - (locate-command): Changed from defvar to defcustom. - (locate-make-command-line): Changed from defvar to defcustom. - (locate-fcodes-file): Changed from defvar to defcustom. - (locate-mouse-face): Changed from defvar to defcustom. + (locate-command): Change from defvar to defcustom. + (locate-make-command-line): Change from defvar to defcustom. + (locate-fcodes-file): Change from defvar to defcustom. + (locate-mouse-face): Change from defvar to defcustom. 1998-02-28 Richard Stallman <rms@psilocin.gnu.org> @@ -6048,8 +6048,8 @@ 1998-02-27 Karl Heuer <kwzh@gnu.org> * dired-x.el (dired-do-toggle): Function moved to dired.el. - * dired.el (dired-do-toggle): Moved here from dired-x.el. - (dired-mode-map): Changed dired-do-toggle from "T" to "t". + * dired.el (dired-do-toggle): Move here from dired-x.el. + (dired-mode-map): Change dired-do-toggle from "T" to "t". 1998-02-27 Carsten Dominik <dominik@strw.LeidenUniv.nl> @@ -6090,21 +6090,21 @@ (custom-save-delete): Use it. (custom-save-all): Use it. - * shell.el (shell-dirtrack-mode): Renamed from shell-dirtrack-toggle. - (dirtrack-mode, shell-dirtrack-toggle): Defined as aliases. + * shell.el (shell-dirtrack-mode): Rename from shell-dirtrack-toggle. + (dirtrack-mode, shell-dirtrack-toggle): Define as aliases. 1998-02-25 Carsten Dominik <dominik@strw.LeidenUniv.nl> * textmodes/reftex.el (reftex-toc-mode, reftex-select-label-mode) (reftex-select-bib-mode): New major modes for RefTeX's special buffers. (reftex-offer-label-menu): Put selection buffer into - `reftex-select-label-mode'. Make selection buffer read-only. Use - `reftex-erase-buffer'. + `reftex-select-label-mode'. Make selection buffer read-only. + Use `reftex-erase-buffer'. (reftex-do-citation): Put selection buffer into - `reftex-select-bib-mode'. Make selection buffer read-only. Use - `reftex-erase-buffer'. Set `reftex-select-return-marker'. - (reftex-toc): Put *toc* buffer into reftex-toc-mode. Add - mouse-face property. + `reftex-select-bib-mode'. Make selection buffer read-only. + Use `reftex-erase-buffer'. Set `reftex-select-return-marker'. + (reftex-toc): Put *toc* buffer into reftex-toc-mode. + Add mouse-face property. (reftex-select-item): Use recursive edit instead of selfmade command loop. Removed unnecessary local bindings. Changed the tag for catch, to avoid problems with `exit' tag in @@ -6126,13 +6126,13 @@ (reftex-select-search-backward, reftex-select-search) (reftex-select-scroll-up, reftex-select-scroll-down) (reftex-scroll-other-window, reftex-scroll-other-window-down) - (reftex-empty-toc-buffer): Removed obsolete functions. - (reftex-highlight-overlays): Removed obsolete 3rd overlay. - (reftex-select-label-map, reftex-select-bib-map): Removed obsolete + (reftex-empty-toc-buffer): Remove obsolete functions. + (reftex-highlight-overlays): Remove obsolete 3rd overlay. + (reftex-select-label-map, reftex-select-bib-map): Remove obsolete bindings, added mouse bindings, `digit-argument', `negative-argument', `reftex-select-show-insertion-point'. (reftex-erase-buffer): BUFFER now defaults to current buffer. - (reftex-label-alist-builtin): Added sidecap packages support. + (reftex-label-alist-builtin): Add sidecap packages support. (reftex-last-follow-point, reftex-select-return-marker): New variables. (reftex-toc, reftex-select-item): Set `reftex-last-follow-point'. (reftex-toc-post-command-hook): Use `reftex-last-follow-point'. @@ -6208,7 +6208,7 @@ * font-lock.el (font-lock-constant-face): Variable and face renamed from font-lock-reference-face. - (font-lock-reference-face): Changed value to font-lock-constant-face. + (font-lock-reference-face): Change value to font-lock-constant-face. * add-log.el: * dired.el: @@ -6246,12 +6246,12 @@ 1998-02-19 Kenichi Handa <handa@etl.go.jp> * international/mule.el - (after-insert-file-set-buffer-file-coding-system): Call - set-buffer-multibyte instead of directly setting + (after-insert-file-set-buffer-file-coding-system): + Call set-buffer-multibyte instead of directly setting enable-multibyte-characters to nil. - * language/china-util.el (setup-chinese-cns-environment): Correct - the setting of default-input-method. + * language/china-util.el (setup-chinese-cns-environment): + Correct the setting of default-input-method. * international/mule-cmds.el (select-safe-coding-system): Kill the warning buffer before returning. @@ -6294,7 +6294,7 @@ * info-look.el (info-complete): Rewrite minibuffer completion code. * info-look.el (info-lookup-minor-mode, turn-on-info-lookup): - Added minor mode interface. + Add minor mode interface. (info-lookup-minor-mode-string): New variable. (info-lookup-minor-mode-map): New variable. @@ -6305,8 +6305,8 @@ (info-lookup-highlight-face): Variables customized. * info-look.el (info-lookup-alist): No longer customizable. - (info-lookup-add-help, info-lookup-maybe-add-help): Interface - functions for adding new modes. + (info-lookup-add-help, info-lookup-maybe-add-help): + Interface functions for adding new modes. (info-lookup-add-help*): New function. (info-lookup-symbol-alist, info-lookup-file-alist): Variables deleted. This info is specified now by calling info-lookup-maybe-add-help @@ -6336,10 +6336,10 @@ `parse-partial-sexp' contains the starting pos of the last literal. -1998-02-16 Barry A. Warsaw <cc-mode-help@python.org> +1998-02-16 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> - * progmodes/cc-mode.el (c-mode, c++-mode, objc-mode, java-mode): Set - imenu-case-fold-search to nil. + * progmodes/cc-mode.el (c-mode, c++-mode, objc-mode, java-mode): + Set imenu-case-fold-search to nil. * progmodes/cc-langs.el (c-postprocess-file-styles): If a file style or file offsets are set, make the variables local to the @@ -6352,8 +6352,8 @@ * progmodes/cc-defs.el (c-point): In XEmacs, use scan-lists + buffer-syntactic-context-depth. - * progmodes/cc-vars.el (c-enable-xemacs-performance-kludge-p): New - variable. + * progmodes/cc-vars.el (c-enable-xemacs-performance-kludge-p): + New variable. * progmodes/cc-cmds.el, progmodes/cc-engine.el (c-beginning-of-defun) (c-indent-defun, c-parse-state): Use (c-point 'bod) instead of @@ -6362,7 +6362,7 @@ * progmodes/cc-align.el (c-semi&comma-no-newlines-before-nonblanks) (c-semi&comma-no-newlines-for-oneline-inliners): New functions. - * progmodes/cc-engine.el (c-guess-basic-syntax): Fixed a few byte + * progmodes/cc-engine.el (c-guess-basic-syntax): Fix a few byte compiler warnings. * progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): @@ -6379,8 +6379,8 @@ * progmodes/cc-langs.el (c-java-method-key): Variable deleted. - * progmodes/cc-mode.el (java-mode): Set c-method-key to nil. I - don't think this is necessary for Java, and besides, the old value + * progmodes/cc-mode.el (java-mode): Set c-method-key to nil. + I don't think this is necessary for Java, and besides, the old value was inherited from Objective-C which was clearly not right. * progmodes/cc-cmds.el (c-electric-colon): Don't insert newlines @@ -6397,10 +6397,10 @@ * progmodes/cc-cmds.el (c-electric-brace): namespace-open and namespace-close braces can hang. - * progmodes/cc-defs.el (c-emacs-features): Added autoload cookie. + * progmodes/cc-defs.el (c-emacs-features): Add autoload cookie. - * progmodes/cc-engine.el (c-search-uplist-for-classkey): When - searching up for a class key, instead of hardcoding the extended + * progmodes/cc-engine.el (c-search-uplist-for-classkey): + When searching up for a class key, instead of hardcoding the extended search for "extern", use the new variable c-extra-toplevel-key, which is language dependent. For C++, this variable includes the keyword "namespace" which will match C++ namespace introducing @@ -6415,14 +6415,14 @@ CASE 3: we can now determine whether we're at the beginning of a cpp macro definition, or inside the middle of one. Set syntax to - 'cpp-macro in the former case, 'cpp-macro-cont in the latter. In - both cases, the relpos is the beginning of the macro. + 'cpp-macro in the former case, 'cpp-macro-cont in the latter. + In both cases, the relpos is the beginning of the macro. - (c-forward-syntactic-ws): Added code that skips forward over + (c-forward-syntactic-ws): Add code that skips forward over multi-line cpp macros. - (c-beginning-of-macro): Moved, and made into a defsubst. This - function can now actually find the beginning of a multi-line C + (c-beginning-of-macro): Move, and made into a defsubst. + This function can now actually find the beginning of a multi-line C preprocessor macro. (c-backward-syntactic-ws): Use c-beginning-of-macro to skip @@ -6443,8 +6443,8 @@ (c-initialize-on-load): New variable, *not* customized. * progmodes/cc-styles.el (c-offsets-alist): Three new syntactic - symbols: innamespace, namespace-open, namespace-close. These - support C++ namespace blocks. + symbols: innamespace, namespace-open, namespace-close. + These support C++ namespace blocks. Also, new syntactic symbol cpp-macro-cont, by default bound to c-lineup-dont-change. This symbol is assigned to subsequent lines of a multi-line C preprocess macro definition. @@ -6483,7 +6483,7 @@ Introduce the new default style "user" which contains all user customizations. - * progmodes/cc-vars.el (c-default-style): Renamed from + * progmodes/cc-vars.el (c-default-style): Rename from c-site-default-style. 1998-02-15 Aki Vehtari <Aki.Vehtari@hut.fi> @@ -6500,13 +6500,13 @@ `bibtex-autokey-before-presentation-function' as it is not hook. (bibtex-autokey-get-namefield): Remove newlines unconditionally. - * bibtex.el (bibtex-autokey): Fixed prefix. + * bibtex.el (bibtex-autokey): Fix prefix. (bibtex-user-optional-fields): Better `:type'. (bibtex-autokey-names): Better `:type' and doc-fix. (bibtex-mark-active): New function, taking care of Emacs variants. (bibtex-run-with-idle-timer): Ditto. (bibtex-mode-map): Change `[(control tab)]' to `[(meta tab)]'. - (bibtex-autokey-get-yearfield): Changed to accept year when year + (bibtex-autokey-get-yearfield): Change to accept year when year field has field-delimiters. This is quick fix, there might be better solution. (bibtex-mode): Don't call idle timer with 0 seconds. @@ -6514,7 +6514,7 @@ 1998-02-15 Dirk Herrmann <D.Herrmann@tu-bs.de> - * bibtex.el (bibtex-autokey-get-yearfield): Fixed problem with + * bibtex.el (bibtex-autokey-get-yearfield): Fix problem with parsing the year field. * bibtex.el (bibtex-comment-start): Font locking for comments added. @@ -6526,7 +6526,7 @@ * bibtex.el (bibtex-autokey-get-titles): Non capitalized title words are used for key generation as well. (bibtex-member-of-regexp): Case is honored for matches now. - (bibtex-autokey-titleword-ignore): Added entries provide compatibility + (bibtex-autokey-titleword-ignore): Add entries provide compatibility to former behavior. * bibtex.el (bibtex-autokey-titleword-ignore): Title words found in @@ -6561,7 +6561,7 @@ (info-look-completion): New variable. * info-look.el (info-lookup-symbol-alist): - Added support for latex-mode, perl-mode, awk-mode, emacs-lisp-mode. + Add support for latex-mode, perl-mode, awk-mode, emacs-lisp-mode. 1998-02-13 Richard Stallman <rms@psilocin.gnu.org> @@ -6575,12 +6575,12 @@ 1998-02-12 Dave Love <fx@gnu.org> - * progmodes/scheme.el (scheme-imenu-generic-expression): Simplify - regexps. + * progmodes/scheme.el (scheme-imenu-generic-expression): + Simplify regexps. (dsssl-imenu-generic-expression): Likewise. (scheme-mode-variables): Set imenu-syntax-alist. - (dsssl-mode): Remove `!' from font-lock-defaults. Set - imenu-syntax-alist. + (dsssl-mode): Remove `!' from font-lock-defaults. + Set imenu-syntax-alist. 1998-02-11 Richard Stallman <rms@psilocin.gnu.org> @@ -6667,12 +6667,12 @@ * international/kinsoku.el: Use aref instead of sref. - * international/mule-cmds.el (find-safe-coding-system): Return - undecided if FROM == TO. + * international/mule-cmds.el (find-safe-coding-system): + Return undecided if FROM == TO. (select-safe-coding-system): Doc-string modified. - * international/mule-util.el (compose-chars-component): Return - result as unibyte string. + * international/mule-util.el (compose-chars-component): + Return result as unibyte string. (decompose-composite-char): Doc-string modified. * international/titdic-cnv.el: Many codes re-written to adjust for @@ -6724,7 +6724,7 @@ 1998-02-02 Dan Nicolaescu <done@ece.arizona.edu> - * progmodes/hideshow.el (hs-special-modes-alist): Enhanced java + * progmodes/hideshow.el (hs-special-modes-alist): Enhance java regexp. 1998-02-02 Richard Stallman <rms@psilocin.gnu.org> @@ -6736,8 +6736,8 @@ 1998-02-01 Richard Stallman <rms@psilocin.gnu.org> - * emacs-lisp/easy-mmode.el (easy-mmode-define-minor-mode): Fix - the doc strings used for the mode flag variable and the keymap. + * emacs-lisp/easy-mmode.el (easy-mmode-define-minor-mode): + Fix the doc strings used for the mode flag variable and the keymap. Delete duplicate &optional's. * emacs-lisp/edebug.el: Doc fixes. @@ -6752,7 +6752,7 @@ 1998-02-01 Dan Nicolaescu <done@ece.arizona.edu> - * hideshow.el (hs-special-modes-alist): Improved the regexp for java. + * hideshow.el (hs-special-modes-alist): Improve the regexp for java. * isearch.el (isearch-range-invisible): Avoid infinite loop when search-invisible is nil. @@ -6784,8 +6784,8 @@ * fortran.el: Various docstring and commentary fixes, including note of current maintainer. (fortran-mode): Use imenu-syntax-alist. - (fortran-imenu-generic-expression): Use - fortran-continuation-string, not always `+'. + (fortran-imenu-generic-expression): + Use fortran-continuation-string, not always `+'. (fortran-font-lock-keywords-1): Include symbol syntax as well as word, following syntax table changes. (fortran-imenu-generic-expression): Likewise. @@ -6793,23 +6793,23 @@ (fortran-mode-version, fortran-startup-message): Delete misleading variables. (fortran-mode): Don't use them. - (fortran-column-ruler-fixed, fortran-column-ruler-tab): Fix - leading \ which made `0' into null. + (fortran-column-ruler-fixed, fortran-column-ruler-tab): + Fix leading \ which made `0' into null. (fortran-join-line): New function and key binding. (fortran-narrow-to-subprogram): New function and key binding. (fortran-mode-syntax-table): Make ?., ?_, ?$ symbol, not word. 1998-01-29 Carsten Dominik <dominik@strw.LeidenUniv.nl> - * textmodes/reftex.el (reftex-toc): Fixed bug with split-window. Using - split-window instead of split-window-vertically. - (reftex-reset-mode): Removed obsolete buffer from kill list. - (reftex-make-and-insert-label-list, reftex-do-citation): Delete - other windows before displaying selection. - (reftex-cite-format-builtin): Fixed bug in Chicago format. + * textmodes/reftex.el (reftex-toc): Fix bug with split-window. + Using split-window instead of split-window-vertically. + (reftex-reset-mode): Remove obsolete buffer from kill list. + (reftex-make-and-insert-label-list, reftex-do-citation): + Delete other windows before displaying selection. + (reftex-cite-format-builtin): Fix bug in Chicago format. (reftex-enlarge-to-fit): New function. - (reftex-nicify-text): Cut context-string at \item,\\. Changed - match sequence for efficiency reasons. + (reftex-nicify-text): Cut context-string at \item,\\. + Changed match sequence for efficiency reasons. (reftex-parse-from-file): Include files can be ignored with `reftex-no-include-regexps'. (reftex-no-include-regexps): New option. @@ -6819,16 +6819,16 @@ (reftex-where-am-I): Interpret appendix match. (reftex-init-section-numbers): New arg: appendix. (reftex-section-number): Treat appendix enumeration. - (reftex-toc-external): Improved message. + (reftex-toc-external): Improve message. (reftex-compute-ref-cite-tables): Regular expression extended for appendix. - (reftex-toc-rescan): Renamed from reftex-toc-redo. - (reftex-toc-Rescan): Renamed from reftex-toc-Redo. + (reftex-toc-rescan): Rename from reftex-toc-redo. + (reftex-toc-Rescan): Rename from reftex-toc-Redo. (reftex-toc-revert): New function. (reftex-select-external-document): Completion on label prefixes. - (reftex-find-file-on-path): Added an extra call to + (reftex-find-file-on-path): Add an extra call to expand-file-name for the directory. - (reftex-locate-bibliography-files): Added expand-file-name call. + (reftex-locate-bibliography-files): Add expand-file-name call. (reftex-guess-label-type): New function. (reftex-word-before-point): Function removed. (reftex-reference): Uses reftex-guess-label-type. Changed meaning @@ -6837,41 +6837,41 @@ (reftex-select-label-maps): Default bindings for TAB, up, down, RET. (reftex-select-read-string): Now uses completion. (reftex-make-and-insert-label-list): Prepare for completion. - (reftex-where-am-I): Fixed bug with input files. + (reftex-where-am-I): Fix bug with input files. (reftex-save-all-document-buffers): New command. (reftex-select-next-heading): New function. (reftex-select-previous-heading): New function. (reftex-select-read-string): New function. (reftex-offer-label-menu): Handle string value from reftex-select-item. - (reftex-reference): Fixed bug (missing save-excursion). - (reftex-toc-map): Added binding for ?n and ?p. - (reftex-do-citation): Changed to use reftex-default-bibliography. + (reftex-reference): Fix bug (missing save-excursion). + (reftex-toc-map): Add binding for ?n and ?p. + (reftex-do-citation): Change to use reftex-default-bibliography. (reftex-default-bibliography): New option. (reftex-find-tex-file): Check for file-name-absolute-p first. (reftex-format-label-function, reftex-format-ref-function) (reftex-format-cite-function): New hooks. (reftex-info): New function. - (reftex-compute-ref-cite-tables): Removed interactive form. - (reftex-where-am-I): Removed interactive form. - (reftex-format-names): Removed interactive form. + (reftex-compute-ref-cite-tables): Remove interactive form. + (reftex-where-am-I): Remove interactive form. + (reftex-format-names): Remove interactive form. (reftex-vref-is-default): New customization variable. (reftex-mode-menu): Capitalize citation options. (reftex-last-cnt): Variable removed. (reftex-last-data, reftex-last-line): New variables. (reftex-select-toggle-varioref): New function. - (reftex-offer-label-menu): Changed mode-line-format for varioref. + (reftex-offer-label-menu): Change mode-line-format for varioref. (reftex-select-label-help): Help string updated. - (reftex-do-parse): Fixed bug with empty xr list. + (reftex-do-parse): Fix bug with empty xr list. (reftex-view-crossref): Prefix argument interpretation changed. (reftex-get-offset): New function. (reftex-label): Remove selection buffer to force update. (reftex-access-scan-info): Remove selection buffers. - (reftex-select-external-document): Fixed bug with highest index. + (reftex-select-external-document): Fix bug with highest index. (reftex-label-index-list, reftex-found-list): Variables removed. (reftex-offer-label-menu, reftex-make-and-insert-label-list) (reftex-select-item, reftex-citation, reftex-select-label-callback) - (reftex-bibtex-selection-callback, reftex-select-callback): Changed - to put the scan data directly into the text property :data, + (reftex-bibtex-selection-callback, reftex-select-callback): + Change to put the scan data directly into the text property :data, instead of doing this indirectly with an index-list. (reftex-make-selection-buffer-name): New function. (reftex-tie-multifile-symbols): Store master-index-as-property. @@ -6884,7 +6884,7 @@ (reftex-access-parse-file): `Restore' action now throws an exception when the file is not found. (reftex-create-customize-menu): New function. - (reftex-label): Fixed bug which made naked labels in \footnotes. + (reftex-label): Fix bug which made naked labels in \footnotes. (reftex-select-label-map, reftex-select-bib-map): New keymaps for the RefTeX Select buffer. (reftex-select-next, reftex-select-previous, reftex-select-scroll-down) @@ -6912,7 +6912,7 @@ (reftex-extract-bib-entries-from-thebibliography): New function. (reftex-format-bibitem): New function. (reftex-parse-bibitem): New function. - (reftex-make-desparate-section-regexp): Changed name to + (reftex-make-desparate-section-regexp): Change name to reftex-make-desperate-section-regexp. (reftex-do-parse, reftex-locate-bibliography-files) (reftex-string-to-label, reftex-select-external-document) @@ -6921,7 +6921,7 @@ (reftex-select-search-minibuffer-map, reftex-access-search-path) (reftex-compute-ref-cite-tables, reftex-recursive-directory-list): All lambda expressions now quoted with `function'. - (reftex-view-crossref, reftex-mouse-view-crossref): Fixed bug with + (reftex-view-crossref, reftex-mouse-view-crossref): Fix bug with multiple calls. (reftex-get-buffer-visiting): Error message changed. (reftex-select-external-document, reftex-query-label-type) @@ -6949,7 +6949,7 @@ * progmodes/etags.el (find-tag-marker-ring-length): New variable. (find-tag-marker-ring): New variable. (tags-location-ring): New variable replacing tags-location-ring. - (tags-location-stack): Deleted. + (tags-location-stack): Delete. (tags-table-format-hooks): Doc fix. (initialize-new-tags-table): Init find-tag-marker-ring, tags-location-ring. @@ -6970,13 +6970,13 @@ * international/mule-cmds.el (toggle-enable-multibyte-characters): Use set-buffer-multibyte. - (find-safe-coding-system-list-subset-p): Renamed from list-subset-p. + (find-safe-coding-system-list-subset-p): Rename from list-subset-p. The call changed also. 1998-01-28 Kenichi Handa <handa@etl.go.jp> - * international/titdic-cnv.el (titdic-convert): Set - enable-multibyte-characters to t after inserting TIT file by + * international/titdic-cnv.el (titdic-convert): + Set enable-multibyte-characters to t after inserting TIT file by no-conversion. (tit-process-body): Do not bind enable-multibyte-characters to nil. @@ -6987,9 +6987,9 @@ instead of (` and (,. Implement :filter. Doc fix. (easy-menu-do-define): Call `easy-menu-create-menu' instead of `easy-menu-create-keymaps'. - (easy-menu-create-keymaps): Replaced by `easy-menu-create-menu'. - (easy-menu-create-menu): New public function. Replaces - `easy-menu-create-keymaps', but with large changes. + (easy-menu-create-keymaps): Replace by `easy-menu-create-menu'. + (easy-menu-create-menu): New public function. + Replaces `easy-menu-create-keymaps', but with large changes. (easy-menu-button-prefix): New constant. (easy-menu-do-add-item, easy-menu-make-symbol): New functions. (easy-menu-update-button): Doc fix. @@ -7064,22 +7064,22 @@ * mail/emacsbug.el (emacsbug): Customized. (report-emacs-bug-no-confirmation): - Renamed from report-emacs-bug-run-tersely. + Rename from report-emacs-bug-run-tersely. (report-emacs-bug-no-explanations): New option. (report-emacs-bug): Handle that option. 1998-01-22 Eric Ludlam <zappo@mescaline.gnu.org> - * mail/rmail.el (rmail-speedbar-buttons): Added speedbar support + * mail/rmail.el (rmail-speedbar-buttons): Add speedbar support for Rmail, including rmail-speedbar-button, rmail-speedbar-find-file, rmail-move-message-to-folder-on-line, rmail-speedbar-move-message, and support variables. - * info.el (Info-speedbar-buttons): Added speedbar support for Info + * info.el (Info-speedbar-buttons): Add speedbar support for Info mode, including Info-speedbar-button, Info-speedbar-menu, and support variables. - * gud.el (gud-speedbar-buttons): Added speedbar support for GUD in + * gud.el (gud-speedbar-buttons): Add speedbar support for GUD in general, and for GDB specifically, including gud-gdb-goto-stackframe, gud-gdb-get-stackframe, gud-gdb-run-command-fetch-lines, gud-gdb-speedbar-stack-filter, @@ -7117,10 +7117,10 @@ 1998-01-21 Kenichi Handa <handa@etl.go.jp> - * international/mule-cmds.el (prefer-coding-system): Call - update-iso-coding-systems. + * international/mule-cmds.el (prefer-coding-system): + Call update-iso-coding-systems. - * international/mule-util.el (string-to-sequence): Adjusted for + * international/mule-util.el (string-to-sequence): Adjust for the change of multibyte-form handling (byte-base to char-base). (store-substring): Likewise. (truncate-string-to-width): Likewise. @@ -7160,13 +7160,13 @@ (set-language-environment-coding-systems): New function. * international/mule-conf.el: Adjusted for the change of the - format of make-coding-system's 6th argument. Initialize - coding-category-iso-7-tight to iso-2022-jp. + format of make-coding-system's 6th argument. + Initialize coding-category-iso-7-tight to iso-2022-jp. * international/mule-diag.el (describe-coding-system): Change the format of showing safe charsets. - * international/mule-util.el (find-safe-coding-system): Moved to + * international/mule-util.el (find-safe-coding-system): Move to mule-cmds.el. (detect-coding-with-priority): New macro. (detect-coding-with-language-environment): New function. @@ -7222,8 +7222,8 @@ * language/japanese.el, language/korean.el, language/lao.el, * language/thai.el, language/tibetan.el, language/vietnamese.el: - Adjusted for the change of make-coding-system. Register - coding-priority key in + Adjusted for the change of make-coding-system. + Register coding-priority key in * language/china-util.el, language/japan-util.el, * language/korea-util.el, language/tibet-util.el, @@ -7259,11 +7259,11 @@ (ccl-dump-translate-multiple-map, ccl-dump-translate-single-map): New functions. - * international/mule.el (define-character-unification-table): New - function. + * international/mule.el (define-character-unification-table): + New function. - * international/mule-conf.el (oldjis-newjis-jisroman-ascii): New - character unification table. + * international/mule-conf.el (oldjis-newjis-jisroman-ascii): + New character unification table. (standard-character-unification-table-for-decode): Initialize to `unification-table' property of `oldjis-newjis-jisroman-ascii'. @@ -7316,8 +7316,8 @@ 1998-01-17 Karl Heuer <kwzh@gnu.org> - * register.el (number-to-register, increment-register): Args - renamed to match doc. + * register.el (number-to-register, increment-register): + Args renamed to match doc. 1998-01-17 Dave Love <d.love@dl.ac.uk> @@ -7430,7 +7430,7 @@ 1998-01-04 Richard Stallman <rms@psilocin.gnu.org> - * subr.el (sref): Defined. + * subr.el (sref): Define. 1998-01-03 Stephen Eglen <stephen@cns.ed.ac.uk> @@ -7493,8 +7493,8 @@ 1997-12-22 Kevin Rodgers <kevinr@ihs.com> (tiny change) - * simple.el (previous-matching-history-element): Bind - case-fold-search to nil if REGEXP contains an uppercase letter. + * simple.el (previous-matching-history-element): + Bind case-fold-search to nil if REGEXP contains an uppercase letter. (previous-matching-history-element, next-matching-history-element): Doc fixes. @@ -7521,8 +7521,8 @@ 1997-12-21 Richard Stallman <rms@psilocin.gnu.org> - * msb.el (msb--home-dir): Renamed from msb--home-path. - (msb--strip-dir): Renamed from msb--strip-path. + * msb.el (msb--home-dir): Rename from msb--home-path. + (msb--strip-dir): Rename from msb--strip-path. 1997-12-21 Lars Lindberg <Lars.G.Lindberg@capgemini.se> @@ -7559,8 +7559,8 @@ (ps-generate): Replace (if A B) by (and A B). (ps-do-despool): Dynamic evaluation for ps-lpr-switches. Replace (if A B) by (and A B). - (color-instance-rgb-components, ps-color-values): Replace - pixel-components by color-instance-rgb-components. + (color-instance-rgb-components, ps-color-values): + Replace pixel-components by color-instance-rgb-components. (ps-xemacs-face-kind-p): Replace face-font by face-font-instance, replace x-font-properties by font-instance-properties. @@ -7662,8 +7662,8 @@ * progmodes/scheme.el: Define indentation in normal dialect for let-syntax, letrec-syntax, syntax-rules, call-with-values, dynamic-wind. - (scheme-mode-map): Remove lisp-complete-symbol. Add - uncomment-region menu item. + (scheme-mode-map): Remove lisp-complete-symbol. + Add uncomment-region menu item. (scheme-mode-hook, dsssl-mode-hook): Declare customized. (dsssl-sgml-declaration): Fix customization. @@ -7726,7 +7726,7 @@ * cus-edit.el (customize-changed-options): New function. (customize-version-lessp): New function. - * facemenu.el (facemenu-remove-face-props): Renamed from + * facemenu.el (facemenu-remove-face-props): Rename from facemenu-remove-props. Remove only face and mouse-face. (facemenu-menu): Update menu item for facemenu-remove-face-props. @@ -7853,10 +7853,10 @@ (debugger-mode): Now runs hook `debugger-mode-hook'. * add-log.el (change-log-add-make-room): New function. - (change-log-get-method-definition-1): Renamed get-method-definition-1. - (change-log-get-method-definition): Renamed from get-method-definition. + (change-log-get-method-definition-1): Rename get-method-definition-1. + (change-log-get-method-definition): Rename from get-method-definition. (add-log-keep-changes-together): New user variable. - (add-change-log-entry): Added missing WHOAMI explanation. + (add-change-log-entry): Add missing WHOAMI explanation. Added new functionality according to variable `add-log-keep-changes-together'. @@ -7876,8 +7876,8 @@ * progmodes/cc-menus.el: Require imenu. - * calendar/cal-french.el (french-calendar-special-days-array): New - function. + * calendar/cal-french.el (french-calendar-special-days-array): + New function. (calendar-french-date-string, calendar-goto-french-date): Use that function instead of the variable. @@ -7890,8 +7890,8 @@ 1997-12-01 Eli Zaretskii <eliz@is.elta.co.il> - * frame.el (make-frame-names-alist, select-frame-by-name): New - functions, support frame selection with completion and history. + * frame.el (make-frame-names-alist, select-frame-by-name): + New functions, support frame selection with completion and history. (frame-name-history, frame-names-alist): New variables. 1997-11-30 Dave Love <d.love@dl.ac.uk> @@ -7936,8 +7936,8 @@ 1997-11-24 Michael Kifer <kifer@cs.sunysb.edu> - * ediff-vers.el (cvs-run-ediff-on-file-descriptor): Set - default-directory. + * ediff-vers.el (cvs-run-ediff-on-file-descriptor): + Set default-directory. (cvs-run-ediff-on-file-descriptor): Use ediff-buffers when type=MODIFIED. * ediff-init.el: Commented out ediff-set-face-pixmap. @@ -7948,7 +7948,7 @@ 1997-11-24 Simon Marshall <simon@gnu.org> - * menu-bar.el (menu-bar-describe-menu): Fixed duplicate KEYs. + * menu-bar.el (menu-bar-describe-menu): Fix duplicate KEYs. 1997-11-24 Richard Stallman <rms@psilocin.ai.mit.edu> @@ -8062,7 +8062,7 @@ 1997-11-20 Karl Heuer <kwzh@gnu.org> - * international/mule-cmds.el (set-input-method): Renamed from + * international/mule-cmds.el (set-input-method): Rename from select-input-method. 1997-11-20 Eli Zaretskii <eliz@is.elta.co.il> @@ -8200,15 +8200,15 @@ * gnus/gnus-mule.el (gnus-mule-initialize): Do not set nntp-coding-system-for-read and nntp-coding-system-for-write. - * gnus/gnus-start.el (gnus-read-descriptions-file): Decode - description if necessary. + * gnus/gnus-start.el (gnus-read-descriptions-file): + Decode description if necessary. * gnus/nntp.el (nntp-coding-system-for-read): Set default value to binary. (nntp-coding-system-for-write): Likewise. - * international/mule-cmds.el (set-language-environment): Run - exit-language-environment-hook before calling `exit-function' + * international/mule-cmds.el (set-language-environment): + Run exit-language-environment-hook before calling `exit-function' which is specified for the language environment. * language/european.el: Add "Upper Sorbian" and "Lower Sorbian" in @@ -8267,7 +8267,7 @@ (ediff-update-markers-in-dir-meta-buffer): New, for fast redisplay of meta buffer. (ediff-update-meta-buffer, ediff-redraw-directory-group-buffer) - (ediff-previous-meta-overlay-start, ediff-next-meta-item): Changed to + (ediff-previous-meta-overlay-start, ediff-next-meta-item): Change to support the above. (ediff-insert-session-info-in-meta-buffer) (diff-replace-session-status-in-meta-buffer) @@ -8315,8 +8315,8 @@ 1997-10-31 Dave Love <d.love@dl.ac.uk> - * progmodes/fortran.el (fortran-imenu-generic-expression): New - variable. + * progmodes/fortran.el (fortran-imenu-generic-expression): + New variable. (fortran-mode): Use it. 1997-10-31 Richard Stallman <rms@gnu.org> @@ -8327,8 +8327,8 @@ 1997-10-28 Simon Marshall <simon@gnu.org> * font-lock.el (font-lock-keywords): Doc fix. - (font-lock-match-c++-style-declaration-item-and-skip-to-next): Allow - any number of ::foo suffixes in declarative items. + (font-lock-match-c++-style-declaration-item-and-skip-to-next): + Allow any number of ::foo suffixes in declarative items. * lazy-lock.el (lazy-lock-fontify-after-defer): Check each buffer to make sure it still (a) exists and (b) has Lazy Lock mode turned on. @@ -8369,18 +8369,18 @@ (octave-comment-indent): Handle magic comments correctly. (calculate-octave-indent): Handle magic comments correctly. - * progmodes/octave-mod.el (octave-abbrev-table): Added abbrevs for + * progmodes/octave-mod.el (octave-abbrev-table): Add abbrevs for switch, case, otherwise, and endswitch. - (octave-begin-keywords): Added switch. - (octave-else-keywords): Added case and otherwise. - (octave-end-keywords): Added endswitch. - (octave-block-match-alist): Added an entry for switch syntax. - (calculate-octave-indent): Added support for switch syntax. + (octave-begin-keywords): Add switch. + (octave-else-keywords): Add case and otherwise. + (octave-end-keywords): Add endswitch. + (octave-block-match-alist): Add an entry for switch syntax. + (calculate-octave-indent): Add support for switch syntax. (octave-block-end-offset): New function. (octave-comment-indent): Fix a typo. - * progmodes/octave-mod.el (octave-block-match-alist): Move - `otherwise' to right after `case' to have octave-close-block() + * progmodes/octave-mod.el (octave-block-match-alist): + Move `otherwise' to right after `case' to have octave-close-block() correctly close a `switch' block by `endswitch'. 1997-10-24 Carsten Dominik <dominik@strw.LeidenUniv.nl> @@ -8388,16 +8388,16 @@ * reftex.el: The menu now used toggle and radio for some items. (reftex-default-context-regexps): `caption' now prefers the optional short caption. - (reftex-offer-label-menu): Fixed bug which could kill master + (reftex-offer-label-menu): Fix bug which could kill master buffer of external document. - (reftex-select-item, reftex-get-buffer-visiting): Compatibility - code works now the other way round. + (reftex-select-item, reftex-get-buffer-visiting): + Compatibility code works now the other way round. (reftex-select-external-document): Now gives a message when no external documents are available. (reftex-find-duplicate-labels): Single key strokes to exit or to do a query replace. Made more user friendly in general. - (reftex-section-levels, reftex-default-context-regexps): Move - definition of these variables to configuration section. + (reftex-section-levels, reftex-default-context-regexps): + Move definition of these variables to configuration section. 1997-10-24 Richard Stallman <rms@gnu.org> @@ -8485,16 +8485,16 @@ * international/mule-util.el (find-safe-coding-system): New function. - * international/mule.el (load-with-code-conversion): Update - preloaded-file-list, bind load-file-name and + * international/mule.el (load-with-code-conversion): + Update preloaded-file-list, bind load-file-name and inhibit-frame-unsplittable properly. (make-char): Make it a function. Set it byte-compile property to optimize byte-compiled codes. (make-coding-system): New optional arg charsets. Set property `safe-charsets' of the coding system to it. - * international/quail.el (quail-require-guidance-buf): Adjusted - for the change of input-method-verbose-flag. + * international/quail.el (quail-require-guidance-buf): + Adjust for the change of input-method-verbose-flag. * language/chinese.el: Give proper SAFE-CHARSET argument in each call of make-coding-system. @@ -8523,7 +8523,7 @@ * language/korean.el: Give proper SAFE-CHARSET argument in each call of make-coding-system. Set exit-function for language environment "Korean" to exit-korean-environment. - (setup-korean-environment): Moved to korean.el. + (setup-korean-environment): Move to korean.el. * language/lao.el: Give proper SAFE-CHARSET argument in each call of make-coding-system. @@ -8539,8 +8539,8 @@ * man.el (Man-getpage-in-background): Bind inhibit-eol-conversion to t before calling start-process or call-process. - (Man-softhyphen-to-minus): New function. If - enable-multibyte-characters is non-nil, convert the code 0255 only + (Man-softhyphen-to-minus): New function. + If enable-multibyte-characters is non-nil, convert the code 0255 only when it is not a part of a multibyte characters. (Man-fontify-manpage): Call Man-softhyphen-to-minus. (Man-cleanup-manpage): Likewise. @@ -8568,7 +8568,7 @@ (lm-insert-at-column): Use FORCE arg of move-to-column. * emulation/tpu-edt.el (tpu-arrange-rectangle): Likewise. -1997-10-23 Barry A. Warsaw <cc-mode-help@python.org> +1997-10-23 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> Merge in Release 5.19 of cc-mode. @@ -8593,14 +8593,14 @@ comment-column and there is non-whitespace preceding this on the current line. - * progmodes/cc-mode.el (c-submit-bug-report): Remove - c-recognize-knr-p. Add c-comment-continuation-stars. + * progmodes/cc-mode.el (c-submit-bug-report): + Remove c-recognize-knr-p. Add c-comment-continuation-stars. * progmodes/cc-styles.el (c-initialize-builtin-style): Only use copy-tree if it is funcall-able. This is the right patch, and was given by Erik Naggum <erik@naggum.no> -1997-10-23 Barry A. Warsaw <cc-mode-help@python.org> +1997-10-23 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * progmodes/cc-menus.el (cc-imenu-c-prototype-macro-regexp): New var. @@ -8608,7 +8608,7 @@ Given by jan.dubois@ibm.net (Jan Dubois). * progmodes/cc-menus.el (cc-imenu-java-generic-expression): - Removed test for declaration + Remove test for declaration statements. Patch given by Ake Stenhoff <etxaksf@aom.ericsson.se>, as forwarded to me by RMS. @@ -8619,7 +8619,7 @@ to cc-imenu-objc-function to enable Imenu support for Objective-C. Contributed by Masatake (jet) YAMATO. -1997-10-23 Barry A. Warsaw <cc-mode-help@python.org> +1997-10-23 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * progmodes/cc-styles.el (c-initialize-builtin-style): Use existing copy-tree if it's defined. @@ -8628,7 +8628,7 @@ c-offsets-alist must be copied recursively. Use copy-tree solution given by Simon Marshall <simon@gnu.org>. -1997-10-23 Barry A. Warsaw <cc-mode-help@python.org> +1997-10-23 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * progmodes/cc-cmds.el (c-beginning-of-statement): Fixes in sentence movement to properly @@ -8660,8 +8660,8 @@ 1997-10-22 Kenichi Handa <handa@etl.go.jp> - * gnus/gnus-art.el (gnus-show-traditional-method): Call - gnus-mule-decode-article only when enable-multibyte-characters is + * gnus/gnus-art.el (gnus-show-traditional-method): + Call gnus-mule-decode-article only when enable-multibyte-characters is non-nil. * gnus/gnus-ems.el (gnus-ems-redefine): Require `gnus-mule' only @@ -8675,10 +8675,10 @@ 1997-10-21 Kenichi Handa <handa@etl.go.jp> - * international/mule-diag.el (describe-coding-system): Print - information about coding system properties, post-read-conversion + * international/mule-diag.el (describe-coding-system): + Print information about coding system properties, post-read-conversion and pre-write-conversion. - (print-coding-system-briefly): Adjusted for the change in mule.el. + (print-coding-system-briefly): Adjust for the change in mule.el. (describe-current-coding-system): Likewise. (print-coding-system): Likewise. @@ -8688,9 +8688,9 @@ (2) Properties of a coding system (except for `coding-system' and `eol-type') is embedded in PLIST slot of coding-spec vector. (coding-spec-plist-idx): Initialize to 3. - (coding-system-spec-ref): Deleted. - (coding-system-spec): Moved from src/coding.c. - (coding-system-type): Adjusted for the above change. + (coding-system-spec-ref): Delete. + (coding-system-spec): Move from src/coding.c. + (coding-system-type): Adjust for the above change. (coding-system-mnemonic): Likewise. (coding-system-doc-string): Likewise. (coding-system-flags): Likewise. @@ -8698,37 +8698,37 @@ (coding-system-category): Likewise. (coding-system-get, coding-system-put, coding-system-category): New functions. - (coding-system-base): Moved from mule-util.el and adjusted for the + (coding-system-base): Move from mule-util.el and adjusted for the above change. (coding-system-parent): Make it obsolete alias of coding-system-base. - (make-subsidiary-coding-system): Adjusted for the above change. + (make-subsidiary-coding-system): Adjust for the above change. Update coding-system-list and coding-system-alist. (make-coding-system): Likewise. (define-coding-system-alias): Likewise. (set-buffer-file-coding-system): Typo in doc-string fixed. - (after-insert-file-set-buffer-file-coding-system): Change - enable-multibyte-characters only when + (after-insert-file-set-buffer-file-coding-system): + Change enable-multibyte-characters only when find-new-buffer-file-coding-system returns non-nil value. - (find-new-buffer-file-coding-system): Adjusted for the above change. + (find-new-buffer-file-coding-system): Adjust for the above change. - * international/mule-cmds.el (read-multilingual-string): Use - current-input-method prior to default-input-method. Don't bind + * international/mule-cmds.el (read-multilingual-string): + Use current-input-method prior to default-input-method. Don't bind current-input-method by `let', instead, activate the specified input method in the current buffer temporarily. * international/mule-conf.el: Change the way of making coding systems no-conversion and undecided. - * international/mule-util.el (coding-system-base): Moved to + * international/mule-util.el (coding-system-base): Move to mule.el. (coding-system-post-read-conversion): Use the new function coding-system-get. (coding-system-pre-write-conversion): Likewise. (coding-system-unification-table-for-decode): Likewise. (coding-system-unification-table-for-encode): Likewise. - (coding-system-list): Adjusted for the change in mule.el. - (coding-system-plist): Deleted. + (coding-system-list): Adjust for the change in mule.el. + (coding-system-plist): Delete. (coding-system-equal): Do not use coding-system-plist. * language/chinese.el: Use coding-system-put to set coding system @@ -8748,8 +8748,8 @@ * language/thai.el: Use coding-system-put to set coding system properties, post-read-conversion and pre-write-conversion. - * language/tibet-util.el (tibetan-post-read-conversion): Return - the length of converted region. + * language/tibet-util.el (tibetan-post-read-conversion): + Return the length of converted region. * language/tibetan.el: Use coding-system-put to set coding system properties, post-read-conversion and pre-write-conversion. @@ -8770,8 +8770,8 @@ 1997-10-21 Tomohiko Morioka <morioka@jaist.ac.jp> - * gnus/nnfolder.el (nnfolder-request-list): Bind - file-name-coding-system to binary. + * gnus/nnfolder.el (nnfolder-request-list): + Bind file-name-coding-system to binary. (nnfolder-possibly-change-group): Likewise. * gnus/nnml.el (nnml-retrieve-headers): Likewise. @@ -8807,13 +8807,13 @@ gnus-mule-initialize and setting coding system for nntp. (gnus-mule-select-coding-system): Get a coding system of the current newsgroup from gnus-summary-buffer. - (gnus-mule-decode-summary): Deleted. + (gnus-mule-decode-summary): Delete. (gnus-mule-initialize): Add-hook gnus-mule-select-coding-system to gnus-parse-headers-hook. Don't add-hook gnus-mule-decode-summary and gnus-mule-decode-article. Don't set process coding system for nntp stream to 'no-conversion, instead set - nntp-coding-system-for-read to 'binary. Set - nnheader-file-coding-system and nnmail-file-coding-system to + nntp-coding-system-for-read to 'binary. + Set nnheader-file-coding-system and nnmail-file-coding-system to 'binary. 1997-10-21 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no> @@ -8866,8 +8866,8 @@ * nnml.el (nnml-directory): Doc fix. - * gnus-topic.el (gnus-topic-make-menu-bar): Added - gnus-topic-edit-parameters. + * gnus-topic.el (gnus-topic-make-menu-bar): + Add gnus-topic-edit-parameters. 1997-10-21 Jay Sachs <sachs@interactive.net> @@ -8891,8 +8891,8 @@ 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> - * gnus-start.el (gnus-gnus-to-quick-newsrc-format): Escape - newlines. + * gnus-start.el (gnus-gnus-to-quick-newsrc-format): + Escape newlines. 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> @@ -8901,7 +8901,7 @@ 1997-10-21 Danny Siu <dsiu@adobe.com> * smiley.el (smiley-buffer): Make smiley case sensitive. - (smiley-deformed-regexp-alist): Added more regexp for happy smiley. + (smiley-deformed-regexp-alist): Add more regexp for happy smiley. (smiley-nosey-regexp-alist): Same as above. 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> @@ -8919,9 +8919,9 @@ 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> - * nntp.el (nntp-nov-gap): Changed default. + * nntp.el (nntp-nov-gap): Change default. - * gnus-nocem.el (gnus-nocem-issuers): Fixed names. + * gnus-nocem.el (gnus-nocem-issuers): Fix names. 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> @@ -8969,8 +8969,8 @@ * gnus.el (gnus-simplify-mode-line): Use varying formats. - * gnus-xmas.el (gnus-xmas-group-remove-excess-properties): Removed. - (gnus-xmas-topic-remove-excess-properties): Removed. + * gnus-xmas.el (gnus-xmas-group-remove-excess-properties): Remove. + (gnus-xmas-topic-remove-excess-properties): Remove. 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> @@ -8993,8 +8993,8 @@ 1997-10-21 Michael R. Cook <mcook@cognex.com> - * gnus-topic.el (gnus-topic-toggle-display-empty-topics): List - groups. + * gnus-topic.el (gnus-topic-toggle-display-empty-topics): + List groups. 1997-10-21 Per Abrahamsen <abraham@dina.kvl.dk> @@ -9013,8 +9013,8 @@ * gnus-start.el (gnus-check-first-time-used): Force reading the active file the first time Gnus is used. - * gnus-group.el (gnus-group-set-mode-line): Conditionalize - modified. + * gnus-group.el (gnus-group-set-mode-line): + Conditionalize modified. * gnus-ems.el (gnus-mode-line-modified): New variable. @@ -9053,9 +9053,9 @@ * message.el (message-clone-locals): Made into own function. - * gnus.el (gnus-select-method): Changed default. + * gnus.el (gnus-select-method): Change default. - * gnus-start.el (gnus-read-active-file): Changed default to + * gnus-start.el (gnus-read-active-file): Change default to `some'. 1997-10-21 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no> @@ -9235,12 +9235,12 @@ 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> - * gnus-sum.el (t): Moved pop article keystroke. + * gnus-sum.el (t): Move pop article keystroke. 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> - * nnmail.el (nnmail-search-unix-mail-delim-backward): Allow - several "From "'s. + * nnmail.el (nnmail-search-unix-mail-delim-backward): + Allow several "From "'s. (nnmail-search-unix-mail-delim): Ditto. 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> @@ -9283,8 +9283,8 @@ 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> - * gnus-sum.el (gnus-summary-limit-children): Typo. Wouldn't - marked NoCeM'ed out messages as read. + * gnus-sum.el (gnus-summary-limit-children): Typo. + Wouldn't marked NoCeM'ed out messages as read. 1997-10-21 Darren Stalder <torin@daft.com> @@ -9300,8 +9300,8 @@ 1997-10-21 Danny Siu <dsiu@adobe.com> - * gnus-picon.el (gnus-group-display-picons): Use - gnus-group-real-name so that picons for foreign groups display + * gnus-picon.el (gnus-group-display-picons): + Use gnus-group-real-name so that picons for foreign groups display correctly. 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> @@ -9364,8 +9364,8 @@ 1997-10-21 Per Abrahamsen <abraham@dina.kvl.dk> - * gnus-cite.el (gnus-cite-attribution-prefix): Recognize - Microsoft/Agent style attribution lines. + * gnus-cite.el (gnus-cite-attribution-prefix): + Recognize Microsoft/Agent style attribution lines. (gnus-cite-attribution-suffix): Ditto. 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> @@ -9375,8 +9375,8 @@ (gnus-cache-possibly-alter-active): Test statement removed. (gnus-cache-articles-in-group): Would destroy hashtb. - * gnus-sum.el (gnus-summary-limit-mark-excluded-as-read): Don't - mark everything as read. + * gnus-sum.el (gnus-summary-limit-mark-excluded-as-read): + Don't mark everything as read. * gnus-cite.el (gnus-article-fill-cited-article): Nix out gnus-cite-article. @@ -9398,9 +9398,9 @@ * nnml.el (nnml-update-file-alist): Allow forcing. - * nnheaderxm.el (nnheader-xmas-find-file-noselect): Removed. - (nnheader-xmas-cancel-timer): Removed. - (nnheader-xmas-cancel-function-timers): Removed. + * nnheaderxm.el (nnheader-xmas-find-file-noselect): Remove. + (nnheader-xmas-cancel-timer): Remove. + (nnheader-xmas-cancel-function-timers): Remove. 1997-10-21 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no> @@ -9411,7 +9411,7 @@ * message.el (message-set-auto-save-file-name): Create unique auto save file names. - * gnus-topic.el (gnus-topic-tallied-groups): Removed. + * gnus-topic.el (gnus-topic-tallied-groups): Remove. (gnus-topic-prepare-topic): Output right number of articles in each sub-topic. @@ -9451,23 +9451,23 @@ need be displayed. (gnus-picons-lock): Function deleted. (gnus-picons-remove): Don't use it. New way of locking. - (gnus-picons-next-job-internal): New way of locking. Handle - new tag 'bar. + (gnus-picons-next-job-internal): New way of locking. + Handle new tag 'bar. (gnus-picons-next-job): New way of locking. (gnus-picons-buffer): Variable deleted. - (gnus-picons-remove-all): Modified accordingly. + (gnus-picons-remove-all): Modify accordingly. (gnus-group-annotations-lock): Variable deleted. (gnus-article-annotations-lock): Variable deleted. (gnus-x-face-annotations-lock): Variable deleted. - (gnus-picons-news-directories): Renamed, was + (gnus-picons-news-directories): Rename, was gnus-picons-news-directory. (gnus-picons-url-retrieve): Do not change url-show-status. (gnus-picons-clear-cache): Also clear gnus-picons-url-alist. 1997-10-21 Michael R. Cook <mcook@cognex.com> - * gnus-topic.el (gnus-topic-toggle-display-empty-topics): New - function. + * gnus-topic.el (gnus-topic-toggle-display-empty-topics): + New function. 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> @@ -9504,7 +9504,7 @@ 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> - * gnus-topic.el (gnus-topic-create-topic): Added doc. + * gnus-topic.el (gnus-topic-create-topic): Add doc. * gnus-sum.el (gnus-summary-refer-article): Insert sparse non-displayed articles properly. @@ -9536,7 +9536,7 @@ (gnus-article-display-picons): Use the job queue if using the network. (gnus-group-display-picons): Ditto. (gnus-picons-make-path): Function deleted. - (gnus-picons-lookup-internal): Modified accordingly. + (gnus-picons-lookup-internal): Modify accordingly. (gnus-picons-lookup-user-internal): Take the LETs out of the loops. (gnus-picons-lookup-pairs): Take constant calculation outside of loop. (gnus-picons-display-picon-or-name): Use COND instead of nested IFs. @@ -9577,23 +9577,23 @@ (gnus-picons-users-image-alist): New variable. (gnus-picons-retrieve-user-callback): Use it. Added support for network retrieval of picons. - (gnus-picons-map): Removed. - (gnus-picons-remove): Removed case to handle processes. + (gnus-picons-map): Remove. + (gnus-picons-remove): Remove case to handle processes. (gnus-picons-processes-alist): New variable. - (gnus-picons-x-face-sentinel): Simplified. Use processes alist. + (gnus-picons-x-face-sentinel): Simplify. Use processes alist. (gnus-picons-display-x-face): Explicitly request an xface image. Always call gnus-picons-prepare-for-annotations. Use processes alist. (gnus-picons-lookup-internal): New function. (gnus-picons-lookup): Use it. (gnus-picons-lookup-user-internal): Ditto. (gnus-picons-display-picon-or-name): No more xface-p argument. - (gnus-picons-try-suffixes): Removed. + (gnus-picons-try-suffixes): Remove. (gnus-picons-try-face): New function. Does the caching in gnus-picons-glyph-alist. (gnus-picons-try-to-find-face): Take a glyph argument instead of a path. No more xface-p argument. Only use one annotation even if gnus-picons-display-as-address. - (gnus-picons-toggle-extent): Changed into an annotation action. + (gnus-picons-toggle-extent): Change into an annotation action. 1997-10-21 Lars Magne Ingebrigtsen <larsi@menja.ifi.uio.no> @@ -9601,8 +9601,8 @@ 1997-10-21 Kim-Minh Kaplan <kimminh.kaplan@utopia.eunet.fr> - * gnus-picon.el (gnus-picons-prepare-for-annotations): New - function, and many changes. + * gnus-picon.el (gnus-picons-prepare-for-annotations): + New function, and many changes. 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> @@ -9671,8 +9671,8 @@ * gnus-cache.el (gnus-cache-move-cache): Allow entering directory name. - * nntp.el (nntp-telnet-command, nntp-telnet-switches): New - variables. + * nntp.el (nntp-telnet-command, nntp-telnet-switches): + New variables. * gnus-score.el (gnus-summary-increase-score): Refuse illegal match types. @@ -9684,7 +9684,7 @@ 1997-10-21 Per Abrahamsen <abraham@dina.kvl.dk> - * gnus-ems.el (gnus-article-x-face-command): Removed bogus + * gnus-ems.el (gnus-article-x-face-command): Remove bogus declaration. 1997-10-21 Paul Franklin <paul@cs.washington.edu> @@ -9758,8 +9758,8 @@ * message.el (message-cancel-news): Only say we cancel if we cancel. - * gnus-msg.el (gnus-summary-mail-crosspost-complaint): Deactivate - mark. + * gnus-msg.el (gnus-summary-mail-crosspost-complaint): + Deactivate mark. 1997-10-21 Lars Magne Ingebrigtsen <larsi@ifi.uio.no> @@ -9842,7 +9842,7 @@ (reftex-make-master-buffer-hook): Hook removed. (reftex-insert-buffer-or-file): Function removed. (reftex-parse-document): Function adapted to new parser. - (reftex-access-scan-info): Changed to fit new parser. Now detects + (reftex-access-scan-info): Change to fit new parser. Now detects changes in label-alist related variables automatically. (reftex-parse-one, reftex-parse-all): New functions. (reftex-all-document-files): New function. @@ -9872,8 +9872,8 @@ (reftex-find-nearby-label): Function removed. (reftex-scan-buffer-for-labels): Function removed. (reftex-section-info): New function. - (reftex-nth-parens-substring): Renamed to reftex-nth-arg. Return - nil when not enough args are present. + (reftex-nth-parens-substring): Rename to reftex-nth-arg. + Return nil when not enough args are present. (reftex-move-over-touching-args): New function. (reftex-where-am-I): New function. (reftex-nth-arg-wrapper): New function. @@ -9888,7 +9888,7 @@ several backup methods. (reftex-citation): Recursive edit moved to `e' key. (reftex-scan-buffer): Function removed. - (reftex-get-bibfile-list): Changed to work with chapterbib + (reftex-get-bibfile-list): Change to work with chapterbib package. (reftex-find-tex-file): New function. (reftex-find-files-on-path): Now first looks for file with @@ -9897,7 +9897,7 @@ reftex-do-citation. (reftex-do-citation): Recursive edit now on `e' key. (reftex-what-macro): Allow white space between macro arguments. - (reftex-allow-for-ctrl-m): Renamed to + (reftex-allow-for-ctrl-m): Rename to `reftex-make-regexp-allow-for-ctrl-m'. (reftex-nearest-match): New function. (reftex-auto-mode-alist): New function. @@ -9909,8 +9909,8 @@ (reftex-parse-args): New function. (easy-menu-define): Menu extended. Some parts are now computed. from the user options. - (reftex-move-to-next-arg, reftex-move-to-previous-arg): New - functions. Now we can parse macros with distributed arguments. + (reftex-move-to-next-arg, reftex-move-to-previous-arg): + New functions. Now we can parse macros with distributed arguments. (reftex-goto-label): Function removed. (reftex-position-cursor): Function removed. (reftex-item): Function removed. @@ -9944,8 +9944,8 @@ * iso-insert.el: Add autoloads for `8859-1-map'. - * cus-edit.el (custom-group-value-create): Use - `custom-group-visibility' instead of `group-visibility'. + * cus-edit.el (custom-group-value-create): + Use `custom-group-visibility' instead of `group-visibility'. 1997-10-19 Richard Stallman <rms@gnu.org> @@ -10018,7 +10018,7 @@ (double-map): Add customize support. (double-prefix-only): Ditto. - * textmodes/nroff-mode.el (nroff): Moved from `editing' to `wp'. + * textmodes/nroff-mode.el (nroff): Move from `editing' to `wp'. * wid-edit.el (variable-link): New widget. (widget-variable-link-action): New function. @@ -10033,7 +10033,7 @@ (view-highlight-face, view-scroll-auto-exit) (view-try-extend-at-buffer-end) (view-remove-frame-by-deleting, view-mode-hook): - Defined by defcustom instead of by defvar. + Define by defcustom instead of by defvar. (view-mode-enter): Install exit-action also when view-mode is already on. Small rewrite using unless. (view-mode, view-mode-exit, view-scroll-lines, view-really-at-end) @@ -10109,8 +10109,8 @@ * comint.el (comint-regexp-arg): Likewise. * term.el (term-regexp-arg): Likewise. - * simple.el (repeat-complex-command): Bind - minibuffer-history-sexp-flag to the minibuffer depth. + * simple.el (repeat-complex-command): + Bind minibuffer-history-sexp-flag to the minibuffer depth. (next-history-element): Compare minibuffer-history-sexp-flag against the current minibuffer depth to verify its validity. (previous-matching-history-element): Likewise. @@ -10138,7 +10138,7 @@ * finder.el (finder-mode-map): Bind [mouse-2]. (finder-compile-keywords): Match compressed file names, but don't put compression extension in the output. - (finder-find-library): Deleted. + (finder-find-library): Delete. (finder-commentary): Use locate-library, not finder-find-library. (finder-mouse-select): New function. (finder-summary): Mention mouse binding. @@ -10147,7 +10147,7 @@ 1997-09-30 Andre Spiegel <spiegel@inf.fu-berlin.de> - * vc-hooks.el (vc-find-cvs-master): Added missing `throw' for + * vc-hooks.el (vc-find-cvs-master): Add missing `throw' for the case when TIMESTAMP is arbitrary text. 1997-09-30 Hrvoje Niksic <hniksic@srce.hr> @@ -10180,8 +10180,8 @@ * ediff-init.el: Added documentation to face-variables. - * ediff-util.el (ediff-next-difference, ediff-previous-difference): Use - ediff-merge-region-is-non-clash and don't compute fine diffs when + * ediff-util.el (ediff-next-difference, ediff-previous-difference): + Use ediff-merge-region-is-non-clash and don't compute fine diffs when skipping non-clash regions. * ediff-merg.el (ediff-merge-region-is-non-clash): New function. @@ -10316,12 +10316,12 @@ 1997-09-15 Ken'ichi Handa <handa@psilocin.gnu.ai.mit.edu> - * mule.el (find-new-buffer-file-coding-system): Reflect - text coding part of default-buffer-file-coding-system to + * mule.el (find-new-buffer-file-coding-system): + Reflect text coding part of default-buffer-file-coding-system to buffer-file-coding-system when buffer-file-coding-system is not locally set and ASCII only text is read. -1997-09-15 Barry A. Warsaw <cc-mode-help@python.org> +1997-09-15 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * progmodes/cc-styles.el (c-initialize-builtin-style): Copy the whole tree instead of just copy-sequence. @@ -10335,11 +10335,11 @@ 1997-09-15 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - * international/quail.el (quail-completion-list-translations): Fix - and simplify generation of translation list. + * international/quail.el (quail-completion-list-translations): + Fix and simplify generation of translation list. - * international/titdic-cnv.el (tit-process-header): Convert - argument of KEYPROMPT if it contains an escape. + * international/titdic-cnv.el (tit-process-header): + Convert argument of KEYPROMPT if it contains an escape. (tit-process-body): Handle trailing whitespace and multiple spaces between phrases. @@ -10483,10 +10483,10 @@ 1997-09-12 Michael Kifer <kifer@cs.sunysb.edu> - * viper-keym.el (viper-want-ctl-h-help): Updated doc string. + * viper-keym.el (viper-want-ctl-h-help): Update doc string. (viper-vi-basic-map, viper-insert-basic-map, viper-replace-map): - Added binding for backspace. - * viper-cmd.el (viper-adjust-keys-for): Separated backspace and C-h. + Add binding for backspace. + * viper-cmd.el (viper-adjust-keys-for): Separate backspace and C-h. 1997-09-12 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -10505,7 +10505,7 @@ 1997-09-12 Inge Frick <inge@nada.kth.se> - * compile.el (compilation-parse-errors): Fixed two bugs that + * compile.el (compilation-parse-errors): Fix two bugs that could make compilation-parse-errors loop infinitely. Each round of the parsing loop now either moves point ahead at least a line or sets `found-desired' to true to stop the loop. @@ -10535,8 +10535,8 @@ 1997-09-11 Eli Zaretskii <eliz@is.elta.co.il> - * international/mule-diag.el (describe-coding-system): Describe - coding systems of type 5, raw-text. + * international/mule-diag.el (describe-coding-system): + Describe coding systems of type 5, raw-text. * hexl.el (hexlify-buffer): Bind coding-system-for-write to raw-text with eol-type derived from the buffer-file-coding-system. @@ -10587,11 +10587,11 @@ 1997-09-10 Michael Ernst <mernst@cs.washington.edu> - * uniquify.el (uniquify-ignore-buffers-re): Added. + * uniquify.el (uniquify-ignore-buffers-re): Add. 1997-09-10 Michael Kifer <kifer@cs.sunysb.edu> - * viper-keym.el (viper-help-modifier-map): Deleted; help mode map is + * viper-keym.el (viper-help-modifier-map): Delete; help mode map is no longer modified. * viper.el (viper-set-hooks): Make help buffers come up in emacs state. @@ -10612,7 +10612,7 @@ (ethio-fidel-to-sera-mail-or-marker): New function. (ethio-find-file): Do nothing if not in ethio-mode. (ethio-write-file): Likewise. - (ethio-prefer-ascii-space): Moved from leim/quail/ethiopic.el. + (ethio-prefer-ascii-space): Move from leim/quail/ethiopic.el. (ethio-toggle-space): Likewise. (ethio-insert-space): Likewise. (ethio-insert-ethio-space): Likewise. @@ -10627,8 +10627,8 @@ 1997-09-10 Kenichi Handa <handa@etl.go.jp> - * language/japan-util.el (setup-japanese-environment): Give - iso-2022-jp to set-default-coding-system if not running on DOS. + * language/japan-util.el (setup-japanese-environment): + Give iso-2022-jp to set-default-coding-system if not running on DOS. (read-hiragana-string): Use input method "japanese-hiragana". * gnus/gnus-mule.el: Add coding system specification for several @@ -10686,15 +10686,15 @@ 1997-09-08 Per Abrahamsen <abraham@dina.kvl.dk> - * cus-edit.el (custom-variable-save): Fixed doc string. + * cus-edit.el (custom-variable-save): Fix doc string. * cus-edit.el (custom-variable-menu): Make it clear that `Lisp mode' edit the initial lisp expression. 1997-09-08 Eli Zaretskii <eliz@is.elta.co.il> - * info.el (info-insert-file-contents): Bind - coding-system-for-write to no-conversion. + * info.el (info-insert-file-contents): + Bind coding-system-for-write to no-conversion. 1997-09-08 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> @@ -10742,9 +10742,9 @@ * telnet.el (telnet-initial-filter): Temporarily go to proper buffer. -1997-09-07 Barry A. Warsaw <cc-mode-help@python.org> +1997-09-07 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> - * progmodes/cc-mode.el (c-version): Updated. + * progmodes/cc-mode.el (c-version): Update. * progmodes/cc-cmds.el (c-beginning-of-statement): Fixes in sentence movement to properly @@ -10916,8 +10916,8 @@ 1997-09-05 Ken'ichi Handa <handa@psilocin.gnu.ai.mit.edu> - * language/japan-util.el (setup-japanese-environment): Set - coding-category-iso-8-else to japanese-iso-8bit. + * language/japan-util.el (setup-japanese-environment): + Set coding-category-iso-8-else to japanese-iso-8bit. 1997-09-05 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -10950,10 +10950,10 @@ 1997-09-05 Michael Kifer <kifer@cs.sunysb.edu> * viper-init.el (viper-replace-region-start-delimiter): - Improved the default. + Improve the default. * viper-mous.el (viper-mouse-click-search-word) (viper-mouse-click-insert-word): - Fixed to not react when click is not over a text area. + Fix to not react when click is not over a text area. * viper.el (read-file-name): Unadvised. * viper-cmd.el (viper-insert-state-post-command-sentinel) (viper-save-last-insertion): @@ -11036,9 +11036,9 @@ 1997-09-02 Geoff Voelker <voelker@cs.washington.edu> * w32-fns.el: Update doc strings. - (w32-startup): Deleted function. + (w32-startup): Delete function. (w32-check-shell-configuration, w32-init-info): New functions. - (w32-system-shell-p): Renamed from w32-using-system-shell-p. + (w32-system-shell-p): Rename from w32-using-system-shell-p. Added shell name argument. 1997-09-02 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -11170,11 +11170,11 @@ 1997-08-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> - * emacs-lisp/bytecomp.el (byte-compile-output-file-form): Handle - custom-declare-variable. + * emacs-lisp/bytecomp.el (byte-compile-output-file-form): + Handle custom-declare-variable. - * international/mule-diag.el (describe-current-coding-system): Add - missing newline in output. + * international/mule-diag.el (describe-current-coding-system): + Add missing newline in output. 1997-08-31 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -11228,17 +11228,17 @@ 1997-08-29 Carsten Dominik <dominik@strw.LeidenUniv.nl> - * reftex.el (reftex-customize): Added call to customize browse. + * reftex.el (reftex-customize): Add call to customize browse. (reftex-show-commentary): New function. (reftex-label-alist): Prefix may contain % escapes. Nth macro argument may be context. May give two different context methods. (reftex-default-label-alist-entries): Customization type changed. (reftex-label-menu-flags): Extra flag for searches. - (reftex-cite-format): Changed completely, % escapes are now used. + (reftex-cite-format): Change completely, % escapes are now used. (reftex-comment-citations): New variable. (reftex-cite-comment-format): New variable. (reftex-cite-punctuation): New variable. - (reftex-make-master-buffer): Changed name of master buffer, + (reftex-make-master-buffer): Change name of master buffer, removed interactive. Runs a hook on the buffer. Interpret TEXINPUTS environment variable. Allow naked argument for \input. Master buffer is now in fundamental mode. @@ -11326,25 +11326,25 @@ * international/mule.el (make-coding-system): Make TYPE 5 means raw-text. - (after-insert-file-set-buffer-file-coding-system): Set - enable-multibyte-characters to nil if we read a file with + (after-insert-file-set-buffer-file-coding-system): + Set enable-multibyte-characters to nil if we read a file with no-conversion or raw-text-XXXX. - * international/mule-conf.el (raw-text): New coding system. Set - coding-category-raw-text to raw-text. + * international/mule-conf.el (raw-text): New coding system. + Set coding-category-raw-text to raw-text. - * language/english.el (setup-english-environment): Set - coding-category-raw-text to raw-text. + * language/english.el (setup-english-environment): + Set coding-category-raw-text to raw-text. - * language/viet-util.el (setup-vietnamese-environment): Set - coding-category-raw-text to vietnamese-viscii. + * language/viet-util.el (setup-vietnamese-environment): + Set coding-category-raw-text to vietnamese-viscii. * language/cyril-util.el (setup-cyrillic-alternativnyj-environment): Set coding-category-raw-text to cyrillic-alternativnyj. * international/mule-cmds.el (update-leim-list-file): Make it handle multiple directories. - (update-all-leim-list-files): Deleted. + (update-all-leim-list-files): Delete. * international/quail.el (quail-update-leim-list-file): Make it handle multiple directories. @@ -11357,8 +11357,8 @@ * nnfolder.el (nnfolder-request-list): Override 'nnmail-file-coding-system' by 'nnmail-active-file-coding-system'. - (nnfolder-request-list, nnfolder-possibly-change-group): Protect - from conversion by `pathname-coding-system' for XEmacs/mule. + (nnfolder-request-list, nnfolder-possibly-change-group): + Protect from conversion by `pathname-coding-system' for XEmacs/mule. (nnfolder-group-pathname): Encode pathname for Emacs 20. * nnmh.el (nnmh-request-list, nnmh-active-number): Protect from @@ -11400,8 +11400,8 @@ * gnus-sum.el (gnus-structured-field-decoder): New variable. (gnus-unstructured-field-decoder): New variable. - (gnus-get-newsgroup-headers, gnus-nov-parse-line): Use - `gnus-structured-field-decoder' and + (gnus-get-newsgroup-headers, gnus-nov-parse-line): + Use `gnus-structured-field-decoder' and `gnus-unstructured-field-decoder' for Subject field. 1997-08-28 Miyashita Hisashi <himi@etl.go.jp> @@ -11508,8 +11508,8 @@ * files.el (revert-buffer): Read a file without any code conversion if we are reverting from an auto-saved file. - * language/japanese.el (set-language-info-alist): Change - iso-2022-7bit to iso-2022-jp. + * language/japanese.el (set-language-info-alist): + Change iso-2022-7bit to iso-2022-jp. * replace.el (query-replace-read-args): Locally bind minibuffer-inherit-input-method to t to make a minibuffer inherit @@ -11635,14 +11635,14 @@ and changed into defsubsts. (last): New function. - * emacs-lisp/cl.el (caar, cadr, cdar, cddr): Moved to subr.el. + * emacs-lisp/cl.el (caar, cadr, cdar, cddr): Move to subr.el. (last): Function renamed to last*. * emacs-lisp/cl-macs.el (cl-loop-let): Use last*. * time.el (display-time-hook): Minor doc fix. - * ps-print.el (ps-zebra-stripes): Renamed from ps-zebra-stripe. - (ps-zebra-stripe-height): Renamed from ps-number-of-zebra. + * ps-print.el (ps-zebra-stripes): Rename from ps-zebra-stripe. + (ps-zebra-stripe-height): Rename from ps-number-of-zebra. * vc.el (vc-version-diff): Mention that default file is visited file. @@ -11734,7 +11734,7 @@ (bookmark-bmenu-check-position): Return a meaningful value -- callers have apparently been assuming this anyway. (bookmark-build-xemacs-menu): Unused function deleted. - (bookmark-version): Removed this variable; the Emacs version suffices. + (bookmark-version): Remove this variable; the Emacs version suffices. 1997-08-22 Simon Marshall <simon@gnu.ai.mit.edu> @@ -11756,7 +11756,7 @@ * viper-cmd.el (viper-replace-char-subr, viper-word-*) (viper-separator-skipback-special): Made to work with mule and syntax tables. - (viper-change-state): Moved iso-accents-mode handling here from + (viper-change-state): Move iso-accents-mode handling here from viper-change-state-to-vi/insert/etc. Also now toggles MULE. 1997-08-21 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -11769,7 +11769,7 @@ 1997-08-21 Kenichi HANDA <handa@etl.go.jp> - * language/cyril-util.el (setup-cyrillic-environment): Deleted. + * language/cyril-util.el (setup-cyrillic-environment): Delete. (setup-cyrillic-iso-environment): New function. (setup-cyrillic-koi8-environment): New function. (setup-cyrillic-alternativnyj-environment): New function. @@ -11784,20 +11784,20 @@ (auto-file-coding-system-function): Set this variable to `auto-file-coding-system'. - * international/quail.el (quail-terminate-translation): Run - input-method-after-insert-chunk-hook only when the current input + * international/quail.el (quail-terminate-translation): + Run input-method-after-insert-chunk-hook only when the current input method doesn't require conversion. (quail-no-conversion): Run input-method-after-insert-chunk-hook. * international/mule-util.el (coding-system-unification-table): - Deleted. + Delete. (coding-system-unification-table-for-decode): New function. (coding-system-unification-table-for-encode): New function. * international/mule.el (make-coding-system): Doc-string fixed. - * international/fontset.el (register-alternate-fontnames): New - function. + * international/fontset.el (register-alternate-fontnames): + New function. (x-complement-fontset-spec): Register alternate fontnames by calling register-alternate-fontnames. (instanciate-fontset): Likewise. @@ -11874,7 +11874,7 @@ (ps-background-image, ps-background, ps-header-height) (ps-get-face): New internal functions. (ps-control-character): Handle control characters. - (ps-gnus-print-article-from-summary): Updated for Gnus 5. + (ps-gnus-print-article-from-summary): Update for Gnus 5. (ps-jack-setup): Replace 'nil by nil, 't by t. 1997-08-19 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -11890,8 +11890,8 @@ * files.el (append-to-file): Doc-string fixed. - * international/quail.el (quail-exit-from-minibuffer): Call - inactivate-input-method instead of (quail-mode -1). + * international/quail.el (quail-exit-from-minibuffer): + Call inactivate-input-method instead of (quail-mode -1). (quail-kill-guidance-buf): New function. (quail-mode): Doc-string and comments modified. Make this function non-interactive. Add quail-kill-guidance-buf to @@ -11970,35 +11970,35 @@ (quail-define-package): Indentation fixed. (quail-setup-overlays): New arg conversion-mode. Pay attention to input-method-highlight-flag. - (quail-mode-line-format): Deleted. - (quail-generate-mode-line-format): Deleted. + (quail-mode-line-format): Delete. + (quail-generate-mode-line-format): Delete. (quail-mode): Don't handle input-method-inactivate-hook and input-method-activate-hook here. Delete code setting quail-mode-line-format. (quail-saved-current-map): Name changed from quail-saved-overriding-local-map. (quail-toggle-mode-temporarily): Completely re-written. - (quail-execute-non-quail-command): Use - quail-toggle-mode-temporarily. - (quail-conv-overlay-modification-hook): Deleted. - (quail-suppress-conversion): Deleted. + (quail-execute-non-quail-command): + Use quail-toggle-mode-temporarily. + (quail-conv-overlay-modification-hook): Delete. + (quail-suppress-conversion): Delete. (quail-start-translation): Completely re-written. (quail-start-translation-in-conversion-mode): Likewise. (quail-delete-region): Check if quail-overlay is active. - (quail-get-current-str): Don't call throw. Set - overriding-terminal-local-map correctly. + (quail-get-current-str): Don't call throw. + Set overriding-terminal-local-map correctly. (quail-update-translation): Run hooks in input-method-after-insert-chunk-hook. (quail-self-insert-command): Catch 'quail-tag here. - (quail-conversion-delete-char): Don't call throw. Set - overriding-terminal-local-map to nil. + (quail-conversion-delete-char): Don't call throw. + Set overriding-terminal-local-map to nil. (quail-conversion-backward-delete-char): Likewise. (quail-no-conversion): Likewise. - (quail-help-insert-keymap-description): Bind - overriding-terminal-local-map instead of overriding-local-map. + (quail-help-insert-keymap-description): + Bind overriding-terminal-local-map instead of overriding-local-map. - * international/mule-cmds.el (previous-input-method): This - variable deleted. + * international/mule-cmds.el (previous-input-method): + This variable deleted. (input-method-history): New variable. (read-input-method-name): Bind minibuffer-history to input-method-history. @@ -12006,27 +12006,27 @@ previous-input-method. Run hooks in input-method-activate-hook. (inactivate-input-method): Update input-method-history. Run hooks in input-method-inactivate-hook. - (select-input-method): Doc-string modified. Use - input-method-history instead of previous-input-method. Set - default-input-method to input-method. - (toggle-input-method): Doc-string modified. Use - input-method-history instead of previous-input-method. + (select-input-method): Doc-string modified. + Use input-method-history instead of previous-input-method. + Set default-input-method to input-method. + (toggle-input-method): Doc-string modified. + Use input-method-history instead of previous-input-method. (read-multilingual-string): Bind minibuffer-setup-hook correctly. (input-method-exit-on-invalid-key): New variable. - * isearch.el (isearch-multibyte-characters-flag): Deleted. + * isearch.el (isearch-multibyte-characters-flag): Delete. (isearch-mode): Do not bind isearch-multibyte-characters-flag and isearch-input-method. (isearch-printing-char): Use current-input-method instead of isearch-input-method. (isearch-message-prefix): Likewise. - * international/isearch-x.el (isearch-input-method): Deleted. - (isearch-input-method-title): Deleted. + * international/isearch-x.el (isearch-input-method): Delete. + (isearch-input-method-title): Delete. (isearch-toggle-specified-input-method): Call toggle-input-method. (isearch-toggle-input-method): Likewise. - (isearch-process-search-multibyte-characters): Use - current-input-method instead of isearch-input-method. + (isearch-process-search-multibyte-characters): + Use current-input-method instead of isearch-input-method. 1997-08-17 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -12045,7 +12045,7 @@ For writing, use buffer-file-coding-system if set, otherwise buffer-file-type. (find-file-not-found-set-buffer-file-coding-system): - Renamed from find-file-not-found-set-buffer-file-type. + Rename from find-file-not-found-set-buffer-file-type. Set buffer-file-coding-system as well as buffer-file-type. 1997-08-16 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -12066,8 +12066,8 @@ * international/isearch-x.el (isearch-process-search-multibyte-characters): Bind input-method-verbose-flag, not input-method-tersely-flag. - * international/mule-cmds.el (input-method-verbose-flag): Renamed - from input-method-tersely-flag and sense inverted. + * international/mule-cmds.el (input-method-verbose-flag): + Rename from input-method-tersely-flag and sense inverted. (input-method-highlight-flag): New variable. (toggle-input-method): Pass missing arg to read-input-method-name. @@ -12079,8 +12079,8 @@ 1997-08-16 Kenichi Handa <handa@etl.go.jp> - * language/china-util.el (setup-chinese-gb-environment): Delete - a code setting default value of default-input-method. + * language/china-util.el (setup-chinese-gb-environment): + Delete a code setting default value of default-input-method. (setup-chinese-big5-environment): Likewise. (setup-chinese-cns-environment): Likewise. @@ -12107,7 +12107,7 @@ * loadup.el (loaddefs.el): Load that file much later, almost last. Delete most calls to garbage-collect. -1997-08-15 Barry A. Warsaw <cc-mode-help@python.org> +1997-08-15 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * progmodes/cc-styles.el (c-style-alist): "python" style requires c-comment-continuation-stars be "". @@ -12271,7 +12271,7 @@ * dos-fns.el (dos-print-region-function): Force EOL conversion to DOS CR-LF pairs. -1997-08-10 Barry A. Warsaw <cc-mode-help@python.org> +1997-08-10 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * Release 5.15 @@ -12324,7 +12324,7 @@ (c-enable-//-in-c-mode): Obsolete. * progmodes/cc-langs.el (c++-mode-syntax-table, java-mode-syntax-table) - (objc-mode-syntax-table, idl-mode-syntax-table): Added autoload + (objc-mode-syntax-table, idl-mode-syntax-table): Add autoload cookies. c-mode-syntax-table already has one. Use the new syntax table initialization idioms. @@ -12333,7 +12333,7 @@ lines are now analyzed as template-args-cont. * progmodes/cc-styles.el (c-offsets-alist): - Added template-args-cont syntactic symbol. + Add template-args-cont syntactic symbol. * progmodes/cc-styles.el (c-styles-alist): In "java" style, set c-hanging-comment-starter-p to @@ -12353,16 +12353,16 @@ * international/mule.el (make-coding-system): Add a new FLAGS elements SAFE. Use it for terminal coding system if some other coding system is specified explicitly. - (ignore-relative-composition): Initialize - ignore-relative-composition. + (ignore-relative-composition): + Initialize ignore-relative-composition. - * international/mule-util.el(prefer-coding-system): Moved to + * international/mule-util.el(prefer-coding-system): Move to mule-util.el. * international/mule-cmds.el (set-default-coding-systems): Doc-string modified. - (prefer-coding-system): Moved from mule-util.el. Call - set-default-coding-systems. + (prefer-coding-system): Move from mule-util.el. + Call set-default-coding-systems. * international/mule-conf.el (iso-safe): New coding system. @@ -12416,7 +12416,7 @@ * help.el (describe-key): Don't put a colon after the command name. -1997-08-09 Barry A. Warsaw <cc-mode-help@python.org> +1997-08-09 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * progmodes/cc-engine.el (c-beginning-of-statement-1): When checking for bare semi, don't match @@ -12438,7 +12438,7 @@ c-hanging-comment-starter-p to nil to preserve Javadoc starter lines. * progmodes/cc-styles.el (c-set-style-2): - Fixed broken implementation of inherited styles. + Fix broken implementation of inherited styles. * progmodes/cc-styles.el (c-set-style): Call c-initialize-builtin-style. @@ -12639,12 +12639,12 @@ 1997-08-04 Espen Skoglund <espensk@odslab5.cs.uit.no> * pascal.el (pascal-mode-syntax-table): _ is now a symbol constituent. - (pascal-indent-case): Removed unnecessary calls to marker-position. + (pascal-indent-case): Remove unnecessary calls to marker-position. (pascal-indent-declaration): Editing a parameterlist at the end of a buffer does not hang. Removed unnecessary call to marker-position. - (pascal-get-lineup-indent): Removed unused variable. + (pascal-get-lineup-indent): Remove unused variable. Indent parameterlist correctly. - (pascal-completion-response): Removed unused variable. + (pascal-completion-response): Remove unused variable. 1997-08-04 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> @@ -12653,16 +12653,16 @@ * isearch.el (isearch-quote-char): Fix handling of control characters, copied from quoted-insert. - * emacs-lisp/pp.el (pp-to-string): Use - emacs-lisp-mode-syntax-table. + * emacs-lisp/pp.el (pp-to-string): + Use emacs-lisp-mode-syntax-table. * international/quail.el (quail-update-leim-list-file): Go to the beginning of the package file, in case it was already visited. 1997-08-04 Kenichi Handa <handa@etl.go.jp> - * language/english.el (setup-english-environment): Call - set-default-coding-systems. + * language/english.el (setup-english-environment): + Call set-default-coding-systems. * language/china-util.el (setup-chinese-gb-environment): Do not call set-terminal-coding-system and set-keyboard-coding-system, @@ -12676,8 +12676,8 @@ * language/korean.el (setup-korean-environment): Likewise. - * international/mule-cmds.el (set-default-coding-systems): New - function. + * international/mule-cmds.el (set-default-coding-systems): + New function. * international/mule.el (default-terminal-coding-system): New var. (set-terminal-coding-system): @@ -12772,20 +12772,20 @@ * term/x-win.el: Fix previous change. - * international/quail.el (quail-next-translation): Call - quail-execute-non-quail-command when no current translations. + * international/quail.el (quail-next-translation): + Call quail-execute-non-quail-command when no current translations. (quail-prev-translation): Likewise. (quail-next-translation-block): Likewise. (quail-prev-translation-block): Likewise. - * language/china-util.el (setup-chinese-gb-environment): Set - default value of default-input-method. + * language/china-util.el (setup-chinese-gb-environment): + Set default value of default-input-method. (setup-chinese-big5-environment): Likewise. (setup-chinese-cns-environment): Likewise. Correct input method name. - * language/ethio-util.el (setup-ethiopic-environment): Bind - correct commands in global-map, rmail-mode-map, and mail-mode-map. + * language/ethio-util.el (setup-ethiopic-environment): + Bind correct commands in global-map, rmail-mode-map, and mail-mode-map. * language/ethiopic.el (ccl-encode-ethio-font): Fix typo in doc-string. Set default value of default-input-method. @@ -12872,23 +12872,23 @@ * international/fontset.el (fontset-name-p): New function. (uninstanciated-fontset-alist): New variable. - (create-fontset-from-fontset-spec): Delete arg STYLE. Register - style-variants of FONTSET in uninstanciated-fontset-alist. - (create-fontset-from-x-resource): Call - create-fontset-from-fontset-spec correctly. + (create-fontset-from-fontset-spec): Delete arg STYLE. + Register style-variants of FONTSET in uninstanciated-fontset-alist. + (create-fontset-from-x-resource): + Call create-fontset-from-fontset-spec correctly. * international/mule-util.el (reference-point-alist): Doc-string modified. - * term/x-win.el: Do not create style-variants of fontset. They - are just registered in uninstanciated-fontset-alist. + * term/x-win.el: Do not create style-variants of fontset. + They are just registered in uninstanciated-fontset-alist. 1997-07-31 Michael Kifer <kifer@cs.sunysb.edu> - * ediff*.el (ediff-eval-in-buffer): Changed macro and renamed + * ediff*.el (ediff-eval-in-buffer): Change macro and renamed ediff-with-current-buffer. Eliminated inefficient calls to `intern'. - * ediff-diff.el (ediff-exec-process): Changed to work with buffers + * ediff-diff.el (ediff-exec-process): Change to work with buffers whose names have spaces. (ediff-wordify): Use buffer-substring-no-properties. @@ -13070,8 +13070,8 @@ 1997-07-25 Ken'ichi Handa <handa@psilocin.gnu.ai.mit.edu> - * international/quail.el (quail-update-leim-list-file): Call - find-file-noselect with t for arguments NOWARN and RAWFILE. + * international/quail.el (quail-update-leim-list-file): + Call find-file-noselect with t for arguments NOWARN and RAWFILE. * international/mule-cmds.el (leim-list-entry-regexp): Make this match only at beginning of line. @@ -13120,8 +13120,8 @@ * language/tibet-util.el (setup-tibetan-environment): Correct coding system names. Set default-input-method to "tibetan-wylie". - * language/viet-util.el (setup-vietnamese-environment): Add - autoload cookie. + * language/viet-util.el (setup-vietnamese-environment): + Add autoload cookie. 1997-07-25 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -13143,7 +13143,7 @@ 1997-07-24 Michael Kifer <kifer@cs.sunysb.edu> * viper.el (viper-non-vi-major-modes): New variable. - (vip-set-hooks): Changed so it'll update viper-non-vi-major-modes. + (vip-set-hooks): Change so it'll update viper-non-vi-major-modes. (viper-mode): Now checks viper-non-vi-major-modes. 1997-07-24 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -13168,11 +13168,11 @@ * cus-face.el (custom-declare-face): Use [set-]face-documentation. - * faces.el (face-documentation): Renamed from face-doc-string. - (set-face-documentation): Renamed from set-face-doc-string. + * faces.el (face-documentation): Rename from face-doc-string. + (set-face-documentation): Rename from set-face-doc-string. (face-doc-string): Make this an alias. - * term/bg-mouse.el (bg-yank-or-pop): Changed eql to eq. + * term/bg-mouse.el (bg-yank-or-pop): Change eql to eq. * international/mule-cmds.el (read-input-method-name): Fix error msg. @@ -13342,8 +13342,8 @@ Use undecided-dos for dos-text file names. Use undecided for non-existing untranslated file names. - * international/mule.el (modify-coding-system-alist): Added. - international/mule-util.el (modify-coding-system-alist): Removed. + * international/mule.el (modify-coding-system-alist): Add. + international/mule-util.el (modify-coding-system-alist): Remove. * loadup.el [windows-nt, ms-dos]: Undo loading of international/mule-utils. @@ -13407,7 +13407,7 @@ (occur-mode-find-occurrence): Use `occur' text property to find marker for locus of the occurrence. (occur-next, occur-prev): New commands. - (occur): Fixed bug preventing line number being displayed if line + (occur): Fix bug preventing line number being displayed if line number is less than the number of lines of context. 1997-07-18 Andre Spiegel <spiegel@inf.fu-berlin.de> @@ -13467,7 +13467,7 @@ * paren.el (show-paren-match-face): Use gray on all non-color screens. -1997-07-17 Barry A. Warsaw <cc-mode-help@python.org> +1997-07-17 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * progmodes/cc-mode.el (c-initialize-cc-mode): New function. (c-mode, c++-mode, objc-mode, java-mode): Call it. @@ -13480,7 +13480,7 @@ * progmodes/cc-langs.el: Require 'cc-defs for the definition of c-emacs-features. - * progmodes/cc-langs.el (c-mode-menu): Added uncomment region and + * progmodes/cc-langs.el (c-mode-menu): Add uncomment region and slight rearrangement of items. * progmodes/cc-cmds.el: Require cc-defs for the c-add-syntax macro. @@ -13493,8 +13493,8 @@ * progmodes/cc-engine.el (c-maybe-labelp): Add defvar. - * progmodes/cc-styles.el (c-initialize-builtin-style): Use - copy-sequence instead of c-copy-tree. + * progmodes/cc-styles.el (c-initialize-builtin-style): + Use copy-sequence instead of c-copy-tree. * progmodes/cc-defs.el (c-load-all): Function deleted. @@ -13564,17 +13564,17 @@ * international/quail.el (quail-translate-key): Fix previous change. - * international/mule.el (make-coding-system): Distinguish - coding-category-iso-7-else and coding-category-iso-8-else. + * international/mule.el (make-coding-system): + Distinguish coding-category-iso-7-else and coding-category-iso-8-else. - * international/mule-conf.el (coding-category-emacs-mule): Replace - coding-category-iso-else with coding-category-iso-7-else and + * international/mule-conf.el (coding-category-emacs-mule): + Replace coding-category-iso-else with coding-category-iso-7-else and coding-category-iso-8-else. - * international/mule-diag.el (describe-current-coding-system): Use - coding-category-iso-7-else instead of coding-category-iso-else. + * international/mule-diag.el (describe-current-coding-system): + Use coding-category-iso-7-else instead of coding-category-iso-else. - * language/china-util.el (setup-chinese-gb-environment): Adjusted + * language/china-util.el (setup-chinese-gb-environment): Adjust for the change of coding category names. Set default-input-method to chinese-py-punct. (setup-chinese-big5-environment): Set default-input-method to @@ -13582,18 +13582,18 @@ (setup-chinese-cns-environment): Set default-input-method correctly. - * language/english.el (setup-english-environment): Adjusted for + * language/english.el (setup-english-environment): Adjust for the change of coding category names. - * language/japan-util.el (setup-japanese-environment): Adjusted + * language/japan-util.el (setup-japanese-environment): Adjust for the change of coding category names. Set default-input-method correctly. - * language/ethio-util.el (setup-ethiopic-environment): Set - default-input-method correctly. + * language/ethio-util.el (setup-ethiopic-environment): + Set default-input-method correctly. - * language/korean.el (setup-korean-environment): Set - default-input-method correctly. + * language/korean.el (setup-korean-environment): + Set default-input-method correctly. * language/tibet-util.el (setup-tibetan-environment: Set default-input-method correctly. @@ -13656,8 +13656,8 @@ for iswitchb-kill-buffer and iswitchb-find-file. (iswitchb): When no text typed in, show all buffers. (iswitchb-complete): Use equal rather than eq. - (iswitchb-next-match, iswitchb-prev-match): Use - iswitchb-chop to handle reordering the buffer list. + (iswitchb-next-match, iswitchb-prev-match): + Use iswitchb-chop to handle reordering the buffer list. (iswitchb-chop): New function. (iswitchb-make-buflist): Rewritten for efficiency. (iswitchb-to-end): Operate on a list of buffers, not just one. @@ -13727,8 +13727,8 @@ 1997-07-10 Kenichi Handa <handa@etl.go.jp> - * international/fontset.el (create-fontset-from-fontset-spec): Add - optional arg NOERROR. + * international/fontset.el (create-fontset-from-fontset-spec): + Add optional arg NOERROR. (create-fontset-from-x-resource): Give t as arg NOERROR to create-fontset-from-fontset-spec. @@ -13742,11 +13742,11 @@ (isearch-input-method-title): New variable. (isearch-toggle-specified-input-method): Set the above variables. (isearch-toggle-input-method): Likewise. - (isearch-process-search-multibyte-characters): Give - isearch-input-method as arg to read-multilingual-string. + (isearch-process-search-multibyte-characters): + Give isearch-input-method as arg to read-multilingual-string. - * international/mule-cmds.el (read-multilingual-string): Adjusted - for the previous change of variables related to input methods. + * international/mule-cmds.el (read-multilingual-string): + Adjust for the previous change of variables related to input methods. * isearch.el (isearch-message-prefix): Likewise. @@ -13806,7 +13806,7 @@ * progmodes/cc-*.el: New files, totally reorganized. * dunnet.el: Undo an earlier change: - (dun-piss): Renamed from dunnet-urinate. + (dun-piss): Rename from dunnet-urinate. (dun-verblist): Indecent word added back. (dunnet): Delete "censored" message. @@ -13913,7 +13913,7 @@ * browse-url.el: Require thingatpt when compiling. (browse-url-url-at-point): Use `thing-at-point' (with URL code moved from here). - (browse-url-looking-at): Moved to thingatpt.el, renamed and changed. + (browse-url-looking-at): Move to thingatpt.el, renamed and changed. * thingatpt.el (thing-at-point): Use `thing-at-point' property, if any. (bounds-of-thing-at-point): Use `bounds-of-thing-at-point' property. @@ -13952,11 +13952,11 @@ (widget-default-delete): Ditto. * wid-edit.el (color): Make it an editable field. - (widget-color-value-create): Deleted. - (widget-color-value-get): Deleted. - (widget-color-value-set): Deleted. - (color-item): Deleted. - (widget-color-item-button-face-get): Renamed to + (widget-color-value-create): Delete. + (widget-color-value-get): Delete. + (widget-color-value-set): Delete. + (color-item): Delete. + (widget-color-item-button-face-get): Rename to `widget-color-sample-face-get'. (color-sample): Delete. (editable-color): Delete. @@ -14066,15 +14066,15 @@ (custom-browse-visibility-action, custom-browse-group-tag) (custom-browse-group-tag-action, custom-browse-variable-tag-action) (custom-browse-face-tag, custom-browse-face-tag-action) - (custom-browse-face-tag-action, custom-browse-alist): Changed - prefix from `custom-tree' to `custom-browse'. + (custom-browse-face-tag-action, custom-browse-alist): + Change prefix from `custom-tree' to `custom-browse'. (custom-variable-value-create, custom-face-value-create) - (custom-group-value-create): Updated caller. + (custom-group-value-create): Update caller. * cus-edit.el (custom-browse-only-groups): New option. (custom-group-value-create): Use it. Omit non-groups if non-nil. - * cus-edit.el (custom-help-menu): Renamed "Variable" to "Option". + * cus-edit.el (custom-help-menu): Rename "Variable" to "Option". Remove "..." from non-prompting entries. * wid-edit.el (widget-single-line-field-face): New face. @@ -14096,7 +14096,7 @@ * language/european.el (setup-8-bit-environment): New argument LANGUAGE. - (setup-latin1-environment): Adjusted for the above change. + (setup-latin1-environment): Adjust for the above change. (setup-latin2-environment): Likewise. (setup-latin3-environment): Likewise. (setup-latin4-environment): Likewise. @@ -14106,8 +14106,8 @@ * language/hebrew.el (setup-hebrew-environment): Likewise. - * language/cyril-util.el (setup-cyrillic-environment): Adjusted - for the change of an input method name. + * language/cyril-util.el (setup-cyrillic-environment): + Adjust for the change of an input method name. * language/devan-util.el (setup-devanagari-environment): Likewise. @@ -14155,25 +14155,25 @@ (quail-defrule): Doc-string modified. (quail-defrule-internal): Document it. (quail-get-translation): Change the format of DEF part. - (quail-lookup-key): Make the second argument LEN optional. Reset - quail-current-translations to nil. + (quail-lookup-key): Make the second argument LEN optional. + Reset quail-current-translations to nil. (quail-map-definition): New function. (quail-get-current-str): New function. (quail-guidance-translations-starting-column): New variable. (quail-update-current-translations): New function. - (quail-translate-key): Adjusted for the change of DEF format. + (quail-translate-key): Adjust for the change of DEF format. Call quail-update-current-translations. (quail-next-translation): Call quail-update-current-translations. (quail-prev-translation): Likewise. (quail-next-translation-block): Likewise. (quail-prev-translation-block): Likewise. - (quail-select-translation): Deleted. + (quail-select-translation): Delete. (quail-make-guidance-frame): New function. (quail-show-guidance-buf): Handle the case that minibuffer is in a separate frame. (quail-hide-guidance-buf): Likewise. - (quail-show-translations): Call - quail-update-current-translations. Check width of a frame to be + (quail-show-translations): + Call quail-update-current-translations. Check width of a frame to be used. (quail-completion): Do not supply LEN argument to quail-lookup-key. @@ -14186,8 +14186,8 @@ (charset-chars, charset-width, charset-direction) (charset-iso-final-char, charset-iso-graphic-plane) (charset-reverse-charset, charset-short-name, charset-long-name) - (charset-description, charset-plit, set-charset-plist): Document - them. + (charset-description, charset-plit, set-charset-plist): + Document them. (make-char, charset-list): Doc-string modified. (find-new-buffer-file-coding-system): Fix bug of handling the coding system undecided. @@ -14296,16 +14296,16 @@ (updates): Reject subdirs whose names start with =. (custom-deps, finder-data, autoloads, update-subdirs): Likewise. - * scroll-bar.el (toggle-scroll-bar): Moved from frame.el. + * scroll-bar.el (toggle-scroll-bar): Move from frame.el. Use scroll-bar-mode to determine which side; if it's nil, use left. (set-scroll-bar-mode): New subroutine, taken from scroll-bar-mode. (scroll-bar-mode): Use the variable set-scroll-bar-mode. (scroll-bar-mode): New variable. Extra defvar to avoid warning. - (toggle-horizontal-scroll-bar): Moved from frame.el. + (toggle-horizontal-scroll-bar): Move from frame.el. * frame.el (scroll-bar-side): Variable deleted. (toggle-scroll-bar, toggle-horizontal-scroll-bar): - Moved to scroll-bar.el. + Move to scroll-bar.el. * files.el (file-chase-links): When handling .., make newname absolute. Simplify several places. @@ -14399,7 +14399,7 @@ * wid-edit.el (widget-button-click): Steal up event if key is not bound in `widget-global-map'. - * cus-edit.el (custom-tree-insert-prefix): Renamed from + * cus-edit.el (custom-tree-insert-prefix): Rename from `custom-tree-insert'. (custom-group-value-create): Use it. @@ -14482,7 +14482,7 @@ (custom-button-face): New defface. (custom widget-type): Use custom-button-face for buttons. (custom-group-tag-faces): Initial value is nil. - (custom-variable-tag-face): Renamed from custom-variable-sample-face. + (custom-variable-tag-face): Rename from custom-variable-sample-face. Initialize it like custom-group-tag-face. (custom-group-tag-faces): Initialize to nil. (custom-state-face): New defface. @@ -14497,21 +14497,21 @@ only if the item is modified. Take widget as arg. (custom-mode): Use widget-edit-functions. - * wid-edit.el (widget-edit-functions): Renamed from widget-edit-hook. + * wid-edit.el (widget-edit-functions): Rename from widget-edit-hook. (widget-field-action): Pass the widget as an arg when running hook. - * cus-edit.el (Custom-set): Renamed from custom-set. - (Custom-save): Renamed from custom-save. + * cus-edit.el (Custom-set): Rename from custom-set. + (Custom-save): Rename from custom-save. (custom-browse-sort-predicate): Defalias deleted. (custom-group-value-create): Don't sort, in tree mode. - (Custom-mode-menu): Renamed from custom-mode-menu. - (Custom-reset-current): Renamed from custom-reset-current. - (Custom-reset-saved): Renamed from custom-reset-saved. - (Custom-reset-standard): Renamed from custom-reset-standard. - (Custom-menu-update): Renamed from custom-menu-update. - (customize-set-value): Renamed from custom-set-value. - (customize-set-variable): Renamed from custom-set-variable. - (customize-save-customized): Renamed from custom-save-customized. + (Custom-mode-menu): Rename from custom-mode-menu. + (Custom-reset-current): Rename from custom-reset-current. + (Custom-reset-saved): Rename from custom-reset-saved. + (Custom-reset-standard): Rename from custom-reset-standard. + (Custom-menu-update): Rename from custom-menu-update. + (customize-set-value): Rename from custom-set-value. + (customize-set-variable): Rename from custom-set-variable. + (customize-save-customized): Rename from custom-save-customized. * cus-start.el (double-click-time): Use restricted-sexp. (load-path): Make [Current dir?] itself the active button. @@ -14548,7 +14548,7 @@ instead of displaying an echo area message. (widget-toggle-action): Likewise. (group-visibility, widget-group-visibility-create): - Moved to cus-edit.el and renamed. + Move to cus-edit.el and renamed. 1997-06-23 Dan Nicolaescu <done@ece.arizona.edu> @@ -14623,7 +14623,7 @@ 1997-06-22 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> * decipher.el (decipher-copy-cons): - Renamed from decipher-get-undo-copy. Calls changed. + Rename from decipher-get-undo-copy. Calls changed. * emacs-lisp/lmenu.el (popup-menu): Redefine as macro. (popup-menu-popup, popup-menu-internal): New function. @@ -14747,11 +14747,11 @@ (custom-variable-value-create): Use it. (custom-face-value-create): Use it. (custom-group-value-create): Use it. - (custom-buffer-groups-last): Changed default. + (custom-buffer-groups-last): Change default. - * wid-edit.el (group-visibility): Deleted. + * wid-edit.el (group-visibility): Delete. (widget-group-visibility-create): Ditto. - (group-link): Deleted. + (group-link): Delete. (widget-group-link-create): Ditto. (widget-group-link-action): Ditto. @@ -14761,12 +14761,12 @@ (custom-group-link-action): New function. (custom-group-value-create): Use `custom-group-link'. - * wid-edit.el (widget-before-change): Fixed comment and debug string. + * wid-edit.el (widget-before-change): Fix comment and debug string. - * cus-edit.el (custom-mode-customize-menu): Deleted. + * cus-edit.el (custom-mode-customize-menu): Delete. (custom-mode-menu): Define here. (custom-mode): Don't add here. - (custom-format-handler): Deleted. + (custom-format-handler): Delete. (custom): Don't add here. * cus-edit.el (custom-browse-sort-predicate): New alias. @@ -14776,7 +14776,7 @@ (custom-group): Ditto. (custom-group-value-create): Ditto. - * cus-edit.el (face): Fixed format. + * cus-edit.el (face): Fix format. (custom-face-value-create): Browse face, not option. * cus-edit.el (custom-group-value-create): Rewrote to replace @@ -14787,8 +14787,8 @@ (custom-variable): Ditto. (custom-face): Delete :format and :format-handler. (custom): Add :format. - (custom-format-handler): Removed unnecessary code. - (custom-face-format-handler): Deleted. + (custom-format-handler): Remove unnecessary code. + (custom-face-format-handler): Delete. (custom-add-see-also): New function. (custom-buffer-style): New option. (widget-face-value-create): Use it here instead of :format. @@ -14817,13 +14817,13 @@ (custom-menu-sort-predicate): Use them. (custom-menu-create): Use it. (custom-buffer-sort-predicate, custom-buffer-order-predicate) - (custom-menu-sort-predicate, custom-menu-order-predicate): Deleted. + (custom-menu-sort-predicate, custom-menu-order-predicate): Delete. * wid-edit.el (widget-leave-text): Don't delete nil overlays. * wid-edit.el (widget-get-indirect): New function. (widget-default-create): Use it. - (widget-button-insert-indirect): Deleted. + (widget-button-insert-indirect): Delete. * wid-edit.el (widget-inactive-face): Use dim gray instead of dark gray. @@ -15004,9 +15004,9 @@ 1997-06-18 Ken'ichi Handa <handa@psilocin.gnu.ai.mit.edu> - * mule-util.el (coding-system-parent): Moved to mule.el. + * mule-util.el (coding-system-parent): Move to mule.el. - * mule.el (coding-system-parent): Moved from mule-util.el. + * mule.el (coding-system-parent): Move from mule-util.el. 1997-06-18 Kenichi Handa <handa@etl.go.jp> @@ -15015,7 +15015,7 @@ * subdirs.el: Add "language" in the argument of normal-top-level-add-to-load-path. - * rmail.el (rmail-enable-decoding-message): Deleted. + * rmail.el (rmail-enable-decoding-message): Delete. (rmail-revert): Bind enable-multibyte-characters to nil before calling rmail-convert-file. (rmail-convert-to-babyl-format): If enable-multibyte-characters is @@ -15049,7 +15049,7 @@ (coding-system-list): Sort coding systems by coding-system-lessp. An element of returned list is always coding system, never be a cons. - (modify-coding-system-alist): Renamed from + (modify-coding-system-alist): Rename from set-coding-system-alist. (prefer-coding-system): New function. (compose-chars-component): But fix for handling a composite @@ -15076,8 +15076,8 @@ not a valid KEY argument now. (leim-list-file-name, leim-list-header, leim-list-entry-regexp): New variables. - (update-leim-list-file, update-all-leim-list-files): New - functions. + (update-leim-list-file, update-all-leim-list-files): + New functions. (current-input-method): Doc-string modified because the value is now input method name. (default-input-method, previous-input-method): Likewise. @@ -15086,12 +15086,12 @@ (input-method-alist): New variable. (register-input-method): Register input method in input-method-alist. - (read-language-and-input-method-name): Deleted. + (read-language-and-input-method-name): Delete. (read-input-method-name): New function. (activate-input-method, select-input-method, toggle-input-method): - Modified for the above change. + Modify for the above change. (read-multilingual-string): Likewise. - (describe-current-input-method): Renamed from + (describe-current-input-method): Rename from describe-input-method. (describe-input-method): New function. (describe-language-environment): Don't put a vacant line at the @@ -15121,7 +15121,7 @@ * language/cyril-util.el (setup-cyrillic-iso-environment) (setup-cyrillic-koi8-environment) - (setup-cyrillic-alternativnyj-environment): Deleted. + (setup-cyrillic-alternativnyj-environment): Delete. (setup-cyrillic-environment): New function. * language/cyrillic.el: Don't make the keymap @@ -15171,12 +15171,12 @@ * tar-mode.el (tar-extract): Use second argument of view-buffer instead of setting view-exit-action. - * files.el (view-read-only): New option variable. If - non-nil then buffers visiting files read-only, do it in view mode. + * files.el (view-read-only): New option variable. + If non-nil then buffers visiting files read-only, do it in view mode. (find-file-read-only, find-file-read-only-other-window) (find-file-read-only-other-frame): Call toggle-read-only instead of setting buffer-read-only explicitly. - (toggle-read-only, after-find-file): Changed to be aware + (toggle-read-only, after-find-file): Change to be aware of view-read-only. (save-some-buffers): Use second argument of view-buffer instead of setting view-exit-action. @@ -15191,7 +15191,7 @@ * icon.el (icon-indent-line): A comment ends at the end of the line, delete call to nonexistent function. - * icon.el (icon-font-lock-keywords-1): Improved regexp. + * icon.el (icon-font-lock-keywords-1): Improve regexp. (icon-font-lock-keywords-2): Likewise. 1997-06-16 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -15210,15 +15210,15 @@ 1997-06-16 Simon Marshall <simon@gnu.ai.mit.edu> - * icon.el (icon-imenu-generic-expression): Improved regexp. - (icon-font-lock-keywords-1): Improved regexps. + * icon.el (icon-imenu-generic-expression): Improve regexp. + (icon-font-lock-keywords-1): Improve regexps. (icon-font-lock-keywords-2): Likewise. (icon-mode): Don't set font-lock-comment-start-regexp via font-lock-defaults; it is not needed anymore. 1996-06-16 Dan Nicolaescu <done@ece.arizona.edu> - * icon.el (icon-imenu-generic-expression): Improved regexp. + * icon.el (icon-imenu-generic-expression): Improve regexp. (icon-mode): Don't use pushnew. 1997-06-16 Michelangelo Grigni <mic@mathcs.emory.edu> @@ -15226,9 +15226,9 @@ * ffap.el (ffap-soft-value): Make this a function again; the macro version does intern-soft too early. Deleted XEmacs-specific code. - (ffap-string-at-point-mode-alist): Added "=" and + (ffap-string-at-point-mode-alist): Add "=" and "&" to the url syntax, as suggested by SJE. - (ffap-read-file-or-url): Fixed the HIST argument to + (ffap-read-file-or-url): Fix the HIST argument to completing-read (only visible in XEmacs?), as reported by Christoph Wedler <wedler@fmi.uni-passau.de>. (ffap-kpathsea-expand-path): New func, replaces ffap-add-subdirs, @@ -15237,7 +15237,7 @@ Added mouse-track support (but no binding), as suggested by MDB. Moved Emacs mouse bindings from "down-mouse" events to ordinary mouse events. - (ffap-alist): Added ffap-fortran-mode, as requested by MDB. + (ffap-alist): Add ffap-fortran-mode, as requested by MDB. Rewrote and merged XEmacs support, eliminating file ffap-xe.el. Modified ffap-other-frame to work in dedicated frames, fixing a bug reported by JENS. @@ -15247,20 +15247,20 @@ (ffap-read-file-or-url): For XEmacs, give extra HACK-HOMEDIR arg to `abbreviate-file-name'. (ffap-file-at-point): Suppress errors from `ffap-alist'. - (ffap-url-at-point): Modified regexp to accept + (ffap-url-at-point): Modify regexp to accept mail hostnames ending with a digit. Fixes bug report of SJE. (ffap-url-at-point): Use higher level function (w3-view-this-url t) suggested by wmperry, instead of w3-zone-at/w3-zone-data or widget-at/widget-get. - (ffap-url-at-point): Modified to work with + (ffap-url-at-point): Modify to work with w3-version "WWW 2.3.64 1996/06/02 06:20:23" alpha, which uses the 'widget package rather than the old w3-zone-at. Bug was reported by JENS. Adapted comments and doc strings to Emacs coding conventions. Reorganized. Retired v18 support. (ffap-bindings): Offers a default installation. - (ffap-string-at-point): Modified arguments. - (ffap-gnus-hook): Updated for Gnus 5. + (ffap-string-at-point): Modify arguments. + (ffap-gnus-hook): Update for Gnus 5. (ffap-tex-init): Delayed initialization of `ffap-tex-path'. (ffap-dired): New entry in `ffap-alist'. (ffap-menu-rescan): May fontify the choices in buffer. @@ -15309,7 +15309,7 @@ * cus-edit.el (widget-glyph-insert-glyph): Make the invisible extent open ended. - * cus-edit.el (custom-format-handler): Added :echo-help to + * cus-edit.el (custom-format-handler): Add :echo-help to visibility widget. (custom-variable-value-create): Ditto, also for tag. * wid-edit.el (widget-documentation-string-value-create): Ditto. @@ -15325,7 +15325,7 @@ * wid-edit.el (widget-tabable-at): New function. (widget-move): Use it. - * wid-edit.el (widget-after-change): Reimplemented :secret. + * wid-edit.el (widget-after-change): Reimplement :secret. * wid-edit.el (widget-field-add-space): New option. (widget-specify-field): Use it. @@ -15378,7 +15378,7 @@ view-mode-enter or view-mode-exit. (view-buffer, view-buffer-other-window): New argument exit-action. (view-file, view-file-other-window, view-buffer-other-window) - (view-buffer, view-mode-enter): Changed method used to restore + (view-buffer, view-mode-enter): Change method used to restore windows when leaving view mode. (view-mode-exit): New function. (view-return-to-alist): New variable. @@ -15468,7 +15468,7 @@ (widget-documentation-string-value-create): Also use documentation properties on single line documentation strings. - * wid-browse.el (widget-minor-mode): Fixed mistake in + * wid-browse.el (widget-minor-mode): Fix mistake in widget-minor-mode - it had semantics of non-interactive calling reversed. @@ -15482,7 +15482,7 @@ * add-log.el (add-log-time-format): New variable. (add-log-iso8601-time-string): New function. (add-change-log-entry): Use add-log-time-format. - (add-log-iso8601-time-zone): Renamed from iso8601-time-zone. + (add-log-iso8601-time-zone): Rename from iso8601-time-zone. 1997-06-13 Dan Nicolaescu <done@ece.arizona.edu> @@ -15490,7 +15490,7 @@ (isearch-close-unecessary-overlays): New function. (isearch-range-invisible): Use them. - * isearch.el (search-invisible): Changed the semantics, + * isearch.el (search-invisible): Change the semantics, the default value and updated the doc string. (isearch-opened-overlays): New variable. (isearch-mode): Initialize it. @@ -15504,7 +15504,7 @@ opened, open them, add them to isearch-opened-overlays and say that the range is visible. - * hideshow.el (hideshow): Added a :prefix. + * hideshow.el (hideshow): Add a :prefix. (hs-isearch-open): New variable. (hs-flag-region): Use that variable. Changed the semantics of the FLAG parameter and updated the docs. @@ -15551,7 +15551,7 @@ Fix error messages. * text-mode.el (paragraph-indent-text-mode): - Renamed from spaced-text-mode. + Rename from spaced-text-mode. (text-mode-map): Bind TAB to indent-relative. (indented-text-mode-map): Variable deleted. (indented-text-mode): Now an alias for text-mode. @@ -15569,7 +15569,7 @@ * bibtex.el (bibtex-delete-whitespace, bibtex-current-line) (bibtex-assoc-of-regexp, bibtex-skip-to-valid-entry) (bibtex-map-entries): - Renamed from delete-whitespace, current-line, assoc-of-regexp, + Rename from delete-whitespace, current-line, assoc-of-regexp, skip-to-valid-bibtex-entry, and map-bibtex-entries, respectively. 1997-06-11 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -15585,14 +15585,14 @@ (reftex-label-alist-builtin): New default environment subfigure. (reftex-find-duplicate-labels): Temporary buffer is now "*Duplicate Labels*" instead of "*Help*". - (reftex-bibtex-selection-callback): Renamed variable found-list. - (reftex-found-list): Added defvar for this variable. - (TeX-master): Added defvar for this variable. + (reftex-bibtex-selection-callback): Rename variable found-list. + (reftex-found-list): Add defvar for this variable. + (TeX-master): Add defvar for this variable. (reftex-reset-mode): Kill temporary buffers associated with RefTeX. 1997-06-10 Ken'ichi Handa <handa@psilocin.gnu.ai.mit.edu> - * mule-cmds.el (view-hello-file): Adjusted for the changes of + * mule-cmds.el (view-hello-file): Adjust for the changes of coding system names. 1997-06-10 Terrence Brannon <brannon@sand.usc.edu> @@ -15637,14 +15637,14 @@ 1997-06-10 Stefan Schoef <schoef@OFFIS.Uni-Oldenburg.DE> - * bibtex.el (bibtex-mode-map): Changed the binding of the C-TAB + * bibtex.el (bibtex-mode-map): Change the binding of the C-TAB key, such that XEmacs will understand it, too. * bibtex.el (bibtex-format-entry, bibtex-end-of-entry): Give specific error message if not on valid BibTeX entry. - * bibtex.el (bibtex-field-string-quoted): Small bug fix. Allow - backslash followed by newline. + * bibtex.el (bibtex-field-string-quoted): Small bug fix. + Allow backslash followed by newline. * bibtex.el (bibtex-reposition-window, bibtex-mark-entry): Two new functions, bound to M-C-l and M-C-h, respectively. @@ -15662,7 +15662,7 @@ of ---. (bibtex-font-lock-keywords): Don't treat ALT prefixed entries as comments. - (bibtex-entry): Fixed parameter list. This function is not + (bibtex-entry): Fix parameter list. This function is not intended to be called with required and optional fields as optional arguments anymore. @@ -15679,7 +15679,7 @@ * bibtex.el (bibtex-submit-bug-report): Report all variables. * bibtex.el (bibtex-contline-indentation): New user option. - (bibtex-entry-offset): Renamed from bibtex-entry-indentation. + (bibtex-entry-offset): Rename from bibtex-entry-indentation. * bibtex.el (bibtex-entry-field-alist): Used different order for some fields (as documented in btxdoc.tex). Changed one of the @@ -15694,7 +15694,7 @@ * bibtex.el (bibtex-reference-key): Reincluded parentheses. Parentheses should be disallowed only in field constants. - * bibtex.el (bibtex-autokey-transcriptions): Fixed bug (two + * bibtex.el (bibtex-autokey-transcriptions): Fix bug (two entries for `\o' while `\oe' entry was missing). * bibtex.el (bibtex-entry-indentation): New variable to determine @@ -15702,7 +15702,7 @@ (bibtex-move-outside-of-entry): Use `skip-chars-forward' instead of `re-search-forward'. (bibtex-beginning-of-first-entry, bibtex-beginning-of-last-entry): - Renamed from beginning-of-first-bibtex-entry and + Rename from beginning-of-first-bibtex-entry and beginning-of-last-bibtex-entry. Go to beginning of line, return point. (bibtex-do-auto-fill, bibtex-make-field, bibtex-entry) (bibtex-String, bibtex-Preamble): Respect `bibtex-entry-indentation'. @@ -15714,8 +15714,8 @@ (bibtex-clean-entry): Use `bibtex-reference-maybe-empty-head' instead of a fixed string. - * bibtex.el (bibtex-beginning-of-entry, bibtex-end-of-entry): Now - return point if called from a program. + * bibtex.el (bibtex-beginning-of-entry, bibtex-end-of-entry): + Now return point if called from a program. (bibtex-enclosing-field, bibtex-format-entry) (bibtex-generate-autokey, bibtex-parse-keys, bibtex-mode) (bibtex-ispell-entry, bibtex-narrow-to-entry, bibtex-sort-buffer) @@ -15740,12 +15740,12 @@ * bibtex.el (bibtex-entry-delimiters): New variable to determine if entries shall be delimited by braces or parentheses. - (bibtex-entry-left-delimiter, bibtex-entry-right-delimiter): New - helper functions. - (bibtex-entry, bibtex-String, bibtex-Preamble): Respect - `bibtex-entry-delimiters'. + (bibtex-entry-left-delimiter, bibtex-entry-right-delimiter): + New helper functions. + (bibtex-entry, bibtex-String, bibtex-Preamble): + Respect `bibtex-entry-delimiters'. (bibtex-entry-format): Doc fix. - (bibtex-reference-key, bibtex-field-const): Removed parentheses + (bibtex-reference-key, bibtex-field-const): Remove parentheses from allowed characters. (bibtex-end-of-entry): Better handling of incorrect preambles. @@ -15763,7 +15763,7 @@ (current-line): New helper function to calculate current linenumber. Something like this should really be defined somewhere else in Emacs. - (bibtex-validate): Changed to show all errors in buffer in a + (bibtex-validate): Change to show all errors in buffer in a `compilation mode' buffer. If there are syntax errors, it aborts after the syntax check, since higher-level check functions rely on the syntactical correctness of buffer. If called from another lisp @@ -15774,7 +15774,7 @@ (twice as high) than `lazy-lock-stealth-time'. (bibtex-member-of-regexp, assoc-of-regexp): Small cosmetic changes. - * bibtex.el (bibtex-buffer-last-parsed-tick): Renamed from + * bibtex.el (bibtex-buffer-last-parsed-tick): Rename from bibtex-buffer-last-parsed-for-keys-tick and made it really buffer-local (bug fix). (bibtex-parse-keys): Make it use bibtex-buffer-last-parsed-tick. @@ -15786,7 +15786,7 @@ if it has been aborted. (bibtex-mode): Run the new function bibtex-parse-buffers-stealthily. - * bibtex.el (bibtex-generate-autokey): Changed the name part + * bibtex.el (bibtex-generate-autokey): Change the name part generation (bugfix). This function handles now correctly all three forms of BibTeX names, "First von Last", "von Last, First", "von Last, Jr, First". In every case the "Last" part is correctly @@ -15794,15 +15794,15 @@ the first is used. Name fields spread over more than one line are no problem anymore. - * bibtex.el (bibtex-entry-format): Changed default value to + * bibtex.el (bibtex-entry-format): Change default value to exclude 'page-dashes. Modified documentation. (bibtex-autokey-name-change-strings) (bibtex-autokey-titleword-abbrevs) (bibtex-autokey-titleword-change-strings, bibtex-entry) (bibtex-validate): Doc fixes. (bibtex-mode-map): Bound `C-c $' to bibtex-ispell-abstract. - (bibtex-generate-autokey): Changed documentation. Small - modification in calculating title field. + (bibtex-generate-autokey): Change documentation. + Small modification in calculating title field. (bibtex-mode): Included bibtex-ispell-entry into the list of `interesting' functions. (bibtex-kill-field): Bug fix (killing of first field in entry @@ -15818,7 +15818,7 @@ * bibtex.el (bibtex-mode-map): bibtex-complete-key wasn't bound correctly. - (bibtex-complete): Fixed bug (used string entries defined in + (bibtex-complete): Fix bug (used string entries defined in buffer as object to completion). * bibtex.el (Menu): Use easymenu. More menu items for @@ -15839,16 +15839,16 @@ (bibtex-kill-field): Use new variable bibtex-field-kill-ring. (bibtex-kill-entry): Use new variable bibtex-entry-kill-ring. - * bibtex.el (bibtex-kill-ring, bibtex-kill-ring-yank-pointer): New - internal variables like kill-ring and kill-ring-yank-pointer, but + * bibtex.el (bibtex-kill-ring, bibtex-kill-ring-yank-pointer): + New internal variables like kill-ring and kill-ring-yank-pointer, but bibtex-kill-ring holds fields or complete reference entries instead of raw strings. (bibtex-kill-ring-max): New user option similar to kill-ring-max. - (bibtex-kill-field): Renamed from bibtex-delete-field again. It - now supports the new variable bibtex-kill-ring. + (bibtex-kill-field): Rename from bibtex-delete-field again. + It now supports the new variable bibtex-kill-ring. (bibtex-copy-field-as-kill, bibtex-kill-entry) - (bibtex-copy-entry-as-kill, bibtex-yank, bibtex-yank-pop): New - interactive functions, which work on the bibtex-kill-ring + (bibtex-copy-entry-as-kill, bibtex-yank, bibtex-yank-pop): + New interactive functions, which work on the bibtex-kill-ring variable. (bibtex-insert-current-kill): New helper function to insert contents of bibtex-kill-ring in an appropriate way. @@ -15871,9 +15871,9 @@ generation, if year field of current entry is absent. (bibtex-generate-autokey): Use this new variable. - * bibtex.el (bibtex-include-OPTannote): Deleted (is set in + * bibtex.el (bibtex-include-OPTannote): Delete (is set in bibtex-user-optional-fields). - (bibtex-entry, bibtex-print-help-message): Removed support for + (bibtex-entry, bibtex-print-help-message): Remove support for bibtex-include-OPTannote. * bibtex.el (bibtex-entry-format): New constant @@ -15882,25 +15882,25 @@ * bibtex.el (bibtex-mode): Set value for font-lock-mark-block-function. - * bibtex.el (bibtex-font-lock-keywords): Changed to distinguish + * bibtex.el (bibtex-font-lock-keywords): Change to distinguish optional from ordinary fields. (bibtex-format-entry, bibtex-print-help-message) (bibtex-remove-OPT-or-ALT, bibtex-pop): Used simpler regexps. - * bibtex.el (bibtex-delete-field): Changed from + * bibtex.el (bibtex-delete-field): Change from bibtex-delete-optional-or-alternative-field. Deletes now mandatory fields as well. - (bibtex-mode): Changed documentation. + (bibtex-mode): Change documentation. - * bibtex.el (bibtex-entry-type-history, bibtex-key-history): New - variables to use own histories in BibTeX buffers. + * bibtex.el (bibtex-entry-type-history, bibtex-key-history): + New variables to use own histories in BibTeX buffers. (bibtex-entry, bibtex-clean-entry, bibtex-String): Use these new variables. * bibtex.el (bibtex-entry, bibtex-make-field): A function can now be used to generate a fields init string. (bibtex-include-OPTkey, bibtex-include-OPTannote) - (bibtex-entry-field-alist): Changed documentation accordingly. + (bibtex-entry-field-alist): Change documentation accordingly. * bibtex.el (bibtex-mode): bibtex-parse-keys on start of mode is now abortable, too. @@ -15913,7 +15913,7 @@ * bibtex.el (bibtex-find-entry-location): Bug fix: Insertion into completely empty buffer didn't work. - * bibtex.el (bibtex-user-optional-fields): Renamed from + * bibtex.el (bibtex-user-optional-fields): Rename from bibtex-mode-user-optional-fields. (bibtex-submit-bug-report, bibtex-entry, bibtex-print-help-message): Use bibtex-user-optional-fields. @@ -15922,9 +15922,9 @@ delimiting braces and not those inside fields. * bibtex.el (skip-to-valid-bibtex-entry, bibtex-parse-keys) - (bibtex-end-of-entry, bibtex-validate, bibtex-reformat): Calculate - complex regexps outside of loops. - (bibtex-mode): Changed documentation on how to convert third party + (bibtex-end-of-entry, bibtex-validate, bibtex-reformat): + Calculate complex regexps outside of loops. + (bibtex-mode): Change documentation on how to convert third party buffers. * bibtex.el (bibtex-convert-alien): New function to convert a @@ -15938,7 +15938,7 @@ call of bibtex-parse-keys. This avoids unnecessary double call if Font Lock mode is chosen for buffer at startup. - * bibtex.el (bibtex-String, bibtex-Preamble): Renamed from + * bibtex.el (bibtex-String, bibtex-Preamble): Rename from bibtex-string and bibtex-preamble. (bibtex-String): If bibtex-maintain-sorted-entries and bibtex-sort-ignore-string-entries are both non-nil, read string @@ -15946,9 +15946,9 @@ location (as for normal entries). * bibtex.el (bibtex-autokey-titleword-first-ignore) - (bibtex-autokey-titleword-abbrevs): Changed documentation: case of + (bibtex-autokey-titleword-abbrevs): Change documentation: case of regexps doesn't matter anymore. - (bibtex-field-const, bibtex-reference-key): Simplified to not + (bibtex-field-const, bibtex-reference-key): Simplify to not contain uppercase letters. (member-of-regexp, assoc-of-regexp): Ignore case of regexp. (map-bibtex-entries): Call function not for every syntactical correct @@ -15969,24 +15969,24 @@ (bibtex-end-of-entry): Only report an "unknown entry" message if called interactively. - * bibtex.el (bibtex-sort-ignore-string-entries): Renamed back from + * bibtex.el (bibtex-sort-ignore-string-entries): Rename back from bibtex-sort-ignore-string-and-preamble. Of course, preambles are always ignored, since they have no key at all. (bibtex-string): Slightly less complex regexp. (skip-to-valid-bibtex-entry): New helper function to skip forward (or backward) to beginning of next syntactical correct known - BibTeX entry, if not already there. Respects - bibtex-sort-ignore-string-entries. + BibTeX entry, if not already there. + Respects bibtex-sort-ignore-string-entries. (map-bibtex-entries): Bug fix: It wasn't called for string entries even if bibtex-sort-ignore-string-entries was nil. (beginning-of-last-bibtex-entry): New helper function to go to last entry in buffer. (bibtex-end-of-entry): Bug fix: Now works with string and preamble entries as well. - (bibtex-sort-buffer): Renamed from bibtex-sort-entries. Simplified + (bibtex-sort-buffer): Rename from bibtex-sort-entries. Simplified by using new function skip-to-valid-bibtex-entry. Now only known entries are checked. - (bibtex-find-entry-location): Simplified by using new functions + (bibtex-find-entry-location): Simplify by using new functions skip-to-valid-bibtex-entry and beginning-of-last-bibtex-entry. Only known entries are used to determine location. (bibtex-validate): Now checks string entries, too. @@ -15994,8 +15994,8 @@ bibtex-end-of-entry. * bibtex.el (bibtex-end-of-entry): Don't use forward-sexp anymore, - since this fails on entries with non-escaped double-quotes. Use - search-bibtex-reference instead (though it is slower, it is more + since this fails on entries with non-escaped double-quotes. + Use search-bibtex-reference instead (though it is slower, it is more reliable). (bibtex-ispell-abstract): Use normal regexps created by bibtex-cfield instead of special ones. @@ -16007,7 +16007,7 @@ work, since due to a bug all entries were simply skipped. * bibtex.el (bibtex-mode): Doc fix. - (bibtex-delete-optional-or-alternative-field): Renamed from + (bibtex-delete-optional-or-alternative-field): Rename from bibtex-kill-optional-or-alternative-field. (bibtex-delete-optional-or-alternative-field, bibtex-empty-field): Use delete-region, not kill-region. @@ -16020,7 +16020,7 @@ buffer, died on entries with `@' in other than first column). (beginning-of-first-bibtex-entry, bibtex-format-entry) (bibtex-beginning-of-entry, bibtex-validate, bibtex-clean-entry): - Changed to allow BibTeX entries to start in a column different + Change to allow BibTeX entries to start in a column different from 1 (but still for speed reasons only whitespace is allowed prior to the `@' on the same line. @@ -16044,21 +16044,21 @@ (bibtex-find-entry-location): A bug had been introduced by using search-bibtex-reference instead of re-search-forward (fixed). - * bibtex.el (bibtex-field-delimiters): Renamed from + * bibtex.el (bibtex-field-delimiters): Rename from bibtex-field-delimiter. (bibtex-entry-format): Constant empty-opts renamed to empty-opts-or-alts. - (bibtex-remove-delimiters): Renamed from + (bibtex-remove-delimiters): Rename from bibtex-remove-double-quotes-or-braces. (bibtex-reformat): New function. * bibtex.el (bibtex-fill-entry): New function to refill entry. - (bibtex-mode-map): Defined key for bibtex-fill-entry. + (bibtex-mode-map): Define key for bibtex-fill-entry. * bibtex.el (bibtex-field-delimiter): Substitutes variables bibtex-field-left-delimiter and bibtex-field-right-delimiter. - (bibtex-field-left-delimiter, bibtex-field-right-delimiter): New - helper functions. + (bibtex-field-left-delimiter, bibtex-field-right-delimiter): + New helper functions. (bibtex-make-field, bibtex-pop): Use new variable bibtex-field-delimiter. (bibtex-empty-field, bibtex-string): Use new functions @@ -16084,23 +16084,23 @@ (bibtex-mode): Don't set fill-prefix anymore, but use new function bibtex-do-auto-fill. - * bibtex.el (bibtex-find-entry-location): Fixed bug (when + * bibtex.el (bibtex-find-entry-location): Fix bug (when bibtex-maintain-sorted-entries was non-nil, an entry with a key greater than all other keys wasn't inserted in the correct place). * bibtex.el (bibtex-mode): Don't use bibtex-auto-fill-function anymore, but use directly variable fill-prefix. - * bibtex.el (bibtex-find-entry-location): Fixed bug (on duplicate + * bibtex.el (bibtex-find-entry-location): Fix bug (on duplicate keys, point must move to beginning of entry, so that bibtex-entry works correctly). - * bibtex.el (bibtex-complete): Fixed bug (parameter string-list + * bibtex.el (bibtex-complete): Fix bug (parameter string-list was mistakenly altered by the function itself). * bibtex.el (bibtex-mode-map): Bind bibtex-complete-key to C-TAB. - * bibtex.el (bibtex-validate): Renamed from bibtex-validate-buffer + * bibtex.el (bibtex-validate): Rename from bibtex-validate-buffer since it can acts on region if active. Use search-bibtex-reference. (search-bibtex-reference): New function to be used in places where prior a re-search-{forward|backward} for bibtex-reference or @@ -16113,22 +16113,22 @@ bibtex-enclosing-reference-maybe-empty-head. (bibtex-reference-infix, bibtex-reference-postfix): New constants necessary due to splitting bibtex-reference. - (bibtex-reference): Deleted. - (bibtex-type-in-reference, skip-whitespace-and-comments): Deleted. + (bibtex-reference): Delete. + (bibtex-type-in-reference, skip-whitespace-and-comments): Delete. * bibtex.el (bibtex-mode): Don't turn auto-fill-mode on. Use new variable normal-auto-fill-function. - * bibtex.el (bibtex-field-string): Simplified. + * bibtex.el (bibtex-field-string): Simplify. - * bibtex.el (bibtex-mode-syntax-table): Changed syntax of + * bibtex.el (bibtex-mode-syntax-table): Change syntax of double-quote back to quote syntax. * bibtex.el (bibtex-complete): New generic function for interface functions bibtex-complete-string and bibtex-complete-key. (bibtex-complete-key): New function. - * bibtex.el (bibtex-sort-ignore-string-and-preamble): Renamed from + * bibtex.el (bibtex-sort-ignore-string-and-preamble): Rename from bibtex-sort-ignore-string-entries. (map-bibtex-entries): Use bibtex-sort-ignore-string-and-preamble and ignore preamble entries as well. @@ -16152,10 +16152,10 @@ mark is active. With optional argument checks if required fields are missing, too. - * bibtex.el (bibtex-mode): Added support for imenu. + * bibtex.el (bibtex-mode): Add support for imenu. * bibtex.el (bibtex-entry-field-alist) - (bibtex-mode-user-optional-fields): Modified syntax to allow + (bibtex-mode-user-optional-fields): Modify syntax to allow preinitialization of fields. (bibtex-make-field, bibtex-make-optional-field): Support preinitialization of fields. @@ -16166,21 +16166,21 @@ (bibtex-generate-autokey): Use new variables. * bibtex.el (bibtex-field-const, bibtex-reference-type) - (bibtex-reference-key): Changed to match the (according to Oren + (bibtex-reference-key): Change to match the (according to Oren Patashnik) allowed characters. - * bibtex.el (bibtex-clean-entry-zap-empty-opts-or-alts): Renamed - from bibtex-clean-entry-zap-empty-opts. + * bibtex.el (bibtex-clean-entry-zap-empty-opts-or-alts): + Rename from bibtex-clean-entry-zap-empty-opts. (bibtex-entry-field-alist): Slightly modified syntax to support alternative fields needed for Book and InBook references. (bibtex-font-lock-keywords, bibtex-print-help-message) (bibtex-make-field, bibtex-pop, bibtex-clean-entry): Support ALT prefixed entries. - (bibtex-mode): Documented new ALT prefixed fields. - (bibtex-make-optional-field): Modified to give only field name as + (bibtex-mode): Document new ALT prefixed fields. + (bibtex-make-optional-field): Modify to give only field name as arg to bibtex-make-field. (bibtex-remove-OPT-or-ALT, bibtex-kill-optional-or-alternative-field): - Renamed from bibtex-remove-OPT and bibtex-kill-optional-field, + Rename from bibtex-remove-OPT and bibtex-kill-optional-field, respectively. Modified to support ALT prefixes. * bibtex.el (bibtex-enclosing-field, bibtex-print-help-message): @@ -16220,29 +16220,29 @@ 1997-06-09 Kenichi Handa <handa@etl.go.jp> - * mule.el: Delete declaration for buffer-file-coding-system. It - is done in buffer.c now. In the comment, change coding-system to + * mule.el: Delete declaration for buffer-file-coding-system. + It is done in buffer.c now. In the comment, change coding-system to coding system. The name coding-vector is changed to coding-spec. (coding-vector-type, coding-vector-mnemonic) - (coding-vector-docstring, coding-vector-flags): Deleted. + (coding-vector-docstring, coding-vector-flags): Delete. (coding-system-spec-ref): New function. (coding-system-type, coding-system-mnemonic, coding-system-flags): Use coding-system-spec-ref. - (coding-system-doc-string): Renamed from coding-system-docstring. - (coding-system-eol-type): Renamed from coding-system-eoltype. - (coding-system-eol-type-mnemonic): Moved to mule-util.el. + (coding-system-doc-string): Rename from coding-system-docstring. + (coding-system-eol-type): Rename from coding-system-eoltype. + (coding-system-eol-type-mnemonic): Move to mule-util.el. (coding-system-post-read-conversion): Likewise. (coding-system-pre-write-conversion): Likewise. - (default-process-coding-system): Deleted. Now declared in + (default-process-coding-system): Delete. Now declared in buffer.c. (make-subsidiary-coding-system): New function. (make-coding-system): Check arguments more strictly. Do not make -unix, -dos, -mac variants for TYPE 4. (define-coding-system-alias): Call make-subsidiary-coding-system. - (set-buffer-file-coding-system): Adjusted for the function name + (set-buffer-file-coding-system): Adjust for the function name changes. (find-new-buffer-file-coding-system): Likewise. - (default-process-coding-system): Deleted. Now defined in coding.c. + (default-process-coding-system): Delete. Now defined in coding.c. * mule-conf.el: Coding system names changed. @@ -16274,7 +16274,7 @@ (print-coding-system): Likewise. (list-coding-systems): Likewise. Make it interactive. - * mule-util.el (set-coding-system-alist): Deleted. + * mule-util.el (set-coding-system-alist): Delete. (string-to-sequence): Doc string modified. (coding-system-list): Add optional arg BASE-ONLY. (coding-system-base): New function. @@ -16367,14 +16367,14 @@ 1997-06-07 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> - * files.el (file-name-non-special): Handle - file-name-completion and file-name-all-completions. + * files.el (file-name-non-special): + Handle file-name-completion and file-name-all-completions. * mailalias.el: Customize. Doc fixes. Mark some risky local variables. * dired.el (dired-unmark-all-marks): - Renamed from dired-unmark-all-files-no-query. + Rename from dired-unmark-all-files-no-query. * language/european.el (setup-8-bit-environment): Load the file with load, not require, so that we reload it if nec. @@ -16382,28 +16382,28 @@ * language/english.el ("English"): Improve doc string. * language/indian.el (describe-indian-environment-map): - Renamed from describe-indian-support-map. + Rename from describe-indian-support-map. * language/devanagari.el: Corresponding changes. * language/european.el (describe-european-environment-map): - Renamed from describe-european-support-map. + Rename from describe-european-support-map. * language/cyrillic.el (describe-cyrillic-environment-map): - Renamed from describe-cyrillic-support-map. + Rename from describe-cyrillic-support-map. * language/chinese.el (describe-chinese-environment-map): - Renamed from describe-chinese-support-map. + Rename from describe-chinese-support-map. * mule-cmds.el (describe-language-environment): - Renamed from describe-language-support. + Rename from describe-language-support. Do the real work here; don't call describe-specified-language-support. Print the mnemonics when mentioning coding systems. Improve style of output. (describe-specified-language-environment): - Renamed from describe-specified-language-support. + Rename from describe-specified-language-support. Don't do the work here; call describe-language-environment. (describe-language-environment-map): - Renamed from describe-language-support-map. + Rename from describe-language-support-map. * language/european.el (setup-8-bit-environment): Do not set set-case-syntax-offset. @@ -16451,7 +16451,7 @@ 1997-06-04 Per Abrahamsen <abraham@dina.kvl.dk> - * wid-edit.el (widget-kill-line): Fixed for overlays. + * wid-edit.el (widget-kill-line): Fix for overlays. * cus-edit.el (custom-buffer-create-internal): Show full documentation string in buffers with only a single item. @@ -16467,9 +16467,9 @@ (widget-field-end): Workaround for local-map at end of overlay. (widget-specify-field): Ditto. - (widget-move): Fixed but with single button buffers. + (widget-move): Fix but with single button buffers. - * cus-edit.el (custom-buffer-create-internal): Improved help + * cus-edit.el (custom-buffer-create-internal): Improve help strings for reset buttons. * wid-edit.el (widget-move): Restored support for @@ -16477,7 +16477,7 @@ (widget-documentation-string-value-create): Restore support for `widget-documentation--face'. - * cus-edit.el (customize-variable-other-window): Added defalias. + * cus-edit.el (customize-variable-other-window): Add defalias. * widget.el (:complete): New keyword. (:complete-function): New keyword. @@ -16524,7 +16524,7 @@ 1997-06-02 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> - * text-mode.el (spaced-text-mode): Renamed from text-mode. + * text-mode.el (spaced-text-mode): Rename from text-mode. But change the mode name and hooks. (text-mode): Put the guts of indented-text-mode here. But don't define text-mode-abbrev-table, just use it. @@ -16544,14 +16544,14 @@ 1997-06-02 Michael Kifer <kifer@cs.sunysb.edu> - * ediff-util.el (ediff-toggle-multiframe): Improved. - (ediff-setup, ediff-inferior-compare-regions): Modified. + * ediff-util.el (ediff-toggle-multiframe): Improve. + (ediff-setup, ediff-inferior-compare-regions): Modify. (ediff-setup): Bug fixed. * ediff-init.el (ediff-file-attributes): Use ediff-file-remote-p. * ediff-wind.el (ediff-setup-windows-multiframe-merge) - (ediff-setup-windows-multiframe-compare): Improved window placement. + (ediff-setup-windows-multiframe-compare): Improve window placement. * ediff-diff.el (ediff-make-fine-diffs): - Fixed messages about whitespace regions. + Fix messages about whitespace regions. * ediff-wind.el, ediff-ptch.el, ediff-mult.el, ediff-merg.el: custom.el'ed. @@ -16560,11 +16560,11 @@ * viper-init.el (vip-parse-sexp-ignore-comments): New variable. * viper-cmd.el (vip-paren-match): Parsing comments is now controlled with vip-parse-sexp-ignore-comments. - * viper-cmd.el (vip-goto-col): Fixed. + * viper-cmd.el (vip-goto-col): Fix. * viper-cmd.el (vip-autoindent): Now expands abbrevs. (vip-adjust-keys-for): Unbinds vip-autoindent, if vip-auto-indent is nil. - * viper-cmd.el (vip-prefix-arg-value): Fixed computation of integer + * viper-cmd.el (vip-prefix-arg-value): Fix computation of integer prefix args. * viper-cmd.el, viper-init.el: New files. @@ -16617,14 +16617,14 @@ 1997-06-01 Dan Nicolaescu <done@ece.arizona.edu> - * hideshow.el (hs-show-hidden-short-form): Updated doc string. + * hideshow.el (hs-show-hidden-short-form): Update doc string. (hs-adjust-block-beginning): Likewise. (hs-special-modes-alist): C and C++ should also use hs-c-like-adjust-block-beginning. (hs-find-block-beginning): If hs-adjust-block-beginning is t and we apply hs-adjust-block-beginning and we reach the point means that we found the block beginning. - (hs-c-like-adjust-block-beginning): Renamed from + (hs-c-like-adjust-block-beginning): Rename from java-hs-adjust-block-beginning. 1997-06-01 Simon Leinen <simon@switch.ch> @@ -16666,7 +16666,7 @@ getting read-only bob and eob in XEmacs. * wid-browse.el (widget-browse-at): Use `get-char-property' instead of `get-text-property'. - * widget.el (:value-from :value-to): Deleted. + * widget.el (:value-from :value-to): Delete. * widget.el (:button-overlay, :field-overlay): New keywords. * wid-edit.el (widget-default-delete): Delete overlays. (widget-field-value-delete): Delete overlay. @@ -16700,7 +16700,7 @@ 1997-06-01 Per Abrahamsen <abraham@dina.kvl.dk> - * cus-edit.el (custom-format-handler): Changed look of group + * cus-edit.el (custom-format-handler): Change look of group indicators. * wid-edit.el (widget-kill-line): Use forward-line instead of @@ -16716,10 +16716,10 @@ * cus-edit.el (custom-variable-prompt): Handle variable-at-point returning 0. - (customize-option): Renamed from custom-variable. + (customize-option): Rename from custom-variable. (customize-variable): Add it as an alias. (customize-option-other-window): - Renamed from customize-variable-other-window. + Rename from customize-variable-other-window. (custom-load-symbol): Search for both short and absolute names of the library, when avoiding duplicate loading. @@ -16761,9 +16761,9 @@ * cus-edit.el (custom-format-handler): New %e and %- escapes. (custom-group): Use them. - * widget.el (:widget-doc): Removed keyword. - * wid-edit.el (widget-help): Removed widget. - (widget-help-action): Removed function. + * widget.el (:widget-doc): Remove keyword. + * wid-edit.el (widget-help): Remove widget. + (widget-help-action): Remove function. * widget.el (:documentation-shown): New keyword. * wid-edit.el (documentation-string): New widget. @@ -16807,7 +16807,7 @@ * mule-cmds.el (set-language-environment): Add autoload cookie. Renamed from setup-language-environment. - * startup.el (iso-8859-n-locale-regexp): Renamed from + * startup.el (iso-8859-n-locale-regexp): Rename from iso-8859-1-locale-regexp. * loadup.el: Always load faces.el. @@ -16856,8 +16856,8 @@ * icomplete.el: Integrated Emacs 19.34 and XEmacs 19.15 corrections (typos, style, command revisions, etc). - * icomplete.el: Integrated immediate keybindings display. See - `icomplete-show-key-bindings', `icomplete-get-keys', and + * icomplete.el: Integrated immediate keybindings display. + See `icomplete-show-key-bindings', `icomplete-get-keys', and `icomplete-completions'. * icomplete.el (icomplete-get-keys): Return keys bound in prior @@ -16903,7 +16903,7 @@ * cus-edit.el (custom-magic-alist): Shortened message. - * cus-edit.el (custom-help-menu): Updated names. + * cus-edit.el (custom-help-menu): Update names. * cus-edit.el: Say `invoke' instead of `activate'. * wid-edit.el: Ditto. @@ -16930,13 +16930,13 @@ (widget-glyph-insert-glyph): No tag here. (widget-push-button-value-create): But here. - * wid-edit.el (widget-field-face): Changed to dim gray. + * wid-edit.el (widget-field-face): Change to dim gray. * wid-edit.el (widget-push-button-prefix): New option. (widget-push-button-suffix): New option. (widget-button): New group. - * widget.el (:text-format): Removed. + * widget.el (:text-format): Remove. (:button-suffix): New keyword. (:button-prefix): New keyword. @@ -16957,7 +16957,7 @@ * cus-edit.el (custom-magic-alist): Use `invoke' instead of `push'. - * cus-edit.el (custom-magic-alist): Changed rogue state message. + * cus-edit.el (custom-magic-alist): Change rogue state message. * custom.el (defface): Doc fix. @@ -16967,13 +16967,13 @@ * cus-edit.el, custom.el: Renamed `factory' to `standard' everywhere. - * cus-edit.el (custom-magic-show-button): Changed default to + * cus-edit.el (custom-magic-show-button): Change default to `nil'. - (custom): Removed `:format'. - (custom-variable): Removed level button. + (custom): Remove `:format'. + (custom-variable): Remove level button. (custom-face): Ditto. - (custom-level): Deleted. - (custom-level-action): Deleted. + (custom-level): Delete. + (custom-level-action): Delete. (custom-format-handler): Update caller. (custom-group-magic-alist): Merged into `custom-magic-alist'. (custom-magic-value-create): Use merged `custom-magic-alist'. @@ -16996,8 +16996,8 @@ * icomplete.el: Integrated Emacs 19.34 and XEmacs 19.15 corrections (typos, style, command revisions, etc). - Integrated hacked up XEmacs immediate keybindings display. See - `icomplete-show-key-bindings', `icomplete-get-keys', and + Integrated hacked up XEmacs immediate keybindings display. + See `icomplete-show-key-bindings', `icomplete-get-keys', and `icomplete-completions'. Doesn't work with mainline GNU Emacs 19.34 (because the cmdloop doesn't set owindow, and the current-local-map doesn't take optional buffer arg), so feature @@ -17046,7 +17046,7 @@ SYNTACTIC-PROPERTIES. Eval font-lock-syntactic-keywords with font-lock-eval-keywords. Compile and compare all keywords. (fast-lock-get-syntactic-properties): New function. - (fast-lock-add-properties): Renamed from fast-lock-set-face-properties. + (fast-lock-add-properties): Rename from fast-lock-set-face-properties. Take new arg SYNTACTIC-PROPERTIES and add syntax-table text properties. Now fast-lock.el saves a buffer's value of font-lock-syntactic-keywords and syntax-table text properties as added by font-lock.el. @@ -17133,7 +17133,7 @@ set-current-process-coding-system. * encoded-kb.el (encoded-kbd-mode): Fix typo in doc-string. - (encoded-kbd-set-coding-system): Deleted. + (encoded-kbd-set-coding-system): Delete. * case-table.el (describe-buffer-case-table): Use aref instead of set-char-table-range. @@ -17151,10 +17151,10 @@ (describe-specified-language-support): New function. (describe-language-support): Call the above function. (universal-coding-system-argument): New function. - (read-language-and-input-method-name): Doc-string fixed. If - default-input-method is nil, use previous-input-method as the + (read-language-and-input-method-name): Doc-string fixed. + If default-input-method is nil, use previous-input-method as the default value. - (set-default-input-method): Deleted. + (set-default-input-method): Delete. * language/*.el: Most of setup-LANGUAGE-environment functions are moved form LANGUAGE.el to LANG-util.el. These functions now at @@ -17270,7 +17270,7 @@ also accept a subdir with a file called `index'. * texinfmt.el (texinfo-extra-inter-column-width): - Renamed from extra-inter-column-width. Doc fix. + Rename from extra-inter-column-width. Doc fix. (texinfo-multitable-buffer-name): Variable renamed from multitable-temp-buffer-name. (texinfo-multitable-rectangle-name): @@ -17391,8 +17391,8 @@ read-only data someday. (eldoc-docstring-message): If truncating symbol name, show ending of name rather than beginning. The former is generally more unique. - (eldoc-function-argstring-from-docstring-method-table): Handle - pathological `save-restriction' case. + (eldoc-function-argstring-from-docstring-method-table): + Handle pathological `save-restriction' case. [top level]: Add `indent-for-tab-command' to eldoc-message-commands. 1997-05-21 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -17438,18 +17438,18 @@ (ada-font-lock-keywords-1): Move "task" before "task (body|type)" to correct highlighting (regexp depends on order). - * ada-mode.el (ada-in-char-const-p): Renamed from `ada-after-char-p'. + * ada-mode.el (ada-in-char-const-p): Rename from `ada-after-char-p'. Also test following character. (ada-adjust-case): Use better function `ada-in-char-const-p'. (ada-in-string-or-comment-p): Test for being in a char constant. - (ada-clean-buffer-before-saving): Changed default to t. + (ada-clean-buffer-before-saving): Change default to t. (ada-mode): Set `font-lock-defaults' for Emacs only, use properties for XEmacs. - * ada-mode.el (ada-indent-newline-indent): Simplified by just calling + * ada-mode.el (ada-indent-newline-indent): Simplify by just calling `ada-indent-current'. - * ada-mode.el (ada-end-stmt-re): Added word delimiters in regexp. + * ada-mode.el (ada-end-stmt-re): Add word delimiters in regexp. Removed `interactive' statements which were needed only for debugging. * ada-mode.el: @@ -17477,7 +17477,7 @@ (ada-goto-next-word): Generalized old `ada-goto-previous-word' for both directions. - * ada-mode.el (ada-indent-function): Removed unnecessary `package' case. + * ada-mode.el (ada-indent-function): Remove unnecessary `package' case. (ada-get-indent-case): Before testing for `=>', be sure there is an `is'. (ada-search-prev-end-stmt): Test for `separate' keyword on the @@ -17490,8 +17490,8 @@ * ada-mode.el: Doc fixes. (ada-mode): Support new font-lock-mode. - (ada-format-paramlist): Changed all `accept' to `access'. - (ada-insert-paramlist): Changed all `accept' to `access'. + (ada-format-paramlist): Change all `accept' to `access'. + (ada-insert-paramlist): Change all `accept' to `access'. (ada-in-comment-p): Use standard Emacs way `parse-partial-sexp'. (ada-font-lock-keywords-1): Regexps in not byte-compiled code behave different than byte-compiled regexps. @@ -17518,7 +17518,7 @@ 1997-05-20 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> - * word-help.el (set-word-help-file): Renamed from set-help-file. + * word-help.el (set-word-help-file): Rename from set-help-file. * crisp.el (crisp-mode): Add autoload cookie. @@ -17528,7 +17528,7 @@ * dos-w32.el (add-untranslated-filesystem) (remove-untranslated-filesystem): Add interactive spec. - * crisp.el (crisp-last-last-command): Renamed from last-last-command + * crisp.el (crisp-last-last-command): Rename from last-last-command and defvar added. * levents.el (event-closest-point): Fix paren error. @@ -17606,12 +17606,12 @@ (compilation-revert-buffer): New function. (compilation-mode): Set revert-buffer-function. - * files.el (revert-without-query): Renamed from + * files.el (revert-without-query): Rename from find-file-revert-without-query. (find-file-noselect): Use new option. (revert-buffer): Check the option here too. - * cus-face.el (custom-facep): Defined (once again). + * cus-face.el (custom-facep): Define (once again). * simple.el (do-auto-fill): Check enable-kinsoku and enable-multibyte-characters. @@ -17628,7 +17628,7 @@ 1997-05-16 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> - * autoload.el (update-autoloads-from-directories): Renamed from + * autoload.el (update-autoloads-from-directories): Rename from update-autoloads-from-directory. Take multiple directories as args. Use locate-library to find loaddefs.el and the top level Lisp dir. (batch-update-autoloads): Call update-autoloads-from-directories. @@ -17670,11 +17670,11 @@ * mule-cmds.el (set-language-info): Change the special treatment of key 'describe-function to 'documentation. - (describe-specified-language-support): Renamed from + (describe-specified-language-support): Rename from describe-language-support-internal. Get language name from last-command-event. - (describe-language-support): Call - describe-specified-language-support. + (describe-language-support): + Call describe-specified-language-support. * language/chinese.el: Delete functions describe-LANGUAGE-support. Delete 'describe-function entries and change 'documentation @@ -17791,13 +17791,13 @@ (default): Use `:mouse-down-action'. (menu-choice): Ditto. (widget-choice-mouse-down-action): New function. - (widget-info-link-action): Removed kludge to steal up event. + (widget-info-link-action): Remove kludge to steal up event. * cus-edit.el (widget-magic-mouse-down-action): New function. (custom-magic-value-create): Use it. - (custom-buffer-create-internal): Removed kludge to steal up event. + (custom-buffer-create-internal): Remove kludge to steal up event. - * widget.el (:glyph-up, :glyph-down, :glyph-inactive): New - keywords. + * widget.el (:glyph-up, :glyph-down, :glyph-inactive): + New keywords. * wid-edit.el (widget-glyph-insert-glyph): Support optional `down' and `inactive' glyphs. (widget-push-button-value-create): Ditto. @@ -17811,8 +17811,8 @@ (customize-variable-other-window, customize-face) (customize-face-other-window, customize-customized) (customize-saved, customize-apropos, custom-face-menu-create) - (custom-variable-menu-create, boolean, custom-menu-create): Updated - caller. + (custom-variable-menu-create, boolean, custom-menu-create): + Update caller. * cus-edit.el (custom-variable-action): Reset magic state. (custom-variable-menu): Allow `Reset to Current' on `changed' @@ -17853,24 +17853,24 @@ (choice, radio): Use it. (widget-prompt-value): Prepend widget type to prompt. - * wid-edit.el (widget-parent-action): Renamed from + * wid-edit.el (widget-parent-action): Rename from `widget-choice-item-action'. - (choice-item): Updated widget. + (choice-item): Update widget. * cus-edit.el (custom-magic): Ditto. - * wid-edit.el (widget-children-validate): Renamed from + * wid-edit.el (widget-children-validate): Rename from `widget-editable-list-validate'. - (editable-list, group): Updated widgets. + (editable-list, group): Update widgets. * cus-edit.el (custom, face): Ditto. - * wid-edit.el (widget-value-value-get): Renamed from + * wid-edit.el (widget-value-value-get): Rename from `widget-item-value-get'. - (item): Updated widget. + (item): Update widget. * cus-edit.el (face, custom): Ditto. - * wid-edit.el (widget-value-convert-widget): Renamed from + * wid-edit.el (widget-value-convert-widget): Rename from `widget-item-convert-widget'. - (item, editable-field): Updated widgets. + (item, editable-field): Update widgets. * cus-edit.el (face): Ditto. 1997-05-14 Simon Marshall <simon@wombat.gnu.ai.mit.edu> @@ -17986,13 +17986,13 @@ * gnus-mule.el: Moved to `gnus' subdirectory. - * gnus/gnus-mule.el (gnus-mule-message-send-news-function): New - function to encode text before sending by news. + * gnus/gnus-mule.el (gnus-mule-message-send-news-function): + New function to encode text before sending by news. (gnus-mule-message-send-mail-function): New function to encode text before sending by mail. (gnus-mule-initialize): Add gnus-mule-message-send-news-function - to the hook message-send-news-hook. Add - gnus-mule-message-send-mail-function to the hook + to the hook message-send-news-hook. + Add gnus-mule-message-send-mail-function to the hook message-send-mail-hook. * help.el (help-with-tutorial): Fix a bug of handling non-English @@ -18036,16 +18036,16 @@ Setting of syntax and category for Devanagari characters are moved to characters.el. - * language/english.el (setup-english-environment): Set - sendmail-coding-system and rmail-file-coding-system to nil. + * language/english.el (setup-english-environment): + Set sendmail-coding-system and rmail-file-coding-system to nil. * language/ethio-util.el (fidel-to-tex-map): Name changed to ethio-fidel-to-tex-map. * language/european.el: Typo in comment fixed. - * language/japanese.el (setup-japanese-environment): Set - sendmail-coding-system and rmail-file-coding-system to + * language/japanese.el (setup-japanese-environment): + Set sendmail-coding-system and rmail-file-coding-system to 'iso-2022-jp. * language/korean.el: Bug fixed in making coding system @@ -18095,8 +18095,8 @@ (rmail-convert-file): Comment fixed. (rmail-revert): Don't decode RMAIL file again because the backup file is saved in Emacs' internal format. - (rmail-convert-to-babyl-format): Check - rmail-enable-decoding-message. + (rmail-convert-to-babyl-format): + Check rmail-enable-decoding-message. * term/x-win.el: Create bold, italic, and bold-italic variants of default fontset. Name a fontset created from user-specified ASCII @@ -18138,7 +18138,7 @@ * simple.el (assoc-ignore-case): Downcase KEY as well as element cars. * bibtex.el (assoc-ignore-case): Function deleted. - (bibtex-member-of-regexp): Renamed from member-of-regexp. + (bibtex-member-of-regexp): Rename from member-of-regexp. Call changed. * timer.el (timer-event-handler): Take timer as arg directly. @@ -18340,7 +18340,7 @@ (compilation-shell-minor-mode-map, compilation-shell-minor-mode): New variables. (compile-auto-highlight): Doc fix. - (compilation-error-regexp-alist): Removed unnecessary line break + (compilation-error-regexp-alist): Remove unnecessary line break in first regexp. Replaced \\(\\|.* on \\) by \\(.* on \\)? in regexp for Absoft FORTRAN 77 Compiler 3.1.3. Added regexp for SPARCcompiler Pascal. Divided long line in regexp for Cray C @@ -18354,7 +18354,7 @@ (compilation-leave-directory-regexp-alist): New variables. (compilation-file-regexp-alist) (compilation-nomessage-regexp-alist): New variables. - (grep-regexp-alist): Removed unnecessary ^ at beginning of regexp. + (grep-regexp-alist): Remove unnecessary ^ at beginning of regexp. (compilation-enter-directory-regexp) (compilation-leave-directory-regexp): Variables deleted. Replaced by compilation-enter-directory-regexp-alist and @@ -18394,7 +18394,7 @@ * cus-edit.el (custom-group-magic-alist): New variable. (custom-group-state-update): Use custom-group-magic-alist. - (customize-group): Renamed from `customize', + (customize-group): Rename from `customize', and rename argument to GROUP. (customize): New function. @@ -18418,7 +18418,7 @@ * time-stamp.el (time-stamp-old-format-warn): Fix a tag string. (time-stamp-format): Use %Y not %y in default value. - * crisp.el (crisp-load-scroll-all): Renamed from ...-lock. + * crisp.el (crisp-load-scroll-all): Rename from ...-lock. (crisp-mode): Use scroll-all... not scroll-lock... * scroll-all.el: Renamed from scroll-lock.el. @@ -18476,7 +18476,7 @@ * ange-ftp.el (ange-ftp-file-entry-p): If ange-ftp-get-files returns nil, don't try ange-ftp-hash-entry-exists-p, just give up. - * comint.el (comint-input-face): Deleted. + * comint.el (comint-input-face): Delete. * compile.el (compilation-error-regexp-alist): Add regexp for Perl -w. @@ -18515,34 +18515,34 @@ "In" or "Out" command tells you if you are already on or off the bus. * dunnet.el (dun-sauna-heat): - Changed "begin to sweat" to "are perspiring" + Change "begin to sweat" to "are perspiring" so that it makes sense whether you are heating up or cooling down. * dunnet.el (dun-help): - Changed author e-mail address, added web page. + Change author e-mail address, added web page. Added hint for batch mode. * dunnet.el (*global*): - Fixed spelling of Presely in global object list. + Fix spelling of Presely in global object list. * dunnet.el (*global*): - Added coconuts, tank, and lake as objects that are recognized. + Add coconuts, tank, and lake as objects that are recognized. * dunnet.el (*global*): - Added `slip' as another way of describing the paper, + Add `slip' as another way of describing the paper, and `chip' as another way of describing the CPU. * dunnet.el (*global*): Upcase abbreviations of directions in room descriptions. * dunnet.el (dun-login): - Fixed erroneous login message to better-describe ftp limitations. + Fix erroneous login message to better-describe ftp limitations. * dunnet.el (dun-rlogin): - Added error message if user tries to rlogin back to pokey. + Add error message if user tries to rlogin back to pokey. * dunnet.el (dun-load-d): - Fixed so that if restore file isn't found which in non-batch mode, + Fix so that if restore file isn't found which in non-batch mode, window will switch back to game. 1997-04-27 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -18568,11 +18568,11 @@ 1997-04-26 Edward M Reingold <emr@silver.wisdom.weizmann.ac.il> - * cal-french.el (calendar-print-french-date): Label - French date in echo area. + * cal-french.el (calendar-print-french-date): + Label French date in echo area. - * cal-coptic.el (calendar-print-coptic-date): Label - Coptic/Ethiopic date in echo area. + * cal-coptic.el (calendar-print-coptic-date): + Label Coptic/Ethiopic date in echo area. 1997-04-25 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -18614,7 +18614,7 @@ * cus-edit.el (custom-set-value): New command. (custom-set-variable): New command. - (customize-saved): Renamed from `customize-customized'. + (customize-saved): Rename from `customize-customized'. (customize-customized): New command. (custom-save-customized): New command. @@ -18677,7 +18677,7 @@ * cus-edit.el (custom-display-unselected-match): Matched too many displays. - * wid-edit.el (widget-field-face): Changed default background + * wid-edit.el (widget-field-face): Change default background color. * custom.el (custom-declare-variable): Set `custom-get' the right @@ -18801,7 +18801,7 @@ * sh-script.el (sh-case): Make this a simple define-skeleton as it was originally. Don't add a menu-enable property. - (sh-assignment-regexp): Renamed from sh-assignment-prefix + (sh-assignment-regexp): Rename from sh-assignment-prefix undoing a renaming made by mistake. * sgml-mode.el (sgml-transformation): Fix previous change. @@ -18946,7 +18946,7 @@ * cus-start.el: Add support for face documentation. - * cus-dep.el (custom-make-dependencies): Fixed generation of + * cus-dep.el (custom-make-dependencies): Fix generation of parens. Fixed message. @@ -18975,8 +18975,8 @@ 1997-04-14 Steven L Baur <steve@altair.xemacs.org> - * edebug.el (edebug-read-and-maybe-wrap-form): Protect - against pathological recursive calls. + * edebug.el (edebug-read-and-maybe-wrap-form): + Protect against pathological recursive calls. 1997-04-14 Karl Heuer <kwzh@gnu.ai.mit.edu> @@ -19079,8 +19079,8 @@ variable instead. buffer-substring with 3 arguments is non-portable. * elp.el (elp-instrument-function, elp-instrument-list): - Handle function symbols that have already been instrumented. Do - not instrument them twice. + Handle function symbols that have already been instrumented. + Do not instrument them twice. * elp.el (elp-recycle-buffers-p): New variable. @@ -19128,18 +19128,18 @@ * cus-edit.el (customize-menu-create): New function. (custom-mode-customize-menu): Use it. - * cus-edit.el (custom-make-dependencies): Deleted function. + * cus-edit.el (custom-make-dependencies): Delete function. * cus-edit.el (customize-face): Sort faces. * cus-edit.el (custom-faces): New group. - (custom-magic-alist): Added. - (custom-variable-sample-face): Added. - (custom-variable-button-face): Added. - (custom-face-tag-face): Added. - (custom-group-tag-faces): Added. - (custom-group-tag-face): Added. - (customize): Removed from faces group. + (custom-magic-alist): Add. + (custom-variable-sample-face): Add. + (custom-variable-button-face): Add. + (custom-face-tag-face): Add. + (custom-group-tag-faces): Add. + (custom-group-tag-face): Add. + (customize): Remove from faces group. * cus-edit.el (custom-load-recursion): New variable. (custom-load-symbol): Use it. @@ -19151,14 +19151,14 @@ `custom-buffer-create'. (custom-buffer-create-other-window): New function. - * cus-edit.el (custom-guess-name-alist): Renamed from + * cus-edit.el (custom-guess-name-alist): Rename from `custom-guess-type-alist'. (custom-guess-doc-alist): New option. (custom-guess-type): Use them. - * cus-face.el (set-face-stipple): Removed Kyle Jones code. + * cus-face.el (set-face-stipple): Remove Kyle Jones code. - * cus-face.el (face-doc-string): Changed property name to + * cus-face.el (face-doc-string): Change property name to `face-documentation'. (set-face-doc-string): Ditto. @@ -19182,17 +19182,17 @@ unbound. (custom-menu-nesting): Don't define for XEmacs. - * cus-face.el (after-make-frame-hook): Removed - `custom-initialize-frame', as this is now in `frame.el'. + * cus-face.el (after-make-frame-hook): + Remove `custom-initialize-frame', as this is now in `frame.el'. * cus-edit.el (custom-guess-type-alist): New option. (custom-guess-type): New function. (custom-variable-type): New function. (custom-variable-value-create): Use it. - * cus-face.el (custom-face-attributes): Moved :family to the + * cus-face.el (custom-face-attributes): Move :family to the beginning of the list. - (custom-face-attributes): Added :strikethru attribute. + (custom-face-attributes): Add :strikethru attribute. * custom.el (custom-set-variables): If variable is already set, overwrite it here. @@ -19309,7 +19309,7 @@ (scheme-comment-indent, scheme-indent-offset) (scheme-indent-function, scheme-indent-line) (calculate-scheme-indent, scheme-indent-specform) - (scheme-indent-defform, scheme-indent-sexp): Removed; use lisp-mode + (scheme-indent-defform, scheme-indent-sexp): Remove; use lisp-mode equivalents. (scheme-imenu-generic-expression): New variable. (dsssl-imenu-generic-expression): New variable. @@ -19471,9 +19471,9 @@ 1997-03-30 Dan Nicolaescu <done@ece.arizona.edu> - * icon.el (icon-mode-map): Added menus. + * icon.el (icon-mode-map): Add menus. (icon-imenu-generic-expression): New variable to be used for imenu. - (icon-mode): Added font-lock, imenu and hideshow support. + (icon-mode): Add font-lock, imenu and hideshow support. (icon-font-lock-keywords-1, icon-font-lock-keywords-2): New constants for different level of font-lock fontification. (icon-font-lock-keywords): New variable. Default expression to be @@ -19502,7 +19502,7 @@ * sh-script.el (sh-mode): If file has no #! line, set the syntax table based on the default shell. -1997-03-29 Barry A. Warsaw <cc-mode-help@python.org> +1997-03-29 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * Public Release 4.389. @@ -19555,23 +19555,23 @@ * term.el: Added a lot of new faces, they all start with term- and follow a simple lexicographical convention. Note that each change is commented: just search for -mm in the source. - (term-char-mode): Added all the "gray-keys" to term-raw-map. + (term-char-mode): Add all the "gray-keys" to term-raw-map. (term-send-up): Similar, decided to go for the more xterm-like \eOA bindings in place of the previous \e[A. (term-buffer-maximum-size): New variable. - (term-mode): Added some make-local: now term-buffer-maximum-size, + (term-mode): Add some make-local: now term-buffer-maximum-size, ange-ftp-default-user/password/an-pwd. (term-emulate-terminal): Quite some modifications to allow multiple outstanding ANSI style commands: notably all the -previous-parameter stuff. Call term-handle-ansi-terminal-messages. - (term-emulate-terminal): Added simple trimming function: at the + (term-emulate-terminal): Add simple trimming function: at the end we simply check if the buffer is > term-buffer-maximum-size and cut it accordingly. (term-handle-colors-array): New function. (term-handle-ansi-terminal-messages): New function. - (term-handle-ansi-escape): Modified to allow ANSI coloring. - (ansi-term): New function that creates multiple terminals. Put - in the standard C-x map too: I'm quite used to C-x C-f and C-c C-f + (term-handle-ansi-escape): Modify to allow ANSI coloring. + (ansi-term): New function that creates multiple terminals. + Put in the standard C-x map too: I'm quite used to C-x C-f and C-c C-f was too awkward. 1997-03-29 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -19583,7 +19583,7 @@ * hideshow.el: Use overlays for hiding instead of selective display. Commented out the support for XEmacs because it doesn't support overlays. - (hs-special-modes-alist): Added support for java-mode. + (hs-special-modes-alist): Add support for java-mode. (hs-minor-mode-hook): New variable. (hs-c-start-regexp, hs-c-end-regexp, hs-forward-sexp-func) (hs-block-start-regexp, hs-block-end-regexp) @@ -19596,8 +19596,8 @@ (hs-hide-block-at-point, hs-hide-initial-comment-block) (java-hs-forward-sexp, hs-mouse-toggle-hiding): New functions. (hs-inside-comment-p, hs-hide-block) - (hs-show-block): Added support for single line comments. - (hs-hide-all): Added support for hiding comments. + (hs-show-block): Add support for single line comments. + (hs-hide-all): Add support for hiding comments. 1997-03-28 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -19711,7 +19711,7 @@ 1997-03-20 Dan Nicolaescu <done@ece.arizona.edu> * imenu.el (imenu-scanning-message): Support for bigger numbers. - (imenu--generic-function): Fixed probably a typo: named appeared + (imenu--generic-function): Fix probably a typo: named appeared twice in an item. Put function after name and beg in a special item because a normal item has name and beg (for orthogonality). (imenu-add-to-menubar): First test to see if the mode supports @@ -19742,8 +19742,8 @@ 1997-03-18 Kenichi Handa <handa@etl.go.jp> - * fontset.el (x-complement-fontset-spec): Setup - alternative-fontname-alist while complementing fontnames. + * fontset.el (x-complement-fontset-spec): + Setup alternative-fontname-alist while complementing fontnames. 1997-03-18 Naoto TAKAHASHI <ntakahas@etl.go.jp> @@ -19758,11 +19758,11 @@ (quail-keyboard-layout): Docstring changed to reflect the above change. (quail-keyboard-layout-len): Increased for the above change. - (quail-keyboard-layout-alist): Modified for the above change. + (quail-keyboard-layout-alist): Modify for the above change. 1997-03-18 Kenichi Handa <handa@etl.go.jp> - * mule.el (make-char): Documented. + * mule.el (make-char): Document. (charset-plist): Return quoted list even if CHARSET is supplied by symbol. @@ -19780,8 +19780,8 @@ * language/viet-util.el (viet-decode-viqr-region): Supply correct argumnents to rassoc. - (viqr-post-read-conversion, viqr-pre-write-conversion): New - functions. + (viqr-post-read-conversion, viqr-pre-write-conversion): + New functions. * language/vietnamese.el: Set the above functions to the coding system viqr. @@ -19856,7 +19856,7 @@ * mailalias.el (mail-passwd-files): New variable. (mail-get-names): Use mail-passwd-files instead of always /etc/passwd. -1997-03-12 Barry A. Warsaw <cc-mode-help@python.org> +1997-03-12 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * cc-mode.el (c-lineup-C-comments): Handle more cases, especially when comment lines aren't prefixed with stars. @@ -19883,7 +19883,7 @@ map them into inher-intro, inher-cont, and func-decl-cont syntactic symbols. Do the indentation as of Java inheritance lines better. - (c-offsets-alist): Changed the syntactic symbol ansi-funcdecl-cont + (c-offsets-alist): Change the syntactic symbol ansi-funcdecl-cont to func-decl-cont. This symbol is useful in Java throws declarations. (c-lineup-java-inher): New function for lining up "implements" @@ -19957,8 +19957,8 @@ * make-mode.el (makefile-dependency-regex): Disallow "=" in name, so that "flags=-o:1" is treated as an assignment, not a dependency. - (makefile-dependency-regex, makefile-macroassign-regex): Disallow - spaces in symbol name. + (makefile-dependency-regex, makefile-macroassign-regex): + Disallow spaces in symbol name. 1997-03-11 Dan Nicolaescu <done@ece.arizona.edu> @@ -19967,8 +19967,8 @@ 1997-03-12 Richard Stallman <rms@whiz-bang.gnu.ai.mit.edu> - * dired-aux.el (dired-fun-in-all-buffers): New arg FILE. Don't - operate on buffers whose wildcard pattern does not accept FILE. + * dired-aux.el (dired-fun-in-all-buffers): New arg FILE. + Don't operate on buffers whose wildcard pattern does not accept FILE. All callers changed. * dired.el (dired-glob-regexp): New function. @@ -20058,14 +20058,14 @@ (rmail-show-mime-function, rmail-mime-feature): New variables to control MIME feature. (rmail-file-coding-system): Default value is nil. - (rmail, rmail-convert-file, rmail-insert-inbox-text): Check - rmail-enable-mime. Read a file without any code conversion. + (rmail, rmail-convert-file, rmail-insert-inbox-text): + Check rmail-enable-mime. Read a file without any code conversion. (rmail-variables): Setup local variables rmail-buffer and rmail-view-buffer. - (rmail-decode-babyl-format, rmail-convert-babyl-format): Perform - code conversion of RMAIL file if rmail-enable-mime is nil. - (rmail-show-message): Make sure to be in rmail-buffer. If - rmail-enable-mime is t, call appropriate function to decode MIME + (rmail-decode-babyl-format, rmail-convert-babyl-format): + Perform code conversion of RMAIL file if rmail-enable-mime is nil. + (rmail-show-message): Make sure to be in rmail-buffer. + If rmail-enable-mime is t, call appropriate function to decode MIME format. (rmail-mail, rmail-reply): Call rmail-start-mail with argument rmail-view-buffer. @@ -20076,8 +20076,8 @@ rmail-summary-line-decoder. (rmail-summary-next-msg): Display rmail-view-buffer. (rmail-summary-mode): Make rmail-view-buffer buffer local. - (rmail-summary-rmail-update, rmail-summary-scroll-msg-up): Use - rmail-view-buffer instead of rmail-buffer. + (rmail-summary-rmail-update, rmail-summary-scroll-msg-up): + Use rmail-view-buffer instead of rmail-buffer. * mule-cmds.el (mule-keymap): Re-arranged. (set-language-info): Typo fixed in docstring. @@ -20188,8 +20188,8 @@ (turn-on-font-lock): Test font-lock-mode. Added commented out menu code. - * compile.el (compilation-mode-font-lock-keywords): Variable - definition deleted. New function. + * compile.el (compilation-mode-font-lock-keywords): + Variable definition deleted. New function. (compilation-mode-map): Add `...' to Compile menu entry. 1997-02-20 Yutaka NIIBE <gniibe@mri.co.jp> @@ -20239,8 +20239,8 @@ * help.el (help-with-tutorial): Prefix argument to specify a language interactively. - * isearch.el (isearch-mode-map): Define - isearch-toggle-input-method and + * isearch.el (isearch-mode-map): + Define isearch-toggle-input-method and isearch-toggle-specified-input-method in the map. (isearch-multibyte-characters-flag): New variable. (isearch-mode): Initialize it to nil. @@ -20272,8 +20272,8 @@ (sendmail-send-it): Perform code conversion on sending mail according to sendmail-coding-system. - * simple.el (kill-forward-chars, kill-backward-chars): Pay - attention to multibyte characters. + * simple.el (kill-forward-chars, kill-backward-chars): + Pay attention to multibyte characters. (what-cursor-position): With a prefix argument, print detailed info of a character on cursor position. (transpose-subr-1): Pay attention to multibyte characters. @@ -20369,8 +20369,8 @@ * diff.el (diff-process-setup): New function, sets up the compilation-exit-message-function so that it works with both asynchronous and synchronous sub-processes. - (diff): Bind compilation-exit-message-function. Run - compilation-finish-function when compile-internal returns if async + (diff): Bind compilation-exit-message-function. + Run compilation-finish-function when compile-internal returns if async processes aren't supported. 1997-02-08 Richard Stallman <rms@psilocin.gnu.ai.mit.edu> @@ -20432,7 +20432,7 @@ * iso-acc.el (iso-accents-compose): Handle case where unread-command-events is already nonempty. - * frame.el (set-frame-font): Renamed from set-default-font. + * frame.el (set-frame-font): Rename from set-default-font. 1997-02-01 Tom Tromey <tromey@cygnus.com> @@ -20484,7 +20484,7 @@ * compile.el (compilation-enter-directory-regexp) (compilation-leave-directory-regexp): Add .* at beginning. -1997-01-30 Barry A. Warsaw <cc-mode-help@python.org> +1997-01-30 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * cc-mode.el: Public Release 4.353. @@ -20504,7 +20504,7 @@ * cc-mode.el (c-Java-access-key): Set to nil since Java doesn't have C++-like access labels. - * cc-mode.el (c-style-alist): Added "python" style. + * cc-mode.el (c-style-alist): Add "python" style. * cc-mode.el (c-mode-menu): New function. (c-popup-menu, c-common-init): Use c-mode-menu. @@ -20525,9 +20525,9 @@ * cc-mode.el (c-emacs-features): Detect Infodock. (c-common-init, c-mode-map): Don't install menus for Infodock. - * cc-mode.el (c-indent-exp): Fixed infinite loop when multi-line C + * cc-mode.el (c-indent-exp): Fix infinite loop when multi-line C comment is last thing in buffer. - (c-guess-basic-offset): Fixed error when K&R C-like macro is first + (c-guess-basic-offset): Fix error when K&R C-like macro is first non-syntactic whitespace in file. * cc-mode.el (c-C++-comment-start-regexp): @@ -20705,7 +20705,7 @@ 1997-01-09 Simon Marshall <simon@wombat.gnu.ai.mit.edu> - * font-lock.el (font-lock-unique): Deleted. + * font-lock.el (font-lock-unique): Delete. (font-lock-prepend-text-property, font-lock-append-text-property): Don't call it; behave as to-be-written builtins. Declare as defuns. (font-lock-fillin-text-property): Declare as a defun. @@ -20731,7 +20731,7 @@ (expand-mode-hook, expand-mode-name): Variables deleted. (expand-load-hook): Variable renamed from expand-mode-load-hook. (expand-map): Variable deleted. - (expand-jump-to-next-slot): Renamed from expand-jump-to-next-mark. + (expand-jump-to-next-slot): Rename from expand-jump-to-next-mark. Add autoload. (expand-jump-to-previous-slot): Add autoload. Renamed from expand-jump-to-previous-mark. @@ -20803,11 +20803,11 @@ 1997-01-02 Jens Toivo Berger Thielemann <jensthi@ifi.uio.no> * word-help.el (word-help-mode-alist, reset-word-help) - (word-help-switch-help-file): Added support for completion. + (word-help-switch-help-file): Add support for completion. (word-help-complete, word-help-complete-list) (word-help-complete-index, word-help-extract-matches) (word-help-make-complete): New functions/variables for completion. - (word-help-mode-alist): Enhanced search regexps. + (word-help-mode-alist): Enhance search regexps. (word-help-index-mapper): Defaults now to extracting the first word. (word-help-mode-alist, word-help-index-mapper) (word-help-main-index, word-help-main-obarray) @@ -20850,8 +20850,8 @@ 1996-12-31 Richard Stallman <rms@ethanol.gnu.ai.mit.edu> - * simple.el (repeat-complex-command): Bind - minibuffer-history-position and minibuffer-history-sexp-flag + * simple.el (repeat-complex-command): + Bind minibuffer-history-position and minibuffer-history-sexp-flag only for the read-from-minibuffer call. 1996-12-30 Richard Stallman <rms@ethanol.gnu.ai.mit.edu> @@ -20929,7 +20929,7 @@ * expand.el: New file. - * skeleton.el (skeleton-positions): Renamed from skeleton-marks. + * skeleton.el (skeleton-positions): Rename from skeleton-marks. * skeleton.el (skeleton-marks): New variable. (skeleton-insert, skeleton-internal-1): Set skeleton-marks. @@ -20956,7 +20956,7 @@ (vip-convert-standard-file-name): New function. * ediff-util.el (ediff-file-under-version-control): New function. - (ediff-inferior-compare-regions): Improved interface. + (ediff-inferior-compare-regions): Improve interface. (ediff-maybe-checkout): New function. (ediff-maybe-save-and-delete-merge): New function. (ediff-setup): Now uses convert-standard-filename. @@ -20970,8 +20970,8 @@ subordinate Ediff sessions. * ediff-ptch.el (ediff-patch-file-internal): Now calls ediff-maybe-checkout. - (ediff-context-diff-label-regexp): Fixed regexp. - (ediff-map-patch-buffer): Fixed beg/end patch boundaries. + (ediff-context-diff-label-regexp): Fix regexp. + (ediff-map-patch-buffer): Fix beg/end patch boundaries. * ediff.el: Now supports autostore for merge jobs. 1996-12-27 Richard Stallman <rms@ethanol.gnu.ai.mit.edu> @@ -21018,15 +21018,15 @@ * vc-hooks.el (vc-user-login-name): New function. (vc-fetch-master-properties, vc-lock-from-permissions, vc-file-owner) - (vc-fetch-properties, vc-after-save, vc-mode-line, vc-status): Use - `vc-user-login-name' instead of `user-login-name'. + (vc-fetch-properties, vc-after-save, vc-mode-line, vc-status): + Use `vc-user-login-name' instead of `user-login-name'. * vc.el (vc-next-action-on-file, vc-update-change-log) (vc-backend-checkout, vc-backend-steal): Use `vc-user-login-name' instead of `user-login-name'. (vc-update-change-log): If `user-full-name' is nil, try `user-login-name'. Failing that, use uid as a string. - (vc-make-buffer-writable-hook): Removed (was unused). + (vc-make-buffer-writable-hook): Remove (was unused). 1996-12-20 Richard Stallman <rms@ethanol.gnu.ai.mit.edu> @@ -21294,7 +21294,7 @@ * thingatpt.el: Downcase arguments as Lisp symbols. Fix many doc strings. - (thing-at-point-file-name-chars): Renamed from file-name-chars. + (thing-at-point-file-name-chars): Rename from file-name-chars. Allow a colon. (thing-at-point-url-chars): New variable. (url): Define new kind of "thing". @@ -21309,7 +21309,7 @@ Two new arguments. (rmail-forward): Always call rmail-start-mail, never `mail'. - * sendmail.el (mail-reply-action): Renamed from mail-reply-buffer. + * sendmail.el (mail-reply-action): Rename from mail-reply-buffer. (mail-yank-original): Handle either an action or a buffer in mail-reply-action. (mail): Doc fix. @@ -21413,8 +21413,8 @@ (font-lock-face-attributes): Doc fix. (font-lock-match-c-style-declaration-item-and-skip-to-next): New function. Match just identifiers. Use it for C, Objective-C and Java. - (font-lock-match-c++-style-declaration-item-and-skip-to-next): Match - templates too. + (font-lock-match-c++-style-declaration-item-and-skip-to-next): + Match templates too. (c-font-lock-extra-types, c++-font-lock-extra-types) (objc-font-lock-extra-types, java-font-lock-extra-types): Use these variables in EVAL forms, i.e., do not eval when font-lock.el is loaded. @@ -21432,7 +21432,7 @@ (fast-lock-get-face-properties): Rewrite for face lists. Use it. * lazy-lock.el (lazy-lock-submit-bug-report): Function deleted. - (lazy-lock-defer-on-scrolling): Renamed from lazy-lock-defer-driven. + (lazy-lock-defer-on-scrolling): Rename from lazy-lock-defer-driven. (lazy-lock-defer-on-the-fly): New variable from lazy-lock-defer-time. (lazy-lock-install): Use it. (lazy-lock-defer-time): Doc fix. Add top-level code to detect use of @@ -21441,15 +21441,15 @@ (lazy-lock-stealth-load): New variable. (lazy-lock-fontify-after-idle): Use it. (lazy-lock-mode): Doc fix. - (lazy-lock-defer-line-after-change): Renamed from + (lazy-lock-defer-line-after-change): Rename from lazy-lock-defer-after-change. (lazy-lock-defer-rest-after-change) (lazy-lock-fontify-line-after-change) (lazy-lock-fontify-rest-after-change): New functions. (lazy-lock-install-hooks): Add one depending on deferral variables. (lazy-lock-unstall): Remove them. Fontify if Font Lock mode still on. - (lazy-lock-fontify-window, lazy-lock-fontify-conservatively): Use - with-current-buffer rather than save-excursion. + (lazy-lock-fontify-window, lazy-lock-fontify-conservatively): + Use with-current-buffer rather than save-excursion. (lazy-lock-percent-fontified): Cast size to float before multiplying. 1996-11-14 Karl Heuer <kwzh@gnu.ai.mit.edu> @@ -21553,7 +21553,7 @@ * comint.el (comint-output-filter): Run comint-output-filter-functions directly, not via comint-output-filter. - * compile.el (compile-auto-highlight): Renamed from + * compile.el (compile-auto-highlight): Rename from compile-highlight-display-limit. * time-stamp.el (time-stamp-dd/mm/yyyy): New function. @@ -21589,7 +21589,7 @@ 1996-11-02 Henry Guillaume <henry@qbd.com.au> * find-file.el (general): Enabled commentary for Finder. - (ff-search-directories): Changed /usr/include/* to /usr/include. + (ff-search-directories): Change /usr/include/* to /usr/include. (ff-get-file-name): Improve behavior when file is found in a buffer. 1996-11-02 Richard Stallman <rms@ethanol.gnu.ai.mit.edu> @@ -21679,7 +21679,7 @@ 1996-10-24 Dave Gillespie <daveg@synaptics.com> - * cl-macs.el (lexical-let): Fixed a bug involving nested + * cl-macs.el (lexical-let): Fix a bug involving nested lexical contexts and macros. 1996-10-23 Simon Marshall <simon@wombat.gnu.ai.mit.edu> @@ -21740,7 +21740,7 @@ 1996-10-20 Kevin Rodgers <kevinr@ihs.com> - * compile.el (compilation-skip-to-next-location): Defined. + * compile.el (compilation-skip-to-next-location): Define. (compilation-next-error-locus, compilation-parse-errors): Respect it. 1996-10-17 Andre Spiegel <spiegel@berlin.informatik.uni-stuttgart.de> @@ -21767,19 +21767,19 @@ 1996-10-14 Torbjorn Einarsson <T.Einarsson@clab.ericsson.se> - * f90.el (f90-no-block-limit): Fixed bug for indentation of + * f90.el (f90-no-block-limit): Fix bug for indentation of elsewhere and elseif. (f90-looking-at-where-or-forall): Now allows for labeled forall and where statements. (f90-font-lock-keywords-2): New highlighting for labeled where and forall. Fixed small bug with else highlighting. - (f90-fill-region): Moved indentation to f90-break-line. + (f90-fill-region): Move indentation to f90-break-line. (f90-break-line): Will now always indent the second line. (f90-indent-line): Simpler test for auto-fill. - (f90-auto-fill-mode): Removed. - (f90-electric-insert): Added for possibility of auto-filling of + (f90-auto-fill-mode): Remove. + (f90-electric-insert): Add for possibility of auto-filling of lines without spaces, as well as early updating of line. - (f90-mode-map): Added bindings of operators to f90-electric-insert. + (f90-mode-map): Add bindings of operators to f90-electric-insert. (f90-do-auto-fill): Now also updates line (changes case). 1996-10-12 Richard Stallman <rms@ethanol.gnu.ai.mit.edu> @@ -21865,21 +21865,21 @@ * browse-url.el (browse-url): New function. (browse-url-CCI-host): New variable. - (browse-url-at-mouse): Added event-buffer and event-point + (browse-url-at-mouse): Add event-buffer and event-point functions for XEmacs compatibility. (browse-url-file-url): Check for EFS after alist, URL-encode special chars. (browse-url-grail): New function. (browse-url-interactive-arg): Add new-window logic. - (browse-url-looking-at): Fixed. + (browse-url-looking-at): Fix. (browse-url-lynx-xterm): New function. (browse-url-lynx-emacs): Use term.el instead of terminal.el. (browse-url-netscape): Contact/start Netscape in the - background. Multi-display support. Renamed - browse-url-netscape-send. URL-encode comma. + background. Multi-display support. + Renamed browse-url-netscape-send. URL-encode comma. (browse-url-netscape-command): New variable. (browse-url-netscape-startup-arguments): New variable. - (browse-url-url-at-point): Improved matching to supply missing + (browse-url-url-at-point): Improve matching to supply missing "http://". Other fixes for byte-compilation. @@ -21903,7 +21903,7 @@ * rmail.el (rmail-mode-2): Don't run rmail-mode-hook here. (rmail-mode, rmail): Run it here. -1996-10-08 Barry A. Warsaw <cc-mode-help@python.org> +1996-10-08 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * cc-mode.el (c-mode-map): Install FSF mode menu into menubar using the name @@ -21912,7 +21912,7 @@ additional FSF menu. * cc-mode.el: - Removed the following variables from the built-in "cc-mode" style: + Remove the following variables from the built-in "cc-mode" style: c-echo-syntactic-information-p c-string-syntax-p c-tab-always-indent @@ -21921,7 +21921,7 @@ * cc-mode.el (c-indent-command): Doc fix. - * cc-mode.el (c-style-alist): Added "linux" style. + * cc-mode.el (c-style-alist): Add "linux" style. * cc-mode.el (c-lineup-comment): Preserve comment-column. @@ -21975,10 +21975,10 @@ functions inside a nested class since they will twice add the indentation of the inner class to the running total. - The solution is to not give one of the two symbols a relpos. The - decision was made to omit the relpos of the 'inline-open symbol. + The solution is to not give one of the two symbols a relpos. + The decision was made to omit the relpos of the 'inline-open symbol. - (c-mode-help-address): Added cc-mode-help@python.org. + (c-mode-help-address): Add cc-mode-help@python.org. (c-recognize-knr-p): No longer a user variable. (c++-mode, java-mode): Set c-recognize-knr-p to nil. @@ -22058,7 +22058,7 @@ (sgml-font-lock-keywords): Add an element for comments. * rmailsum.el (rmail-summary-line-count-flag): - Renamed from rmail-summary-line-count-p. + Rename from rmail-summary-line-count-p. * rmailsum.el (rmail-summary-line-count-p): New variable. (rmail-make-basic-summary-line): Optionally exclude the line count. @@ -22128,8 +22128,8 @@ (ps-print-prologue-1, ps-print-prologue-2): New variables. Major rewrite of the PostScript code to handle landscape mode, multiple columns and new font management. - (ps-landscape-mode, ps-number-of-columns, ps-inter-column): New - variables. + (ps-landscape-mode, ps-number-of-columns, ps-inter-column): + New variables. Add landscape mode and multiple columns with interspacing. (ps-font-info-database, ps-font-family, ps-font-size) (ps-header-font-family, ps-header-font-size, ps-header-title-font) @@ -22142,10 +22142,10 @@ (/ReportAllFontInfo): New PostScript function to get all the font families of the printer. (ps-setup): New function. - (ps-line-lengths, ps-nb-pages-buffer, ps-nb-pages-region): New - utility functions. - (ps-page-dimensions-get-width, ps-page-dimensions-get-height): New - macros. + (ps-line-lengths, ps-nb-pages-buffer, ps-nb-pages-region): + New utility functions. + (ps-page-dimensions-get-width, ps-page-dimensions-get-height): + New macros. (/HeaderOffset): Fix bug with /PrintStartY. (/SetHeaderLines): Fix bug. @@ -22236,7 +22236,7 @@ * tex-mode.el (tex-main-file): Add missing initial value. (tex-file): Set tex-print-file to source-file always. - (tex-last-file-texed): Renamed from tex-last-buffer-texed + (tex-last-file-texed): Rename from tex-last-buffer-texed and now holds a file name. (tex-region): Test and set tex-last-file-texed. @@ -22286,15 +22286,15 @@ * ffap.el (path-separator): Duplicate definition deleted. (ffap-what-domain): Don't define mail-extr-all-top-level-domains here. - * refbib.el (r2b-capitalize-title-stop-words): Renamed from capit... - (r2b-capitalize-title-stop-regexp): Renamed from capit... - (r2b-capitalize-title-region): Renamed from capitalize... - (r2b-capitalize-title): Renamed from capitalize... + * refbib.el (r2b-capitalize-title-stop-words): Rename from capit... + (r2b-capitalize-title-stop-regexp): Rename from capit... + (r2b-capitalize-title-region): Rename from capitalize... + (r2b-capitalize-title): Rename from capitalize... - * bib-mode.el (bib-capitalize-title-stop-words): Renamed from capit... - (bib-capitalize-title-stop-regexp): Renamed from capit... - (bib-capitalize-title-region): Renamed from capitalize... - (bib-capitalize-title): Renamed from capitalize... + * bib-mode.el (bib-capitalize-title-stop-words): Rename from capit... + (bib-capitalize-title-stop-regexp): Rename from capit... + (bib-capitalize-title-region): Rename from capitalize... + (bib-capitalize-title): Rename from capitalize... * edmacro.el (insert-kbd-macro): Duplicate definition deleted. @@ -22353,18 +22353,18 @@ New variables. (ediff-convert-standard-file-name): New function. Added on-line help, moved some functions to and from ediff-util.el. - (ediff-file-remote-p): Modified. + (ediff-file-remote-p): Modify. (ediff-set-face-pixmap): New function. (ediff-odd-diff-pixmap, ediff-even-diff-pixmap, ediff-fine-diff-pixmap): New variables. - * ediff-ptch.el (ediff-context-diff-label-regexp): Fixed regexp. - (ediff-map-patch-buffer): Fixed beg/end patch boundaries. + * ediff-ptch.el (ediff-context-diff-label-regexp): Fix regexp. + (ediff-map-patch-buffer): Fix beg/end patch boundaries. Now checks for the return code from the patch program. Fixed ediff-patch-options, ediff-backup-extension, ediff-backup-specs. * ediff-merg.el, ediff-diff.el, ediff-init.el: * ediff-hook.el: Changed ediff-meta to ediff-mult. * ediff-ptch.el (ediff-backup-specs): New variable. - * ediff.el (ediff-documentation): Modified. + * ediff.el (ediff-documentation): Modify. * ediff-help.el: New file. * ediff-mult.el (ediff-intersect-directories) (ediff-meta-insert-file-info): Functions modified. @@ -22411,7 +22411,7 @@ * vc.el (vc-print-log): Set the display window so that it shows the current log entry completely. - * vc-hooks.el (vc-find-cvs-master): Fixed handling of "locally + * vc-hooks.el (vc-find-cvs-master): Fix handling of "locally added" files. 1996-09-16 Erik Naggum <erik@naggum.no> @@ -22488,15 +22488,15 @@ * bindings.el: New file, split out from loaddefs.el. * loadup.el: Load bindings.el. - * gud.el (gud-find-c-expr): Renamed from find-c-expr. + * gud.el (gud-find-c-expr): Rename from find-c-expr. Don't get fooled by if and while statements. - (gud-expr-compound): Renamed from expr-compound. - (gud-expr-compound-sep): Renamed from expr-compound-sep. - (gud-next-expr): Renamed from expr-next. - (gud-prev-expr): Renamed from expr-prev. - (gud-forward-sexp): Renamed from expr-forward-sexp. - (gud-backward-sexp): Renamed from expr-backward-sexp. - (gud-innermost-expr): Renamed from expr-cur. + (gud-expr-compound): Rename from expr-compound. + (gud-expr-compound-sep): Rename from expr-compound-sep. + (gud-next-expr): Rename from expr-next. + (gud-prev-expr): Rename from expr-prev. + (gud-forward-sexp): Rename from expr-forward-sexp. + (gud-backward-sexp): Rename from expr-backward-sexp. + (gud-innermost-expr): Rename from expr-cur. 1996-09-10 Per Abrahamsen <abraham@dina.kvl.dk> @@ -22546,8 +22546,8 @@ 1996-09-05 Michael Kifer <kifer@cs.sunysb.edu> * viper-keym.el, viper.el (vip-scroll): - Changed to vip-scroll-screen, other modifications. - (vip-alternate-ESC): Changed to vip-alternate-Meta-key. + Change to vip-scroll-screen, other modifications. + (vip-alternate-ESC): Change to vip-alternate-Meta-key. * viper.el (vip-escape-to-vi, vip-prefix-arg-value) (vip-prefix-arg-value): Now work with prefix arguments and also will work with 2dw and d2d style commands. @@ -22556,7 +22556,7 @@ (vip-paren-match): Go to closing paren first. (vip-find-char-forward, vip-find-char-backward, vip-goto-char-forward) (vip-goto-char-backward): Functions modified. - (vip-set-hooks): Added viper to fortran-mode. + (vip-set-hooks): Add viper to fortran-mode. (viper-mode): Don't delete the startup message. * viper-keym.el: C-\ is now the meta key. C-z in insert mode now escapes to Vi. @@ -22565,9 +22565,9 @@ * viper-util.el, viper.el: Added pixmaps to replace-region and search faces. (vip-get-filenames-from-buffer): The argument is now optional. - (vip-ex-nontrivial-find-file-unix): Added the -d option to ls command. + (vip-ex-nontrivial-find-file-unix): Add the -d option to ls command. (vip-read-key): Inhibit quit added. - (vip-get-cursor-color): Fixed to work with XEmacs. + (vip-get-cursor-color): Fix to work with XEmacs. * viper-ex.el (ex-edit): Don't change to vi in dired mode. 1996-09-04 Richard Stallman <rms@ethanol.gnu.ai.mit.edu> @@ -22706,7 +22706,7 @@ (grep-regexp-alist, file-name-buffer-file-type-alist) (find-buffer-file-type, find-file-not-found-set-buffer-file-type) (find-file-binary, find-file-text, mode-line-format): - Moved to dos-nt.el. + Move to dos-nt.el. * winnt.el (save-to-unix-hook, revert-from-unix-hook) (using-unix-filesystems): Functions removed. diff --git a/lisp/ChangeLog.8 b/lisp/ChangeLog.8 index 8a6431f2bac..f10939e946f 100644 --- a/lisp/ChangeLog.8 +++ b/lisp/ChangeLog.8 @@ -3,13 +3,13 @@ * echistory.el (electric-command-history): Call Command-history-setup and command-history-mode using their new conventions. - * chistory.el (Command-history-setup): Don't switch buffers. Take - no args, and do not set major-mode, mode-name or the local map. + * chistory.el (Command-history-setup): Don't switch buffers. + Take no args, and do not set major-mode, mode-name or the local map. (command-history-mode): New function, does some of those things Command-history-setup used to do. (list-command-history): Call command-history-mode, not Command-history-setup. - (command-history): Renamed from command-history-mode. + (command-history): Rename from command-history-mode. 1999-12-31 Richard M. Stallman <rms@gnu.org> @@ -91,9 +91,9 @@ 1999-12-27 Jari Aalto <jari.aalto@poboxes.com> - * add-log.el (change-log-version-number-regexp-list): Added tag + * add-log.el (change-log-version-number-regexp-list): Add tag :version 20.6. - (change-log-version-info-enabled): Added tag :version 20.6. + (change-log-version-info-enabled): Add tag :version 20.6. 1999-12-27 Jari Aalto <jari.aalto@poboxes.com> @@ -103,13 +103,13 @@ (change-log-find-version): Rewritten. Use user-configurable version numbering regexp list change-log-version-number-regexp-list. - (change-log-find-version): Renamed to + (change-log-find-version): Rename to change-log-version-number-search. (add-log-file-name-function): New. - (change-log-search-vc-number): Added END parameter. Added doc + (change-log-search-vc-number): Add END parameter. Added doc string to function. - (change-log-version-rcs): Renamed. Was - change-log-search-vc-number. + (change-log-version-rcs): Rename. + Was change-log-search-vc-number. 1999-12-26 Thien-Thi Nguyen <ttn@delysid.gnu.org> @@ -144,7 +144,7 @@ (hs-hide-block, hs-show-block, hs-show-region, hs-hide-level) (hs-mouse-toggle-hiding, hs-minor-mode): Rewrite. - (hs-isearch-show): Renamed from `hs-isearch-open-invisible'. + (hs-isearch-show): Rename from `hs-isearch-open-invisible'. (hs-isearch-show-temporary): New funcs. (hs-show-block-at-point, java-hs-forward-sexp): Delete funcs. @@ -214,9 +214,9 @@ * progmodes/antlr-mode.el: Minor syntax highlighting changes. (antlr-font-lock-default-face): Deletia. - (antlr-font-lock-tokendef-face): Changed color. - (antlr-font-lock-tokenref-face): Changed color. - (antlr-font-lock-literal-face): Changed color. + (antlr-font-lock-tokendef-face): Change color. + (antlr-font-lock-tokenref-face): Change color. + (antlr-font-lock-literal-face): Change color. (antlr-font-lock-additional-keywords): Minor changes. 1999-12-20 Carsten Dominik <cd@gnu.org> @@ -351,7 +351,7 @@ (reftex-index-phrases-sort-prefers-entry) (reftex-index-phrases-sort-in-blocks): New options. (reftex-index-macros): Option structure changed. - (reftex-index-macros-builtin): Added `repeat' item to each entry. + (reftex-index-macros-builtin): Add `repeat' item to each entry. (reftex-label-alist): Additional item in each entry to specify if the environment should be listed in the TOC. (eval-when-compile (require 'cl)) added. @@ -415,8 +415,8 @@ Additional argument FORMAT-KEY to preselect a citation format; (eval-when-compile (require 'cl)) added. - * textmodes/reftex-parse.el (reftex-context-substring): Optional - parameter to-end. + * textmodes/reftex-parse.el (reftex-context-substring): + Optional parameter to-end. (reftex-section-info): Deal with environment matches; (eval-when-compile (require 'cl)) added. @@ -440,12 +440,12 @@ (ps-mule-plot-composition): New function. (ps-mule-prepare-font-for-components): New function. (ps-mule-plot-components): New function. - (ps-mule-composition-prologue-generated): Renamed from + (ps-mule-composition-prologue-generated): Rename from ps-mule-cmpchar-prologue-generated. (ps-mule-composition-prologue): New named from ps-mule-cmpchar-prologue. Modified for new composition. (ps-mule-plot-rule-cmpchar, ps-mule-plot-cmpchar) - (ps-mule-prepare-cmpchar-font): Deleted. + (ps-mule-prepare-cmpchar-font): Delete. (ps-mule-string-encoding): New arg NO-SETFONT. (ps-mule-bitmap-prologue): In PostScript code of BuildGlyphCommon, check Composing, not Cmpchar. @@ -463,8 +463,8 @@ * international/fontset.el (vertical-centering-font-regexp): New variable. - * international/mule.el (mule-version): Updated to 5.0 (AOI). - (mule-version-date): Updated to 1999.12.7. + * international/mule.el (mule-version): Update to 5.0 (AOI). + (mule-version-date): Update to 1999.12.7. (with-category-table): New macro. * international/mule-cmds.el (encode-coding-char): Don't check @@ -477,9 +477,9 @@ * international/mule-util.el (set-nested-alist): Set BRANCHES (if non-nil) at the tail of ALIST. (compose-region, decompose-region, decompose-string) - (reference-point-alist, compose-chars): Moved to composite.el. + (reference-point-alist, compose-chars): Move to composite.el. (compose-chars-component, compose-chars-rule, decompose-composite-char): - Deleted. + Delete. * international/quail.el (quail-install-map): New optional arg NAME. (quail-get-translation): If DEF is a symbol but not a function, @@ -513,16 +513,16 @@ * language/thai-util.el (thai-category-table): Make it by make-category-table. (thai-composition-pattern): New variable. - (thai-compose-region, thai-compose-string): Use - with-category-table. + (thai-compose-region, thai-compose-string): + Use with-category-table. (thai-post-read-conversion): Just call thai-compose-region. - (thai-pre-write-conversion): Deleted. + (thai-pre-write-conversion): Delete. (thai-composition-function): New function. * language/tibet-util.el: Most functions rewritten. - (tibetan-char-p): Renamed from tibetan-char-examin. + (tibetan-char-p): Rename from tibetan-char-examin. (tibetan-composable-examin, tibetan-complete-char-examin) - (tibetan-vertical-stacking, tibetan-composition): Deleted. + (tibetan-vertical-stacking, tibetan-composition): Delete. (tibetan-add-components): New function. (tibetan-composition-function): New function. @@ -543,8 +543,8 @@ 1999-12-14 Gerd Moellmann <gerd@gnu.org> - * international/mule-cmds.el (default-input-method): Specify - that it should be set after current-language-environment. + * international/mule-cmds.el (default-input-method): + Specify that it should be set after current-language-environment. * custom.el (custom-handle-keyword): Add :set-after. (custom-add-dependencies): New function. @@ -556,11 +556,11 @@ * progmodes/cc-make.el: Removed. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * Release of cc-mode 5.26 -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-cmds.el (c-forward-conditional): Handle an arbitrary target depth. Optionally count #else lines as clause limits, @@ -571,35 +571,35 @@ (c-down-conditional-with-else): New commands that uses the added functionality in `c-forward-conditional'. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-align.el (c-lineup-comment): Preserve the alignment with a comment on the previous line instead of preserving the comment-column. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> Fixes to IDL mode after input from Eric Eide <eeide@cs.utah.edu>: - * cc-engine.el (c-beginning-of-statement-1): Allow - `c-conditional-key' to be nil, for the benefit of IDL mode. + * cc-engine.el (c-beginning-of-statement-1): + Allow `c-conditional-key' to be nil, for the benefit of IDL mode. * cc-engine.el (c-guess-basic-syntax): Ditto. - cc-langs.el (C-IDL-class-key): Fixed. Don't match `class' + cc-langs.el (C-IDL-class-key): Fix. Don't match `class' but do match CORBA 2.3 `valuetype'. * cc-langs.el (c-IDL-access-key): New defconst. Should be nil for IDL. - * cc-langs.el (c-IDL-conditional-key): New defconst. Should - be nil for IDL. + * cc-langs.el (c-IDL-conditional-key): New defconst. + Should be nil for IDL. * cc-langs.el (c-IDL-comment-start-regexp): New defconst. Like C++. * cc-mode.el (idl-mode): Use new `c-IDL-*' defconsts. Also, set `c-method-key' and `c-baseclass-key' to nil. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-menus.el (cc-imenu-c++-generic-expression): Match classes with nonhanging open braces. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-align.el: Added docstrings to all lineup functions. @@ -610,12 +610,12 @@ comments. Use c-comment-prefix-regexp and comment-start-skip instead of hardcoded regexps. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> - * cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Fixed eob + * cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Fix eob behavior and return value as documented. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> Changes for new style variable init system: * cc-langs.el (c-common-init): Dito. @@ -639,12 +639,12 @@ the throws clause that might follow the function prototype in C++. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> - * cc-defs.el (c-beginning-of-macro): Fixed bug where point + * cc-defs.el (c-beginning-of-macro): Fix bug where point could move forward for macros that doesn't start in column 0. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-align.el (c-indent-multi-line-block) (c-lineup-whitesmith-in-block): Two new lineup functions for @@ -654,7 +654,7 @@ style. It should now handle all different braces uniformly in both hanging and non-hanging cases. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-cmds.el (c-indent-exp): Use a marker to save point to make it stay in the same position relative to the surrounding @@ -676,7 +676,7 @@ <seanl@cs.umd.edu>. Also extended the bsd and whitesmith styles with consistent brace placement for all constructs. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-cmds.el (c-context-line-break): Continue C++ comments too when point is in the middle of them. @@ -702,8 +702,8 @@ `normal-auto-fill-function' to implement the `c-ignore-auto-fill' variable. - * cc-cmds.el (c-beginning-of-statement): Use - `c-comment-prefix-regexp' to avoid ending up inside the + * cc-cmds.el (c-beginning-of-statement): + Use `c-comment-prefix-regexp' to avoid ending up inside the comment prefix. Better handling of comment starters and enders. Catch comments better when traversing code. Stop at preprocessor directives. @@ -711,7 +711,7 @@ * cc-defs.el (c-forward-comment): New subst to hide platform dependent quirks in `forward-comment'. - * cc-engine.el (c-literal-limits): Added NOT-IN-DELIMITER + * cc-engine.el (c-literal-limits): Add NOT-IN-DELIMITER argument. (c-literal-limits-fast): Implemented NEAR and NOT-IN-DELIMITER arguments. Activate this function by default when @@ -722,16 +722,16 @@ arguments. * cc-align.el (c-lineup-C-comments): Fixes to handle the - changed anchor position in the `c' syntactic symbol. Handle - more than stars in the comment prefix; use the new variable + changed anchor position in the `c' syntactic symbol. + Handle more than stars in the comment prefix; use the new variable `c-comment-prefix-regexp'. Don't indent text not preceded by a comment prefix to the right of the comment opener if it's long. * cc-langs.el: Fixes to mode initialization for new line breaking and paragraph filling method. Adaptive fill mode is - now activated at startup instead of deactivated. The - variables used for adaptive filling and paragraph movement are + now activated at startup instead of deactivated. + The variables used for adaptive filling and paragraph movement are also changed to incorporate the value of `c-comment-prefix-regexp'. `substitute-key-definition' is used to override some functions in the global map instead of @@ -741,31 +741,31 @@ javadoc markup at mode init. * cc-mode.el (c-setup-filladapt): A new convenience function - to configure Kyle E. Jones' Filladapt mode for CC Mode. This - function is intended to be used explicitly by the end user + to configure Kyle E. Jones' Filladapt mode for CC Mode. + This function is intended to be used explicitly by the end user only. * cc-vars.el (c-comment-prefix-regexp): New variable used to recognize the comment fill prefix inside comments. (c-block-comment-prefix): New name for - `c-comment-continuation-stars', which is now obsolete. It's - generalized to handle any character sequence. + `c-comment-continuation-stars', which is now obsolete. + It's generalized to handle any character sequence. (c-ignore-auto-fill): New variable used to selectively disable Auto Fill mode in specific contexts. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-cmds.el (c-comment-indent): Leave at least one space between the comment and the last nonblank character in the case where we look at the indentation of the comment on the previous line (case 4). - * cc-engine.el (c-beginning-of-statement-1): Added ``' to the + * cc-engine.el (c-beginning-of-statement-1): Add ``' to the list of characters that may start a statement (it's a sort of prefix operator in Pike, and isn't used at all in any of the other languages). -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-engine.el (c-guess-basic-syntax): Report brace list opens inside continued statements as statement-cont instead of @@ -775,12 +775,12 @@ context. Case 10B.2 changed. Also changed (the somewhat esoteric) case 9A to cope with this. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> - * cc-cmds.el (c-electric-brace): Added electric handling of + * cc-cmds.el (c-electric-brace): Add electric handling of the open brace for brace-elseif-brace. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-defs.el (c-with-syntax-table): New macro to easily switch syntax tables temporarily. @@ -789,26 +789,26 @@ member init argument lists split over several lines. Case 5D changed. - * cc-langs.el (c-Java-javadoc-paragraph-start): Added new tag + * cc-langs.el (c-Java-javadoc-paragraph-start): Add new tag @throws introduced in Javadoc 1.2. - * cc-menus.el (cc-imenu-java-generic-expression): Applied - patch from RMS to avoid infinite backtracking. + * cc-menus.el (cc-imenu-java-generic-expression): + Applied patch from RMS to avoid infinite backtracking. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-align.el (c-lineup-arglist): Handle "arglists" surrounded by [ ]. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-align.el (c-lineup-dont-change): Compensate properly for the column in langelem. - * cc-engine.el (c-syntactic-information-on-region): New - function to help debugging the syntactic analysis. + * cc-engine.el (c-syntactic-information-on-region): + New function to help debugging the syntactic analysis. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-align.el (c-lineup-template-args): Handle nested template arglists. @@ -824,18 +824,18 @@ * cc-styles.el (c-offsets-alist): Use `c-lineup-template-args' by default. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-engine.el (c-guess-basic-syntax): Pike allows a comma immediately before the closing paren in an arglist, so don't check that in Pike mode. Case 7A changed. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> - * cc-cmds.el (c-indent-region): Fixed bug where comment-only + * cc-cmds.el (c-indent-region): Fix bug where comment-only lines were ignored under certain conditions. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-align.el (c-lineup-template-args): New function for aligning continued template argument lists. @@ -844,68 +844,68 @@ lists containing function arglists split over several lines. Case 5D.1 changed. - * cc-engine.el (c-guess-basic-syntax): Fixed bug where + * cc-engine.el (c-guess-basic-syntax): Fix bug where template-args-cont didn't get recognized when the first - arglist opener line doesn't contain a template argument. New - case 5K. + arglist opener line doesn't contain a template argument. + New case 5K. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> - * cc-defs.el (c-point): Changed from subst to macro for + * cc-defs.el (c-point): Change from subst to macro for efficiency. - (c-beginning-of-defun-1, c-end-of-defun-1): New - beginning-of-defun/end-of-defun wrappers separated from + (c-beginning-of-defun-1, c-end-of-defun-1): + New beginning-of-defun/end-of-defun wrappers separated from c-point. * cc-menus.el (imenu-generic-expression) - (imenu-case-fold-search, imenu-progress-message): Dummy - definitions to avoid compiler warnings if imenu can't be + (imenu-case-fold-search, imenu-progress-message): + Dummy definitions to avoid compiler warnings if imenu can't be loaded. * cc-menus.el (cc-imenu-init): New function called at mode init. - * cc-mode.el (c-mode, c++-mode, objc-mode, java-mode): Moved - imenu initializations to cc-imenu-init. + * cc-mode.el (c-mode, c++-mode, objc-mode, java-mode): + Move imenu initializations to cc-imenu-init. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-engine.el (c-guess-basic-syntax): Slightly better check for lambda-intro-cont in Pike mode. Case 6 changed. - * cc-engine.el (c-looking-at-inexpr-block): Fixed bug where + * cc-engine.el (c-looking-at-inexpr-block): Fix bug where anything following "new Foo()" was considered an anonymous class body in Java mode. -1999-12-12 Barry A. Warsaw <bug-cc-mode@gnu.org> +1999-12-12 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * cc-cmds.el (c-comment-line-break-function): When breaking in a string, don't insert a new line. -1999-12-12 Barry A. Warsaw <bug-cc-mode@gnu.org> +1999-12-12 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * cc-engine.el (c-at-toplevel-p): New interface function which returns information useful to add-on authors. It tells you whether you're at a toplevel statement or not. -1999-12-12 Barry A. Warsaw <bug-cc-mode@gnu.org> +1999-12-12 Barry A. Warsaw <bwarsaw@cnri.reston.va.us> * cc-cmds.el (c-comment-line-break-function): It is possible that forward-line does not land us at the bol, say if we're on the last line in a file. In that case, do a back-to-indentation instead of a forward-comment -1. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-engine.el (c-beginning-of-statement-1): Don't catch "default:" as normal label in case 4. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-engine.el (c-guess-basic-syntax): Use c-bitfield-key to recognize continued bitfield declarations. Case 5D.1 changed. * cc-langs.el: New variable c-bitfield-key. * cc-mode.el: New variable c-bitfield-key. -1999-12-12 Martin Stjernholm <bug-cc-mode@gnu.org> +1999-12-12 Martin Stjernholm <mast@lysator.liu.se> * cc-engine.el (c-inside-bracelist-p): Tighter test for Java anonymous array expressions (i.e. "new Foo[] {.. bracelist @@ -917,8 +917,8 @@ keymap and minor-mode-alist stuff. Don't set zmacs-region-stays. (footnote-insert-text-marker, Footnote-insert-pointer-marker): Avoid `acons'. - (footnote-mode-line-string, Footnote-add-footnote): Remove - autoload cookie. + (footnote-mode-line-string, Footnote-add-footnote): + Remove autoload cookie. 1999-12-12 Richard Sharman <rsharman@pobox.com> @@ -967,8 +967,8 @@ * files.el (after-find-file): Use auto-save-visited-file-name if set. - * mail/feedmail.el (feedmail-find-eoh): Take - feedmail-queue-alternative-mail-header-separator into account. + * mail/feedmail.el (feedmail-find-eoh): + Take feedmail-queue-alternative-mail-header-separator into account. 1999-12-09 Stefan Monnier <monnier@cs.yale.edu> @@ -976,7 +976,7 @@ * font-lock.el (font-lock-multiline): New variable. (font-lock-add-keywords): Rename `major-mode' into `mode'. - (font-lock-remove-keywords): Added a dummy `mode' argument for + (font-lock-remove-keywords): Add a dummy `mode' argument for potential future support. (font-lock-fontify-anchored-keywords) (font-lock-fontify-keywords-region): Only handle multiline strings @@ -1059,8 +1059,8 @@ (x-defined-colors, face-color-supported-p, face-color-gray-p): Remove. - * facemenu.el (facemenu-read-color, list-colors-display): Use - defined-colors for all frame types. + * facemenu.el (facemenu-read-color, list-colors-display): + Use defined-colors for all frame types. (facemenu-color-equal): Use color-values for all frame types. * faces.el (read-face-attribute): For :foreground and :background @@ -1078,7 +1078,7 @@ types other than x and w32, but only if the terminal supports colors. Call tty-color-define instead of face-register-tty-color. - * term/x-win.el (xw-defined-colors): Renamed from + * term/x-win.el (xw-defined-colors): Rename from x-defined-colors. * term/w32-win.el (xw-defined-colors): Likewise. @@ -1091,7 +1091,7 @@ 1999-12-06 Inge Frick <inge@nada.kth.se> - * dired-aux.el (dired-do-shell-command): Changed documentation. + * dired-aux.el (dired-do-shell-command): Change documentation. (dired-shell-stuff-it): A `?' in COMMAND has now the same meaning as `*'. @@ -1103,11 +1103,11 @@ 1999-12-06 Sam Steingold <sds@goems.com> - * progmodes/etags.el (etags-tags-completion-table): Modified the + * progmodes/etags.el (etags-tags-completion-table): Modify the regexp to allow for the CL symbols starting with `+*'. (tags-completion-table): Doc fix (it's an obarray, not an alist). - (tags-completion-table, tags-recognize-empty-tags-table): Remove - `function' quoting lambda. + (tags-completion-table, tags-recognize-empty-tags-table): + Remove `function' quoting lambda. (tags-with-face): New macro. (list-tags, tags-apropos): Use it. (tags-apropos-additional-actions): New user option. @@ -1116,31 +1116,31 @@ (tags-apropos-verbose): New user option. (etags-tags-apropos): Use it. (visit-tags-table-buffer, next-file): Use `unless'. - (recognize-empty-tags-table): Renamed to + (recognize-empty-tags-table): Rename to tags-recognize-empty-tags-table. (complete-tag): Call tags-complete-tag bypassing try-completion. 1999-12-06 Kenichi Handa <handa@etl.go.jp> - * international/mule.el (set-buffer-file-coding-system): Docstring - modified. + * international/mule.el (set-buffer-file-coding-system): + Docstring modified. 1999-12-05 Dirk Herrmann <D.Herrmann@tu-bs.de> - * textmodes/bibtex.el (bibtex-hs-forward-sexp): Added to support + * textmodes/bibtex.el (bibtex-hs-forward-sexp): Add to support using the hideshow package. - (hs-special-modes-alist): Added entry for bibtex to allow the use + (hs-special-modes-alist): Add entry for bibtex to allow the use of the hideshow package. - (bibtex-hide-entry-bodies): Deleted as hiding of entry bodies is + (bibtex-hide-entry-bodies): Delete as hiding of entry bodies is not longer provided by bibtex.el directly. Instead the hideshow package should be used. - (bibtex-mode-map, bibtex-edit-menu, bibtex-mode): Delete - references to bibtex-hide-entry-bodies. + (bibtex-mode-map, bibtex-edit-menu, bibtex-mode): + Delete references to bibtex-hide-entry-bodies. 1999-12-05 Dirk Herrmann <D.Herrmann@tu-bs.de> - * textmodes/bibtex.el: Copyright notice is up to date. Moved - maintainer information closer to the beginning of the bibtex.el + * textmodes/bibtex.el: Copyright notice is up to date. + Moved maintainer information closer to the beginning of the bibtex.el file. (bibtex-maintainer-salutation): New constant. (bibtex-version): New constant. @@ -1148,16 +1148,16 @@ bibtex-maintainer-salutation. (bibtex-entry-field-alist): Made booktitle field optional for @inproceedings entries when crossreferenced. - (bibtex-entry-field-alist): Added booktitle field to proceedings + (bibtex-entry-field-alist): Add booktitle field to proceedings entry type (for cross referencing). Thanks to Wagner Toledo Correa for the suggestion. - (bibtex-string-file-path): Fixed typo. + (bibtex-string-file-path): Fix typo. 1999-12-05 Carsten Dominik <dominik@strw.leidenuniv.nl> * textmodes/bibtex.el (bibtex-mode-map): Reserved the key `C-c &' for reftex.el. - (bibtex-edit-menu): Added `reftex-view-crossref-from-bibtex' to menu. + (bibtex-edit-menu): Add `reftex-view-crossref-from-bibtex' to menu. 1999-12-04 Dave Love <fx@gnu.org> @@ -1166,14 +1166,14 @@ 1999-12-04 Michael Kifer <kifer@cs.sunysb.edu> - * viper-cmd.el (viper-change-state): Use - viper-ESC-moves-cursor-back to decide whether to move the cursor + * viper-cmd.el (viper-change-state): + Use viper-ESC-moves-cursor-back to decide whether to move the cursor back. 1999-12-03 Kenichi Handa <handa@mule.m17n.org> - * international/mule-util.el (truncate-string-to-width): Docstring - fixed. + * international/mule-util.el (truncate-string-to-width): + Docstring fixed. 1999-12-02 Stefan Monnier <monnier@cs.yale.edu> @@ -1200,8 +1200,8 @@ * vc.el (vc-update-change-log): Look for rcs2log under exec-directory. - * emacs-lisp/lisp-mode.el (lisp-mode-variables): Change - outline-regexp, add outline-level. + * emacs-lisp/lisp-mode.el (lisp-mode-variables): + Change outline-regexp, add outline-level. (lisp-outline-level): New. * calendar/appt.el (appt-convert-time): Handle "12:MMam", @@ -1284,8 +1284,8 @@ * cus-start.el: Add use-dialog-box. * add-log.el (change-log-mode-hook): Customize. - (add-log-current-defun): Use - fortran-{beginning,end}-of-subprogram. + (add-log-current-defun): + Use fortran-{beginning,end}-of-subprogram. 1999-11-26 Richard M. Stallman <rms@gnu.org> @@ -1330,10 +1330,10 @@ * ediff-merge.el (ediff-looks-like-combined-merge) (ediff-get-combined-region): - Changed to support the new format for ediff-combination-pattern. + Change to support the new format for ediff-combination-pattern. * ediff-diff.el (ediff-set-fine-overlays-in-one-buffer): - Changed to support the new format for ediff-combination-pattern. + Change to support the new format for ediff-combination-pattern. 1999-11-24 Dave Love <fx@gnu.org> @@ -1368,8 +1368,8 @@ imenu-generic-expression. * sql.el (sql-mode): Use ?_ and ?. instead of 95 and 46 when - setting font-lock-defaults' SYNTAX-ALIST. Set - imenu-generic-expression, imenu-case-fold-search, and + setting font-lock-defaults' SYNTAX-ALIST. + Set imenu-generic-expression, imenu-case-fold-search, and imenu-syntax-alist. * sql.el (sql-interactive-mode): Use ?_ and ?. instead of 95 @@ -1389,30 +1389,30 @@ 1999-11-23 Dave Love <fx@gnu.org> - * progmodes/fortran.el (fortran-comment-line-start): Renamed from + * progmodes/fortran.el (fortran-comment-line-start): Rename from comment-line-start. - (fortran-comment-line-start-skip): Renamed from + (fortran-comment-line-start-skip): Rename from comment-line-start-skip. (fortran-mode-map): Use renamed functions. Add manual and custom entries to menu. (fortran-mode-hook): Customize. - (fortran-comment-indent-function): Renamed from + (fortran-comment-indent-function): Rename from fortran-comment-hook. (delete-horizontal-regexp): Function deleted. - (fortran-electric-line-number): Simplified. - (fortran-beginning-of-subprogram): Renamed from + (fortran-electric-line-number): Simplify. + (fortran-beginning-of-subprogram): Rename from beginning-of-fortran-subprogram. - (fortran-end-of-subprogram): Renamed from + (fortran-end-of-subprogram): Rename from end-of-fortran-subprogram. - (fortran-mark-subprogram): Renamed from mark-fortran-subprogram. - (fortran-previous-statement, fortran-next-statement): Simplified. + (fortran-mark-subprogram): Rename from mark-fortran-subprogram. + (fortran-previous-statement, fortran-next-statement): Simplify. (fortran-blink-match): New function. (fortran-blink-matching-if, fortran-blink-matching-do): Use it. (fortran-indent-to-column): Don't use delete-horizontal-regexp. - (fortran-find-comment-start-skip, fortran-is-in-string-p): Use - line-end-position. + (fortran-find-comment-start-skip, fortran-is-in-string-p): + Use line-end-position. (fortran-fill): No longer interactive. Simplified. - (fortran-break-line): Simplified. + (fortran-break-line): Simplify. (fortran-analyze-file-format): Use char-after, not looking-at. * emacs-lisp/find-func.el (find-function-regexp): @@ -1432,7 +1432,7 @@ * emacs-lisp/easy-mmode.el: Changed maintainer. (easy-mmode-define-toggle): New BODY arg; Never append `-mode'; Use defcustom for the hooks; Improve the auto-generated docstrings. - (easy-mmode-define-minor-mode): Renamed `define-minor-mode'. + (easy-mmode-define-minor-mode): Rename `define-minor-mode'. (define-minor-mode): Add BODY arg; Only declare the keymap if provided; Improve the auto-generated docstrings. @@ -1498,8 +1498,8 @@ * speedbar.el: Clean up comment at the start of the file. Remove RCS id. - * progmodes/compile.el (compilation-parse-errors): Use - compilation-buffer-p instead of testing major-mode. + * progmodes/compile.el (compilation-parse-errors): + Use compilation-buffer-p instead of testing major-mode. 1999-11-18 Dave Pearson <davep@hagbard.demon.co.uk> @@ -1546,9 +1546,9 @@ * goto-addr.el (goto-address-at-mouse) (goto-address-find-address-at-point): Use compose-mail. - (goto-address-mail-method): Removed variable. + (goto-address-mail-method): Remove variable. (goto-address-send-using-mh-e, goto-address-send-using-mhe) - (goto-address-send-using-mail): Removed functions. + (goto-address-send-using-mail): Remove functions. 1998-11-15 Sam Steingold <sds@goems.com> @@ -1583,7 +1583,7 @@ 1999-11-14 Alex Schroeder <alex@gnu.org> - * ansi-color.el (ansi-color-apply): Updated regexps to include + * ansi-color.el (ansi-color-apply): Update regexps to include highlighted face. 1999-01-14 Johan Vromans <jvromans@squirrel.nl> @@ -1599,11 +1599,11 @@ 1999-11-13 Peter Breton <pbreton@ne.mediaone.net> - * net-utils.el (run-network-program, net-utils-run-program): Use - the new backquote syntax. + * net-utils.el (run-network-program, net-utils-run-program): + Use the new backquote syntax. (smbclient-program, smbclient-program-options) - (smbclient-prompt-regexp, smbclient-font-lock-keywords): New - variables. + (smbclient-prompt-regexp, smbclient-font-lock-keywords): + New variables. (smbclient, smbclient-list-shares): New functions 1999-11-12 Sam Steingold <sds@ksp.com> @@ -1638,7 +1638,7 @@ 1999-11-12 Peter Kleiweg <kleiweg@let.rug.nl> - * progmodes/ps-mode.el (ps-mode-submit-bug-report): Added list + * progmodes/ps-mode.el (ps-mode-submit-bug-report): Add list of customizable variables to bug report message. Added system-type to package name in bug report. @@ -1655,8 +1655,8 @@ 1999-11-10 Peter Kleiweg <kleiweg@let.rug.nl> - * progmodes/ps-mode.el (ps-mode-maintainer-address): New - constant. + * progmodes/ps-mode.el (ps-mode-maintainer-address): + New constant. (ps-mode-submit-bug-report): New function. Entry added to menu. 1999-11-10 William M. Perry <wmperry@aventail.com> @@ -1685,7 +1685,7 @@ 1999-11-08 Peter Kleiweg <kleiweg@let.rug.nl> - * progmodes/ps-mode.el (ps-mode-print-function): Changed default + * progmodes/ps-mode.el (ps-mode-print-function): Change default lpr-command to "lp" for some system-types. (copied from lpr.el Emacs version 20.2.1). @@ -1727,8 +1727,8 @@ * isearch.el (isearch-complete-edit, isearch-ring-advance-edit): Use erase-field instead of erase-buffer. - * frame.el (blink-cursor-mode, blink-cursor-end): Use - internal-show-cursor with new interface. + * frame.el (blink-cursor-mode, blink-cursor-end): + Use internal-show-cursor with new interface. (blink-cursor-timer-function): New. (blink-cursor-start): Use blink-cursor-timer-function. @@ -1760,8 +1760,8 @@ 1999-11-01 Markus Rost <rost@ias.edu> - * dired-x.el (dired-smart-shell-command): Use - shell-command-history as in shell-command. + * dired-x.el (dired-smart-shell-command): + Use shell-command-history as in shell-command. 1999-11-01 Richard M. Stallman <rms@gnu.org> @@ -1775,7 +1775,7 @@ of show-cursor. (blink-cursor-start, blink-cursor-end): Ditto. - * textmodes/tex-mode.el (tex-default-mode): Changed to latex-mode. + * textmodes/tex-mode.el (tex-default-mode): Change to latex-mode. 1999-11-01 Richard M. Stallman <rms@gnu.org> @@ -1792,7 +1792,7 @@ * ediff.el: Version change. - * ediff-util.el (ediff-cleanup-mess): Fixed the case of dead windows. + * ediff-util.el (ediff-cleanup-mess): Fix the case of dead windows. make sure you are in a good frame before deleting other windows. (ediff-file-checked-in-p): Don't consider CVS @@ -1816,10 +1816,10 @@ * viper-keym.el: Fixed calls to viper-ex, change key C-c g to C-c C-g. - * viper-util.el (viper-nontrivial-find-file-function): Deleted. + * viper-util.el (viper-nontrivial-find-file-function): Delete. (viper-glob-unix-files, viper-glob-mswindows-files): New functions. (viper-save-cursor-color, viper-restore-cursor-color): - Improved cursor color handling. + Improve cursor color handling. (viper-get-saved-cursor-color-in-replace-mode) (viper-get-saved-cursor-color-in-insert-mode): New functions for better cursor color handling. @@ -1874,7 +1874,7 @@ `whitespace-check-<whitespace-type>' to nil. (whitespace-unchecked-whitespaces): New function to return the list of whitespaces for whom checks have been suppressed. - (whitespace-display-unchecked-whitespaces): Renamed to + (whitespace-display-unchecked-whitespaces): Rename to `whitespace-update-modeline' to reflect its functionality. 1999-10-30 Gerd Moellmann <gerd@gnu.org> @@ -1895,8 +1895,8 @@ * progmodes/ada-stmt.el, progmodes/ada-xref.el: Doc-string and comment fixes. - * progmodes/compile.el (compilation-error-regexp-alist): Recognize - MIPS Pro 7.3 compiler error message syntax. + * progmodes/compile.el (compilation-error-regexp-alist): + Recognize MIPS Pro 7.3 compiler error message syntax. 1999-10-27 Dave Love <fx@gnu.org> @@ -1909,7 +1909,7 @@ 1999-10-27 Dave Love <fx@gnu.org> * emacs-lisp/advice.el: Doc fixes. - (ad-lemacs-p): Removed. + (ad-lemacs-p): Remove. (advice): Add :link to defgroup. 1999-10-27 Kenichi Handa <handa@etl.go.jp> @@ -1924,11 +1924,11 @@ 1999-10-27 Richard M. Stallman <rms@gnu.org> - * emacs-lisp/advice.el (ad-activate-internal): Renamed from + * emacs-lisp/advice.el (ad-activate-internal): Rename from ad-activate. All callers changed, including those in data.c. - (ad-activate-internal-off): Renamed from ad-activate-off. + (ad-activate-internal-off): Rename from ad-activate-off. All uses changed. - (ad-activate): Renamed from ad-activate-on. All uses changed. + (ad-activate): Rename from ad-activate-on. All uses changed. (ad-start-advice, ad-stop-advice, ad-recover-normality): Alter the definition of ad-activate-internal, not ad-activate. @@ -1951,7 +1951,7 @@ 1999-10-25 Sam Steingold <sds@ksp.com> - * Makefile (compile-files): Fixed the "tr" strings. + * Makefile (compile-files): Fix the "tr" strings. (EMACS): Set to ../src/emacs. 1999-10-25 Gerd Moellmann <gerd@gnu.org> @@ -2037,10 +2037,10 @@ * ps-print-def.el: New file: common definitions for all parts of ps-print. - (ps-multibyte-buffer): Moved from ps-mule. + (ps-multibyte-buffer): Move from ps-mule. * ps-mule.el: File dependence fix. - (ps-multibyte-buffer): Moved to ps-print-def. + (ps-multibyte-buffer): Move to ps-print-def. * ps-print.el: Doc fix, better customization. (ps-print-region-function, ps-number-of-columns, ps-spool-tumble) @@ -2070,7 +2070,7 @@ * ps-print.el: Doc fix, n-up printing. (ps-print-version): New version number (5.0). - (ps-page-dimensions-database): Added document media. + (ps-page-dimensions-database): Add document media. (ps-n-up-printing, ps-n-up-margin, ps-n-up-border-p, ps-n-up-filling) (ps-page-order, ps-printing-region-p): New vars. (ps-n-up-printing, ps-n-up-filling, ps-header-sheet, ps-end-job): @@ -2085,8 +2085,8 @@ (ps-setup, ps-begin-file, ps-get-buffer-name, ps-begin-job) (ps-end-file, ps-dummy-page, ps-generate): Fix funs. (ps-print-prologue-1): Adjust PostScript programming for n-up printing. - (ps-count-lines): Changed to defun. - (ps-header-page): Changed to defsubst, fix fun. + (ps-count-lines): Change to defun. + (ps-header-page): Change to defsubst, fix fun. (ps-printing-region): Doc fix, adjust programming code. (ps-output-boolean, ps-background-pages, ps-background-text) (ps-background-image, ps-background, ps-get-boundingbox): @@ -2097,9 +2097,9 @@ * ps-print.el: Doc fix, duplex and setpagedevice configuration. (ps-print-version): New version number (4.2). (ps-spool-config, ps-spool-tumble): New vars. - (ps-print-prologue-1): Changed to defconst, adjust PostScript + (ps-print-prologue-1): Change to defconst, adjust PostScript programming, new PostScript procedure to handle errors. - (ps-print-prologue-2): Changed to defconst. + (ps-print-prologue-2): Change to defconst. (ps-print-duplex-feature): New const: duplex and tumble setting. (ps-setup, ps-begin-file): Fix funs. (ps-boolean-capitalized): New fun. @@ -2107,9 +2107,9 @@ 1999-10-19 Stefan Monnier <monnier@cs.yale.edu> * Makefile (dontcompilefiles): Obsoleted. - (DONTCOMPILE): Added emacs-lisp/cl-specs.el. + (DONTCOMPILE): Add emacs-lisp/cl-specs.el. (EL): Unused. - (temacs): Removed (unused). + (temacs): Remove (unused). (cus-load.el, finder-inf.el, loaddefs.el): New targets to build a dummy version of the file (necessary for the update to work properly). (autoloads): Force the use of `pwd`/loaddefs.el. @@ -2139,18 +2139,18 @@ value: \"lpr\" changed to "lpr". (ps-mode-version): New constant. (ps-mode-show-version): New function, added key in ps-mode-map. - (ps-run-messages): Removed. + (ps-run-messages): Remove. (ps-run-font-lock-keywords-2): New defcustom variable replacing ps-run-messages. These keywords now include the value of ps-run-prompt, making its fontification customizable. - (ps-run-init): Removed \\n from docstring, it is now added when + (ps-run-init): Remove \\n from docstring, it is now added when the value is used. - (ps-run-font-lock-keywords-1): Added checking for initial ^ in + (ps-run-font-lock-keywords-1): Add checking for initial ^ in ps-run-prompt. - (ps-mode): Added ps-run-font-lock-keywords-2 to list of + (ps-mode): Add ps-run-font-lock-keywords-2 to list of customizable variables in doc-string (its equivalent ps-run-messages was missing in previous version of the doc-string). - (ps-run-mode): Simplified assignment to font-lock-defaults, using + (ps-run-mode): Simplify assignment to font-lock-defaults, using symbols only. 1999-10-19 Alex Schroeder <alex@gnu.org> @@ -2177,7 +2177,7 @@ (set-display-table-and-terminal-coding-system): New function, containing code migrated out of set-language-environment. (set-language-environment, set-locale-environment): Use it. - (locale-translation-file-name): Moved here from startup.el. + (locale-translation-file-name): Move here from startup.el. (locale-language-names, locale-preferred-coding-systems): New vars. (locale-name-match, set-locale-environment): New functions. @@ -2253,7 +2253,7 @@ 1999-10-17 Sam Steingold <sds@ksp.com> - * bindings.el (completion-ignored-extensions): Added ".sparcf" + * bindings.el (completion-ignored-extensions): Add ".sparcf" for CMUCL on sparc and ".ufsl" for LispWorks. (bound-and-true-p): Bugfix: free variable `v'. @@ -2342,8 +2342,8 @@ 1999-10-12 Stefan Monnier <monnier@cs.yale.edu> - * simple.el (shell-command, shell-command-on-region): Use - make-temp-file. + * simple.el (shell-command, shell-command-on-region): + Use make-temp-file. (clone-buffer, clone-process, clone-buffer-hook): New functions. * subr.el (with-current-buffer): Don't use backquotes to avoid @@ -2369,16 +2369,16 @@ 1999-10-12 Richard Sharman <rsharman@pobox.com> * sh-script.el: Added support for indenting existing scripts. - (sh-mode-map): Added new bindings. - (sh-mode): Updated mode doc-string for new commands, added + (sh-mode-map): Add new bindings. + (sh-mode): Update mode doc-string for new commands, added make-local-variable calls, initialize mode-specific variables. - (sh-indent-line): Renamed to sh-basic-indent-line; sh-indent-line + (sh-indent-line): Rename to sh-basic-indent-line; sh-indent-line is now a different function. - (sh-header-marker): Changed docstring. + (sh-header-marker): Change docstring. (sh-set-shell): Initialize mode-specific variables. (sh-case, sh-for, sh-if, sh-indexed-loop, sh-repeat, sh-select) (sh-tmp-file, sh-until, sh-until, sh-while, sh-while-getopts): - Changed these define-skeleton calls to work with user-specified + Change these define-skeleton calls to work with user-specified indentation settings. (sh-basic-indent-line, sh-blink, sh-calculate-indent) (sh-check-paren-in-case, sh-check-rule, sh-do-nothing) @@ -2602,9 +2602,9 @@ (isearch-yank-x-selection, isearch-ring-advance-edit): Doc fix. (isearch-ring-retreat-edit): Doc fix. (isearch-mouse-yank): New command. - (isearch-last-command-char): Removed. Callers changed to use + (isearch-last-command-char): Remove. Callers changed to use last-command-char. - (isearch-char-to-string): Removed. Callers changed to use + (isearch-char-to-string): Remove. Callers changed to use char-to-string. 1999-09-26 Oleg S. Tihonov <tihonov@ffke-campus.mipt.ru> @@ -2652,7 +2652,7 @@ * textmodes/reftex-parse.el (reftex-parse-from-file): Scan for multiple thebibliography environments. - * textmodes/reftex-cite.el (reftex-pop-to-bibtex-entry): Fixed bug + * textmodes/reftex-cite.el (reftex-pop-to-bibtex-entry): Fix bug with recentering window. (reftex-extract-bib-entries-from-thebibliography) (reftex-offer-bib-menu, reftex-bibtex-selection-callback): @@ -2749,7 +2749,7 @@ `copy-file'. (dired-copy-file-recursive): New function. Copy directories recursively. - (dired-do-create-files): Added support for generalized directory + (dired-do-create-files): Add support for generalized directory target. How-to function may now return a function. New fluid variable `dired-one-file'. (dired-copy-how-to-fn): New variable. @@ -2770,8 +2770,8 @@ * whitespace.el (whitespace-modes): Add `change-log-mode' to the list of modes to be checked for bogus whitespaces. - * whitespace.el (whitespace-rescan-timer-time): Update - documentation. + * whitespace.el (whitespace-rescan-timer-time): + Update documentation. * whitespace.el (whitespace-display-unchecked-whitespaces): New function to update modeline with untested whitespaces. @@ -2816,8 +2816,8 @@ (widget-button-pressed-face): New variable. (widget-button-click): Use it. (widget-documentation-link-add): Specify mouse and button faces. - (widget-echo-help-mouse, widget-stop-mouse-tracking): Functions - removed now the functionality is built in. + (widget-echo-help-mouse, widget-stop-mouse-tracking): + Functions removed now the functionality is built in. * cus-edit.el: Don't define-widget-keywords. (multimedia): New group. @@ -2842,8 +2842,8 @@ (custom-variable-set, custom-variable-save, custom-face-state-set) (custom-variable-reset-saved, custom-variable-reset-standard) (custom-face-set, custom-face-save, custom-face-reset-saved) - (custom-face-reset-standard, customize-save-customized): Handle - custom comments. + (custom-face-reset-standard, customize-save-customized): + Handle custom comments. (custom-comment-face, custom-comment-tag-face): New face. (custom-comment): New widget. (custom-comment-create, custom-comment-delete) @@ -2936,8 +2936,8 @@ * emacs-lisp/byte-opt.el (byte-optimize-backward-char): (byte-optimize-backward-word): New optimizations. - (side-effect-free-fns, side-effect-and-error-free-fns): Add - entries. + (side-effect-free-fns, side-effect-and-error-free-fns): + Add entries. 1999-09-09 Gerd Moellmann <gerd@gnu.org> @@ -2973,7 +2973,7 @@ 1999-09-08 Peter Breton <pbreton@ne.mediaone.net> - * generic-x.el (generic-define-unix-modes): Added new modes: + * generic-x.el (generic-define-unix-modes): Add new modes: inetd-conf-generic-mode, etc-services-generic-mode, etc-passwd-generic-mode. These are all defined for Unix by default. (apache-generic-mode): Use an imenu-generic-expression to list @@ -2985,11 +2985,11 @@ font-lock-defaults setting. (java-properties-generic-mode): Supports both ! and # as comment characters. - (java-properties-generic-mode): Added an imenu-generic-expression. - (java-properties-generic-mode): Reworked to support the various + (java-properties-generic-mode): Add an imenu-generic-expression. + (java-properties-generic-mode): Rework to support the various different ways to separate name and value (viz, '=', ':' and whitespace). - (show-tabs-generic-mode): Added this new generic-mode. + (show-tabs-generic-mode): Add this new generic-mode. 1999-09-08 Richard Stallman <rms@gnu.org> @@ -3059,7 +3059,7 @@ 1999-09-07 Dave Pearson <davep@hagbard.demon.co.uk> - * quickurl.el (quickurl-list-focused-line): Removed. + * quickurl.el (quickurl-list-focused-line): Remove. (quickurl-list-insert): Now works out the focused line using `count-lines' instead of using `quickurl-list-focused-line'. @@ -3072,7 +3072,7 @@ * isearch.el (isearch-mode-map): Add mouse-2. - * mail/rmail.el (rmail-read-password): Deleted. + * mail/rmail.el (rmail-read-password): Delete. (rmail-get-pop-password): Use read-password. * quickurl.el: Don't conditionally define caddr. @@ -3085,8 +3085,8 @@ 1999-09-06 Stephen Eglen <stephen@gnu.org> - * progmodes/octave-inf.el (inferior-octave-startup-args): Add - --no-line-editing so that TABs in source files are not interpreted + * progmodes/octave-inf.el (inferior-octave-startup-args): + Add --no-line-editing so that TABs in source files are not interpreted as completion requests. 1999-09-06 Gerd Moellmann <gerd@gnu.org> @@ -3112,7 +3112,7 @@ 1999-09-06 Dave Love <fx@gnu.org> - * emacs-lisp/byte-opt.el (byte-boolean-vars): Removed. (Now primitive.) + * emacs-lisp/byte-opt.el (byte-boolean-vars): Remove. (Now primitive.) 1999-09-05 Richard Stallman <rms@gnu.org> @@ -3128,7 +3128,7 @@ 1999-09-05 Gerd Moellmann <gerd@gnu.org> - * faces.el (header-line): Renamed from `top-line'. + * faces.el (header-line): Rename from `top-line'. 1999-09-05 Gerd Moellmann <gerd@gnu.org> @@ -3183,20 +3183,20 @@ * startup.el (command-line): Compute the value of small-temporary-file-directory. - * ediff-init.el (ediff-temp-file-prefix): Use - small-temporary-file-directory if non-nil. + * ediff-init.el (ediff-temp-file-prefix): + Use small-temporary-file-directory if non-nil. * vc.el (vc-update-change-log): Likewise. * progmodes/cmacexp.el (c-macro-expansion): Likewise. - * simple.el (shell-command, shell-command-on-region): Use - make-temp-name properly. Use small-temporary-file-directory if + * simple.el (shell-command, shell-command-on-region): + Use make-temp-name properly. Use small-temporary-file-directory if non-nil, otherwise temporary-file-directory, to generate temporary files. - * dos-w32.el (direct-print-region-helper): Use - temporary-file-directory. (From Stefan Monnier.) + * dos-w32.el (direct-print-region-helper): + Use temporary-file-directory. (From Stefan Monnier.) 1999-09-02 Richard Stallman <rms@gnu.org> @@ -3237,8 +3237,8 @@ * progmodes/compile.el (compilation-error-regexp-alist): New item for SGI IRIX MipsPro compilers. - * speedbar.el (speedbar-directory-buttons): Recognize - device names when checking for file names. + * speedbar.el (speedbar-directory-buttons): + Recognize device names when checking for file names. * array.el (array-reconfigure-rows): Use generate-new-buffer. @@ -3271,8 +3271,8 @@ * comint.el (comint-input-ring-separator): New variable. (comint-read-input-ring): Doc change; use comint-input-ring-separator when reading file. - (comint-write-input-ring): Use - comint-input-ring-separator when writing file. + (comint-write-input-ring): + Use comint-input-ring-separator when writing file. 1999-08-29 Marc Girod <girod@shire.ntc.nokia.com> @@ -3306,8 +3306,8 @@ * calendar/cal-move.el: Call the new hook in every movement function. - * calendar/calendar.el (calendar-goto-astro-day-number): Autoload - the right function name. + * calendar/calendar.el (calendar-goto-astro-day-number): + Autoload the right function name. 1999-08-26 Stephen Gildea <gildea@stop.mail-abuse.org> @@ -3316,7 +3316,7 @@ (time-stamp): Support multi-line patterns. (time-stamp-inserts-lines): New variable. (time-stamp-count): New variable. - (time-stamp-string-preprocess): Fixed bug where "%%a" becomes + (time-stamp-string-preprocess): Fix bug where "%%a" becomes "Thu" instead of "%a". 1999-08-25 Gerd Moellmann <gerd@gnu.org> @@ -3338,7 +3338,7 @@ 1999-08-24 Gerd Moellmann <gerd@gnu.org> - * faces.el (margin): Renamed from bitmap-area. + * faces.el (margin): Rename from bitmap-area. 1999-08-24 Alex Schroeder <alex@gnu.org> @@ -3423,8 +3423,8 @@ 1999-08-16 Karl Heuer <kwzh@gnu.org> - * subr.el (assoc-ignore-case, assoc-ignore-representation): Moved - here from simple.el. + * subr.el (assoc-ignore-case, assoc-ignore-representation): + Move here from simple.el. 1999-08-16 Dave Love <fx@gnu.org> @@ -3461,17 +3461,17 @@ 1999-08-16 Carsten Dominik <cd@gnu.org> - * textmodes/reftex.el (reftex-pop-to-bibtex-entry): Fixed - conflict with pop-up-frames. + * textmodes/reftex.el (reftex-pop-to-bibtex-entry): + Fix conflict with pop-up-frames. (reftex-special-environment-parsers): New constant. (reftex-label-alist): car of an entry can also be a function. (reftex-what-special-env): Cew function. (reftex-label-location): Call `reftex-what-special-env'. (reftex-compile-variables): Check for symbol in `reftex-label-alist'. - (reftex-what-environment): Fixed bug with stacked environments of + (reftex-what-environment): Fix bug with stacked environments of same kind (e.g. enumerate). (reftex-process-string): Preserve default directory. - (reftex-label-alist-builtin): Changed prefixes of endnote and footnote. + (reftex-label-alist-builtin): Change prefixes of endnote and footnote. Also the magic words. (reftex-reference): Interpret new option `reftex-fref-is-default'. (reftex-replace-prefix-escapes): Interpret new `%S' format. @@ -3486,7 +3486,7 @@ boundaries has been moved to `F'. (reftex-select-label-map): Toggling display of file boundaries is now on the `F' key, for consistency with `reftex-toc-map'. - (reftex-erase-all-selection-and-index-buffers): Renamed from + (reftex-erase-all-selection-and-index-buffers): Rename from `reftex-erase-all-selection-buffer'. Now also kills the index buffers. (reftex-viewing-cross-references): Customization group renamed @@ -3604,7 +3604,7 @@ be the same size when necessary to fit all the rings in the window; and poles can be oriented horizontally. Face support is thrown in gratuitously. - (hanoi): Changed default number of rings back to 3. + (hanoi): Change default number of rings back to 3. (hanoi-unix, hanoi-unix-64): New commands. (hanoi-horizontal-flag, hanoi-move-period, hanoi-use-faces) (hanoi-pole-face, hanoi-base-face, hanoi-even-ring-face) @@ -3612,15 +3612,15 @@ (hanoi-internal, hanoi-current-time-float, hanoi-put-face) (hanoi-n, hanoi-insert-ring, hanoi-goto-char, hanoi-sit-for) (hanoi-ring-to-pos, hanoi-pos-on-tower-p): New functions. - (hanoi-0): Renamed from hanoi0, for symmetry with hanoi-n. - (hanoi-topos, hanoi-draw-ring): Removed. + (hanoi-0): Rename from hanoi0, for symmetry with hanoi-n. + (hanoi-topos, hanoi-draw-ring): Remove. 1999-08-12 Gerd Moellmann <gerd@gnu.org> * faces.el (face-valid-attribute-values): Return an alist for families on ttys. - (face-read-integer): Handle unspecified face attributes. Add - completion for `unspecified'. + (face-read-integer): Handle unspecified face attributes. + Add completion for `unspecified'. (read-face-attribute): Handle unspecified font attributes. (face-valid-attribute-values): Add `unspecified' to lists so that it can be chosen via completion. @@ -3658,7 +3658,7 @@ (easy-menu-change): Doc fix. * info-look.el (info-lookup-guess-c-symbol): Use skip-syntax-backward. - (info-lookup-guess-default): Simplified and cleaned up. + (info-lookup-guess-default): Simplify and cleaned up. (info-lookup-guess-default*): Preserve point. * view.el (view-mode-disable): If buffer-read-only is nil, @@ -3678,13 +3678,13 @@ 1999-08-10 Alex Schroeder <asc@bsiag.com> - * ansi-color.el (ansi-color-to-text-properties): Added New state 5 + * ansi-color.el (ansi-color-to-text-properties): Add New state 5 to prevent m-eating-bug. 1999-08-10 Eli Zaretskii <eliz@gnu.org> - * term/pc-win.el (msdos-bg-mode): Remove. Call - frame-set-background-mode instead. All callers changed. + * term/pc-win.el (msdos-bg-mode): Remove. + Call frame-set-background-mode instead. All callers changed. (msdos-face-setup): Don't force color display parameter, it is set by frame-set-background-mode. (make-msdos-frame): Call x-handle-reverse-video and @@ -3695,8 +3695,8 @@ 1999-08-10 Dave Love <fx@melange.gnu.org> - * emacs-lisp/advice.el (ad-make-single-advice-docstring): Treat - case with no docstring specially. + * emacs-lisp/advice.el (ad-make-single-advice-docstring): + Treat case with no docstring specially. 1999-08-09 Eli Zaretskii <eliz@gnu.org> @@ -3705,8 +3705,8 @@ 1999-08-07 Dave Love <fx@gnu.org> - * man.el (Man-softhyphen-to-minus): Revert previous change. Avoid - unibyte to multibyte conversion of search-forward (from Handa), + * man.el (Man-softhyphen-to-minus): Revert previous change. + Avoid unibyte to multibyte conversion of search-forward (from Handa), but avoid the replacement if the language is Latin-N. 1999-08-06 Richard Stallman <rms@gnu.org> @@ -3811,14 +3811,14 @@ (apply-on-rectangle): New function, mostly replaces `operate-on-rectangle'. All callers changed. (move-to-column-force): Pass new second argument to `move-to-column'. - (kill-rectangle): Added optional prefix arg to fill lines. + (kill-rectangle): Add optional prefix arg to fill lines. (delete-rectangle): Ditto. (delete-whitespace-rectangle): Ditto. (delete-extract-rectangle): Ditto. (open-rectangle): Ditto. (clear-rectangle): Ditto. (delete-whitespace-rectangle-line): New function. - (delete-rectangle-line): Added third arg FILL. + (delete-rectangle-line): Add third arg FILL. (delete-extract-rectangle-line): Ditto. (open-rectangle-line): Ditto. (clear-rectangle-line): Ditto. @@ -3876,7 +3876,7 @@ frame-delete-all. * frame.el: Change comments to doc strings and other doc fixes. - (frame-delete-all): Moved to subr.el as `assoc-delete-all'. + (frame-delete-all): Move to subr.el as `assoc-delete-all'. Callers changed. (set-background-color, set-foreground-color, set-cursor-color) (set-mouse-color, set-border-color): Offer completion of colors. @@ -3948,7 +3948,7 @@ * mouse.el (x-fixed-font-alist): Add lucidasanstypewriter. * msb.el: Require cl only when compiling. - (msb--home-dir): Deleted. + (msb--home-dir): Delete. (msb--format-title): Use abbreviate-file-name. (msb--choose-file-menu): Simplify string comparison. @@ -3980,7 +3980,7 @@ 1999-07-26 Kenichi Handa <handa@etl.go.jp> * international/ccl.el (ccl-embed-symbol): New function. - (ccl-program-p): Deleted. Now it's implemented in C code. + (ccl-program-p): Delete. Now it's implemented in C code. (ccl-compile-call): Use ccl-embed-symbol to embed a symbol. (ccl-compile-translate-character): Likewise. (ccl-compile-map-single): Likewise. @@ -4021,19 +4021,19 @@ * fortran.el (fortran-mode-syntax-table): Change `\' to `\' syntax. - (fortran-fontify-string, fortran-match-!-comment): Deleted. + (fortran-fontify-string, fortran-match-!-comment): Delete. (fortran-font-lock-syntactic-keywords): New variable. (fortran-mode): Use it. (fortran-font-lock-keywords-1): Don't do comments. - (beginning-of-fortran-subprogram, end-of-fortran-subprogram): Save - match data. + (beginning-of-fortran-subprogram, end-of-fortran-subprogram): + Save match data. * textmodes/sgml-mode.el (sgml-validate-command): Use nsgmls. - * msb.el (msb-menu-bar-update-buffers): Renamed from + * msb.el (msb-menu-bar-update-buffers): Rename from menu-bar-update-buffers. - (msb-custom-set, msb--toggle-menu-type): Call - msb-menu-bar-update-buffers. + (msb-custom-set, msb--toggle-menu-type): + Call msb-menu-bar-update-buffers. (msb-mode): Revise the hook setting. * font-lock.el (turn-on-font-lock): Use tty-display-color-p. @@ -4079,9 +4079,9 @@ 1999-07-21 Gerd Moellmann <gerd@gnu.org> - * cl-extra.el (cl-make-hash-table): Renamed from make-hash-table. - (cl-hash-table-p): Renamed from hash-table-p. - (cl-hash-table-count): Renamed from hash-table-count. + * cl-extra.el (cl-make-hash-table): Rename from make-hash-table. + (cl-hash-table-p): Rename from hash-table-p. + (cl-hash-table-count): Rename from hash-table-count. (maphash): Alias to cl-maphash removed. (gethash): Likewise. (puthash): Likewise. @@ -4148,7 +4148,7 @@ 1999-07-21 Gerd Moellmann <gerd@gnu.org> - * faces.el (face-underline): Removed. + * faces.el (face-underline): Remove. (face-underline-color): Ditto. 1999-07-21 Gerd Moellmann <gerd@gnu.org> @@ -4319,10 +4319,10 @@ * bindings.el (make-mode-line-mouse-sensitive): Use down-mouse-3 instead of mouse-3 to pop up menus. - (mode-line-kill-buffer): Removed. + (mode-line-kill-buffer): Remove. (make-mode-line-mouse-sensitive): Pop mouse buffer menu over buffer name. - (mode-line-buffer-menu-1): Removed. + (mode-line-buffer-menu-1): Remove. * startup.el (command-line-1): Call make-mode-line-mouse-sensitive. @@ -4405,7 +4405,7 @@ 1999-07-21 Gerd Moellmann <gerd@gnu.org> - * faces.el (frame-update-faces): Copied from 20.2. + * faces.el (frame-update-faces): Copy from 20.2. (frame-update-face-colors): Ditto. Code removed that isn't applicable in the new face implementation. @@ -4424,12 +4424,12 @@ 1999-07-21 Gerd Moellmann <gerd@gnu.org> - * faces.el (face-charset-registries): Removed since fontset.el + * faces.el (face-charset-registries): Remove since fontset.el is no always loaded. 1999-07-21 Gerd Moellmann <gerd@gnu.org> - * faces.el (internal-get-face): Added as obsolete function for + * faces.el (internal-get-face): Add as obsolete function for compatibility. 1999-07-21 Gerd Moellmann <gerd@gnu.org> @@ -4458,7 +4458,7 @@ * faces.el (face-id): Return the ID of a realized face for ASCII. - * fontset.el (x-charset-registries): Removed. Now in faces.el. + * fontset.el (x-charset-registries): Remove. Now in faces.el. (x-complement-fontset-spec): Use face-charset-registries. * faces.el (face-font-selection-order): Set font selection order @@ -4486,14 +4486,14 @@ * cus-face.el (custom-face-attributes): Add :bold and :italic for compatibility with old code. - * faces.el (set-face-attributes-from-resources): Additional - frame parameter. + * faces.el (set-face-attributes-from-resources): + Additional frame parameter. (make-face-x-resource-internal): Set attributes from resources for a given frame or all frames. 1999-07-21 Gerd Moellmann <gerd@gnu.org> - * faces.el (all-faces): Removed. + * faces.el (all-faces): Remove. * custom.el (defface): Add new face attributes to function comment. @@ -4512,8 +4512,8 @@ * cus-face.el (custom-face-attributes): Use new face attributes. - * faces.el (set-face-attribute-from-resource): Initialize - from resources only for X and W32. + * faces.el (set-face-attribute-from-resource): + Initialize from resources only for X and W32. * cus-face.el (custom-declare-face): Don't make frame-local faces. @@ -4599,8 +4599,8 @@ * faces.el (eval-when-compile): Add set-face-shadow-thickness. (internal-facep): Increase vector size. (make-face): Ditto. - (face-shadow-thickness): Added. - (set-face-shadow-thickness): Added. + (face-shadow-thickness): Add. + (set-face-shadow-thickness): Add. (modify-face): Add optional shadow-thickness parameter. (make-face-x-resource-internal): Add shadows. (copy-face): Ditto. @@ -4646,8 +4646,8 @@ * fill.el (canonically-space-region, justify-current-line): Add * to interactive spec. (fill-region-as-paragraph, fill-paragraph, fill-region) - (fill-nonuniform-paragraphs, fill-individual-paragraphs): Check - readonly buffer in interactive spec. + (fill-nonuniform-paragraphs, fill-individual-paragraphs): + Check readonly buffer in interactive spec. * paragraphs.el (kill-paragraph, backward-kill-paragraph) (backward-kill-sentence, kill-sentence): Add * to interactive spec. @@ -4662,7 +4662,7 @@ 1999-07-19 John Wiegley <jwiegley@borland.com> - * term.el (ansi-term-fg-faces-vector): Added support for ANSI + * term.el (ansi-term-fg-faces-vector): Add support for ANSI color codes 39 and 49, which by the way lynx uses them seem to mean "foreground reset" and "background reset". @@ -4727,7 +4727,7 @@ 1999-07-08 Espen Skoglund <espensk@stud.cs.uit.no> - * pascal.el (pascal-calculate-indent): Fixed a bug occurring when + * pascal.el (pascal-calculate-indent): Fix a bug occurring when the `end' keyword was in the very beginning of the buffer. 1999-07-08 Richard Stallman <rms@gnu.org> @@ -4759,8 +4759,8 @@ * isearch.el (isearch-process-search-char): Write octal 200 correctly. - * startup.el (normal-top-level-add-subdirs-to-load-path): Avoid - doing a `stat' when it isn't necessary because that can cause + * startup.el (normal-top-level-add-subdirs-to-load-path): + Avoid doing a `stat' when it isn't necessary because that can cause trouble when an NFS server is down. 1999-07-04 Richard Stallman <rms@gnu.org> @@ -4869,8 +4869,8 @@ 1999-06-18 Andrew Innes <andrewi@gnu.org> - * mail/smtpmail.el (smtpmail-send-it): Use - convert-standard-filename to make file names for queued mail safe + * mail/smtpmail.el (smtpmail-send-it): + Use convert-standard-filename to make file names for queued mail safe on Windows (`:' is invalid in file names on Windows). 1999-06-17 Kenichi Handa <handa@etl.go.jp> @@ -4911,8 +4911,8 @@ 1999-06-15 Markus Rost <markus.rost@mathematik.uni-regensburg.de> - * mail/rmailsum.el (rmail-summary-output-to-rmail-file): Avoid - multiple output of the last message. + * mail/rmailsum.el (rmail-summary-output-to-rmail-file): + Avoid multiple output of the last message. 1999-06-14 Eli Zaretskii <eliz@gnu.org> @@ -4977,8 +4977,8 @@ 1999-06-09 Dave Love <fx@gnu.org> - * progmodes/compile.el (compilation-error-regexp-alist): Allow - digits in program name in first pattern. + * progmodes/compile.el (compilation-error-regexp-alist): + Allow digits in program name in first pattern. 1999-06-09 Andre Spiegel <spiegel@inf.fu-berlin.de> @@ -4992,8 +4992,8 @@ 1999-06-05 Stephen Eglen <stephen@gnu.org> - * iswitchb.el (iswitchb-default-keybindings): Add - iswitchb-minibuffer-setup to minibuffer-setup-hook here rather + * iswitchb.el (iswitchb-default-keybindings): + Add iswitchb-minibuffer-setup to minibuffer-setup-hook here rather than when package is loaded. 1999-06-04 Richard M. Stallman <rms@gnu.org> @@ -5033,7 +5033,7 @@ 1999-06-04 Eric M. Ludlam <zappo@ultranet.com> - * speedbar.el (speedbar-hack-buffer-menu): Fixed so if the user + * speedbar.el (speedbar-hack-buffer-menu): Fix so if the user does not select a buffer from the buffers menu, then the attached frame is not switched to anything. @@ -5128,8 +5128,8 @@ 1999-05-25 Ken'ichi Handa <handa@gnu.org> - * mail/smtpmail.el (smtpmail-send-it): Bind - smtpmail-code-conv-from properly. + * mail/smtpmail.el (smtpmail-send-it): + Bind smtpmail-code-conv-from properly. (smtpmail-send-data-1): If DATA is a multibyte string, encode it by smtpmail-code-conv-from. @@ -5238,13 +5238,13 @@ 1995-05-11 Joel N. Weber II <devnull@melange.gnu.org> - * comint.el (comint-password-prompt-regexp): Modified to match the + * comint.el (comint-password-prompt-regexp): Modify to match the output of ksu and ssh-add. 1999-05-11 Kenichi HANDA <handa@etl.go.jp> * language/korea-util.el (isearch-toggle-korean-input-method): - Adjusted for the change of input method handling in isearch.el. + Adjust for the change of input method handling in isearch.el. (isearch-hangul-switch-symbol-ksc): Likewise. (isearch-hangul-switch-hanja): Likewise. @@ -5266,8 +5266,8 @@ 1999-05-09 Ken'ichi Handa <handa@gnu.org> - * ps-print.el (ps-control-character): Call - ps-mule-prepare-ascii-font to setup ASCII fonts. + * ps-print.el (ps-control-character): + Call ps-mule-prepare-ascii-font to setup ASCII fonts. * ps-mule.el (ps-mule-begin-job): Redo this change "if ps-multibyte-buffer is nil, use @@ -5278,16 +5278,16 @@ * ispell.el (ispell-local-dictionary-alist): New variable for customizing local dictionaries not accessible by everyone. (ispell-dictionary-alist): Loads `ispell-local-dictionary-alist'. - (ispell-required-version): Changed format `(major minor + (ispell-required-version): Change format `(major minor revision)' to support general pattern matching. (ispell-tex-skip-alists): AMS Tex block comment and `\author' skip region commented out due to incorrect skip potential in std latex. - (ispell-word): Removed `when' macro. Fixed bug of not restoring + (ispell-word): Remove `when' macro. Fixed bug of not restoring cursor point on small words for calls from `ispell-minor-mode'. (check-ispell-version): Tests and accepts versions major.minor and above, with adjustments for interactions in 3.1.0-3.1.11. (ispell-get-line): No longer skips ispell process special characters. - (ispell-comments-and-strings): Removed `when' macro call. + (ispell-comments-and-strings): Remove `when' macro call. (ispell-minor-check): Requires ispell-word to restore cursor point. (ispell-buffer-local-parsing): Supports checking comments only. @@ -5308,7 +5308,7 @@ 1999-05-07 Joel N. Weber II <devnull@melange.gnu.org> - * comint.el (comint-password-prompt-regexp): Modified so that it + * comint.el (comint-password-prompt-regexp): Modify so that it matches the output of kinit. 1999-05-06 Greg Stark <gsstark@mit.edu> @@ -5450,8 +5450,8 @@ 1999-04-26 John Wiegley <johnw@borland.com> - * progmodes/compile.el (compilation-error-regexp-alist): Recognize - C++Builder 4.0 error message syntax. + * progmodes/compile.el (compilation-error-regexp-alist): + Recognize C++Builder 4.0 error message syntax. 1999-04-26 Mark Diekhans <markd@Grizzly.COM> @@ -5460,8 +5460,8 @@ 1999-04-26 Yoshiki Hayashi <g740685@komaba.ecc.u-tokyo.ac.jp> - * textmodes/texinfmt.el (texinfo-format-buffer): Bind - coding-system-for-write, to avoid hanging when non-interactive. + * textmodes/texinfmt.el (texinfo-format-buffer): + Bind coding-system-for-write, to avoid hanging when non-interactive. 1999-04-26 Dirk Herrmann <D.Herrmann@tu-bs.de> @@ -5666,12 +5666,12 @@ 1999-03-25 Andrew Innes <andrewi@gnu.org> - * w32-fns.el (set-default-process-coding-system): Copied from + * w32-fns.el (set-default-process-coding-system): Copy from dos-w32.el, but modified to use Unix line endings for process input, and to add a suitable entry to process-coding-system-alist for DOS shells. - * dos-fns.el (set-default-process-coding-system): Copied from + * dos-fns.el (set-default-process-coding-system): Copy from dos-w32.el. * dos-w32.el (set-default-process-coding-system): Move function to @@ -5712,8 +5712,8 @@ 1999-03-18 Simon Marshall <simon@gnu.org> - * font-lock.el (c-font-lock-keywords-2): Added "complex" type. - (java-font-lock-keywords-2): Added "strictfp" keyword. + * font-lock.el (c-font-lock-keywords-2): Add "complex" type. + (java-font-lock-keywords-2): Add "strictfp" keyword. 1999-03-17 Jason Rumney <jasonr@altavista.net> @@ -5722,8 +5722,8 @@ 1999-03-17 Eli Zaretskii <eliz@gnu.org> - * international/mule-cmds.el (set-language-environment): Fix - previous change: don't use dos-codepage when unbound. + * international/mule-cmds.el (set-language-environment): + Fix previous change: don't use dos-codepage when unbound. 1999-03-17 Karl Heuer <kwzh@gnu.org> @@ -5747,7 +5747,7 @@ 1999-03-15 Simon Marshall <simon@gnu.org> - * font-lock.el (c-font-lock-keywords-2): Added "restrict" keyword. + * font-lock.el (c-font-lock-keywords-2): Add "restrict" keyword. 1999-03-14 Milan Zamazal <pdm@pvt.net> @@ -5777,7 +5777,7 @@ * speedbar.el: Added commentary about stealthy functions. (speedbar-message): New function. (speedbar-y-or-n-p): New function. - (speedbar-with-attached-buffer): Moved macro before reference. + (speedbar-with-attached-buffer): Move macro before reference. Now uses `save-selected-window'. (speedbar-mouse-hscroll, speedbar-track-mouse, speedbar-refresh) (speedbar-generic-item-info, speedbar-item-info-file-helper) @@ -5820,8 +5820,8 @@ 1999-03-09 Dave Love <fx@gnu.org> - * textmodes/sgml-mode.el (html-mode): Use - sentence-end-double-space when setting sentence-end. + * textmodes/sgml-mode.el (html-mode): + Use sentence-end-double-space when setting sentence-end. 1999-03-09 Ken'ichi Handa <handa@gnu.org> @@ -5864,8 +5864,8 @@ 1999-03-06 Dave Love <fx@gnu.org> - * progmodes/cc-cmds.el (c-outline-level): Bind - buffer-invisibility-spec. + * progmodes/cc-cmds.el (c-outline-level): + Bind buffer-invisibility-spec. * progmodes/c-mode.el (c-outline-level): Likewise. @@ -5905,8 +5905,8 @@ 1999-03-03 Dave Love <fx@gnu.org> * options.el (edit-options): Doc fix. - (list-options): Don't lose with unbound symbols. Maintain - Edit-options-mode. + (list-options): Don't lose with unbound symbols. + Maintain Edit-options-mode. 1999-03-01 Dave Love <fx@gnu.org> @@ -5918,7 +5918,7 @@ (ispell-dictionary-alist): Don't setq it, if ispell-dictionary-alist-override is set. - * simple.el (shell-command-default-error-buffer): Renamed from + * simple.el (shell-command-default-error-buffer): Rename from shell-command-on-region-default-error-buffer. (shell-command-on-region): Mention in echo area when there is some error output. Mention success or failure, too. @@ -5964,8 +5964,8 @@ (ps-font-size, ps-header-font-size, ps-header-title-font-size): Specifies landscape and portrait sizes. (ps-setup, ps-print-quote, ps-line-lengths-internal, ps-nb-pages) - (ps-get-page-dimensions, ps-begin-file, ps-begin-job, ps-generate): Fun - fix. + (ps-get-page-dimensions, ps-begin-file, ps-begin-job, ps-generate): + Fun fix. (ps-get-font-size): New fun. (ps-font-size-internal, ps-header-font-size-internal) (ps-header-title-font-size-internal): New vars. @@ -6009,8 +6009,8 @@ 1999-02-23 Ken'ichi Handa <handa@gnu.org> - * international/encoded-kb.el (encoded-kbd-handle-8bit): Allow - inputting ?\240. + * international/encoded-kb.el (encoded-kbd-handle-8bit): + Allow inputting ?\240. 1999-02-23 Karl Heuer <kwzh@gnu.org> @@ -6027,8 +6027,8 @@ 1999-02-22 Eli Zaretskii <eliz@gnu.org> - * arc-mode.el (archive-set-buffer-as-visiting-file): Save - excursion while calling set-auto-coding-function. + * arc-mode.el (archive-set-buffer-as-visiting-file): + Save excursion while calling set-auto-coding-function. * play/handwrite.el (handwrite): Require ps-print, and use ps-printer-name and ps-lpr-command. Call ps-print-region-function @@ -6036,8 +6036,8 @@ 1999-02-22 Kenichi Handa <handa@etl.go.jp> - * international/codepage.el (cp-coding-system-for-codepage-1): Put - charset-origin-alist property to a coding system for the codepage. + * international/codepage.el (cp-coding-system-for-codepage-1): + Put charset-origin-alist property to a coding system for the codepage. * international/mule.el: Modify comment for charset-origin-alist property of a coding system. @@ -6053,7 +6053,7 @@ 1999-02-21 Peter Breton <pbreton@ne.mediaone.net> - * dirtrack.el (dirtrack): Added docstring. Now returns input. + * dirtrack.el (dirtrack): Add docstring. Now returns input. 1999-02-18 Peter Breton <pbreton@ne.mediaone.net> @@ -6090,7 +6090,7 @@ (sql-stop): Use sql-input-ring-separator and sql-input-ring-file-name. (sql-input-ring-file-name): New variable with customization. (sql-input-ring-separator): New variable with customization. - (sql-set-sqli-buffer): Renamed from sql-change-sqli-buffer. + (sql-set-sqli-buffer): Rename from sql-change-sqli-buffer. Callers changed. (sql-show-sqli-buffer): The message for "sql-buffer is not set" now includes the name of the current buffer. @@ -6106,7 +6106,7 @@ 1999-02-18 Ken'ichi Handa <handa@gnu.org> - * international/mule.el (coding-system-list): Moved here from + * international/mule.el (coding-system-list): Move here from mule-util.el to avoid autoloading mule-util by the call of select-safe-coding-system. @@ -6122,12 +6122,12 @@ 1999-02-17 Peter Breton <pbreton@ne.mediaone.net> - * filecache.el (file-cache-filter-regexps): Added .class. + * filecache.el (file-cache-filter-regexps): Add .class. 1999-02-17 Ken'ichi Handa <handa@gnu.org> - * international/mule-util.el (decompose-region): Use - insert-buffer-substring instead of insert-buffer to avoid putting + * international/mule-util.el (decompose-region): + Use insert-buffer-substring instead of insert-buffer to avoid putting mark. 1999-02-17 Andreas Schwab <schwab@gnu.org> @@ -6179,8 +6179,8 @@ 1999-02-16 Ken'ichi Handa <handa@gnu.org> - * language/japanese.el (japanese-shift-jis): Add - charset-origin-alist property. + * language/japanese.el (japanese-shift-jis): + Add charset-origin-alist property. 1999-02-15 Richard Stallman <rms@gnu.org> @@ -6209,10 +6209,10 @@ 1999-02-14 Richard Stallman <rms@gnu.org> * international/iso-transl.el: - (iso-transl-ae): Renamed from iso-transl-e-slash. - (iso-transl-a-ring): Renamed from iso-transl-a-slash. - (iso-transl-AE): Renamed from iso-transl-E-slash. - (iso-transl-A-ring): Renamed from iso-transl-A-slash. + (iso-transl-ae): Rename from iso-transl-e-slash. + (iso-transl-a-ring): Rename from iso-transl-a-slash. + (iso-transl-AE): Rename from iso-transl-E-slash. + (iso-transl-A-ring): Rename from iso-transl-A-slash. (iso-transl-char-map): Related changes. * format.el (format-replace-strings): Fix value of TO in REVERSE case. @@ -6229,7 +6229,7 @@ 1999-02-12 Alex Schroeder <a.schroeder@bsiag.ch> * sql.el: Set version to 1.3.2. - (sql-solid-program): Added support for solid. + (sql-solid-program): Add support for solid. (sql-help): Doc mentions sql-solid. (sql-solid): Entry function for Solid. (sql-buffer): Doc explains the use of the variable and how to @@ -6243,16 +6243,16 @@ (sql-change-sqli-buffer): New function to change sql-buffer. (sql-mode): Doc explains how to change sql-buffer. (sql-send-paragraph): New function to send a paragraph. - (sql-mode-map): Added keybinding for sql-send-paragraph. + (sql-mode-map): Add keybinding for sql-send-paragraph. (sql-mysql): Doc corrected. (sql-ms): Doc corrected. * sql.el (sql-server): Doc fix. - (sql-mysql): Added the use of sql-server to specify the host, + (sql-mysql): Add the use of sql-server to specify the host, sql-database now specifies database instead of host. (sql-mode-menu): Send... menu items are only active if sql-buffer is non-nil. - (sql-help): Changed tag of entry functions a bit. + (sql-help): Change tag of entry functions a bit. * sql.el: Added keywords from `finder-by-keyword'. (sql-mode): Made sql-buffer a local variable, changed the @@ -6267,10 +6267,10 @@ sql-user and sql-password used during login. (sql-sybase): Quoted *SQL* in doc string, added comma. (sql-oracle): Likewise. - (sql-interactive-mode): Added extensive documentation for having + (sql-interactive-mode): Add extensive documentation for having multiple SQL buffers sending their stuff to different SQLi buffers, each running a different process. - (sql-buffer): Changed doc from *SQL* to SQLi. + (sql-buffer): Change doc from *SQL* to SQLi. (sql-get-login): Doc fix. 1999-02-12 Ken'ichi Handa <handa@gnu.org> @@ -6301,8 +6301,8 @@ 1999-02-12 Ken'ichi Handa <handa@gnu.org> - * international/quail.el (quail-show-kbd-layout): Bind - blink-matching-paren to nil. + * international/quail.el (quail-show-kbd-layout): + Bind blink-matching-paren to nil. * ps-mule.el (ps-mule-font-info-database-bdf): Fix ENCODING field for ASCII and Latin-1. @@ -6313,8 +6313,8 @@ 1999-02-12 Kenichi Handa <handa@etl.go.jp> - * international/mule-cmds.el (language-info-alist): Remove - description about charset-origin-alist. + * international/mule-cmds.el (language-info-alist): + Remove description about charset-origin-alist. * international/mule.el: Comment added for a new coding system property `charset-origin-alist'. @@ -6330,8 +6330,8 @@ ("Cyrillic-KOI8"): Remove charset-origin-alist property. ("Cyrillic-ALT"): Likewise. - * language/vietnamese.el (vietnamese-viqr): Add - charset-origin-alist property. + * language/vietnamese.el (vietnamese-viqr): + Add charset-origin-alist property. ("Vietnamese"): Remove charset-origin-alist property. * simple.el (what-cursor-position): Don't use the variable @@ -6371,8 +6371,8 @@ 1999-02-08 Eli Zaretskii <eliz@gnu.org> - * international/codepage.el (cp-coding-system-for-codepage-1): On - MS-DOS, use dos-unsupported-char-glyph for characters not + * international/codepage.el (cp-coding-system-for-codepage-1): + On MS-DOS, use dos-unsupported-char-glyph for characters not supported by the codepage. (cp-make-coding-systems-for-codepage): Likewise. @@ -6381,7 +6381,7 @@ * international/mule-util.el (coding-system-list): Don't sort coding-system-list here. - * international/mule.el (coding-system-lessp): Moved here from + * international/mule.el (coding-system-lessp): Move here from mule-util.el. (add-to-coding-system-list): New function. (make-subsidiary-coding-system, make-coding-system) @@ -6427,18 +6427,18 @@ 1999-02-05 Alex Schroeder <asc@bsiag.com> * progmodes/sql.el: Changed version to 1.2.1. - (sql-pop-to-buffer-after-send-region): Improved documentation. - (sql-mysql-program): Added MySQL support. + (sql-pop-to-buffer-after-send-region): Improve documentation. + (sql-mysql-program): Add MySQL support. (sql-prompt-length): Made prompt-length configurable. (sql-mode-syntax-table): Made apostrophe (') be a string delimiter. - (sql-help): Added MySQL support, changed documentation. + (sql-help): Add MySQL support, changed documentation. (sql-send-region): A message is displayed if something is sent. - (sql-mode): Added buffer-local comment-start. + (sql-mode): Add buffer-local comment-start. (sql-interactive-mode): Use sql-prompt-length to set left-margin. - (sql-interactive-mode): Added buffer-local comment-start. + (sql-interactive-mode): Add buffer-local comment-start. (sql-oracle): Set sql-prompt-length. (sql-sybase): Set sql-prompt-length. - (sql-mysql): Added MySQL support. + (sql-mysql): Add MySQL support. (sql-ingres): Set sql-prompt-length. (sql-ms): Set sql-prompt-length. (sql-postgres): Set sql-prompt-length. @@ -6495,8 +6495,8 @@ 1999-02-01 Ken'ichi Handa <handa@gnu.org> - * international/mule-util.el (compose-chars-component): Add - autoload cookie. + * international/mule-util.el (compose-chars-component): + Add autoload cookie. 1999-01-31 Ken'ichi Handa <handa@gnu.org> @@ -6506,8 +6506,8 @@ 1999-01-31 Markus Rost <markus.rost@mathematik.uni-regensburg.de> - * progmodes/compile.el (compilation-next-error-locus): Don't - decrease argument FIND-AT-LEAST of compilation-next-error-locus. + * progmodes/compile.el (compilation-next-error-locus): + Don't decrease argument FIND-AT-LEAST of compilation-next-error-locus. 1999-01-31 Eli Zaretskii <eliz@gnu.org> @@ -6538,8 +6538,8 @@ * tex-mode.el (tex-mode-map): Replace validate-tex-buffer by tex-validate-buffer. (plain-tex-mode, latex-mode, slitex-mode): Likewise. - (tex-validate-buffer): Renamed from validate-tex-buffer. Works - now with recent occur-mode. + (tex-validate-buffer): Rename from validate-tex-buffer. + Works now with recent occur-mode. (tex-validate-region): Really walk through all Sexps. (tex-region): Bind shell-dirtrack-verbose. (tex-file, tex-bibtex-file): Likewise. @@ -6639,8 +6639,8 @@ 1999-01-25 Edward M. Reingold <reingold@emr.cs.uiuc.edu> - * calendar/diary-lib.el (mark-diary-entries): Use - assoc-ignore-case and do not capitalize when matching month and + * calendar/diary-lib.el (mark-diary-entries): + Use assoc-ignore-case and do not capitalize when matching month and day names. * calendar/calendar.el (calendar-read-date): Ditto. @@ -6734,8 +6734,8 @@ 1999-01-23 Ken'ichi Handa <handa@gnu.org> - * international/fontset.el (create-fontset-from-x-resource): Make - style variants. + * international/fontset.el (create-fontset-from-x-resource): + Make style variants. 1999-01-22 Dave Love <fx@gnu.org> @@ -6748,7 +6748,7 @@ 1999-01-22 Jason Rumney <jasonr@altavista.net> - * term/w32-win.el (w32-standard-fontset-spec): Simplified. + * term/w32-win.el (w32-standard-fontset-spec): Simplify. 1999-01-22 Felix Lee <flee@cygnus.com> @@ -6782,8 +6782,8 @@ 1999-01-19 Jason Rumney <jasonr@altavista.net> - * term/w32-win.el (w32-standard-fontspec-spec): Change - iso8859-5 to koi8-r. Add iso8859-9. + * term/w32-win.el (w32-standard-fontspec-spec): + Change iso8859-5 to koi8-r. Add iso8859-9. 1999-01-19 Dave Love <fx@gnu.org> @@ -6807,8 +6807,8 @@ * textmodes/tex-mode.el (tex-define-common-keys): Remove key binding of tex-feed-input. (tex-mode-map): Bind tex-feed-input here. - (tex-start-shell): Use compilation-shell-minor-mode. Set - comint-input-filter-functions before running tex-shell-hook. + (tex-start-shell): Use compilation-shell-minor-mode. + Set comint-input-filter-functions before running tex-shell-hook. (tex-start-tex): Forget compilation errors. (tex-compilation-parse-errors): Rewritten to work also with compile-mouse-goto-error and compile-goto-error. Adjusted to @@ -6827,8 +6827,8 @@ 1999-01-18 Ken'ichi Handa <handa@gnu.org> - * international/ccl.el (ccl-compile-translate-character): Handle - the case that a translation table is CCL register correctly. + * international/ccl.el (ccl-compile-translate-character): + Handle the case that a translation table is CCL register correctly. * international/mule-cmds.el (select-safe-coding-system): Highlight at most 256 characters. @@ -6893,8 +6893,8 @@ 1999-01-17 Andrew Innes <andrewi@gnu.org> - * dos-w32.el (find-buffer-file-type-coding-system): Use - default-buffer-file-coding-system when file doesn't exist (and + * dos-w32.el (find-buffer-file-type-coding-system): + Use default-buffer-file-coding-system when file doesn't exist (and isn't covered by a special case) instead of forcing undecided-dos against the user's wishes. @@ -6916,8 +6916,8 @@ * lpr.el (printer-name): Update docstring about usage on MS-DOS and MS-Windows. (lpr-command) [ms-dos, windows-nt]: Initialize to empty string on - DOS and Windows platforms, to indicate direct printing. Update - the docstring accordingly. + DOS and Windows platforms, to indicate direct printing. + Update the docstring accordingly. * ps-print.el (ps-printer-name): Update docstring about usage on MS-DOS and MS-Windows. @@ -6952,8 +6952,8 @@ 1999-01-16 Dave Love <fx@gnu.org> - * help.el (temp-buffer-setup-hook, temp-buffer-show-hook): Revert - last change. + * help.el (temp-buffer-setup-hook, temp-buffer-show-hook): + Revert last change. 1999-01-15 Dave Love <fx@gnu.org> @@ -7002,8 +7002,8 @@ 1999-01-13 Eli Zaretskii <eliz@gnu.org> * international/codepage.el (cp850-decode-table): Replace nil - entries with codes of similary looking glyphs. (Suggested by - Jason Rumney <jasonr@altavista.net>.) + entries with codes of similary looking glyphs. ( + Suggested by Jason Rumney <jasonr@altavista.net>.) 1999-01-13 Dave Love <fx@gnu.org> @@ -7026,12 +7026,12 @@ * cus-start.el: Add inhibit-eol-conversion. - * help.el (temp-buffer-setup-hook, temp-buffer-show-hook): Swap - the values round. + * help.el (temp-buffer-setup-hook, temp-buffer-show-hook): + Swap the values round. 1999-01-11 Richard Stallman <rms@psilocin.ai.mit.edu> - * help.el (help-mode-finish): Renamed from help-mode-maybe. + * help.el (help-mode-finish): Rename from help-mode-maybe. Don't switch to Help mode here. (temp-buffer-setup-hook): Use help-mode-finish. (help-mode-setup): New function. @@ -7145,11 +7145,11 @@ 1999-01-06 Eli Zaretskii <eliz@gnu.org> - * international/codepage.el (cp-coding-system-for-codepage-1): Add - the valid-codes property. + * international/codepage.el (cp-coding-system-for-codepage-1): + Add the valid-codes property. - * international/mule-cmds.el (prefer-coding-system): Call - set-coding-priority, so that the internal array of priorities is + * international/mule-cmds.el (prefer-coding-system): + Call set-coding-priority, so that the internal array of priorities is also updated. * international/mule-util.el @@ -7164,8 +7164,8 @@ * emacs-lisp/debug.el (debug): Leave recursive minibuffer enabled if it was enabled before. - * view.el (View-revert-buffer-scroll-page-forward): Bind - view-scroll-auto-exit instead of obsolete view-mode-auto-exit. + * view.el (View-revert-buffer-scroll-page-forward): + Bind view-scroll-auto-exit instead of obsolete view-mode-auto-exit. * files.el (recover-session): Preserve point when inserting explanation. @@ -7438,9 +7438,9 @@ (cperl-syntaxify-by-font-lock): Set to t, should be safe now. Better default, customizes to `message' too, off in text-mode. - (cperl-array-face): Renamed from `font-lock-emphasized-face', + (cperl-array-face): Rename from `font-lock-emphasized-face', `defface'd. - (cperl-hash-face): Renamed from `font-lock-other-emphasized-face'. + (cperl-hash-face): Rename from `font-lock-other-emphasized-face'. `defface'd. (cperl-emacs-can-parse): New state variable. (cperl-indent-line): Corrected to use global state. @@ -7488,7 +7488,7 @@ inside of POD too. (cperl-backward-to-noncomment): Better treatment of PODs and HEREs. (cperl-clobber-mode-lists): New configuration variable. - (cperl-not-bad-style-regexp): Updated. + (cperl-not-bad-style-regexp): Update. Init: `cperl-is-face' was busted. (cperl-make-face): New macros. (cperl-force-face): New macros. @@ -7503,7 +7503,7 @@ (cperl-tags-hier-init): Gross hack to pretend we work (are we?). Another try to work around XEmacs problems. Better progress messages. (toplevel): Require custom unprotected => failure on 19.28. - (cperl-xemacs-p): Defined when compile too. + (cperl-xemacs-p): Define when compile too. (cperl-find-tags): Was writing line/pos in a wrong order, pos off by 1 and not at beg-of-line. (cperl-etags-snarf-tag): New macro. @@ -7599,8 +7599,8 @@ (speedbar-this-file-in-vc) Fix SCCS to use s. not p. files. (speedbar-tag-group-name-minimum-length): New variable. (speedbar-frame-parameter): New compatibility function. - (speedbar-frame-mode): Updated to use speedbar-frame-parameter. - (speedbar-apply-one-tag-hierarchy-method): Fixed up taging sub + (speedbar-frame-mode): Update to use speedbar-frame-parameter. + (speedbar-apply-one-tag-hierarchy-method): Fix up taging sub groups to keep things in the right order, and to help with some naming conventions. (speedbar-create-tag-hierarchy): Enable buffer local version of @@ -7726,8 +7726,8 @@ (ps-mule-plot-string): Set ps-mule-current-charset. (ps-mule-initialize): Add autoload cookie. Don't set ps-mule-font-info-database here. - (ps-mule-begin-job): Renamed from ps-mule-begin. Update - ps-mule-font-info-database and ps-control-or-escape-regexp. + (ps-mule-begin-job): Rename from ps-mule-begin. + Update ps-mule-font-info-database and ps-control-or-escape-regexp. (ps-mule-begin-page): New fun. * ps-print.el: Mule related code moved to ps-mule.el. @@ -7749,7 +7749,7 @@ * ps-print.el (ps-mule-font-info-database): Doc-string modified. (ps-mule-external-libraries): New element FEATURE. - (ps-mule-init-external-library): Adjusted for the above change. + (ps-mule-init-external-library): Adjust for the above change. (ps-mule-generate-font): Likewise. (ps-mule-generate-glyphs): Likewise. (ps-mule-prepare-font): Likewise. @@ -7766,7 +7766,7 @@ Handle the case of unknown charset. (find-multibyte-characters): If invalid multibyte characters are found, return the corresponding strings instead of character codes. - (find-multibyte-characters): Adjusted for the above change. + (find-multibyte-characters): Adjust for the above change. (select-safe-coding-system): For a unibyte buffer, always returns DEFAULT-CODING-SYSTEM. (get-charset-property): Fix previous change. Make it a function. @@ -7786,8 +7786,8 @@ 1998-12-14 Andreas Schwab <schwab@delysid.gnu.org> - * textmodes/texinfo.el (texinfo-tex-buffer): Bind - tex-start-options-string to empty string. + * textmodes/texinfo.el (texinfo-tex-buffer): + Bind tex-start-options-string to empty string. (texinfo-tex-region): Use texinfo-tex-trailer as documented. 1998-12-14 Andrew Innes <andrewi@delysid.gnu.org> @@ -7839,7 +7839,7 @@ * help.el (symbol-file-load-history-loaded): Variable renamed, and defvar moved from loadhist.el. - (symbol-file): Renamed from describe-function-find-file. + (symbol-file): Rename from describe-function-find-file. Load fns-VERSION.el here. (describe-variable, describe-function-1): Use symbol-file. @@ -7968,7 +7968,7 @@ * vc.el (vc-dired-window-configuration, vc-ediff-windows) (vc-ediff-result, vc-dired-switches, vc-dired-terse-mode): - Added defvars to suppress compilation warnings. + Add defvars to suppress compilation warnings. 1998-11-30 Ken Stevens <k.stevens@ieee.org> @@ -7984,13 +7984,13 @@ ispell-message-text-end, ispell-add-per-file-word-list. (ispell-dictionary-alist-1, ispell-dictionary-alist2): A coding system is now required for all languages. Casechars improved for - castellano, castellano8, and norsk dictionaries. Dictionary - norsk7-tex added. Dictionary polish added. + castellano, castellano8, and norsk dictionaries. + Dictionary norsk7-tex added. Dictionary polish added. (ispell-dictionary-alist): Redefined at load-time to support dictionary changes. (ispell-menu-map): Redefined at load-time to support menu changes. (ispell-check-version): New alias for `check-ispell-version'. - (ispell-parse-output): Fixed matching for ispell error messages. + (ispell-parse-output): Fix matching for ispell error messages. Correctly returns spelling suggestions in order generated by ispell process. (check-ispell-version): Ensure `case-fold-search' doesn't get @@ -8002,12 +8002,12 @@ (ispell-kill-ispell): Ensures ispell process has terminated before starting new process. This can otherwise confuse process filters and hang the ispell process. - (ispell-begin-skip-region-regexp, ispell-skip-region): Improved - skipping support for sgml. + (ispell-begin-skip-region-regexp, ispell-skip-region): + Improve skipping support for sgml. (ispell-minor-check): Support sgml labels. Fix mapping ^M to \r which could cause `ispell-complete-word' to hang. - (ispell-message): Improved message reference matching. Ensure - `case-fold-search' doesn't get redefined. + (ispell-message): Improve message reference matching. + Ensure `case-fold-search' doesn't get redefined. (ispell-buffer-local-parsing): Ensure `case-fold-search' doesn't get redefined. Fixed bug in returning to nroff mode from tex mode. (ispell-add-per-file-word-list): Ensure `case-fold-search' doesn't @@ -8108,8 +8108,8 @@ 1998-11-22 Andrew Innes <andrewi@delysid.gnu.org> - * mail/rmail.el (rmail-set-message-counters-counter): Detect - messages that have been added with DOS line endings and convert + * mail/rmail.el (rmail-set-message-counters-counter): + Detect messages that have been added with DOS line endings and convert the line endings for such messages. 1998-11-22 Emilio Lopes <Emilio.Lopes@Physik.TU-Muenchen.DE> @@ -8131,8 +8131,8 @@ 1998-11-21 Lars Magne Ingebrigtsen <larsi@gnus.org> - * message.el (message-ignored-supersedes-headers): Remove - NNTP-Posting-Date. + * message.el (message-ignored-supersedes-headers): + Remove NNTP-Posting-Date. 1998-11-21 Richard Stallman <rms@psilocin.ai.mit.edu> @@ -8243,8 +8243,8 @@ (tar-extract): Avoid multibyte<->unibyte conversion in insert-buffer-substring by setting both buffers unibyte temporarily. - (tar-copy): Set the buffer unibyte while doing a work. Write - without code conversion. + (tar-copy): Set the buffer unibyte while doing a work. + Write without code conversion. (tar-expunge): Set the buffer unibyte while doing a work. (tar-alter-one-field): Likewise. (tar-clear-modification-flags): Compare byte position with @@ -8262,7 +8262,7 @@ 1998-11-15 Dave Love <fx@gnu.org> * progmodes/fortran.el: Fix previous change: - (fortran-end-prog-re1): Changed. + (fortran-end-prog-re1): Change. (fortran-check-end-prog-re): New function. (beginning-of-fortran-subprogram, end-of-fortran-subprogram): Use it. @@ -8281,15 +8281,15 @@ New options. (reftex-use-text-after-label-as-context): Option removed. (reftex-extract-bib-entries): Protect use in non-latex buffers. - (reftex-toc-visit-location): Renamed from `reftex-toc-visit-line'. + (reftex-toc-visit-location): Rename from `reftex-toc-visit-line'. (reftex-latin1-to-ascii): Works now with and without Mule. - (reftex-truncate): Removed special stuff for Emacs 20.2. + (reftex-truncate): Remove special stuff for Emacs 20.2. (reftex-get-offset): Made more general. - (reftex-show-label-location): Renamed from + (reftex-show-label-location): Rename from `reftex-select-label-callback'. (reftex-pop-to-label): Function removed (using `reftex-show-label-location' instead. - (reftex-insert-docstruct): Renamed from + (reftex-insert-docstruct): Rename from `reftex-make-and-insert-label-list'. Function args changed. (reftex-toc): Now uses `reftex-insert-docstruct' and `reftex-find-start-point'. @@ -8327,7 +8327,7 @@ 1998-11-11 Per Starbäck <starback@update.uu.se> - * ispell.el (ispell-dictionary-alist-2): Removed svenska, renamed + * ispell.el (ispell-dictionary-alist-2): Remove svenska, renamed svenska8 to svenska, and fixed and extended CASECHARS for it. 1998-11-11 Andrew Innes <andrewi@delysid.gnu.org> @@ -8338,8 +8338,8 @@ 1998-11-11 Kenichi Handa <handa@etl.go.jp> - * international/mule-util.el (compose-chars-component): Signal - error if CH is a rule-based composition character. + * international/mule-util.el (compose-chars-component): + Signal error if CH is a rule-based composition character. (compose-chars): Signal error if an already composed character is going to be composed by rule-base. @@ -8465,8 +8465,8 @@ 1998-11-04 Kenichi Handa <handa@etl.go.jp> - * international/quail.el (quail-show-guidance-buf): Call - set-minibuffer-window to set minibuffer window of the current + * international/quail.el (quail-show-guidance-buf): + Call set-minibuffer-window to set minibuffer window of the current frame correctly. 1998-11-03 Theodore Jump <tjump@tertius.com> @@ -8527,13 +8527,13 @@ 1998-10-30 Kenichi Handa <handa@etl.go.jp> - * international/quail.el (quail-start-translation): Handle - switching of the frame in read-key-sequence. + * international/quail.el (quail-start-translation): + Handle switching of the frame in read-key-sequence. (quail-start-conversion): Likewise. (quail-show-guidance-buf): Detach quail-guidance-buf from any windows before setting an appropriate window for it. - (quail-hide-guidance-buf): Use window-minibuffer-p. Set - quail-guidance-win to nil. + (quail-hide-guidance-buf): Use window-minibuffer-p. + Set quail-guidance-win to nil. (quail-update-guidance): If quail-guidance-buf is not in the selected frame, call quail-show-guidance-buf again. @@ -8565,14 +8565,14 @@ * emacs-lisp/eldoc.el (eldoc-argument-case): Fix customize type. - * emacs-lisp/lisp-mnt.el (lm-report-bug): Use - report-emacs-bug-address instead of undefined bug-gnu-emacs. + * emacs-lisp/lisp-mnt.el (lm-report-bug): + Use report-emacs-bug-address instead of undefined bug-gnu-emacs. - * international/mule-cmds.el (select-message-coding-system): Doc - fix. + * international/mule-cmds.el (select-message-coding-system): + Doc fix. - * international/mule-diag.el (describe-coding-system): Describe - all flags. + * international/mule-diag.el (describe-coding-system): + Describe all flags. * mail/sendmail.el (sendmail-coding-system) (default-sendmail-coding-system): Doc fix. @@ -8580,8 +8580,8 @@ * simple.el (shell-command-on-region): Doc fix. * loadup.el: Write fns-*.el in current directory instead of - data-directory since no installation directory exists yet. Mark - buffer unmodified afterwards. + data-directory since no installation directory exists yet. + Mark buffer unmodified afterwards. * loadhist.el (symbol-file): Load fns-*.el from exec-directory instead of data-directory since it is architecture dependent. @@ -8597,11 +8597,11 @@ 1998-10-27 Richard Stallman <rms@psilocin.ai.mit.edu> - * progmodes/tcl-mode.el (tcl-font-lock-keywords): Added itcl and + * progmodes/tcl-mode.el (tcl-font-lock-keywords): Add itcl and namespace related keywords such as `class', `body', `private', `variable', `namespace eval', etc. (tcl-imenu-generic-expression): Handle itcl body and class definitions. - (tcl-mode): Added ":" as a word constituent to the syntax-alist of + (tcl-mode): Add ":" as a word constituent to the syntax-alist of imenu and font-lock so that searches for \sw would find words containing colons. @@ -8730,9 +8730,9 @@ (profile-functions): Simplify. (profile-print): Use float. Make output include space separators. (profile-add-time): New helper function. - (profile-function-prolog): Renamed from profile-start-function. + (profile-function-prolog): Rename from profile-start-function. Handle profile-distinct. - (profile-function-epilog): Renamed from profile-update-function. + (profile-function-epilog): Rename from profile-update-function. Handle profile-distinct. (profile-a-function): If the function to be profiled is an autoload form, load it. If it's lazy-loaded, fetch it. @@ -8882,8 +8882,8 @@ 1998-10-14 Emilio Lopes <Emilio.Lopes@Physik.TU-Muenchen.DE> - * progmodes/fortran.el (fortran-join-line): Use - `delete-indentation' instead of issuing an error message if not on + * progmodes/fortran.el (fortran-join-line): + Use `delete-indentation' instead of issuing an error message if not on a continuation line. Provide for joining several lines using prefix arg. @@ -8916,7 +8916,7 @@ 1998-10-13 Geoff Voelker <voelker@cs.washington.edu> * ls-lisp.el (ls-lisp-use-insert-directory-program): New variable. - (ls-lisp-insert-directory): Renamed from insert-directory. + (ls-lisp-insert-directory): Rename from insert-directory. (insert-directory): New function. 1998-10-13 Richard Stallman <rms@psilocin.ai.mit.edu> @@ -9049,7 +9049,7 @@ 1998-10-06 Peter Breton <pbreton@ne.mediaone.net> - * generic.el (generic-mode-with-type): Added hooks for generic-modes. + * generic.el (generic-mode-with-type): Add hooks for generic-modes. * net-utils.el (ftp, nslookup): Require comint. (network-service-connection): Likewise. @@ -9059,7 +9059,7 @@ (whois-get-tld): New function. * dirtrack.el: Mentioned dirtrack-debug-toggle in the docs. - (dirtrack-debug-toggle): Added this function. + (dirtrack-debug-toggle): Add this function. 1998-10-06 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -9074,9 +9074,9 @@ * arc-mode.el (archive-mode-revert): Arg no-auto-save renamed from no-autosave. * tar-mode.el (tar-mode-revert): Likewise. - * ediff-util.el (ediff-arrange-auto-save-in-merge-jobs): Renamed - from ediff-arrange-autosave-in-merge-jobs. Callers changed. - * gnus/message.el (message-auto-save-directory): Renamed from + * ediff-util.el (ediff-arrange-auto-save-in-merge-jobs): + Rename from ediff-arrange-autosave-in-merge-jobs. Callers changed. + * gnus/message.el (message-auto-save-directory): Rename from message-autosave-directory. All references changed. 1998-10-06 Jonathan I. Kamens <jik@kamens.brookline.ma.us> @@ -9091,15 +9091,15 @@ * replace.el (perform-replace): Position point properly before and after the recursive edit of C-r. - * progmodes/etags.el (tags-reset-tags-tables): Properly - find the markers in the old rings that are being discarded. + * progmodes/etags.el (tags-reset-tags-tables): + Properly find the markers in the old rings that are being discarded. 1998-10-06 Markus Rost <markus.rost@mathematik.uni-regensburg.de> * apropos.el (apropos-print): Control invalid characters. * play/landmark.el (lm-font-lock-face-O, lm-font-lock-face-X): - Renamed from lm-font-lock-O-face, lm-font-lock-X-face to avoid + Rename from lm-font-lock-O-face, lm-font-lock-X-face to avoid confusing customize. 1998-10-06 Eli Zaretskii <eliz@mescaline.gnu.org> @@ -9109,12 +9109,12 @@ 1998-10-05 Simon Marshall <simon@gnu.org> - * menu-bar.el (menu-bar-tools-menu): Added entry for Speedbar. + * menu-bar.el (menu-bar-tools-menu): Add entry for Speedbar. 1998-10-04 Eric Ludlam <zappo@gnu.org> - * speedbar.el (speedbar-initial-expansion-list-name): Remove - customization since it is not useful in this case. + * speedbar.el (speedbar-initial-expansion-list-name): + Remove customization since it is not useful in this case. (speedbar-frame-mode): Check if cfx or cfy is a list, and make sure it gets evalled to a number. Also verify that set-frame-name fn exists before calling it. @@ -9133,8 +9133,8 @@ 1998-10-02 Dave Love <fx@gnu.org> - * outline.el (hide-region-body): Bind - outline-view-change-hook to nil while making repeated calls to + * outline.el (hide-region-body): + Bind outline-view-change-hook to nil while making repeated calls to outline-flag-region. Run it once at the end. (hide-other, hide-sublevels, show-children): Likewise. @@ -9240,8 +9240,8 @@ * textmodes/texinfo.el (texinfo-show-structure): Bind inhibit-read-only. - * isearch.el (isearch-search-and-update): Properly - handle upper case letters in the reverse-search special case. + * isearch.el (isearch-search-and-update): + Properly handle upper case letters in the reverse-search special case. 1998-09-25 Markus Rost <markus.rost@mathematik.uni-regensburg.de> @@ -9329,14 +9329,14 @@ whenever appt-mode-string has changed. (appt-add, appt-delete): Add autoload cookies. (appt-check): Catch errors from calling `diary'. - (appt-max-time): Renamed from max-time. + (appt-max-time): Rename from max-time. (appt-now-displayed, appt-display-count): New variables. (appt-timer): Don't create one if we already have one. * textmodes/tex-mode.el (tex-compilation-parse-errors): More general code to use the source buffer instead of the zap file. - * hilit-chg.el (highlight-compare-with-file): Renamed from + * hilit-chg.el (highlight-compare-with-file): Rename from compare-with-file. * loadhist.el (load-history-loaded): New variable. @@ -9368,9 +9368,9 @@ * emacs-lisp/eldoc.el (eldoc-message): Check for 1-arg case, and store string in eldoc-last-message without consing a new string. Rearrange logic from nested if's into cond's. - (eldoc-print-fnsym-args): Renamed to eldoc-get-fnsym-args-string. + (eldoc-print-fnsym-args): Rename to eldoc-get-fnsym-args-string. Do not print message; just return string. - (eldoc-get-var-docstring): Renamed from eldoc-print-var-docstring. + (eldoc-get-var-docstring): Rename from eldoc-print-var-docstring. Do not print message; just return string. Cache that string in eldoc-last-data. (eldoc-last-data): Make into a vector. @@ -9395,14 +9395,14 @@ * progmodes/vhdl-mode.el (vhdl-header-file): Fix customize type. - * progmodes/cpp.el (cpp-face-light-list, cpp-face-dark-list): Fix - customize type. + * progmodes/cpp.el (cpp-face-light-list, cpp-face-dark-list): + Fix customize type. * progmodes/cperl-mode.el (cperl-lazy-help-time): Fix customize type. - * progmodes/compile.el (compilation-error-screen-columns): New - variable. + * progmodes/compile.el (compilation-error-screen-columns): + New variable. (compilation-next-error-locus): Use it to decide whether to use forward-char or move-to-column. @@ -9419,8 +9419,8 @@ * startup.el (site-run-file): Fix customize type. - * speedbar.el (speedbar-initial-expansion-list-name): Fix - customize type. + * speedbar.el (speedbar-initial-expansion-list-name): + Fix customize type. * shell.el (shell-input-autoexpand): Fix customize type. @@ -9445,24 +9445,24 @@ 1998-09-16 Kenichi Handa <handa@etl.go.jp> - * international/mule-cmds.el (reset-language-environment): Call - update-coding-systems-internal. + * international/mule-cmds.el (reset-language-environment): + Call update-coding-systems-internal. * international/mule-conf.el: Call update-coding-systems-internal at the tail. 1998-09-14 Dave Love <fx@gnu.org> - * vc-hooks.el (vc-menu-map): Change the vc-directory label. Don't - use the menu-enable properties, pending doing it correctly and + * vc-hooks.el (vc-menu-map): Change the vc-directory label. + Don't use the menu-enable properties, pending doing it correctly and acceptably fast. * map-ynp.el (map-y-or-n-p): Mention RET, `q' in the help text. 1998-09-13 Dave Love <d.love@dl.ac.uk> - * progmodes/hideshow.el (hs-grok-mode-type): Check - comment-{start,end} non-nil as well as bound. Report an error if + * progmodes/hideshow.el (hs-grok-mode-type): + Check comment-{start,end} non-nil as well as bound. Report an error if we can't grok the mode. 1998-09-13 Richard Stallman <rms@gnu.org> @@ -9603,9 +9603,9 @@ (reftex-label-illegal-re): Default changed, removed Latin1. (reftex-latin1-to-ascii): New function. (reftex-what-environment): Check for section regexp before use. - (reftex-find-tex-file, reftex-find-bib-file): Fixed bug with + (reftex-find-tex-file, reftex-find-bib-file): Fix bug with absolute path names. - (reftex-TeX-master-file): Changed sequence of file checks. + (reftex-TeX-master-file): Change sequence of file checks. (reftex-do-citation): Bibview cache only with RefTeX mode on. 1998-09-06 Richard Stallman <rms@gnu.org> @@ -9679,7 +9679,7 @@ 1998-09-04 Peter Breton <pbreton@ne.mediaone.net> - * net-utils.el (netstat-program-options): Changed from nil to "-a" + * net-utils.el (netstat-program-options): Change from nil to "-a" so that by default netstat shows all network connections. 1998-09-04 Bob Weiner <weiner@altrasoft.com> @@ -9699,8 +9699,8 @@ 1998-09-03 Bill Richter <richter@brouwer.math.nwu.edu> - * international/quail.el (quail-choose-completion-string): Store - completion `choice' in `quail-current-str'; don't insert it. + * international/quail.el (quail-choose-completion-string): + Store completion `choice' in `quail-current-str'; don't insert it. 1998-09-02 Kenichi Handa <handa@etl.go.jp> @@ -9727,8 +9727,8 @@ 1998-09-01 Dave Love <fx@gnu.org> - * international/mule-cmds.el (current-language-environment): Fix - setter function. + * international/mule-cmds.el (current-language-environment): + Fix setter function. 1998-09-01 Simon Marshall <simon@gnu.org> @@ -9808,8 +9808,8 @@ * ange-ftp.el (ange-ftp-allow-child-lookup): Reinstate checking dired-local-variables-file for dired-x. - * emacs-lisp/find-func.el (find-function-search-for-symbol): Look - for compressed library files too. + * emacs-lisp/find-func.el (find-function-search-for-symbol): + Look for compressed library files too. 1998-08-26 Kenichi Handa <handa@etl.go.jp> @@ -9842,8 +9842,8 @@ 1998-08-26 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus/gnus-start.el (gnus-save-newsrc-file): Bind - coding-system-for-write before saving. + * gnus/gnus-start.el (gnus-save-newsrc-file): + Bind coding-system-for-write before saving. 1998-08-26 Kevin Rodgers <kevinr@ihs.com> (tiny change) @@ -9861,15 +9861,15 @@ * repeat.el (repeat): Doc fix. [From rms:] (repeat-previous-repeated-command): New variable. - (repeat): Check for real-last-command being null or repeat. Set - repeat-previous-repeated-command. + (repeat): Check for real-last-command being null or repeat. + Set repeat-previous-repeated-command. * browse-url.el (browse-url-netscape): Fix format for hex escapes. 1998-08-25 Kenichi Handa <handa@etl.go.jp> - * gnus/message.el (message-send-mail-with-sendmail): Bind - coding-system-for-write by the return value of + * gnus/message.el (message-send-mail-with-sendmail): + Bind coding-system-for-write by the return value of select-message-coding-system. (message-send-mail-with-qmail): Likewise. @@ -9904,7 +9904,7 @@ * ps-print.el: Add codes to make ps-print.el work also on Emacs 20.2 and the earlier version. - (ps-mule-encode-7bit, ps-mule-encode-8bit): Modified for 20.2. + (ps-mule-encode-7bit, ps-mule-encode-8bit): Modify for 20.2. (ccl-encode-ethio-unicode, ps-mule-encode-ethiopic): Likewise. (ps-mule-find-wrappoint): Likewise. (ps-mule-generate-font): Change `X' to `x' in format control-string. @@ -9940,8 +9940,8 @@ New vars. (ps-mule-plot-rule-cmpchar, ps-mule-plot-cmpchar) (ps-mule-prepare-cmpchar-font): New funs. - (ps-mule-bitmap-prologue-generated, ps-mule-bitmap-prologue): New - vars. + (ps-mule-bitmap-prologue-generated, ps-mule-bitmap-prologue): + New vars. (ps-mule-generate-bitmap-prologue, ps-mule-generate-bitmap-font) (ps-mule-generate-bitmap-glyph): New funs. (ps-mule-initialize, ps-mule-begin): New funs. @@ -9963,10 +9963,10 @@ 1998-08-23 Kenichi HANDA <handa@etl.go.jp> - * international/mule-cmds.el (select-message-coding-system): New - function. - (set-language-environment-coding-systems): Set - default-sendmail-coding-system. + * international/mule-cmds.el (select-message-coding-system): + New function. + (set-language-environment-coding-systems): + Set default-sendmail-coding-system. * mail/sendmail.el (sendmail-coding-system): Doc-string modified. (default-sendmail-coding-system): New variable. diff --git a/lisp/ChangeLog.9 b/lisp/ChangeLog.9 index 1d4fa7f4013..5832e6e7c83 100644 --- a/lisp/ChangeLog.9 +++ b/lisp/ChangeLog.9 @@ -49,7 +49,7 @@ This avoids a call to eshell-file-attributes, which can be expensive in some situations. - * eshell/em-ls.el (eshell-ls-dired-initial-args): Added an extra + * eshell/em-ls.el (eshell-ls-dired-initial-args): Add an extra customization variable, to differentiate ls-in-dired from regular uses of ls. @@ -404,7 +404,7 @@ tcl-end-of-defun, tcl-submit-bug-report. (tcl-xemacs-menu): Fix up and pass it directly to easymenu. (tcl-add-emacs-menu): Remove. - (tcl-fill-mode-map, tcl-fill-inferior-map): Moved into the defvar. + (tcl-fill-mode-map, tcl-fill-inferior-map): Move into the defvar. (tcl-keyword-list): Add `chain'. (tcl-font-lock-syntactic-keywords): New variable. (tcl-pps-has-arg-6): Remove. @@ -414,14 +414,14 @@ (tcl-mode): Use define-derived-mode. Simplify. Set comment-indent-function. (tcl-indent-command): Use line-beginning-position and comment-indent. - (tcl-calculate-indent): Renamed from calculate-tcl-indent. + (tcl-calculate-indent): Rename from calculate-tcl-indent. (tcl-indent-line): Use tcl-calculate-indent. - (tcl-indent-exp): Renamed from indent-tcl-exp. Use new names. - (tcl-add-log-defun): Renamed from add-log-tcl-defun. Use match-string. + (tcl-indent-exp): Rename from indent-tcl-exp. Use new names. + (tcl-add-log-defun): Rename from add-log-tcl-defun. Use match-string. (tcl-filter): Use with-current-buffer, simplify. (inferior-tcl-mode): Use define-derived-mode. - (tcl-hairy-in-comment): Renamed tcl-in-comment. - (tcl-simple-in-comment, tcl-in-comment): Removed. + (tcl-hairy-in-comment): Rename tcl-in-comment. + (tcl-simple-in-comment, tcl-in-comment): Remove. (tcl-files-alist): New function. (tcl-help-snarf-commands): Use it and return the result directly rather than through a global variable. @@ -493,7 +493,7 @@ (view-lossage): Call `help-setup-xref' instead of doing it manually. * subr.el (symbol-file-load-history-loaded) - (load-symbol-file-load-history, symbol-file): Moved from `help.el'. + (load-symbol-file-load-history, symbol-file): Move from `help.el'. * loadup.el ("button"): Load removed. @@ -556,7 +556,7 @@ * woman.el (woman-mode-map): Copy button-buffer-map instead of making a new keymap. Don't bind mouse-2. Bind M-mouse-2 to `woman-follow-word' instead of `woman-mouse-2'. - (woman-follow-word): Renamed from `woman-mouse-2'. + (woman-follow-word): Rename from `woman-mouse-2'. Follow current unconditionally, since this function is now only bound to M-mouse-2. Use accessor functions. (WoMan-highlight-references): Use `make-text-button'. @@ -912,7 +912,7 @@ * calculator.el (calculator-copy-displayer): New user-option. (calculator-displayer-prev, calculator-displayer-next): - Renamed from calculator-displayed-{left,right}. + Rename from calculator-displayed-{left,right}. (calculator, calculator-standard-displayer) (calculator-num-to-string, calculator-update-display) (calculator-copy, calculator-put-value): Bug and display fixes. @@ -974,8 +974,8 @@ Use make-keymap instead of copy-keymap, since copying the global keymap messes up the menu bar. - * info.el (Info-goto-node, Info-menu): Doc fix. Suggested by - Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>. + * info.el (Info-goto-node, Info-menu): Doc fix. + Suggested by Roland Winkler <Roland.Winkler@physik.uni-erlangen.de>. 2001-09-21 Eli Zaretskii <eliz@is.elta.co.il> @@ -1074,8 +1074,8 @@ * mail/rmail.el (top-level): Require mule-utils when compiling. (rmail-decode-babyl-format): Use detect-coding-with-priority instead of detect-coding-region, to favor detection of emacs-mule - encoded Babyl files written by rmailout.el etc. Suggested by - Kenichi Handa <handa@etl.go.jp>. + encoded Babyl files written by rmailout.el etc. + Suggested by Kenichi Handa <handa@etl.go.jp>. 2001-09-14 Eli Zaretskii <eliz@is.elta.co.il> @@ -1183,7 +1183,7 @@ 2001-09-07 Gerd Moellmann <gerd@gnu.org> * isearch.el (isearch-intersects-p): New function. - (isearch-close-unnecessary-overlays): Renamed from *unecessary*, + (isearch-close-unnecessary-overlays): Rename from *unecessary*, use isearch-intersects-p, and clean up. 2001-09-07 Eli Zaretskii <eliz@is.elta.co.il> @@ -1215,7 +1215,7 @@ * emacs-lisp/edebug.el (edebug-window-live-p): Use get-window-with-predicate. - * window.el (get-window-with-predicate): Renamed from some-window. + * window.el (get-window-with-predicate): Rename from some-window. (some-window): Make it an alias. 2001-09-06 Gerd Moellmann <gerd@gnu.org> @@ -1326,7 +1326,7 @@ 2001-08-31 Gerd Moellmann <gerd@gnu.org> - * isearch.el (isearch-mouse-2): Renamed from isearch-mouse-yank. + * isearch.el (isearch-mouse-2): Rename from isearch-mouse-yank. Instead of running mouse-yank-at-click, see what the event is bound to outside Isearch and run that. @@ -1584,8 +1584,8 @@ 2001-08-20 Gerd Moellmann <gerd@gnu.org> - * textmodes/texnfo-upd.el (texinfo-every-node-update): Remove - some spaces from a message. From Pavel JanÃk <Pavel@Janik.cz>. + * textmodes/texnfo-upd.el (texinfo-every-node-update): + Remove some spaces from a message. From Pavel JanÃk <Pavel@Janik.cz>. * whitespace.el (whitespace-global-mode): Add autoload cookie. @@ -1665,7 +1665,7 @@ * Makefile.in (DONTCOMPILE): Remove sc.el. - * Makefile.in (finder_setwins): Renamed from nonobsolete_setwins. + * Makefile.in (finder_setwins): Rename from nonobsolete_setwins. Don't include term/. * mail/sc.el: Moved to obsolete/. @@ -1745,7 +1745,7 @@ * calendar/calendar.el (calendar-mode-line-format): Use make-mode-line-mouse-map instead of make-mode-line-mouse2-map. - * bindings.el (make-mode-line-mouse-map): Renamed from + * bindings.el (make-mode-line-mouse-map): Rename from make-mode-line-mouse2-map. Take additional arg MOUSE. (mode-line-modified): Use mouse-3 instead of mouse-2. (mode-line-buffer-identification-keymap): Bind keys differently. @@ -1842,9 +1842,9 @@ * uniquify.el (uniquify-ref-base, uniquify-ref-filename) (uniquify-ref-buffer, uniquify-ref-proposed): New functions. (uniquify-fix-item-base, uniquify-fix-item-filename) - (uniquify-fix-item-buffer, uniquify-fix-item-proposed): Deleted. + (uniquify-fix-item-buffer, uniquify-fix-item-proposed): Delete. Callers changed. - (uniquify-set-proposed): Changed to work with a vector item. + (uniquify-set-proposed): Change to work with a vector item. (uniquify-rationalize-file-buffer-names): Use a list of arrays for the fix list, and a list of strings for the non-file buffer names. Both changes reduce consing. @@ -1880,7 +1880,7 @@ * uniquify.el: These changes correct a corner case that the old code managed correctly. - (uniquify-fix-item-proposed): Renamed from + (uniquify-fix-item-proposed): Rename from uniquify-fix-item-min-proposed. (uniquify-set-proposed): New function. (uniquify-rationalize-file-buffer-names): Code reshuffled for @@ -1946,7 +1946,7 @@ 2001-07-27 Gerd Moellmann <gerd@gnu.org> * emacs-lisp/lisp-mode.el (last-sexp-setup-props): New function. - (last-sexp-toggle-display): Renamed from last-sexp-print. + (last-sexp-toggle-display): Rename from last-sexp-print. (last-sexp-toggle-display, eval-last-sexp-1): Use last-sexp-setup-props. @@ -1978,8 +1978,8 @@ * emacs-lisp/lisp-mode.el (eval-print-last-sexp, eval-defun): Mention the effect of eval-expression-print-length and - eval-expression-print-level in the doc strings. Suggested by - Kevin Gallagher <kevingal@onramp.net>. + eval-expression-print-level in the doc strings. + Suggested by Kevin Gallagher <kevingal@onramp.net>. 2001-07-25 Gerd Moellmann <gerd@gnu.org> @@ -2013,7 +2013,7 @@ * uniquify.el: Overall speedup changes when using many buffers. (uniquify-fix-item-base, uniquify-fix-item-filename) - (uniquify-fix-item-buffer): Changed defmacro to defalias (cosmetic). + (uniquify-fix-item-buffer): Change defmacro to defalias (cosmetic). (uniquify-fix-item-unrationalized-buffer): Deleted: was the fourth place in the item, but was never used. (uniquify-fix-item-min-proposed): New defalias: the fourth place @@ -2026,7 +2026,7 @@ of buffer whose name was changed, but that return value was never used. (uniquify-item-lessp): Replaces uniquify-filename-lessp, works on the cached proposed name, does much less consing and is quicker. - (uniquify-filename-lessp): Deleted. + (uniquify-filename-lessp): Delete. (uniquify-rationalize-a-list): Use dolist (cosmetic change). Do not bind locally the uniquify-possibly-resolvable flag. Use the cached proposed name is possible. @@ -2075,7 +2075,7 @@ with-syntax-table. (ediff-coding-system-for-read): From ediff-diff.el. (ediff-coding-system-for-write): New variable. - (ediff-highest-priority): Fixed the bug having to do with disappearing + (ediff-highest-priority): Fix the bug having to do with disappearing overlays. (ediff-file-remote-p): Use file-remote-p, if available. (ediff-listable-file): New function. @@ -2088,8 +2088,8 @@ Use ediff-coding-system-for-read. (ediff-patch-file-internal): Use ediff-coding-system-for-write. - * ediff-diff.el (ediff-coding-system-for-read): Moved to ediff-init.el. - (ediff-match-diff3-line, ediff-get-diff3-group): Improved pattern. + * ediff-diff.el (ediff-coding-system-for-read): Move to ediff-init.el. + (ediff-match-diff3-line, ediff-get-diff3-group): Improve pattern. * ediff.el: Date of last update, copyright years. @@ -2099,8 +2099,8 @@ of Scott Bronson. (ex-cmd-assoc, ex-compile, ex-cmd-one-letr): New functions. (viper-check-sub, viper-get-ex-command, viper-execute-ex-command): - Deleted functions. - (viper-get-ex-com-subr, viper-ex, ex-mark): Changed to use the new + Delete functions. + (viper-get-ex-com-subr, viper-ex, ex-mark): Change to use the new ex-token-list. (viper-get-ex-address-subr): Convert registers to char data type. @@ -2111,7 +2111,7 @@ (viper-read-key): Use viper-read-key-sequence. * viper.el (viper-major-mode-modifier-list): - Added inferior-emacs-lisp-mode. + Add inferior-emacs-lisp-mode. (this-major-mode-requires-vi-state): New function that uses simple heuristics to decide if vi state is appropriate. (set-viper-state-in-major-mode): Use this-major-mode-requires-vi-state. @@ -2212,9 +2212,9 @@ * progmodes/tcl.el (tcl-fill-mode-map): Use tcl-indent-exp. (tcl-mode): Use tcl-add-log-defun. (tcl-indent-line): Use tcl-calculate-indent. - (tcl-calculate-indent): Renamed from calculate-tcl-indent. - (tcl-indent-exp): Renamed from indent-tcl-exp. - (tcl-add-log-defun): Renamed from add-log-tcl-defun. + (tcl-calculate-indent): Rename from calculate-tcl-indent. + (tcl-indent-exp): Rename from indent-tcl-exp. + (tcl-add-log-defun): Rename from add-log-tcl-defun. (tcl-indent-for-comment): Call comment-indent-function properly and handle the case where it returns nil. @@ -2251,7 +2251,7 @@ * mouse-sel.el (mouse-sel-bindings): Instead of unbinding mouse-1 etc., bind them to `ignore'. - * eshell/esh-mode.el (eshell-send-invisible): Renamed from + * eshell/esh-mode.el (eshell-send-invisible): Rename from send-invisible, which is already defined in Comint. (eshell-watch-for-password-prompt): Use it. @@ -2518,11 +2518,11 @@ 2001-07-11 Stefan Monnier <monnier@cs.yale.edu> - * vc.el (vc-prefix-map): Moved back to vc-hooks.el. + * vc.el (vc-prefix-map): Move back to vc-hooks.el. (vc-dired-mode-map): Fix the madness. * vc-hooks.el (vc-mode): Dummy function for doc purposes. - (vc-prefix-map): Moved back from vc.el. + (vc-prefix-map): Move back from vc.el. 2001-07-11 Gerd Moellmann <gerd@gnu.org> @@ -2554,7 +2554,7 @@ * startup.el (normal-top-level): Don't operate on the initial frame if we failed to create one. -2001-07-10 Martin Stjernholm <bug-cc-mode@gnu.org> +2001-07-10 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-indent-exp): Keep the indentation of the block itself, i.e. only indent the contents in it. @@ -2586,7 +2586,7 @@ * toolbar/*.pbm: Cleaned up. From Luis Fernandes <elf@ee.ryerson.ca>. -2001-07-09 Martin Stjernholm <bug-cc-mode@gnu.org> +2001-07-09 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el: Extended the kludge to interoperate with the delsel and pending-del packages wrt to the new function @@ -3115,7 +3115,7 @@ 2001-05-28 Miles Bader <miles@gnu.org> - * comint.el (comint-carriage-motion): Renamed from + * comint.el (comint-carriage-motion): Rename from `comint-cr-magic'. Operate on the buffer instead of the string (for use as a comint post-output filter, instead of as a pre-output filter). Handle backspaces too. Add to the @@ -3226,7 +3226,7 @@ 2001-05-21 Stefan Monnier <monnier@cs.yale.edu> * diff-mode.el (diff-jump-to-old-file, diff-update-on-the-fly): - Renamed by removing the silly `-flag' suffix. + Rename by removing the silly `-flag' suffix. (diff-mode, diff-minor-mode, diff-find-source-location): Update. 2001-05-20 Stefan Monnier <monnier@cs.yale.edu> @@ -3313,7 +3313,7 @@ 2001-05-18 Simon Josefsson <simon@josefsson.org> - * mail/smtpmail.el (maybe-append-domain): Renamed to + * mail/smtpmail.el (maybe-append-domain): Rename to `smtpmail-maybe-append-domain'. (smtpmail-via-smtp): Use the new name. @@ -3501,13 +3501,13 @@ 2001-05-08 John Wiegley <johnw@gnu.org> * calendar/timeclock.el (timeclock-workday-remaining): - Changed logic for determining how much time is remaining. + Change logic for determining how much time is remaining. (timeclock-workday-elapsed): Don't accept a "relative" argument for the current day's elapsed time. What could that have meant? (timeclock-workday-elapsed-string): No "relative" argument anymore. - (timeclock-when-to-leave): Changed logic, similarly to what was + (timeclock-when-to-leave): Change logic, similarly to what was done for `timeclock-workday-remaining'. - (timeclock-find-discrep): Removed "today-only" argument, which had + (timeclock-find-discrep): Remove "today-only" argument, which had no meaning. Fixed some more math problems. The function now returns a three member list: (TOTAL-TIME-DISCREPANCY TODAYS-TIME-DISCREPANCY TODAYS-ELAPSED-TIME). @@ -3601,10 +3601,10 @@ * mail/rmail.el (rmail-mode-map): Use rmail-sort-by-labels instead of rmail-sort-by-keywords. - * mail/rmailsort.el (rmail-sort-by-labels): Renamed from + * mail/rmailsort.el (rmail-sort-by-labels): Rename from rmail-sort-by-keywords. - * mail/rmailsum.el (rmail-summary-sort-by-labels): Renamed from + * mail/rmailsum.el (rmail-summary-sort-by-labels): Rename from rmail-summary-sort-by-keywords. Doc fix. (rmail-summary-mode): Doc fix. @@ -3626,15 +3626,15 @@ * progmodes/cperl-mode.el (cperl-font-lock-keywords) (cperl-font-lock-keywords-1, cperl-font-lock-keywords-2): - Renamed from perl-font-lock-keywords to avoid clashes. + Rename from perl-font-lock-keywords to avoid clashes. (cperl-mode, cperl-load-font-lock-keywords, cperl-init-faces) (cperl-load-font-lock-keywords-1, cperl-load-font-lock-keywords-2): - Updated correspondingly. + Update correspondingly. * diff-mode.el (diff-nonexistent-face, diff-font-lock-keywords): Typo `nonexistant' -> `nonexistent'. -2001-05-04 Martin Stjernholm <bug-cc-mode@gnu.org> +2001-05-04 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-electric-delete, c-electric-delete-forward): Split `c-electric-delete' into two functions where @@ -3644,7 +3644,7 @@ * progmodes/cc-mode.el: `c-electric-delete-forward' is now bound to C-d to get the electric behavior on that key too. - (c-fill-paragraph): Fixed bogus direct use of + (c-fill-paragraph): Fix bogus direct use of c-comment-prefix-regexp, which caused an error when it's a list. 2001-05-03 Eli Zaretskii <eliz@is.elta.co.il> @@ -3785,7 +3785,7 @@ 2001-04-23 John Wiegley <johnw@gnu.org> - * eshell/em-unix.el (eshell/diff): Fixed problems that were + * eshell/em-unix.el (eshell/diff): Fix problems that were occurring with Emacs 21's diff.el/compile.el interaction layer. 2001-04-23 Colin Walters <walters@cis.ohio-state.edu> @@ -3796,28 +3796,28 @@ 2001-04-23 John Wiegley <johnw@gnu.org> - * eshell/em-smart.el (eshell-smart-redisplay): Added some safety + * eshell/em-smart.el (eshell-smart-redisplay): Add some safety code to work around a redisplay problem I've been having. 2001-04-23 John Wiegley <johnw@gnu.org> * calendar/timeclock.el (timeclock-day-required): If the time required for a particular day is not set, use `timeclock-workday'. - (timeclock-find-discrep): Added some sample code in a comment. + (timeclock-find-discrep): Add some sample code in a comment. * eshell/eshell.el (eshell-command): Made a few changes so that `eshell-command' could be called programmatically. - * eshell/esh-mode.el (eshell-non-interactive-p): Moved to eshell.el. + * eshell/esh-mode.el (eshell-non-interactive-p): Move to eshell.el. - * eshell/eshell.el (eshell-non-interactive-p): Moved from esh-mode.el. + * eshell/eshell.el (eshell-non-interactive-p): Move from esh-mode.el. 2001-04-23 John Wiegley <johnw@gnu.org> * calendar/timeclock.el: Updated copyright. (timeclock-generate-report): Don't report the daily or two-week total, if no time has been worked in that period. - (timeclock-find-discrep): Moved call to `file-readable-p'; removed + (timeclock-find-discrep): Move call to `file-readable-p'; removed final computational form, which was unnecessary; corrected a parsing problem when timeclock-relative was nil. @@ -3876,7 +3876,7 @@ 2001-04-20 Alex Schroeder <alex@gnu.org> - * sql.el (sql-mode-menu): Added highlighting entries. + * sql.el (sql-mode-menu): Add highlighting entries. (sql-highlight-oracle-keywords): New function. (sql-highlight-postgres-keywords): New function. (sql-highlight-ansi-keywords): New function. @@ -3887,7 +3887,7 @@ 2001-04-19 Karl Fogel <kfogel@collab.net> - * saveplace.el (save-place-alist-to-file): Removed no-effect code + * saveplace.el (save-place-alist-to-file): Remove no-effect code that inserted file content only to delete it immediately. Probably a cut-and-paste bug. Thanks to Juanma Barranquero <lektu@terra.es> for the patch. @@ -3914,7 +3914,7 @@ * language/slovak.el ("Slovak"): Add tutorial entry. - * net/browse-url.el (browse-url-new-window-flag): Renamed from + * net/browse-url.el (browse-url-new-window-flag): Rename from browse-url-new-window-p. 2001-04-17 Eli Zaretskii <eliz@is.elta.co.il> @@ -3933,13 +3933,13 @@ 2001-04-17 Eli Zaretskii <eliz@is.elta.co.il> * vc-cvs.el (vc-cvs-print-log, vc-cvs-diff): Don't invoke CVS as - an async subprocess if start-process is unavailable. Suggested by - Tim Van Holder <tim.van.holder@pandora.be>. + an async subprocess if start-process is unavailable. + Suggested by Tim Van Holder <tim.van.holder@pandora.be>. 2001-04-15 Eli Zaretskii <eliz@is.elta.co.il> - * info.el (Info-additional-directory-list): Doc fix. Suggested by - Kai Großjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>. + * info.el (Info-additional-directory-list): Doc fix. + Suggested by Kai Großjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>. 2001-04-14 Eli Zaretskii <eliz@is.elta.co.il> @@ -4053,7 +4053,7 @@ 2001-04-10 John Wiegley <johnw@gnu.org> - * calendar/timeclock.el (timeclock-generate-report): Added a + * calendar/timeclock.el (timeclock-generate-report): Add a missing insert of the project name. 2001-04-09 Gerd Moellmann <gerd@gnu.org> @@ -4445,37 +4445,37 @@ * mail/sendmail.el (sendmail-send-it): Don't parse Resent-* headers. Always invoke sendmail with option -t. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * Release of cc-mode 5.28. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-mode.el, progmodes/cc-vars.el (c-common-init) (c-default-style): - Removed the hardcoded switch to "java" style in Java mode. + Remove the hardcoded switch to "java" style in Java mode. It's instead taken care of by the default value for c-default-style. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-align.el (c-lineup-math): Fix bug where lineup was triggered by equal signs in string literals. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-cmds.el (c-fill-paragraph): Fixed bug in the paragraph + * progmodes/cc-cmds.el (c-fill-paragraph): Fix bug in the paragraph limit detection when at the ends of the buffer. - * progmodes/cc-engine.el (c-guess-basic-syntax): Removed bogus check for + * progmodes/cc-engine.el (c-guess-basic-syntax): Remove bogus check for "for" statement clause in case 7F; a better one is done earlier in case 7D anyway. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-cmds.el (c-guess-fill-prefix): Improved the heuristics + * progmodes/cc-cmds.el (c-guess-fill-prefix): Improve the heuristics somewhat more and did a small optimization. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-beginning-of-statement, c-end-of-statement): Use the limit argument only to limit the syntactic context @@ -4486,7 +4486,7 @@ fixes to the paragraph and comment prefix recognition, block comment ender handling etc. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-fill-paragraph): Take more care to preserve the relative position of the point. @@ -4505,12 +4505,12 @@ this doesn't apply to idl-mode, since IDL afaik doesn't have statements at all.) -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-inside-bracelist-p): Fix for handling bracelists where the declaration contains template arguments. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-comment-indent): Use `c-get-syntactic-indentation' to correctly calculate the @@ -4521,10 +4521,10 @@ indentation sum calculation from `c-indent-line' to a separate function. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-beginning-of-statement, c-comment-indent): - Fixed places where it was assumed that preprocessor directives + Fix places where it was assumed that preprocessor directives have to start in column zero. * progmodes/cc-engine.el (c-beginning-of-member-init-list): Handle C++ @@ -4536,7 +4536,7 @@ they'll get indented consistently with the same type of expression in a normal block. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-fill-paragraph): The kludge that checks whether the adaptive filling package fails to keep the comment @@ -4548,18 +4548,18 @@ * progmodes/cc-cmds.el (c-fill-paragraph): Made the way the paragraph around point is recognized more robust. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el, progmodes/cc-engine.el: * progmodes/cc-lobotomy.el (c-state-cache) (c-in-literal-cache, c-auto-fill-prefix, c-lit-limits) - (c-lit-type): Fixed all internal variables used dynamically so + (c-lit-type): Fix all internal variables used dynamically so that they are always bound. * progmodes/cc-cmds.el, progmodes/cc-engine.el: Improve recovery of syntactic errors: - (c-indent-region): Fixed reporting of syntactic errors so that + (c-indent-region): Fix reporting of syntactic errors so that the region is fully reindented even when an error occurs. The last syntactic error is printed afterwards. Also cleanup up a whole lot of code that tried to optimize indentation of whole @@ -4567,7 +4567,7 @@ (c-indent-sexp): Use c-indent-region. - (c-parsing-error): Changed this variable to hold the message + (c-parsing-error): Change this variable to hold the message for any syntactic error that is discovered. (c-parse-state): Search backward from point instead of the bod @@ -4578,16 +4578,16 @@ dangling "else" clauses instead of throwing an error, and fall back to a reasonable position. - (c-indent-line): Added argument to avoid reporting syntactic errors. + (c-indent-line): Add argument to avoid reporting syntactic errors. (c-show-syntactic-information): Don't report any syntactic errors. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-cmds.el (c-beginning-of-statement): Fixed bugs with + * progmodes/cc-cmds.el (c-beginning-of-statement): Fix bugs with paragraph recognition when moving by sentence in literals. - * progmodes/cc-langs.el (c-Java-javadoc-paragraph-start): Modified + * progmodes/cc-langs.el (c-Java-javadoc-paragraph-start): Modify paragraph start regexp for javadoc to recognize javadoc markup in general instead of a specific set of keywords, to be more future-safe. @@ -4610,24 +4610,24 @@ (c-current-comment-prefix): New variable containing the actual regexp from c-comment-prefix-regexp for the current buffer. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-cmds.el (c-electric-brace): Fixed check for special brace + * progmodes/cc-cmds.el (c-electric-brace): Fix check for special brace lists: We can't look at the syntax, since a brace list can get recognized as a plain statement-cont. - * progmodes/cc-engine.el (c-guess-basic-syntax): Fixed bug where a + * progmodes/cc-engine.el (c-guess-basic-syntax): Fix bug where a special brace list opener broken over two lines got recognized as a statement on the second line. Case 9A changed. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-cmds.el (c-electric-brace): Fixed bug in c-state-cache + * progmodes/cc-cmds.el (c-electric-brace): Fix bug in c-state-cache adjustment after line is reindented. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-defs.el (c-point): Added optional argument for position + * progmodes/cc-defs.el (c-point): Add optional argument for position to use instead of the current point. * progmodes/cc-defs.el, progmodes/cc-engine.el (c-add-class-syntax): @@ -4635,7 +4635,7 @@ starts at boi, to avoid the extra level of indentation in that case. Cases 4, 16A and 17E affected. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el: Use `indent-according-to-mode' instead of direct calls to `c-indent-line', to adhere better to Emacs conventions. @@ -4643,17 +4643,17 @@ * progmodes/cc-engine.el (c-indent-line): Use the syntax already bound to `c-syntactic-context', if there is any. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-engine.el (c-get-offset): Fixed bug where the indentation + * progmodes/cc-engine.el (c-get-offset): Fix bug where the indentation wasn't added up correctly when a lineup function returned nil. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-engine.el (c-collect-line-comments): Fixed bug where + * progmodes/cc-engine.el (c-collect-line-comments): Fix bug where empty lines were ignored when collecting line comments backwards. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-align.el (c-lineup-dont-change): Return an absolute indentation column to work correctly in the case when several @@ -4662,17 +4662,17 @@ * progmodes/cc-engine.el, progmodes/cc-styles.el: * progmodes/cc-vars.el (c-evaluate-offset) (c-get-offset, c-indent-line, c-valid-offset, c-read-offset) - (c-set-offset): Added absolute indentation column settings by + (c-set-offset): Add absolute indentation column settings by using the vector type. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el, progmodes/cc-vars.el (c-electric-paren, c-cleanup-list): Implemented two new cleanups `space-before-funcall' and `compact-empty-funcall'. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-defs.el (c-paren-re, c-identifier-re): Two new macros for helping building regexps. @@ -4684,32 +4684,32 @@ complete keyword lists. `c-keywords' is set to a regexp matching all keywords in the current language. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-engine.el (c-beginning-of-statement-1): Added '#' to the + * progmodes/cc-engine.el (c-beginning-of-statement-1): Add '#' to the list of characters to skip backwards over at the beginning of a statement, since it can precede string literals in Pike. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-cmds.el (c-guess-fill-prefix): Fixed bug with prefix + * progmodes/cc-cmds.el (c-guess-fill-prefix): Fix bug with prefix recognition when standing on the last line in a C++ comment with nothing but whitespace after the prefix. - * progmodes/cc-engine.el (c-backward-to-start-of-if): Fixed bug when + * progmodes/cc-engine.el (c-backward-to-start-of-if): Fix bug when given no limit argument. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-engine.el (c-inside-bracelist-p): Fixed brace list + * progmodes/cc-engine.el (c-inside-bracelist-p): Fix brace list recognition for the `[]= operator symbol in Pike. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-bytecomp.el (cc-eval-when-compile): New macro that works around a bug in `eval-when-compile' in the byte compiler. - * progmodes/cc-engine.el (c-forward-token-1): Fixed bug with return + * progmodes/cc-engine.el (c-forward-token-1): Fix bug with return value when count is zero and there's no token start within the limit. (c-guess-basic-syntax): Don't add 'comment-intro to lines with @@ -4719,12 +4719,12 @@ * progmodes/cc-mode-19.el: Fixes so that checks that must be done at compile time also are done then. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-defs.el: Make sure cc-mode-19 is loaded both at compile time and at runtime, and only when it's needed. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> Major cleanup for less error prone and more warning free compilation, including some fixes for bugs due to different @@ -4757,7 +4757,7 @@ README: Updated installation instructions. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el, progmodes/cc-langs.el, progmodes/cc-mode.el: Moved around things to improve the modularity: @@ -4766,11 +4766,11 @@ the various variables for configuring the language syntax. * progmodes/cc-engine.el, progmodes/cc-styles.el (c-evaluate-offset) - (c-get-offset): Moved from cc-styles to cc-engine since file + (c-get-offset): Move from cc-styles to cc-engine since file dependency analysis suggests they belong there (which also makes more sense). Thanks to Martin Buchholz for doing the analysis. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-fn-region-is-active-p): New function that wraps the corresponding macro, for use in places that aren't @@ -4781,19 +4781,19 @@ * progmodes/cc-mode.el (c-prepare-bug-report-hooks): Hook variable to add things to the bug report. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-cmds.el (c-guess-fill-prefix): Fixed bug where the + * progmodes/cc-cmds.el (c-guess-fill-prefix): Fix bug where the returned prefix could contain a newline when the search for a good prefix line failed. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-toggle-auto-state, c-toggle-hungry-state) (c-toggle-auto-hungry-state): Made the argument optional, as the documentation says it is. -2000-03-21 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-03-21 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-guess-basic-syntax): Don't treat the Pike multiline string syntax, #"...", as a cpp macro. @@ -4871,8 +4871,8 @@ of Scott Bronson. (ex-cmd-assoc, ex-cmd-one-letr): New functions. (viper-check-sub, viper-get-ex-command, viper-execute-ex-command): - Deleted functions. - (viper-get-ex-com-subr, viper-ex, ex-mark): Changed to use the new + Delete functions. + (viper-get-ex-com-subr, viper-ex, ex-mark): Change to use the new ex-token-list. * viper-util.el: Spaces, indentation. @@ -4886,9 +4886,9 @@ 2001-03-16 John Wiegley <johnw@gnu.org> - * calendar/timeclock.el (timeclock-reread-log): Fixed problem with + * calendar/timeclock.el (timeclock-reread-log): Fix problem with first-time checkins. - (timeclock-log-data): Fixed problem with reading timelog log file. + (timeclock-log-data): Fix problem with reading timelog log file. Resulting data in the "day list" was incorrect. (timeclock-find-discrep): Check if `timeclock-file' is readable before opening it. @@ -5023,7 +5023,7 @@ 2001-03-09 Gerd Moellmann <gerd@gnu.org> - * help.el (string-key-binding): Renamed from + * help.el (string-key-binding): Rename from mode-line-key-binding. Handle any event on a string. Check for `keymap' properties as well as `local-map' properties. @@ -5074,7 +5074,7 @@ 2001-03-07 Stefan Monnier <monnier@cs.yale.edu> * log-edit.el (log-edit-common-indent): New var. - (log-edit-set-common-indentation): Renamed from + (log-edit-set-common-indentation): Rename from log-edit-delete-common-indentation. Use the new var. (log-edit-insert-changelog, log-edit-done-hook): Use the new name. @@ -5405,8 +5405,8 @@ * startup.el (fancy-splash-screens): Use display-hourglass instead of display-busy-cursor. - * frame.el (display-hourglass): Renamed from busy-cursor. - (hourglass-delay): Renamed from busy-cursor-delay-seconds. + * frame.el (display-hourglass): Rename from busy-cursor. + (hourglass-delay): Rename from busy-cursor-delay-seconds. (show-cursor-in-non-selected-windows): Doc fix. 2001-02-20 Dave Love <fx@gnu.org> @@ -5557,9 +5557,9 @@ 2001-02-12 Michael Kifer <kifer@cs.sunysb.edu> - * ediff-diff.el (ediff-make-diff2-buffer): Removed bogus checks + * ediff-diff.el (ediff-make-diff2-buffer): Remove bogus checks for remote files. - (ediff-coding-system-for-read): Replaced the no-conversion default + (ediff-coding-system-for-read): Replace the no-conversion default with raw-text. * ediff-init.el: Removed :version from defcustom vars. @@ -5720,7 +5720,7 @@ 2001-02-06 Gerd Moellmann <gerd@gnu.org> - * dabbrev.el (dabbrev-ignored-buffer-regexps): Renamed from + * dabbrev.el (dabbrev-ignored-buffer-regexps): Rename from dabbrev-ignored-regexps. 2001-02-06 Eli Zaretskii <eliz@is.elta.co.il> @@ -6061,14 +6061,14 @@ 2001-01-25 John Wiegley <johnw@gnu.org> - * eshell/esh-util.el (eshell-ange-ls-uids): Changed use of `alist' + * eshell/esh-util.el (eshell-ange-ls-uids): Change use of `alist' to `repeat' in the :type field. - * pcomplete.el (pcomplete-file-ignore): Changed a :type field to + * pcomplete.el (pcomplete-file-ignore): Change a :type field to allow a choice of regexp or nil. (pcomplete-dir-ignore): Same. - * eshell/em-unix.el (eshell/occur): Fixed bug causing `occur' (as + * eshell/em-unix.el (eshell/occur): Fix bug causing `occur' (as a command) to always fail. 2001-01-25 Gerd Moellmann <gerd@gnu.org> @@ -6117,14 +6117,14 @@ 2001-01-24 Sam Steingold <sds@gnu.org> - * dired.el (dired-replace-in-string): Removed. + * dired.el (dired-replace-in-string): Remove. (dired-sort-toggle): Use `replace-regexps-in-string' instead of `dired-replace-in-string'. * dired-aux.el (dired-shell-stuff-it, dired-rename-subdir) (dired-rename-subdir-2, dired-insert-subdir-doinsert): Ditto. - * gs.el (gs-replace-in-string): Removed. + * gs.el (gs-replace-in-string): Remove. (gs-options): Use `replace-regexps-in-string' instead of `gs-replace-in-string'. @@ -6248,7 +6248,7 @@ 2001-01-19 Michael Kifer <kifer@cs.sunysb.edu> - * ediff-hook.el (ediff-xemacs-init-menus): Fixed add-menu-button. + * ediff-hook.el (ediff-xemacs-init-menus): Fix add-menu-button. * ediff-init.el (subst-char-in-string): Define and use it, unless it's already defined. @@ -6309,7 +6309,7 @@ overlay priorities should make it unnecessary, right? (isearch-highlight): Face suppressing behavior removed. (isearch-dehighlight): Face suppressing behavior removed. - (isearch-set-lazy-highlight-faces-at): Removed. + (isearch-set-lazy-highlight-faces-at): Remove. 2001-01-17 Kenichi Handa <handa@etl.go.jp> @@ -6546,19 +6546,19 @@ 2000-01-09 Alex Schroeder <alex@gnu.org> - * ansi-color.el (ansi-color-process): Removed, Emacs and XEmacs + * ansi-color.el (ansi-color-process): Remove, Emacs and XEmacs both use ansi-color-process-output, now. (ansi-color-process-output): Doesn't return string anymore. It is installed in comint-output-filter-functions for both Emacs and XEmacs, now. - (ansi-color-unfontify-region): Simplified code removing variables + (ansi-color-unfontify-region): Simplify code removing variables pos and start-ansi. (ansi-color-apply): Put text-property ansi-color before putting text-property face because ansi-color-unfontify-region is called immediately after the call to put-text-property. (ansi-color-context-region): Doc change. - (ansi-color-filter-region): Simplified code. - (ansi-color-apply-on-region): Changed start to start-marker, using + (ansi-color-filter-region): Simplify code. + (ansi-color-apply-on-region): Change start to start-marker, using a marker explicitly. Put text-property ansi-color before putting text-property face because ansi-color-unfontify-region is called immediately after the call to put-text-property. @@ -6566,15 +6566,15 @@ 2000-01-09 Alex Schroeder <alex@gnu.org> * ansi-color.el (ansi-color-faces-vector): Doc change. - (ansi-color-for-comint-mode): Changed :type property to choice. - (ansi-color-last-context): Removed. + (ansi-color-for-comint-mode): Change :type property to choice. + (ansi-color-last-context): Remove. (ansi-color-process-output): Don't use ansi-color-last-context, as the main functions will store their context now. (ansi-color-context): Doc change. (ansi-color-filter-apply): Rewrote it based on ansi-color-apply. Uses ansi-color-context such that repeated calls will strip partial escape sequences, too. - (ansi-color-apply): Simplified code. Colorize end of string if + (ansi-color-apply): Simplify code. Colorize end of string if face is not null. Store context in new (FACE STRING) format, such that repeated calls will strip partial escape sequences, too. Append faces to face property using ansi-color-apply-sequence such @@ -6583,7 +6583,7 @@ (ansi-color-filter-region): Rewrote it based on ansi-color-apply-on-region. Uses ansi-color-context-region such that repeated calls will strip partial escape sequences, too. - (ansi-color-apply-on-region): Simplified code. Colorize end of + (ansi-color-apply-on-region): Simplify code. Colorize end of region if face is not null. Store context in new (FACE POS) format, such that repeated calls will strip partial escape sequences, too. Append faces to face property using @@ -6644,8 +6644,8 @@ decide what to do. This function is added to comint-preoutput-filter-functions when the package is loaded. - (ansi-color-for-shell-mode-set): Removed. - (ansi-color-for-shell-mode): Removed. + (ansi-color-for-shell-mode-set): Remove. + (ansi-color-for-shell-mode): Remove. 2000-01-09 Alex Schroeder <alex@gnu.org> @@ -6696,14 +6696,14 @@ * vc.el (vc-default-latest-on-branch-p): New function, replaces constant implementations in backends. - * vc-cvs.el (vc-cvs-latest-on-branch-p): Removed. - (vc-cvs-checkout): Renamed arg WRITABLE to EDITABLE. + * vc-cvs.el (vc-cvs-latest-on-branch-p): Remove. + (vc-cvs-checkout): Rename arg WRITABLE to EDITABLE. - * vc-rcs.el (vc-rcs-checkout, vc-rcs-cancel-version): Renamed arg + * vc-rcs.el (vc-rcs-checkout, vc-rcs-cancel-version): Rename arg WRITABLE to EDITABLE. - * vc-sccs.el (vc-sccs-latest-on-branch-p): Removed. - (vc-sccs-checkout, vc-sccs-cancel-version): Renamed arg WRITABLE + * vc-sccs.el (vc-sccs-latest-on-branch-p): Remove. + (vc-sccs-checkout, vc-sccs-cancel-version): Rename arg WRITABLE to EDITABLE. 2001-01-08 Eli Zaretskii <eliz@is.elta.co.il> @@ -6713,7 +6713,7 @@ 2001-01-08 Gerd Moellmann <gerd@gnu.org> - * isearch.el (isearch-old-signal-hook): Removed. + * isearch.el (isearch-old-signal-hook): Remove. (isearch-mode): Add isearch-done to kbd-macro-termination-hook instead of setting signal-hook-function. (isearch-done): Remove isearch-done from kbd-macro-termination-hook. @@ -6791,7 +6791,7 @@ 2001-01-04 Gerd Moellmann <gerd@gnu.org> * tooltip.el (tooltip-cancel-delayed-tip) - (tooltip-start-delayed-tip): Renamed from tooltip-disable-timeout + (tooltip-start-delayed-tip): Rename from tooltip-disable-timeout and tooltip-add-timeout. (tooltip-show): Set border color from faces's foreground. (tooltip-show-help-function): If called with the same help string @@ -6825,8 +6825,8 @@ (dired-guess-shell-alist-default): Don't use xloadimage for PNG. (dired-guess-shell-alist-user): Customize. (dired-x-help-address): Set to bug-gnu-emacs. - (dired-x-maintainer, dired-x-file, dired-x-version): Deleted. - (dired-default-directory): Renamed from default-directory. + (dired-x-maintainer, dired-x-file, dired-x-version): Delete. + (dired-default-directory): Rename from default-directory. * hl-line.el (hl-line): Doc fix. @@ -6917,7 +6917,7 @@ * international/fontset.el (x-complement-fontset-spec): Resolve ASCII font name so that the same family name is used for fonts registered in x-font-name-charset-alist. - (create-fontset-from-fontset-spec): Adjusted for the above change. + (create-fontset-from-fontset-spec): Adjust for the above change. The name of fontset alias should be a unresolved ASCII font name. 2000-12-28 Gerd Moellmann <gerd@gnu.org> @@ -6932,13 +6932,13 @@ 2000-12-28 Kenichi Handa <handa@etl.go.jp> - * textmodes/artist.el (artist-butlast): Deleted. + * textmodes/artist.el (artist-butlast): Delete. (artist-ellipse-mirror-quadrant): Use butlast instead of artist-butlast. - * subr.el (butlast, nbutlast): Moved from cl.el to here. + * subr.el (butlast, nbutlast): Move from cl.el to here. - * emacs-lisp/cl.el (butlast, nbutlast): Moved to subr.el. + * emacs-lisp/cl.el (butlast, nbutlast): Move to subr.el. 2000-12-27 Eli Zaretskii <eliz@is.elta.co.il> @@ -6987,13 +6987,13 @@ 2000-12-25 Michael Kifer <kifer@cs.sunysb.edu> - * viper-init.el (viper-restore-cursor-type): Added condition-case guard. + * viper-init.el (viper-restore-cursor-type): Add condition-case guard. * ediff-init.el (ediff-quit-hook, ediff-suspend-hook): - Changed initialization; use add-hook. + Change initialization; use add-hook. (ediff-file-remote-p): Use file-local-copy. - * ediff-ptch.el (ediff-prompt-for-patch-buffer): Improved defaults. + * ediff-ptch.el (ediff-prompt-for-patch-buffer): Improve defaults. * ediff.el (ediff-patch-buffer): Bug fix. (ediff-revision): Allow selection of the file at the prompt. @@ -7037,7 +7037,7 @@ 2000-08-22 Emmanuel Briot <briot@gnat.com> - * xml.el (top level comment): Updated to reflect the fact that + * xml.el (top level comment): Update to reflect the fact that white spaces are relevant in the XML file. (xml-parse-file): Do not kill an existing Emacs buffer if the file to parse was already edited. This allows for on-the-fly analysis @@ -7158,7 +7158,7 @@ * progmodes/idlwave.el: Fixed copyright notice. - * textmodes/reftex-dcr.el (reftex-view-crossref): Added SPACE and + * textmodes/reftex-dcr.el (reftex-view-crossref): Add SPACE and TAB as key separators. 2000-12-19 Alex Schroeder <alex@gnu.org> @@ -7166,7 +7166,7 @@ * sql.el (sql-sybase-options): New option. (sql-sybase): Use it. Add sql-database to the list of parameters provided for login. The options -w 2048 -n are not used any more. - (sql-postgres-options): Changed default from "--pset" to "-P". + (sql-postgres-options): Change default from "--pset" to "-P". (sql-mysql-options): Doc change. (sql-stop): Doc change. @@ -7190,7 +7190,7 @@ 2000-12-18 Dave Love <fx@gnu.org> * simple.el (mail-user-agent): Doc fix. - (input-mode-8-bit): Removed. + (input-mode-8-bit): Remove. * international/mule.el (set-keyboard-coding-system): Doc fix. (keyboard-coding-system): New option. @@ -7373,12 +7373,12 @@ * international/characters.el: Fix cases and syntaxes for mule-unicode-0100-24ff. - * dired.el (dired-move-to-filename-regexp): Fixed for the case + * dired.el (dired-move-to-filename-regexp): Fix for the case that a Japanese character is not appended after day and year. * info.el (Info-suffix-list): Change format for a command that requires arguments. - (info-insert-file-contents): Adjusted for the above change. + (info-insert-file-contents): Adjust for the above change. 2000-12-12 Andreas Schwab <schwab@suse.de> @@ -7482,7 +7482,7 @@ * textmodes/reftex.el (reftex-scanning-info-available-p): New function. (reftex-TeX-master-file): Check for `tex-main-file' early enough. - * textmodes/reftex-global.el (reftex-create-tags-file): Fixed bug + * textmodes/reftex-global.el (reftex-create-tags-file): Fix bug when master file is not open. 2000-12-09 Stefan Monnier <monnier@cs.yale.edu> @@ -7670,12 +7670,12 @@ 2000-12-05 Rob Riepel <riepel@Stanford.EDU> - * emulation/tpu-edt.el (tpu-help): Fixed previous screen logic. - (tpu-search-highlight): Fixed comparison of overlay end positions. + * emulation/tpu-edt.el (tpu-help): Fix previous screen logic. + (tpu-search-highlight): Fix comparison of overlay end positions. (tpu-trim-line-ends): Implemented trimming logic locally. * emulation/tpu-extras.el (tpu-write-file-hook) - (tpu-set-cursor-bound): Replaced picture-clean with tpu-trim-line-ends. + (tpu-set-cursor-bound): Replace picture-clean with tpu-trim-line-ends. 2000-12-05 Kenichi Handa <handa@etl.go.jp> @@ -7956,8 +7956,8 @@ for the menu and would make command `imenu' awkward to use. (antlr-skip-file-prelude): With ANTLR-2.7+, you can specify named header actions and more than one. - (antlr-font-lock-tokendef-face): Changed color. - (antlr-font-lock-tokenref-face): Changed color. + (antlr-font-lock-tokendef-face): Change color. + (antlr-font-lock-tokenref-face): Change color. (antlr-font-lock-additional-keywords): Also highlight lowercase. (antlr-mode-syntax-table): New variable. (antlr-mode): Populate and use it instead `java-mode-syntax-table'. @@ -8198,7 +8198,7 @@ * ediff-init.el (ediff-abbrev-jobname): Use capitalize. - * ediff-wind.el (ediff-skip-unsuitable-frames): Deleted the + * ediff-wind.el (ediff-skip-unsuitable-frames): Delete the redundant skip-small-frames test. * viper-cmd.el (viper-change-state-to-vi): Disable overwrite mode. @@ -8297,11 +8297,11 @@ * progmodes/ada-mode.el (ada-mode): Use it instead of `ada-remove-trailing-spaces'. - (ada-remove-trailing-spaces): Removed. + (ada-remove-trailing-spaces): Remove. * textmodes/two-column.el (2C-merge): Recommend it in the doc. - * textmodes/picture.el (picture-clean): Removed. + * textmodes/picture.el (picture-clean): Remove. (picture-mode-exit): Call it instead of `picture-clean'. 2000-11-22 Gerd Moellmann <gerd@gnu.org> @@ -8333,7 +8333,7 @@ (string-rectangle): Check delete-selection-mode. * emacs-lisp/edebug.el (edebug-version) - (edebug-maintainer-address): Deleted. + (edebug-maintainer-address): Delete. (edebug-submit-bug-report): Just alias to report-emacs-bug. (edebug-read-function): Account for other `'#' read forms. (edebug-mode-menus): Make some items toggles. @@ -8344,11 +8344,11 @@ * recentf.el (recentf-menu-items-for-commands) (recentf-make-menu-items, recentf-make-menu-item) - (recentf-filter-changer): Added :help and :active menu-item properties. + (recentf-filter-changer): Add :help and :active menu-item properties. (recentf-build-dir-rules, recentf-dump-variable) (recentf-edit-list, recentf-open-files-item) - (recentf-open-files): Replaced unnecessary `mapcar' with new + (recentf-open-files): Replace unnecessary `mapcar' with new built-in `mapc'. 2000-11-23 Miles Bader <miles@gnu.org> @@ -8521,7 +8521,7 @@ since this function is only concerned with master state. * vc-hooks.el (vc-workfile-unchanged-p) - (vc-default-workfile-unchanged-p): Moved here from vc.el. + (vc-default-workfile-unchanged-p): Move here from vc.el. * vc.el (vc-workfile-unchanged-p) (vc-default-workfile-unchanged-p): See above. @@ -8581,7 +8581,7 @@ (vc-cvs-print-log, vc-cvs-diff): Use asynchronous mode only for remote repositories. - * vc.el (vc-annotate): Changed handling of prefix arg; now asks + * vc.el (vc-annotate): Change handling of prefix arg; now asks for both version and ratio in the minibuffer. * vc-cvs.el (vc-cvs-annotate-command): New optional arg VERSION. @@ -8638,7 +8638,7 @@ 2000-11-15 Eli Zaretskii <eliz@is.elta.co.il> - * textmodes/texinfo.el (texinfo-insert-@uref): Renamed from + * textmodes/texinfo.el (texinfo-insert-@uref): Rename from texinfo-insert-@url. (texinfo-insert-@url): A defalias for texinfo-insert-@uref. (texinfo-mode-map): Bind "C-c C-c u" to texinfo-insert-@uref. @@ -9030,9 +9030,9 @@ 2000-11-06 Miles Bader <miles@lsi.nec.co.jp> - * mwheel.el (mouse-wheel-scroll-amount): Renamed from + * mwheel.el (mouse-wheel-scroll-amount): Rename from `mwheel-scroll-amount'. - (mouse-wheel-follow-mouse): Renamed from `mwheel-follow-mouse'. + (mouse-wheel-follow-mouse): Rename from `mwheel-follow-mouse'. (mouse-wheel-mode): Use (featurep 'xemacs) instead of string-matching against the version string. @@ -9050,7 +9050,7 @@ * international/mule-conf.el (compound-text): Define this coding system here. Make x-ctext and ctext aliases of it. - * language/european.el (compound-text, ctext): Moved to + * language/european.el (compound-text, ctext): Move to international/mule-conf.el. 2000-11-05 Andrew Innes <andrewi@gnu.org> @@ -9263,13 +9263,13 @@ (ps-color-device): Use `color-values' to determine if device supports color. (ps-color-values): Try to use `x-color-values' when using XEmacs. - (ps-print-page-p): Changed from defsubst to defun. - (ps-page-number): Changed from defmacro to defun. + (ps-print-page-p): Change from defsubst to defun. + (ps-page-number): Change from defmacro to defun. (ps-header-sheet, ps-header-page): Fix bug on selected pages for printing. (ps-print-ensure-fontified): Ensure fontification when jit-lock is on. (ps-end-file, ps-dummy-page): Funs eliminated. - (ps-print-color-scale): Changed default value. + (ps-print-color-scale): Change default value. (ps-page-n-up, ps-print-page-p): New internal vars. (ps-print-preprint, ps-output, ps-begin-file, ps-begin-page) (ps-plot-region, ps-generate, ps-end-job): Code fix. @@ -9281,8 +9281,8 @@ 2000-10-31 Kenichi Handa <handa@etl.go.jp> * term/mac-win.el (decode-mac-roman, encode-mac-roman, mac-roman): - Moved to european.el. - (ccl-encode-mac-roman-font, fontset-mac): Modified for + Move to european.el. + (ccl-encode-mac-roman-font, fontset-mac): Modify for mule-unicode-2500-33ff and mule-unicode-e000-ffff. (mac-roman-kbd-insert, mac-roman-kbd-mode): These functions deleted. (mac-roman-kbd-mode, mac-roman-kbd-mode-map): These variables deleted. @@ -9327,7 +9327,7 @@ * international/mule-cmds.el (encode-coding-char): Check property safe-chars instead of safe-charsets. - * international/fontset.el (fontset-default): Modified for + * international/fontset.el (fontset-default): Modify for mule-unicode-2500-33ff and mule-unicode-e000-ffff. (x-font-name-charset-alist): Likewise. (ccl-encode-unicode-font): New CCL program. Record it in @@ -9367,7 +9367,7 @@ * eshell/esh-mode.el (window-height test): Make certain that `eshell-stringify-t' is non-nil. - (eshell-password-prompt-regexp): Changed to a much simpler + (eshell-password-prompt-regexp): Change to a much simpler password regexp. (eshell-send-input): If `eshell-invoke-directly' returns t, directly invoke the parsed command using `eval'. This improves @@ -9391,7 +9391,7 @@ (eshell-rewrite-if-command): Use `eshell-protect' to wrap the call bodies. (eshell-separate-commands): Whitespace fix. - (eshell-complex-commands): Added a new list of names, for + (eshell-complex-commands): Add a new list of names, for determining whether a given command is as simple as it looks. (eshell-invoke-directly): New function. Returns t if a command should be invoked directly (using `eval'), rather than indirectly @@ -9401,10 +9401,10 @@ * eshell/em-unix.el (eshell-default-target-is-dot): New variable, which provides an emulation of the DOS shell behavior of assuming that cp/mv/ln should copy/move/link to the current directory. - (eshell-remove-entries): Added a doc string. - (eshell-shuffle-files): Removed the check for `target' being null. - (eshell-mvcp-template, eshell-mvcpln-template): Renamed - `eshell-mvcp-template' to `eshell-mvcpln-template', and extended + (eshell-remove-entries): Add a doc string. + (eshell-shuffle-files): Remove the check for `target' being null. + (eshell-mvcp-template, eshell-mvcpln-template): + Rename `eshell-mvcp-template' to `eshell-mvcpln-template', and extended it to do a smarter check of whether a destination was provided. (eshell/mv, eshell/cp): Enable `:preserve-args'. (eshell/ln): Enable `:preserve-args', and use @@ -9413,7 +9413,7 @@ (eshell/du, eshell/diff, eshell/locate): Stringify the argument list after flattening it. This makes it possible to cat files with numerical names. - (eshell-unix-initialize): Added several names to + (eshell-unix-initialize): Add several names to `eshell-complex-commands. (eshell-unix-command-complex-p): Return t if a given command name may result in external processes being invoked. @@ -9428,12 +9428,12 @@ (eshell-refresh-windows): Use `if' instead of `when'. (eshell-smart-scroll-window): Calling `save-current-buffer' was not necessary. - (eshell-currently-handling-window): Added a missing global variable. + (eshell-currently-handling-window): Add a missing global variable. * eshell/em-ls.el (eshell-do-ls): Code simplification. (eshell-ls-sort-entries, eshell-ls-entries, eshell-ls-dir): Whitespace fix. - (eshell-ls-exclude-hidden): Added this variable in addition to + (eshell-ls-exclude-hidden): Add this variable in addition to `eshell-ls-exclude-regexp'. This one prevents files beginning with . from even being read, which can improve memory consumption quite a bit. @@ -9441,7 +9441,7 @@ read file entries beginning with a dot. In home directories with lots of hidden files, fully two-thirds of the time spent in ls is used to read directory entries that are immediately thrown away. - (eshell-ls-initial-args): Added back this configuration variable, + (eshell-ls-initial-args): Add back this configuration variable, for specifying default initial arguments to every call to ls. Much faster than using an alias to do the same thing. (eshell-do-ls): Use `eshell-ls-initial-args', if set. @@ -9450,7 +9450,7 @@ * eshell/em-dirs.el (eshell/pwd): Small code simplification. * eshell/esh-util.el: Don't require `ange-ftp' if it's not available. - (eshell-stringify-t): Added a customization variable, to indicate + (eshell-stringify-t): Add a customization variable, to indicate whether `t' should be rendered as a string at all. If not, one can still determine if the result of an expression is true using "file-exists-p FILE && echo true". @@ -9460,7 +9460,7 @@ * eshell/esh-module.el: Whitespace fix. * eshell/em-alias.el (eshell-alias-initialize): - Added `eshell-command-aliased-p' to `eshell-complex-commands'. + Add `eshell-command-aliased-p' to `eshell-complex-commands'. (eshell-command-aliased-p): New function that returns t if a command name names an aliased. @@ -9476,10 +9476,10 @@ characters. * viper-util.el (viper-memq-char, viper=): New functions for working with characters. - (viper-change-cursor-color): Fixed buglet. + (viper-change-cursor-color): Fix buglet. Many functions changed to use viper= instead of = when comparing characters. - * viper.el (viper-insert-state-mode-list): Added eshell. + * viper.el (viper-insert-state-mode-list): Add eshell. * ediff-init.el (ediff-before-setup-hook): New hook. Several typos fixed in various docstrings. @@ -9712,7 +9712,7 @@ (delimit-columns-end): New vars. (delimit-columns-customize, delimit-columns-format): New funs. (delimit-columns-region, delimit-columns-rectangle) - (delimit-columns-rectangle-line): Modified to support column + (delimit-columns-rectangle-line): Modify to support column formatting. 2000-10-24 Dave Love <fx@gnu.org> @@ -9820,9 +9820,9 @@ * woman.el (woman-italic-face, woman-bold-face) (woman-unknown-face): Add dark-background variants. - (woman-default-faces): Renamed from `woman-colour-faces'. + (woman-default-faces): Rename from `woman-colour-faces'. Set using the stored defaults, rather than using hard-wired colors. - (woman-monochrome-faces): Renamed from `woman-black-faces'. + (woman-monochrome-faces): Rename from `woman-black-faces'. Just make the foreground `unspecified' rather than "black". (woman-menu): Rename menu entries accordingly. @@ -9865,13 +9865,13 @@ (vc-delete-automatic-version-backups, vc-make-version-backup): New functions. (vc-before-save): Use the latter. - (vc-default-make-version-backups-p): Added `-p' suffix to avoid + (vc-default-make-version-backups-p): Add `-p' suffix to avoid confusion. - * vc-cvs.el (vc-cvs-make-version-backups-p): Added `-p' suffix as + * vc-cvs.el (vc-cvs-make-version-backups-p): Add `-p' suffix as expected by vc[-hooks].el. - * vc.el (vc-checkout): Added `-p' suffix in call to + * vc.el (vc-checkout): Add `-p' suffix in call to vc-make-version-backups-p; use vc-make-version-backup to actually make the backup. (vc-version-other-window, vc-version-backup-file): Handle both @@ -9882,7 +9882,7 @@ 2000-10-22 Miles Bader <miles@gnu.org> * comint.el (comint-highlight-input, comint-highlight-prompt): - Renamed, `-face' at end removed. + Rename, `-face' at end removed. (comint-send-input, comint-output-filter): Use renamed faces. * window.el (fit-window-to-buffer): Change defaulting of @@ -9989,7 +9989,7 @@ * dirtrack.el (dirtrack): Fix call to run-hooks. - * cmuscheme.el (cmuscheme-program-name): Renamed from + * cmuscheme.el (cmuscheme-program-name): Rename from scheme-program-name because xscheme.el contains a defcustom with the same name. As a consequence, customizing group `cmuscheme' loaded `xscheme' which redefined run-scheme. @@ -10090,8 +10090,8 @@ 2000-10-18 Miles Bader <miles@gnu.org> - * comint.el (comint-delete-output): Renamed from `comint-kill-output'. - (comint-kill-output): Changed into an alias for `comint-delete-output', + * comint.el (comint-delete-output): Rename from `comint-kill-output'. + (comint-kill-output): Change into an alias for `comint-delete-output', and made obsolete. (comint-mode-map): Rename references to comint-kill-output. @@ -10113,7 +10113,7 @@ * diff-mode.el (diff-header-face, diff-file-header-face): Add specific setting for dark background. - (diff-context-face): Renamed from diff-comment-face. + (diff-context-face): Rename from diff-comment-face. Set explicitly rather than inheriting from font-lock-comment-face. 2000-10-17 Eli Zaretskii <eliz@is.elta.co.il> @@ -10208,7 +10208,7 @@ * whitespace.el: Doc fixes. (top-level): Don't add hooks here. - (whitespace-running-emacs): Deleted. + (whitespace-running-emacs): Delete. (timer): Don't require. (whitespace): Add back :version conditional on xemacs test. (whitespace-spacetab-regexp, whitespace-indent-regexp) @@ -10302,7 +10302,7 @@ 2000-10-13 John Wiegley <johnw@gnu.org> - * eshell/esh-util.el (require): Added a missing `require' form, + * eshell/esh-util.el (require): Add a missing `require' form, needed when compiling (for an ange-ftp macro definition). 2000-10-13 Dave Love <fx@gnu.org> @@ -10318,10 +10318,10 @@ 2000-10-13 Stephen Gildea <gildea@stop.mail-abuse.org> - * time-stamp.el (time-stamp): Fixed bug in new multi-line code + * time-stamp.el (time-stamp): Fix bug in new multi-line code that breaks with old list format timestamps. (time-stamp-warn-inactive, time-stamp-old-format-warn) - (time-stamp-count, time-stamp-conversion-warn): Improved doc strings. + (time-stamp-count, time-stamp-conversion-warn): Improve doc strings. 2000-10-13 John Wiegley <johnw@gnu.org> @@ -10333,7 +10333,7 @@ 2000-10-13 John Wiegley <johnw@gnu.org> - * desktop.el (desktop-buffer-modes-to-save): Added a global for + * desktop.el (desktop-buffer-modes-to-save): Add a global for specifying what "other" kinds of buffers should be saved. This used to be hard-coded. (desktop-buffer-misc-functions): A global for specifying how @@ -10345,7 +10345,7 @@ (desktop-buffer-info-misc-data): Aux function for determining Info buffer auxiliary info. (desktop-buffer-dired-misc-data): Likewise, but for dired buffers. - (desktop-buffer-info): Changed this function to use the info + (desktop-buffer-info): Change this function to use the info gathered above. (desktop-create-buffer): Be a little more careful about what `minor-mode' means before calling it. This is important for some @@ -10363,7 +10363,7 @@ (eshell-ls-annotate): Use `eshell-file-attributes'. (eshell-ls-file): Made the user-id printing code a bit smarter. - * eshell/esh-util.el (eshell-ange-ls-uids): Added variable, to + * eshell/esh-util.el (eshell-ange-ls-uids): Add variable, to allow identification of alias user ids in remote directories. It's manual, but there's no other way to know when the current user on the local machine, is also the owning user on the remote machine. @@ -10386,7 +10386,7 @@ full-fledged FTP client, with much more manipulation ability than most other clients. - * eshell/em-unix.el (eshell-du-prefer-over-ange): Added a new + * eshell/em-unix.el (eshell-du-prefer-over-ange): Add a new variable, which means that Eshell's du should always be preferred in remote directories. (eshell-shuffle-files): Use `eshell-file-attributes', rather than @@ -10395,7 +10395,7 @@ when reading remote directories. This is an Eshell-specific variable (not part of ange-ftp). (eshell/ln): Bind `ange-cache'. - (eshell/du): Added some extra logic for determining when to use + (eshell/du): Add some extra logic for determining when to use Eshell's du (which is slow), and when to use the external version (which may or may not exist). @@ -10404,7 +10404,7 @@ `get-buffer-process', since backgrounded processes don't count in the context of this function's logic. - * eshell/esh-arg.el (eshell-parse-double-quote): Moved a call to + * eshell/esh-arg.el (eshell-parse-double-quote): Move a call to `forward-char', so that null strings are parsed correctly. 2000-09-13 John Wiegley <johnw@gnu.org> @@ -10471,7 +10471,7 @@ 2000-10-12 Gerd Moellmann <gerd@gnu.org> * startup.el (fancy-splash-screens): Don't add a pre-command hook. - (fancy-splash-pre-command, fancy-splash-pending-command): Removed. + (fancy-splash-pre-command, fancy-splash-pending-command): Remove. (command-line-1): Don't use fancy-splash-pending-command. (fancy-splash-screens-1): Goto point-min after inserting text. @@ -10633,7 +10633,7 @@ * progmodes/etags.el: Docstring fixes. Maintainer line updated. (initialize-new-tags-table): Use run-hook-with-args-until-success. (find-tag): Use pop-to-buffer if switch-to-buffer failed. - (tags-table-format-functions): Renamed from tags-table-format-hooks. + (tags-table-format-functions): Rename from tags-table-format-hooks. * vc.el (vc-version-diff): diff-switches can be a list. Use relative filenames for prettier output. @@ -10658,8 +10658,8 @@ (jit-lock-unregister): Don't bother handling complex hooks any more. (jit-lock-refontify): New function. (jit-lock-fontify-buffer): Use it. - (jit-lock-function-1): Replaced by jit-lock-fontify-now. - (jit-lock-fontify-now): Renamed from jit-lock-function-1. + (jit-lock-function-1): Replace by jit-lock-fontify-now. + (jit-lock-fontify-now): Rename from jit-lock-function-1. Add optional args START and END. Never call font-lock-fontify-region directly. (jit-lock-function, jit-lock-stealth-fontify): Use it. @@ -10681,9 +10681,9 @@ * play/spook.el (spook-phrases-file): Use expand-file-name, not concat. - * emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Don't - insist on symbols starting with word syntax. - (lisp-mode-shared-map): Renamed from shared-lisp-mode-map. + * emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): + Don't insist on symbols starting with word syntax. + (lisp-mode-shared-map): Rename from shared-lisp-mode-map. (eval-defun-1): Doc fix. (indent-sexp): Use nconc to build up indent-stack. @@ -10732,8 +10732,8 @@ 2000-10-08 Eli Zaretskii <eliz@is.elta.co.il> - * international/titdic-cnv.el (quail-cxterm-package-ext-info): Fix - typos in doc strings. + * international/titdic-cnv.el (quail-cxterm-package-ext-info): + Fix typos in doc strings. * font-lock.el (font-lock-mode, global-font-lock-mode): Mention in the doc strings how to customize Font Lock faces. @@ -10846,7 +10846,7 @@ * net/net-utils.el (nslookup-prompt-regexp, ftp-prompt-regexp) (smbclient-prompt-regexp): Add usage note to doc string. - (ftp-font-lock-keywords, smbclient-font-lock-keywords): Removed. + (ftp-font-lock-keywords, smbclient-font-lock-keywords): Remove. (ftp-mode, smbclient-mode): Don't set `font-lock-defaults'. Use add-hook for adding the comint filter function, and only do so if it's not already in the global hook list. @@ -11002,7 +11002,7 @@ (ftp-font-lock-keywords, smbclient-font-lock-keywords): Only set if window-system is non-nil. (net-utils-run-program): Returns buffer. - (network-connection-reconnect): Added this function. + (network-connection-reconnect): Add this function. * generic.el: Incorporates extensive cleanup and docfixes by @@ -11011,16 +11011,16 @@ (generic-mode-name, generic-comment-list) (generic-keywords-list, generic-font-lock-expressions) (generic-mode-function-list, generic-mode-syntax-table): - Removed variables. - (generic-mode-alist): Renamed to generic-mode-list. + Remove variables. + (generic-mode-alist): Rename to generic-mode-list. (generic-find-file-regexp): Default changed to "^#". (generic-read-type): Uses completing read on generic-mode-list. - (generic-mode-sanity-check): Removed this function. - (generic-add-to-auto-mode): Removed this function. + (generic-mode-sanity-check): Remove this function. + (generic-add-to-auto-mode): Remove this function. (generic-mode-internal): Bind mode-specific definitions into function instead of putting them in alist. - (generic-mode-set-comments): Reworked extensively. - (generic-mode-find-file-hook): Simplified regexp searching. + (generic-mode-set-comments): Rework extensively. + (generic-mode-find-file-hook): Simplify regexp searching. (generic-make-keywords-list): Omit extra pair of parens. * find-lisp.el (find-lisp-find-files-internal): @@ -11028,13 +11028,13 @@ * generic-x.el (apache-conf-generic-mode): Regexp now allows leading whitespace. - (rc-generic-mode): Added eval-when-compile + (rc-generic-mode): Add eval-when-compile around generic-make-keywords-list. Deleted duplicate regexp. - (rul-generic-mode): Added eval-when-compile + (rul-generic-mode): Add eval-when-compile around generic-make-keywords-list. (etc-fstab-generic-mode): New generic mode. - (rul-generic-mode): Removed one eval-when-compile + (rul-generic-mode): Remove one eval-when-compile which caused a max-specpdl-size exceeded error. 2000-10-04 Miles Bader <miles@gnu.org> @@ -11084,7 +11084,7 @@ * isearch.el (isearch-faces): New custom group. (isearch): New defface; was already tested for in the code. - (isearch-lazy-highlight-face): Changed to defface from defcustom. + (isearch-lazy-highlight-face): Change to defface from defcustom. (isearch-highlight): Always use face `isearch'. 2000-10-02 Dave Love <fx@gnu.org> @@ -11155,14 +11155,14 @@ is visited. (vc-start-entry): New argument initial-contents. Don't visit the file if it isn't already visited. Brought documentation up-to-date. - (vc-next-action, vc-register): Updated calls to vc-start-entry. + (vc-next-action, vc-register): Update calls to vc-start-entry. (vc-checkin): New optional arg initial-contents, which is passed to vc-start-entry. (vc-finish-logentry): Make sure to bury log buffer only if there really is one. Call `vc-resynch-buffer' on log-file, not buffer-file-name. (vc-default-comment-history, vc-default-wash-log): New functions. - (vc-index-of): Removed. + (vc-index-of): Remove. (vc-transfer-file): Make do without the above. (vc-default-receive-file): Call comment-history unconditionally. Pass the resulting string to vc-checkin, instead of inserting it into the @@ -11175,8 +11175,8 @@ 2000-10-01 Miles Bader <miles@gnu.org> - * emacs-lisp/easy-mmode.el (easy-mmode-define-navigation): Call - `recenter' with an arg to prevent redrawing the display. + * emacs-lisp/easy-mmode.el (easy-mmode-define-navigation): + Call `recenter' with an arg to prevent redrawing the display. 2000-09-30 Stefan Monnier <monnier@cs.yale.edu> @@ -11191,7 +11191,7 @@ (latex-imenu-create-index): Use it. Move the regexp construction outside loops (and use push). (tex-font-lock-keywords-1, tex-font-lock-keywords-2) - (tex-font-lock-keywords): Moved from font-lock.el. + (tex-font-lock-keywords): Move from font-lock.el. (tex-comment-indent): Remove. (tex-common-initialization): Don't set comment-indent-function. (latex-block-default): New var. @@ -11267,7 +11267,7 @@ 2000-09-29 Miles Bader <miles@gnu.org> * image-file.el (image-file-name-extensions): New variable. - (image-file-name-regexps): Renamed from `image-file-regexps'. + (image-file-name-regexps): Rename from `image-file-regexps'. New default value is nil. Call `auto-image-file-mode'. (image-file-name-regexp): New function. (auto-image-file-mode): New minor mode. @@ -11547,9 +11547,9 @@ type. (cperl-mode): Set normal-auto-fill-function and don't zap auto-fill-function. - (cperl-imenu--function-name-regexp-perl): Renamed from + (cperl-imenu--function-name-regexp-perl): Rename from imenu-example--function-name-regexp-perl. - (cperl-imenu--create-perl-index): Renamed from + (cperl-imenu--create-perl-index): Rename from imenu-example--create-perl-index. (cperl-xsub-scan): Don't require cl. @@ -11618,8 +11618,8 @@ 2000-09-20 Dave Love <fx@gnu.org> * iswitchb.el: Some doc fixes. - (iswitchb-mode-map): Define completely initially. Inherit - minibuffer-local-map. + (iswitchb-mode-map): Define completely initially. + Inherit minibuffer-local-map. (iswitchb-completion-help) <!iswitchb-xemacs>: Use fundamental-mode. (iswitchb-global-map): New variable. @@ -11704,7 +11704,7 @@ * toolbar/tool-bar.el: Renamed from toolbar.el. Change `toolbar' to `tool-bar' generally in symbols. Make some items invisible in `special' major modes. - (tool-bar-add-item-from-menu): Renamed from toolbar-like-menu-item. + (tool-bar-add-item-from-menu): Rename from toolbar-like-menu-item. Add arg PROPS. * startup.el (fancy-splash-screen) <defgroup>: Fix syntax. @@ -11862,8 +11862,8 @@ * strokes.el: Sync with maintainer's current version with changes for Emacs, but avoid runtime cl and levents. (toplevel): Change autoloads and compilation requires. - (strokes-version, strokes-bug-address, strokes-lift): Values - changed. + (strokes-version, strokes-bug-address, strokes-lift): + Values changed. (strokes-xpm-header, strokes-insinuated): New variable. (strokes): Add :link. (strokes-mode): Customized. @@ -11890,8 +11890,8 @@ (strokes-xpm-encode-length-as-string, strokes-xpm-decode-char) (strokes-xpm-to-compressed-string, strokes-decode-buffer) (strokes-encode-buffer, strokes-xpm-for-compressed-string) - (strokes-compose-complex-stroke, strokes-alphabetic-lessp): New - functions. + (strokes-compose-complex-stroke, strokes-alphabetic-lessp): + New functions. 2000-09-15 Gerd Moellmann <gerd@gnu.org> @@ -11944,10 +11944,10 @@ 2000-09-14 Alex Schroeder <alex@gnu.org> * ansi-color.el (ansi-colors): Doc change. - (ansi-color-get-face): Simplified regexp. - (ansi-color-faces-vector): Added more faces, doc change. + (ansi-color-get-face): Simplify regexp. + (ansi-color-faces-vector): Add more faces, doc change. (ansi-color-names-vector): Doc change. - (ansi-color-regexp): Simplified regexp. + (ansi-color-regexp): Simplify regexp. (ansi-color-parameter-regexp): New regexp. (ansi-color-filter-apply): Doc change. (ansi-color-filter-region): Doc change. @@ -11955,11 +11955,11 @@ deal with zero length parameters. (ansi-color-apply-on-region): Doc change. (ansi-color-map): Doc change. - (ansi-color-map-update): Removed debugging message. - (ansi-color-get-face-1): Added condition-case to trap + (ansi-color-map-update): Remove debugging message. + (ansi-color-get-face-1): Add condition-case to trap args-out-of-range errors. (ansi-color-get-face): Doc change. - (ansi-color-make-face): Removed. + (ansi-color-make-face): Remove. (ansi-color-for-shell-mode): New option. 2000-09-13 Kenichi Handa <handa@etl.go.jp> @@ -12022,25 +12022,25 @@ 2000-09-12 Kenichi Handa <handa@etl.go.jp> - * international/quail.el (quail-define-package): Docstring - modified. + * international/quail.el (quail-define-package): + Docstring modified. 2000-09-12 Kenichi Handa <handa@etl.go.jp> - * international/titdic-cnv.el (quail-cxterm-package-ext-info): Add - extra docstrings for "chinese-ccdospy", "chinese-ecdict", + * international/titdic-cnv.el (quail-cxterm-package-ext-info): + Add extra docstrings for "chinese-ccdospy", "chinese-ecdict", "chinese-etzy", "chinese-sw", and "chinese-ziranma". Modify the docstring of "chinese-py". - * international/quail.el (quail-translation-docstring): New - variable. + * international/quail.el (quail-translation-docstring): + New variable. (quail-show-keyboard-layout): Docstring modified. (quail-select-current): Likewise. (quail-build-decode-map): Change arg MAP to MAP-LIST to avoid infinite recursive call. (quail-help): Check quail-translation-docstring. Format of the output changed. - (quail-help-insert-keymap-description): Adjusted for the above + (quail-help-insert-keymap-description): Adjust for the above change. 2000-09-11 Gerd Moellmann <gerd@gnu.org> @@ -12151,7 +12151,7 @@ 2000-09-07 Kenichi Handa <handa@etl.go.jp> - * help.el (help-make-xrefs): Adjusted for the change of + * help.el (help-make-xrefs): Adjust for the change of help-xref-mule-regexp. (help-insert-xref-button): New function. @@ -12205,10 +12205,10 @@ (vc-merge): Use RET for first version to trigger merge-news, not prefix arg. (vc-annotate): Handle backends that do not support annotation. - (vc-default-merge-news): Removed. The existence of a merge-news + (vc-default-merge-news): Remove. The existence of a merge-news implementation is now checked on caller sites. - * vc-hooks.el (vc-default-mode-line-string): Removed CVS special + * vc-hooks.el (vc-default-mode-line-string): Remove CVS special case. * vc-cvs.el (vc-cvs-mode-line-string): New function, handles the @@ -12227,11 +12227,11 @@ (vc-after-save): Call `vc-dired-resynch-file' only if vc is loaded. * vc.el: Require dired-aux during compilation. - (vc-name-assoc-file): Moved to vc-sccs.el. + (vc-name-assoc-file): Move to vc-sccs.el. (with-vc-properties): New macro. (vc-checkin, vc-checkout, vc-revert, vc-cancel-version) (vc-finish-steal): Use it. - (vc-cancel-version): Moved RCS-specific code to vc-rcs.el. The call + (vc-cancel-version): Move RCS-specific code to vc-rcs.el. The call to the backend-specific function is now supposed to do the checkout, too. (vc-log-edit): Handle FILE being nil and added a FIXME for log-edit. @@ -12239,15 +12239,15 @@ * vc-cvs.el (vc-cvs-checkin, vc-cvs-checkout): Don't bother to set file properties; that gets done in the generic code now. - * vc-rcs.el (vc-rcs-uncheck): Renamed to `vc-rcs-cancel-version'. + * vc-rcs.el (vc-rcs-uncheck): Rename to `vc-rcs-cancel-version'. Changed parameter list, added code from vc.el that does the checkout, possibly with a double-take. - * vc-sccs.el (vc-sccs-name-assoc-file): Moved here from vc.el. - (vc-sccs-add-triple, vc-sccs-rename-file, vc-sccs-lookup-triple): Use - the above under the new name. - (vc-sccs-uncheck): Renamed to `vc-sccs-cancel-version'. Changed - parameter list, added checkout command. + * vc-sccs.el (vc-sccs-name-assoc-file): Move here from vc.el. + (vc-sccs-add-triple, vc-sccs-rename-file, vc-sccs-lookup-triple): + Use the above under the new name. + (vc-sccs-uncheck): Rename to `vc-sccs-cancel-version'. + Changed parameter list, added checkout command. (vc-sccs-checkin, vc-sccs-checkout): Don't bother to set file properties; that gets done in the generic code now. @@ -12288,8 +12288,8 @@ * sql.el (sql-mode-menu): Work around missing variable mark-active in XEmacs. - (sql-mode): Added call to easy-menu-add for XEmacs compatibility. - (sql-interactive-mode): Added call to easy-menu-add for XEmacs + (sql-mode): Add call to easy-menu-add for XEmacs compatibility. + (sql-interactive-mode): Add call to easy-menu-add for XEmacs compatibility. 2000-09-04 Gerd Moellmann <gerd@gnu.org> @@ -12339,8 +12339,8 @@ (vc-default-could-register): New function. (vc-dired-buffers-for-dir, vc-dired-resynch-file): New functions. (vc-resynch-buffer): Call vc-dired-resynch-file. - (vc-start-entry, vc-finish-logentry, vc-revert-buffer): Use - vc-resynch-buffer instead of vc-resynch-window. + (vc-start-entry, vc-finish-logentry, vc-revert-buffer): + Use vc-resynch-buffer instead of vc-resynch-window. (vc-next-action-dired): Don't redisplay here, that gets done as a result of the individual file operations. (vc-retrieve-snapshot): Corrected prompt order. @@ -12349,8 +12349,8 @@ * vc-cvs.el (vc-cvs-stay-local): Allow it to be a hostname regexp as well. - (vc-cvs-remote-p): Renamed to vc-cvs-stay-local-p. Handle - hostname regexps. Updated all callers. + (vc-cvs-remote-p): Rename to vc-cvs-stay-local-p. + Handle hostname regexps. Updated all callers. (vc-cvs-responsible-p): Handle directories as well. (vc-cvs-could-register): New function. (vc-cvs-retrieve-snapshot): Parse "cvs update" output, keep file @@ -12387,7 +12387,7 @@ (vc-dired-mode-map): Inherit from dired-mode-map. (vc-dired-mode): Local value of dired-move-to-filename-regexp simplified. - (vc-dired-state-info): Removed, updated caller. + (vc-dired-state-info): Remove, updated caller. (vc-default-dired-state-info): Use parentheses instead of hyphens. (vc-dired-hook): Use vc-BACKEND-dir-state, if available. (vc-dired-listing-switches): New variable. @@ -12428,7 +12428,7 @@ * vc.el (vc-next-action-on-file): Corrected several messages. (vc-merge): Add prefix arg `merge-news'; handle it. - * vc-cvs.el (vc-cvs-workfile-version): Removed comment that this + * vc-cvs.el (vc-cvs-workfile-version): Remove comment that this is not reached. It is. (vc-cvs-merge): Set state to 'edited after merge. (vc-cvs-merge-news): Set workfile version to nil if not known. @@ -12456,9 +12456,9 @@ (vc-new-comment-index): New function. (vc-previous-comment): Use it. Make the minibuffer message slightly less terse. - (vc-comment-search-reverse): Make it work forward as well. Don't - set vc-comment-ring-index if no match is found. Use - vc-new-comment-index. + (vc-comment-search-reverse): Make it work forward as well. + Don't set vc-comment-ring-index if no match is found. + Use vc-new-comment-index. (vc-comment-search-forward): Use vc-comment-search-reverse. (vc-dired-mode-map): Don't inherit from dired-mode-map since define-derived-mode will do it for us. Bind `v' to a keymap that @@ -12482,7 +12482,7 @@ (vc-cvs-stay-local): Default to t. (vc-cvs-remote-p): New function and property. (vc-cvs-state): Stay local only if the above is t. - (vc-handle-cvs): Removed. + (vc-handle-cvs): Remove. (vc-cvs-registered): Don't check vc-handle-cvs -- it should all be done via vc-handled-backends now. (vc-cvs-header): Escape Id. @@ -12499,10 +12499,10 @@ * vc.el (vc-exec-after): Fix disassembly of previous sentinel. (vc-print-log): Search current revision from beginning of buffer. (vc-revert-buffer): Clear echo area after the diff is finished. - (vc-prefix-map): Removed definition of "t" for terse display in vc + (vc-prefix-map): Remove definition of "t" for terse display in vc dired. - (vc-dired-mode-map): Inherit from dired-mode-map. Added - definition of "vt" for terse display. + (vc-dired-mode-map): Inherit from dired-mode-map. + Added definition of "vt" for terse display. (vc-dired-mode): Fix dired-move-to-filename-regexp. 2000-09-04 Stefan Monnier <monnier@cs.yale.edu> @@ -12520,11 +12520,11 @@ (vc-print-log): Use vc-exec-after and use log-view-goto-rev if present. - * vc-sccs.el (vc-sccs-state-heuristic): Use - file-ownership-preserved-p. + * vc-sccs.el (vc-sccs-state-heuristic): + Use file-ownership-preserved-p. - * vc-rcs.el (vc-rcs-state-heuristic): Use - file-ownership-preserved-p. + * vc-rcs.el (vc-rcs-state-heuristic): + Use file-ownership-preserved-p. (vc-rcs-checkout): Remove the error-handling for missing-rcs. 2000-09-04 Andre Spiegel <spiegel@gnu.org> @@ -12553,11 +12553,11 @@ current buffer without any fuss'. (vc-version-diff): Change the `diff' backend operation to just put the diff in the current buffer without erasing it. Always use - *vc-diff* even for directory-diffs. Use vc-setup-buffer. Protect - shrink-window-if-larger-than-buffer. + *vc-diff* even for directory-diffs. Use vc-setup-buffer. + Protect shrink-window-if-larger-than-buffer. (vc-print-log): Change the `print-log' backend operation to just - put the log in the current buffer without erasing it. Protect - shrink-window-if-larger-than-buffer. + put the log in the current buffer without erasing it. + Protect shrink-window-if-larger-than-buffer. (vc-update-change-log): Fix setd typo. * vc-sccs.el (vc-sccs-workfile-unchanged-p): Fix parenthesis. @@ -12567,8 +12567,8 @@ (vc-rcs-diff): Insert in the current buffer and remove unused arg CMP. - * vc-cvs.el (vc-cvs-state, vc-cvs-fetch-status): Use - with-temp-file. Use the new BUFFER=t argument to vc-do-command. + * vc-cvs.el (vc-cvs-state, vc-cvs-fetch-status): + Use with-temp-file. Use the new BUFFER=t argument to vc-do-command. (vc-cvs-print-log, vc-cvs-diff): Insert in the current buffer. 2000-09-04 Andre Spiegel <spiegel@gnu.org> @@ -12578,13 +12578,13 @@ (vc-default-workfile-unchanged-p): New function. Delegates to a full vc-BACKEND-diff. - * vc-hooks.el (vc-simple-command): Removed. + * vc-hooks.el (vc-simple-command): Remove. * vc-rcs.el (vc-rcs-workfile-unchanged-p): Use vc-do-command instead of vc-simple-command. - (vc-rcs-fetch-master-state): Removed check for unlocked-changes to + (vc-rcs-fetch-master-state): Remove check for unlocked-changes to avoid doing a diff when opening a file. - (vc-rcs-state): Added check for unlocked-changes. + (vc-rcs-state): Add check for unlocked-changes. (vc-rcs-header): Escape Id. (vc-rcs-workfile-unchanged-p): Remove optional arg VERSION. (vc-rcs-state): Call vc-workfile-unchanged-p, not the RCS-specific @@ -12600,7 +12600,7 @@ 2000-09-04 Stefan Monnier <monnier@cs.yale.edu> - * vc.el (vc-editable-p): Renamed from vc-writable-p. + * vc.el (vc-editable-p): Rename from vc-writable-p. (with-vc-file, vc-merge): Use vc-editable-p. (vc-do-command): Remove unused var vc-file and fix the doubly-defined `status' var. Add a user message when starting an @@ -12674,8 +12674,8 @@ way the function itself works. (vc-file-owner): Remove. - * vc-cvs.el (vc-cvs-registered): Use with-temp-buffer. Reorder - extraction of fields and call to file-attributes because of a + * vc-cvs.el (vc-cvs-registered): Use with-temp-buffer. + Reorder extraction of fields and call to file-attributes because of a temporary bug in rcp.el. (vc-cvs-fetch-status): Use with-current-buffer. @@ -12726,8 +12726,8 @@ * vc-rcs.el (vc-rcs-exists): Remove. (vc-rcs-header): New var. - * vc-sccs.el (vc-sccs-responsible-p, vc-sccs-register): Use - `vc-sccs-search-project-dir' instead of `vc-sccs-project-dir'. + * vc-sccs.el (vc-sccs-responsible-p, vc-sccs-register): + Use `vc-sccs-search-project-dir' instead of `vc-sccs-project-dir'. (vc-sccs-header): New var. * vc.el (vc-do-command): Get rid of the `last' argument. @@ -12761,8 +12761,8 @@ (vc-cancel-version): prettify error message with \\[...]. (vc-rename-master): New function. (vc-rename-file): Use vc-BACKEND-rename-file (which might in turn - use vc-rename-master) instead of vc-BACKEND-record-rename. Make - the CVS special case generic. + use vc-rename-master) instead of vc-BACKEND-record-rename. + Make the CVS special case generic. (vc-default-record-rename): Remove. (vc-file-tree-walk-internal): Only call FUNC for files that are under control of some VC backend and replace `concat' with @@ -12771,7 +12771,7 @@ (vc-version-diff, vc-snapshot-precondition, vc-create-snapshot) (vc-retrieve-snapshot): Update call to vc-file-tree-walk. - * vc-sccs.el (vc-sccs-rename-file): Renamed from + * vc-sccs.el (vc-sccs-rename-file): Rename from vc-sccs-record-rename. Use `find-file-noselect' rather than `find-file' and call `vc-rename-master' to do the actual move. (vc-sccs-diff): Remove unused `backend' variable. @@ -12833,7 +12833,7 @@ 2000-09-04 Stefan Monnier <monnier@cs.yale.edu> - * vc.el (vc-locking-user): Moved from vc-hooks.el. + * vc.el (vc-locking-user): Move from vc-hooks.el. 2000-09-04 Stefan Monnier <monnier@cs.yale.edu> @@ -12859,9 +12859,9 @@ using the default function. (vc-call-backend): If calling the default function, pass it the backend as first argument. Update the docstring accordingly. - (vc-default-state-heuristic, vc-default-mode-line-string): Update - for the new backend argument. - (vc-make-backend-sym): Renamed from vc-make-backend-function. + (vc-default-state-heuristic, vc-default-mode-line-string): + Update for the new backend argument. + (vc-make-backend-sym): Rename from vc-make-backend-function. (vc-find-backend-function): Use the new name. (vc-default-registered): New function. @@ -12927,8 +12927,8 @@ 2000-09-04 Andre Spiegel <spiegel@gnu.org> - * vc.el (vc-file-clear-masterprops): Removed. - (vc-checkin, vc-revert-buffer): Removed calls to the above. + * vc.el (vc-file-clear-masterprops): Remove. + (vc-checkin, vc-revert-buffer): Remove calls to the above. (vc-version-diff): Use buffer-size without argument. (vc-register): Heed vc-initial-comment. @@ -12937,12 +12937,12 @@ * vc-rcs.el (vc-rcs-register): Parse command output to find master file name and workfile version. - (vc-rcs-checkout): Removed call to vc-file-clear-masterprops. + (vc-rcs-checkout): Remove call to vc-file-clear-masterprops. - * vc-cvs.el (vc-cvs-merge-news, vc-cvs-checkout): Removed call to + * vc-cvs.el (vc-cvs-merge-news, vc-cvs-checkout): Remove call to vc-file-clear-masterprops. - * vc-sccs.el (vc-sccs-checkout): Removed call to + * vc-sccs.el (vc-sccs-checkout): Remove call to vc-file-clear-masterprops. If writable, set vc-state to 'edited rather than user login name. @@ -12969,7 +12969,7 @@ 2000-09-04 Andre Spiegel <spiegel@gnu.org> * vc.el (with-vc-file, vc-next-action, vc-version-diff) - (vc-dired-mark-locked): Replaced usage of vc-locking-user with + (vc-dired-mark-locked): Replace usage of vc-locking-user with vc-state or vc-up-to-date-p. (vc-merge): Use vc-backend-defines to check whether merging is possible. Set state to 'edited after successful merge. @@ -13015,25 +13015,25 @@ * vc-cvs.el (vc-cvs-print-log, vc-cvs-diff): Run cvs asynchronously. * vc.el (vc-do-command): kill-all-local-variables, to reset any - major-mode in which the buffer might have been put earlier. Use - `remove' and `when'. Allow `okstatus' to be `async' and use + major-mode in which the buffer might have been put earlier. + Use `remove' and `when'. Allow `okstatus' to be `async' and use `start-process' in this case. (vc-version-diff): Handle the case where the diff looks empty because of the use of an async process. 2000-09-04 Andre Spiegel <spiegel@gnu.org> - * vc.el (vc-next-action-on-file): Removed optional parameter + * vc.el (vc-next-action-on-file): Remove optional parameter `simple'. Recompute state unconditionally. - (vc-default-toggle-read-only): Removed. + (vc-default-toggle-read-only): Remove. - * vc-hooks.el (vc-backend-functions): Removed vc-toggle-read-only. + * vc-hooks.el (vc-backend-functions): Remove vc-toggle-read-only. (vc-toggle-read-only): Undid prev change. - * vc-cvs.el (vc-cvs-stay-local): Renamed from + * vc-cvs.el (vc-cvs-stay-local): Rename from vc-cvs-simple-toggle. Redocumented. (vc-cvs-state): If locality is wanted, use vc-cvs-state-heuristic. - (vc-cvs-toggle-read-only): Removed. + (vc-cvs-toggle-read-only): Remove. 2000-09-04 Stefan Monnier <monnier@cs.yale.edu> @@ -13051,7 +13051,7 @@ (vc-dired-mode-map): Properly defvar it. (vc-print-log): Call log-view-mode if available. (small-temporary-file-directory): defvar instead of use boundp. - (vc-merge-news): Moved to vc-cvs.el. + (vc-merge-news): Move to vc-cvs.el. (vc-default-merge-news): New function. * vc-sccs.el: Require 'vc and 'vc-sccs-hooks. @@ -13075,7 +13075,7 @@ call to vc-rcs-latest-on-branch-p. Hopefully that was the right one. * vc-rcs-hooks.el: Provide 'vc-rcs-hooks. - (vc-rcs-trunk-p, vc-rcs-branch-part): Moved from vc-rcs.el. + (vc-rcs-trunk-p, vc-rcs-branch-part): Move from vc-rcs.el. (vc-rcs-latest-on-branch-p): Use the `version' argument rather than the apparently unbound `workfile-version'. @@ -13116,8 +13116,8 @@ * vc-cvs.el (vc-cvs-checkout): Docstring fix. Added a `(if workfile' that got lost when the code was extracted from vc.el. And merged the tail with the rest of the code (not possible in the - old vc.el where the tail was shared among all backends). And - explicitly set the state to 'edited if `writable' is set. + old vc.el where the tail was shared among all backends). + And explicitly set the state to 'edited if `writable' is set. * vc-cvs-hooks.el (vc-cvs-registered): Use expand-file-name. (vc-cvs-state): Be careful to return the value from @@ -13128,16 +13128,16 @@ workfile was nil). * vc.el: Removed those pesky unnecessary `(function' quotes. - (vc-annotate-mode-map, vc-annotate-mode-syntax-table): Initialize - directly in the defvar. + (vc-annotate-mode-map, vc-annotate-mode-syntax-table): + Initialize directly in the defvar. (vc-do-command): Bind inhibit-read-only so as to properly handle the case where the destination buffer has been made read-only. (vc-diff): Delegate to vc-version-diff in all cases. (vc-version-diff): Setup the *vc-diff* buffer as was done in vc-diff. - (vc-annotate-mode-variables): Removed (code moved partly to + (vc-annotate-mode-variables): Remove (code moved partly to defvars and partly to vc-annotate-add-menu). (vc-annotate-mode): Turned into a derived-mode. - (vc-annotate-add-menu): Moved in code in + (vc-annotate-add-menu): Move in code in vc-annotate-mode-variables. (vc-update-change-log): Use make-temp-file if available. @@ -13148,51 +13148,51 @@ 2000-09-04 Andre Spiegel <spiegel@inf.fu-berlin.de> - * vc.el (vc-next-action-on-file): Added handling of state + * vc.el (vc-next-action-on-file): Add handling of state `unlocked-changes'. (vc-checkout-carefully): Is now practically obsolete, unless the above is too slow to be enabled unconditionally. - (vc-update-change-log): Fixed typo. + (vc-update-change-log): Fix typo. - * vc-sccs.el (vc-sccs-steal-lock): Renamed from `vc-sccs-steal'. + * vc-sccs.el (vc-sccs-steal-lock): Rename from `vc-sccs-steal'. * vc-sccs-hooks.el (vc-sccs-state): Somewhat rewritten. Now handles state `unlocked-changes'. (vc-sccs-workfile-unchanged-p): New function, to support the above. - * vc-rcs.el (vc-rcs-steal-lock): Renamed from `vc-rcs-steal'. + * vc-rcs.el (vc-rcs-steal-lock): Rename from `vc-rcs-steal'. - * vc-rcs-hooks.el (vc-rcs-state): Fixed typo. + * vc-rcs-hooks.el (vc-rcs-state): Fix typo. (vc-rcs-fetch-master-state): Bug fixes. Recognize state `unlocked-changes'. - (vc-rcs-workfile-unchanged-p): Renamed from + (vc-rcs-workfile-unchanged-p): Rename from `vc-rcs-workfile-unchanged'. This is not a real backend-specific function yet, but supposed to become one soon. - * vc-hooks.el (vc-backend-functions): Renamed `vc-steal' to + * vc-hooks.el (vc-backend-functions): Rename `vc-steal' to `vc-steal-lock'. - (vc-call-backend): Changed error message. - (vc-state): Added description of state `unlocked-changes'. + (vc-call-backend): Change error message. + (vc-state): Add description of state `unlocked-changes'. 2000-09-04 Andre Spiegel <spiegel@inf.fu-berlin.de> - * vc-cvs-hooks.el (vc-cvs-registered): Fixed bug that caused it to + * vc-cvs-hooks.el (vc-cvs-registered): Fix bug that caused it to always return t in CVS-controlled directories. * vc.el (vc-responsible-backend): New function. (vc-register): Largely rewritten. - (vc-admin): Removed (implementation moved into vc-register). + (vc-admin): Remove (implementation moved into vc-register). (vc-checkin): Redocumented. (vc-finish-logentry): If no backend defined yet (because we are in the process of registering), use the responsible backend. * vc-hooks.el (vc-backend-hook-functions, vc-backend-functions): - Updated function lists. - (vc-call-backend): Fixed typo. + Update function lists. + (vc-call-backend): Fix typo. * vc-sccs.el, vc-rcs.el, vc-cvs.el (vc-BACKEND-responsible-p): New functions. - (vc-BACKEND-register): Renamed from `vc-BACKEND-admin'. + (vc-BACKEND-register): Rename from `vc-BACKEND-admin'. Removed query option. Redocumented. 2000-09-04 Andre Spiegel <spiegel@inf.fu-berlin.de> @@ -13204,18 +13204,18 @@ 2000-09-04 Martin Lorentzson <martinl@gnu.org> - * vc-rcs.el (vc-rcs-backend-release-p): function added. other - stuff updated to reference this function instead of the old + * vc-rcs.el (vc-rcs-backend-release-p): function added. + other stuff updated to reference this function instead of the old `vc-backend-release-p'. 2000-09-04 Andre Spiegel <spiegel@inf.fu-berlin.de> - * vc-sccs-hooks.el (vc-uses-locking): Renamed to + * vc-sccs-hooks.el (vc-uses-locking): Rename to vc-checkout-model. Return appropriate values. Updated callers. 2000-09-04 Martin Lorentzson <martinl@gnu.org> - * vc.el (vc-backend-release, vc-backend-release-p): Moved to vc-rcs.el. + * vc.el (vc-backend-release, vc-backend-release-p): Move to vc-rcs.el. (vc-backend-revert): Function moved into `vc-revert'; `vc-next-action' must be updated to accommodate this change. (vc-backend-steal): Function moved into `vc-finish-steal'. @@ -13295,31 +13295,31 @@ 2000-09-04 Andre Spiegel <spiegel@inf.fu-berlin.de> * vc.el (vc-next-action-on-file): Rewritten for the new state model. - (vc-backend-merge-news): Renamed to `vc-merge-news'. (Specific parts + (vc-backend-merge-news): Rename to `vc-merge-news'. (Specific parts still need to be split, and implemented for RCS). 2000-09-04 Martin Lorentzson <martinl@gnu.org> * vc-sccs-hooks.el (vc-sccs-state-heuristic): Bug found and fixed. - * vc-sccs.el (vc-sccs-admin): Added the query-only option as + * vc-sccs.el (vc-sccs-admin): Add the query-only option as required by the vc.el file. - * vc-rcs.el (vc-rcs-admin): Added the query-only option as + * vc-rcs.el (vc-rcs-admin): Add the query-only option as required by the vc.el file. (vc-rcs-exists): Function added. - * vc-cvs.el (vc-cvs-admin): Added the query-only option as + * vc-cvs.el (vc-cvs-admin): Add the query-only option as required by the vc.el file. - * vc.el (vc-admin): Updated to handle selection of appropriate + * vc.el (vc-admin): Update to handle selection of appropriate backend. Current implementation is crufty and need re-thinking. * vc-hooks.el (vc-parse-buffer): Bug found and fixed. 2000-09-04 Martin Lorentzson <martinl@gnu.org> - * vc-cvs.el (vc-cvs-annotate-difference): Updated to handle + * vc-cvs.el (vc-cvs-annotate-difference): Update to handle beginning of annotate buffers correctly. * vc.el (vc-annotate-get-backend, vc-annotate-display-default) @@ -13338,11 +13338,11 @@ 2000-09-04 Martin Lorentzson <martinl@gnu.org> - * vc-sccs-hooks.el (vc-sccs-registered): Updated. + * vc-sccs-hooks.el (vc-sccs-registered): Update. - * vc-rcs-hooks.el (vc-rcs-registered): Updated. + * vc-rcs-hooks.el (vc-rcs-registered): Update. - * vc-cvs-hooks.el (vc-cvs-registered): Updated. + * vc-cvs-hooks.el (vc-cvs-registered): Update. 2000-09-04 Martin Lorentzson <martinl@gnu.org> @@ -13434,8 +13434,8 @@ * vc-hooks.el (vc-master-templates): Is really obsolete. Comment out the definition for now. What is the right procedure to get rid of it? - (vc-registered, vc-backend, vc-buffer-backend, vc-name): Largely - rewritten. + (vc-registered, vc-backend, vc-buffer-backend, vc-name): + Largely rewritten. (vc-default-registered): Remove. (vc-check-master-templates): New function; does mostly what the above did before. @@ -13482,12 +13482,12 @@ * vc.el (vc-backend-checkout): Function removed and replaced in the vc-backend.el files. - * vc-sccs.el (vc-sccs-checkout): Added function `vc-sccs-checkout'. + * vc-sccs.el (vc-sccs-checkout): Add function `vc-sccs-checkout'. - * vc.el (vc-backend-admin): Removed and replaced in the + * vc.el (vc-backend-admin): Remove and replaced in the vc-backend.el files. - * vc.el (Martin): Removed all the annotate functionality since it + * vc.el (Martin): Remove all the annotate functionality since it is CVS backend specific. 2000-09-04 Andre Spiegel <spiegel@inf.fu-berlin.de> @@ -13513,7 +13513,7 @@ (vc-logentry-check-hook): New option. (vc-steal-lock): Use compose-mail. (vc-dired-mode-map): Defvar when compiling. - (vc-add-triple, vc-record-rename, vc-lookup-triple): Moved to + (vc-add-triple, vc-record-rename, vc-lookup-triple): Move to vc-sccs.el and renamed. Callers changed. (vc-backend-checkout, vc-backend-logentry-check) (vc-backend-merge-news): Doc fix. @@ -13538,7 +13538,7 @@ (vc-rcs-checkin): New functions (code from vc.el). (vc-rcs-previous-version, vc-rcs-system-release, vc-rcs-checkout): Doc fix. - (vc-rcs-release): Deleted. (Duplicated vc-rcs-system-release). + (vc-rcs-release): Delete. (Duplicated vc-rcs-system-release). * vc-sccs.el: Require vc when compiling. (vc-sccs-print-log, vc-sccs-assign-name, vc-sccs-merge) @@ -13547,7 +13547,7 @@ (vc-sccs-checkin, vc-sccs-logentry-check): New functions (code from vc.el). (vc-sccs-add-triple, vc-sccs-record-rename) - (vc-sccs-lookup-triple): Moved from vc.el and renamed. + (vc-sccs-lookup-triple): Move from vc.el and renamed. (vc-sccs-admin): Doc fix. 2000-09-04 Martin Lorentzson <martinl@gnu.org> @@ -13557,64 +13557,64 @@ (vc-rcs-release-p, vc-rcs-admin, vc-rcs-checkout): New functions from vc.el. - * vc-sccs.el (vc-admin-sccs): Added from vc.el + * vc-sccs.el (vc-admin-sccs): Add from vc.el * vc-cvs.el: Moved the annotate functionality from vc.el. - (vc-cvs-admin, vc-cvs-fetch-status): Added from vc.el. + (vc-cvs-admin, vc-cvs-fetch-status): Add from vc.el. 2000-09-04 Dave Love <fx@gnu.org> * vc.el (vc-backend-release): Call vc-system-release. * vc-sccs.el (vc-sccs-system-release): - Renamed from vc-sccs-backend-release. + Rename from vc-sccs-backend-release. * vc-rcs.el (vc-rcs-system-release): - Renamed from vc-rcs-backend-release. + Rename from vc-rcs-backend-release. * vc-cvs.el (vc-cvs-system-release): - Renamed from vc-cvs-backend-release. + Rename from vc-cvs-backend-release. 2000-09-04 Dave Love <fx@gnu.org> - * vc.el (vc-rcs-release, vc-cvs-release, vc-sccs-release): Moved to + * vc.el (vc-rcs-release, vc-cvs-release, vc-sccs-release): Move to backend files. (vc-backend-release): Dispatch to backend functions. (vc-backend-release-p): Don't mention CVS, RCS. [The SCCS case probably needs attention.] - * vc-sccs.el, vc-rcs.el (vc-sccs-release): Moved from vc.el. + * vc-sccs.el, vc-rcs.el (vc-sccs-release): Move from vc.el. (vc-sccs-backend-release): New function. - * vc-cvs.el (vc-cvs-release): Moved from vc.el. + * vc-cvs.el (vc-cvs-release): Move from vc.el. (vc-cvs-backend-release): New function. * vc.el (vc-dired-mode, vc-dired-reformat-line, vc-dired-purge): Doc fix. - (vc-fetch-cvs-status): Moved to vc-cvs.el and renamed. + (vc-fetch-cvs-status): Move to vc-cvs.el and renamed. (vc-default-dired-state-info): New function. (vc-dired-state-info): Dispatch to backends. (vc-dired-hook): Doc fix. Simplify, pending removal of CVS specifics. - * vc-cvs.el (vc-cvs-dired-state-info, vc-cvs-fetch-status): Moved - from vc.el and renamed. + * vc-cvs.el (vc-cvs-dired-state-info, vc-cvs-fetch-status): + Move from vc.el and renamed. 2000-09-04 Andre Spiegel <spiegel@inf.fu-berlin.de> * vc.el (vc-file-clear-masterprops, vc-latest-on-branch-p) - (vc-version-other-window, vc-backend-assign-name): Removed - references to vc-latest-version; sometimes changed into + (vc-version-other-window, vc-backend-assign-name): + Remove references to vc-latest-version; sometimes changed into vc-workfile-version. - * vc-rcs-hooks.el (vc-master-workfile-version): Renamed to + * vc-rcs-hooks.el (vc-master-workfile-version): Rename to vc-rcs-master-workfile-version. (vc-rcs-workfile-version): Use the above. Don't call vc-latest-version (that was unreachable code, anyway). (vc-rcs-fetch-master-properties): Doc fix. - * vc-hooks.el (vc-latest-version, vc-your-latest-version): Removed. - (vc-backend-hook-functions): Removed them from this list, too. - (vc-fetch-properties): Removed. + * vc-hooks.el (vc-latest-version, vc-your-latest-version): Remove. + (vc-backend-hook-functions): Remove them from this list, too. + (vc-fetch-properties): Remove. (vc-workfile-version): Doc fix. * vc-rcs-hooks.el (vc-rcs-consult-headers): New function. @@ -13622,7 +13622,7 @@ (vc-rcs-uses-locking): Use it. * vc-hooks.el (vc-consult-rcs-headers): - Moved into vc-rcs-hooks.el, under the name + Move into vc-rcs-hooks.el, under the name vc-rcs-consult-headers. * vc-cvs-hooks.el (vc-cvs-workfile-version): Don't consult RCS @@ -13638,7 +13638,7 @@ New functions. * vc-hooks.el (vc-master-locks, vc-master-locking-user): - Moved into both + Move into both vc-rcs-hooks.el and vc-sccs-hooks.el. These properties and access functions are implementation details of those two backends. @@ -13654,31 +13654,31 @@ * vc-cvs-hooks.el (vc-cvs-fetch-master-properties): CVS-specific code moved here from vc-hooks. - * vc-hooks.el (vc-parse-locks, vc-fetch-master-properties): Split - into back-end specific parts and removed. Callers not updated + * vc-hooks.el (vc-parse-locks, vc-fetch-master-properties): + Split into back-end specific parts and removed. Callers not updated yet; because I guess these callers will disappear into back-end specific files anyway. 2000-09-04 Andre Spiegel <spiegel@inf.fu-berlin.de> * vc.el (with-vc-file, vc-next-action-on-file, vc-merge) - (vc-backend-checkout): Changed calls to `vc-checkout-model' to + (vc-backend-checkout): Change calls to `vc-checkout-model' to `vc-uses-locking'. - * vc-hooks.el (vc-checkout-model): Renamed to vc-uses-locking. + * vc-hooks.el (vc-checkout-model): Rename to vc-uses-locking. Store yes/no in the property, and return t/nil. Updated all callers. - * vc-sccs-hooks.el (vc-sccs-checkout-model): Renamed to + * vc-sccs-hooks.el (vc-sccs-checkout-model): Rename to vc-sccs-uses-locking. Don't set property. (vc-sccs-locking-user): Don't set property. - * vc-cvs-hooks.el (vc-cvs-checkout-model): Renamed to + * vc-cvs-hooks.el (vc-cvs-checkout-model): Rename to vc-cvs-uses-locking. Don't set property here; leave that to vc-hooks. (vc-cvs-locking-user): Reflect above change. Streamlined. - * vc-rcs-hooks.el (vc-rcs-checkout-model): Renamed to + * vc-rcs-hooks.el (vc-rcs-checkout-model): Rename to vc-rcs-uses-locking. (vc-rcs-locking-user): Reflect above change. @@ -13709,36 +13709,36 @@ 2000-09-04 Dave Love <fx@gnu.org> * vc-hooks.el (vc-rcsdiff-knows-brief, vc-rcs-lock-from-diff) - (vc-master-workfile-version): Moved from vc-hooks. + (vc-master-workfile-version): Move from vc-hooks. * vc-rcs-hooks.el: Fix duplicate code in last change. * vc-rcs-hooks.el: Require vc-hooks when compiling. (vc-rcs-master-templates): Improve :type. (vc-rcsdiff-knows-brief, vc-rcs-lock-from-diff) - (vc-master-workfile-version): Moved from vc-hooks. + (vc-master-workfile-version): Move from vc-hooks. * vc-sccs-hooks.el: Require vc-hooks when compiling. (vc-sccs-master-templates): Improve :type. (vc-sccs-lock-file): Moved/renamed from vc-hooks.el vc-lock-file. - * vc-hooks.el (vc-lock-file): Moved to vc-sccs-hooks and renamed. + * vc-hooks.el (vc-lock-file): Move to vc-sccs-hooks and renamed. * vc-cvs-hooks.el: Require vc-hooks when compiling. - (vc-cvs-master-templates): Improve :type. Use - vc-cvs-find-cvs-master. - (vc-handle-cvs, vc-cvs-parse-status, vc-cvs-status): Moved here + (vc-cvs-master-templates): Improve :type. + Use vc-cvs-find-cvs-master. + (vc-handle-cvs, vc-cvs-parse-status, vc-cvs-status): Move here from vc-hooks. - (vc-vc-find-cvs-master): Renamed to vc-cvs-find-cvs-master. + (vc-vc-find-cvs-master): Rename to vc-cvs-find-cvs-master. * vc-hooks.el (vc-handle-cvs, vc-cvs-parse-status, vc-cvs-status): - Moved to vc-cvs-hooks. + Move to vc-cvs-hooks. * vc-hooks.el: Add doc strings in various places. Simplify the minor mode setup. (vc-handled-backends): New user variable. - (vc-parse-buffer, vc-insert-file, vc-default-registered): Minor - simplification. + (vc-parse-buffer, vc-insert-file, vc-default-registered): + Minor simplification. 2000-09-04 Dave Love <fx@gnu.org> @@ -13796,11 +13796,11 @@ 2000-09-04 Dave Love <fx@gnu.org> - * mouse.el (mouse-major-mode-menu, mouse-popup-menubar): Run - menu-bar-update-hook. + * mouse.el (mouse-major-mode-menu, mouse-popup-menubar): + Run menu-bar-update-hook. - * help.el (help-manyarg-func-alist): Add - find-operation-coding-system. + * help.el (help-manyarg-func-alist): + Add find-operation-coding-system. * wid-edit.el (widget-sexp-validate): Fix garbled code. @@ -13823,7 +13823,7 @@ 2000-09-01 John Wiegley <johnw@gnu.org> - * pcomplete.el (pcomplete-dirs-or-entries): Added a missing + * pcomplete.el (pcomplete-dirs-or-entries): Add a missing predicate, which caused entries in the completion list to be doubled. @@ -13843,8 +13843,8 @@ 2000-08-28 John Wiegley <johnw@gnu.org> - * eshell/esh-var.el (pcomplete/eshell-mode/unset): Added - completion function for Eshell's implementation of `unset'. + * eshell/esh-var.el (pcomplete/eshell-mode/unset): + Add completion function for Eshell's implementation of `unset'. 2000-09-02 Eli Zaretskii <eliz@is.elta.co.il> @@ -13863,8 +13863,8 @@ 2000-08-30 Andrew Innes <andrewi@gnu.org> * timer.el (run-with-idle-timer): Undo last change, so that timer - is not activated immediately if Emacs is already idle. Some - existing code relies on this behavior. + is not activated immediately if Emacs is already idle. + Some existing code relies on this behavior. 2000-08-30 Miles Bader <miles@gnu.org> @@ -13924,22 +13924,22 @@ * help.el (help-xref-mule-regexp): New variable. (help-make-xrefs): Handle help-xref-mule-regexp. - * international/mule-cmds.el (help-xref-mule-regexp-template): New - variable. + * international/mule-cmds.el (help-xref-mule-regexp-template): + New variable. (describe-input-method): Temporarily activate the specified input method to display the information. (describe-language-environment): Hyperlinks to mule related items. - * international/mule-diag.el (charset-multibyte-form-string): New - function. + * international/mule-diag.el (charset-multibyte-form-string): + New function. (list-character-sets-1): Use charset-multibyte-form-string. (describe-character-set): New function. (describe-coding-system): Hyperlinks to safe character sets. * international/quail.el (quail-help): New arg PACKAGE. Hyperlinks to mule related items. - (quail-help-insert-keymap-description): Use - substitute-command-keys instead of describe-bindings. + (quail-help-insert-keymap-description): + Use substitute-command-keys instead of describe-bindings. (quail-translation-help): Hyperlinks to mule related items. 2000-08-28 John Wiegley <johnw@gnu.org> @@ -13948,7 +13948,7 @@ have a defsubst call itself. Made `eshell-flatten-list' back into a function again. - * eshell/em-smart.el (eshell-smart-redisplay): Added a safety + * eshell/em-smart.el (eshell-smart-redisplay): Add a safety catch, in case re-centering point at bottom messes up the display. This happens frequently in Emacs 21, due I believe to variable line heights. @@ -13978,11 +13978,11 @@ (eshell-copy-handles): Created a new macro for duplicating the current set of open handles. This is needed by the looping functions. - (eshell-do-eval): Fixed while and if, so that the eshell-test-body + (eshell-do-eval): Fix while and if, so that the eshell-test-body is not incorrectly stomped on. - * eshell/em-cmpl.el (eshell-cmpl-use-paring): Mirror - declaration for pcomplete-use-paring. + * eshell/em-cmpl.el (eshell-cmpl-use-paring): + Mirror declaration for pcomplete-use-paring. (eshell-cmpl-initialize): Set pcomplete-use-paring based on the value of eshell-cmpl-use-paring. * pcomplete.el (pcomplete-use-paring): New config variable, to @@ -13990,7 +13990,7 @@ (pcomplete-do-complete): If pcomplete-use-paring is t, pare out completion alternatives that have already been used. - * eshell/esh-mode.el (eshell-repeat-argument): Added function, + * eshell/esh-mode.el (eshell-repeat-argument): Add function, bound to C-c C-y, which will repeat the previous N arguments (based on prefix argument). (eshell-mode): Bind C-c C-y to eshell-repeat-argument. @@ -14001,8 +14001,8 @@ name to delete is. * eshell/esh-util.el (eshell-read-passwd-file): Only keep the - first entry that correlates to a passwd/group number. Later - entries (used for group/user name aliasing to multiple IDs) are + first entry that correlates to a passwd/group number. + Later entries (used for group/user name aliasing to multiple IDs) are ignored. * eshell/em-xtra.el (eshell/expr): @@ -14011,7 +14011,7 @@ * eshell/em-dirs.el (eshell-dirs-substitute-cd): Flatten the argument list, before passing it to the system command. - * eshell/esh-mode.el (eshell-find-tag): Added a special version of + * eshell/esh-mode.el (eshell-find-tag): Add a special version of `find-tag' for use at final position in Eshell buffers (which otherwise triggers an error on Emacs 21). (eshell-mode): Bind M-. to `eshell-find-tag' with the Eshell @@ -14030,10 +14030,10 @@ types RET after an open delimiter (like "), display a message indicating that Eshell is waiting for the closing delimiter. - * eshell/esh-var.el (eshell/unset): Added a command for unsetting + * eshell/esh-var.el (eshell/unset): Add a command for unsetting environment variables. - * eshell/em-unix.el (eshell/diff): Added logic to fail more + * eshell/em-unix.el (eshell/diff): Add logic to fail more gracefully if the user enters incorrect arguments. * eshell/esh-mode.el (eshell-mode): Disable auto-fill-function in @@ -14046,7 +14046,7 @@ * eshell/em-ls.el (eshell-ls-decorated-name): Use /= instead of (not (= ...)). - * eshell/em-unix.el (eshell-shuffle-files): Added use of `apply', + * eshell/em-unix.el (eshell-shuffle-files): Add use of `apply', to ensure the `preserve' flag gets propagated when doing recursive directory copies. @@ -14059,15 +14059,15 @@ 2000-08-28 Eli Zaretskii <eliz@is.elta.co.il> - * eshell/esh-util.el (eshell-processp): Added to relieve constant + * eshell/esh-util.el (eshell-processp): Add to relieve constant testing of `fboundp' on `processp'. * eshell/esh-proc.el (eshell/kill): Use eshell-processp. (eshell/jobs): Don't call process-list if it is not bound. (eshell-gather-process-output): Support systems where async subprocesses aren't supported. - (eshell-scratch-buffer, eshell-last-sync-output-start): New - variables. + (eshell-scratch-buffer, eshell-last-sync-output-start): + New variables. * eshell/esh-cmd.el (eshell-resume-eval): Handle the case when eshell-do-eval returns t. @@ -14082,8 +14082,8 @@ * eshell/esh-io.el (eshell-virtual-targets): Doc fix. (eshell-close-target, eshell-get-target): Use eshell-processp. - (eshell-print, eshell-error, eshell-errorn, eshell-printn): Doc - fix. + (eshell-print, eshell-error, eshell-errorn, eshell-printn): + Doc fix. (eshell-get-target, eshell-create-handles): Doc fix. 2000-08-28 Miles Bader <miles@lsi.nec.co.jp> @@ -14173,15 +14173,15 @@ 2000-08-25 Kenichi Handa <handa@etl.go.jp> - * terminal.el (terminal-emulator): Fix args to `concat'. Now - concat doesn't accept integer. + * terminal.el (terminal-emulator): Fix args to `concat'. + Now concat doesn't accept integer. - * international/kkc.el: Remove SKK from Keywords. Require - ja-dic-utl instead of skkdic-utl. + * international/kkc.el: Remove SKK from Keywords. + Require ja-dic-utl instead of skkdic-utl. * international/ja-dic-cnv.el: Renamed from skkdic-cnv.el. Provide ja-dic-cnv instead of skkdic-cnv. - (ja-dic-filename): Renamed from skkdic-filename. Referrers changed. + (ja-dic-filename): Rename from skkdic-filename. Referrers changed. (iso-2022-7bit-short): Add safe-charsets property. (skkdic-convert-postfix): Search Japanese chou-on character in addition to Hiragana character. @@ -14208,8 +14208,8 @@ 2000-08-24 Kenichi Handa <handa@etl.go.jp> - * international/mule-cmds.el (reset-language-environment): Set - default-process-coding-system to '(undecided . iso-latin-1), which + * international/mule-cmds.el (reset-language-environment): + Set default-process-coding-system to '(undecided . iso-latin-1), which makes process I/O almost consistent with file I/O. Call this function when mule-cmds.el[c] is loaded. @@ -14318,8 +14318,8 @@ * comint.el (comint-output-filter): Save the point with a marker, not just a buffer position. - * international/mule.el (set-buffer-process-coding-system): Make - interactive prompt less confusing. + * international/mule.el (set-buffer-process-coding-system): + Make interactive prompt less confusing. 2000-08-19 Gerd Moellmann <gerd@gnu.org> @@ -14358,8 +14358,8 @@ 2000-08-18 Gerd Moellmann <gerd@gnu.org> - * textmodes/ispell.el (ispell-dictionary-alist-6): Add - `portugues'. + * textmodes/ispell.el (ispell-dictionary-alist-6): + Add `portugues'. * bindings.el (esc-map): Bind `C-delete' and `C-backspace' to backward-kill-sexp, analogous to kill-sexp. @@ -14372,18 +14372,18 @@ * ispell.el: Set to standard author/maintainer/keyword fields. Fine tuning to menu map appearance and operation, and added help. Remove `start' and `end' error messages when compiling. - (ispell-choices-win-default-height): Fixed comment string. - (ispell-dictionary-alist-1): Fixed regexp in castellano and + (ispell-choices-win-default-height): Fix comment string. + (ispell-dictionary-alist-1): Fix regexp in castellano and castellano8 dictionaries. - (ispell-dictionary-alist-3): Fixed regexp in francais dictionary. - (ispell-dictionary-alist-4): Fixed regexp in francais-tex + (ispell-dictionary-alist-3): Fix regexp in francais dictionary. + (ispell-dictionary-alist-4): Fix regexp in francais-tex dictionary, added italiano dictionary. - (ispell-skip-region-alist): Removed regexp thrashing when `-' is a + (ispell-skip-region-alist): Remove regexp thrashing when `-' is a word character. - (ispell-tex-skip-alists): Added psfig support. - (ispell-skip-html): Renamed from ispell-skip-sgml. + (ispell-tex-skip-alists): Add psfig support. + (ispell-skip-html): Rename from ispell-skip-sgml. (ispell-begin-skip-region-regexp, ispell-skip-region) - (ispell-minor-check): Improved html skipping support to skip across + (ispell-minor-check): Improve html skipping support to skip across code, and recognize `&' commands without proper `;' syntax. (ispell-process-line): Fix alignment error when manually correcting spelling. @@ -14397,8 +14397,8 @@ shell-command-on-region as in format-decode-run-method because shell-command-on-region can display a buffer with error output. (format-decode): Don't record undo information for the decoding. - (format-annotate-function): Add parameter FORMAT-COUNT. Make - that number part of the temporary buffer name so that more than + (format-annotate-function): Add parameter FORMAT-COUNT. + Make that number part of the temporary buffer name so that more than one decoding using a temporary buffer can happen safely. * enriched.el (enriched-annotation-regexp): Use `A-Z' instead @@ -14571,16 +14571,16 @@ 2000-08-15 Miles Bader <miles@gnu.org> * textmodes/ispell.el (ispell-graphic-p): New constant. - (ispell-choices-win-default-height, ispell-help): Use - `ispell-graphic-p' instead of `xemacsp'. + (ispell-choices-win-default-height, ispell-help): + Use `ispell-graphic-p' instead of `xemacsp'. 2000-08-15 Dave Love <fx@gnu.org> * simple.el: Autoload widget-convert when compiling. (mail-user-agent): Doc fix. - * help.el (function-called-at-point, variable-at-point): Use - with-syntax-table. + * help.el (function-called-at-point, variable-at-point): + Use with-syntax-table. (help-manyarg-func-alist): Add insert-and-inherit. * thingatpt.el (thing-at-point-url-regexp): Prepend `\<'. @@ -14589,7 +14589,7 @@ * find-file.el: Doc fixes. Move provide to end. (ff) <defgroup>: Add :link. - (ff-goto-click): Deleted. + (ff-goto-click): Delete. (ff-mouse-find-other-file, ff-mouse-find-other-file-other-window): Use mouse-set-point. @@ -14615,8 +14615,8 @@ Doze and Dog. (browse-url): Use dolist, not mapcar. (browse-url-at-point): Check for null url. - (browse-url-event-buffer, browse-url-event-point): Functions - deleted. + (browse-url-event-buffer, browse-url-event-point): + Functions deleted. (browse-url-at-mouse, browse-url-netscape): Simplify. * msb.el (msb--few-menus, msb--very-many-menus): Use current Gnus @@ -14724,7 +14724,7 @@ (comint-snapshot-last-prompt): New function. (comint-send-input): Snapshot the last prompt. Use comint-highlight-input-face. - (comint-highlight-input-face): Renamed from `comint-highlight-face'. + (comint-highlight-input-face): Rename from `comint-highlight-face'. Use defface instead of defcustom. (send-invisible, comint-send-eof): Snapshot the last prompt. (comint-delchar-or-maybe-eof): Use comint-send-eof. @@ -14785,8 +14785,8 @@ * emacs-lisp/lisp-mode.el (eval-last-sexp-1): Handle `#N=' labels. - * help.el (print-help-return-message): When - display-buffer-reuse-frames is set, let the help window been quit, + * help.el (print-help-return-message): + When display-buffer-reuse-frames is set, let the help window been quit, instead of deleting it, which might delete a reused frame. 2000-08-08 Eli Zaretskii <eliz@is.elta.co.il> @@ -14807,7 +14807,7 @@ * emacs-lisp/cl-indent.el (toplevel): Indent `defclass', `defconst', `define-condition', `with-slots'. - * font-lock.el (lisp-font-lock-keywords-2): Added `with-' and `do-'. + * font-lock.el (lisp-font-lock-keywords-2): Add `with-' and `do-'. 2000-08-03 Miles Bader <miles@gnu.org> @@ -14826,16 +14826,16 @@ properties if comint-use-prompt-regexp-instead-of-fields is nil. (comint-line-beginning-position): New function. (comint-bol): Use comint-line-beginning-position. Make ARG optional. - (comint-replace-by-expanded-history-before-point): Use - comint-line-beginning-position and line-end-position. + (comint-replace-by-expanded-history-before-point): + Use comint-line-beginning-position and line-end-position. (comint-last-output-overlay): New variable. (comint-mode): Make `comint-last-output-overlay' buffer-local. * shell.el (shell-prompt-pattern): Doc change. (shell-backward-command): Use line-beginning-position. - * gud.el (gud-gdb-complete-command): Use - comint-line-beginning-position. + * gud.el (gud-gdb-complete-command): + Use comint-line-beginning-position. * ielm.el (ielm-indent-line): Detect a "prompt" line by seeing if comint-bol doesn't actually go to the beginning of the line. @@ -14849,13 +14849,13 @@ (sql-copy-column): Use comint-line-beginning-position instead of explicitly matching comint-prompt-regexp. - * progmodes/octave-inf.el (inferior-octave-complete): Use - comint-line-beginning-position. + * progmodes/octave-inf.el (inferior-octave-complete): + Use comint-line-beginning-position. * progmodes/inf-lisp.el (inferior-lisp-prompt): Doc change. - * progmodes/idlw-shell.el (idlwave-shell-send-command): When - looking for a prompt, use `forward-line 0' instead of + * progmodes/idlw-shell.el (idlwave-shell-send-command): + When looking for a prompt, use `forward-line 0' instead of `beginning-of-line', to avoid getting caught by an input field. 2000-08-07 Gerd Moellmann <gerd@gnu.org> @@ -14926,8 +14926,8 @@ 2000-08-03 Eli Zaretskii <eliz@is.elta.co.il> - * international/mule-cmds.el (select-safe-coding-system): Make - the message text about selecting a safe coding system more clear. + * international/mule-cmds.el (select-safe-coding-system): + Make the message text about selecting a safe coding system more clear. 2000-08-02 Gerd Moellmann <gerd@gnu.org> @@ -14951,8 +14951,8 @@ 2000-08-02 Eli Zaretskii <eliz@is.elta.co.il> - * progmodes/ebrowse.el (ebrowse-tree-mode-map): Use - display-mouse-p instead of window-system. + * progmodes/ebrowse.el (ebrowse-tree-mode-map): + Use display-mouse-p instead of window-system. (ebrowse-member-mode-map): Ditto. 2000-08-01 Vinicius Jose Latorre <vinicius@cpqd.com.br> @@ -14968,8 +14968,8 @@ font lock support on window-system. (ftp-font-lock-keywords, smbclient-font-lock-keywords): Likewise. - * textmodes/ispell.el (ispell-highlight-spelling-error): Use - display-color-p, if fboundp, instead of window-system. + * textmodes/ispell.el (ispell-highlight-spelling-error): + Use display-color-p, if fboundp, instead of window-system. 2000-07-31 Eli Zaretskii <eliz@is.elta.co.il> @@ -15060,8 +15060,8 @@ * subr.el (remove, remq): New functions. - * midnight.el (clean-buffer-list-kill-never-regexps): Correctly - escape `*' in regexps. + * midnight.el (clean-buffer-list-kill-never-regexps): + Correctly escape `*' in regexps. (midnight-find): Reverse order of arguments in the funcall of TEST. @@ -15072,12 +15072,12 @@ 2000-07-27 Alex Schroeder <alex@gnu.org> - * sql.el (sql-ms): Added autoload cookie. + * sql.el (sql-ms): Add autoload cookie. (sql-ingres, sql-solid, sql-mysql, sql-informix, sql-sybase) (sql-oracle): Ditto. (sql-help): Doc change. - (sql-mode-oracle-font-lock-keywords): Added PL/SQL keywords, data + (sql-mode-oracle-font-lock-keywords): Add PL/SQL keywords, data types and exceptions. 2000-07-27 Alex Schroeder <alex@gnu.org> @@ -15112,11 +15112,11 @@ (find-coding-systems-region-subset-p): This function deleted. (sort-coding-systems-predicate): New variable. (sort-coding-systems): New function. - (find-coding-systems-region): Use - find-coding-systems-region-internal. + (find-coding-systems-region): + Use find-coding-systems-region-internal. (find-coding-systems-string): Use find-coding-systems-region. - (find-coding-systems-for-charsets): Check - char-coding-system-table. + (find-coding-systems-for-charsets): + Check char-coding-system-table. (select-safe-coding-system-accept-default-p): New variable. (select-safe-coding-system): Mostly rewritten. New argument ACCEPT-DEFAULT-P. @@ -15148,29 +15148,29 @@ * net/ange-ftp.el (ange-ftp-file-newer-than-file-p): New function. (ange-ftp-real-file-newer-than-file-p): New function. (ange-ftp-verify-visited-file-modtime): Use `float-time'. - (ange-ftp-dot-to-slash): Removed (use `subst-char-in-string'). + (ange-ftp-dot-to-slash): Remove (use `subst-char-in-string'). - * tooltip.el (tooltip-float-time): Removed (use `float-time'). + * tooltip.el (tooltip-float-time): Remove (use `float-time'). * midnight.el (midnight-float-time): Ditto. 2000-07-26 Andreas Schwab <schwab@suse.de> - * files.el (normal-backup-enable-predicate): Correct - interpretation of the return value of compare-strings. + * files.el (normal-backup-enable-predicate): + Correct interpretation of the return value of compare-strings. 2000-07-26 Gerd Moellmann <gerd@gnu.org> * isearch.el (isearch-resume): New function. (isearch-done): Add something to command-history to resume the search. - (isearch-yank-line, isearch-yank-word): Use - buffer-substring-no-properties instead of buffer-substring. + (isearch-yank-line, isearch-yank-word): + Use buffer-substring-no-properties instead of buffer-substring. * textmodes/flyspell.el (flyspell-mouse-map): Use `map' instead of flyspell-mouse-map. - * progmodes/make-mode.el (makefile-mode-abbrev-table): Remove - duplicate definition. + * progmodes/make-mode.el (makefile-mode-abbrev-table): + Remove duplicate definition. (makefile-mode): Remove duplicate setting of local-abbrev-table. * progmodes/m4-mode.el (m4-mode-abbrev-table): New variable. @@ -15186,8 +15186,8 @@ (ange-ftp-dot-to-slash): New function. (ange-ftp-fix-name-for-vms): Use it. - * midnight.el (midnight-buffer-display-time): Use - `with-current-buffer'. + * midnight.el (midnight-buffer-display-time): + Use `with-current-buffer'. 2000-07-25 Gerd Moellmann <gerd@gnu.org> @@ -15251,17 +15251,17 @@ 2000-07-24 Francis Wright <fjw@maths.qmw.ac.uk> - * dired.el (dired-sort-R-check): Added to allow recursive listing + * dired.el (dired-sort-R-check): Add to allow recursive listing to be undone. (dired-sort-other): Use it. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> * Release of cc-mode 5.27 -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-engine.el (c-looking-at-inexpr-block): Replaced a call to + * progmodes/cc-engine.el (c-looking-at-inexpr-block): Replace a call to c-beginning-of-statement-1 that caused a bad case of recursion which could consume a lot of CPU in large classes in languages that have in-expression classes (i.e. Java and Pike). @@ -15271,7 +15271,7 @@ before case 5 and is now case 4) to catch in-expression classes in top level expressions correctly. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-guess-basic-syntax): Less naive handling of objc-method-intro. Case 4 removed and case 5I added. @@ -15285,40 +15285,40 @@ * progmodes/cc-mode.el (java-mode): Use c-append-paragraph-start to initialize paragraph-start for javadoc markup. - * progmodes/cc-vars.el (c-style-variables-are-local-p): Incompatible - change by defaulting this to t. It's motivated by the + * progmodes/cc-vars.el (c-style-variables-are-local-p): + Incompatible change by defaulting this to t. It's motivated by the confusing behavior that otherwise arise from the style system when editing both java and non-java files at the same time (see the comments about style setting in c-common-init). -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-cmds.el (c-indent-new-comment-line): Added a kludge + * progmodes/cc-cmds.el (c-indent-new-comment-line): Add a kludge similar to the one in c-fill-paragraph to check the fill prefix from the adaptive fill function for sanity. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-defs.el (c-end-of-defun-1): Fixed forward scanning into + * progmodes/cc-defs.el (c-end-of-defun-1): Fix forward scanning into defun block. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-align.el (c-lineup-multi-inher): Handle lines with leading comma nicely. Extended to handle member initializers too. * progmodes/cc-engine.el (c-beginning-of-inheritance-list) - (c-guess-basic-syntax): Fixed recognition of inheritance lists + (c-guess-basic-syntax): Fix recognition of inheritance lists when the lines begins with a comma. - * progmodes/cc-vars.el (c-offsets-alist): Changed default for + * progmodes/cc-vars.el (c-offsets-alist): Change default for member-init-cont to c-lineup-multi-inher since it now handles member initializers and indents better for leading commas. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-cmds.el (c-electric-brace): Fixed some bugs in the state + * progmodes/cc-cmds.el (c-electric-brace): Fix some bugs in the state handling that caused class open lines to be recognized as statement-conts in some cases. @@ -15326,10 +15326,10 @@ guessed by the adaptive fill function unless point is on the first line of a block comment. - * progmodes/cc-engine.el (c-forward-syntactic-ws): Fixed an infloop bug + * progmodes/cc-engine.el (c-forward-syntactic-ws): Fix an infloop bug when the buffer ends with a macro continuation char. - * progmodes/cc-engine.el (c-guess-basic-syntax): Added support for + * progmodes/cc-engine.el (c-guess-basic-syntax): Add support for function definitions as statements in Pike. The first statement in a lambda block is now labeled defun-block-intro instead of statement-block-intro. @@ -15338,61 +15338,61 @@ so that the class surrounding point is selected, not the one innermost in the state. - * progmodes/cc-engine.el (c-guess-basic-syntax): Fixed bug in + * progmodes/cc-engine.el (c-guess-basic-syntax): Fix bug in recognition of switch labels having hanging multiline statements. * progmodes/cc-engine.el (c-beginning-of-member-init-list): Broke out some code in c-guess-basic-syntax to a separate function. - * progmodes/cc-engine.el (c-just-after-func-arglist-p): Fixed - recognition of member inits with multiple line arglists. + * progmodes/cc-engine.el (c-just-after-func-arglist-p): + Fix recognition of member inits with multiple line arglists. * progmodes/cc-engine.el (c-guess-basic-syntax): New case 5B.3 to detect member-init-cont when the commas are in funny places. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-defs.el (c-auto-newline): Removed this macro since it's + * progmodes/cc-defs.el (c-auto-newline): Remove this macro since it's not used anymore. * progmodes/cc-engine.el (c-looking-at-bos): New helper function. * progmodes/cc-engine.el (c-looking-at-inexpr-block): More tests to tell inexpr and toplevel classes apart in Pike. - * progmodes/cc-engine.el (c-guess-basic-syntax): Fixed bogus recognition + * progmodes/cc-engine.el (c-guess-basic-syntax): Fix bogus recognition of case 9A. * progmodes/cc-langs.el, progmodes/cc-mode.el (c-Pike-inexpr-class-key): New constant, since "class" can introduce an in-expression class in Pike nowadays. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-align.el (c-gnu-impose-minimum): Don't impose minimum indentation on cpp-macro lines. * progmodes/cc-engine.el (c-guess-basic-syntax): Made the cpp-macro a syntax modifier like comment-intro, to make it possible to - get syntactic indentation for preprocessor directives. It's - incompatible wrt to lineup functions on cpp-macro, but it has + get syntactic indentation for preprocessor directives. + It's incompatible wrt to lineup functions on cpp-macro, but it has no observable effect in the 99.9% common case where cpp-macro is set to -1000. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-engine.el (c-guess-basic-syntax): Fixed bug with missed + * progmodes/cc-engine.el (c-guess-basic-syntax): Fix bug with missed member-init-cont when the preceding arglist is several lines. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-styles.el (c-style-alist): The basic offset for the BSD style corrected to 8. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-styles.el (c-style-alist): Adjusted the indentation of + * progmodes/cc-styles.el (c-style-alist): Adjust the indentation of brace list openers in the gnu style. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-indent-command): Obey c-syntactic-indentation. @@ -15401,53 +15401,53 @@ (c-electric-lt-gt, c-electric-paren): Don't reindent old lines when c-syntactic-indentation is nil. - * progmodes/cc-engine.el (c-beginning-of-statement-1): Fixed bug where + * progmodes/cc-engine.el (c-beginning-of-statement-1): Fix bug where we were left at comments preceding the first statement when reaching the beginning of the buffer. * progmodes/cc-vars.el (c-syntactic-indentation): New variable to turn off all syntactic indentation. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-fill-paragraph): Keep one or two spaces between the text and the block comment ender when it hangs, depending on how many there are before the fill. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-engine.el (c-beginning-of-closest-statement): New helper function to go back to the closest preceding statement start, which could be inside a conditional statement. - * progmodes/cc-engine.el (c-guess-basic-syntax): Use - c-beginning-of-closest-statement in cases 10B.2, 17B and 17C. + * progmodes/cc-engine.el (c-guess-basic-syntax): + Use c-beginning-of-closest-statement in cases 10B.2, 17B and 17C. * progmodes/cc-engine.el (c-guess-basic-syntax): Better handling of arglist-intro, arglist-cont-nonempty and arglist-close when the arglist is nested inside parens. Cases 7A, 7C and 7F changed. - * progmodes/cc-langs.el (c-Java-javadoc-paragraph-start): Brought - up-to-date with javadoc 1.2. + * progmodes/cc-langs.el (c-Java-javadoc-paragraph-start): + Brought up-to-date with javadoc 1.2. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-engine.el (c-beginning-of-statement-1): Fixed handling of + * progmodes/cc-engine.el (c-beginning-of-statement-1): Fix handling of multiline Pike type decls. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-indent-new-comment-line): Always break multiline comments in multiline mode, regardless of comment-multi-line. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-engine.el (c-guess-basic-syntax): Fixed bug with + * progmodes/cc-engine.el (c-guess-basic-syntax): Fix bug with fully::qualified::names in C++ member init lists. Preamble in case 5D changed. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-langs.el (c-common-init): Handling of obsolete variables moved to c-initialize-cc-mode. More compatible style override @@ -15471,16 +15471,16 @@ that duplicate entries in styles have the same effect regardless of DONT-OVERRIDE. - * progmodes/cc-styles.el (c-set-style-2): Fixed bug where the + * progmodes/cc-styles.el (c-set-style-2): Fix bug where the initialization of inheriting styles failed when the dont-override flag is set. * progmodes/cc-vars.el (c-special-indent-hook): Don't use set-from-style on this. -2000-07-24 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-07-24 Martin Stjernholm <mast@lysator.liu.se> - * progmodes/cc-defs.el (c-forward-comment): Removed the workaround + * progmodes/cc-defs.el (c-forward-comment): Remove the workaround introduced in 5.38 since it had worse side-effects. If a line contains the string "//\"", it regarded the // as a comment start since the \ temporarily doesn't have escape syntax. @@ -15520,9 +15520,9 @@ paragraphs on the first or last line of a file. (ada-format-paramlist): Fix handling of default parameter values. (ada-get-body-name): New function. - (ada-get-current-indent): Optimized by searching directly for an - existing generic part or a statement outside of it. Handle - ada-indent-align-comments when indenting comments Replaced some + (ada-get-current-indent): Optimize by searching directly for an + existing generic part or a statement outside of it. + Handle ada-indent-align-comments when indenting comments Replaced some regexps by testing directly the next character. This results in a huge speedup on some files. New indentation scheme for renames statements. Stop looking for the 'while' or 'for' associated with @@ -15582,7 +15582,7 @@ (ada-add-ada-menu): Remove the map and name parameters. Add the Ada Reference Manual to the menu. (ada-check-current): Rewritten as a call to ada-compile-current. - (ada-compile): Removed. + (ada-compile): Remove. (ada-compile-application, ada-compile-current, ada-check-current): Set the compilation-search-path so that compile.el automatically finds the sources in src_dir. Automatic scrolling of the @@ -15596,7 +15596,7 @@ (ada-find-file-in-dir): New function. (ada-find-references): Set the environment variables for gnatfind. (ada-find-src-file-in-dir): New function. - (ada-first-non-nil): Removed. + (ada-first-non-nil): Remove. (ada-gdb-application): Add support for jdb, the java debugger. (ada-get-ada-file-name): Load the original-file first if not done yet. @@ -15614,20 +15614,20 @@ compilation-search-path,... Add the standard runtime library to the search path for find-file. (ada-prj-default-debugger): Was missing an opening '{'. - (ada-prj-default-bind-opt, ada-prj-default-link-opt): New - variables. + (ada-prj-default-bind-opt, ada-prj-default-link-opt): + New variables. (ada-prj-default-gnatmake-opt): New variable. (ada-prj-find-prj-file): Handles non-file buffers For non-Ada buffers, the project file is the default one Save the windows configuration before displaying the menu. - (ada-prj-src-dir, ada-prj-obj-dir, ada-prj-comp-opt,...): Removed. + (ada-prj-src-dir, ada-prj-obj-dir, ada-prj-comp-opt,...): Remove. (ada-read-identifier): Fix xrefs on operators (for "mod", "and", ...) regexp-quote identifiers names to support operators +, -,... in regexps. (ada-remote): New function. (ada-run-application): Erase the output buffer before starting the - run Support remote execution of the application. Use - call-process, or the arguments are incorrectly parsed. + run Support remote execution of the application. + Use call-process, or the arguments are incorrectly parsed. (ada-set-default-project-file): Reread the content of the active project file, not the one from the current buffer When a project file is set as the default project, all directories are @@ -15807,7 +15807,7 @@ * net/goto-addr.el: Change maintainer to FSF. - * info.el (Info-title-face-alist): Removed. + * info.el (Info-title-face-alist): Remove. 2000-07-18 David Ponce <david@dponce.com> @@ -15876,13 +15876,13 @@ * align.el (align-newline-and-indent): Adding new function, for auto-aligning blocks of code on RET. - (align-region): Fixed badly formatted minibuffer message. + (align-region): Fix badly formatted minibuffer message. 2000-07-17 Kenichi Handa <handa@etl.go.jp> * international/kkc.el (kkc-show-conversion-list-count): Customize it. - (kkc-region): Update kkc-next-count and kkc-prev-count here. Show - the conversion list at first if appropriate. + (kkc-region): Update kkc-next-count and kkc-prev-count here. + Show the conversion list at first if appropriate. (kkc-next): Don't update kkc-next-count here. (kkc-prev): Don't update kkc-prev-count here. (kkc-show-conversion-list-update): Fix setting up of conversion @@ -15897,8 +15897,8 @@ * cus-edit.el (custom-buffer-create-internal): Use a help-echo function to be more specific. - * wid-edit.el (widget-specify-field, widget-specify-button): Allow - non-string help-echo. + * wid-edit.el (widget-specify-field, widget-specify-button): + Allow non-string help-echo. (widget-types-convert-widget): Defsubst it. (widget-echo-help): Try to cope with a help-echo function of two possible sorts. @@ -15973,7 +15973,7 @@ Use fortran-comment-indent, not fortran-comment-indent-function. (fortran-comment-region, fortran-electric-line-number): Simplify. (fortran-auto-fill): New function. - (fortran-do-auto-fill): Deleted. + (fortran-do-auto-fill): Delete. (fortran-find-comment-start-skip): Check for non-null comment-start-skip. (fortran-auto-fill-mode, fortran-fill-statement): @@ -15985,8 +15985,8 @@ 2000-07-11 Eli Zaretskii <eliz@is.elta.co.il> - * eshell/esh-module.el (toplevel): Reference - byte-compile-current-file only if it is bound. + * eshell/esh-module.el (toplevel): + Reference byte-compile-current-file only if it is bound. 2000-07-10 Gerd Moellmann <gerd@gnu.org> @@ -16000,7 +16000,7 @@ 2000-07-10 Kenichi Handa <handa@etl.go.jp> - * international/mule-diag.el (describe-font): Adjusted for the + * international/mule-diag.el (describe-font): Adjust for the change of fontset-info. (print-fontset): Likewise. @@ -16039,7 +16039,7 @@ 2000-07-01 Francesco Potortì <pot@gnu.org> - * rmail.el (mail-unsent-separator): Changed "the" to "\\w+", as + * rmail.el (mail-unsent-separator): Change "the" to "\\w+", as exim can use "your message" instead of "the message". 2000-07-06 Stefan Monnier <monnier@cs.yale.edu> @@ -16054,8 +16054,8 @@ 2000-07-05 Michael Kifer <kifer@cs.sunysb.edu> * ediff-diff.el (ediff-wordify): Use syntax table. - * ediff-init.el (ediff-has-face-support-p): Use - ediff-color-display-p. + * ediff-init.el (ediff-has-face-support-p): + Use ediff-color-display-p. (ediff-color-display-p): Use display-color-p, changed to defun from defsubst. Got rid of special cases for NeXT and OS/2. @@ -16076,7 +16076,7 @@ * Makefile.in (DONTCOMPILE): Add comment that the name may not be changed without changing the make-dist script. - * emacs-lisp/cl-extra.el (cl-old-mapc): Removed; don't defalias mapc. + * emacs-lisp/cl-extra.el (cl-old-mapc): Remove; don't defalias mapc. (cl-mapc): Use mapc instead of cl-old-mapc. 2000-07-05 Andrew Innes <andrewi@gnu.org> @@ -16191,8 +16191,8 @@ * mouse.el (mouse-show-mark, mouse-save-then-kill): Don't use window-system. - * man.el (Man-notify-when-ready): Don't use window-system. If - Man-notify-method is newframe, and the display is not + * man.el (Man-notify-when-ready): Don't use window-system. + If Man-notify-method is newframe, and the display is not multi-frame, select the frame created for the man page. (Man-init-defvars): Doc fix. @@ -16268,7 +16268,7 @@ (sql-find-sqli-buffer): Make sure the default-value of sql-buffer is used. - (sql-informix): Added command line parameter "-" to force + (sql-informix): Add command line parameter "-" to force sql-informix-program to use stdout. 2000-06-25 Eli Zaretskii <eliz@is.elta.co.il> @@ -16282,8 +16282,8 @@ 2000-06-23 Dave Love <fx@gnu.org> * font-lock.el (font-lock-support-mode) <defgroup>: Add :version. - (font-lock-fontify-anchored-keywords): Use - line-beginning-position. + (font-lock-fontify-anchored-keywords): + Use line-beginning-position. (global-font-lock-mode): Use mapc. 2000-06-23 Stefan Monnier <monnier@cs.yale.edu> @@ -16341,14 +16341,14 @@ 2000-06-22 Vinicius Jose Latorre <vinicius@cpqd.com.br> * ps-print.el: Fix bug: if ^L is the very first buffer character, - ps-print crashes. New feature: page selection for printing. Create - raw-text-unix coding system for XEmacs. Doc fix. + ps-print crashes. New feature: page selection for printing. + Create raw-text-unix coding system for XEmacs. Doc fix. (ps-print-version): New version number (5.2.3). (ps-plot-region): Bug fix. (ps-setup, ps-init-output-queue, ps-output, ps-begin-job, ps-end-file) (ps-header-sheet, ps-generate, ps-end-job): Code fix. - (ps-restore-selected-pages, ps-selected-pages, ps-print-page-p): New - funs. + (ps-restore-selected-pages, ps-selected-pages, ps-print-page-p): + New funs. (ps-selected-pages, ps-last-selected-pages, ps-first-page) (ps-last-page): New vars. @@ -16363,8 +16363,8 @@ 2000-06-21 Kenichi Handa <handa@etl.go.jp> - * international/mule-cmds.el (set-language-info-alist): Docstring - fixed. + * international/mule-cmds.el (set-language-info-alist): + Docstring fixed. 2000-06-20 Gerd Moellmann <gerd@gnu.org> @@ -16378,7 +16378,7 @@ 2000-06-20 Stefan Monnier <monnier@cs.yale.edu> * jit-lock.el (with-buffer-prepared-for-jit-lock): - Renamed from with-buffer-prepared-for-font-lock and use + Rename from with-buffer-prepared-for-font-lock and use inhibit-modification-hooks rather than setting *-change-functions. Update all functions to use the new name. (jit-lock-first-unfontify-pos): New semantics (and doc). @@ -16395,20 +16395,20 @@ 2000-06-20 Sam Steingold <sds@gnu.org> - * emacs-lisp/cl-indent.el (toplevel): Indent - `print-unreadable-object' properly. Untabify. + * emacs-lisp/cl-indent.el (toplevel): + Indent `print-unreadable-object' properly. Untabify. 2000-06-14 Carsten Dominik <dominik@strw.leidenuniv.nl> * textmodes/reftex.el (reftex-find-citation-regexp-format): Support for bibentry. - (reftex-compile-variables): Fixed problem with end of section-re. + (reftex-compile-variables): Fix problem with end of section-re. * textmodes/reftex-dcr.el (reftex-view-crossref) (reftex-view-crossref-from-bibtex): Deal with changed `reftex-find-citation-regexp-format'. (reftex-view-regexp-match, reftex-view-crossref-from-bibtex): - Replaced `remprop' with `put'. + Replace `remprop' with `put'. (reftex-view-crossref, reftex-view-crossref-when-idle): Support for bibentry. @@ -16490,8 +16490,8 @@ (isearch-minibuffer-input-method-function): These variables deleted. (isearch-with-input-method): Don't use the above variables. - (isearch-process-search-multibyte-characters): Likewise. Call - read-string with the arg INHERIT-INPUT-METHOD t. + (isearch-process-search-multibyte-characters): Likewise. + Call read-string with the arg INHERIT-INPUT-METHOD t. 2000-06-17 Stefan Monnier <monnier@cs.yale.edu> @@ -16546,8 +16546,8 @@ 2000-06-15 Gerd Moellmann <gerd@gnu.org> * info.el (Info-find-in-tag-table-1, Info-find-in-tag-table) - (Info-find-node-in-buffer-1, Info-find-node-in-buffer): New - functions. + (Info-find-node-in-buffer-1, Info-find-node-in-buffer): + New functions. (Info-find-node-2): Try a case-sensitive search first, then do a case-insensitive search. @@ -16575,8 +16575,8 @@ 2000-06-15 Kenichi Handa <handa@etl.go.jp> - * international/mule.el (set-buffer-file-coding-system): Almost - rewritten to handle `undecided' as no-op. + * international/mule.el (set-buffer-file-coding-system): + Almost rewritten to handle `undecided' as no-op. 2000-06-14 Gerd Moellmann <gerd@gnu.org> @@ -16599,8 +16599,8 @@ (tar-subfile-save-buffer): Likewise. * international/mule.el - (after-insert-file-set-buffer-file-coding-system): Call - set-buffer-file-coding-system with the arg FORCE t. + (after-insert-file-set-buffer-file-coding-system): + Call set-buffer-file-coding-system with the arg FORCE t. 2000-06-13 Gerd Moellmann <gerd@gnu.org> @@ -16620,15 +16620,15 @@ 2000-06-13 Eli Zaretskii <eliz@is.elta.co.il> - * frame.el (display-multi-frame-p, display-multi-font-p): New - defaliases for display-graphic-p. + * frame.el (display-multi-frame-p, display-multi-font-p): + New defaliases for display-graphic-p. * hl-line.el: Fixed a typo in commentary. 2000-06-13 Kenichi Handa <handa@etl.go.jp> - * language/tibet-util.el (tibetan-tibetan-to-transcription): Typo - fixed. + * language/tibet-util.el (tibetan-tibetan-to-transcription): + Typo fixed. 2000-06-12 Dave Love <fx@gnu.org> @@ -16709,8 +16709,8 @@ 2000-06-12 Kenichi Handa <handa@etl.go.jp> - * international/mule.el (set-buffer-file-coding-system): If - CODING-SYSTEM is nil, set buffer-file-coding-system to nil + * international/mule.el (set-buffer-file-coding-system): + If CODING-SYSTEM is nil, set buffer-file-coding-system to nil unconditionally. 2000-06-12 Dave Love <fx@gnu.org> @@ -16769,8 +16769,8 @@ * progmodes/executable.el: Byte compile dynamic. (executable-insert): Change custom type. (executable-find): Add autoload cookie. - (executable-make-buffer-file-executable-if-script-p): New - function. After Noah Friedman. + (executable-make-buffer-file-executable-if-script-p): + New function. After Noah Friedman. * files.el (after-save-hook): Customize, with executable-make-buffer-file-executable-if-script-p as an option. @@ -16792,8 +16792,8 @@ 2000-06-08 Dave Love <fx@gnu.org> - * international/mule-cmds.el (select-safe-coding-system): If - DEFAULT-CODING-SYSTEM is not specified, also check the most + * international/mule-cmds.el (select-safe-coding-system): + If DEFAULT-CODING-SYSTEM is not specified, also check the most preferred coding-system if buffer-file-coding-system is `undecided'. From Handa. @@ -16917,8 +16917,8 @@ (ccl-encode-alternativnyj, ccl-encode-alternativnyj-font): Likewise. - * international/mule-diag.el (non-iso-charset-alist): Specify - translation table symbol instead of translation table itself. + * international/mule-diag.el (non-iso-charset-alist): + Specify translation table symbol instead of translation table itself. (list-block-of-chars): CHARSET may be a translation table symbol. * international/mule.el (make-coding-system): If CODING-SYSTEM @@ -16927,9 +16927,9 @@ * international/fontset.el: Use family `proportional' for Tibetan fonts. - * international/ccl.el (ccl-compile-translate-character): Don't - check if Rrr has property translation-table. - (ccl-compile-map-multiple): Modified to avoid compiler warning. + * international/ccl.el (ccl-compile-translate-character): + Don't check if Rrr has property translation-table. + (ccl-compile-map-multiple): Modify to avoid compiler warning. 2000-06-05 Gerd Moellmann <gerd@gnu.org> @@ -16958,7 +16958,7 @@ (sh-help-string-for-variable, sh-guess-basic-offset): Don't quote lambdas. (sh-electric-rparen, sh-electric-hash, sh-search-word): Docstring typo. - (sh-regexp-for-done, sh-kw-alist, sh-kw): Moved to before their use. + (sh-regexp-for-done, sh-kw-alist, sh-kw): Move to before their use. * mail/mh-comp.el (mh-send-sub): Check mh-etc is bound before using it. (mh-letter-mode): Derive from text-mode. @@ -17017,18 +17017,18 @@ 2000-06-02 Dave Love <fx@gnu.org> * wid-edit.el: byte-compile-dynamic since we typically don't use - all the widgets. Don't require cl or widget. Remove - eval-and-compile. Don't autoload finder-commentary. Doc fixes. - (widget-read-event): Removed. Callers changed to use read-event. - (widget-button-release-event-p): Renamed from + all the widgets. Don't require cl or widget. + Remove eval-and-compile. Don't autoload finder-commentary. Doc fixes. + (widget-read-event): Remove. Callers changed to use read-event. + (widget-button-release-event-p): Rename from button-release-event-p. (widget-field-add-space, widget-field-use-before-change): Uncustomize. (widget-specify-field): Use keymap property, not local-map. (widget-specify-button): Obey :suppress-face. (widget-specify-insert): Use modern backquote syntax. - (widget-image-directory): Renamed from widget-glyph-directory. - (widget-image-enable): Renamed from widget-glyph-enable. + (widget-image-directory): Rename from widget-glyph-directory. + (widget-image-enable): Rename from widget-glyph-enable. (widget-image-find): Replaces widget-glyph-find. (widget-button-pressed-face): Move defvar. (widget-image-insert): Replaces widget-glyph-insert. @@ -17044,8 +17044,8 @@ (widget-sexp-prompt-value, widget-echo-help): Simplify. (widget-default-create): Use widget-image-insert; some rewriting. (widget-visibility-value-create) - (widget-push-button-value-create, widget-toggle-value-create): Use - widget-image-insert. + (widget-push-button-value-create, widget-toggle-value-create): + Use widget-image-insert. (checkbox): Create on and off images dynamically. (documentation-link): Change :help-echo. (widget-documentation-link-echo-help): Remove. @@ -17114,8 +17114,8 @@ (tibetan-composition-function): Fix args to tibetan-compose-string. - * language/tibetan.el (tibetan-composable-pattern): More - characters included. + * language/tibetan.el (tibetan-composable-pattern): + More characters included. (tibetan-consonant-transcription-alist): Rule for "R" added. (tibetan-subjoined-transcription-alist): Rules for "+W", "+Y", and "+R" added. @@ -17154,8 +17154,8 @@ 2000-05-31 Dave Love <fx@gnu.org> - * loadhist.el (loadhist-hook-functions): Remove - before-change-function, after-change-function. + * loadhist.el (loadhist-hook-functions): + Remove before-change-function, after-change-function. (unload-feature): Deal with symbols which are both bound and fbound. @@ -17228,8 +17228,8 @@ * progmodes/antlr-mode.el: New commands: hide/unhide actions, upcase/downcase literals. (antlr-tiny-action-length): New user option. - (antlr-hide-actions): New command. Suggested by - Bjoern Mielenhausen <Bjoern.Mielenhausen@sap.com>. + (antlr-hide-actions): New command. + Suggested by Bjoern Mielenhausen <Bjoern.Mielenhausen@sap.com>. (antlr-mode-map): New binding [C-c C-v]. (antlr-mode-menu): New entries. (antlr-downcase-literals): New command. @@ -17242,8 +17242,8 @@ * progmodes/antlr-mode.el: XEmacs bug workaround, XEmacs hint. (antlr-font-lock-additional-keywords): Workaround for intentional bug in XEmacs version of font-lock. - (antlr-mode): Set symbol property `mode-name' to "Antlr". Could - be used by a smarter version of `buffers-menu-grouping-function'. + (antlr-mode): Set symbol property `mode-name' to "Antlr". + Could be used by a smarter version of `buffers-menu-grouping-function'. 2000-05-29 Gerd Moellmann <gerd@gnu.org> @@ -17265,8 +17265,8 @@ 2000-05-28 Eli Zaretskii <eliz@is.elta.co.il> - * international/codepage.el (cp-coding-system-for-codepage-1): Add - eight-bit-graphic and eight-bit-control to safe charsets for cpNNN + * international/codepage.el (cp-coding-system-for-codepage-1): + Add eight-bit-graphic and eight-bit-control to safe charsets for cpNNN coding systems. 2000-05-26 Dave Love <fx@gnu.org> @@ -17275,10 +17275,10 @@ internal-find-face. * mail/reporter.el: Maintainer change. Doc fixes. - (reporter-version): Deleted. + (reporter-version): Delete. * emacs-lisp/elp.el: Maintainer change. - (elp-help-address, elp-submit-bug-report, elp-version): Deleted. + (elp-help-address, elp-submit-bug-report, elp-version): Delete. 2000-05-26 Stefan Monnier <monnier@cs.yale.edu> @@ -17290,8 +17290,8 @@ * loadhist.el (unload-feature): Fix interactive spec [from lijnzaad@ebi.ac.uk]. - * emacs-lisp/bytecomp.el (byte-compile-callargs-warn): Use - subr-arity to check primitives. + * emacs-lisp/bytecomp.el (byte-compile-callargs-warn): + Use subr-arity to check primitives. (byte-compile-flush-pending, byte-compile-file-form-progn) (byte-compile-normal-call, byte-compile-list, byte-compile-concat) (byte-compile-insert, byte-compile-funcall): Use mapc instead of @@ -17354,8 +17354,8 @@ window-system. (ffap-highlight): Always default to t. - * emacs-lisp/edebug.el (edebug-emacs-19-specific): Call - display-popup-menus-p instead of looking at window-system. + * emacs-lisp/edebug.el (edebug-emacs-19-specific): + Call display-popup-menus-p instead of looking at window-system. * disp-table.el (standard-display-g1, standard-display-graphic): Only refuse to use string glyphs on X and MS-Windows. @@ -17374,8 +17374,8 @@ 2000-05-25 Eli Zaretskii <eliz@is.elta.co.il> - * international/mule-diag.el (describe-char-after): Use - display-graphic-p instead of window-system, so that this function + * international/mule-diag.el (describe-char-after): + Use display-graphic-p instead of window-system, so that this function works on MS-DOS. 2000-05-25 Eli Zaretskii <eliz@is.elta.co.il> @@ -17402,7 +17402,7 @@ 2000-05-24 Eric M. Ludlam <zappo@ultranet.com> - * rmailout.el (rmail-output-to-rmail-file): Added optional param + * rmailout.el (rmail-output-to-rmail-file): Add optional param STAY. * rmail.el (rmail-automatic-folder-directives): New user variable. @@ -17421,8 +17421,8 @@ * ediff-init.el (ediff-merge-filename-prefix): New customizable variable. - * ediff-mult.el (ediff-filegroup-action): Use - ediff-merge-filename-prefix. + * ediff-mult.el (ediff-filegroup-action): + Use ediff-merge-filename-prefix. 2000-05-24 Michael Kifer <kifer@cs.sunysb.edu> @@ -17460,14 +17460,14 @@ * speedbar.el (speedbar-easymenu-definition-base): Image toggle fix. (speedbar-insert-button): Invisible text property fix. - (speedbar-directory-plus): Renamed from speedbar-directory-+. - (speedbar-directory-minus): Renamed from speedbar-directory--. - (speedbar-page-plus): Renamed from speedbar-file-+. - (speedbar-page-minus): Renamed from speedbar-file--. - (speedbar-page): Renamed from speedbar-file-. - (speedbar-tag): Renamed from speedbar-tag-. - (speedbar-tag-plus): Renamed from speedbar-tag-+. - (speedbar-tag-minus): Renamed from speedbar-tag--. + (speedbar-directory-plus): Rename from speedbar-directory-+. + (speedbar-directory-minus): Rename from speedbar-directory--. + (speedbar-page-plus): Rename from speedbar-file-+. + (speedbar-page-minus): Rename from speedbar-file--. + (speedbar-page): Rename from speedbar-file-. + (speedbar-tag): Rename from speedbar-tag-. + (speedbar-tag-plus): Rename from speedbar-tag-+. + (speedbar-tag-minus): Rename from speedbar-tag--. (speedbar-expand-image-button-alist): Use above renames. * sb-dir-plus.xpm: Renamed from sb-dir+.xpm @@ -17480,8 +17480,8 @@ 2000-05-24 Kenichi Handa <handa@etl.go.jp> - * international/quail.el (quail-show-guidance-buf): Set - current-input-method of the guidance buffer to the name of the + * international/quail.el (quail-show-guidance-buf): + Set current-input-method of the guidance buffer to the name of the current input method. 2000-05-23 Stefan Monnier <monnier@cs.yale.edu> @@ -17520,8 +17520,8 @@ 2000-05-22 Dave Love <fx@gnu.org> - * loadhist.el (feature-symbols, file-provides, file-requires): Use - mapc. + * loadhist.el (feature-symbols, file-provides, file-requires): + Use mapc. (feature-file): Avoid calling symbol-name. Doc fix. (file-set-intersect, file-dependents): Use dolist, not mapcar. (loadhist-hook-functions): Add mouse-position-function. @@ -17537,7 +17537,7 @@ 2000-05-22 Sam Steingold <sds@gnu.org> - * info.el (Info-fontify-node): Fixed the call to + * info.el (Info-fontify-node): Fix the call to `add-text-properties' (bug introduced on 2000-05-18). 2000-05-22 Dave Love <fx@gnu.org> @@ -17547,11 +17547,11 @@ * progmodes/etags.el: Add to debug-ignored-errors. (visit-tags-table-buffer): Clear out buffers holding old tables when making a new list. - (etags-recognize-tags-table, tags-recognize-empty-tags-table): Use - mapc. + (etags-recognize-tags-table, tags-recognize-empty-tags-table): + Use mapc. - * completion.el: Doc fixes. Add to debug-ignored-errors. Don't - quote keywords. + * completion.el: Doc fixes. Add to debug-ignored-errors. + Don't quote keywords. (cmpl-string-case-type): Use character classes. * comint.el: @@ -17582,8 +17582,8 @@ 2000-05-22 Kenichi Handa <handa@etl.go.jp> - * international/quail.el (quail-simple-translation-keymap): Map - 128..255 to quail-self-insert-command. + * international/quail.el (quail-simple-translation-keymap): + Map 128..255 to quail-self-insert-command. (quail-keyboard-layout-alist): Add definition for "pc102-de". 2000-05-22 Stefan Monnier <monnier@cs.yale.edu> @@ -17603,8 +17603,8 @@ * edmacro.el (edmacro-parse-keys): Return vector if any elements are invalid characters. - * international/mule-util.el (detect-coding-with-priority): Use - mapc. Remove redundant lambda. + * international/mule-util.el (detect-coding-with-priority): + Use mapc. Remove redundant lambda. * international/mule-diag.el (list-non-iso-charset-chars) (describe-fontset): Remove redundant lambda. @@ -17665,14 +17665,14 @@ * mail/rmail.el (rmail-decode-quoted-printable): Use delete-region and insert, not subst-char-in-region. - * international/mule-diag.el (list-character-sets-1): Handle - charsets eight-bit-control and eight-bit-graphic. + * international/mule-diag.el (list-character-sets-1): + Handle charsets eight-bit-control and eight-bit-graphic. (list-iso-charset-chars): Likewise. (list-block-of-chars): If CHARSET is not char-table, insert 8-bit characters as is. Use indent-to to align characters. - * international/mule-cmds.el (find-multibyte-characters): Never - exclude charsets eight-bit-control and eight-bit-graphic. + * international/mule-cmds.el (find-multibyte-characters): + Never exclude charsets eight-bit-control and eight-bit-graphic. 2000-05-19 Stefan Monnier <monnier@cs.yale.edu> @@ -17707,18 +17707,18 @@ * ps-print.el: Compatibility, customization and doc fix. (ps-printer-name-option): Replace defconst by defvar. (ps-postscript-code-directory): XEmacs compatibility. - (ps-header-sheet, ps-setup, ps-begin-file, ps-begin-job): Code - fix. + (ps-header-sheet, ps-setup, ps-begin-file, ps-begin-job): + Code fix. (ps-user-defined-prologue, ps-print-prologue-header) - (ps-xemacs-face-kind-p, ps-face-bold-p, ps-face-italic-p): XEmacs - compatibility and code fix. + (ps-xemacs-face-kind-p, ps-face-bold-p, ps-face-italic-p): + XEmacs compatibility and code fix. (ps-print-background-image, ps-print-background-text): Customization fix. (ps-line-number-start, ps-n-up-on): New vars. 2000-05-18 Espen Skoglund <esk@ira.uka.de> - * pascal.el (pascal-indent-alist, pascal-indent-comment): Changed + * pascal.el (pascal-indent-alist, pascal-indent-comment): Change the indent-comment function to just return the appropriate indent. 2000-05-18 Eric M. Ludlam <zappo@ultranet.com> @@ -17737,8 +17737,8 @@ 2000-05-18 Kenichi Handa <handa@etl.go.jp> - * international/mule-diag.el (describe-char-after): Call - internal-char-font, not char-font. If internal-char-font returns + * international/mule-diag.el (describe-char-after): + Call internal-char-font, not char-font. If internal-char-font returns nil, display "-- none --". 2000-05-17 Eli Zaretskii <eliz@is.elta.co.il> @@ -17784,8 +17784,8 @@ * help.el (view-emacs-FAQ): Change `emacs-faq' to `efaq'. - * progmodes/compile.el (compilation-parse-errors): Collect - `nomessage' regexps last. + * progmodes/compile.el (compilation-parse-errors): + Collect `nomessage' regexps last. * dired.el (dired-mode-map): Use dired-do-query-replace-regexp. @@ -17829,8 +17829,8 @@ (help-xref-following): New variable. (help-make-xrefs): Use it. (help-xref-go-back): Use position information from stack element. - (help-follow): Make position in stack element a pair. Use - help-xref-following. + (help-follow): Make position in stack element a pair. + Use help-xref-following. * autoarg.el: New file. @@ -17853,16 +17853,16 @@ (speedbar-easymenu-definition-special): Add flush cache & expand. (speedbar-visiting-tag-hook): Set new defaults. Added options. (speedbar-reconfigure-keymaps-hook): New variable. - (speedbar-frame-parameters): Updated documentation. - (speedbar-use-imenu-flag): Updated custom tag. + (speedbar-frame-parameters): Update documentation. + (speedbar-use-imenu-flag): Update custom tag. (speedbar-dynamic-tags-function-list): New variable. - (speedbar-tag-hierarchy-method): Updated doc & custom. + (speedbar-tag-hierarchy-method): Update doc & custom. (speedbar-indentation-width, speedbar-indentation-width) New variables. (speedbar-hide-button-brackets-flag): Customizable. (speedbar-vc-indicator): Doc update. - (speedbar-ignored-path-expressions): Updated default value. - (speedbar-supported-extension-expressions): Updated default value. + (speedbar-ignored-path-expressions): Update default value. + (speedbar-supported-extension-expressions): Update default value. (speedbar-syntax-table): Remove {} paren status. (speedbar-file-key-map, speedbar-buffers-key-map): Add "=" to act as "+". Added overlay aliases. @@ -17874,24 +17874,24 @@ (speedbar-reconfigure-keymaps): Run configure keymap hooks. (speedbar-item-info-tag-helper): Revamped to handle a wider range of arbitrary text, and new helper functions. - (speedbar-item-copy, speedbar-item-rename): Fixed trailing \ in + (speedbar-item-copy, speedbar-item-rename): Fix trailing \ in filename finder. (speedbar-make-button): Call `speedbar-insert-image-button-maybe'. (speedbar-directory-buttons): Update path search/expansion. (speedbar-make-tag-line): Pay attention to `speedbar-indentation-width'. Use more care w/ invisible properties. - (speedbar-change-expand-button-char): Call - `speedbar-insert-image-button-maybe'. - (speedbar-apply-one-tag-hierarchy-method): Deleted (and replaced). + (speedbar-change-expand-button-char): + Call `speedbar-insert-image-button-maybe'. + (speedbar-apply-one-tag-hierarchy-method): Delete (and replaced). (speedbar-sort-tag-hierarchy, speedbar-prefix-group-tag-hierarchy) (speedbar-trim-words-tag-hierarchy) (speedbar-simple-group-tag-hierarchy): New functions. (speedbar-create-tag-hierarchy): Update doc, use new tag hooks. - (speedbar-insert-imenu-list, speedbar-insert-etags-list): New - functions. + (speedbar-insert-imenu-list, speedbar-insert-etags-list): + New functions. (speedbar-mouse-set-point): New function. - (speedbar-power-click): Updated documentation. + (speedbar-power-click): Update documentation. (speedbar-line-token, speedbar-goto-this-file): Handle more types of tag prefix text. (speedbar-expand-line, speedbar-contract-line): Make more robust @@ -17902,10 +17902,10 @@ (speedbar-tag-file): Use new `speedbar-fetch-dynamic-tags' fn. Use new generator insertion method. (speedbar-fetch-dynamic-tags): New function. - (speedbar-fetch-dynamic-imenu): Removed code now handled in + (speedbar-fetch-dynamic-imenu): Remove code now handled in `speedbar-fetch-dynamic-imenu'. (speedbar-fetch-dynamic-etags): Fix current buffer problem. - (speedbar-buffer-easymenu-definition): Added "Kill Buffer", and + (speedbar-buffer-easymenu-definition): Add "Kill Buffer", and "Revert Buffer" menu items. (speedbar-buffer-buttons-engine): Be smarter when creating a filename tag (for expansion purposes.). @@ -17930,17 +17930,17 @@ of character sets. * international/mule-diag.el (describe-char-after): New function. - (describe-font-internal): Adjusted for the change of font-info. + (describe-font-internal): Adjust for the change of font-info. (describe-font): Likewise. (print-fontset): Rewritten for the new fontset implementation. (describe-fontset): Include fontset alias names in completion. - (list-fontsets): Adjusted for the change of print-fontset. + (list-fontsets): Adjust for the change of print-fontset. * simple.el (what-cursor-position): If DETAIL is non-nil, call describe-char-after instead of displaying the detail in the echo area. (syntax-code-table): Format changed. - (string-to-syntax): Adjusted for the above change. + (string-to-syntax): Adjust for the above change. 2000-05-12 Stefan Monnier <monnier@cs.yale.edu> @@ -18030,8 +18030,8 @@ (help-xref-symbol-regexp): Add `face'. (help-make-xrefs): Check for quoted face names and adapt regexp submatch numbers to cope. - (help-xref-interned): Maybe insert face doc too. Separate - sections with a line of hyphens. + (help-xref-interned): Maybe insert face doc too. + Separate sections with a line of hyphens. * faces.el: Some doc fixes. Declare some functions obsolete. (describe-face): Add customize button. Return the help @@ -18052,8 +18052,8 @@ simulations for greek-iso8859-7, add latin-iso8859-14 and latin-iso8859-15. - * international/mule-cmds.el (set-language-info-alist): Call - define-prefix-command with 3 arguments, to make the map suitable + * international/mule-cmds.el (set-language-info-alist): + Call define-prefix-command with 3 arguments, to make the map suitable for a menu. 2000-05-07 Dave Love <fx@gnu.org> @@ -18081,8 +18081,8 @@ 2000-05-04 Milan Zamazal <pdm@freesoft.cz> - * progmodes/glasses.el (glasses-convert-to-unreadable): Use - `glasses-separator' instead of the hard-wired "_". + * progmodes/glasses.el (glasses-convert-to-unreadable): + Use `glasses-separator' instead of the hard-wired "_". (glasses-mode): Call `glasses-make-unreadable' only in a single place. @@ -18112,7 +18112,7 @@ * subr.el (add-minor-mode): Handle AFTER for keymaps. Don't set TOGGLE's value. - * mailabbrev.el (mail-abbrev-insert-alias): Renamed from + * mailabbrev.el (mail-abbrev-insert-alias): Rename from mail-interactive-insert-alias. (mail-abbrev-complete-alias): New command. (mail-mode-map): Bind it to `M-TAB'. @@ -18146,8 +18146,8 @@ 2000-05-02 Eli Zaretskii <eliz@is.elta.co.il> - * international/mule-cmds.el (set-language-environment): Don't - concat an integer (dos-codepage), use format instead. + * international/mule-cmds.el (set-language-environment): + Don't concat an integer (dos-codepage), use format instead. 2000-05-02 Dave Love <fx@gnu.org> @@ -18188,8 +18188,8 @@ 2000-04-28 Kenichi Handa <handa@etl.go.jp> - * mail/sendmail.el (sendmail-send-it): Set - buffer-file-coding-system to the selected coding system for MIME + * mail/sendmail.el (sendmail-send-it): + Set buffer-file-coding-system to the selected coding system for MIME header. 2000-04-27 Gerd Moellmann <gerd@gnu.org> @@ -18235,8 +18235,8 @@ * image.el (find-image): New function. (defimage): Rewritten to find image at load time. - * startup.el (normal-top-level-add-to-load-path): Handle - case that the default directory is not in load-path. + * startup.el (normal-top-level-add-to-load-path): + Handle case that the default directory is not in load-path. * help.el: Old patch from Stefan Monnier. (help-xref-on-pp): New function. @@ -18259,13 +18259,13 @@ 2000-04-25 Gerd Moellmann <gerd@gnu.org> - * replace.el (perform-replace): Add parameters START and END. Use - them instead of the check for a region in Transient Mark mode. + * replace.el (perform-replace): Add parameters START and END. + Use them instead of the check for a region in Transient Mark mode. (query-replace-read-args): Return two more list elements for the start and end of the region in Transient Mark mode. (query-replace, query-replace-regexp, query-replace-regexp-eval) - (map-query-replace-regexp, replace-string, replace-regexp): Add - optional last arguments START and END and pass them to + (map-query-replace-regexp, replace-string, replace-regexp): + Add optional last arguments START and END and pass them to perform-replace. * progmodes/ebrowse.el (ebrowse-tags-query-replace): Construct a @@ -18330,7 +18330,7 @@ * progmodes/inf-lisp.el (inferior-lisp-mode): Don't set non-existing variable comint-input-sentinel. - (inferior-lisp-args-to-list): Removed. + (inferior-lisp-args-to-list): Remove. (inferior-lisp): Use split-string instead of inferior-lisp-args-to-list. @@ -18482,8 +18482,8 @@ accept-process-output with ispell-accept-output. (ispell-init-process): Call ispell-process-status instead of process-status with. - (ispell-init-process): Call ispell-start-process. Call - ispell-accept-output and ispell-send-string. Don't call + (ispell-init-process): Call ispell-start-process. + Call ispell-accept-output and ispell-send-string. Don't call process-kill-without-query and kill-process if they are unbound. (ispell-async-processp): New function. @@ -18495,22 +18495,22 @@ * menu-bar.el (menu-bar-options-menu): Make `mule' always visible. Modify `truncate-lines'. Make `describe-language-environment' - always visible and add help. Modify `describe-key' help. Invoke - Info-directory from `info'. New entry `emacs-manual'. + always visible and add help. Modify `describe-key' help. + Invoke Info-directory from `info'. New entry `emacs-manual'. 2000-04-10 Gerd Moellmann <gerd@gnu.org> * progmodes/ebrowse.el (ebrowse-tree-mode): Use propertized-buffer-identification. (ebrowse-update-member-buffer-mode-line): Likewise. - (ebrowse--mode-strings): Removed. - (ebrowse--mode-line-props): Removed. + (ebrowse--mode-strings): Remove. + (ebrowse--mode-line-props): Remove. * files.el (auto-mode-alist): Add `EBROWSE'. * progmodes/ebrowse.el (ebrowse-read): Skip forward over white space before testing for end of buffer. - (ebrowse-load): Removed. + (ebrowse-load): Remove. (ebrowse-revert-tree-buffer-from-file): Rewritten. (ebrowse-create-tree-buffer): Rewritten. (ebrowse-tree-mode): Read tree from buffer. @@ -18541,7 +18541,7 @@ * progmodes/ebrowse-ffh.el: New file. * progmodes/ebrowse.el (ebrowse-find-file-hook-fn): - Moved to ebrowse-ffh.el. + Move to ebrowse-ffh.el. (ebrowse-load): Add autoload. * finder.el (finder-commentary): Add autoload cookie. @@ -18746,7 +18746,7 @@ (network-connection-mode-setup): New function, saves host and service information in local variables. - * locate.el (locate-word-at-point): Added this function. + * locate.el (locate-word-at-point): Add this function. (locate): Default to using locate-word-at-point as input Run dired-mode-hook @@ -18884,9 +18884,9 @@ text of the URL was passed. Now the whole URL structure is passed and the function is responsible for extracting the parts it requires. Changed the default of `quickurl-format-function' accordingly. - (quickurl-insert): Changed the `funcall' of + (quickurl-insert): Change the `funcall' of `quickurl-format-function' to match the above change. - (quickurl-list-insert): Changed the `url' case so that it makes + (quickurl-list-insert): Change the `url' case so that it makes use of `quickurl-format-function', previous to this the format was hard wired. @@ -19016,7 +19016,7 @@ * international/mule-diag.el (describe-font): Don't refer to global-fontset-alist, instead call font-list. (describe-fontset, list-fontsets, mule-diag): Likewise. - (print-fontset): Adjusted for the change of fontset implementation. + (print-fontset): Adjust for the change of fontset implementation. * international/fontset.el (x-charset-registries): Variable removed, instead the corresponding data is stored in the default fontset. @@ -19134,7 +19134,7 @@ 2000-03-14 Dave Love <fx@gnu.org> - * subr.el (replace-regexp-in-string): Renamed from + * subr.el (replace-regexp-in-string): Rename from replace-regexps-in-string. Doc fix. 2000-03-12 Dave Love <fx@gnu.org> @@ -19248,8 +19248,8 @@ builtin operators, use `font-lock-builtin-face' for Emacs and `font-lock-preprocessor-face' otherwise. - * font-lock.el (lisp-font-lock-keywords-1): Highlight - `(defun (setf foo)' differently. + * font-lock.el (lisp-font-lock-keywords-1): + Highlight `(defun (setf foo)' differently. 2000-03-08 Stefan Monnier <monnier@cs.yale.edu> @@ -19265,7 +19265,7 @@ both cases close together. Also apply a more generic algorithm for suffixes (the mirror image of the algorithm used for prefixes). Use shy-groups. Use nreverse rather than reverse. - (regexp-opt-try-suffix): Removed. + (regexp-opt-try-suffix): Remove. * cmuscheme.el (inferior-scheme-mode-map): Define it independently from comint-mode-map, so we can just inherit from it. Also, move @@ -19397,20 +19397,20 @@ 2000-03-01 David Ponce <david.ponce@wanadoo.fr> - * recentf.el (recentf): Added version tag to the defgroup of recentf. + * recentf.el (recentf): Add version tag to the defgroup of recentf. 2000-03-01 David Ponce <david.ponce@wanadoo.fr> - * recentf.el (recentf-cleanup): Changed to remove excluded file too. + * recentf.el (recentf-cleanup): Change to remove excluded file too. (recentf-edit-list-action): `recentf-edit-list' checkbox widget action to select/unselect a file. (recentf-edit-list): Code cleanup and improvement. (recentf-open-more-files-action): `recentf-open-more-files' button widget action to open a file. (recentf-open-more-files): No more use standard completion but widgets. - (recentf-more-collection): Deleted. - (recentf-more-history): Deleted. - (recentf-setup-more-completion): Deleted. + (recentf-more-collection): Delete. + (recentf-more-history): Delete. + (recentf-setup-more-completion): Delete. 2000-03-01 David Ponce <david.ponce@wanadoo.fr> @@ -19424,7 +19424,7 @@ (recentf-edit-selected-items): New global variable, used by `recentf-edit-list' to hold the list of files to be removed from the recent list. - (recentf-make-menu-items): Updated to display a "Edit list..." + (recentf-make-menu-items): Update to display a "Edit list..." menu item. Minor code cleanup. 2000-03-01 David Ponce <david.ponce@wanadoo.fr> @@ -19437,7 +19437,7 @@ used by `recentf-open-more-files' completion. (recentf-setup-more-completion): New function to setup completion for `recentf-open-more-files'. - (recentf-make-menu-items): Updated to display a "More..." menu item. + (recentf-make-menu-items): Update to display a "More..." menu item. 2000-03-01 David Ponce <david.ponce@wanadoo.fr> @@ -19450,8 +19450,8 @@ (recentf-make-menu-items): New menu filter handling. (recentf-make-menu-item): New helper function. (recentf-menu-elements): New menu handling function. - (recentf-sort-ascending): Updated to new menu filter handling. - (recentf-sort-descending): Updated to new menu filter handling. + (recentf-sort-ascending): Update to new menu filter handling. + (recentf-sort-descending): Update to new menu filter handling. (recentf-sort-basenames-ascending): New menu filter function. (recentf-sort-basenames-descending): New menu filter function. (recentf-show-basenames): New menu filter function. @@ -19490,20 +19490,20 @@ instead of assoc-delete-all. (frame-notice-user-settings): Ditto. - * subr.el (assq-delete-all): Renamed from assoc-delete-all. + * subr.el (assq-delete-all): Rename from assoc-delete-all. Don't copy alist. 2000-02-28 Eli Barzilay <eli@cs.cornell.edu> * calculator.el (calculator-use-menu): New option. - (calculator-initial-bindings): Changed some bindings to work as macros. - (calculator-forced-input): Removed. + (calculator-initial-bindings): Change some bindings to work as macros. + (calculator-forced-input): Remove. (calculator-restart-other-mode): New variable. (calculator-mode-map): Set up menu. 2000-02-28 Jari Aalto <jari.aalto@poboxes.com> - * font-lock.el (java-keywords): Added missing java 1.2.2 Javadoc tags. + * font-lock.el (java-keywords): Add missing java 1.2.2 Javadoc tags. 2000-02-28 Michael Kifer <kifer@cs.sunysb.edu> @@ -19582,7 +19582,7 @@ (footnote-latin-regexp): New variable. (Footnote-latin): New function. (footnote-style-alist): Add element for latin style. - (footnote-style): Moved. + (footnote-style): Move. (Footnote-goto-footnote): Use eq to test arg. * mouse.el (mouse-drag-mode-line-1): Remove `growth =' message. @@ -19752,7 +19752,7 @@ 2000-02-15 Dirk Herrmann <D.Herrmann@tu-bs.de> - * textmodes/bibtex.el (bibtex-mode): Replaced manual splitting of path + * textmodes/bibtex.el (bibtex-mode): Replace manual splitting of path at ':' characters by call to split-string. 2000-02-15 Dirk Herrmann <D.Herrmann@tu-bs.de> @@ -19764,21 +19764,21 @@ * textmodes/bibtex.el: Some temporary comments removed. (bibtex-field-name, bibtex-entry-type): Made the relationship explicit. (bibtex-field-const): Allow capital letters. - (bibtex-start-of-string): Deleted because unused. + (bibtex-start-of-string): Delete because unused. * textmodes/bibtex.el: Unified some nomenclature. We no longer use the term 'reference' to describe a bibtex entry as a whole. Further, reference keys are no longer called 'labels'. - (bibtex-keys): Renamed to bibtex-reference-keys. - (bibtex-reformat-previous-labels): Renamed to + (bibtex-keys): Rename to bibtex-reference-keys. + (bibtex-reformat-previous-labels): Rename to bibtex-reformat-previous-reference-keys. - (bibtex-reference-type): Renamed to bibtex-entry-type. - (bibtex-reference-head): Renamed to bibtex-entry-head. - (bibtex-reference-maybe-empty-head): Renamed to + (bibtex-reference-type): Rename to bibtex-entry-type. + (bibtex-reference-head): Rename to bibtex-entry-head. + (bibtex-reference-maybe-empty-head): Rename to bibtex-entry-maybe-empty-head. - (bibtex-key-in-reference): Renamed to bibtex-key-in-entry. - (bibtex-search-reference): Renamed to bibtex-search-entry. - (bibtex-enclosing-reference-maybe-empty-head): Renamed to + (bibtex-key-in-reference): Rename to bibtex-key-in-entry. + (bibtex-search-reference): Rename to bibtex-search-entry. + (bibtex-enclosing-reference-maybe-empty-head): Rename to bibtex-enclosing-entry-maybe-empty-head. (bibtex-entry-field-alist, bibtex-entry-head) (bibtex-font-lock-keywords, bibtex-skip-to-valid-entry) @@ -19793,7 +19793,7 @@ 2000-02-15 Dirk Herrmann <D.Herrmann@tu-bs.de> - * textmodes/bibtex.el (bibtex-strings, bibtex-keys): Removed redundant + * textmodes/bibtex.el (bibtex-strings, bibtex-keys): Remove redundant comment. (bibtex-format-field-delimiters): New function, functionality extracted from bibtex-format-entry. @@ -19813,7 +19813,7 @@ (bibtex-field-string-or-const, bibtex-field-text, bibtex-field) (bibtex-name-in-field, bibtex-text-in-field, bibtex-reference-infix) (bibtex-string, bibtex-key-in-string, bibtex-text-in-string): - Deleted as parsing is now performed by the following functions. + Delete as parsing is now performed by the following functions. (bibtex-parse-nested-braces, bibtex-parse-field-string-braced) (bibtex-parse-quoted-string, bibtex-parse-field-string-quoted) (bibtex-parse-field-string, bibtex-search-forward-field-string) @@ -19832,7 +19832,7 @@ entries. Instead of reporting the results of the parsing by match-beginning or match-end, these functions return data structures that hold the corresponding positions. - (bibtex-enclosing-field): Changed to also report field boundaries by + (bibtex-enclosing-field): Change to also report field boundaries by return values rather than by match-beginning or match-end. The following functions have been adapted to use the new parsing functions. @@ -19878,11 +19878,11 @@ * bibtex.el: Hiding of entry bodies is not longer provided by bibtex.el directly. Instead the hideshow package can be used. Added a special bibtex entry to hs-special-modes-alist. - (bibtex-hs-forward-sexp): Added for hideshow.el. + (bibtex-hs-forward-sexp): Add for hideshow.el. 2000-02-15 Dirk Herrmann <D.Herrmann@tu-bs.de> - * bibtex.el (bibtex-entry-field-alist): Added booktitle field to + * bibtex.el (bibtex-entry-field-alist): Add booktitle field to proceedings entry type (for cross referencing). Thanks to Wagner Toledo Correa for the suggestion. @@ -19895,11 +19895,11 @@ 2000-02-12 Gerd Moellmann <gerd@gnu.org> * uniquify.el (toplevel): Require CL at compile time. - (uniquify-push): Removed. + (uniquify-push): Remove. - * shadowfile.el (shadow-when): Removed. + * shadowfile.el (shadow-when): Remove. - * tempo.el (tempo-dolist, tempo-mapc): Removed. + * tempo.el (tempo-dolist, tempo-mapc): Remove. (tempo-process-and-insert-string): Use dolist instead of tempo-dolist. * textmodes/sgml-mode.el (sgml-mode-common): Remove `$' from @@ -19912,7 +19912,7 @@ * wid-edit.el (widgets) [defgroup]: Remove url link. (widget-color-choice-list, widget-color-history, widget-mouse-help): - Deleted. + Delete. (widget-specify-field, widget-specify-button): Don't use widget-mouse-help as help-echo property. (default): Use #'ignore for :validate and :mouse-down-action. @@ -19922,8 +19922,8 @@ (widget-color-complete): Use facemenu-color-alist. (widget-color-action): Use facemenu-read-color. - * emacs-lisp/cl-macs.el: Don't bother testing for defalias. Don't - set up `caar' &c that we now have. + * emacs-lisp/cl-macs.el: Don't bother testing for defalias. + Don't set up `caar' &c that we now have. 2000-02-09 Ray Blaak <blaak@gnu.org> @@ -19935,9 +19935,9 @@ * bindings.el (mode-line-input-method-map): New variable. (mode-line-mule-info): Use it; fix last change. (mode-line-mode-menu): Move definition. - (mode-line-mouse-sensitive-p): Deleted. + (mode-line-mouse-sensitive-p): Delete. (mode-line-mode-name): Don't use mode-line-mouse-sensitive-p. - (make-mode-line-mouse-sensitive): Deleted. Body moved to top level. + (make-mode-line-mouse-sensitive): Delete. Body moved to top level. * startup.el (command-line-1): Don't call make-mode-line-mouse-sensitive. @@ -19960,7 +19960,7 @@ (font-lock-add-keywords): Make it work even if font-lock-mode is nil, so that it can be used more easily in <foo>-mode-hook. Also make sure to avoid duplicate entries. - (font-lock-update-removed-keyword-alist): Renamed `major-mode'->`mode'. + (font-lock-update-removed-keyword-alist): Rename `major-mode'->`mode'. (font-lock-remove-keywords): Just as was done for `add', allow it to work even if font-lock-mode is nil. Also make sure we don't modify any pre-existing list by forcing a copy-sequence. Finally rename @@ -20005,12 +20005,12 @@ (idlwave-if, idlwave-procedure, idlwave-function, idlwave-repeat) (idlwave-while): Respect `idlwave-reserved-word-upcase'. (idlwave-rw-case): New function. - (idlwave-statement-match): Fixed problem with assignment regexp. - (idlwave-font-lock-keywords): Improved regexp for keyword parameters. + (idlwave-statement-match): Fix problem with assignment regexp. + (idlwave-font-lock-keywords): Improve regexp for keyword parameters. (idlwave-surround): New argument LENGTH to support padding of operators longer than 1 char. - * progmodes/idlw-shell.el (idlwave-shell-print): Fixed bug with + * progmodes/idlw-shell.el (idlwave-shell-print): Fix bug with idlwave-shell-expression-overlay. Implemented printing of expressions on higher levels of the calling stack. (idlwave-shell-display-level-in-calling-stack): Restore stack level. @@ -20023,7 +20023,7 @@ negative level numbers. (idlwave-shell-mode): Set `modeline-format'. (idlwave-shell-display-line): Set `idlwave-shell-mode-line-info'. - (idlwave-shell-make-new-bp-overlay): Fixed glyph display for Emacs 21. + (idlwave-shell-make-new-bp-overlay): Fix glyph display for Emacs 21. (idlwave-shell-print-expression-function): New option. * progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere) @@ -20104,7 +20104,7 @@ end position. (jit-lock-stealth-chunk-start): Rewritten. - * info.el (Info-title-face-alist): Removed. + * info.el (Info-title-face-alist): Remove. (Info-title-1-face, Info-title-2-face, Info-title-3-face): New faces. (Info-fontify-node): Use these faces. @@ -20175,8 +20175,8 @@ 2000-01-28 Gerd Moellmann <gerd@gnu.org> - * emacs-lisp/cl-macs.el (cl-parse-loop-clause): Recognize - `collecting' as synonym for `collect'. + * emacs-lisp/cl-macs.el (cl-parse-loop-clause): + Recognize `collecting' as synonym for `collect'. * ange-ftp.el (ange-ftp-copy-file-internal): Quote new name for the case it contains spaces. @@ -20252,7 +20252,7 @@ Do not call make-variable-buffer-local. (end-of-defun): Use new variable name; doc fix. - * subr.el (dolist, dotimes): Copied from cl-macs.el + * subr.el (dolist, dotimes): Copy from cl-macs.el and made to work. * mail/undigest.el (rmail-digest-end-regexps): @@ -20281,7 +20281,7 @@ 2000-01-14 Gerd Moellmann <gerd@gnu.org> - * emacs-lisp/copyright.el (copyright-update): Removed the + * emacs-lisp/copyright.el (copyright-update): Remove the requirement for a trailing space from `copyright-regexp', to support copyrights with owner specified on a separate line.. @@ -20330,7 +20330,7 @@ * net: New directory. - * emacs-lisp/lisp-mode.el (eval-last-sexp-1): Renamed from + * emacs-lisp/lisp-mode.el (eval-last-sexp-1): Rename from eval-last-sexp. Don't bind debug-on-error here. (eval-last-sexp): New function. Bind debug-on-error if eval-expression-debug-on-error is non-nil. @@ -20349,9 +20349,9 @@ * emacs-lisp/lisp-mode.el (with-syntax-table): Set up lisp-indent-function property. - * subr.el (with-syntax-table): Moved from simple.el. + * subr.el (with-syntax-table): Move from simple.el. - * simple.el (with-syntax-table): Moved to subr.el. + * simple.el (with-syntax-table): Move to subr.el. 2000-01-11 Gerd Moellmann <gerd@gnu.org> @@ -20381,7 +20381,7 @@ 2000-01-10 John Wiegley <johnw@gnu.org> - * allout.el (isearch-done/outline-provisions): Added `edit' + * allout.el (isearch-done/outline-provisions): Add `edit' argument to correspond with the current definition of `isearch-done'. 2000-01-10 Dave Love <fx@gnu.org> @@ -20403,17 +20403,17 @@ (version20p): New variable. (xemacsp): New variable. (ispell-choices-win-default-height): Fix for XEmacs visibility. - (ispell-dictionary-alist1): Added Brasileiro dictionary. + (ispell-dictionary-alist1): Add Brasileiro dictionary. (ispell-dictionary-alist6): Russian command lines no longer accept run-together words. (ispell-local-dictionary-alist): Add koi8-r to customize definition. (ispell-dictionary-alist): Add koi8-r to customize definition. - (check-ispell-version): Added documentation string. Return library + (check-ispell-version): Add documentation string. Return library path when called non-interactively. (ispell-menu-map-needed): Uses new variables. (ispell-library-path): New variable. (ispell-decode-string): XEmacs fix for bogus variable bindings. - (ispell-word): Improved documentation string. Test for valid + (ispell-word): Improve documentation string. Test for valid character mappings. Correctly check typed in word changes that can result in single words split into multiple words. Return replacement word. @@ -20477,7 +20477,7 @@ 2000-01-07 Dave Love <fx@gnu.org> - * add-log.el (add-log-debugging): Deleted. + * add-log.el (add-log-debugging): Delete. (add-change-log-entry): Treat a backup FILE-NAME as its parent file. Remove debugging code. (change-log-get-method-definition, change-log-name): Add doc. @@ -20518,7 +20518,7 @@ M-C-e, M-C-h, C-j, C-xnd, TAB. (fortran-mode): Set beginning-of-defun, end-of-defun. (fortran-column-ruler): Simplify. - (fortran-mark-subprogram, fortran-narrow-to-subprogram): Deleted. + (fortran-mark-subprogram, fortran-narrow-to-subprogram): Delete. (fortran-with-subprogram-narrowing): Likewise. (fortran-indent-subprogram): Call mark-defun. (fortran-check-for-matching-do): Change narrowing. @@ -20631,7 +20631,7 @@ * faces.el (face-read-integer, read-face-attribute) (color-defined-p, color-values): Unspecified-{f,b}g are now strings. -2000-01-03 Martin Stjernholm <bug-cc-mode@gnu.org> +2000-01-03 Martin Stjernholm <mast@lysator.liu.se> * progmodes/cc-cmds.el (c-fill-paragraph): Count number of spaces at comment end, and re-insert them after filling. @@ -20661,7 +20661,7 @@ (display-color-p, frame-set-background-mode): Pass the frame to tty-display-color-p. - * term/tty-colors.el (tty-defined-color-alist): Renamed from + * term/tty-colors.el (tty-defined-color-alist): Rename from tty-color-alist. (tty-color-alist, tty-modify-color-alist): New functions. (tty-color-define, tty-color-clear, tty-color-approximate) diff --git a/lisp/Makefile.in b/lisp/Makefile.in index 633551387e6..6f87c6da312 100644 --- a/lisp/Makefile.in +++ b/lisp/Makefile.in @@ -185,17 +185,6 @@ autoloads: $(LOADDEFS) --eval '(setq autoload-builtin-package-versions t)' \ --eval '(setq generated-autoload-file (expand-file-name (unmsys--file-name "$(srcdir)/loaddefs.el")))' \ -f batch-update-autoloads $$wins - $(MAKE) obsolete-autoloads - -# The obsolete/ subdirectory is normally not scanned for autoloads. -# Sometimes we still want to autoload something from that directory, -# eg iswitchb. -.PHONY: obsolete-autoloads -obsolete-autoloads: ${lisp}/obsolete/*.el - $(emacs) -l autoload \ - --eval '(setq generate-autoload-cookie ";;;###obsolete-autoload")' \ - --eval '(setq generated-autoload-file (expand-file-name (unmsys--file-name "$(srcdir)/loaddefs.el")))' \ - -f batch-update-autoloads ${lisp}/obsolete # This is required by the bootstrap-emacs target in ../src/Makefile, so # we know that if we have an emacs executable, we also have a subdirs.el. @@ -387,7 +376,7 @@ compile-after-backup: backup-compiled-files compile-always # There is no reason to use this rule unless you only have a single # core and CPU time is an issue. .PHONY: compile-one-process -compile-one-process: $(LOADDEFS) compile-first $(lisp)/progmodes/cc-mode.elc +compile-one-process: $(LOADDEFS) compile-first $(emacs) $(BYTE_COMPILE_FLAGS) \ --eval "(batch-byte-recompile-directory 0)" $(lisp) @@ -495,7 +484,7 @@ check-declare: # CC Mode uses a compile time macro system which causes a compile time # dependency in cc-*.elc files on the macros in other cc-*.el and the # version string in cc-defs.el. -$(lisp)/progmodes/cc-align.elc $(lisp)/progmodes/cc-awk.elc\ +$(lisp)/progmodes/cc-align.elc\ $(lisp)/progmodes/cc-cmds.elc $(lisp)/progmodes/cc-compat.elc\ $(lisp)/progmodes/cc-engine.elc $(lisp)/progmodes/cc-fonts.elc\ $(lisp)/progmodes/cc-langs.elc $(lisp)/progmodes/cc-menus.elc\ diff --git a/lisp/apropos.el b/lisp/apropos.el index 2cba65e9559..ac76ce26b41 100644 --- a/lisp/apropos.el +++ b/lisp/apropos.el @@ -718,7 +718,7 @@ the output includes key-bindings of commands." (setq doc (list (car properties))) (while (setq properties (cdr (cdr properties))) (setq doc (cons (car properties) doc))) - (mapconcat #'symbol-name (nreverse doc) " ")) + (mapconcat (lambda (p) (format "%s" p)) (nreverse doc) " ")) (when (get symbol 'widget-type) (apropos-documentation-property symbol 'widget-documentation t)) diff --git a/lisp/calc/calc-forms.el b/lisp/calc/calc-forms.el index dbde4cd0c41..a48075cce91 100644 --- a/lisp/calc/calc-forms.el +++ b/lisp/calc/calc-forms.el @@ -273,7 +273,10 @@ (m (math-normalize (nth 2 a))) (s (let ((calc-internal-prec (max (- calc-internal-prec 4) 3))) (math-normalize (nth 3 a))))) - (if (math-negp h) + (if (or + (math-negp h) + (and (= h 0) (math-negp m)) + (and (= h 0) (= m 0) (math-negp s))) (progn (if (math-posp s) (setq s (math-add s -60) diff --git a/lisp/calc/calc-help.el b/lisp/calc/calc-help.el index be04e5a12c0..dfd29230fe5 100644 --- a/lisp/calc/calc-help.el +++ b/lisp/calc/calc-help.el @@ -366,9 +366,9 @@ C-w Describe how there is no warranty for Calc." (Info-goto-node (buffer-substring (match-beginning 1) (match-end 1)))) (or (let ((case-fold-search nil)) (or (re-search-forward (format "\\[`%s'\\]\\|(`%s')\\|\\<The[ \n]`%s'" - (or target thing) - (or target thing) - (or target thing)) nil t) + (or target (regexp-quote thing)) + (or target (regexp-quote thing)) + (or target (regexp-quote thing))) nil t) (and not-quoted (let ((case-fold-search t)) (search-forward (or target thing) nil t))) @@ -376,9 +376,9 @@ C-w Describe how there is no warranty for Calc." (search-forward (or target thing) nil t))) (let ((case-fold-search t)) (or (re-search-forward (format "\\[`%s'\\]\\|(`%s')\\|\\<The[ \n]`%s'" - (or target thing) - (or target thing) - (or target thing)) nil t) + (or target (regexp-quote thing)) + (or target (regexp-quote thing)) + (or target (regexp-quote thing))) nil t) (search-forward (format "`%s'" (or target thing)) nil t) (search-forward (or target thing) nil t)))) (beginning-of-line) diff --git a/lisp/calc/calc-prog.el b/lisp/calc/calc-prog.el index 30a06a2aa00..156bf4cd0db 100644 --- a/lisp/calc/calc-prog.el +++ b/lisp/calc/calc-prog.el @@ -139,6 +139,7 @@ "calc-")))) (let* ((kmap (calc-user-key-map)) (old (assq key kmap))) + ;; FIXME: Why not (define-key kmap (vector key) func)? (if old (setcdr old func) (setcdr kmap (cons (cons key func) (cdr kmap)))))))) @@ -322,6 +323,7 @@ (if key (let* ((kmap (calc-user-key-map)) (old (assq key kmap))) + ;; FIXME: Why not (define-key kmap (vector key) cmd)? (if old (setcdr old cmd) (setcdr kmap (cons (cons key cmd) (cdr kmap))))))) @@ -467,6 +469,7 @@ (format "z%c" key))))) (let* ((kmap (calc-user-key-map)) (old (assq key kmap))) + ;; FIXME: Why not (define-key kmap (vector key) func)? (if old (setcdr old cmd) (setcdr kmap (cons (cons key cmd) (cdr kmap)))))))) diff --git a/lisp/calc/calc-yank.el b/lisp/calc/calc-yank.el index 8d182372cfb..9781d4174f5 100644 --- a/lisp/calc/calc-yank.el +++ b/lisp/calc/calc-yank.el @@ -143,10 +143,7 @@ TEXT and CALCVAL are the TEXT and internal structure of stack entries.") "Set the contents of the Calc register REGISTER to (TEXT . CALCVAL), as well as set the contents of the Emacs register REGISTER to TEXT." (set-register register text) - (let ((aelt (assq register calc-register-alist))) - (if aelt - (setcdr aelt (cons text calcval)) - (push (cons register (cons text calcval)) calc-register-alist)))) + (setf (alist-get register calc-register-alist) (cons text calcval))) (defun calc-get-register (reg) "Return the CALCVAL portion of the contents of the Calc register REG, diff --git a/lisp/calendar/cal-bahai.el b/lisp/calendar/cal-bahai.el index f7723b9aa7b..8e828074ea4 100644 --- a/lisp/calendar/cal-bahai.el +++ b/lisp/calendar/cal-bahai.el @@ -94,9 +94,6 @@ Gregorian date Sunday, December 31, 1 BC." 0) day))) ; days so far this month -(define-obsolete-function-alias 'calendar-absolute-from-bahai - 'calendar-bahai-to-absolute "23.1") - (defun calendar-bahai-from-absolute (date) "Bahá'à date (month day year) corresponding to the absolute DATE." (if (< date calendar-bahai-epoch) @@ -152,9 +149,6 @@ Defaults to today's date if DATE is not given." (message "Date is pre-Bahá'Ã") (message "Bahá'à date: %s" s)))) -(define-obsolete-function-alias - 'calendar-print-bahai-date 'calendar-bahai-print-date "23.1") - (defun calendar-bahai-read-date () "Interactively read the arguments for a Bahá'à date command. Reads a year, month and day." @@ -179,9 +173,6 @@ Reads a year, month and day." (lambda (x) (and (< 0 x) (<= x 19)))))) (list (list month day year)))) -(define-obsolete-function-alias - 'calendar-bahai-prompt-for-date 'calendar-bahai-read-date "23.1") - ;;;###cal-autoload (defun calendar-bahai-goto-date (date &optional noecho) "Move cursor to Bahá'à date DATE; echo Bahá'à date unless NOECHO is non-nil." @@ -190,9 +181,6 @@ Reads a year, month and day." (calendar-bahai-to-absolute date))) (or noecho (calendar-bahai-print-date))) -(define-obsolete-function-alias - 'calendar-goto-bahai-date 'calendar-bahai-goto-date "23.1") - (defvar displayed-month) (defvar displayed-year) @@ -270,9 +258,6 @@ will not be marked in the calendar. This function is provided for use with (diary-list-entries-1 calendar-bahai-month-name-array diary-bahai-entry-symbol 'calendar-bahai-from-absolute)) -(define-obsolete-function-alias - 'list-bahai-diary-entries 'diary-bahai-list-entries "23.1") - (autoload 'calendar-mark-1 "diary-lib") @@ -284,10 +269,6 @@ passed to `calendar-mark-visible-date' as MARK." (calendar-mark-1 month day year 'calendar-bahai-from-absolute 'calendar-bahai-to-absolute color)) -(define-obsolete-function-alias - 'mark-bahai-calendar-date-pattern 'calendar-bahai-mark-date-pattern "23.1") - - (autoload 'diary-mark-entries-1 "diary-lib") ;;;###diary-autoload @@ -300,10 +281,6 @@ window. See `diary-bahai-list-entries' for more information." diary-bahai-entry-symbol 'calendar-bahai-from-absolute)) -(define-obsolete-function-alias - 'mark-bahai-diary-entries 'diary-bahai-mark-entries "23.1") - - (autoload 'diary-insert-entry-1 "diary-lib") ;;;###cal-autoload @@ -316,9 +293,6 @@ Prefix argument ARG makes the entry nonmarking." diary-bahai-entry-symbol 'calendar-bahai-from-absolute)) -(define-obsolete-function-alias - 'insert-bahai-diary-entry 'diary-bahai-insert-entry "23.1") - ;;;###cal-autoload (defun diary-bahai-insert-monthly-entry (arg) "Insert a monthly diary entry. @@ -329,9 +303,6 @@ Prefix argument ARG makes the entry nonmarking." diary-bahai-entry-symbol 'calendar-bahai-from-absolute)) -(define-obsolete-function-alias - 'insert-monthly-bahai-diary-entry 'diary-bahai-insert-monthly-entry "23.1") - ;;;###cal-autoload (defun diary-bahai-insert-yearly-entry (arg) "Insert an annual diary entry. @@ -342,9 +313,6 @@ Prefix argument ARG will make the entry nonmarking." diary-bahai-entry-symbol 'calendar-bahai-from-absolute)) -(define-obsolete-function-alias - 'insert-yearly-bahai-diary-entry 'diary-bahai-insert-yearly-entry "23.1") - (defvar date) ;; To be called from diary-list-sexp-entries, where DATE is bound. diff --git a/lisp/calendar/cal-china.el b/lisp/calendar/cal-china.el index e266613680a..c5860653a3e 100644 --- a/lisp/calendar/cal-china.el +++ b/lisp/calendar/cal-china.el @@ -58,9 +58,6 @@ :prefix "calendar-chinese-" :group 'calendar) -(define-obsolete-variable-alias 'chinese-calendar-time-zone - 'calendar-chinese-time-zone "23.1") - (defcustom calendar-chinese-time-zone '(if (< year 1928) (+ 465 (/ 40.0 60.0)) @@ -78,18 +75,12 @@ Default is for Beijing. This is an expression in `year' since it changed at (put 'chinese-calendar-time-zone 'risky-local-variable t) -(define-obsolete-variable-alias 'chinese-calendar-location-name - 'calendar-chinese-location-name "23.1") - ;; FIXME unused. (defcustom calendar-chinese-location-name "Beijing" "Name of location used for calculation of Chinese calendar." :type 'string :group 'calendar-chinese) -(define-obsolete-variable-alias 'chinese-calendar-daylight-time-offset - 'calendar-chinese-daylight-time-offset "23.1") - (defcustom calendar-chinese-daylight-time-offset 0 ;; The correct value is as follows, but the Chinese calendrical ;; authorities do NOT use DST in determining astronomical events: @@ -99,9 +90,6 @@ Default is for no daylight saving time." :type 'integer :group 'calendar-chinese) -(define-obsolete-variable-alias 'chinese-calendar-standard-time-zone-name - 'calendar-chinese-standard-time-zone-name "23.1") - (defcustom calendar-chinese-standard-time-zone-name '(if (< year 1928) "PMT" @@ -112,17 +100,11 @@ at 1928-01-01 00:00:00 from `PMT' to `CST'." :type 'sexp :group 'calendar-chinese) -(define-obsolete-variable-alias 'chinese-calendar-daylight-time-zone-name - 'calendar-chinese-daylight-time-zone-name "23.1") - (defcustom calendar-chinese-daylight-time-zone-name "CDT" "Abbreviated name of daylight saving time zone used for Chinese calendar." :type 'string :group 'calendar-chinese) -(define-obsolete-variable-alias 'chinese-calendar-daylight-savings-starts - 'calendar-chinese-daylight-saving-start "23.1") - (defcustom calendar-chinese-daylight-saving-start nil ;; The correct value is as follows, but the Chinese calendrical ;; authorities do NOT use DST in determining astronomical events: @@ -135,9 +117,6 @@ Default is for no daylight saving time. See documentation of :type 'sexp :group 'calendar-chinese) -(define-obsolete-variable-alias 'chinese-calendar-daylight-savings-ends - 'calendar-chinese-daylight-saving-end "23.1") - (defcustom calendar-chinese-daylight-saving-end nil ;; The correct value is as follows, but the Chinese calendrical ;; authorities do NOT use DST in determining astronomical events: @@ -148,27 +127,18 @@ Default is for no daylight saving time. See documentation of :type 'sexp :group 'calendar-chinese) -(define-obsolete-variable-alias 'chinese-calendar-daylight-savings-starts-time - 'calendar-chinese-daylight-saving-start-time "23.1") - (defcustom calendar-chinese-daylight-saving-start-time 0 "Number of minutes after midnight that daylight saving time starts. Default is for no daylight saving time." :type 'integer :group 'calendar-chinese) -(define-obsolete-variable-alias 'chinese-calendar-daylight-savings-ends-time - 'calendar-chinese-daylight-saving-end-time "23.1") - (defcustom calendar-chinese-daylight-saving-end-time 0 "Number of minutes after midnight that daylight saving time ends. Default is for no daylight saving time." :type 'integer :group 'calendar-chinese) -(define-obsolete-variable-alias 'chinese-calendar-celestial-stem - 'calendar-chinese-celestial-stem "23.1") - (defcustom calendar-chinese-celestial-stem ["Jia" "Yi" "Bing" "Ding" "Wu" "Ji" "Geng" "Xin" "Ren" "Gui"] "Prefixes used by `calendar-chinese-sexagesimal-name'." @@ -184,9 +154,6 @@ Default is for no daylight saving time." (string :tag "Ren") (string :tag "Gui"))) -(define-obsolete-variable-alias 'chinese-calendar-terrestrial-branch - 'calendar-chinese-terrestrial-branch "23.1") - (defcustom calendar-chinese-terrestrial-branch ["Zi" "Chou" "Yin" "Mao" "Chen" "Si" "Wu" "Wei" "Shen" "You" "Xu" "Hai"] "Suffixes used by `calendar-chinese-sexagesimal-name'." @@ -432,9 +399,6 @@ Sunday, December 31, 1 BC is imaginary." (calendar-chinese-year g-year)) (calendar-chinese-year (1+ g-year)))))))) -(define-obsolete-function-alias 'calendar-absolute-from-chinese - 'calendar-chinese-to-absolute "23.1") - (defun calendar-chinese-from-absolute (date) "Compute Chinese date (cycle year month day) corresponding to absolute DATE. The absolute date is the number of days elapsed since the (imaginary) @@ -599,9 +563,6 @@ Defaults to today's date if DATE is not given." (message "Chinese date: %s" (calendar-chinese-date-string (calendar-cursor-to-date t)))) -(define-obsolete-function-alias 'calendar-print-chinese-date - 'calendar-chinese-print-date "23.1") - (defun calendar-chinese-months-to-alist (l) "Make list of months L into an assoc list." (and l (car l) @@ -671,9 +632,6 @@ Echo Chinese date unless NOECHO is non-nil." (calendar-chinese-to-absolute date))) (or noecho (calendar-chinese-print-date))) -(define-obsolete-function-alias 'calendar-goto-chinese-date - 'calendar-chinese-goto-date "23.1") - (defvar date) ;; To be called from diary-list-sexp-entries, where DATE is bound. diff --git a/lisp/calendar/cal-coptic.el b/lisp/calendar/cal-coptic.el index 2472d295123..54a1fe9bff5 100644 --- a/lisp/calendar/cal-coptic.el +++ b/lisp/calendar/cal-coptic.el @@ -75,9 +75,6 @@ Gregorian date Sunday, December 31, 1 BC." (* 30 (1- month)) ; days in prior months this year day))) ; days so far this month -(define-obsolete-function-alias 'calendar-absolute-from-coptic - 'calendar-coptic-to-absolute "23.1") - (defun calendar-coptic-from-absolute (date) "Compute the Coptic equivalent for absolute date DATE. The result is a list of the form (MONTH DAY YEAR). @@ -135,9 +132,6 @@ Defaults to today's date if DATE is not given." (message "Date is pre-%s calendar" calendar-coptic-name) (message "%s date: %s" calendar-coptic-name f)))) -(define-obsolete-function-alias 'calendar-print-coptic-date - 'calendar-coptic-print-date "23.1") - (defun calendar-coptic-read-date () "Interactively read the arguments for a Coptic date command. Reads a year, month, and day." @@ -164,9 +158,6 @@ Reads a year, month, and day." (lambda (x) (and (< 0 x) (<= x last)))))) (list (list month day year)))) -(define-obsolete-function-alias 'coptic-prompt-for-date - 'calendar-coptic-read-date "23.1") - ;;;###cal-autoload (defun calendar-coptic-goto-date (date &optional noecho) "Move cursor to Coptic date DATE. @@ -176,8 +167,6 @@ Echo Coptic date unless NOECHO is t." (calendar-coptic-to-absolute date))) (or noecho (calendar-coptic-print-date))) -(define-obsolete-function-alias 'calendar-goto-coptic-date - 'calendar-coptic-goto-date "23.1") (defvar date) @@ -208,9 +197,6 @@ Gregorian date Sunday, December 31, 1 BC." (let ((calendar-coptic-epoch calendar-ethiopic-epoch)) (calendar-coptic-to-absolute date))) -(define-obsolete-function-alias 'calendar-absolute-from-ethiopic - 'calendar-ethiopic-to-absolute "23.1") - (defun calendar-ethiopic-from-absolute (date) "Compute the Ethiopic equivalent for absolute date DATE. The result is a list of the form (MONTH DAY YEAR). @@ -238,9 +224,6 @@ Defaults to today's date if DATE is not given." (calendar-coptic-month-name-array calendar-ethiopic-month-name-array)) (call-interactively 'calendar-coptic-print-date))) -(define-obsolete-function-alias 'calendar-print-ethiopic-date - 'calendar-ethiopic-print-date "23.1") - ;;;###cal-autoload (defun calendar-ethiopic-goto-date (date &optional noecho) "Move cursor to Ethiopic date DATE. @@ -254,9 +237,6 @@ Echo Ethiopic date unless NOECHO is t." (calendar-ethiopic-to-absolute date))) (or noecho (calendar-ethiopic-print-date))) -(define-obsolete-function-alias 'calendar-goto-ethiopic-date - 'calendar-ethiopic-goto-date "23.1") - ;; To be called from diary-list-sexp-entries, where DATE is bound. ;;;###diary-autoload (defun diary-ethiopic-date () diff --git a/lisp/calendar/cal-french.el b/lisp/calendar/cal-french.el index cbcd231cca3..36318702d06 100644 --- a/lisp/calendar/cal-french.el +++ b/lisp/calendar/cal-french.el @@ -1,7 +1,7 @@ ;;; cal-french.el --- calendar functions for the French Revolutionary calendar -;; Copyright (C) 1988-1989, 1992, 1994-1995, 1997, 2001-2014 Free -;; Software Foundation, Inc. +;; Copyright (C) 1988-1989, 1992, 1994-1995, 1997, 2001-2014 +;; Free Software Foundation, Inc. ;; Author: Edward M. Reingold <reingold@cs.uiuc.edu> ;; Maintainer: Glenn Morris <rgm@gnu.org> @@ -129,9 +129,6 @@ Gregorian date Sunday, December 31, 1 BC." day ; days so far this month (1- calendar-french-epoch)))) ; days before start of calendar -(define-obsolete-function-alias 'calendar-absolute-from-french - 'calendar-french-to-absolute "23.1") - (defun calendar-french-from-absolute (date) "Compute the French Revolutionary equivalent for absolute date DATE. The result is a list of the form (MONTH DAY YEAR). @@ -196,9 +193,6 @@ Defaults to today's date if DATE is not given." (message "Date is pre-French Revolution") (message "French Revolutionary date: %s" f)))) -(define-obsolete-function-alias 'calendar-print-french-date - 'calendar-french-print-date "23.1") - ;;;###cal-autoload (defun calendar-french-goto-date (date &optional noecho) "Move cursor to French Revolutionary date DATE. @@ -249,9 +243,6 @@ Echo French Revolutionary date unless NOECHO is non-nil." (calendar-french-to-absolute date))) (or noecho (calendar-french-print-date))) -(define-obsolete-function-alias 'calendar-goto-french-date - 'calendar-french-goto-date "23.1") - (defvar date) ;; To be called from diary-list-sexp-entries, where DATE is bound. diff --git a/lisp/calendar/cal-hebrew.el b/lisp/calendar/cal-hebrew.el index 4d20b1fa230..93ac3b722b5 100644 --- a/lisp/calendar/cal-hebrew.el +++ b/lisp/calendar/cal-hebrew.el @@ -32,9 +32,6 @@ (require 'calendar) -(define-obsolete-variable-alias 'diary-sabbath-candles-minutes - 'diary-hebrew-sabbath-candles-minutes "23.1") - (defcustom diary-hebrew-sabbath-candles-minutes 18 "Number of minutes before sunset for sabbath candle lighting. Used by `diary-hebrew-sabbath-candles'." @@ -136,9 +133,6 @@ Gregorian date Sunday, December 31, 1 BC." (calendar-hebrew-elapsed-days year) ; days in prior years -1373429))) ; days elapsed before absolute date 1 -(define-obsolete-function-alias 'calendar-absolute-from-hebrew - 'calendar-hebrew-to-absolute "23.1") - (defun calendar-hebrew-from-absolute (date) "Compute the Hebrew date (month day year) corresponding to absolute DATE. The absolute date is the number of days elapsed since the (imaginary) @@ -194,9 +188,6 @@ Driven by the variable `calendar-date-display-form'." (message "Hebrew date (until sunset): %s" (calendar-hebrew-date-string (calendar-cursor-to-date t)))) -(define-obsolete-function-alias 'calendar-print-hebrew-date - 'calendar-hebrew-print-date "23.1") - (defun calendar-hebrew-yahrzeit (death-date year) "Absolute date of the anniversary of Hebrew DEATH-DATE in Hebrew YEAR." (let ((death-day (calendar-extract-day death-date)) @@ -230,9 +221,6 @@ Driven by the variable `calendar-date-display-form'." (t (calendar-hebrew-to-absolute (list death-month death-day year)))))) -(define-obsolete-function-alias 'hebrew-calendar-yahrzeit - 'calendar-hebrew-yahrzeit "23.1") - (defun calendar-hebrew-read-date () "Interactively read the arguments for a Hebrew date command. Reads a year, month, and day." @@ -284,9 +272,6 @@ Reads a year, month, and day." (calendar-hebrew-to-absolute date))) (or noecho (calendar-hebrew-print-date))) -(define-obsolete-function-alias 'calendar-goto-hebrew-date - 'calendar-hebrew-goto-date "23.1") - (defvar displayed-month) ; from calendar-generate (defun calendar-hebrew-date-is-visible-p (month day) @@ -398,10 +383,6 @@ or ALL is non-nil." "Hoshanah Rabbah")))))))) ;;;###holiday-autoload -(define-obsolete-function-alias 'holiday-rosh-hashanah-etc - 'holiday-hebrew-rosh-hashanah "23.1") - -;;;###holiday-autoload (defun holiday-hebrew-hanukkah (&optional all) "List of dates related to Hanukkah, as visible in calendar window. Shows only Hanukkah, unless `calendar-hebrew-all-holidays-flag' or ALL @@ -434,10 +415,6 @@ is non-nil." (list (list (calendar-gregorian-from-absolute abs-h) "Hanukkah"))))))) ;;;###holiday-autoload -(define-obsolete-function-alias 'holiday-hanukkah - 'holiday-hebrew-hanukkah "23.1") - -;;;###holiday-autoload (defun holiday-hebrew-passover (&optional all) "List of dates related to Passover, as visible in calendar window. Shows only the major holidays, unless `calendar-hebrew-all-holidays-flag' @@ -520,10 +497,6 @@ or ALL is non-nil." "Shavuot (second day)"))))))))) ;;;###holiday-autoload -(define-obsolete-function-alias 'holiday-passover-etc - 'holiday-hebrew-passover "23.1") - -;;;###holiday-autoload (defun holiday-hebrew-tisha-b-av () "List of dates around Tisha B'Av, as visible in calendar window." (when (memq displayed-month '(5 6 7 8 9)) @@ -545,10 +518,6 @@ or ALL is non-nil." (calendar-dayname-on-or-before 6 (+ abs-t-a 7))) "Shabbat Nahamu")))))) -;;;###holiday-autoload -(define-obsolete-function-alias 'holiday-tisha-b-av-etc - 'holiday-hebrew-tisha-b-av "23.1") - (autoload 'holiday-julian "cal-julian") ;;;###holiday-autoload @@ -634,9 +603,6 @@ is provided for use with `diary-nongregorian-listing-hook'." (diary-list-entries-1 calendar-hebrew-month-name-array-leap-year diary-hebrew-entry-symbol 'calendar-hebrew-from-absolute)) -;;;###diary-autoload -(define-obsolete-function-alias 'list-hebrew-diary-entries - 'diary-hebrew-list-entries "23.1") (autoload 'calendar-mark-complex "diary-lib") @@ -662,10 +628,6 @@ passed to `calendar-mark-visible-date' as MARK." (calendar-mark-complex month day year 'calendar-hebrew-from-absolute color)))) -;;;###diary-autoload -(define-obsolete-function-alias 'mark-hebrew-calendar-date-pattern - 'calendar-hebrew-mark-date-pattern "23.1") - (autoload 'diary-mark-entries-1 "diary-lib") ;;;###diary-autoload @@ -678,10 +640,6 @@ window. See `list-hebrew-diary-entries' for more information." diary-hebrew-entry-symbol 'calendar-hebrew-from-absolute)) -;;;###diary-autoload -(define-obsolete-function-alias 'mark-hebrew-diary-entries - 'diary-hebrew-mark-entries "23.1") - (autoload 'diary-insert-entry-1 "diary-lib") ;;;###cal-autoload @@ -693,10 +651,6 @@ Prefix argument ARG makes the entry nonmarking." diary-hebrew-entry-symbol 'calendar-hebrew-from-absolute)) -;;;###diary-autoload -(define-obsolete-function-alias 'insert-hebrew-diary-entry - 'diary-hebrew-insert-entry "23.1") - ;;;###cal-autoload (defun diary-hebrew-insert-monthly-entry (arg) "Insert a monthly diary entry. @@ -706,9 +660,6 @@ Prefix argument ARG makes the entry nonmarking." (diary-insert-entry-1 'monthly arg calendar-hebrew-month-name-array-leap-year diary-hebrew-entry-symbol 'calendar-hebrew-from-absolute)) -;;;###diary-autoload -(define-obsolete-function-alias 'insert-monthly-hebrew-diary-entry - 'diary-hebrew-insert-monthly-entry "23.1") ;;;###cal-autoload (defun diary-hebrew-insert-yearly-entry (arg) @@ -719,9 +670,6 @@ Prefix argument ARG makes the entry nonmarking." (diary-insert-entry-1 'yearly arg calendar-hebrew-month-name-array-leap-year diary-hebrew-entry-symbol 'calendar-hebrew-from-absolute)) -;;;###diary-autoload -(define-obsolete-function-alias 'insert-yearly-hebrew-diary-entry - 'diary-hebrew-insert-yearly-entry "23.1") ;;;###autoload (defun calendar-hebrew-list-yahrzeits (death-date start-year end-year) @@ -786,10 +734,6 @@ from the cursor position." (calendar-absolute-from-gregorian (list 1 1 i))))))) "\n")))) (message "Computing Yahrzeits...done")) -;;;###autoload -(define-obsolete-function-alias 'list-yahrzeit-dates - 'calendar-hebrew-list-yahrzeits "23.1") - (defun calendar-hebrew-birthday (date year) "Absolute date of the anniversary of Hebrew birth DATE, in Hebrew YEAR." (let ((b-day (calendar-extract-day date)) @@ -869,8 +813,6 @@ use when highlighting the day in the calendar." "" (format " and %d day%s" day (if (= day 1) "" "s")))))))))) -;;;###diary-autoload -(define-obsolete-function-alias 'diary-omer 'diary-hebrew-omer "23.1") (autoload 'diary-make-date "diary-lib") @@ -912,9 +854,6 @@ use when highlighting the day in the calendar." (diary-ordinal-suffix diff)))))) ;;;###diary-autoload -(define-obsolete-function-alias 'diary-yahrzeit 'diary-hebrew-yahrzeit "23.1") - -;;;###diary-autoload (defun diary-hebrew-rosh-hodesh (&optional mark) "Rosh Hodesh diary entry. Entry applies if date is Rosh Hodesh, the day before, or the Saturday before. @@ -976,9 +915,6 @@ use when highlighting the day in the calendar." (calendar-hebrew-last-month-of-year h-year)) 0 h-month))))))))) -;;;###diary-autoload -(define-obsolete-function-alias 'diary-rosh-hodesh - 'diary-hebrew-rosh-hodesh "23.1") (defconst calendar-hebrew-parashiot-names ["Bereshith" "Noah" "Lech L'cha" "Vayera" "Hayei Sarah" "Toledoth" @@ -1166,8 +1102,6 @@ use when highlighting the day in the calendar." (cdr parasha)))) (calendar-hebrew-parasha-name parasha))))))))) -(define-obsolete-function-alias 'diary-parasha 'diary-hebrew-parasha "23.1") - (declare-function solar-setup "solar" ()) (declare-function solar-sunrise-sunset "solar" (date)) @@ -1199,10 +1133,6 @@ use when highlighting the day in the calendar." 60.0)) (cdr sunset))))))))) -;;;###diary-autoload -(define-obsolete-function-alias 'diary-sabbath-candles - 'diary-hebrew-sabbath-candles "23.1") - (provide 'cal-hebrew) diff --git a/lisp/calendar/cal-islam.el b/lisp/calendar/cal-islam.el index 50034755d6f..00e54658fb2 100644 --- a/lisp/calendar/cal-islam.el +++ b/lisp/calendar/cal-islam.el @@ -87,9 +87,6 @@ Gregorian date Sunday, December 31, 1 BC." leap-years-in-cycle ; leap days this cycle (1- calendar-islamic-epoch)))) ; days before start of calendar -(define-obsolete-function-alias 'calendar-absolute-from-islamic - 'calendar-islamic-to-absolute "23.1") - (defun calendar-islamic-from-absolute (date) "Compute the Islamic date (month day year) corresponding to absolute DATE. The absolute date is the number of days elapsed since the (imaginary) @@ -141,9 +138,6 @@ Driven by the variable `calendar-date-display-form'." (message "Date is pre-Islamic") (message "Islamic date (until sunset): %s" i)))) -(define-obsolete-function-alias 'calendar-print-islamic-date - 'calendar-islamic-print-date "23.1") - (defun calendar-islamic-read-date () "Interactively read the arguments for an Islamic date command. Reads a year, month, and day." @@ -177,9 +171,6 @@ Reads a year, month, and day." (calendar-islamic-to-absolute date))) (or noecho (calendar-islamic-print-date))) -(define-obsolete-function-alias 'calendar-goto-islamic-date - 'calendar-islamic-goto-date "23.1") - (defvar displayed-month) ; from calendar-generate (defvar displayed-year) @@ -260,9 +251,6 @@ marked in the calendar. This function is provided for use with diary-islamic-entry-symbol 'calendar-islamic-from-absolute)) -(define-obsolete-function-alias 'list-islamic-diary-entries - 'diary-islamic-list-entries "23.1") - (autoload 'calendar-mark-1 "diary-lib") ;;;###diary-autoload @@ -273,9 +261,6 @@ passed to `calendar-mark-visible-date' as MARK." (calendar-mark-1 month day year 'calendar-islamic-from-absolute 'calendar-islamic-to-absolute color)) -(define-obsolete-function-alias 'mark-islamic-calendar-date-pattern - 'calendar-islamic-mark-date-pattern "23.1") - (autoload 'diary-mark-entries-1 "diary-lib") ;;;###diary-autoload @@ -288,9 +273,6 @@ window. See `diary-islamic-list-entries' for more information." diary-islamic-entry-symbol 'calendar-islamic-from-absolute)) -(define-obsolete-function-alias - 'mark-islamic-diary-entries 'diary-islamic-mark-entries "23.1") - (autoload 'diary-insert-entry-1 "diary-lib") ;;;###cal-autoload @@ -303,9 +285,6 @@ Prefix argument ARG makes the entry nonmarking." diary-islamic-entry-symbol 'calendar-islamic-from-absolute)) -(define-obsolete-function-alias 'insert-islamic-diary-entry - 'diary-islamic-insert-entry "23.1") - ;;;###cal-autoload (defun diary-islamic-insert-monthly-entry (arg) "Insert a monthly diary entry. @@ -316,9 +295,6 @@ Prefix argument ARG makes the entry nonmarking." diary-islamic-entry-symbol 'calendar-islamic-from-absolute)) -(define-obsolete-function-alias 'insert-monthly-islamic-diary-entry - 'diary-islamic-insert-monthly-entry "23.1") - ;;;###cal-autoload (defun diary-islamic-insert-yearly-entry (arg) "Insert an annual diary entry. @@ -328,8 +304,6 @@ Prefix argument ARG makes the entry nonmarking." (diary-insert-entry-1 'yearly arg calendar-islamic-month-name-array diary-islamic-entry-symbol 'calendar-islamic-from-absolute)) -(define-obsolete-function-alias - 'insert-yearly-islamic-diary-entry 'diary-islamic-insert-yearly-entry "23.1") (defvar date) diff --git a/lisp/calendar/cal-iso.el b/lisp/calendar/cal-iso.el index 31626e4c02c..88527cf68cc 100644 --- a/lisp/calendar/cal-iso.el +++ b/lisp/calendar/cal-iso.el @@ -47,9 +47,6 @@ Sunday). The Gregorian date Sunday, December 31, 1 BC is imaginary." (* 7 (1- (calendar-extract-month date))) (if (zerop day) 6 (1- day))))) -(define-obsolete-function-alias 'calendar-absolute-from-iso - 'calendar-iso-to-absolute "23.1") - ;;;###cal-autoload (defun calendar-iso-from-absolute (date) "Compute the `ISO commercial date' corresponding to the absolute DATE. @@ -91,9 +88,6 @@ date Sunday, December 31, 1 BC." (message "ISO date: %s" (calendar-iso-date-string (calendar-cursor-to-date t)))) -(define-obsolete-function-alias 'calendar-print-iso-date - 'calendar-iso-print-date "23.1") - (defun calendar-iso-read-date (&optional dayflag) "Interactively read the arguments for an ISO date command. Reads a year and week, and if DAYFLAG is non-nil a day (otherwise @@ -118,9 +112,6 @@ taken to be 1)." 1))) (list (list week day year)))) -(define-obsolete-function-alias 'calendar-iso-read-args - 'calendar-iso-read-date "23.1") - ;;;###cal-autoload (defun calendar-iso-goto-date (date &optional noecho) "Move cursor to ISO DATE; echo ISO date unless NOECHO is non-nil." @@ -129,9 +120,6 @@ taken to be 1)." (calendar-iso-to-absolute date))) (or noecho (calendar-iso-print-date))) -(define-obsolete-function-alias 'calendar-goto-iso-date - 'calendar-iso-goto-date "23.1") - ;;;###cal-autoload (defun calendar-iso-goto-week (date &optional noecho) "Move cursor to ISO DATE; echo ISO date unless NOECHO is non-nil. @@ -141,9 +129,6 @@ Interactively, goes to the first day of the specified week." (calendar-iso-to-absolute date))) (or noecho (calendar-iso-print-date))) -(define-obsolete-function-alias 'calendar-goto-iso-week - 'calendar-iso-goto-week "23.1") - (defvar date) ;; To be called from diary-list-sexp-entries, where DATE is bound. diff --git a/lisp/calendar/cal-julian.el b/lisp/calendar/cal-julian.el index 2953b1b7a84..481f987b29b 100644 --- a/lisp/calendar/cal-julian.el +++ b/lisp/calendar/cal-julian.el @@ -45,9 +45,6 @@ The Gregorian date Sunday, December 31, 1 BC is imaginary." (/ (1- year) 4) -2))) -(define-obsolete-function-alias 'calendar-absolute-from-julian - 'calendar-julian-to-absolute "23.1") - ;;;###cal-autoload (defun calendar-julian-from-absolute (date) "Compute the Julian (month day year) corresponding to the absolute DATE. @@ -93,9 +90,6 @@ Driven by the variable `calendar-date-display-form'." (message "Julian date: %s" (calendar-julian-date-string (calendar-cursor-to-date t)))) -(define-obsolete-function-alias 'calendar-print-julian-date - 'calendar-julian-print-date "23.1") - ;;;###cal-autoload (defun calendar-julian-goto-date (date &optional noecho) "Move cursor to Julian DATE; echo Julian date unless NOECHO is non-nil." @@ -132,9 +126,6 @@ Driven by the variable `calendar-date-display-form'." (calendar-julian-to-absolute date))) (or noecho (calendar-julian-print-date))) -(define-obsolete-function-alias 'calendar-goto-julian-date - 'calendar-julian-goto-date "23.1") - ;;;###holiday-autoload (defun holiday-julian (month day string) "Holiday on MONTH, DAY (Julian) called STRING. @@ -156,9 +147,6 @@ nil if it is not visible in the current calendar window." "Absolute date of astronomical (Julian) day number D." (- d 1721424.5)) -(define-obsolete-function-alias 'calendar-absolute-from-astro - 'calendar-astro-to-absolute "23.1") - ;;;###cal-autoload (defun calendar-astro-from-absolute (d) "Astronomical (Julian) day number of absolute date D." @@ -181,9 +169,6 @@ Defaults to today's date if DATE is not given." "Astronomical (Julian) day number (at noon UTC): %s.0" (calendar-astro-date-string (calendar-cursor-to-date t)))) -(define-obsolete-function-alias 'calendar-print-astro-day-number - 'calendar-astro-print-day-number "23.1") - ;;;###cal-autoload (defun calendar-astro-goto-day-number (daynumber &optional noecho) "Move cursor to astronomical (Julian) DAYNUMBER. @@ -197,8 +182,6 @@ Echo astronomical (Julian) day number unless NOECHO is non-nil." (calendar-astro-to-absolute daynumber)))) (or noecho (calendar-astro-print-day-number))) -(define-obsolete-function-alias 'calendar-goto-astro-day-number - 'calendar-astro-goto-day-number "23.1") (defvar date) diff --git a/lisp/calendar/cal-mayan.el b/lisp/calendar/cal-mayan.el index 81b71d5b3ad..17a01656220 100644 --- a/lisp/calendar/cal-mayan.el +++ b/lisp/calendar/cal-mayan.el @@ -132,9 +132,6 @@ but some use 1137140. Using 1232041 gives you Spinden's correlation; using (message "Mayan date: %s" (calendar-mayan-date-string (calendar-cursor-to-date t)))) -(define-obsolete-function-alias 'calendar-print-mayan-date - 'calendar-mayan-print-date "23.1") - (defun calendar-mayan-read-haab-date () "Prompt for a Mayan haab date." (let* ((completion-ignore-case t) @@ -179,9 +176,6 @@ Echo Mayan date unless NOECHO is non-nil." (calendar-absolute-from-gregorian (calendar-cursor-to-date)))))) (or noecho (calendar-mayan-print-date))) -(define-obsolete-function-alias 'calendar-next-haab-date - 'calendar-mayan-next-haab-date "23.1") - ;;;###cal-autoload (defun calendar-mayan-previous-haab-date (haab-date &optional noecho) "Move cursor to previous instance of Mayan HAAB-DATE. @@ -194,9 +188,6 @@ Echo Mayan date unless NOECHO is non-nil." (1- (calendar-absolute-from-gregorian (calendar-cursor-to-date)))))) (or noecho (calendar-mayan-print-date))) -(define-obsolete-function-alias 'calendar-previous-haab-date - 'calendar-mayan-previous-haab-date "23.1") - (defun calendar-mayan-haab-to-string (haab) "Convert Mayan HAAB date (a pair) into its traditional written form." (let ((month (cdr haab))) @@ -247,9 +238,6 @@ Echo Mayan date unless NOECHO is non-nil." (calendar-absolute-from-gregorian (calendar-cursor-to-date)))))) (or noecho (calendar-mayan-print-date))) -(define-obsolete-function-alias 'calendar-next-tzolkin-date - 'calendar-mayan-next-tzolkin-date "23.1") - ;;;###cal-autoload (defun calendar-mayan-previous-tzolkin-date (tzolkin-date &optional noecho) "Move cursor to previous instance of Mayan TZOLKIN-DATE. @@ -262,9 +250,6 @@ Echo Mayan date unless NOECHO is non-nil." (1- (calendar-absolute-from-gregorian (calendar-cursor-to-date)))))) (or noecho (calendar-mayan-print-date))) -(define-obsolete-function-alias 'calendar-previous-tzolkin-date - 'calendar-mayan-previous-tzolkin-date "23.1") - (defun calendar-mayan-tzolkin-to-string (tzolkin) "Convert Mayan TZOLKIN date (a pair) into its traditional written form." (format "%d %s" @@ -309,9 +294,6 @@ Echo Mayan date unless NOECHO is non-nil." (calendar-goto-date (calendar-gregorian-from-absolute date)) (or noecho (calendar-mayan-print-date))))) -(define-obsolete-function-alias 'calendar-next-calendar-round-date - 'calendar-mayan-next-round-date "23.1") - ;;;###cal-autoload (defun calendar-mayan-previous-round-date (tzolkin-date haab-date &optional noecho) @@ -330,9 +312,6 @@ Echo Mayan date unless NOECHO is non-nil." (calendar-goto-date (calendar-gregorian-from-absolute date)) (or noecho (calendar-mayan-print-date))))) -(define-obsolete-function-alias 'calendar-previous-calendar-round-date - 'calendar-mayan-previous-round-date "23.1") - (defun calendar-mayan-long-count-to-absolute (c) "Compute the absolute date corresponding to the Mayan Long Count C. Long count is a list (baktun katun tun uinal kin)" @@ -344,9 +323,6 @@ Long count is a list (baktun katun tun uinal kin)" ;; Days before absolute date 0. (- calendar-mayan-days-before-absolute-zero))) -(define-obsolete-function-alias 'calendar-absolute-from-mayan-long-count - 'calendar-mayan-long-count-to-absolute "23.1") - (defun calendar-mayan-long-count-common-era (lc) "Return non-nil if long count LC represents a date in the Common Era." (let ((base (calendar-mayan-long-count-from-absolute 1))) @@ -377,9 +353,6 @@ Echo Mayan date unless NOECHO is non-nil." (calendar-mayan-long-count-to-absolute date))) (or noecho (calendar-mayan-print-date))) -(define-obsolete-function-alias 'calendar-goto-mayan-long-count-date - 'calendar-mayan-goto-long-count-date "23.1") - (defvar date) ;; To be called from diary-list-sexp-entries, where DATE is bound. diff --git a/lisp/calendar/cal-menu.el b/lisp/calendar/cal-menu.el index 23e1b5e0e97..df16646cc26 100644 --- a/lisp/calendar/cal-menu.el +++ b/lisp/calendar/cal-menu.el @@ -278,14 +278,6 @@ is non-nil." ["Show diary" diary-show-all-entries] ["Exit calendar" calendar-exit])) -;; Undocumented and probably useless. -(defvar cal-menu-load-hook nil - "Hook run on loading of the `cal-menu' package.") -(make-obsolete-variable 'cal-menu-load-hook - "it will be removed in future." "23.1") - -(run-hooks 'cal-menu-load-hook) - (provide 'cal-menu) ;; Local Variables: diff --git a/lisp/calendar/cal-move.el b/lisp/calendar/cal-move.el index 5410ff79ff4..a72f188f37e 100644 --- a/lisp/calendar/cal-move.el +++ b/lisp/calendar/cal-move.el @@ -175,9 +175,6 @@ EVENT is an event like `last-nonmenu-event'." (t (list month 1 year)))))) (run-hooks 'calendar-move-hook))) -(define-obsolete-function-alias - 'scroll-calendar-left 'calendar-scroll-left "23.1") - ;;;###cal-autoload (defun calendar-scroll-right (&optional arg event) "Scroll the displayed calendar window right by ARG months. @@ -188,9 +185,6 @@ EVENT is an event like `last-nonmenu-event'." last-nonmenu-event)) (calendar-scroll-left (- (or arg 1)) event)) -(define-obsolete-function-alias - 'scroll-calendar-right 'calendar-scroll-right "23.1") - ;;;###cal-autoload (defun calendar-scroll-left-three-months (arg &optional event) "Scroll the displayed calendar window left by 3*ARG months. @@ -201,9 +195,6 @@ EVENT is an event like `last-nonmenu-event'." last-nonmenu-event)) (calendar-scroll-left (* 3 arg) event)) -(define-obsolete-function-alias 'scroll-calendar-left-three-months - 'calendar-scroll-left-three-months "23.1") - ;; cf scroll-bar-toolkit-scroll ;;;###cal-autoload (defun calendar-scroll-toolkit-scroll (event) @@ -226,9 +217,6 @@ EVENT is an event like `last-nonmenu-event'." last-nonmenu-event)) (calendar-scroll-left (* -3 arg) event)) -(define-obsolete-function-alias 'scroll-calendar-right-three-months - 'calendar-scroll-right-three-months "23.1") - ;;;###cal-autoload (defun calendar-forward-day (arg) "Move the cursor forward ARG days. diff --git a/lisp/calendar/cal-persia.el b/lisp/calendar/cal-persia.el index c79c3f94420..1a69ade82da 100644 --- a/lisp/calendar/cal-persia.el +++ b/lisp/calendar/cal-persia.el @@ -87,9 +87,6 @@ Gregorian date Sunday, December 31, 1 BC." (calendar-persian-last-day-of-month m year)) day)))) ; days so far this month -(define-obsolete-function-alias 'calendar-absolute-from-persian - 'calendar-persian-to-absolute "23.1") - (defun calendar-persian-year-from-absolute (date) "Persian year corresponding to the absolute DATE." (let* ((d0 ; prior days since start of 2820 cycles @@ -163,9 +160,6 @@ Gregorian date Sunday, December 31, 1 BC." (message "Persian date: %s" (calendar-persian-date-string (calendar-cursor-to-date t)))) -(define-obsolete-function-alias 'calendar-print-persian-date - 'calendar-persian-print-date "23.1") - (defun calendar-persian-read-date () "Interactively read the arguments for a Persian date command. Reads a year, month, and day." @@ -192,9 +186,6 @@ Reads a year, month, and day." (lambda (x) (and (< 0 x) (<= x last)))))) (list (list month day year)))) -(define-obsolete-function-alias 'persian-prompt-for-date - 'calendar-persian-read-date "23.1") - ;;;###cal-autoload (defun calendar-persian-goto-date (date &optional noecho) "Move cursor to Persian date DATE. @@ -204,8 +195,6 @@ Echo Persian date unless NOECHO is non-nil." (calendar-persian-to-absolute date))) (or noecho (calendar-persian-print-date))) -(define-obsolete-function-alias 'calendar-goto-persian-date - 'calendar-persian-goto-date "23.1") (defvar date) diff --git a/lisp/calendar/cal-x.el b/lisp/calendar/cal-x.el index 6c03a774d0a..1ed2fa4bbb0 100644 --- a/lisp/calendar/cal-x.el +++ b/lisp/calendar/cal-x.el @@ -65,9 +65,6 @@ Relevant if `calendar-setup' has the value `one-frame'." (vertical-scroll-bars boolean)) :group 'calendar) -(define-obsolete-variable-alias 'calendar-after-frame-setup-hooks - 'calendar-after-frame-setup-hook "23.1") - (defcustom calendar-after-frame-setup-hook nil "List of functions to be run after creating a calendar and/or diary frame." :type 'hook @@ -96,13 +93,9 @@ Runs `calendar-after-frame-setup-hook', selects frame, iconifies if needed." "Display and dedicate the window associated with the diary buffer." (set-window-dedicated-p (display-buffer - (if (if (listp diary-display-function) - (or (memq 'diary-fancy-display diary-display-function) - (memq 'fancy-diary-display diary-display-function)) - (memq diary-display-function '(diary-fancy-display - fancy-diary-display))) + (if (eq diary-display-function 'diary-fancy-display) (progn - ;; If there are no diary entries, there won't be a fancy-diary + ;; If there are no diary entries, there won't be a buffer ;; to dedicate, so make a basic one. (or (get-buffer diary-fancy-buffer) (calendar-in-read-only-buffer diary-fancy-buffer @@ -150,36 +143,6 @@ If PROMPT is non-nil, prompt for the month and year to use." (if (eq config 'one-frame) (calendar-dedicate-diary)))))) - -;;;###cal-autoload -(defun calendar-one-frame-setup (&optional prompt) - "Display calendar and diary in a single dedicated frame. -See `calendar-frame-setup' for more information." - (declare (obsolete calendar-frame-setup "23.1")) - (calendar-frame-setup 'one-frame prompt)) - -;;;###cal-autoload -(defun calendar-only-one-frame-setup (&optional prompt) - "Display calendar in a dedicated frame. -See `calendar-frame-setup' for more information." - (declare (obsolete calendar-frame-setup "23.1")) - (calendar-frame-setup 'calendar-only prompt)) - -;;;###cal-autoload -(defun calendar-two-frame-setup (&optional prompt) - "Display calendar and diary in separate, dedicated frames. -See `calendar-frame-setup' for more information." - (declare (obsolete calendar-frame-setup "23.1")) - (calendar-frame-setup 'two-frames prompt)) - -;; Undocumented and probably useless. -(defvar cal-x-load-hook nil - "Hook run on loading of the `cal-x' package.") -(make-obsolete-variable 'cal-x-load-hook "it will be removed in future." "23.1") - -(run-hooks 'cal-x-load-hook) - - (provide 'cal-x) ;;; cal-x.el ends here diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el index 7579f07cb2d..b4df4b31176 100644 --- a/lisp/calendar/calendar.el +++ b/lisp/calendar/calendar.el @@ -189,9 +189,6 @@ movement commands will not work correctly." (calendar-redraw)) :group 'calendar) -(define-obsolete-variable-alias 'view-diary-entries-initially - 'calendar-view-diary-initially-flag "23.1") - (defcustom calendar-view-diary-initially-flag nil "Non-nil means display current date's diary entries on entry to calendar. The diary is displayed in another window when the calendar is first displayed, @@ -201,9 +198,6 @@ be overridden by the value of `calendar-setup'." :type 'boolean :group 'diary) -(define-obsolete-variable-alias 'mark-diary-entries-in-calendar - 'calendar-mark-diary-entries-flag "23.1") - ;; FIXME :set (defcustom calendar-mark-diary-entries-flag nil "Non-nil means mark dates with diary entries, in the calendar window. @@ -225,8 +219,6 @@ If nil, make an icon of the frame. If non-nil, delete the frame." See the variable `calendar-today-marker'." :group 'calendar-faces) -(define-obsolete-face-alias 'calendar-today-face 'calendar-today "22.1") - (defface diary '((((min-colors 88) (class color) (background light)) :foreground "red1") @@ -243,8 +235,6 @@ Used to mark diary entries in the calendar (see `diary-entry-marker'), and to highlight the date header in the fancy diary." :group 'calendar-faces) -(define-obsolete-face-alias 'diary-face 'diary "22.1") - (defface holiday '((((class color) (background light)) :background "pink") @@ -256,8 +246,6 @@ and to highlight the date header in the fancy diary." See `calendar-holiday-marker'." :group 'calendar-faces) -(define-obsolete-face-alias 'holiday-face 'holiday "22.1") - (defface calendar-weekday-header '((t :inherit font-lock-constant-face)) "Face used for weekday column headers in the calendar. See also the face `calendar-weekend-header'." @@ -307,9 +295,6 @@ The value can be either a single-character string (e.g. \"*\") or a face." :group 'holidays :version "23.1") -(define-obsolete-variable-alias 'view-calendar-holidays-initially - 'calendar-view-holidays-initially-flag "23.1") - (defcustom calendar-view-holidays-initially-flag nil "Non-nil means display holidays for current three month period on entry. The holidays are displayed in another window when the calendar is first @@ -317,9 +302,6 @@ displayed." :type 'boolean :group 'holidays) -(define-obsolete-variable-alias 'mark-holidays-in-calendar - 'calendar-mark-holidays-flag "23.1") - ;; FIXME :set (defcustom calendar-mark-holidays-flag nil "Non-nil means mark dates of holidays in the calendar window. @@ -338,9 +320,6 @@ This is the place to add key bindings to `calendar-mode-map'." :type 'hook :group 'calendar-hooks) -(define-obsolete-variable-alias 'initial-calendar-window-hook - 'calendar-initial-window-hook "23.1") - (defcustom calendar-initial-window-hook nil "List of functions to be called when the calendar window is created. Quitting the calendar and re-entering it will cause these functions @@ -348,9 +327,6 @@ to be called again." :type 'hook :group 'calendar-hooks) -(define-obsolete-variable-alias 'today-visible-calendar-hook - 'calendar-today-visible-hook "23.1") - (defcustom calendar-today-visible-hook nil "List of functions called whenever the current date is visible. To mark today's date, add the function `calendar-mark-today'. @@ -363,9 +339,6 @@ since it may cause the movement commands to fail." :options '(calendar-mark-today calendar-star-date) :group 'calendar-hooks) -(define-obsolete-variable-alias 'today-invisible-calendar-hook - 'calendar-today-invisible-hook "23.1") - (defcustom calendar-today-invisible-hook nil "List of functions called whenever the current date is not visible. See also `calendar-today-visible-hook'." @@ -692,56 +665,24 @@ details, see the documentation for the variable `diary-list-entries-hook'." "Symbol indicating a diary entry according to the Chinese calendar." :type 'string :group 'diary - :version "24.5") - -(define-obsolete-variable-alias 'hebrew-diary-entry-symbol - 'diary-hebrew-entry-symbol "23.1") + :version "25.1") (defcustom diary-hebrew-entry-symbol "H" "Symbol indicating a diary entry according to the Hebrew calendar." :type 'string :group 'diary) -(define-obsolete-variable-alias 'islamic-diary-entry-symbol - 'diary-islamic-entry-symbol "23.1") - (defcustom diary-islamic-entry-symbol "I" "Symbol indicating a diary entry according to the Islamic calendar." :type 'string :group 'diary) -(define-obsolete-variable-alias 'bahai-diary-entry-symbol - 'diary-bahai-entry-symbol "23.1") - (defcustom diary-bahai-entry-symbol "B" "Symbol indicating a diary entry according to the Bahá'à calendar." :type 'string :group 'diary) -(defcustom european-calendar-style nil - "Non-nil means use the European style of dates in the diary and display. -In this case, a date like 1/2/1990 would be interpreted as -February 1, 1990. See `diary-european-date-forms' for the -default European diary date styles. - -Setting this variable directly does not take effect (if the -calendar package is already loaded). Rather, use either -\\[customize] or the function `calendar-set-date-style'." - :type 'boolean - ;; Without :initialize (require 'calendar) throws an error because - ;; calendar-set-date-style is undefined at this point. - :initialize 'custom-initialize-default - :set (lambda (symbol value) - (if value - (calendar-set-date-style 'european) - (calendar-set-date-style 'american))) - :group 'calendar) - -(make-obsolete-variable 'european-calendar-style 'calendar-date-style "23.1") - -;; If this is autoloaded, c-d-s gets set before any customization of e-c-s. -(defcustom calendar-date-style (if european-calendar-style 'european - 'american) +(defcustom calendar-date-style 'american "Your preferred style for writing dates. The options are: `american' - month/day/year @@ -790,9 +731,6 @@ but `diary-date-forms' (which see)." (choice symbol regexp))))) :group 'diary) -(define-obsolete-variable-alias 'american-date-diary-pattern - 'diary-american-date-forms "23.1") - (defcustom diary-american-date-forms '((month "/" day "[^/0-9]") (month "/" day "/" year "[^0-9]") @@ -814,9 +752,6 @@ but `diary-date-forms' (which see)." (choice symbol regexp))))) :group 'diary) -(define-obsolete-variable-alias 'european-date-diary-pattern - 'diary-european-date-forms "23.1") - (defcustom diary-european-date-forms '((day "/" month "[^/0-9]") (day "/" month "/" year "[^0-9]") @@ -906,9 +841,6 @@ Normally you should not customize this, but `calendar-date-display-form' :version "23.1" :group 'calendar) -(define-obsolete-variable-alias 'european-calendar-display-form - 'calendar-european-date-display-form "23.1") - (defcustom calendar-european-date-display-form '((if dayname (concat dayname ", ")) day " " monthname " " year) "Pseudo-pattern governing the way a date appears in the European style. @@ -917,9 +849,6 @@ Normally you should not customize this, but `calendar-date-display-form' :type 'sexp :group 'calendar) -(define-obsolete-variable-alias 'american-calendar-display-form - 'calendar-american-date-display-form "23.1") - (defcustom calendar-american-date-display-form '((if dayname (concat dayname ", ")) monthname " " day ", " year) "Pseudo-pattern governing the way a date appears in the American style. @@ -1034,21 +963,6 @@ The valid styles are described in the documentation of `calendar-date-style'." (calendar-redraw) (calendar-update-mode-line)) -(defun european-calendar () - "Set the interpretation and display of dates to the European style." - (declare (obsolete calendar-set-date-style "23.1")) - (interactive) - (calendar-set-date-style 'european)) - -(defun american-calendar () - "Set the interpretation and display of dates to the American style." - (declare (obsolete calendar-set-date-style "23.1")) - (interactive) - (calendar-set-date-style 'american)) - -(define-obsolete-variable-alias 'holidays-in-diary-buffer - 'diary-show-holidays-flag "23.1") - (defcustom diary-show-holidays-flag t "Non-nil means include holidays in the diary display. The holidays appear in the mode line of the diary buffer, or in the @@ -1062,9 +976,6 @@ somewhat; setting it to nil makes the diary display faster." :type 'boolean :group 'calendar) -(define-obsolete-variable-alias 'all-hebrew-calendar-holidays - 'calendar-hebrew-all-holidays-flag "23.1") - (defcustom calendar-hebrew-all-holidays-flag nil "If nil, show only major holidays from the Hebrew calendar. This means only those Jewish holidays that appear on secular calendars. @@ -1073,9 +984,6 @@ calendar." :type 'boolean :group 'holidays) -(define-obsolete-variable-alias 'all-christian-calendar-holidays - 'calendar-christian-all-holidays-flag "23.1") - (defcustom calendar-christian-all-holidays-flag nil "If nil, show only major holidays from the Christian calendar. This means only those Christian holidays that appear on secular calendars. @@ -1084,9 +992,6 @@ calendar." :type 'boolean :group 'holidays) -(define-obsolete-variable-alias 'all-islamic-calendar-holidays - 'calendar-islamic-all-holidays-flag "23.1") - (defcustom calendar-islamic-all-holidays-flag nil "If nil, show only major holidays from the Islamic calendar. This means only those Islamic holidays that appear on secular calendars. @@ -1095,9 +1000,6 @@ calendar." :type 'boolean :group 'holidays) -(define-obsolete-variable-alias 'all-bahai-calendar-holidays - 'calendar-bahai-all-holidays-flag "23.1") - (defcustom calendar-bahai-all-holidays-flag nil "If nil, show only major holidays from the Bahá'à calendar. These are the days on which work and school must be suspended. @@ -1128,8 +1030,6 @@ calendar." (defconst diary-fancy-buffer "*Fancy Diary Entries*" "Name of the buffer used for the optional fancy display of the diary.") -(define-obsolete-variable-alias 'fancy-diary-buffer 'diary-fancy-buffer "23.1") - (defconst calendar-other-calendars-buffer "*Other Calendars*" "Name of the buffer used for the display of date on other calendars.") @@ -1162,9 +1062,6 @@ Optional NMONTHS is the number of months per year (default 12)." (and (< macro-y 0) (> ,mon 1) (setq ,yr (1- ,yr))) (if (< ,yr 1) (setq ,yr (1- ,yr))))) ; 0 AD -> -1 BC, etc -(define-obsolete-function-alias 'increment-calendar-month - 'calendar-increment-month "23.1") - (defvar displayed-month) (defvar displayed-year) @@ -1177,17 +1074,6 @@ MON defaults to `displayed-month'. YR defaults to `displayed-year'." (calendar-increment-month mon yr n) (cons mon yr)) -(defmacro calendar-for-loop (var from init to final do &rest body) - "Execute a for loop. -Evaluate BODY with VAR bound to successive integers from INIT to FINAL, -inclusive. The standard macro `dotimes' is preferable in most cases." - (declare (obsolete "use `dotimes' or `while' instead." "23.1") - (debug (symbolp "from" form "to" form "do" body)) - (indent defun)) - `(let ((,var (1- ,init))) - (while (>= ,final (setq ,var (1+ ,var))) - ,@body))) - (defmacro calendar-sum (index initial condition expression) "For INDEX = INITIAL, +1, ... (as long as CONDITION holds), sum EXPRESSION." (declare (debug (symbolp form form form))) @@ -1247,25 +1133,16 @@ with disabled undo. Leaves point at point-min, displays BUFFER." "Extract the month part of DATE which has the form (month day year)." (car date)) -(define-obsolete-function-alias 'extract-calendar-month - 'calendar-extract-month "23.1") - ;; Note gives wrong answer for result of (calendar-read-date 'noday), ;; but that is only used by `calendar-other-month'. (defsubst calendar-extract-day (date) "Extract the day part of DATE which has the form (month day year)." (cadr date)) -(define-obsolete-function-alias 'extract-calendar-day - 'calendar-extract-day "23.1") - (defsubst calendar-extract-year (date) "Extract the year part of DATE which has the form (month day year)." (nth 2 date)) -(define-obsolete-function-alias 'extract-calendar-year - 'calendar-extract-year "23.1") - (defsubst calendar-leap-year-p (year) "Return t if YEAR is a Gregorian leap year. A negative year is interpreted as BC; -1 being 1 BC, and so on." @@ -1443,9 +1320,14 @@ display the generated calendar." (calendar-generate-window month year) (if (and calendar-view-diary-initially-flag (calendar-date-is-visible-p date)) - (diary-view-entries)))) + ;; Do not clobber the calendar with the diary, if the diary + ;; has previously been shown in the window that now shows the + ;; calendar (bug#18381). + (let ((display-buffer-overriding-action + '(nil . ((inhibit-same-window . t))))) + (diary-view-entries))))) (if calendar-view-holidays-initially-flag - (let* ((diary-buffer (get-file-buffer diary-file)) + (let* ((diary-buffer (diary-live-p)) (diary-window (if diary-buffer (get-buffer-window diary-buffer))) (split-height-threshold (if diary-window 2 1000))) ;; FIXME display buffer? @@ -1799,14 +1681,18 @@ is COMMAND's keybinding, STRING describes the binding." nil "today")) '(calendar-date-string (calendar-current-date) t) (calendar-mode-line-entry 'calendar-scroll-left "next month" ">")) - "The mode line of the calendar buffer. + "If non-nil, the mode line of the calendar buffer. This is a list of items that evaluate to strings. The elements are evaluated and concatenated, evenly separated by blanks. During evaluation, the variable `date' is available as the date nearest the cursor (or today's date if that fails). To update -the mode-line as the cursor moves, add `calendar-update-mode-line' -to `calendar-move-hook'. Here is an example that has the Hebrew date, -the day number/days remaining in the year, and the ISO week/year numbers: +the mode-line as the cursor moves, add +`calendar-update-mode-line' to `calendar-move-hook'. + +If nil, do not modify the mode line at all. + +Here is an example that has the Hebrew date, the day number/days +remaining in the year, and the ISO week/year numbers: (list \"\" @@ -1884,7 +1770,8 @@ the STRINGS are just concatenated and the result truncated." (defun calendar-update-mode-line () "Update the calendar mode line with the current date and date style." - (if (bufferp (get-buffer calendar-buffer)) + (if (and calendar-mode-line-format + (bufferp (get-buffer calendar-buffer))) (with-current-buffer calendar-buffer (let ((start (- calendar-left-margin 2)) (date (condition-case nil @@ -1932,8 +1819,6 @@ the STRINGS are just concatenated and the result truncated." (dolist (b calendar-buffers) (quit-windows-on b kill)))))) -(define-obsolete-function-alias 'exit-calendar 'calendar-exit "23.1") - (defun calendar-current-date (&optional offset) "Return the current date in a list (month day year). Optional integer OFFSET is a number of days from the current date." @@ -2486,9 +2371,6 @@ Returns the corresponding Gregorian date." ;; Note there are side effects on calendar navigation. (<= 1 year)))) -(define-obsolete-function-alias 'calendar-date-is-legal-p - 'calendar-date-is-valid-p "23.1") - (defun calendar-date-equal (date1 date2) "Return t if the DATE1 and DATE2 are the same." (and @@ -2561,9 +2443,6 @@ MARK defaults to `diary-entry-marker'." (make-overlay (1- (point)) (1+ (point))) 'face (calendar-make-temp-face mark)))))))) -(define-obsolete-function-alias 'mark-visible-calendar-date - 'calendar-mark-visible-date "23.1") - (defun calendar-star-date () "Replace the date under the cursor in the calendar window with asterisks. You might want to add this function to `calendar-today-visible-hook'." @@ -2738,8 +2617,6 @@ If called by a mouse-event, pops up a menu with the result." "---") (calendar-string-spread (list str) ?- width))))) -(define-obsolete-function-alias 'calendar-version 'emacs-version "23.1") - (run-hooks 'calendar-load-hook) (provide 'calendar) diff --git a/lisp/calendar/diary-lib.el b/lisp/calendar/diary-lib.el index a4e36d9abe8..39ba6f4617e 100644 --- a/lisp/calendar/diary-lib.el +++ b/lisp/calendar/diary-lib.el @@ -1,7 +1,6 @@ ;;; diary-lib.el --- diary functions -;; Copyright (C) 1989-1990, 1992-1995, 2001-2014 Free Software -;; Foundation, Inc. +;; Copyright (C) 1989-1990, 1992-1995, 2001-2014 Free Software Foundation, Inc. ;; Author: Edward M. Reingold <reingold@cs.uiuc.edu> ;; Maintainer: Glenn Morris <rgm@gnu.org> @@ -49,13 +48,6 @@ are holidays." :type 'boolean :group 'diary) -(defcustom diary-face 'diary - "Face name to use for diary entries." - :type 'face - :group 'calendar-faces) -(make-obsolete-variable 'diary-face "customize the face `diary' instead." - "23.1") - (defface diary-anniversary '((t :inherit font-lock-keyword-face)) "Face used for anniversaries in the fancy diary display." :version "22.1" @@ -72,8 +64,6 @@ are holidays." :version "22.1" :group 'calendar-faces) -(define-obsolete-face-alias 'diary-button-face 'diary-button "22.1") - ;; Face markup of calendar and diary displays: Any entry line that ;; ends with [foo:value] where foo is a face attribute (except :box ;; :stipple) or with [face:blah] tags, will have these values applied @@ -133,9 +123,6 @@ are: `string', `symbol', `int', `tnil', `stringtnil.'" :type 'function :group 'diary) -(define-obsolete-variable-alias 'sexp-diary-entry-symbol - 'diary-sexp-entry-symbol "23.1") - (defcustom diary-sexp-entry-symbol "%%" "The string used to indicate a sexp diary entry in `diary-file'. See the documentation for the function `diary-list-sexp-entries'." @@ -168,18 +155,10 @@ Used for example by the appointment package - see `appt-activate'." :type 'hook :group 'diary) -(define-obsolete-variable-alias 'diary-display-hook 'diary-display-function - "23.1") - (defcustom diary-display-function 'diary-fancy-display "Function used to display the diary. The two standard options are `diary-fancy-display' and `diary-simple-display'. -For historical reasons, `nil' is the same as `diary-simple-display' -\(so you must use `ignore' for no display). Also for historical -reasons, this variable can be a list of functions to run. These -uses are not recommended and may be removed at some point. - When this function is called, the variable `diary-entries-list' is a list, in order by date, of all relevant diary entries in the form of ((MONTH DAY YEAR) STRING), where string is the diary @@ -188,17 +167,13 @@ produce a different buffer for display (perhaps combined with holidays), or hard copy output." :type '(choice (const diary-fancy-display :tag "Fancy display") (const diary-simple-display :tag "Basic display") - (const ignore :tag "No display") - (const nil :tag "Obsolete way to choose basic display") - (hook :tag "Obsolete form with list of display functions")) + (const :tag "No display" ignore) + (function :tag "User-specified function")) :initialize 'custom-initialize-default :set 'diary-set-maybe-redraw :version "23.2" ; simple->fancy :group 'diary) -(define-obsolete-variable-alias 'list-diary-entries-hook - 'diary-list-entries-hook "23.1") - (defcustom diary-list-entries-hook nil "Hook run after diary file is culled for relevant entries. @@ -227,9 +202,6 @@ the main file and all included files, you would use the nongregorian hook." :options '(diary-include-other-diary-files diary-sort-entries) :group 'diary) -(define-obsolete-variable-alias 'mark-diary-entries-hook - 'diary-mark-entries-hook "23.1") - (defcustom diary-mark-entries-hook nil "List of functions called after marking diary entries in the calendar. You might wish to add `diary-mark-included-diary-files', in which case @@ -244,9 +216,6 @@ differ only if you are using included diary files. In that case, :options '(diary-mark-included-diary-files) :group 'diary) -(define-obsolete-variable-alias 'nongregorian-diary-listing-hook - 'diary-nongregorian-listing-hook "23.1") - (defcustom diary-nongregorian-listing-hook nil "List of functions called for listing diary file and included files. As the files are processed for diary entries, these functions are used @@ -264,9 +233,6 @@ use `diary-list-entries-hook', which runs only for the main diary file." diary-islamic-list-entries) :group 'diary) -(define-obsolete-variable-alias 'nongregorian-diary-marking-hook - 'diary-nongregorian-marking-hook "23.1") - (defcustom diary-nongregorian-marking-hook nil "List of functions called for marking diary file and included files. As the files are processed for diary entries, these functions are used @@ -284,9 +250,6 @@ use `diary-mark-entries-hook', which runs only for the main diary file." diary-islamic-mark-entries) :group 'diary) -(define-obsolete-variable-alias 'print-diary-entries-hook - 'diary-print-entries-hook "23.1") - (defcustom diary-print-entries-hook 'lpr-buffer "Run by `diary-print-entries' after preparing a temporary diary buffer. The buffer shows only the diary entries currently visible in the @@ -334,9 +297,6 @@ expressions that can involve the keywords `days' (a number), `date' :type 'sexp :group 'diary) -(define-obsolete-variable-alias 'abbreviated-calendar-year - 'diary-abbreviated-year-flag "23.1") - (defcustom diary-abbreviated-year-flag t "Interpret a two-digit year DD in a diary entry as either 19DD or 20DD. This applies to the Gregorian, Hebrew, Islamic, and Bahá'à calendars. @@ -468,7 +428,8 @@ Only used if `diary-header-line-flag' is non-nil." ;; just visiting the diary-file. This is i) unlikely, and ii) no great loss. ;;;###cal-autoload (defun diary-live-p () - "Return non-nil if the diary is being displayed." + "Return non-nil if the diary is being displayed. +The actual return value is a diary buffer." (or (get-buffer diary-fancy-buffer) (and diary-file (find-buffer-visiting diary-file)))) @@ -484,9 +445,6 @@ just visiting the `diary-file'), and SYMBOL's value is to be changed." ;; Note this assumes diary was called without prefix arg. (diary)))) -(define-obsolete-variable-alias 'number-of-diary-entries - 'diary-number-of-entries "23.1") - (defcustom diary-number-of-entries 1 "Specifies how many days of diary entries are to be displayed initially. This variable affects the diary display when the command \\[diary] is @@ -562,10 +520,6 @@ DFILE specifies the file to use as the diary file." (let ((diary-file dfile)) (diary-view-entries arg))) -;;;###cal-autoload -(define-obsolete-function-alias 'view-other-diary-entries - 'diary-view-other-diary-entries "23.1") - (defvar diary-syntax-table (let ((st (copy-syntax-table (standard-syntax-table)))) (modify-syntax-entry ?* "w" st) @@ -684,8 +638,6 @@ Also removes the region between `diary-comment-start' and (list marker dfile literal) globcolor))))))) -(define-obsolete-function-alias 'add-to-diary-list 'diary-add-to-list "23.1") - (defun diary-list-entries-2 (date mark globattr list-only &optional months symbol gdate) "Internal subroutine of `diary-list-entries'. @@ -901,12 +853,15 @@ LIST-ONLY is non-nil, in which case it just returns the list." ;;; (diary-include-other-diary-files) ; recurse ;;; (run-hooks 'diary-list-entries-hook)) (unless list-only - (if (and diary-display-function - (listp diary-display-function)) - ;; Backwards compatibility. - (run-hooks 'diary-display-function) - (funcall (or diary-display-function - 'diary-simple-display)))) + ;; Avoid M-x diary; M-x calendar; M-x diary + ;; clobbering the calendar window. + ;; FIXME this is not the right solution. + (let ((display-buffer-fallback-action + (list (delq + 'display-buffer-in-previous-window + (copy-sequence + (car display-buffer-fallback-action)))))) + (funcall diary-display-function))) (run-hooks 'diary-hook))))) (and temp-buff (buffer-name temp-buff) (kill-buffer temp-buff))) (or d-incp (message "Preparing diary...done")) @@ -967,9 +922,6 @@ For details, see `diary-include-files'. See also `diary-mark-included-diary-files'." (diary-include-files)) -(define-obsolete-function-alias 'include-other-diary-files - 'diary-include-other-diary-files "23.1") - (defvar date-string) ; bound in diary-list-entries (defun diary-display-no-entries () @@ -1028,9 +980,6 @@ in the mode line. This is an option for `diary-display-function'." (set-window-point window diary-saved-point) (set-window-start window (point-min))))))) -(define-obsolete-function-alias 'simple-diary-display - 'diary-simple-display "23.1") - (defvar diary-goto-entry-function 'diary-goto-entry "Function called to jump to a diary entry. Modes that require special handling of the included file @@ -1157,9 +1106,6 @@ This is an option for `diary-display-function'." (diary-fancy-display-mode)) (calendar-set-mode-line date-string)))) -(define-obsolete-function-alias 'fancy-diary-display - 'diary-fancy-display "23.1") - ;; FIXME modernize? (defun diary-print-entries () "Print a hard copy of the diary display. @@ -1204,9 +1150,6 @@ the actual printing." (run-hooks 'diary-print-entries-hook) (kill-buffer temp-buffer)))) -(define-obsolete-function-alias 'print-diary-entries - 'diary-print-entries "23.1") - ;;;###cal-autoload (defun diary-show-all-entries () "Show all of the diary entries in the diary file. @@ -1454,9 +1397,6 @@ marks. This is intended to deal with deleted diary entries." (and temp-buff (buffer-name temp-buff) (kill-buffer temp-buff))) (or d-incp (message "Marking diary entries...done")))) -;;;###cal-autoload -(define-obsolete-function-alias 'mark-diary-entries 'diary-mark-entries "23.1") - (defun diary-sexp-entry (sexp entry date) "Process a SEXP diary ENTRY for DATE." (let ((result (if calendar-debug-sexp @@ -1534,9 +1474,6 @@ is marked. See the documentation for the function `diary-list-sexp-entries'." (or (cadr (diary-pull-attrs entry file-glob-attrs)) (if (consp mark) (car mark))))))))) -(define-obsolete-function-alias 'mark-sexp-diary-entries - 'diary-mark-sexp-entries "23.1") - (defun diary-mark-included-diary-files () "Mark diary entries from included diary files. To use, add this function to `diary-mark-entries-hook'. @@ -1544,9 +1481,6 @@ For details, see `diary-include-files'. See also `diary-include-other-diary-files'." (diary-include-files t)) -(define-obsolete-function-alias 'mark-included-diary-files - 'diary-mark-included-diary-files "23.1") - (defun calendar-mark-days-named (dayname &optional color) "Mark all dates in the calendar window that are day DAYNAME of the week. 0 means all Sundays, 1 means all Mondays, and so on. @@ -1569,9 +1503,6 @@ Optional argument COLOR is passed to `calendar-mark-visible-date' as MARK." color) (setq day (+ day 7)))))) -(define-obsolete-function-alias 'mark-calendar-days-named - 'calendar-mark-days-named "23.1") - (defun calendar-mark-month (month year p-month p-day p-year &optional color) "Mark dates in the MONTH/YEAR that conform to pattern P-MONTH/P-DAY/P-YEAR. A value of 0 in any position of the pattern is a wildcard. @@ -1585,9 +1516,6 @@ Optional argument COLOR is passed to `calendar-mark-visible-date' as MARK." (calendar-mark-visible-date (list month (1+ i) year) color)) (calendar-mark-visible-date (list month p-day year) color)))) -(define-obsolete-function-alias 'mark-calendar-month - 'calendar-mark-month "23.1") - (defun calendar-mark-date-pattern (month day year &optional color) "Mark all dates in the calendar window that conform to MONTH/DAY/YEAR. A value of 0 in any position is a wildcard. Optional argument COLOR is @@ -1600,9 +1528,6 @@ passed to `calendar-mark-visible-date' as MARK." (calendar-mark-month m y month day year color) (calendar-increment-month m y 1))))) -(define-obsolete-function-alias 'mark-calendar-date-pattern - 'calendar-mark-date-pattern "23.1") - ;; Bahai, Hebrew, Islamic. (defun calendar-mark-complex (month day year fromabs &optional color) "Mark dates in the calendar conforming to MONTH DAY YEAR of some system. @@ -1709,8 +1634,6 @@ be the last item in the hook, in case earlier items add diary entries, or change the order." (setq diary-entries-list (sort diary-entries-list 'diary-entry-compare))) -(define-obsolete-function-alias 'sort-diary-entries 'diary-sort-entries "23.1") - (defun diary-list-sexp-entries (date) "Add sexp entries for DATE from the diary file to `diary-entries-list'. @@ -1869,9 +1792,6 @@ best if they are non-marking." (setq entry-found (or entry-found diary-entry))) entry-found)) -(define-obsolete-function-alias 'list-sexp-diary-entries - 'diary-list-sexp-entries "23.1") - (defun diary-make-date (a b c) "Convert A B C into the internal calendar date form. The expected order of the inputs depends on `calendar-date-style', @@ -2133,9 +2053,6 @@ If omitted, NONMARKING defaults to nil and FILE defaults to string " ")) ;;;###cal-autoload -(define-obsolete-function-alias 'make-diary-entry 'diary-make-entry "23.1") - -;;;###cal-autoload (defun diary-insert-entry (arg &optional event) "Insert a diary entry for the date indicated by point. Prefix argument ARG makes the entry nonmarking." @@ -2145,9 +2062,6 @@ Prefix argument ARG makes the entry nonmarking." arg)) ;;;###cal-autoload -(define-obsolete-function-alias 'insert-diary-entry 'diary-insert-entry "23.1") - -;;;###cal-autoload (defun diary-insert-weekly-entry (arg) "Insert a weekly diary entry for the day of the week indicated by point. Prefix argument ARG makes the entry nonmarking." @@ -2155,10 +2069,6 @@ Prefix argument ARG makes the entry nonmarking." (diary-make-entry (calendar-day-name (calendar-cursor-to-date t)) arg)) -;;;###cal-autoload -(define-obsolete-function-alias 'insert-weekly-diary-entry - 'diary-insert-weekly-entry "23.1") - (defun diary-date-display-form (&optional type) "Return value for `calendar-date-display-form' using `calendar-date-style'. Optional symbol TYPE is either `monthly' or `yearly'." @@ -2214,10 +2124,6 @@ Prefix argument ARG makes the entry nonmarking." (diary-insert-entry-1 'monthly arg)) ;;;###cal-autoload -(define-obsolete-function-alias 'insert-monthly-diary-entry - 'diary-insert-monthly-entry "23.1") - -;;;###cal-autoload (defun diary-insert-yearly-entry (arg) "Insert an annual diary entry for the day of the year indicated by point. Prefix argument ARG makes the entry nonmarking." @@ -2225,10 +2131,6 @@ Prefix argument ARG makes the entry nonmarking." (diary-insert-entry-1 'yearly arg)) ;;;###cal-autoload -(define-obsolete-function-alias 'insert-yearly-diary-entry - 'diary-insert-yearly-entry "23.1") - -;;;###cal-autoload (defun diary-insert-anniversary-entry (arg) "Insert an anniversary diary entry for the date given by point. Prefix argument ARG makes the entry nonmarking." @@ -2241,10 +2143,6 @@ Prefix argument ARG makes the entry nonmarking." arg))) ;;;###cal-autoload -(define-obsolete-function-alias 'insert-anniversary-diary-entry - 'diary-insert-anniversary-entry "23.1") - -;;;###cal-autoload (defun diary-insert-block-entry (arg) "Insert a block diary entry for the days between the point and marked date. Prefix argument ARG makes the entry nonmarking." @@ -2268,10 +2166,6 @@ Prefix argument ARG makes the entry nonmarking." arg))) ;;;###cal-autoload -(define-obsolete-function-alias 'insert-block-diary-entry - 'diary-insert-block-entry "23.1") - -;;;###cal-autoload (defun diary-insert-cyclic-entry (arg) "Insert a cyclic diary entry starting at the date given by point. Prefix argument ARG makes the entry nonmarking." @@ -2285,10 +2179,6 @@ Prefix argument ARG makes the entry nonmarking." (calendar-date-string (calendar-cursor-to-date t) nil t)) arg))) -;;;###cal-autoload -(define-obsolete-function-alias 'insert-cyclic-diary-entry - 'diary-insert-cyclic-entry "23.1") - ;;; Diary mode. (defun diary-redraw-calendar () @@ -2349,7 +2239,7 @@ full month names." (if (equal (car x) 'backup) (concat "\\)" (eval (car (reverse x)))) "\\)")) - '(1 diary-face))) + '(1 'diary))) diary-date-forms))) (defmacro diary-font-lock-keywords-1 (markfunc listfunc feature months symbol) @@ -2486,11 +2376,8 @@ This depends on the calendar date style." (put-text-property (match-beginning 0) (match-end 0) 'font-lock-multiline t) t)) -(define-obsolete-variable-alias 'fancy-diary-font-lock-keywords - 'diary-fancy-font-lock-keywords "23.1") - (defvar diary-fancy-font-lock-keywords - `((diary-fancy-date-matcher . diary-face) + `((diary-fancy-date-matcher . 'diary) ("^.*\\([aA]nniversary\\|[bB]irthday\\).*$" . 'diary-anniversary) ("^.*Yahrzeit.*$" . font-lock-constant-face) ("^\\(Erev \\)?Rosh Hodesh.*" . font-lock-function-name-face) @@ -2537,9 +2424,6 @@ Fontify the region between BEG and END, quietly unless VERBOSE is non-nil." (list (cons t diary-fancy-overriding-map))) (view-mode 1)) -(define-obsolete-function-alias 'fancy-diary-display-mode - 'diary-fancy-display-mode "23.1") - ;; Following code from Dave Love <fx@gnu.org>. ;; Import Outlook-format appointments from mail messages in Gnus or ;; Rmail using command `diary-from-outlook'. This, or the specialized diff --git a/lisp/calendar/holidays.el b/lisp/calendar/holidays.el index 488f8cda8f6..d36764a74ce 100644 --- a/lisp/calendar/holidays.el +++ b/lisp/calendar/holidays.el @@ -1,7 +1,7 @@ ;;; holidays.el --- holiday functions for the calendar package -;; Copyright (C) 1989-1990, 1992-1994, 1997, 2001-2014 Free Software -;; Foundation, Inc. +;; Copyright (C) 1989-1990, 1992-1994, 1997, 2001-2014 +;; Free Software Foundation, Inc. ;; Author: Edward M. Reingold <reingold@cs.uiuc.edu> ;; Maintainer: Glenn Morris <rgm@gnu.org> @@ -43,9 +43,6 @@ ;; explicitly load this file. ;;;###autoload -(define-obsolete-variable-alias 'general-holidays - 'holiday-general-holidays "23.1") -;;;###autoload (defcustom holiday-general-holidays (mapcar 'purecopy '((holiday-fixed 1 1 "New Year's Day") @@ -73,9 +70,6 @@ See the documentation for `calendar-holidays' for details." (put 'holiday-general-holidays 'risky-local-variable t) ;;;###autoload -(define-obsolete-variable-alias 'oriental-holidays - 'holiday-oriental-holidays "23.1") -;;;###autoload (defcustom holiday-oriental-holidays (mapcar 'purecopy '((holiday-chinese-new-year) @@ -98,8 +92,6 @@ See the documentation for `calendar-holidays' for details." (put 'holiday-oriental-holidays 'risky-local-variable t) ;;;###autoload -(define-obsolete-variable-alias 'local-holidays 'holiday-local-holidays "23.1") -;;;###autoload (defcustom holiday-local-holidays nil "Local holidays. See the documentation for `calendar-holidays' for details." @@ -109,8 +101,6 @@ See the documentation for `calendar-holidays' for details." (put 'holiday-local-holidays 'risky-local-variable t) ;;;###autoload -(define-obsolete-variable-alias 'other-holidays 'holiday-other-holidays "23.1") -;;;###autoload (defcustom holiday-other-holidays nil "User defined holidays. See the documentation for `calendar-holidays' for details." @@ -120,108 +110,6 @@ See the documentation for `calendar-holidays' for details." (put 'holiday-other-holidays 'risky-local-variable t) ;;;###autoload -(defvar hebrew-holidays-1 - (mapcar 'purecopy - '((holiday-hebrew-rosh-hashanah) - (if calendar-hebrew-all-holidays-flag - (holiday-julian - 11 - (let ((m displayed-month) - (y displayed-year) - year) - (calendar-increment-month m y -1) - (setq year (calendar-extract-year - (calendar-julian-from-absolute - (calendar-absolute-from-gregorian (list m 1 y))))) - (if (zerop (% (1+ year) 4)) - 22 - 21)) "\"Tal Umatar\" (evening)")))) - "Component of the old default value of `holiday-hebrew-holidays'.") -;;;###autoload -(put 'hebrew-holidays-1 'risky-local-variable t) -(make-obsolete-variable 'hebrew-holidays-1 'hebrew-holidays "23.1") - -;;;###autoload -(defvar hebrew-holidays-2 - (mapcar 'purecopy - '((holiday-hebrew-hanukkah) ; respects calendar-hebrew-all-holidays-flag - (if calendar-hebrew-all-holidays-flag - (holiday-hebrew - 10 - (let ((h-year (calendar-extract-year - (calendar-hebrew-from-absolute - (calendar-absolute-from-gregorian - (list displayed-month 28 displayed-year)))))) - (if (= 6 (% (calendar-hebrew-to-absolute (list 10 10 h-year)) - 7)) - 11 10)) - "Tzom Teveth")) - (if calendar-hebrew-all-holidays-flag - (holiday-hebrew 11 15 "Tu B'Shevat")))) - "Component of the old default value of `holiday-hebrew-holidays'.") -;;;###autoload -(put 'hebrew-holidays-2 'risky-local-variable t) -(make-obsolete-variable 'hebrew-holidays-2 'hebrew-holidays "23.1") - -;;;###autoload -(defvar hebrew-holidays-3 - (mapcar 'purecopy - '((if calendar-hebrew-all-holidays-flag - (holiday-hebrew - 11 - (let* ((m displayed-month) - (y displayed-year) - (h-year (progn - (calendar-increment-month m y 1) - (calendar-extract-year - (calendar-hebrew-from-absolute - (calendar-absolute-from-gregorian - (list m (calendar-last-day-of-month m y) y)))))) - (s-s - (calendar-hebrew-from-absolute - (if (= 6 - (% (calendar-hebrew-to-absolute - (list 7 1 h-year)) - 7)) - (calendar-dayname-on-or-before - 6 (calendar-hebrew-to-absolute - (list 11 17 h-year))) - (calendar-dayname-on-or-before - 6 (calendar-hebrew-to-absolute - (list 11 16 h-year)))))) - (day (calendar-extract-day s-s))) - day) - "Shabbat Shirah")))) - "Component of the old default value of `holiday-hebrew-holidays'.") -;;;###autoload -(put 'hebrew-holidays-3 'risky-local-variable t) -(make-obsolete-variable 'hebrew-holidays-3 'hebrew-holidays "23.1") - -;;;###autoload -(defvar hebrew-holidays-4 - (mapcar 'purecopy - '((holiday-hebrew-passover) - (and calendar-hebrew-all-holidays-flag - (let* ((m displayed-month) - (y displayed-year) - (year (progn - (calendar-increment-month m y -1) - (calendar-extract-year - (calendar-julian-from-absolute - (calendar-absolute-from-gregorian (list m 1 y))))))) - (= 21 (% year 28))) - (holiday-julian 3 26 "Kiddush HaHamah")) - (if calendar-hebrew-all-holidays-flag - (holiday-hebrew-tisha-b-av)))) - "Component of the old default value of `holiday-hebrew-holidays'.") -;;;###autoload -(put 'hebrew-holidays-4 'risky-local-variable t) -(make-obsolete-variable 'hebrew-holidays-4 'hebrew-holidays "23.1") - -;;;###autoload -(define-obsolete-variable-alias 'hebrew-holidays - 'holiday-hebrew-holidays "23.1") -;;;###autoload (defcustom holiday-hebrew-holidays (mapcar 'purecopy '((holiday-hebrew-passover) @@ -240,9 +128,6 @@ See the documentation for `calendar-holidays' for details." (put 'holiday-hebrew-holidays 'risky-local-variable t) ;;;###autoload -(define-obsolete-variable-alias 'christian-holidays - 'holiday-christian-holidays "23.1") -;;;###autoload (defcustom holiday-christian-holidays (mapcar 'purecopy '((holiday-easter-etc) ; respects calendar-christian-all-holidays-flag @@ -262,9 +147,6 @@ See the documentation for `calendar-holidays' for details." (put 'holiday-christian-holidays 'risky-local-variable t) ;;;###autoload -(define-obsolete-variable-alias 'islamic-holidays - 'holiday-islamic-holidays "23.1") -;;;###autoload (defcustom holiday-islamic-holidays (mapcar 'purecopy '((holiday-islamic-new-year) @@ -286,8 +168,6 @@ See the documentation for `calendar-holidays' for details." (put 'holiday-islamic-holidays 'risky-local-variable t) ;;;###autoload -(define-obsolete-variable-alias 'bahai-holidays 'holiday-bahai-holidays "23.1") -;;;###autoload (defcustom holiday-bahai-holidays (mapcar 'purecopy '((holiday-bahai-new-year) @@ -309,8 +189,6 @@ See the documentation for `calendar-holidays' for details." (put 'holiday-bahai-holidays 'risky-local-variable t) ;;;###autoload -(define-obsolete-variable-alias 'solar-holidays 'holiday-solar-holidays "23.1") -;;;###autoload (defcustom holiday-solar-holidays (mapcar 'purecopy '((solar-equinoxes-solstices) @@ -516,9 +394,6 @@ use instead of point." (message "Looking up holidays...done")) holiday-list))) -(define-obsolete-function-alias - 'list-calendar-holidays 'calendar-list-holidays "23.1") - ;;;###autoload (defun holidays (&optional arg) "Display the holidays for last month, this month, and next month. @@ -645,9 +520,6 @@ strings describing those holidays that apply on DATE, or nil if none do." (if (calendar-date-equal date (car h)) (setq holiday-list (append holiday-list (cdr h))))))) -(define-obsolete-function-alias - 'check-calendar-holidays 'calendar-check-holidays "23.1") - ;; Formerly cal-tex-list-holidays. (defun holiday-in-range (d1 d2) @@ -724,9 +596,6 @@ use instead of point." (calendar-mark-visible-date (car holiday) calendar-holiday-marker)) (message "Marking holidays...done"))) -(define-obsolete-function-alias - 'mark-calendar-holidays 'calendar-mark-holidays "23.1") - ;; Below are the functions that calculate the dates of holidays; these ;; are eval'ed in the function calendar-holiday-list. If you ;; write other such functions, be sure to imitate the style used below. @@ -813,9 +682,6 @@ HLIST is a list of elements of the form (DATE) TEXT." (and (car p) (calendar-date-is-visible-p (car p)) p)) hlist))) -(define-obsolete-function-alias - 'filter-visible-calendar-holidays 'holiday-filter-visible-calendar "23.1") - (defun holiday-sexp (sexp string) "Sexp holiday for dates in the calendar window. SEXP is an expression in variable `year' that is evaluated to diff --git a/lisp/calendar/icalendar.el b/lisp/calendar/icalendar.el index 784881e4012..43610036861 100644 --- a/lisp/calendar/icalendar.el +++ b/lisp/calendar/icalendar.el @@ -250,7 +250,7 @@ on the current day and continues for the number of days given here. See `icalendar-export-sexp-enumerate-all' for a list of sexp entries which by default are NOT enumerated." - :version "24.5" + :version "25.1" :type 'integer :group 'icalendar) @@ -263,7 +263,7 @@ translating into an icalendar equivalent. This affects the following sexp diary entries: `diary-anniversary', `diary-cyclic', `diary-date', `diary-float',`diary-block'. All other sexp entries are enumerated in any case." - :version "24.5" + :version "25.1" :type 'boolean :group 'icalendar) @@ -740,16 +740,6 @@ ISO format: (year month day)." ;; datetime == nil nil)) -(defun icalendar--date-style () - "Return current calendar date style. -Convenience function to handle transition from old -`european-calendar-style' to new `calendar-date-style'." - (if (boundp 'calendar-date-style) - calendar-date-style - (if (with-no-warnings european-calendar-style) - 'european - 'american))) - (defun icalendar--datetime-to-diary-date (datetime &optional separator) "Convert the decoded DATETIME to diary format. Optional argument SEPARATOR gives the separator between month, @@ -757,7 +747,7 @@ day, and year. If nil a blank character is used as separator. Call icalendar--datetime-to-*-date according to the current calendar date style." (funcall (intern-soft (format "icalendar--datetime-to-%s-date" - (icalendar--date-style))) + calendar-date-style)) datetime separator)) (defun icalendar--datetime-to-colontime (datetime) @@ -867,7 +857,7 @@ is not possible it uses the current calendar date style." (match-end 2)))) (setq year (read (substring datestring (match-beginning 3) (match-end 3)))) - (if (eq (icalendar--date-style) 'american) + (if (eq calendar-date-style 'american) (let ((x month)) (setq month day) (setq day x)))) @@ -1451,7 +1441,7 @@ entries. ENTRY-MAIN is the first line of the diary entry." NONMARKER is a regular expression matching the start of non-marking entries. ENTRY-MAIN is the first line of the diary entry." (if (string-match (concat nonmarker - (if (eq (icalendar--date-style) 'european) + (if (eq calendar-date-style 'european) "\\([0-9]+[0-9]?\\)\\s-+\\([a-z]+\\)\\s-+" "\\([a-z]+\\)\\s-+\\([0-9]+[0-9]?\\)\\s-+") "\\*?\\s-*" @@ -1462,8 +1452,8 @@ entries. ENTRY-MAIN is the first line of the diary entry." "\\s-*\\([^0-9]+.*?\\) ?$" ; must not match years ) entry-main) - (let* ((daypos (if (eq (icalendar--date-style) 'european) 1 2)) - (monpos (if (eq (icalendar--date-style) 'european) 2 1)) + (let* ((daypos (if (eq calendar-date-style 'european) 1 2)) + (monpos (if (eq calendar-date-style 'european) 2 1)) (day (read (substring entry-main (match-beginning daypos) (match-end daypos)))) @@ -1531,7 +1521,7 @@ entries. ENTRY-MAIN is the first line of the diary entry." Enumerate the evaluated sexp entry for the next `icalendar-export-sexp-enumeration-days' days. NONMARKER is a regular expression matching the start of non-marking entries. -ENTRY-MAIN is the first line of the diary entry. +ENTRY-MAIN is the first line of the diary entry. Optional argument START determines the first day of the enumeration, given as a time value, in same format as returned by @@ -1574,8 +1564,8 @@ enumeration, given as a time value, in same format as returned by (let ((calendar-date-style 'iso)) (icalendar--convert-ordinary-to-ical nonmarker (format "%4d/%02d/%02d %s" y m d see)))) - (;TODO: - (error (format "Unsopported Sexp-entry: %s" + (;TODO: + (error (format "Unsupported Sexp-entry: %s" entry-main)))))) (number-sequence 0 (- icalendar-export-sexp-enumeration-days 1)))))) @@ -2300,11 +2290,11 @@ END-T is the event's end time in diary format." (let ((day (nth 3 dtstart-dec)) (month (nth 4 dtstart-dec))) (setq result (concat "%%(and (diary-date " - (cond ((eq (icalendar--date-style) 'iso) + (cond ((eq calendar-date-style 'iso) (format "t %d %d" month day)) - ((eq (icalendar--date-style) 'european) + ((eq calendar-date-style 'european) (format "%d %d t" day month)) - ((eq (icalendar--date-style) 'american) + ((eq calendar-date-style 'american) (format "%d %d t" month day))) ") (diary-block " dtstart-conv @@ -2326,16 +2316,16 @@ END-T is the event's end time in diary format." (format "%%%%(and (diary-date %s) (diary-block %s %s)) %s%s%s" (let ((day (nth 3 dtstart-dec))) - (cond ((eq (icalendar--date-style) 'iso) + (cond ((eq calendar-date-style 'iso) (format "t t %d" day)) - ((eq (icalendar--date-style) 'european) + ((eq calendar-date-style 'european) (format "%d t t" day)) - ((eq (icalendar--date-style) 'american) + ((eq calendar-date-style 'american) (format "t %d t" day)))) dtstart-conv (if until until-conv - (if (eq (icalendar--date-style) 'iso) "9999 1 1" "1 1 9999")) ;; FIXME: should be unlimited + (if (eq calendar-date-style 'iso) "9999 1 1" "1 1 9999")) ;; FIXME: should be unlimited (or start-t "") (if end-t "-" "") (or end-t "")))) ;; daily diff --git a/lisp/calendar/lunar.el b/lisp/calendar/lunar.el index e429bb03d15..0b20006f953 100644 --- a/lisp/calendar/lunar.el +++ b/lisp/calendar/lunar.el @@ -1,7 +1,6 @@ ;;; lunar.el --- calendar functions for phases of the moon -;; Copyright (C) 1992-1993, 1995, 1997, 2001-2014 Free Software -;; Foundation, Inc. +;; Copyright (C) 1992-1993, 1995, 1997, 2001-2014 Free Software Foundation, Inc. ;; Author: Edward M. Reingold <reingold@cs.uiuc.edu> ;; Maintainer: Glenn Morris <rgm@gnu.org> @@ -228,10 +227,6 @@ use instead of point." (lunar-phase-list m1 y1) "\n"))) (message "Computing phases of the moon...done")))) -;;;###cal-autoload -(define-obsolete-function-alias 'calendar-phases-of-moon - 'calendar-lunar-phases "23.1") - ;;;###autoload (defun lunar-phases (&optional arg) "Display the quarters of the moon for last month, this month, and next month. @@ -245,9 +240,6 @@ This function is suitable for execution in an init file." (displayed-year (calendar-extract-year date))) (calendar-lunar-phases)))) -;;;###autoload -(define-obsolete-function-alias 'phases-of-moon 'lunar-phases "23.1") - (defvar date) ;; To be called from diary-list-sexp-entries, where DATE is bound. @@ -266,10 +258,6 @@ use when highlighting the day in the calendar." (cons mark (concat (lunar-phase-name (nth 2 phase)) " " (cadr phase)))))) -;;;###diary-autoload -(define-obsolete-function-alias 'diary-phases-of-moon - 'diary-lunar-phases "23.1") - ;; For the Chinese calendar the calculations for the new moon need to be more ;; accurate than those above, so we use more terms in the approximation. (defun lunar-new-moon-time (k) diff --git a/lisp/calendar/parse-time.el b/lisp/calendar/parse-time.el index 6c88210030b..142e69ecfe6 100644 --- a/lisp/calendar/parse-time.el +++ b/lisp/calendar/parse-time.el @@ -34,21 +34,12 @@ ;;; Code: -(eval-when-compile (require 'cl-lib)) - -(defvar parse-time-digits (make-vector 256 nil)) +(require 'cl-lib) ;; Byte-compiler warnings (defvar parse-time-elt) (defvar parse-time-val) -(unless (aref parse-time-digits ?0) - (cl-loop for i from ?0 to ?9 - do (aset parse-time-digits i (- i ?0)))) - -(defsubst digit-char-p (char) - (aref parse-time-digits char)) - (defsubst parse-time-string-chars (char) (save-match-data (let (case-fold-search str) @@ -59,30 +50,6 @@ ((string-match "[[:lower:]]" str) ?a) ((string-match "[[:digit:]]" str) ?0))))) -(put 'parse-error 'error-conditions '(parse-error error)) -(put 'parse-error 'error-message "Parsing error") - -(defsubst parse-integer (string &optional start end) - "[CL] Parse and return the integer in STRING, or nil if none." - (let ((integer 0) - (digit 0) - (index (or start 0)) - (end (or end (length string)))) - (when (< index end) - (let ((sign (aref string index))) - (if (or (eq sign ?+) (eq sign ?-)) - (setq sign (parse-time-string-chars sign) - index (1+ index)) - (setq sign 1)) - (while (and (< index end) - (setq digit (digit-char-p (aref string index)))) - (setq integer (+ (* integer 10) digit) - index (1+ index))) - (if (/= index end) - (signal 'parse-error `("not an integer" - ,(substring string (or start 0) end))) - (* sign integer)))))) - (defun parse-time-tokenize (string) "Tokenize STRING into substrings." (let ((start nil) @@ -100,7 +67,7 @@ (setq c (parse-time-string-chars (aref string index)))) (setq all-digits (and all-digits (eq c ?0)))) (if (<= index end) - (push (if all-digits (parse-integer string start index) + (push (if all-digits (cl-parse-integer string :start start :end index) (substring string start index)) list))) (nreverse list))) @@ -147,8 +114,8 @@ (= 5 (length parse-time-elt)) (or (= (aref parse-time-elt 0) ?+) (= (aref parse-time-elt 0) ?-)))) - ,#'(lambda () (* 60 (+ (parse-integer parse-time-elt 3 5) - (* 60 (parse-integer parse-time-elt 1 3))) + ,#'(lambda () (* 60 (+ (cl-parse-integer parse-time-elt :start 3 :end 5) + (* 60 (cl-parse-integer parse-time-elt :start 1 :end 3))) (if (= (aref parse-time-elt 0) ?-) -1 1)))) ((5 4 3) ,#'(lambda () (and (stringp parse-time-elt) @@ -210,9 +177,10 @@ unknown are returned as nil." (let ((new-val (if rule (let ((this (pop rule))) (if (vectorp this) - (parse-integer + (cl-parse-integer parse-time-elt - (aref this 0) (aref this 1)) + :start (aref this 0) + :end (aref this 1)) (funcall this))) parse-time-val))) (rplaca (nthcdr (pop slots) time) new-val)))))))) diff --git a/lisp/cedet/ChangeLog b/lisp/cedet/ChangeLog index 820e75260a9..9aabc9c9e0d 100644 --- a/lisp/cedet/ChangeLog +++ b/lisp/cedet/ChangeLog @@ -1,3 +1,9 @@ +2014-09-22 David Engster <deng@randomsample.de> + + * ede/emacs.el (ede-emacs-version): Do not call 'egrep' to + determine Emacs version (it was dead code anyway). Make sure that + configure.ac or configure.in exist. (Bug#18476) + 2014-06-19 Stefan Monnier <monnier@iro.umontreal.ca> * semantic/ia.el (semantic-ia-complete-symbol-menu): Use posn-at-point diff --git a/lisp/cedet/ede/emacs.el b/lisp/cedet/ede/emacs.el index 43f16da8a77..76925a66713 100644 --- a/lisp/cedet/ede/emacs.el +++ b/lisp/cedet/ede/emacs.el @@ -80,12 +80,6 @@ Return a tuple of ( EMACSNAME . VERSION )." (with-current-buffer buff (erase-buffer) (setq default-directory (file-name-as-directory dir)) - (or (file-exists-p configure_ac) - (setq configure_ac "configure.in")) - ;(call-process "egrep" nil buff nil "-n" "-e" "^version=" "Makefile") - (call-process "egrep" nil buff nil "-n" "-e" "AC_INIT" configure_ac) - (goto-char (point-min)) - ;(re-search-forward "version=\\([0-9.]+\\)") (cond ;; Maybe XEmacs? ((file-exists-p "version.sh") @@ -113,7 +107,8 @@ m4_define(\\[SXEM4CS_BETA_VERSION\\], \\[\\([0-9]+\\)\\])") ;; Insert other Emacs here... ;; Vaguely recent version of GNU Emacs? - (t + ((or (file-exists-p configure_ac) + (file-exists-p (setq configure_ac "configure.in"))) (insert-file-contents configure_ac) (goto-char (point-min)) (re-search-forward "AC_INIT(\\(?:GNU \\)?[eE]macs,\\s-*\\([0-9.]+\\)\\s-*[,)]") diff --git a/lisp/composite.el b/lisp/composite.el index 666d6c9dd91..ca38c39cd6f 100644 --- a/lisp/composite.el +++ b/lisp/composite.el @@ -702,7 +702,7 @@ All non-spacing characters have this function in (setq xoff (- (lglyph-rbearing fc)))) (if (< dc-width fc-width) ;; The following glyph is wider, but we don't know how to - ;; align both glyphs. So, try the easiet method; + ;; align both glyphs. So, try the easiest method; ;; i.e. align left edges of the glyphs. (setq xoff (- xoff (- dc-width) (- (lglyph-lbearing fc ))) width (- fc-width dc-width))) diff --git a/lisp/cus-start.el b/lisp/cus-start.el index b446a00bb8f..d4795bfe6a5 100644 --- a/lisp/cus-start.el +++ b/lisp/cus-start.el @@ -404,7 +404,8 @@ Leaving \"Default\" unchecked is equivalent with specifying a default of (ns-antialias-text ns boolean "23.1") (ns-auto-hide-menu-bar ns boolean "24.1") (ns-use-native-fullscreen ns boolean "24.4") - (ns-use-srgb-colorspace ns boolean "24.4") + (ns-use-fullscreen-animation ns boolean "25.1") + (ns-use-srgb-colorspace ns boolean "24.4") ;; process.c (delete-exited-processes processes-basics boolean) ;; syntax.c diff --git a/lisp/desktop.el b/lisp/desktop.el index 40e6b364e45..360ff48339b 100644 --- a/lisp/desktop.el +++ b/lisp/desktop.el @@ -1375,7 +1375,9 @@ after that many seconds of idle time." ;; Restore buffer list order with new buffer at end. Don't change ;; the order for old desktop files (old desktop module behavior). (unless (< desktop-file-version 206) - (mapc 'bury-buffer buffer-list) + (dolist (buf buffer-list) + (and (buffer-live-p buf) + (bury-buffer buf))) (when result (bury-buffer result))) (when result (unless (or desktop-first-buffer (< desktop-file-version 206)) diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 9c52cc44eb4..0e96ba93f44 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -2521,7 +2521,8 @@ If QUOTED is non-nil, print with quoting; otherwise, print without quoting." "Return an expression which will evaluate to a function value FUN. FUN should be either a `lambda' value or a `closure' value." (pcase-let* (((or (and `(lambda ,args . ,body) (let env nil)) - `(closure ,env ,args . ,body)) fun) + `(closure ,env ,args . ,body)) + fun) (renv ())) ;; Turn the function's closed vars (if any) into local let bindings. (dolist (binding env) @@ -2723,7 +2724,9 @@ for symbols generated by the byte compiler itself." ;; byte-string, constants-vector, stack depth (cdr compiled) ;; optionally, the doc string. - (cond (lexical-binding + (cond ((and lexical-binding arglist) + ;; byte-compile-make-args-desc lost the args's names, + ;; so preserve them in the docstring. (list (help-add-fundoc-usage doc arglist))) ((or doc int) (list doc))) @@ -4069,7 +4072,6 @@ binding slots have been popped." (byte-defop-compiler-1 save-restriction) ;; (byte-defop-compiler-1 save-window-excursion) ;Obsolete: now a macro. ;; (byte-defop-compiler-1 with-output-to-temp-buffer) ;Obsolete: now a macro. -(byte-defop-compiler-1 track-mouse) (defvar byte-compile--use-old-handlers t "If nil, use new byte codes introduced in Emacs-24.4.") @@ -4104,12 +4106,6 @@ binding slots have been popped." (byte-compile-form-do-effect (car (cdr form))) (byte-compile-out 'byte-unbind 1)) -(defun byte-compile-track-mouse (form) - (byte-compile-form - (pcase form - (`(,_ :fun-body ,f) `(eval (list 'track-mouse (list 'funcall ,f)))) - (_ `(eval '(track-mouse ,@(byte-compile-top-level-body (cdr form)))))))) - (defun byte-compile-condition-case (form) (if byte-compile--use-old-handlers (byte-compile-condition-case--old form) diff --git a/lisp/emacs-lisp/cconv.el b/lisp/emacs-lisp/cconv.el index 40f1531e0f7..98eef11a658 100644 --- a/lisp/emacs-lisp/cconv.el +++ b/lisp/emacs-lisp/cconv.el @@ -462,10 +462,6 @@ places where they originally did not directly appear." `(,head ,(cconv-convert form env extend) :fun-body ,(cconv--convert-function () body env form))) - (`(track-mouse . ,body) - `(track-mouse - :fun-body ,(cconv--convert-function () body env form))) - (`(setq . ,forms) ; setq special form (let ((prognlist ())) (while forms @@ -701,11 +697,6 @@ and updates the data stored in ENV." (cconv-analyse-form form env) (cconv--analyse-function () body env form)) - ;; FIXME: The lack of bytecode for track-mouse forces us to wrap the body. - ;; `track-mouse' really should be made into a macro. - (`(track-mouse . ,body) - (cconv--analyse-function () body env form)) - (`(defvar ,var) (push var byte-compile-bound-variables)) (`(,(or `defconst `defvar) ,var ,value . ,_) (push var byte-compile-bound-variables) diff --git a/lisp/emacs-lisp/cl-extra.el b/lisp/emacs-lisp/cl-extra.el index 3761d04c2c2..a7970261608 100644 --- a/lisp/emacs-lisp/cl-extra.el +++ b/lisp/emacs-lisp/cl-extra.el @@ -383,6 +383,42 @@ With two arguments, return rounding and remainder of their quotient." "Return 1 if X is positive, -1 if negative, 0 if zero." (cond ((> x 0) 1) ((< x 0) -1) (t 0))) +;;;###autoload +(cl-defun cl-parse-integer (string &key start end radix junk-allowed) + "Parse integer from the substring of STRING from START to END. +STRING may be surrounded by whitespace chars (chars with syntax ` '). +Other non-digit chars are considered junk. +RADIX is an integer between 2 and 36, the default is 10. Signal +an error if the substring between START and END cannot be parsed +as an integer unless JUNK-ALLOWED is non-nil." + (cl-check-type string string) + (let* ((start (or start 0)) + (len (length string)) + (end (or end len)) + (radix (or radix 10))) + (or (<= start end len) + (error "Bad interval: [%d, %d)" start end)) + (cl-flet ((skip-whitespace () + (while (and (< start end) + (= 32 (char-syntax (aref string start)))) + (setq start (1+ start))))) + (skip-whitespace) + (let ((sign (cl-case (and (< start end) (aref string start)) + (?+ (cl-incf start) +1) + (?- (cl-incf start) -1) + (t +1))) + digit sum) + (while (and (< start end) + (setq digit (cl-digit-char-p (aref string start) radix))) + (setq sum (+ (* (or sum 0) radix) digit) + start (1+ start))) + (skip-whitespace) + (cond ((and junk-allowed (null sum)) sum) + (junk-allowed (* sign sum)) + ((or (/= start end) (null sum)) + (error "Not an integer string: `%s'" string)) + (t (* sign sum))))))) + ;; Random numbers. @@ -611,6 +647,13 @@ PROPLIST is a list of the sort returned by `symbol-plist'. (progn (setplist sym (cdr (cdr plist))) t) (cl--do-remf plist tag)))) +;;; Streams. + +;;;###autoload +(defun cl-fresh-line (&optional stream) + "Output a newline unless already at the beginning of a line." + (terpri stream 'ensure)) + ;;; Some debugging aids. (defun cl-prettyprint (form) diff --git a/lisp/emacs-lisp/cl-lib.el b/lisp/emacs-lisp/cl-lib.el index c4b9673aa2a..c7d21c76fc1 100644 --- a/lisp/emacs-lisp/cl-lib.el +++ b/lisp/emacs-lisp/cl-lib.el @@ -279,6 +279,25 @@ so that they are registered at compile-time as well as run-time." "Return t if INTEGER is even." (eq (logand integer 1) 0)) +(defconst cl-digit-char-table + (let* ((digits (make-vector 256 nil)) + (populate (lambda (start end base) + (mapc (lambda (i) + (aset digits i (+ base (- i start)))) + (number-sequence start end))))) + (funcall populate ?0 ?9 0) + (funcall populate ?A ?Z 10) + (funcall populate ?a ?z 10) + digits)) + +(defun cl-digit-char-p (char &optional radix) + "Test if CHAR is a digit in the specified RADIX (default 10). +If true return the decimal value of digit CHAR in RADIX." + (or (<= 2 (or radix 10) 36) + (signal 'args-out-of-range (list 'radix radix '(2 36)))) + (let ((n (aref cl-digit-char-table char))) + (and n (< n (or radix 10)) n))) + (defvar cl--random-state (vector 'cl--random-state-tag -1 30 (cl--random-time))) @@ -682,7 +701,6 @@ If ALIST is non-nil, the new pairs are prepended to it." (gv-define-setter window-width (store) `(progn (enlarge-window (- ,store (window-width)) t) ,store)) (gv-define-simple-setter x-get-secondary-selection x-own-secondary-selection t) -(gv-define-simple-setter x-get-selection x-own-selection t) ;; More complex setf-methods. diff --git a/lisp/emacs-lisp/easy-mmode.el b/lisp/emacs-lisp/easy-mmode.el index b5b6566cf66..9a17a75e48b 100644 --- a/lisp/emacs-lisp/easy-mmode.el +++ b/lisp/emacs-lisp/easy-mmode.el @@ -300,7 +300,7 @@ the mode if ARG is omitted or nil, and toggle it if ARG is `toggle'. ,(format "Hook run after entering or leaving `%s'. No problems result if this variable is not bound. `add-hook' automatically binds it. (This is true for all hook variables.)" - mode)) + modefun)) ;; Define the minor-mode keymap. ,(unless (symbolp keymap) ;nil is also a symbol. diff --git a/lisp/emacs-lisp/eldoc.el b/lisp/emacs-lisp/eldoc.el index 0b8304af29f..7245989c4b0 100644 --- a/lisp/emacs-lisp/eldoc.el +++ b/lisp/emacs-lisp/eldoc.el @@ -1,4 +1,4 @@ -;;; eldoc.el --- show function arglist or variable docstring in echo area -*- lexical-binding: t; -*- +;;; eldoc.el --- Show function arglist or variable docstring in echo area -*- lexical-binding:t; -*- ;; Copyright (C) 1996-2014 Free Software Foundation, Inc. @@ -88,7 +88,7 @@ has no effect, unless the function handles it explicitly." (function-item downcase) function) :group 'eldoc) -(make-obsolete-variable 'eldoc-argument-case nil "24.5") +(make-obsolete-variable 'eldoc-argument-case nil "25.1") (defcustom eldoc-echo-area-use-multiline-p 'truncate-sym-name-if-fit "Allow long ElDoc messages to resize echo area display. @@ -116,8 +116,8 @@ has no effect, unless the function handles it explicitly." (defface eldoc-highlight-function-argument '((t (:inherit bold))) "Face used for the argument at point in a function's argument list. -Note that if `eldoc-documentation-function' is non-nil, this face -has no effect, unless the function handles it explicitly." +Note that this face has no effect unless the `eldoc-documentation-function' +handles it explicitly." :group 'eldoc) ;;; No user options below here. @@ -185,15 +185,34 @@ it displays the argument list of the function called in the expression point is on." :group 'eldoc :lighter eldoc-minor-mode-string (setq eldoc-last-message nil) - (if eldoc-mode + (cond + ((not eldoc-documentation-function) + (message "There is no ElDoc support in this buffer") + (setq eldoc-mode nil)) + (eldoc-mode + (when eldoc-print-after-edit + (setq-local eldoc-message-commands (eldoc-edit-message-commands))) + (add-hook 'post-command-hook 'eldoc-schedule-timer nil t) + (add-hook 'pre-command-hook 'eldoc-pre-command-refresh-echo-area nil t)) + (t + (kill-local-variable 'eldoc-message-commands) + (remove-hook 'post-command-hook 'eldoc-schedule-timer t) + (remove-hook 'pre-command-hook 'eldoc-pre-command-refresh-echo-area t)))) + +;;;###autoload +(define-minor-mode global-eldoc-mode + "Enable `eldoc-mode' in all buffers where it's applicable." + :group 'eldoc :global t + (setq eldoc-last-message nil) + (if global-eldoc-mode (progn (when eldoc-print-after-edit (setq-local eldoc-message-commands (eldoc-edit-message-commands))) - (add-hook 'post-command-hook 'eldoc-schedule-timer nil t) - (add-hook 'pre-command-hook 'eldoc-pre-command-refresh-echo-area nil t)) + (add-hook 'post-command-hook #'eldoc-schedule-timer) + (add-hook 'pre-command-hook #'eldoc-pre-command-refresh-echo-area)) (kill-local-variable 'eldoc-message-commands) - (remove-hook 'post-command-hook 'eldoc-schedule-timer t) - (remove-hook 'pre-command-hook 'eldoc-pre-command-refresh-echo-area t))) + (remove-hook 'post-command-hook #'eldoc-schedule-timer) + (remove-hook 'pre-command-hook #'eldoc-pre-command-refresh-echo-area))) ;;;###autoload (define-obsolete-function-alias 'turn-on-eldoc-mode 'eldoc-mode "24.4") @@ -201,11 +220,14 @@ expression point is on." (defun eldoc-schedule-timer () (or (and eldoc-timer - (memq eldoc-timer timer-idle-list)) + (memq eldoc-timer timer-idle-list)) ;FIXME: Why? (setq eldoc-timer (run-with-idle-timer eldoc-idle-delay t - (lambda () (and eldoc-mode (eldoc-print-current-symbol-info)))))) + (lambda () + (when (or eldoc-mode + (and global-eldoc-mode eldoc-documentation-function)) + (eldoc-print-current-symbol-info)))))) ;; If user has changed the idle delay, update the timer. (cond ((not (= eldoc-idle-delay eldoc-current-idle-delay)) @@ -300,7 +322,7 @@ Otherwise work like `message'." ;;;###autoload -(defvar eldoc-documentation-function #'eldoc-documentation-function-default +(defvar eldoc-documentation-function nil "Function to call to return doc string. The function of no args should return a one-line string for displaying doc about a function etc. appropriate to the context around point. @@ -313,8 +335,7 @@ the variables `eldoc-argument-case' and `eldoc-echo-area-use-multiline-p', and the face `eldoc-highlight-function-argument', if they are to have any effect. -This variable is expected to be made buffer-local by modes (other than -Emacs Lisp mode) that support ElDoc.") +This variable is expected to be set buffer-locally by modes that support ElDoc.") (defun eldoc-print-current-symbol-info () ;; This is run from post-command-hook or some idle timer thing, @@ -327,239 +348,6 @@ Emacs Lisp mode) that support ElDoc.") nil)) (eldoc-message (funcall eldoc-documentation-function))))) -(defun eldoc-documentation-function-default () - "Default value for `eldoc-documentation-function' (which see)." - (let ((current-symbol (eldoc-current-symbol)) - (current-fnsym (eldoc-fnsym-in-current-sexp))) - (cond ((null current-fnsym) - nil) - ((eq current-symbol (car current-fnsym)) - (or (apply #'eldoc-get-fnsym-args-string current-fnsym) - (eldoc-get-var-docstring current-symbol))) - (t - (or (eldoc-get-var-docstring current-symbol) - (apply #'eldoc-get-fnsym-args-string current-fnsym)))))) - -(defun eldoc-get-fnsym-args-string (sym &optional index) - "Return a string containing the parameter list of the function SYM. -If SYM is a subr and no arglist is obtainable from the docstring -or elsewhere, return a 1-line docstring." - (let (args doc advertised) - (cond ((not (and sym (symbolp sym) (fboundp sym)))) - ((and (eq sym (aref eldoc-last-data 0)) - (eq 'function (aref eldoc-last-data 2))) - (setq doc (aref eldoc-last-data 1))) - ((listp (setq advertised (gethash (indirect-function sym) - advertised-signature-table t))) - (setq args advertised)) - ((setq doc (help-split-fundoc (documentation sym t) sym)) - (setq args (car doc))) - (t - (setq args (help-function-arglist sym)))) - (if args - ;; Stringify, and store before highlighting, downcasing, etc. - ;; FIXME should truncate before storing. - (eldoc-last-data-store sym (setq args (eldoc-function-argstring args)) - 'function) - (setq args doc)) ; use stored value - ;; Change case, highlight, truncate. - (if args - (eldoc-highlight-function-argument sym args index)))) - -(defun eldoc-highlight-function-argument (sym args index) - "Highlight argument INDEX in ARGS list for function SYM. -In the absence of INDEX, just call `eldoc-docstring-format-sym-doc'." - (let ((start nil) - (end 0) - (argument-face 'eldoc-highlight-function-argument)) - ;; Find the current argument in the argument string. We need to - ;; handle `&rest' and informal `...' properly. - ;; - ;; FIXME: What to do with optional arguments, like in - ;; (defun NAME ARGLIST [DOCSTRING] BODY...) case? - ;; The problem is there is no robust way to determine if - ;; the current argument is indeed a docstring. - - ;; When `&key' is used finding position based on `index' - ;; would be wrong, so find the arg at point and determine - ;; position in ARGS based on this current arg. - (when (string-match "&key" args) - (let* (case-fold-search - (cur-w (current-word)) - (limit (save-excursion - (when (re-search-backward (symbol-name sym) nil t) - (match-end 0)))) - (cur-a (if (string-match ":\\([^ ()]*\\)" cur-w) - (substring cur-w 1) - (save-excursion - (when (re-search-backward ":\\([^ ()\n]*\\)" limit t) - (match-string 1)))))) - ;; If `cur-a' is nil probably cursor is on a positional arg - ;; before `&key', in this case, exit this block and determine - ;; position with `index'. - (when (and cur-a - (string-match (concat "\\_<" (upcase cur-a) "\\_>") args)) - (setq index nil ; Skip next block based on positional args. - start (match-beginning 0) - end (match-end 0))))) - ;; Handle now positional arguments. - (while (and index (>= index 1)) - (if (string-match "[^ ()]+" args end) - (progn - (setq start (match-beginning 0) - end (match-end 0)) - (let ((argument (match-string 0 args))) - (cond ((string= argument "&rest") - ;; All the rest arguments are the same. - (setq index 1)) - ((string= argument "&optional")) ; Skip. - ((string= argument "&allow-other-keys")) ; Skip. - ;; Back to index 0 in ARG1 ARG2 ARG2 ARG3 etc... - ;; like in `setq'. - ((or (string-match-p "\\.\\.\\.$" argument) - (and (string-match-p "\\.\\.\\.)?$" args) - (> index 1) (cl-oddp index))) - (setq index 0)) - (t - (setq index (1- index)))))) - (setq end (length args) - start (1- end) - argument-face 'font-lock-warning-face - index 0))) - (let ((doc args)) - (when start - (setq doc (copy-sequence args)) - (add-text-properties start end (list 'face argument-face) doc)) - (setq doc (eldoc-docstring-format-sym-doc - sym doc (if (functionp sym) 'font-lock-function-name-face - 'font-lock-keyword-face))) - doc))) - -;; Return a string containing a brief (one-line) documentation string for -;; the variable. -(defun eldoc-get-var-docstring (sym) - (when sym - (cond ((and (eq sym (aref eldoc-last-data 0)) - (eq 'variable (aref eldoc-last-data 2))) - (aref eldoc-last-data 1)) - (t - (let ((doc (documentation-property sym 'variable-documentation t))) - (cond (doc - (setq doc (eldoc-docstring-format-sym-doc - sym (eldoc-docstring-first-line doc) - 'font-lock-variable-name-face)) - (eldoc-last-data-store sym doc 'variable))) - doc))))) - -(defun eldoc-last-data-store (symbol doc type) - (aset eldoc-last-data 0 symbol) - (aset eldoc-last-data 1 doc) - (aset eldoc-last-data 2 type)) - -;; Note that any leading `*' in the docstring (which indicates the variable -;; is a user option) is removed. -(defun eldoc-docstring-first-line (doc) - (and (stringp doc) - (substitute-command-keys - (save-match-data - ;; Don't use "^" in the regexp below since it may match - ;; anywhere in the doc-string. - (let ((start (if (string-match "\\`\\*" doc) (match-end 0) 0))) - (cond ((string-match "\n" doc) - (substring doc start (match-beginning 0))) - ((zerop start) doc) - (t (substring doc start)))))))) - -;; If the entire line cannot fit in the echo area, the symbol name may be -;; truncated or eliminated entirely from the output to make room for the -;; description. -(defun eldoc-docstring-format-sym-doc (sym doc face) - (save-match-data - (let* ((name (symbol-name sym)) - (ea-multi eldoc-echo-area-use-multiline-p) - ;; Subtract 1 from window width since emacs will not write - ;; any chars to the last column, or in later versions, will - ;; cause a wraparound and resize of the echo area. - (ea-width (1- (window-width (minibuffer-window)))) - (strip (- (+ (length name) (length ": ") (length doc)) ea-width))) - (cond ((or (<= strip 0) - (eq ea-multi t) - (and ea-multi (> (length doc) ea-width))) - (format "%s: %s" (propertize name 'face face) doc)) - ((> (length doc) ea-width) - (substring (format "%s" doc) 0 ea-width)) - ((>= strip (length name)) - (format "%s" doc)) - (t - ;; Show the end of the partial symbol name, rather - ;; than the beginning, since the former is more likely - ;; to be unique given package namespace conventions. - (setq name (substring name strip)) - (format "%s: %s" (propertize name 'face face) doc)))))) - - -;; Return a list of current function name and argument index. -(defun eldoc-fnsym-in-current-sexp () - (save-excursion - (let ((argument-index (1- (eldoc-beginning-of-sexp)))) - ;; If we are at the beginning of function name, this will be -1. - (when (< argument-index 0) - (setq argument-index 0)) - ;; Don't do anything if current word is inside a string. - (if (= (or (char-after (1- (point))) 0) ?\") - nil - (list (eldoc-current-symbol) argument-index))))) - -;; Move to the beginning of current sexp. Return the number of nested -;; sexp the point was over or after. -(defun eldoc-beginning-of-sexp () - (let ((parse-sexp-ignore-comments t) - (num-skipped-sexps 0)) - (condition-case _ - (progn - ;; First account for the case the point is directly over a - ;; beginning of a nested sexp. - (condition-case _ - (let ((p (point))) - (forward-sexp -1) - (forward-sexp 1) - (when (< (point) p) - (setq num-skipped-sexps 1))) - (error)) - (while - (let ((p (point))) - (forward-sexp -1) - (when (< (point) p) - (setq num-skipped-sexps (1+ num-skipped-sexps)))))) - (error)) - num-skipped-sexps)) - -;; returns nil unless current word is an interned symbol. -(defun eldoc-current-symbol () - (let ((c (char-after (point)))) - (and c - (memq (char-syntax c) '(?w ?_)) - (intern-soft (current-word))))) - -;; Do indirect function resolution if possible. -(defun eldoc-symbol-function (fsym) - (let ((defn (symbol-function fsym))) - (and (symbolp defn) - (condition-case _ - (setq defn (indirect-function fsym)) - (error (setq defn nil)))) - defn)) - -(defun eldoc-function-argstring (arglist) - "Return ARGLIST as a string enclosed by (). -ARGLIST is either a string, or a list of strings or symbols." - (let ((str (cond ((stringp arglist) arglist) - ((not (listp arglist)) nil) - (t (format "%S" (help-make-usage 'toto arglist)))))) - (if (and str (string-match "\\`([^ ]+ ?" str)) - (replace-match "(" t t str) - str))) - ;; When point is in a sexp, the function args are not reprinted in the echo ;; area after every possible interactive command because some of them print @@ -575,7 +363,7 @@ ARGLIST is either a string, or a list of strings or symbols." (defun eldoc-add-command-completions (&rest names) (dolist (name names) - (apply 'eldoc-add-command (all-completions name obarray 'commandp)))) + (apply #'eldoc-add-command (all-completions name obarray 'commandp)))) (defun eldoc-remove-command (&rest cmds) (dolist (name cmds) @@ -585,7 +373,7 @@ ARGLIST is either a string, or a list of strings or symbols." (defun eldoc-remove-command-completions (&rest names) (dolist (name names) - (apply 'eldoc-remove-command + (apply #'eldoc-remove-command (all-completions name eldoc-message-commands)))) diff --git a/lisp/emacs-lisp/gv.el b/lisp/emacs-lisp/gv.el index 692b76e8a36..229ad275bf5 100644 --- a/lisp/emacs-lisp/gv.el +++ b/lisp/emacs-lisp/gv.el @@ -357,6 +357,34 @@ The return value is the last VAL in the list. (macroexp-let2 nil v val `(with-current-buffer ,buf (set (make-local-variable ,var) ,v)))) +(gv-define-expander alist-get + (lambda (do key alist &optional default remove) + (macroexp-let2 macroexp-copyable-p k key + (gv-letplace (getter setter) alist + (macroexp-let2 nil p `(assq ,k ,getter) + (funcall do (if (null default) `(cdr ,p) + `(if ,p (cdr ,p) ,default)) + (lambda (v) + (macroexp-let2 nil v v + (let ((set-exp + `(if ,p (setcdr ,p ,v) + ,(funcall setter + `(cons (setq ,p (cons ,k ,v)) + ,getter))))) + (cond + ((null remove) set-exp) + ((or (eql v default) + (and (eq (car-safe v) 'quote) + (eq (car-safe default) 'quote) + (eql (cadr v) (cadr default)))) + `(if ,p ,(funcall setter `(delq ,p ,getter)))) + (t + `(cond + ((not (eql ,default ,v)) ,set-exp) + (,p ,(funcall setter + `(delq ,p ,getter))))))))))))))) + + ;;; Some occasionally handy extensions. ;; While several of the "places" below are not terribly useful for direct use, @@ -479,22 +507,13 @@ REF must have been previously obtained with `gv-ref'." ;; … => (load "gv.el") => (macroexpand-all (defsubst gv-deref …)) => (macroexpand (defun …)) => (load "gv.el") (gv-define-setter gv-deref (v ref) `(funcall (cdr ,ref) ,v)) -;;; Vaguely related definitions that should be moved elsewhere. - -;; (defun alist-get (key alist) -;; "Get the value associated to KEY in ALIST." -;; (declare -;; (gv-expander -;; (lambda (do) -;; (macroexp-let2 macroexp-copyable-p k key -;; (gv-letplace (getter setter) alist -;; (macroexp-let2 nil p `(assoc ,k ,getter) -;; (funcall do `(cdr ,p) -;; (lambda (v) -;; `(if ,p (setcdr ,p ,v) -;; ,(funcall setter -;; `(cons (cons ,k ,v) ,getter))))))))))) -;; (cdr (assoc key alist))) +;; (defmacro gv-letref (vars place &rest body) +;; (declare (indent 2) (debug (sexp form &rest body))) +;; (require 'cl-lib) ;Can't require cl-lib at top-level for bootstrap reasons! +;; (gv-letplace (getter setter) place +;; `(cl-macrolet ((,(nth 0 vars) () ',getter) +;; (,(nth 1 vars) (v) (funcall ',setter v))) +;; ,@body))) (provide 'gv) ;;; gv.el ends here diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el index 31df353321a..a13baf0ee22 100644 --- a/lisp/emacs-lisp/lisp-mode.el +++ b/lisp/emacs-lisp/lisp-mode.el @@ -33,17 +33,10 @@ (defvar font-lock-keywords-case-fold-search) (defvar font-lock-string-face) -(defvar lisp-mode-abbrev-table nil) (define-abbrev-table 'lisp-mode-abbrev-table () "Abbrev table for Lisp mode.") -(defvar emacs-lisp-mode-abbrev-table nil) -(define-abbrev-table 'emacs-lisp-mode-abbrev-table () - "Abbrev table for Emacs Lisp mode. -It has `lisp-mode-abbrev-table' as its parent." - :parents (list lisp-mode-abbrev-table)) - -(defvar emacs-lisp-mode-syntax-table +(defvar lisp--mode-syntax-table (let ((table (make-syntax-table)) (i 0)) (while (< i ?0) @@ -82,13 +75,11 @@ It has `lisp-mode-abbrev-table' as its parent." (modify-syntax-entry ?\\ "\\ " table) (modify-syntax-entry ?\( "() " table) (modify-syntax-entry ?\) ")( " table) - (modify-syntax-entry ?\[ "(] " table) - (modify-syntax-entry ?\] ")[ " table) table) - "Syntax table used in `emacs-lisp-mode'.") + "Parent syntax table used in Lisp modes.") (defvar lisp-mode-syntax-table - (let ((table (copy-syntax-table emacs-lisp-mode-syntax-table))) + (let ((table (make-syntax-table lisp--mode-syntax-table))) (modify-syntax-entry ?\[ "_ " table) (modify-syntax-entry ?\] "_ " table) (modify-syntax-entry ?# "' 14" table) @@ -102,26 +93,35 @@ It has `lisp-mode-abbrev-table' as its parent." (purecopy (concat "^\\s-*(" (eval-when-compile (regexp-opt - '("defun" "defun*" "defsubst" "defmacro" + '("defun" "defmacro" + ;; Elisp. + "defun*" "defsubst" "defadvice" "define-skeleton" "define-compilation-mode" "define-minor-mode" "define-global-minor-mode" "define-globalized-minor-mode" "define-derived-mode" "define-generic-mode" + "cl-defun" "cl-defsubst" "cl-defmacro" + "cl-define-compiler-macro" + ;; CL. "define-compiler-macro" "define-modify-macro" "defsetf" "define-setf-expander" "define-method-combination" - "defgeneric" "defmethod" - "cl-defun" "cl-defsubst" "cl-defmacro" - "cl-define-compiler-macro") t)) + ;; CLOS and EIEIO + "defgeneric" "defmethod") + t)) "\\s-+\\(\\(\\sw\\|\\s_\\)+\\)")) 2) (list (purecopy "Variables") (purecopy (concat "^\\s-*(" (eval-when-compile (regexp-opt - '("defconst" "defconstant" "defcustom" - "defparameter" "define-symbol-macro") t)) + '(;; Elisp + "defconst" "defcustom" + ;; CL + "defconstant" + "defparameter" "define-symbol-macro") + t)) "\\s-+\\(\\(\\sw\\|\\s_\\)+\\)")) 2) ;; For `defvar', we ignore (defvar FOO) constructs. @@ -133,10 +133,16 @@ It has `lisp-mode-abbrev-table' as its parent." (purecopy (concat "^\\s-*(" (eval-when-compile (regexp-opt - '("defgroup" "deftheme" "deftype" "defstruct" - "defclass" "define-condition" "define-widget" - "defface" "defpackage" "cl-deftype" - "cl-defstruct") t)) + '(;; Elisp + "defgroup" "deftheme" + "define-widget" "define-error" + "defface" "cl-deftype" "cl-defstruct" + ;; CL + "deftype" "defstruct" + "define-condition" "defpackage" + ;; CLOS and EIEIO + "defclass") + t)) "\\s-+'?\\(\\(\\sw\\|\\s_\\)+\\)")) 2)) @@ -197,9 +203,9 @@ It has `lisp-mode-abbrev-table' as its parent." (el-vdefs '("defconst" "defcustom" "defvaralias" "defvar-local" "defface")) (el-tdefs '("defgroup" "deftheme")) - (el-kw '("while-no-input" "letrec" "pcase" "pcase-let" - "pcase-let*" "save-restriction" "save-excursion" - "save-selected-window" + (el-kw '("while-no-input" "letrec" "pcase" "pcase-exhaustive" + "pcase-let" "pcase-let*" "save-restriction" + "save-excursion" "save-selected-window" ;; "eval-after-load" "eval-next-after-load" "save-window-excursion" "save-current-buffer" "save-match-data" "combine-after-change-calls" @@ -227,7 +233,7 @@ It has `lisp-mode-abbrev-table' as its parent." "etypecase" "ccase" "ctypecase" "loop" "do" "do*" "the" "locally" "proclaim" "declaim" "letf" "go" ;; "lexical-let" "lexical-let*" - "symbol-macrolet" "flet" "destructuring-bind" + "symbol-macrolet" "flet" "flet*" "destructuring-bind" "labels" "macrolet" "tagbody" "multiple-value-bind" "block" "return" "return-from")) (cl-lib-errs '("assert" "check-type")) @@ -558,166 +564,6 @@ font-lock keywords will not be case sensitive." map) "Keymap for commands shared by all sorts of Lisp modes.") -(defvar emacs-lisp-mode-map - (let ((map (make-sparse-keymap "Emacs-Lisp")) - (menu-map (make-sparse-keymap "Emacs-Lisp")) - (lint-map (make-sparse-keymap)) - (prof-map (make-sparse-keymap)) - (tracing-map (make-sparse-keymap))) - (set-keymap-parent map lisp-mode-shared-map) - (define-key map "\e\t" 'completion-at-point) - (define-key map "\e\C-x" 'eval-defun) - (define-key map "\e\C-q" 'indent-pp-sexp) - (bindings--define-key map [menu-bar emacs-lisp] - (cons "Emacs-Lisp" menu-map)) - (bindings--define-key menu-map [eldoc] - '(menu-item "Auto-Display Documentation Strings" eldoc-mode - :button (:toggle . (bound-and-true-p eldoc-mode)) - :help "Display the documentation string for the item under cursor")) - (bindings--define-key menu-map [checkdoc] - '(menu-item "Check Documentation Strings" checkdoc - :help "Check documentation strings for style requirements")) - (bindings--define-key menu-map [re-builder] - '(menu-item "Construct Regexp" re-builder - :help "Construct a regexp interactively")) - (bindings--define-key menu-map [tracing] (cons "Tracing" tracing-map)) - (bindings--define-key tracing-map [tr-a] - '(menu-item "Untrace All" untrace-all - :help "Untrace all currently traced functions")) - (bindings--define-key tracing-map [tr-uf] - '(menu-item "Untrace Function..." untrace-function - :help "Untrace function, and possibly activate all remaining advice")) - (bindings--define-key tracing-map [tr-sep] menu-bar-separator) - (bindings--define-key tracing-map [tr-q] - '(menu-item "Trace Function Quietly..." trace-function-background - :help "Trace the function with trace output going quietly to a buffer")) - (bindings--define-key tracing-map [tr-f] - '(menu-item "Trace Function..." trace-function - :help "Trace the function given as an argument")) - (bindings--define-key menu-map [profiling] (cons "Profiling" prof-map)) - (bindings--define-key prof-map [prof-restall] - '(menu-item "Remove Instrumentation for All Functions" elp-restore-all - :help "Restore the original definitions of all functions being profiled")) - (bindings--define-key prof-map [prof-restfunc] - '(menu-item "Remove Instrumentation for Function..." elp-restore-function - :help "Restore an instrumented function to its original definition")) - - (bindings--define-key prof-map [sep-rem] menu-bar-separator) - (bindings--define-key prof-map [prof-resall] - '(menu-item "Reset Counters for All Functions" elp-reset-all - :help "Reset the profiling information for all functions being profiled")) - (bindings--define-key prof-map [prof-resfunc] - '(menu-item "Reset Counters for Function..." elp-reset-function - :help "Reset the profiling information for a function")) - (bindings--define-key prof-map [prof-res] - '(menu-item "Show Profiling Results" elp-results - :help "Display current profiling results")) - (bindings--define-key prof-map [prof-pack] - '(menu-item "Instrument Package..." elp-instrument-package - :help "Instrument for profiling all function that start with a prefix")) - (bindings--define-key prof-map [prof-func] - '(menu-item "Instrument Function..." elp-instrument-function - :help "Instrument a function for profiling")) - ;; Maybe this should be in a separate submenu from the ELP stuff? - (bindings--define-key prof-map [sep-natprof] menu-bar-separator) - (bindings--define-key prof-map [prof-natprof-stop] - '(menu-item "Stop Native Profiler" profiler-stop - :help "Stop recording profiling information" - :enable (and (featurep 'profiler) - (profiler-running-p)))) - (bindings--define-key prof-map [prof-natprof-report] - '(menu-item "Show Profiler Report" profiler-report - :help "Show the current profiler report" - :enable (and (featurep 'profiler) - (profiler-running-p)))) - (bindings--define-key prof-map [prof-natprof-start] - '(menu-item "Start Native Profiler..." profiler-start - :help "Start recording profiling information")) - - (bindings--define-key menu-map [lint] (cons "Linting" lint-map)) - (bindings--define-key lint-map [lint-di] - '(menu-item "Lint Directory..." elint-directory - :help "Lint a directory")) - (bindings--define-key lint-map [lint-f] - '(menu-item "Lint File..." elint-file - :help "Lint a file")) - (bindings--define-key lint-map [lint-b] - '(menu-item "Lint Buffer" elint-current-buffer - :help "Lint the current buffer")) - (bindings--define-key lint-map [lint-d] - '(menu-item "Lint Defun" elint-defun - :help "Lint the function at point")) - (bindings--define-key menu-map [edebug-defun] - '(menu-item "Instrument Function for Debugging" edebug-defun - :help "Evaluate the top level form point is in, stepping through with Edebug" - :keys "C-u C-M-x")) - (bindings--define-key menu-map [separator-byte] menu-bar-separator) - (bindings--define-key menu-map [disas] - '(menu-item "Disassemble Byte Compiled Object..." disassemble - :help "Print disassembled code for OBJECT in a buffer")) - (bindings--define-key menu-map [byte-recompile] - '(menu-item "Byte-recompile Directory..." byte-recompile-directory - :help "Recompile every `.el' file in DIRECTORY that needs recompilation")) - (bindings--define-key menu-map [emacs-byte-compile-and-load] - '(menu-item "Byte-compile and Load" emacs-lisp-byte-compile-and-load - :help "Byte-compile the current file (if it has changed), then load compiled code")) - (bindings--define-key menu-map [byte-compile] - '(menu-item "Byte-compile This File" emacs-lisp-byte-compile - :help "Byte compile the file containing the current buffer")) - (bindings--define-key menu-map [separator-eval] menu-bar-separator) - (bindings--define-key menu-map [ielm] - '(menu-item "Interactive Expression Evaluation" ielm - :help "Interactively evaluate Emacs Lisp expressions")) - (bindings--define-key menu-map [eval-buffer] - '(menu-item "Evaluate Buffer" eval-buffer - :help "Execute the current buffer as Lisp code")) - (bindings--define-key menu-map [eval-region] - '(menu-item "Evaluate Region" eval-region - :help "Execute the region as Lisp code" - :enable mark-active)) - (bindings--define-key menu-map [eval-sexp] - '(menu-item "Evaluate Last S-expression" eval-last-sexp - :help "Evaluate sexp before point; print value in echo area")) - (bindings--define-key menu-map [separator-format] menu-bar-separator) - (bindings--define-key menu-map [comment-region] - '(menu-item "Comment Out Region" comment-region - :help "Comment or uncomment each line in the region" - :enable mark-active)) - (bindings--define-key menu-map [indent-region] - '(menu-item "Indent Region" indent-region - :help "Indent each nonblank line in the region" - :enable mark-active)) - (bindings--define-key menu-map [indent-line] - '(menu-item "Indent Line" lisp-indent-line)) - map) - "Keymap for Emacs Lisp mode. -All commands in `lisp-mode-shared-map' are inherited by this map.") - -(defun emacs-lisp-byte-compile () - "Byte compile the file containing the current buffer." - (interactive) - (if buffer-file-name - (byte-compile-file buffer-file-name) - (error "The buffer must be saved in a file first"))) - -(defun emacs-lisp-byte-compile-and-load () - "Byte-compile the current file (if it has changed), then load compiled code." - (interactive) - (or buffer-file-name - (error "The buffer must be saved in a file first")) - (require 'bytecomp) - ;; Recompile if file or buffer has changed since last compilation. - (if (and (buffer-modified-p) - (y-or-n-p (format "Save buffer %s first? " (buffer-name)))) - (save-buffer)) - (byte-recompile-file buffer-file-name nil 0 t)) - -(defcustom emacs-lisp-mode-hook nil - "Hook run when entering Emacs Lisp mode." - :options '(eldoc-mode imenu-add-menubar-index checkdoc-minor-mode) - :type 'hook - :group 'lisp) - (defcustom lisp-mode-hook nil "Hook run when entering Lisp mode." :options '(imenu-add-menubar-index) @@ -733,72 +579,6 @@ All commands in `lisp-mode-shared-map' are inherited by this map.") (defconst lisp--prettify-symbols-alist '(("lambda" . ?λ))) -(define-derived-mode emacs-lisp-mode prog-mode "Emacs-Lisp" - "Major mode for editing Lisp code to run in Emacs. -Commands: -Delete converts tabs to spaces as it moves back. -Blank lines separate paragraphs. Semicolons start comments. - -\\{emacs-lisp-mode-map}" - :group 'lisp - (lisp-mode-variables nil nil 'elisp) - (setq imenu-case-fold-search nil) - (add-hook 'completion-at-point-functions - 'lisp-completion-at-point nil 'local)) - -;;; Emacs Lisp Byte-Code mode - -(eval-and-compile - (defconst emacs-list-byte-code-comment-re - (concat "\\(#\\)@\\([0-9]+\\) " - ;; Make sure it's a docstring and not a lazy-loaded byte-code. - "\\(?:[^(]\\|([^\"]\\)"))) - -(defun emacs-lisp-byte-code-comment (end &optional _point) - "Try to syntactically mark the #@NNN ....^_ docstrings in byte-code files." - (let ((ppss (syntax-ppss))) - (when (and (nth 4 ppss) - (eq (char-after (nth 8 ppss)) ?#)) - (let* ((n (save-excursion - (goto-char (nth 8 ppss)) - (when (looking-at emacs-list-byte-code-comment-re) - (string-to-number (match-string 2))))) - ;; `maxdiff' tries to make sure the loop below terminates. - (maxdiff n)) - (when n - (let* ((bchar (match-end 2)) - (b (position-bytes bchar))) - (goto-char (+ b n)) - (while (let ((diff (- (position-bytes (point)) b n))) - (unless (zerop diff) - (when (> diff maxdiff) (setq diff maxdiff)) - (forward-char (- diff)) - (setq maxdiff (if (> diff 0) diff - (max (1- maxdiff) 1))) - t)))) - (if (<= (point) end) - (put-text-property (1- (point)) (point) - 'syntax-table - (string-to-syntax "> b")) - (goto-char end))))))) - -(defun emacs-lisp-byte-code-syntax-propertize (start end) - (emacs-lisp-byte-code-comment end (point)) - (funcall - (syntax-propertize-rules - (emacs-list-byte-code-comment-re - (1 (prog1 "< b" (emacs-lisp-byte-code-comment end (point)))))) - start end)) - -(add-to-list 'auto-mode-alist '("\\.elc\\'" . emacs-lisp-byte-code-mode)) -(define-derived-mode emacs-lisp-byte-code-mode emacs-lisp-mode - "Elisp-Byte-Code" - "Major mode for *.elc files." - ;; TODO: Add way to disassemble byte-code under point. - (setq-local open-paren-in-column-0-is-defun-start nil) - (setq-local syntax-propertize-function - #'emacs-lisp-byte-code-syntax-propertize)) - ;;; Generic Lisp mode. (defvar lisp-mode-map @@ -852,415 +632,6 @@ or to switch back to an existing one." (interactive) (error "Process lisp does not exist")) -(defvar lisp-interaction-mode-map - (let ((map (make-sparse-keymap)) - (menu-map (make-sparse-keymap "Lisp-Interaction"))) - (set-keymap-parent map lisp-mode-shared-map) - (define-key map "\e\C-x" 'eval-defun) - (define-key map "\e\C-q" 'indent-pp-sexp) - (define-key map "\e\t" 'completion-at-point) - (define-key map "\n" 'eval-print-last-sexp) - (bindings--define-key map [menu-bar lisp-interaction] - (cons "Lisp-Interaction" menu-map)) - (bindings--define-key menu-map [eval-defun] - '(menu-item "Evaluate Defun" eval-defun - :help "Evaluate the top-level form containing point, or after point")) - (bindings--define-key menu-map [eval-print-last-sexp] - '(menu-item "Evaluate and Print" eval-print-last-sexp - :help "Evaluate sexp before point; print value into current buffer")) - (bindings--define-key menu-map [edebug-defun-lisp-interaction] - '(menu-item "Instrument Function for Debugging" edebug-defun - :help "Evaluate the top level form point is in, stepping through with Edebug" - :keys "C-u C-M-x")) - (bindings--define-key menu-map [indent-pp-sexp] - '(menu-item "Indent or Pretty-Print" indent-pp-sexp - :help "Indent each line of the list starting just after point, or prettyprint it")) - (bindings--define-key menu-map [complete-symbol] - '(menu-item "Complete Lisp Symbol" completion-at-point - :help "Perform completion on Lisp symbol preceding point")) - map) - "Keymap for Lisp Interaction mode. -All commands in `lisp-mode-shared-map' are inherited by this map.") - -(define-derived-mode lisp-interaction-mode emacs-lisp-mode "Lisp Interaction" - "Major mode for typing and evaluating Lisp forms. -Like Lisp mode except that \\[eval-print-last-sexp] evals the Lisp expression -before point, and prints its value into the buffer, advancing point. -Note that printing is controlled by `eval-expression-print-length' -and `eval-expression-print-level'. - -Commands: -Delete converts tabs to spaces as it moves back. -Paragraphs are separated only by blank lines. -Semicolons start comments. - -\\{lisp-interaction-mode-map}" - :abbrev-table nil) - -(defun eval-print-last-sexp (&optional eval-last-sexp-arg-internal) - "Evaluate sexp before point; print value into current buffer. - -Normally, this function truncates long output according to the value -of the variables `eval-expression-print-length' and -`eval-expression-print-level'. With a prefix argument of zero, -however, there is no such truncation. Such a prefix argument -also causes integers to be printed in several additional formats -\(octal, hexadecimal, and character). - -If `eval-expression-debug-on-error' is non-nil, which is the default, -this command arranges for all errors to enter the debugger." - (interactive "P") - (let ((standard-output (current-buffer))) - (terpri) - (eval-last-sexp (or eval-last-sexp-arg-internal t)) - (terpri))) - - -(defun last-sexp-setup-props (beg end value alt1 alt2) - "Set up text properties for the output of `eval-last-sexp-1'. -BEG and END are the start and end of the output in current-buffer. -VALUE is the Lisp value printed, ALT1 and ALT2 are strings for the -alternative printed representations that can be displayed." - (let ((map (make-sparse-keymap))) - (define-key map "\C-m" 'last-sexp-toggle-display) - (define-key map [down-mouse-2] 'mouse-set-point) - (define-key map [mouse-2] 'last-sexp-toggle-display) - (add-text-properties - beg end - `(printed-value (,value ,alt1 ,alt2) - mouse-face highlight - keymap ,map - help-echo "RET, mouse-2: toggle abbreviated display" - rear-nonsticky (mouse-face keymap help-echo - printed-value))))) - - -(defun last-sexp-toggle-display (&optional _arg) - "Toggle between abbreviated and unabbreviated printed representations." - (interactive "P") - (save-restriction - (widen) - (let ((value (get-text-property (point) 'printed-value))) - (when value - (let ((beg (or (previous-single-property-change (min (point-max) (1+ (point))) - 'printed-value) - (point))) - (end (or (next-single-char-property-change (point) 'printed-value) (point))) - (standard-output (current-buffer)) - (point (point))) - (delete-region beg end) - (insert (nth 1 value)) - (or (= beg point) - (setq point (1- (point)))) - (last-sexp-setup-props beg (point) - (nth 0 value) - (nth 2 value) - (nth 1 value)) - (goto-char (min (point-max) point))))))) - -(defun prin1-char (char) - "Return a string representing CHAR as a character rather than as an integer. -If CHAR is not a character, return nil." - (and (integerp char) - (eventp char) - (let ((c (event-basic-type char)) - (mods (event-modifiers char)) - string) - ;; Prevent ?A from turning into ?\S-a. - (if (and (memq 'shift mods) - (zerop (logand char ?\S-\^@)) - (not (let ((case-fold-search nil)) - (char-equal c (upcase c))))) - (setq c (upcase c) mods nil)) - ;; What string are we considering using? - (condition-case nil - (setq string - (concat - "?" - (mapconcat - (lambda (modif) - (cond ((eq modif 'super) "\\s-") - (t (string ?\\ (upcase (aref (symbol-name modif) 0)) ?-)))) - mods "") - (cond - ((memq c '(?\; ?\( ?\) ?\{ ?\} ?\[ ?\] ?\" ?\' ?\\)) (string ?\\ c)) - ((eq c 127) "\\C-?") - (t - (string c))))) - (error nil)) - ;; Verify the string reads a CHAR, not to some other character. - ;; If it doesn't, return nil instead. - (and string - (= (car (read-from-string string)) char) - string)))) - - -(defun preceding-sexp () - "Return sexp before the point." - (let ((opoint (point)) - ignore-quotes - expr) - (save-excursion - (with-syntax-table emacs-lisp-mode-syntax-table - ;; If this sexp appears to be enclosed in `...' - ;; then ignore the surrounding quotes. - (setq ignore-quotes - (or (eq (following-char) ?\') - (eq (preceding-char) ?\'))) - (forward-sexp -1) - ;; If we were after `?\e' (or similar case), - ;; use the whole thing, not just the `e'. - (when (eq (preceding-char) ?\\) - (forward-char -1) - (when (eq (preceding-char) ??) - (forward-char -1))) - - ;; Skip over hash table read syntax. - (and (> (point) (1+ (point-min))) - (looking-back "#s" (- (point) 2)) - (forward-char -2)) - - ;; Skip over `#N='s. - (when (eq (preceding-char) ?=) - (let (labeled-p) - (save-excursion - (skip-chars-backward "0-9#=") - (setq labeled-p (looking-at "\\(#[0-9]+=\\)+"))) - (when labeled-p - (forward-sexp -1)))) - - (save-restriction - (if (and ignore-quotes (eq (following-char) ?`)) - ;; vladimir@cs.ualberta.ca 30-Jul-1997: Skip ` in `variable' so - ;; that the value is returned, not the name. - (forward-char)) - (when (looking-at ",@?") (goto-char (match-end 0))) - (narrow-to-region (point-min) opoint) - (setq expr (read (current-buffer))) - ;; If it's an (interactive ...) form, it's more useful to show how an - ;; interactive call would use it. - ;; FIXME: Is it really the right place for this? - (when (eq (car-safe expr) 'interactive) - (setq expr - `(call-interactively - (lambda (&rest args) ,expr args)))) - expr))))) - - -(defun eval-last-sexp-1 (eval-last-sexp-arg-internal) - "Evaluate sexp before point; print value in the echo area. -With argument, print output into current buffer. -With a zero prefix arg, print output with no limit on the length -and level of lists, and include additional formats for integers -\(octal, hexadecimal, and character)." - (let ((standard-output (if eval-last-sexp-arg-internal (current-buffer) t))) - ;; Setup the lexical environment if lexical-binding is enabled. - (eval-last-sexp-print-value - (eval (eval-sexp-add-defvars (preceding-sexp)) lexical-binding) - eval-last-sexp-arg-internal))) - - -(defun eval-last-sexp-print-value (value &optional eval-last-sexp-arg-internal) - (let ((unabbreviated (let ((print-length nil) (print-level nil)) - (prin1-to-string value))) - (print-length (and (not (zerop (prefix-numeric-value - eval-last-sexp-arg-internal))) - eval-expression-print-length)) - (print-level (and (not (zerop (prefix-numeric-value - eval-last-sexp-arg-internal))) - eval-expression-print-level)) - (beg (point)) - end) - (prog1 - (prin1 value) - (let ((str (eval-expression-print-format value))) - (if str (princ str))) - (setq end (point)) - (when (and (bufferp standard-output) - (or (not (null print-length)) - (not (null print-level))) - (not (string= unabbreviated - (buffer-substring-no-properties beg end)))) - (last-sexp-setup-props beg end value - unabbreviated - (buffer-substring-no-properties beg end)) - )))) - - -(defvar eval-last-sexp-fake-value (make-symbol "t")) - -(defun eval-sexp-add-defvars (exp &optional pos) - "Prepend EXP with all the `defvar's that precede it in the buffer. -POS specifies the starting position where EXP was found and defaults to point." - (setq exp (macroexpand-all exp)) ;Eager macro-expansion. - (if (not lexical-binding) - exp - (save-excursion - (unless pos (setq pos (point))) - (let ((vars ())) - (goto-char (point-min)) - (while (re-search-forward - "(def\\(?:var\\|const\\|custom\\)[ \t\n]+\\([^; '()\n\t]+\\)" - pos t) - (let ((var (intern (match-string 1)))) - (and (not (special-variable-p var)) - (save-excursion - (zerop (car (syntax-ppss (match-beginning 0))))) - (push var vars)))) - `(progn ,@(mapcar (lambda (v) `(defvar ,v)) vars) ,exp))))) - -(defun eval-last-sexp (eval-last-sexp-arg-internal) - "Evaluate sexp before point; print value in the echo area. -Interactively, with prefix argument, print output into current buffer. - -Normally, this function truncates long output according to the value -of the variables `eval-expression-print-length' and -`eval-expression-print-level'. With a prefix argument of zero, -however, there is no such truncation. Such a prefix argument -also causes integers to be printed in several additional formats -\(octal, hexadecimal, and character). - -If `eval-expression-debug-on-error' is non-nil, which is the default, -this command arranges for all errors to enter the debugger." - (interactive "P") - (if (null eval-expression-debug-on-error) - (eval-last-sexp-1 eval-last-sexp-arg-internal) - (let ((value - (let ((debug-on-error eval-last-sexp-fake-value)) - (cons (eval-last-sexp-1 eval-last-sexp-arg-internal) - debug-on-error)))) - (unless (eq (cdr value) eval-last-sexp-fake-value) - (setq debug-on-error (cdr value))) - (car value)))) - -(defun eval-defun-1 (form) - "Treat some expressions specially. -Reset the `defvar' and `defcustom' variables to the initial value. -\(For `defcustom', use the :set function if there is one.) -Reinitialize the face according to the `defface' specification." - ;; The code in edebug-defun should be consistent with this, but not - ;; the same, since this gets a macroexpanded form. - (cond ((not (listp form)) - form) - ((and (eq (car form) 'defvar) - (cdr-safe (cdr-safe form)) - (boundp (cadr form))) - ;; Force variable to be re-set. - `(progn (defvar ,(nth 1 form) nil ,@(nthcdr 3 form)) - (setq-default ,(nth 1 form) ,(nth 2 form)))) - ;; `defcustom' is now macroexpanded to - ;; `custom-declare-variable' with a quoted value arg. - ((and (eq (car form) 'custom-declare-variable) - (default-boundp (eval (nth 1 form) lexical-binding))) - ;; Force variable to be bound, using :set function if specified. - (let ((setfunc (memq :set form))) - (when setfunc - (setq setfunc (car-safe (cdr-safe setfunc))) - (or (functionp setfunc) (setq setfunc nil))) - (funcall (or setfunc 'set-default) - (eval (nth 1 form) lexical-binding) - ;; The second arg is an expression that evaluates to - ;; an expression. The second evaluation is the one - ;; normally performed not by normal execution but by - ;; custom-initialize-set (for example), which does not - ;; use lexical-binding. - (eval (eval (nth 2 form) lexical-binding)))) - form) - ;; `defface' is macroexpanded to `custom-declare-face'. - ((eq (car form) 'custom-declare-face) - ;; Reset the face. - (let ((face-symbol (eval (nth 1 form) lexical-binding))) - (setq face-new-frame-defaults - (assq-delete-all face-symbol face-new-frame-defaults)) - (put face-symbol 'face-defface-spec nil) - (put face-symbol 'face-override-spec nil)) - form) - ((eq (car form) 'progn) - (cons 'progn (mapcar 'eval-defun-1 (cdr form)))) - (t form))) - -(defun eval-defun-2 () - "Evaluate defun that point is in or before. -The value is displayed in the echo area. -If the current defun is actually a call to `defvar', -then reset the variable using the initial value expression -even if the variable already has some other value. -\(Normally `defvar' does not change the variable's value -if it already has a value.\) - -Return the result of evaluation." - ;; FIXME: the print-length/level bindings should only be applied while - ;; printing, not while evaluating. - (let ((debug-on-error eval-expression-debug-on-error) - (print-length eval-expression-print-length) - (print-level eval-expression-print-level)) - (save-excursion - ;; Arrange for eval-region to "read" the (possibly) altered form. - ;; eval-region handles recording which file defines a function or - ;; variable. - (let ((standard-output t) - beg end form) - ;; Read the form from the buffer, and record where it ends. - (save-excursion - (end-of-defun) - (beginning-of-defun) - (setq beg (point)) - (setq form (read (current-buffer))) - (setq end (point))) - ;; Alter the form if necessary. - (let ((form (eval-sexp-add-defvars - (eval-defun-1 (macroexpand form))))) - (eval-region beg end standard-output - (lambda (_ignore) - ;; Skipping to the end of the specified region - ;; will make eval-region return. - (goto-char end) - form)))))) - (let ((str (eval-expression-print-format (car values)))) - (if str (princ str))) - ;; The result of evaluation has been put onto VALUES. So return it. - (car values)) - -(defun eval-defun (edebug-it) - "Evaluate the top-level form containing point, or after point. - -If the current defun is actually a call to `defvar' or `defcustom', -evaluating it this way resets the variable using its initial value -expression (using the defcustom's :set function if there is one), even -if the variable already has some other value. \(Normally `defvar' and -`defcustom' do not alter the value if there already is one.) In an -analogous way, evaluating a `defface' overrides any customizations of -the face, so that it becomes defined exactly as the `defface' expression -says. - -If `eval-expression-debug-on-error' is non-nil, which is the default, -this command arranges for all errors to enter the debugger. - -With a prefix argument, instrument the code for Edebug. - -If acting on a `defun' for FUNCTION, and the function was -instrumented, `Edebug: FUNCTION' is printed in the echo area. If not -instrumented, just FUNCTION is printed. - -If not acting on a `defun', the result of evaluation is displayed in -the echo area. This display is controlled by the variables -`eval-expression-print-length' and `eval-expression-print-level', -which see." - (interactive "P") - (cond (edebug-it - (require 'edebug) - (eval-defun (not edebug-all-defs))) - (t - (if (null eval-expression-debug-on-error) - (eval-defun-2) - (let ((old-value (make-symbol "t")) new-value value) - (let ((debug-on-error old-value)) - (setq value (eval-defun-2)) - (setq new-value debug-on-error)) - (unless (eq old-value new-value) - (setq debug-on-error new-value)) - value))))) - ;; May still be used by some external Lisp-mode variant. (define-obsolete-function-alias 'lisp-comment-indent 'comment-indent-default "22.1") @@ -1583,19 +954,21 @@ Lisp function does not specify a special indentation." ;; like defun if the first form is placed on the next line, otherwise ;; it is indented like any other form (i.e. forms line up under first). -(put 'autoload 'lisp-indent-function 'defun) +(put 'autoload 'lisp-indent-function 'defun) ;Elisp (put 'progn 'lisp-indent-function 0) (put 'prog1 'lisp-indent-function 1) (put 'prog2 'lisp-indent-function 2) -(put 'save-excursion 'lisp-indent-function 0) -(put 'save-restriction 'lisp-indent-function 0) -(put 'save-current-buffer 'lisp-indent-function 0) +(put 'save-excursion 'lisp-indent-function 0) ;Elisp +(put 'save-restriction 'lisp-indent-function 0) ;Elisp +(put 'save-current-buffer 'lisp-indent-function 0) ;Elisp (put 'let 'lisp-indent-function 1) (put 'let* 'lisp-indent-function 1) (put 'while 'lisp-indent-function 1) (put 'if 'lisp-indent-function 2) (put 'catch 'lisp-indent-function 1) (put 'condition-case 'lisp-indent-function 2) +(put 'handler-case 'lisp-indent-function 1) ;CL +(put 'handler-bind 'lisp-indent-function 1) ;CL (put 'unwind-protect 'lisp-indent-function 1) (put 'with-output-to-temp-buffer 'lisp-indent-function 1) diff --git a/lisp/emacs-lisp/lisp.el b/lisp/emacs-lisp/lisp.el index 30fee64635c..31682d036bf 100644 --- a/lisp/emacs-lisp/lisp.el +++ b/lisp/emacs-lisp/lisp.el @@ -758,247 +758,4 @@ considered." (completion-in-region (nth 0 data) (nth 1 data) (nth 2 data) (plist-get plist :predicate)))))) -(defun lisp--local-variables-1 (vars sexp) - "Return the vars locally bound around the witness, or nil if not found." - (let (res) - (while - (unless - (setq res - (pcase sexp - (`(,(or `let `let*) ,bindings) - (let ((vars vars)) - (when (eq 'let* (car sexp)) - (dolist (binding (cdr (reverse bindings))) - (push (or (car-safe binding) binding) vars))) - (lisp--local-variables-1 - vars (car (cdr-safe (car (last bindings))))))) - (`(,(or `let `let*) ,bindings . ,body) - (let ((vars vars)) - (dolist (binding bindings) - (push (or (car-safe binding) binding) vars)) - (lisp--local-variables-1 vars (car (last body))))) - (`(lambda ,_) (setq sexp nil)) - (`(lambda ,args . ,body) - (lisp--local-variables-1 - (append args vars) (car (last body)))) - (`(condition-case ,_ ,e) (lisp--local-variables-1 vars e)) - (`(condition-case ,v ,_ . ,catches) - (lisp--local-variables-1 - (cons v vars) (cdr (car (last catches))))) - (`(,_ . ,_) - (lisp--local-variables-1 vars (car (last sexp)))) - (`lisp--witness--lisp (or vars '(nil))) - (_ nil))) - (setq sexp (ignore-errors (butlast sexp))))) - res)) - -(defun lisp--local-variables () - "Return a list of locally let-bound variables at point." - (save-excursion - (skip-syntax-backward "w_") - (let* ((ppss (syntax-ppss)) - (txt (buffer-substring-no-properties (or (car (nth 9 ppss)) (point)) - (or (nth 8 ppss) (point)))) - (closer ())) - (dolist (p (nth 9 ppss)) - (push (cdr (syntax-after p)) closer)) - (setq closer (apply #'string closer)) - (let* ((sexp (condition-case nil - (car (read-from-string - (concat txt "lisp--witness--lisp" closer))) - (end-of-file nil))) - (macroexpand-advice (lambda (expander form &rest args) - (condition-case nil - (apply expander form args) - (error form)))) - (sexp - (unwind-protect - (progn - (advice-add 'macroexpand :around macroexpand-advice) - (macroexpand-all sexp)) - (advice-remove 'macroexpand macroexpand-advice))) - (vars (lisp--local-variables-1 nil sexp))) - (delq nil - (mapcar (lambda (var) - (and (symbolp var) - (not (string-match (symbol-name var) "\\`[&_]")) - ;; Eliminate uninterned vars. - (intern-soft var) - var)) - vars)))))) - -(defvar lisp--local-variables-completion-table - ;; Use `defvar' rather than `defconst' since defconst would purecopy this - ;; value, which would doubly fail: it would fail because purecopy can't - ;; handle the recursive bytecode object, and it would fail because it would - ;; move `lastpos' and `lastvars' to pure space where they'd be immutable! - (let ((lastpos nil) (lastvars nil)) - (letrec ((hookfun (lambda () - (setq lastpos nil) - (remove-hook 'post-command-hook hookfun)))) - (completion-table-dynamic - (lambda (_string) - (save-excursion - (skip-syntax-backward "_w") - (let ((newpos (cons (point) (current-buffer)))) - (unless (equal lastpos newpos) - (add-hook 'post-command-hook hookfun) - (setq lastpos newpos) - (setq lastvars - (mapcar #'symbol-name (lisp--local-variables)))))) - lastvars))))) - -;; FIXME: Support for Company brings in features which straddle eldoc. -;; We should consolidate this, so that major modes can provide all that -;; data all at once: -;; - a function to extract "the reference at point" (may be more complex -;; than a mere string, to distinguish various namespaces). -;; - a function to jump to such a reference. -;; - a function to show the signature/interface of such a reference. -;; - a function to build a help-buffer about that reference. -;; FIXME: Those functions should also be used by the normal completion code in -;; the *Completions* buffer. - -(defun lisp--company-doc-buffer (str) - (let ((symbol (intern-soft str))) - ;; FIXME: we really don't want to "display-buffer and then undo it". - (save-window-excursion - ;; Make sure we don't display it in another frame, otherwise - ;; save-window-excursion won't be able to undo it. - (let ((display-buffer-overriding-action - '(nil . ((inhibit-switch-frame . t))))) - (ignore-errors - (cond - ((fboundp symbol) (describe-function symbol)) - ((boundp symbol) (describe-variable symbol)) - ((featurep symbol) (describe-package symbol)) - ((facep symbol) (describe-face symbol)) - (t (signal 'user-error nil))) - (help-buffer)))))) - -(defun lisp--company-doc-string (str) - (let* ((symbol (intern-soft str)) - (doc (if (fboundp symbol) - (documentation symbol t) - (documentation-property symbol 'variable-documentation t)))) - (and (stringp doc) - (string-match ".*$" doc) - (match-string 0 doc)))) - -(declare-function find-library-name "find-func" (library)) - -(defun lisp--company-location (str) - (let ((sym (intern-soft str))) - (cond - ((fboundp sym) (find-definition-noselect sym nil)) - ((boundp sym) (find-definition-noselect sym 'defvar)) - ((featurep sym) - (require 'find-func) - (cons (find-file-noselect (find-library-name - (symbol-name sym))) - 0)) - ((facep sym) (find-definition-noselect sym 'defface))))) - -(defun lisp-completion-at-point (&optional _predicate) - "Function used for `completion-at-point-functions' in `emacs-lisp-mode'." - (with-syntax-table emacs-lisp-mode-syntax-table - (let* ((pos (point)) - (beg (condition-case nil - (save-excursion - (backward-sexp 1) - (skip-syntax-forward "'") - (point)) - (scan-error pos))) - (end - (unless (or (eq beg (point-max)) - (member (char-syntax (char-after beg)) - '(?\s ?\" ?\( ?\)))) - (condition-case nil - (save-excursion - (goto-char beg) - (forward-sexp 1) - (when (>= (point) pos) - (point))) - (scan-error pos)))) - (funpos (eq (char-before beg) ?\()) ;t if in function position. - (table-etc - (if (not funpos) - ;; FIXME: We could look at the first element of the list and - ;; use it to provide a more specific completion table in some - ;; cases. E.g. filter out keywords that are not understood by - ;; the macro/function being called. - (list nil (completion-table-merge - lisp--local-variables-completion-table - (apply-partially #'completion-table-with-predicate - obarray - ;; Don't include all symbols - ;; (bug#16646). - (lambda (sym) - (or (boundp sym) - (fboundp sym) - (symbol-plist sym))) - 'strict)) - :annotation-function - (lambda (str) (if (fboundp (intern-soft str)) " <f>")) - :company-doc-buffer #'lisp--company-doc-buffer - :company-docsig #'lisp--company-doc-string - :company-location #'lisp--company-location) - ;; Looks like a funcall position. Let's double check. - (save-excursion - (goto-char (1- beg)) - (let ((parent - (condition-case nil - (progn (up-list -1) (forward-char 1) - (let ((c (char-after))) - (if (eq c ?\() ?\( - (if (memq (char-syntax c) '(?w ?_)) - (read (current-buffer)))))) - (error nil)))) - (pcase parent - ;; FIXME: Rather than hardcode special cases here, - ;; we should use something like a symbol-property. - (`declare - (list t (mapcar (lambda (x) (symbol-name (car x))) - (delete-dups - ;; FIXME: We should include some - ;; docstring with each entry. - (append - macro-declarations-alist - defun-declarations-alist))))) - ((and (or `condition-case `condition-case-unless-debug) - (guard (save-excursion - (ignore-errors - (forward-sexp 2) - (< (point) beg))))) - (list t obarray - :predicate (lambda (sym) (get sym 'error-conditions)))) - ((and ?\( - (guard (save-excursion - (goto-char (1- beg)) - (up-list -1) - (forward-symbol -1) - (looking-at "\\_<let\\*?\\_>")))) - (list t obarray - :predicate #'boundp - :company-doc-buffer #'lisp--company-doc-buffer - :company-docsig #'lisp--company-doc-string - :company-location #'lisp--company-location)) - (_ (list nil obarray - :predicate #'fboundp - :company-doc-buffer #'lisp--company-doc-buffer - :company-docsig #'lisp--company-doc-string - :company-location #'lisp--company-location - )))))))) - (when end - (let ((tail (if (null (car table-etc)) - (cdr table-etc) - (cons - (if (memq (char-syntax (or (char-after end) ?\s)) - '(?\s ?>)) - (cadr table-etc) - (apply-partially 'completion-table-with-terminator - " " (cadr table-etc))) - (cddr table-etc))))) - `(,beg ,end ,@tail)))))) - ;;; lisp.el ends here diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el index 4d7ed8f121c..10944f81534 100644 --- a/lisp/emacs-lisp/package.el +++ b/lisp/emacs-lisp/package.el @@ -289,7 +289,11 @@ contrast, `package-user-dir' contains packages for personal use." :group 'package :version "24.1") -(defcustom package-check-signature 'allow-unsigned +(defvar epg-gpg-program) + +(defcustom package-check-signature + (if (progn (require 'epg-config) (executable-find epg-gpg-program)) + 'allow-unsigned) "Non-nil means to check package signatures when installing. The value `allow-unsigned' means to still install a package even if it is unsigned. @@ -689,11 +693,9 @@ untar into a directory named DIR; otherwise, signal an error." (error "Package does not untar cleanly into directory %s/" dir))))) (tar-untar-buffer)) -(defun package-generate-description-file (pkg-desc pkg-dir) +(defun package-generate-description-file (pkg-desc pkg-file) "Create the foo-pkg.el file for single-file packages." - (let* ((name (package-desc-name pkg-desc)) - (pkg-file (expand-file-name (package--description-file pkg-dir) - pkg-dir))) + (let* ((name (package-desc-name pkg-desc))) (let ((print-level nil) (print-quoted t) (print-length nil)) @@ -714,25 +716,20 @@ untar into a directory named DIR; otherwise, signal an error." (list (car elt) (package-version-join (cadr elt)))) requires)))) - (let ((alist (package-desc-extras pkg-desc)) - flat) - (while alist - (let* ((pair (pop alist)) - (key (car pair)) - (val (cdr pair))) - ;; Don't bother ‘quote’ing ‘key’; it is always a keyword. - (push key flat) - (push (if (and (not (consp val)) - (or (keywordp val) - (not (symbolp val)) - (memq val '(nil t)))) - val - `',val) - flat))) - (nreverse flat)))) + (package--alist-to-plist-args + (package-desc-extras pkg-desc)))) "\n") nil pkg-file nil 'silent)))) +(defun package--alist-to-plist-args (alist) + (mapcar (lambda (x) + (if (and (not (consp x)) + (or (keywordp x) + (not (symbolp x)) + (memq x '(nil t)))) + x `',x)) + (apply #'nconc + (mapcar (lambda (pair) (list (car pair) (cdr pair))) alist)))) (defun package-unpack (pkg-desc) "Install the contents of the current buffer as a package." (let* ((name (package-desc-name pkg-desc)) @@ -764,9 +761,10 @@ untar into a directory named DIR; otherwise, signal an error." (defun package--make-autoloads-and-stuff (pkg-desc pkg-dir) "Generate autoloads, description file, etc.. for PKG-DESC installed at PKG-DIR." (package-generate-autoloads (package-desc-name pkg-desc) pkg-dir) - (let ((desc-file (package--description-file pkg-dir))) + (let ((desc-file (expand-file-name (package--description-file pkg-dir) + pkg-dir))) (unless (file-exists-p desc-file) - (package-generate-description-file pkg-desc pkg-dir))) + (package-generate-description-file pkg-desc desc-file))) ;; FIXME: Create foo.info and dir file from foo.texi? ) @@ -1303,7 +1301,8 @@ similar to an entry in `package-alist'. Save the cached copy to (setq file (expand-file-name file)) (let ((context (epg-make-context 'OpenPGP)) (homedir (expand-file-name "gnupg" package-user-dir))) - (make-directory homedir t) + (with-file-modes 448 + (make-directory homedir t)) (epg-context-set-home-directory context homedir) (message "Importing %s..." (file-name-nondirectory file)) (epg-import-keys-from-file context file) @@ -1320,12 +1319,12 @@ makes them available for download." (make-directory package-user-dir t)) (let ((default-keyring (expand-file-name "package-keyring.gpg" data-directory))) - (if (file-exists-p default-keyring) - (condition-case-unless-debug error - (progn - (epg-check-configuration (epg-configuration)) - (package-import-keyring default-keyring)) - (error (message "Cannot import default keyring: %S" (cdr error)))))) + (when (and package-check-signature (file-exists-p default-keyring)) + (condition-case-unless-debug error + (progn + (epg-check-configuration (epg-configuration)) + (package-import-keyring default-keyring)) + (error (message "Cannot import default keyring: %S" (cdr error)))))) (dolist (archive package-archives) (condition-case-unless-debug nil (package--download-one-archive archive "archive-contents") diff --git a/lisp/emacs-lisp/pcase.el b/lisp/emacs-lisp/pcase.el index 2cdb7b4987e..753cd3005e6 100644 --- a/lisp/emacs-lisp/pcase.el +++ b/lisp/emacs-lisp/pcase.el @@ -68,6 +68,8 @@ (defconst pcase--dontcare-upats '(t _ pcase--dontcare)) +(defvar pcase--dontwarn-upats '(pcase--dontcare)) + (def-edebug-spec pcase-UPAT (&or symbolp @@ -100,26 +102,31 @@ UPatterns can take the following forms: SYMBOL matches anything and binds it to SYMBOL. (or UPAT...) matches if any of the patterns matches. (and UPAT...) matches if all the patterns match. + 'VAL matches if the object is `equal' to VAL `QPAT matches if the QPattern QPAT matches. - (pred PRED) matches if PRED applied to the object returns non-nil. + (pred FUN) matches if FUN applied to the object returns non-nil. (guard BOOLEXP) matches if BOOLEXP evaluates to non-nil. (let UPAT EXP) matches if EXP matches UPAT. + (app FUN UPAT) matches if FUN applied to the object matches UPAT. If a SYMBOL is used twice in the same pattern (i.e. the pattern is \"non-linear\"), then the second occurrence is turned into an `eq'uality test. QPatterns can take the following forms: - (QPAT1 . QPAT2) matches if QPAT1 matches the car and QPAT2 the cdr. - ,UPAT matches if the UPattern UPAT matches. - STRING matches if the object is `equal' to STRING. - ATOM matches if the object is `eq' to ATOM. -QPatterns for vectors are not implemented yet. - -PRED can take the form - FUNCTION in which case it gets called with one argument. - (FUN ARG1 .. ARGN) in which case it gets called with an N+1'th argument + (QPAT1 . QPAT2) matches if QPAT1 matches the car and QPAT2 the cdr. + [QPAT1 QPAT2..QPATn] matches a vector of length n and QPAT1..QPATn match + its 0..(n-1)th elements, respectively. + ,UPAT matches if the UPattern UPAT matches. + STRING matches if the object is `equal' to STRING. + ATOM matches if the object is `eq' to ATOM. + +FUN can take the form + SYMBOL or (lambda ARGS BODY) in which case it's called with one argument. + (F ARG1 .. ARGn) in which case F gets called with an n+1'th argument which is the value being matched. -A PRED of the form FUNCTION is equivalent to one of the form (FUNCTION). -PRED patterns can refer to variables bound earlier in the pattern. +So a FUN of the form SYMBOL is equivalent to one of the form (FUN). +FUN can refer to variables bound earlier in the pattern. +FUN is assumed to be pure, i.e. it can be dropped if its result is not used, +and two identical calls can be merged into one. E.g. you can match pairs where the cdr is larger than the car with a pattern like `(,a . ,(pred (< a))) or, with more checks: `(,(and a (pred numberp)) . ,(and (pred numberp) (pred (< a))))" @@ -147,6 +154,16 @@ like `(,a . ,(pred (< a))) or, with more checks: ;; (puthash (car cases) `(,exp ,cases ,@expansion) pcase--memoize-2) expansion)))) +;;;###autoload +(defmacro pcase-exhaustive (exp &rest cases) + "The exhaustive version of `pcase' (which see)." + (declare (indent 1) (debug pcase)) + (let* ((x (make-symbol "x")) + (pcase--dontwarn-upats (cons x pcase--dontwarn-upats))) + (pcase--expand + ;; FIXME: Could we add the FILE:LINE data in the error message? + exp (append cases `((,x (error "No clause matching `%S'" ,x))))))) + (defun pcase--let* (bindings body) (cond ((null bindings) (macroexp-progn body)) @@ -265,7 +282,7 @@ of the form (UPAT EXP)." (main (pcase--u (mapcar (lambda (case) - `((match ,val . ,(car case)) + `(,(pcase--match val (pcase--macroexpand (car case))) ,(lambda (vars) (unless (memq case used-cases) ;; Keep track of the cases that are used. @@ -279,10 +296,50 @@ of the form (UPAT EXP)." vars)))) cases)))) (dolist (case cases) - (unless (or (memq case used-cases) (eq (car case) 'pcase--dontcare)) + (unless (or (memq case used-cases) + (memq (car case) pcase--dontwarn-upats)) (message "Redundant pcase pattern: %S" (car case)))) (macroexp-let* defs main)))) +(defun pcase--macroexpand (pat) + "Expands all macro-patterns in PAT." + (let ((head (car-safe pat))) + (cond + ((null head) + (if (pcase--self-quoting-p pat) `',pat pat)) + ((memq head '(pred guard quote)) pat) + ((memq head '(or and)) `(,head ,@(mapcar #'pcase--macroexpand (cdr pat)))) + ((eq head 'let) `(let ,(pcase--macroexpand (cadr pat)) ,@(cddr pat))) + ((eq head 'app) `(app ,(nth 1 pat) ,(pcase--macroexpand (nth 2 pat)))) + (t + (let* ((expander (get head 'pcase-macroexpander)) + (npat (if expander (apply expander (cdr pat))))) + (if (null npat) + (error (if expander + "Unexpandable %s pattern: %S" + "Unknown %s pattern: %S") + head pat) + (pcase--macroexpand npat))))))) + +;;;###autoload +(defmacro pcase-defmacro (name args &rest body) + "Define a pcase UPattern macro." + (declare (indent 2) (debug (def-name sexp def-body)) (doc-string 3)) + `(put ',name 'pcase-macroexpander + (lambda ,args ,@body))) + +(defun pcase--match (val upat) + "Build a MATCH structure, hoisting all `or's and `and's outside." + (cond + ;; Hoist or/and patterns into or/and matches. + ((memq (car-safe upat) '(or and)) + `(,(car upat) + ,@(mapcar (lambda (upat) + (pcase--match val upat)) + (cdr upat)))) + (t + `(match ,val . ,upat)))) + (defun pcase-codegen (code vars) ;; Don't use let*, otherwise macroexp-let* may merge it with some surrounding ;; let* which might prevent the setcar/setcdr in pcase--expand's fancy @@ -306,11 +363,6 @@ of the form (UPAT EXP)." ((eq then :pcase--dontcare) (debug) else) ;Can/should this ever happen? (t (macroexp-if test then else)))) -(defun pcase--upat (qpattern) - (cond - ((eq (car-safe qpattern) '\,) (cadr qpattern)) - (t (list '\` qpattern)))) - ;; Note about MATCH: ;; When we have patterns like `(PAT1 . PAT2), after performing the `consp' ;; check, we want to turn all the similar patterns into ones of the form @@ -383,21 +435,12 @@ MATCH is the pattern that needs to be matched, of the form: (defun pcase--split-match (sym splitter match) (cond - ((eq (car match) 'match) + ((eq (car-safe match) 'match) (if (not (eq sym (cadr match))) (cons match match) - (let ((pat (cddr match))) - (cond - ;; Hoist `or' and `and' patterns to `or' and `and' matches. - ((memq (car-safe pat) '(or and)) - (pcase--split-match sym splitter - (cons (car pat) - (mapcar (lambda (alt) - `(match ,sym . ,alt)) - (cdr pat))))) - (t (let ((res (funcall splitter (cddr match)))) - (cons (or (car res) match) (or (cdr res) match)))))))) - ((memq (car match) '(or and)) + (let ((res (funcall splitter (cddr match)))) + (cons (or (car res) match) (or (cdr res) match))))) + ((memq (car-safe match) '(or and)) (let ((then-alts '()) (else-alts '()) (neutral-elem (if (eq 'or (car match)) @@ -417,6 +460,7 @@ MATCH is the pattern that needs to be matched, of the form: ((null else-alts) neutral-elem) ((null (cdr else-alts)) (car else-alts)) (t (cons (car match) (nreverse else-alts))))))) + ((memq match '(:pcase--succeed :pcase--fail)) (cons match match)) (t (error "Uknown MATCH %s" match)))) (defun pcase--split-rest (sym splitter rest) @@ -433,27 +477,13 @@ MATCH is the pattern that needs to be matched, of the form: (push (cons (cdr split) code&vars) else-rest)))) (cons (nreverse then-rest) (nreverse else-rest)))) -(defun pcase--split-consp (syma symd pat) - (cond - ;; A QPattern for a cons, can only go the `then' side. - ((and (eq (car-safe pat) '\`) (consp (cadr pat))) - (let ((qpat (cadr pat))) - (cons `(and (match ,syma . ,(pcase--upat (car qpat))) - (match ,symd . ,(pcase--upat (cdr qpat)))) - :pcase--fail))) - ;; A QPattern but not for a cons, can only go to the `else' side. - ((eq (car-safe pat) '\`) '(:pcase--fail . nil)) - ((and (eq (car-safe pat) 'pred) - (pcase--mutually-exclusive-p #'consp (cadr pat))) - '(:pcase--fail . nil)))) - (defun pcase--split-equal (elem pat) (cond ;; The same match will give the same result. - ((and (eq (car-safe pat) '\`) (equal (cadr pat) elem)) + ((and (eq (car-safe pat) 'quote) (equal (cadr pat) elem)) '(:pcase--succeed . :pcase--fail)) ;; A different match will fail if this one succeeds. - ((and (eq (car-safe pat) '\`) + ((and (eq (car-safe pat) 'quote) ;; (or (integerp (cadr pat)) (symbolp (cadr pat)) ;; (consp (cadr pat))) ) @@ -467,6 +497,7 @@ MATCH is the pattern that needs to be matched, of the form: '(:pcase--fail . nil)))))) (defun pcase--split-member (elems pat) + ;; FIXME: The new pred-based member code doesn't do these optimizations! ;; Based on pcase--split-equal. (cond ;; The same match (or a match of membership in a superset) will @@ -474,10 +505,10 @@ MATCH is the pattern that needs to be matched, of the form: ;; (??? ;; '(:pcase--succeed . nil)) ;; A match for one of the elements may succeed or fail. - ((and (eq (car-safe pat) '\`) (member (cadr pat) elems)) + ((and (eq (car-safe pat) 'quote) (member (cadr pat) elems)) nil) ;; A different match will fail if this one succeeds. - ((and (eq (car-safe pat) '\`) + ((and (eq (car-safe pat) 'quote) ;; (or (integerp (cadr pat)) (symbolp (cadr pat)) ;; (consp (cadr pat))) ) @@ -508,7 +539,7 @@ MATCH is the pattern that needs to be matched, of the form: ((and (eq 'pred (car upat)) (let ((otherpred (cond ((eq 'pred (car-safe pat)) (cadr pat)) - ((not (eq '\` (car-safe pat))) nil) + ((not (eq 'quote (car-safe pat))) nil) ((consp (cadr pat)) #'consp) ((vectorp (cadr pat)) #'vectorp) ((byte-code-function-p (cadr pat)) @@ -516,7 +547,7 @@ MATCH is the pattern that needs to be matched, of the form: (pcase--mutually-exclusive-p (cadr upat) otherpred))) '(:pcase--fail . nil)) ((and (eq 'pred (car upat)) - (eq '\` (car-safe pat)) + (eq 'quote (car-safe pat)) (symbolp (cadr upat)) (or (symbolp (cadr pat)) (stringp (cadr pat)) (numberp (cadr pat))) (get (cadr upat) 'side-effect-free) @@ -538,10 +569,71 @@ MATCH is the pattern that needs to be matched, of the form: (defun pcase--self-quoting-p (upat) (or (keywordp upat) (numberp upat) (stringp upat))) +(defun pcase--app-subst-match (match sym fun nsym) + (cond + ((eq (car-safe match) 'match) + (if (and (eq sym (cadr match)) + (eq 'app (car-safe (cddr match))) + (equal fun (nth 1 (cddr match)))) + (pcase--match nsym (nth 2 (cddr match))) + match)) + ((memq (car-safe match) '(or and)) + `(,(car match) + ,@(mapcar (lambda (match) + (pcase--app-subst-match match sym fun nsym)) + (cdr match)))) + ((memq match '(:pcase--succeed :pcase--fail)) match) + (t (error "Uknown MATCH %s" match)))) + +(defun pcase--app-subst-rest (rest sym fun nsym) + (mapcar (lambda (branch) + `(,(pcase--app-subst-match (car branch) sym fun nsym) + ,@(cdr branch))) + rest)) + (defsubst pcase--mark-used (sym) ;; Exceptionally, `sym' may be a constant expression rather than a symbol. (if (symbolp sym) (put sym 'pcase-used t))) +(defmacro pcase--flip (fun arg1 arg2) + "Helper function, used internally to avoid (funcall (lambda ...) ...)." + (declare (debug (sexp body))) + `(,fun ,arg2 ,arg1)) + +(defun pcase--funcall (fun arg vars) + "Build a function call to FUN with arg ARG." + (if (symbolp fun) + `(,fun ,arg) + (let* (;; `vs' is an upper bound on the vars we need. + (vs (pcase--fgrep (mapcar #'car vars) fun)) + (env (mapcar (lambda (var) + (list var (cdr (assq var vars)))) + vs)) + (call (progn + (when (memq arg vs) + ;; `arg' is shadowed by `env'. + (let ((newsym (make-symbol "x"))) + (push (list newsym arg) env) + (setq arg newsym))) + (if (functionp fun) + `(funcall #',fun ,arg) + `(,@fun ,arg))))) + (if (null vs) + call + ;; Let's not replace `vars' in `fun' since it's + ;; too difficult to do it right, instead just + ;; let-bind `vars' around `fun'. + `(let* ,env ,call))))) + +(defun pcase--eval (exp vars) + "Build an expression that will evaluate EXP." + (let* ((found (assq exp vars))) + (if found (cdr found) + (let* ((vs (pcase--fgrep (mapcar #'car vars) exp)) + (env (mapcar (lambda (v) (list v (cdr (assq v vars)))) + vs))) + (if env (macroexp-let* env exp) exp))))) + ;; It's very tempting to use `pcase' below, tho obviously, it'd create ;; bootstrapping problems. (defun pcase--u1 (matches code vars rest) @@ -563,22 +655,26 @@ Otherwise, it defers to REST which is a list of branches of the form ((eq 'or (caar matches)) (let* ((alts (cdar matches)) (var (if (eq (caar alts) 'match) (cadr (car alts)))) - (simples '()) (others '())) + (simples '()) (others '()) (memq-ok t)) (when var (dolist (alt alts) (if (and (eq (car alt) 'match) (eq var (cadr alt)) (let ((upat (cddr alt))) - (and (eq (car-safe upat) '\`) - (or (integerp (cadr upat)) (symbolp (cadr upat)) - (stringp (cadr upat)))))) - (push (cddr alt) simples) + (eq (car-safe upat) 'quote))) + (let ((val (cadr (cddr alt)))) + (unless (or (integerp val) (symbolp val)) + (setq memq-ok nil)) + (push (cadr (cddr alt)) simples)) (push alt others)))) (cond ((null alts) (error "Please avoid it") (pcase--u rest)) + ;; Yes, we can use `memq' (or `member')! ((> (length simples) 1) - ;; De-hoist the `or' MATCH into an `or' pattern that will be - ;; turned into a `memq' below. - (pcase--u1 (cons `(match ,var or . ,(nreverse simples)) (cdr matches)) + (pcase--u1 (cons `(match ,var + . (pred (pcase--flip + ,(if memq-ok #'memq #'member) + ',simples))) + (cdr matches)) code vars (if (null others) rest (cons (cons @@ -612,35 +708,11 @@ Otherwise, it defers to REST which is a list of branches of the form sym (lambda (pat) (pcase--split-pred vars upat pat)) rest)) (then-rest (car splitrest)) (else-rest (cdr splitrest))) - (pcase--if (if (and (eq (car upat) 'pred) (symbolp (cadr upat))) - `(,(cadr upat) ,sym) - (let* ((exp (cadr upat)) - ;; `vs' is an upper bound on the vars we need. - (vs (pcase--fgrep (mapcar #'car vars) exp)) - (env (mapcar (lambda (var) - (list var (cdr (assq var vars)))) - vs)) - (call (if (eq 'guard (car upat)) - exp - (when (memq sym vs) - ;; `sym' is shadowed by `env'. - (let ((newsym (make-symbol "x"))) - (push (list newsym sym) env) - (setq sym newsym))) - (if (functionp exp) - `(funcall #',exp ,sym) - `(,@exp ,sym))))) - (if (null vs) - call - ;; Let's not replace `vars' in `exp' since it's - ;; too difficult to do it right, instead just - ;; let-bind `vars' around `exp'. - `(let* ,env ,call)))) + (pcase--if (if (eq (car upat) 'pred) + (pcase--funcall (cadr upat) sym vars) + (pcase--eval (cadr upat) vars)) (pcase--u1 matches code vars then-rest) (pcase--u else-rest)))) - ((pcase--self-quoting-p upat) - (pcase--mark-used sym) - (pcase--q1 sym upat matches code vars rest)) ((symbolp upat) (pcase--mark-used sym) (if (not (assq upat vars)) @@ -655,57 +727,41 @@ Otherwise, it defers to REST which is a list of branches of the form ;; (cons (cons (nth 1 upat) (nth 2 upat)) vars) rest) (macroexp-let2 macroexp-copyable-p sym - (let* ((exp (nth 2 upat)) - (found (assq exp vars))) - (if found (cdr found) - (let* ((vs (pcase--fgrep (mapcar #'car vars) exp)) - (env (mapcar (lambda (v) (list v (cdr (assq v vars)))) - vs))) - (if env (macroexp-let* env exp) exp)))) - (pcase--u1 (cons `(match ,sym . ,(nth 1 upat)) matches) + (pcase--eval (nth 2 upat) vars) + (pcase--u1 (cons (pcase--match sym (nth 1 upat)) matches) code vars rest))) - ((eq (car-safe upat) '\`) + ((eq (car-safe upat) 'app) + ;; A upat of the form (app FUN UPAT) (pcase--mark-used sym) - (pcase--q1 sym (cadr upat) matches code vars rest)) - ((eq (car-safe upat) 'or) - (let ((all (> (length (cdr upat)) 1)) - (memq-fine t)) - (when all - (dolist (alt (cdr upat)) - (unless (if (pcase--self-quoting-p alt) - (progn - (unless (or (symbolp alt) (integerp alt)) - (setq memq-fine nil)) - t) - (and (eq (car-safe alt) '\`) - (or (symbolp (cadr alt)) (integerp (cadr alt)) - (setq memq-fine nil) - (stringp (cadr alt))))) - (setq all nil)))) - (if all - ;; Use memq for (or `a `b `c `d) rather than a big tree. - (let* ((elems (mapcar (lambda (x) (if (consp x) (cadr x) x)) - (cdr upat))) - (splitrest - (pcase--split-rest - sym (lambda (pat) (pcase--split-member elems pat)) rest)) - (then-rest (car splitrest)) - (else-rest (cdr splitrest))) - (pcase--mark-used sym) - (pcase--if `(,(if memq-fine #'memq #'member) ,sym ',elems) - (pcase--u1 matches code vars then-rest) - (pcase--u else-rest))) - (pcase--u1 (cons `(match ,sym ,@(cadr upat)) matches) code vars - (append (mapcar (lambda (upat) - `((and (match ,sym . ,upat) ,@matches) - ,code ,@vars)) - (cddr upat)) - rest))))) - ((eq (car-safe upat) 'and) - (pcase--u1 (append (mapcar (lambda (upat) `(match ,sym ,@upat)) - (cdr upat)) - matches) - code vars rest)) + (let* ((fun (nth 1 upat)) + (nsym (make-symbol "x")) + (body + ;; We don't change `matches' to reuse the newly computed value, + ;; because we assume there shouldn't be such redundancy in there. + (pcase--u1 (cons (pcase--match nsym (nth 2 upat)) matches) + code vars + (pcase--app-subst-rest rest sym fun nsym)))) + (if (not (get nsym 'pcase-used)) + body + (macroexp-let* + `((,nsym ,(pcase--funcall fun sym vars))) + body)))) + ((eq (car-safe upat) 'quote) + (pcase--mark-used sym) + (let* ((val (cadr upat)) + (splitrest (pcase--split-rest + sym (lambda (pat) (pcase--split-equal val pat)) rest)) + (then-rest (car splitrest)) + (else-rest (cdr splitrest))) + (pcase--if (cond + ((null val) `(null ,sym)) + ((or (integerp val) (symbolp val)) + (if (pcase--self-quoting-p val) + `(eq ,sym ,val) + `(eq ,sym ',val))) + (t `(equal ,sym ',val))) + (pcase--u1 matches code vars then-rest) + (pcase--u else-rest)))) ((eq (car-safe upat) 'not) ;; FIXME: The implementation below is naive and results in ;; inefficient code. @@ -727,57 +783,25 @@ Otherwise, it defers to REST which is a list of branches of the form (pcase--u rest)) vars (list `((and . ,matches) ,code . ,vars)))) - (t (error "Unknown upattern `%s'" upat))))) - (t (error "Incorrect MATCH %s" (car matches))))) + (t (error "Unknown internal pattern `%S'" upat))))) + (t (error "Incorrect MATCH %S" (car matches))))) -(defun pcase--q1 (sym qpat matches code vars rest) - "Return code that runs CODE if SYM matches QPAT and if MATCHES match. -Otherwise, it defers to REST which is a list of branches of the form -\(OTHER_MATCH OTHER-CODE . OTHER-VARS)." +(pcase-defmacro \` (qpat) (cond - ((eq (car-safe qpat) '\,) (error "Can't use `,UPATTERN")) - ((floatp qpat) (error "Floating point patterns not supported")) + ((eq (car-safe qpat) '\,) (cadr qpat)) ((vectorp qpat) - ;; FIXME. - (error "Vector QPatterns not implemented yet")) + `(and (pred vectorp) + (app length ,(length qpat)) + ,@(let ((upats nil)) + (dotimes (i (length qpat)) + (push `(app (pcase--flip aref ,i) ,(list '\` (aref qpat i))) + upats)) + (nreverse upats)))) ((consp qpat) - (let* ((syma (make-symbol "xcar")) - (symd (make-symbol "xcdr")) - (splitrest (pcase--split-rest - sym - (lambda (pat) (pcase--split-consp syma symd pat)) - rest)) - (then-rest (car splitrest)) - (else-rest (cdr splitrest)) - (then-body (pcase--u1 `((match ,syma . ,(pcase--upat (car qpat))) - (match ,symd . ,(pcase--upat (cdr qpat))) - ,@matches) - code vars then-rest))) - (pcase--if - `(consp ,sym) - ;; We want to be careful to only add bindings that are used. - ;; The byte-compiler could do that for us, but it would have to pay - ;; attention to the `consp' test in order to figure out that car/cdr - ;; can't signal errors and our byte-compiler is not that clever. - ;; FIXME: Some of those let bindings occur too early (they are used in - ;; `then-body', but only within some sub-branch). - (macroexp-let* - `(,@(if (get syma 'pcase-used) `((,syma (car ,sym)))) - ,@(if (get symd 'pcase-used) `((,symd (cdr ,sym))))) - then-body) - (pcase--u else-rest)))) - ((or (integerp qpat) (symbolp qpat) (stringp qpat)) - (let* ((splitrest (pcase--split-rest - sym (lambda (pat) (pcase--split-equal qpat pat)) rest)) - (then-rest (car splitrest)) - (else-rest (cdr splitrest))) - (pcase--if (cond - ((stringp qpat) `(equal ,sym ,qpat)) - ((null qpat) `(null ,sym)) - (t `(eq ,sym ',qpat))) - (pcase--u1 matches code vars then-rest) - (pcase--u else-rest)))) - (t (error "Unknown QPattern %s" qpat)))) + `(and (pred consp) + (app car ,(list '\` (car qpat))) + (app cdr ,(list '\` (cdr qpat))))) + ((or (stringp qpat) (integerp qpat) (symbolp qpat)) `',qpat))) (provide 'pcase) diff --git a/lisp/emacs-lisp/subr-x.el b/lisp/emacs-lisp/subr-x.el index 76473b39a77..759760c7d62 100644 --- a/lisp/emacs-lisp/subr-x.el +++ b/lisp/emacs-lisp/subr-x.el @@ -47,7 +47,7 @@ last. FORMS are the expressions to be threaded." (_ (car forms)))) (defmacro thread-first (&rest forms) - "Thread FORMS elements as the first argument of their succesor. + "Thread FORMS elements as the first argument of their successor. Example: (thread-first 5 @@ -64,7 +64,7 @@ threading." `(internal--thread-argument t ,@forms)) (defmacro thread-last (&rest forms) - "Thread FORMS elements as the last argument of their succesor. + "Thread FORMS elements as the last argument of their successor. Example: (thread-last 5 @@ -118,7 +118,7 @@ threading." "Process BINDINGS and if all values are non-nil eval THEN, else ELSE. Argument BINDINGS is a list of tuples whose car is a symbol to be bound and (optionally) used in THEN, and its cadr is a sexp to be -evaled to set symbol's value. In the special case you only want +evalled to set symbol's value. In the special case you only want to bind a single value, BINDINGS can just be a plain tuple." (declare (indent 2) (debug ((&rest (symbolp form)) form body))) (when (and (<= (length bindings) 2) @@ -134,7 +134,7 @@ to bind a single value, BINDINGS can just be a plain tuple." "Process BINDINGS and if all values are non-nil eval BODY. Argument BINDINGS is a list of tuples whose car is a symbol to be bound and (optionally) used in BODY, and its cadr is a sexp to be -evaled to set symbol's value. In the special case you only want +evalled to set symbol's value. In the special case you only want to bind a single value, BINDINGS can just be a plain tuple." (declare (indent 1) (debug if-let)) (list 'if-let bindings (macroexp-progn body))) @@ -159,7 +159,7 @@ to bind a single value, BINDINGS can just be a plain tuple." "Join all STRINGS using SEPARATOR." (mapconcat 'identity strings separator)) -(define-obsolete-function-alias 'string-reverse 'reverse "24.5") +(define-obsolete-function-alias 'string-reverse 'reverse "25.1") (defsubst string-trim-left (string) "Remove leading whitespace from STRING." diff --git a/lisp/emulation/cua-rect.el b/lisp/emulation/cua-rect.el index 31dd137a6b9..4620b0e8c0f 100644 --- a/lisp/emulation/cua-rect.el +++ b/lisp/emulation/cua-rect.el @@ -794,7 +794,7 @@ If command is repeated at same position, delete the rectangle." (make-string (- l cl0 (if (and (= le pl) (/= le lb)) 1 0)) (if cua--virtual-edges-debug ?. ?\s)) - 'face (or (get-text-property (1- s) 'face) 'default))) + 'face (or (get-text-property (max (1- s) (point-min)) 'face) 'default))) (if (/= pl le) (setq s (1- s)))) (cond diff --git a/lisp/epg-config.el b/lisp/epg-config.el index 10b37041443..16ed6e1f5c9 100644 --- a/lisp/epg-config.el +++ b/lisp/epg-config.el @@ -39,9 +39,9 @@ :group 'data :group 'external) -(defcustom epg-gpg-program (or (executable-find "gpg") - (executable-find "gpg2") - "gpg") +(defcustom epg-gpg-program (cond ((executable-find "gpg") "gpg") + ((executable-find "gpg2") "gpg2") + (t "gpg")) "The `gpg' executable." :group 'epg :type 'string) diff --git a/lisp/erc/ChangeLog b/lisp/erc/ChangeLog index dcde62af9c2..0833bda4cb1 100644 --- a/lisp/erc/ChangeLog +++ b/lisp/erc/ChangeLog @@ -1,4 +1,54 @@ -2014-08-13 Kelvin White <kwhite@gnu.org> +2014-10-10 Kelvin White <kwhite@gnu.org> + + * erc.el (erc-initialize-log-marker): Only initialize + erc-last-saved-position if not already a marker. + +2014-10-04 Stefan Monnier <monnier@iro.umontreal.ca> + + * erc.el (erc-channel-receive-names): Silence compiler warning. + (erc-format-@nick, erc-update-modes): Idem. + +2014-10-03 Kelvin White <kwhite@gnu.org> + + * erc.el (erc-rename-buffers): Use defcustom instead of defvar for + buffer renaming configuration option. + +2014-10-02 Paul Eggert <eggert@cs.ucla.edu> + + * erc.el (erc-nick-at-point): Fix format-string typo (Bug#17755). + +2014-10-02 Kelvin White <kwhite@gnu.org> + + * erc.el (erc-rename-buffer-p): When set to t buffers will be + renamed to the current irc network. + (erc-format-target-and/or-network): Use `erc-rename-buffer-p' when + renaming buffers. + + * erc-ring.el (erc-input-ring-setup): Fixes Bug #18599 + +2014-09-30 Stefan Monnier <monnier@iro.umontreal.ca> + + * erc-track.el (erc-modified-channels-display): Update all mode lines + if needed (bug#18510). Remove call to erc-modified-channels-object + where we ignored the return value. + (erc-modified-channels-update): Don't force-mode-line-update here + any more. + +2014-09-26 Kelvin White <kwhite@gnu.org> + + * erc.el (erc-format-nick): Fix code regression - Bug #18551 + +2014-09-25 Kelvin White <kwhite@gnu.org> + + * erc.el: Follow Emacs version instead of tracking it seperately. + (erc-quit/part-reason-default) : Clean up quit/part message + functions by abstracting repetitive code, change version string. + (erc-quit-reason-various, erc-quit-reason-normal, erc-quit-reason-zippy) + (erc-part-reason-normal, erc-part-reason-zippy, erc-part-reason-various) + (erc-cmd-SV, erc-ctcp-query-VERSION, erc-version, erc-version-string): + Change version string. + +2014-08-13 Kelvin White <kwhite@gnu.org> * erc.el (erc-send-input): Disable display commands in current buffer (erc-format-target-and/or-network): Fix cases when buffer name is set diff --git a/lisp/erc/erc-ring.el b/lisp/erc/erc-ring.el index 1762700ff36..682585c53bb 100644 --- a/lisp/erc/erc-ring.el +++ b/lisp/erc/erc-ring.el @@ -67,7 +67,8 @@ variable.") (defun erc-input-ring-setup () "Do the setup required so that we can use comint style input rings. Call this function when setting up the mode." - (setq erc-input-ring (make-ring comint-input-ring-size)) + (unless (ring-p erc-input-ring) + (setq erc-input-ring (make-ring comint-input-ring-size))) (setq erc-input-ring-index nil)) (defun erc-add-to-input-ring (s) diff --git a/lisp/erc/erc-stamp.el b/lisp/erc/erc-stamp.el index 37982069abe..39ffbb4bf38 100644 --- a/lisp/erc/erc-stamp.el +++ b/lisp/erc/erc-stamp.el @@ -151,7 +151,7 @@ the minibuffer." "Whether the timestamps should be intangible, i.e. prevent the point from entering them and instead jump over them." :group 'erc-stamp - :version "24.5" + :version "25.1" :type 'boolean) (defface erc-timestamp-face '((t :weight bold :foreground "green")) diff --git a/lisp/erc/erc-track.el b/lisp/erc/erc-track.el index 3f7b6a7b501..706cce2fefe 100644 --- a/lisp/erc/erc-track.el +++ b/lisp/erc/erc-track.el @@ -767,8 +767,7 @@ ARGS are ignored." (erc-modified-channels-remove-buffer buffer)))) erc-modified-channels-alist) (when removed-channel - (erc-modified-channels-display) - (force-mode-line-update t))) + (erc-modified-channels-display))) (remove-hook 'post-command-hook 'erc-modified-channels-update))) (defvar erc-track-mouse-face (if (featurep 'xemacs) @@ -825,43 +824,45 @@ Use `erc-make-mode-line-buffer-name' to create buttons." ((eq 'importance erc-track-switch-direction) (erc-track-sort-by-importance))) (run-hooks 'erc-track-list-changed-hook) - (unless (eq erc-track-position-in-mode-line nil) - (if (null erc-modified-channels-alist) - (setq erc-modified-channels-object (erc-modified-channels-object nil)) - ;; erc-modified-channels-alist contains all the data we need. To - ;; better understand what is going on, we split things up into - ;; four lists: BUFFERS, COUNTS, SHORT-NAMES, and FACES. These - ;; four lists we use to create a new - ;; `erc-modified-channels-object' using - ;; `erc-make-mode-line-buffer-name'. - (let* ((buffers (mapcar 'car erc-modified-channels-alist)) - (counts (mapcar 'cadr erc-modified-channels-alist)) - (faces (mapcar 'cddr erc-modified-channels-alist)) - (long-names (mapcar #'(lambda (buf) - (or (buffer-name buf) - "")) - buffers)) - (short-names (if (functionp erc-track-shorten-function) - (funcall erc-track-shorten-function - long-names) - long-names)) - strings) - (while buffers - (when (car short-names) - (setq strings (cons (erc-make-mode-line-buffer-name - (car short-names) - (car buffers) - (car faces) - (car counts)) - strings))) - (setq short-names (cdr short-names) - buffers (cdr buffers) - counts (cdr counts) - faces (cdr faces))) - (when (featurep 'xemacs) - (erc-modified-channels-object nil)) - (setq erc-modified-channels-object - (erc-modified-channels-object strings)))))) + (when erc-track-position-in-mode-line + (let* ((oldobject erc-modified-channels-object) + (strings + (when erc-modified-channels-alist + ;; erc-modified-channels-alist contains all the data we need. To + ;; better understand what is going on, we split things up into + ;; four lists: BUFFERS, COUNTS, SHORT-NAMES, and FACES. These + ;; four lists we use to create a new + ;; `erc-modified-channels-object' using + ;; `erc-make-mode-line-buffer-name'. + (let* ((buffers (mapcar 'car erc-modified-channels-alist)) + (counts (mapcar 'cadr erc-modified-channels-alist)) + (faces (mapcar 'cddr erc-modified-channels-alist)) + (long-names (mapcar #'(lambda (buf) + (or (buffer-name buf) + "")) + buffers)) + (short-names (if (functionp erc-track-shorten-function) + (funcall erc-track-shorten-function + long-names) + long-names)) + strings) + (while buffers + (when (car short-names) + (setq strings (cons (erc-make-mode-line-buffer-name + (car short-names) + (car buffers) + (car faces) + (car counts)) + strings))) + (setq short-names (cdr short-names) + buffers (cdr buffers) + counts (cdr counts) + faces (cdr faces))) + strings))) + (newobject (erc-modified-channels-object strings))) + (unless (equal oldobject newobject) + (setq erc-modified-channels-object newobject) + (force-mode-line-update t))))) (defun erc-modified-channels-remove-buffer (buffer) "Remove BUFFER from `erc-modified-channels-alist'." diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el index cedc4f6b517..c70dfb94d7e 100644 --- a/lisp/erc/erc.el +++ b/lisp/erc/erc.el @@ -12,7 +12,7 @@ ;; Kelvin White (kwhite@gnu.org) ;; Maintainer: emacs-devel@gnu.org ;; Keywords: IRC, chat, client, Internet -;; Version: 5.3 + ;; This file is part of GNU Emacs. @@ -63,11 +63,11 @@ ;;; History: ;; -;;; Code: - -(defconst erc-version-string "Version 5.3" +(defconst erc-version-string (format "\C-bERC\C-b (IRC client for Emacs %s)" emacs-version) "ERC version. This is used by function `erc-version'.") +;;; Code: + (eval-when-compile (require 'cl-lib)) (require 'font-lock) (require 'pp) @@ -196,6 +196,11 @@ parameters and authentication." :set (lambda (sym val) (set sym (if (functionp val) (funcall val) val)))) +(defcustom erc-rename-buffers nil + "When this is set to t, buffers will be renamed to network name if available" + :group 'erc + :type 'boolean) + (defvar erc-password nil "Password to use when authenticating to an IRC server. It is not strictly necessary to provide this, since ERC will @@ -2052,9 +2057,10 @@ Returns the buffer for the given server or channel." "Initialize the `erc-last-saved-position' marker to a sensible position. BUFFER is the current buffer." (with-current-buffer buffer - (setq erc-last-saved-position (make-marker)) - (move-marker erc-last-saved-position - (1- (marker-position erc-insert-marker))))) + (unless (markerp erc-last-saved-position) + (setq erc-last-saved-position (make-marker)) + (move-marker erc-last-saved-position + (1- (marker-position erc-insert-marker)))))) ;; interactive startup @@ -3380,14 +3386,16 @@ If USER is omitted, close the current query buffer if one exists (signal 'wrong-number-of-arguments "")))) (defalias 'erc-cmd-Q 'erc-cmd-QUERY) +(defun erc-quit/part-reason-default () + "Default quit/part message." + (format "\C-bERC\C-b (IRC client for Emacs %s)" emacs-version)) + + (defun erc-quit-reason-normal (&optional s) "Normal quit message. If S is non-nil, it will be used as the quit reason." - (or s - (format "\C-bERC\C-b %s (IRC client for Emacs)"; - \C-b%s\C-b" - erc-version-string) ; erc-official-location) - )) + (or s (erc-quit/part-reason-default))) (defun erc-quit-reason-zippy (&optional s) "Zippy quit message. @@ -3396,7 +3404,7 @@ If S is non-nil, it will be used as the quit reason." (or s (if (fboundp 'yow) (erc-replace-regexp-in-string "\n" "" (yow)) - (erc-quit-reason-normal)))) + (erc-quit/part-reason-default)))) (make-obsolete 'erc-quit-reason-zippy "it will be removed." "24.4") @@ -3409,16 +3417,13 @@ If S is non-nil, it will be used as the quit reason." ((functionp res) (funcall res)) ((stringp res) res) (s s) - (t (erc-quit-reason-normal))))) + (t (erc-quit/part-reason-default))))) (defun erc-part-reason-normal (&optional s) "Normal part message. -If S is non-nil, it will be used as the quit reason." - (or s - (format "\C-bERC\C-b %s (IRC client for Emacs)"; - \C-b%s\C-b" - erc-version-string) ; erc-official-location) - )) +If S is non-nil, it will be used as the part reason." + (or s (erc-quit/part-reason-default))) (defun erc-part-reason-zippy (&optional s) "Zippy part message. @@ -3427,7 +3432,7 @@ If S is non-nil, it will be used as the quit reason." (or s (if (fboundp 'yow) (erc-replace-regexp-in-string "\n" "" (yow)) - (erc-part-reason-normal)))) + (erc-quit/part-reason-default)))) (make-obsolete 'erc-part-reason-zippy "it will be removed." "24.4") @@ -3440,7 +3445,7 @@ If S is non-nil, it will be used as the quit reason." ((functionp res) (funcall res)) ((stringp res) res) (s s) - (t (erc-part-reason-normal))))) + (t (erc-quit/part-reason-default))))) (defun erc-cmd-QUIT (reason) "Disconnect from the current server. @@ -3534,8 +3539,7 @@ the message given by REASON." (defun erc-cmd-SV () "Say the current ERC and Emacs version into channel." - (erc-send-message (format "I'm using ERC %s with %s %s (%s%s) of %s." - erc-version-string + (erc-send-message (format "I'm using ERC with %s %s (%s%s) of %s." (if (featurep 'xemacs) "XEmacs" "GNU Emacs") emacs-version system-configuration @@ -4227,11 +4231,7 @@ and as second argument the event parsed as a vector." (defun erc-format-nick (&optional user _channel-data) "Return the nickname of USER. See also `erc-format-nick-function'." - (let ((nick (erc-server-user-nickname user))) - (concat (erc-propertize - (erc-get-user-mode-prefix nick) - 'face 'erc-nick-prefix-face) - nick))) + (when user (erc-server-user-nickname user))) (defun erc-get-user-mode-prefix (user) (when user @@ -4247,7 +4247,7 @@ See also `erc-format-nick-function'." (erc-propertize "+" 'help-echo "voice")) (t "")))) -(defun erc-format-@nick (&optional user channel-data) +(defun erc-format-@nick (&optional user _channel-data) "Format the nickname of USER showing if USER has a voice, is an operator, half-op, admin or owner. Owners have \"~\", admins have \"&\", operators have \"@\" and users with voice have \"+\" as a @@ -4594,8 +4594,8 @@ See also `erc-display-message'." (unless erc-disable-ctcp-replies (erc-send-ctcp-notice nick (format - "VERSION \C-bERC\C-b %s - an IRC client for emacs (\C-b%s\C-b)" - erc-version-string + "VERSION \C-bERC\C-b - an IRC client for Emacs %s (\C-b%s\C-b)" + emacs-version erc-official-location))) nil) @@ -4771,22 +4771,24 @@ channel." (hop-ch (cdr (assq ?h prefix))) (adm-ch (cdr (assq ?a prefix))) (own-ch (cdr (assq ?q prefix))) - names name op voice halfop admin owner) - (setq names (delete "" (split-string names-string))) + (names (delete "" (split-string names-string))) + name op voice halfop admin owner) (let ((erc-channel-members-changed-hook nil)) (dolist (item names) - (let ((updatep t)) + (let ((updatep t) + (ch (aref item 0))) (setq name item op 'off voice 'off halfop 'off admin 'off owner 'off) - (if (rassq (elt item 0) prefix) + (if (rassq ch prefix) (if (= (length item) 1) (setq updatep nil) (setq name (substring item 1)) - (setf (pcase (aref item 0) + (setf (pcase ch ((pred (eq voice-ch)) voice) ((pred (eq hop-ch)) halfop) ((pred (eq op-ch)) op) ((pred (eq adm-ch)) admin) - ((pred (eq own-ch)) owner)) + ((pred (eq own-ch)) owner) + (_ (error "Unknown prefix char `%S'" ch) voice)) 'on))) (when updatep (puthash (erc-downcase name) t @@ -5087,7 +5089,7 @@ arg-modes is a list of triples of the form: (list add-modes remove-modes arg-modes)) nil)) -(defun erc-update-modes (tgt mode-string &optional nick host login) +(defun erc-update-modes (tgt mode-string &optional _nick _host _login) "Update the mode information for TGT, provided as MODE-STRING. Optional arguments: NICK, HOST and LOGIN - the attributes of the person who changed the modes." @@ -5376,7 +5378,7 @@ This returns non-nil only if we actually send anything." (null erc-flood-protect) t)) (or (and erc-flood-protect (erc-split-line line)) (list line)))) - (split-string str "\n")) + (split-string str "\n")) (erc-process-input-line (concat str "\n") t nil)) t))))) @@ -6084,7 +6086,7 @@ entry of `channel-members'." nick login host (if full-name (format " (%s)" full-name) "") (if (or voice halfop op admin owner) - (format " and is +%s%s on %s" + (format " and is +%s%s%s%s%s on %s" (if voice "v" "") (if halfop "h" "") (if op "o" "") @@ -6231,9 +6233,10 @@ shortened server name instead." (cond ((erc-default-target) (concat (erc-string-no-properties (erc-default-target)) "@" network-name)) - ((and network-name + ((and network-name (not (get-buffer network-name))) - (rename-buffer network-name) + (when erc-rename-buffers + (rename-buffer network-name)) network-name) (t (buffer-name (current-buffer)))))) @@ -6373,7 +6376,7 @@ P may be an integer or a service name." If optional argument HERE is non-nil, insert version number at point." (interactive "P") (let ((version-string - (format "ERC %s (GNU Emacs %s)" erc-version-string emacs-version))) + (format "ERC (IRC client for Emacs %s)" emacs-version))) (if here (insert version-string) (if (called-interactively-p 'interactive) diff --git a/lisp/eshell/esh-io.el b/lisp/eshell/esh-io.el index b7830db08b5..ebbca58a442 100644 --- a/lisp/eshell/esh-io.el +++ b/lisp/eshell/esh-io.el @@ -118,8 +118,6 @@ from executing while Emacs is redisplaying." :type 'integer :group 'eshell-io) -(defvar x-select-enable-clipboard) ; term/common-win - (defcustom eshell-virtual-targets '(("/dev/eshell" eshell-interactive-print nil) ("/dev/kill" (lambda (mode) @@ -128,7 +126,7 @@ from executing while Emacs is redisplaying." 'eshell-kill-append) t) ("/dev/clip" (lambda (mode) (if (eq mode 'overwrite) - (let ((x-select-enable-clipboard t)) + (let ((gui-select-enable-clipboard t)) (kill-new ""))) 'eshell-clipboard-append) t)) "Map virtual devices name to Emacs Lisp functions. @@ -328,7 +326,7 @@ last execution result should not be changed." (defun eshell-clipboard-append (string) "Call `kill-append' with STRING, if it is indeed a string." (if (stringp string) - (let ((x-select-enable-clipboard t)) + (let ((gui-select-enable-clipboard t)) (kill-append string nil)))) (defun eshell-get-target (target &optional mode) diff --git a/lisp/eshell/esh-util.el b/lisp/eshell/esh-util.el index 3bb6e8f31c7..cd73c0afa75 100644 --- a/lisp/eshell/esh-util.el +++ b/lisp/eshell/esh-util.el @@ -539,7 +539,7 @@ Unless optional argument INPLACE is non-nil, return a new string." (defmacro eshell-with-file-modes (modes &rest forms) "Evaluate, with file-modes set to MODES, the given FORMS." - (declare (obsolete with-file-modes "24.5")) + (declare (obsolete with-file-modes "25.1")) `(with-file-modes ,modes ,@forms)) (defmacro eshell-with-private-file-modes (&rest forms) diff --git a/lisp/faces.el b/lisp/faces.el index d9239d9e1eb..d7b330ee64c 100644 --- a/lisp/faces.el +++ b/lisp/faces.el @@ -53,7 +53,7 @@ This means to treat a terminal of type TYPE as if it were of type ALIAS." :type '(alist :key-type (string :tag "Terminal") :value-type (string :tag "Alias")) :group 'terminals - :version "24.5") + :version "25.1") (declare-function xw-defined-colors "term/common-win" (&optional frame)) @@ -1825,7 +1825,9 @@ If omitted or nil, that stands for the selected frame's display." (declare-function x-display-grayscale-p "xfns.c" (&optional terminal)) (defun display-grayscale-p (&optional display) - "Return non-nil if frames on DISPLAY can display shades of gray." + "Return non-nil if frames on DISPLAY can display shades of gray. +DISPLAY should be either a frame or a display name (a string). +If omitted or nil, that stands for the selected frame's display." (let ((frame-type (framep-on-display display))) (cond ((memq frame-type '(x w32 ns)) diff --git a/lisp/ffap.el b/lisp/ffap.el index 95a651bbde6..e5f574db2de 100644 --- a/lisp/ffap.el +++ b/lisp/ffap.el @@ -167,7 +167,7 @@ schemes (e.g. \"ftp\"); in that case, only convert those URLs." "If non-nil, allow lax URL matching." :type 'boolean :group 'ffap - :version "24.5") + :version "25.1") (defcustom ffap-ftp-default-user "anonymous" "User name in FTP file names generated by `ffap-host-to-path'. diff --git a/lisp/files.el b/lisp/files.el index edbf647530c..84391c17164 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -1375,6 +1375,9 @@ return value, which may be passed as the REQUIRE-MATCH arg to (defmacro minibuffer-with-setup-hook (fun &rest body) "Temporarily add FUN to `minibuffer-setup-hook' while executing BODY. +FUN can also be (:append FUN1), in which case FUN1 is appended to +`minibuffer-setup-hook'. + BODY should use the minibuffer at most once. Recursive uses of the minibuffer are unaffected (FUN is not called additional times). @@ -1383,20 +1386,23 @@ This macro actually adds an auxiliary function that calls FUN, rather than FUN itself, to `minibuffer-setup-hook'." (declare (indent 1) (debug t)) (let ((hook (make-symbol "setup-hook")) - (funsym (make-symbol "fun"))) + (funsym (make-symbol "fun")) + (append nil)) + (when (eq (car-safe fun) :append) + (setq append '(t) fun (cadr fun))) `(let ((,funsym ,fun) ,hook) (setq ,hook - (lambda () - ;; Clear out this hook so it does not interfere - ;; with any recursive minibuffer usage. - (remove-hook 'minibuffer-setup-hook ,hook) - (funcall ,funsym))) + (lambda () + ;; Clear out this hook so it does not interfere + ;; with any recursive minibuffer usage. + (remove-hook 'minibuffer-setup-hook ,hook) + (funcall ,funsym))) (unwind-protect - (progn - (add-hook 'minibuffer-setup-hook ,hook) - ,@body) - (remove-hook 'minibuffer-setup-hook ,hook))))) + (progn + (add-hook 'minibuffer-setup-hook ,hook ,@append) + ,@body) + (remove-hook 'minibuffer-setup-hook ,hook))))) (defun find-file-read-args (prompt mustmatch) (list (read-file-name prompt nil default-directory mustmatch) @@ -1792,7 +1798,7 @@ When nil, never issue warning. Beware: This probably doesn't do what you think it does, because \"free\" is pretty hard to define in practice." :group 'files :group 'find-file - :version "24.5" + :version "25.1" :type '(choice integer (const :tag "Never issue warning" nil))) (defun abort-if-file-too-large (size op-type filename) @@ -2351,7 +2357,7 @@ since only a single case-insensitive search through the alist is made." ("[cC]hange[lL]og[-.][0-9]+\\'" . change-log-mode) ("\\$CHANGE_LOG\\$\\.TXT" . change-log-mode) ("\\.scm\\.[0-9]*\\'" . scheme-mode) - ("\\.[ck]?sh\\'\\|\\.shar\\'\\|/\\.z?profile\\'" . sh-mode) + ("\\.[ckz]?sh\\'\\|\\.shar\\'\\|/\\.z?profile\\'" . sh-mode) ("\\.bash\\'" . sh-mode) ("\\(/\\|\\`\\)\\.\\(bash_\\(profile\\|history\\|log\\(in\\|out\\)\\)\\|z?log\\(in\\|out\\)\\)\\'" . sh-mode) ("\\(/\\|\\`\\)\\.\\(shrc\\|[kz]shrc\\|bashrc\\|t?cshrc\\|esrc\\)\\'" . sh-mode) @@ -3643,10 +3649,7 @@ VARIABLES list of the class. The list is processed in order. * If the element is of the form (DIRECTORY . LIST), and DIRECTORY is an initial substring of the file's directory, then LIST is applied by recursively following these rules." - (let ((elt (assq class dir-locals-class-alist))) - (if elt - (setcdr elt variables) - (push (cons class variables) dir-locals-class-alist)))) + (setf (alist-get class dir-locals-class-alist) variables)) (defconst dir-locals-file ".dir-locals.el" "File that contains directory-local variables. diff --git a/lisp/find-cmd.el b/lisp/find-cmd.el index acd820a31ce..276aeed1208 100644 --- a/lisp/find-cmd.el +++ b/lisp/find-cmd.el @@ -39,6 +39,8 @@ ;;; Code: +(require 'grep) + (defconst find-constituents '((and . find-and) (not . find-not) @@ -145,13 +147,15 @@ For example: `default-directory' is used as the initial search path. The result is a string that should be ready for the command line." - (concat - "find " (shell-quote-argument (expand-file-name default-directory)) " " - (cond - ((cdr subfinds) - (mapconcat 'find-to-string subfinds "")) - (t - (find-to-string (car subfinds)))))) + ;; FIXME: Provide a version that returns a list of strings (ready to pass to + ;; call-process). + (concat find-program " " + (shell-quote-argument (expand-file-name default-directory)) " " + (cond + ((cdr subfinds) + (mapconcat #'find-to-string subfinds "")) + (t + (find-to-string (car subfinds)))))) (defun find-and (form) "And FORMs together, so: @@ -161,7 +165,7 @@ will produce: (if (< (length form) 2) (find-to-string (car form)) (concat "\\( " - (mapconcat 'find-to-string form "-and ") + (mapconcat #'find-to-string form "-and ") "\\) "))) (defun find-or (form) @@ -172,7 +176,7 @@ will produce: (if (< (length form) 2) (find-to-string (car form)) (concat "\\( " - (mapconcat 'find-to-string form "-or ") + (mapconcat #'find-to-string form "-or ") "\\) "))) (defun find-not (form) @@ -183,7 +187,7 @@ will produce: If you wanted the FORMs -and(ed) together instead then this would suffice: \(not \(and \(mtime \"+1\"\) \(name \"something\"\)\)\)" - (concat "-not " (find-or (mapcar 'find-to-string form)))) + (concat "-not " (find-or (mapcar #'find-to-string form)))) (defun find-prune (form) "-or together FORMs postfix '-prune' and then -or that with a @@ -194,7 +198,7 @@ will produce (unwrapped): -prune -or -true \\\) -and -name '*.pm' \\\)" (find-or (list - (concat (find-or (mapcar 'find-to-string form)) (find-generic "prune")) + (concat (find-or (mapcar #'find-to-string form)) (find-generic "prune")) (find-generic "true")))) (defun find-generic (option &optional oper argcount args dont-quote) diff --git a/lisp/font-lock.el b/lisp/font-lock.el index fe37c24579b..22444277ba2 100644 --- a/lisp/font-lock.el +++ b/lisp/font-lock.el @@ -1047,7 +1047,7 @@ The region it returns may start or end in the middle of a line.") ;; Of course, this function doesn't do all of the above in all situations ;; (e.g. depending on whether jit-lock is in use) and it can't guess what ;; the caller wants. - (interactive-only "use font-lock-ensure or font-lock-flush instead.")) + (interactive-only "use `font-lock-ensure' or `font-lock-flush' instead.")) (interactive "p") (font-lock-set-defaults) (let ((font-lock-verbose (or font-lock-verbose interactively))) @@ -1759,7 +1759,7 @@ If SYNTACTIC-KEYWORDS is non-nil, it means these keywords are used for keywords (setq keywords (cons t (cons keywords - (mapcar 'font-lock-compile-keyword keywords)))) + (mapcar #'font-lock-compile-keyword keywords)))) (if (and (not syntactic-keywords) (let ((beg-function (or font-lock-beginning-of-syntax-function @@ -1783,7 +1783,7 @@ If SYNTACTIC-KEYWORDS is non-nil, it means these keywords are used for keywords)) (defun font-lock-compile-keyword (keyword) - (cond ((nlistp keyword) ; MATCHER + (cond ((or (functionp keyword) (nlistp keyword)) ; MATCHER (list keyword '(0 font-lock-keyword-face))) ((eq (car keyword) 'eval) ; (eval . FORM) (font-lock-compile-keyword (eval (cdr keyword)))) diff --git a/lisp/frame.el b/lisp/frame.el index d528eef6735..952a3568156 100644 --- a/lisp/frame.el +++ b/lisp/frame.el @@ -1,4 +1,4 @@ -;;; frame.el --- multi-frame management independent of window systems +;;; frame.el --- multi-frame management independent of window systems -*- lexical-binding:t -*- ;; Copyright (C) 1993-1994, 1996-1997, 2000-2014 Free Software Foundation, Inc. @@ -26,21 +26,39 @@ ;;; Code: (eval-when-compile (require 'cl-lib)) -(defvar frame-creation-function-alist - (list (cons nil - (if (fboundp 'tty-create-frame-with-faces) - 'tty-create-frame-with-faces - (lambda (_parameters) - (error "Can't create multiple frames without a window system"))))) - "Alist of window-system dependent functions to call to create a new frame. +;; Dispatch tables for GUI methods. + +(defun gui-method--name (base) + (intern (format "%s-alist" base))) + +(defmacro gui-method (name &optional type) + (macroexp-let2 nil type (or type `(framep (selected-frame))) + `(alist-get ,type ,(gui-method--name name) + (lambda (&rest _args) + (error "No method %S for %S frame" ',name ,type))))) + +(defmacro gui-method-define (name type fun) + `(setf (gui-method ,name ',type) ,fun)) + +(defmacro gui-method-declare (name &optional tty-fun doc) + (declare (doc-string 3) (indent 2)) + `(defvar ,(gui-method--name name) + ,(if tty-fun `(list (cons t ,tty-fun))) ,doc)) + +(defmacro gui-call (name &rest args) + `(funcall (gui-method ,name) ,@args)) + +(gui-method-declare frame-creation-function + #'tty-create-frame-with-faces + "Method for window-system dependent functions to create a new frame. The window system startup file should add its frame creation -function to this list, which should take an alist of parameters +function to this method, which should take an alist of parameters as its argument.") (defvar window-system-default-frame-alist nil "Window-system dependent default frame parameters. The value should be an alist of elements (WINDOW-SYSTEM . ALIST), -where WINDOW-SYSTEM is a window system symbol (see `window-system') +where WINDOW-SYSTEM is a window system symbol (as returned by `framep') and ALIST is a frame parameter alist like `default-frame-alist'. Then, for frames on WINDOW-SYSTEM, any parameters specified in ALIST supersede the corresponding parameters specified in @@ -174,10 +192,6 @@ This function runs the hook `focus-out-hook'." (progn (setq frame-initial-frame-alist (append initial-frame-alist default-frame-alist nil)) - (or (assq 'horizontal-scroll-bars frame-initial-frame-alist) - (setq frame-initial-frame-alist - (cons '(horizontal-scroll-bars . t) - frame-initial-frame-alist))) (setq frame-initial-frame-alist (cons (cons 'window-system initial-window-system) frame-initial-frame-alist)) @@ -632,30 +646,29 @@ frame the selected frame. However, the window system may select the new frame according to its own rules." (interactive) (let* ((display (cdr (assq 'display parameters))) - (w (cond - ((assq 'terminal parameters) - (let ((type (terminal-live-p (cdr (assq 'terminal parameters))))) - (cond - ((eq type t) nil) - ((eq type nil) (error "Terminal %s does not exist" - (cdr (assq 'terminal parameters)))) - (t type)))) - ((assq 'window-system parameters) - (cdr (assq 'window-system parameters))) - (display - (or (window-system-for-display display) - (error "Don't know how to interpret display %S" - display))) - (t window-system))) - (frame-creation-function (cdr (assq w frame-creation-function-alist))) + (w (or + (cond + ((assq 'terminal parameters) + (let ((type (terminal-live-p + (cdr (assq 'terminal parameters))))) + (cond + ((null type) (error "Terminal %s does not exist" + (cdr (assq 'terminal parameters)))) + (t type)))) + ((assq 'window-system parameters) + (cdr (assq 'window-system parameters))) + (display + (or (window-system-for-display display) + (error "Don't know how to interpret display %S" + display))) + (t window-system)) + t)) (oldframe (selected-frame)) (params parameters) frame) - (unless frame-creation-function - (error "Don't know how to create a frame on window system %s" w)) (unless (get w 'window-system-initialized) - (funcall (cdr (assq w window-system-initialization-alist)) display) + (funcall (gui-method window-system-initialization w) display) (setq x-display-name display) (put w 'window-system-initialized t)) @@ -669,7 +682,8 @@ the new frame according to its own rules." (push p params))) ;; Now make the frame. (run-hooks 'before-make-frame-hook) - (setq frame (funcall frame-creation-function params)) + (setq frame + (funcall (gui-method frame-creation-function w) params)) (normal-erase-is-backspace-setup-frame frame) ;; Inherit the original frame's parameters. (dolist (param frame-inherited-parameters) @@ -1252,20 +1266,22 @@ On graphical displays, it is displayed on the frame's title bar." (list (cons 'name name)))) (defun frame-current-scroll-bars (&optional frame) - "Return the current scroll-bar settings in frame FRAME. -Value is a cons (VERTICAL . HORIZ0NTAL) where VERTICAL specifies the -current location of the vertical scroll-bars (left, right, or nil), -and HORIZONTAL specifies the current location of the horizontal scroll -bars (top, bottom, or nil)." - (let ((vert (frame-parameter frame 'vertical-scroll-bars)) - (hor nil)) - (unless (memq vert '(left right nil)) - (setq vert default-frame-scroll-bars)) - (cons vert hor))) + "Return the current scroll-bar types for frame FRAME. +Value is a cons (VERTICAL . HORIZ0NTAL) where VERTICAL specifies +the current location of the vertical scroll-bars (`left', `right' +or nil), and HORIZONTAL specifies the current location of the +horizontal scroll bars (`bottom' or nil). FRAME must specify a +live frame and defaults to the selected one." + (let* ((frame (window-normalize-frame frame)) + (vertical (frame-parameter frame 'vertical-scroll-bars)) + (horizontal (frame-parameter frame 'horizontal-scroll-bars))) + (unless (memq vertical '(left right nil)) + (setq vertical default-frame-scroll-bars)) + (cons vertical (and horizontal 'bottom)))) (defun frame-monitor-attributes (&optional frame) "Return the attributes of the physical monitor dominating FRAME. -If FRAME is omitted, describe the currently selected frame. +If FRAME is omitted or nil, describe the currently selected frame. A frame is dominated by a physical monitor when either the largest area of the frame resides in the monitor, or the monitor @@ -1357,6 +1373,7 @@ frame's display)." (defun display-screens (&optional display) "Return the number of screens associated with DISPLAY. +DISPLAY should be either a frame or a display name (a string). If DISPLAY is omitted or nil, it defaults to the selected frame's display." (let ((frame-type (framep-on-display display))) (cond @@ -1369,6 +1386,7 @@ If DISPLAY is omitted or nil, it defaults to the selected frame's display." (defun display-pixel-height (&optional display) "Return the height of DISPLAY's screen in pixels. +DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display. For character terminals, each character counts as a single pixel. @@ -1388,6 +1406,7 @@ with DISPLAY. To get information for each physical monitor, use (defun display-pixel-width (&optional display) "Return the width of DISPLAY's screen in pixels. +DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display. For character terminals, each character counts as a single pixel. @@ -1426,6 +1445,7 @@ not explicitly specified." (defun display-mm-height (&optional display) "Return the height of DISPLAY's screen in millimeters. If the information is unavailable, this function returns nil. +DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display. You can override what the system thinks the result should be by @@ -1446,6 +1466,7 @@ monitor, use `display-monitor-attributes-list'." (defun display-mm-width (&optional display) "Return the width of DISPLAY's screen in millimeters. If the information is unavailable, this function returns nil. +DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display. You can override what the system thinks the result should be by @@ -1469,6 +1490,7 @@ monitor, use `display-monitor-attributes-list'." "Return the backing store capability of DISPLAY's screen. The value may be `always', `when-mapped', `not-useful', or nil if the question is inapplicable to a certain kind of display. +DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display." (let ((frame-type (framep-on-display display))) (cond @@ -1481,6 +1503,7 @@ If DISPLAY is omitted or nil, it defaults to the selected frame's display." (defun display-save-under (&optional display) "Return non-nil if DISPLAY's screen supports the SaveUnder feature. +DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display." (let ((frame-type (framep-on-display display))) (cond @@ -1493,6 +1516,7 @@ If DISPLAY is omitted or nil, it defaults to the selected frame's display." (defun display-planes (&optional display) "Return the number of planes supported by DISPLAY. +DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display." (let ((frame-type (framep-on-display display))) (cond @@ -1507,6 +1531,7 @@ If DISPLAY is omitted or nil, it defaults to the selected frame's display." (defun display-color-cells (&optional display) "Return the number of color cells supported by DISPLAY. +DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display." (let ((frame-type (framep-on-display display))) (cond @@ -1523,6 +1548,7 @@ If DISPLAY is omitted or nil, it defaults to the selected frame's display." "Return the visual class of DISPLAY. The value is one of the symbols `static-gray', `gray-scale', `static-color', `pseudo-color', `true-color', or `direct-color'. +DISPLAY can be a display name or a frame. If DISPLAY is omitted or nil, it defaults to the selected frame's display." (let ((frame-type (framep-on-display display))) (cond @@ -1543,33 +1569,43 @@ If DISPLAY is omitted or nil, it defaults to the selected frame's display." (defun display-monitor-attributes-list (&optional display) "Return a list of physical monitor attributes on DISPLAY. -Each element of the list represents the attributes of each -physical monitor. The first element corresponds to the primary -monitor. +DISPLAY can be a display name, a terminal name, or a frame. +If DISPLAY is omitted or nil, it defaults to the selected frame's display. +Each element of the list represents the attributes of a physical +monitor. The first element corresponds to the primary monitor. -Attributes for a physical monitor is represented as an alist of -attribute keys and values as follows: +The attributes for a physical monitor are represented as an alist +of attribute keys and values as follows: - geometry -- Position and size in pixels in the form of - (X Y WIDTH HEIGHT) - workarea -- Position and size of the workarea in pixels in the + geometry -- Position and size in pixels in the form of (X Y WIDTH HEIGHT) + workarea -- Position and size of the work area in pixels in the form of (X Y WIDTH HEIGHT) mm-size -- Width and height in millimeters in the form of (WIDTH HEIGHT) frames -- List of frames dominated by the physical monitor name (*) -- Name of the physical monitor as a string + source (*) -- Source of multi-monitor information as a string -where X, Y, WIDTH, and HEIGHT are integers. Keys labeled -with (*) are optional. +where X, Y, WIDTH, and HEIGHT are integers. X and Y are coordinates +of the top-left corner, and might be negative for monitors other than +the primary one. Keys labeled with (*) are optional. + +The \"work area\" is a measure of the \"usable\" display space. +It may be less than the total screen size, owing to space taken up +by window manager features (docks, taskbars, etc.). The precise +details depend on the platform and environment. + +The `source' attribute describes the source from which the information +was obtained. On X, this may be one of: \"Gdk\", \"XRandr\", \"Xinerama\", +or \"fallback\". A frame is dominated by a physical monitor when either the largest area of the frame resides in the monitor, or the monitor is the closest to the frame if the frame does not intersect any -physical monitors. Every non-tip frame (including invisible one) +physical monitors. Every (non-tooltip) frame (including invisible ones) in a graphical display is dominated by exactly one physical monitor at a time, though it can span multiple (or no) physical -monitors. -If DISPLAY is omitted or nil, it defaults to the selected frame's display." +monitors." (let ((frame-type (framep-on-display display))) (cond ((eq frame-type 'x) @@ -1820,6 +1856,11 @@ If the frame is in fullscreen mode, don't change its mode, just toggle the temporary frame parameter `maximized', so the frame will go to the right maximization state after disabling fullscreen mode. + +Note that with some window managers you may have to set +`frame-resize-pixelwise' to non-nil in order to make a frame +appear truly maximized. + See also `toggle-frame-fullscreen'." (interactive) (if (memq (frame-parameter nil 'fullscreen) '(fullscreen fullboth)) @@ -1841,6 +1882,11 @@ already fullscreen. Ignore window manager screen decorations. When turning on fullscreen mode, remember the previous value of the maximization state in the temporary frame parameter `maximized'. Restore the maximization state when turning off fullscreen mode. + +Note that with some window managers you may have to set +`frame-resize-pixelwise' to non-nil in order to make a frame +appear truly fullscreen. + See also `toggle-frame-maximized'." (interactive) (modify-frame-parameters diff --git a/lisp/frameset.el b/lisp/frameset.el index b943d47e7bf..f8436259df0 100644 --- a/lisp/frameset.el +++ b/lisp/frameset.el @@ -664,10 +664,7 @@ nil while the filtering is done to restore it." ;; Set the display parameter after filtering, so that filter functions ;; have access to its original value. (when frameset--target-display - (let ((display (assq 'display filtered))) - (if display - (setcdr display (cdr frameset--target-display)) - (push frameset--target-display filtered)))) + (setf (alist-get 'display filtered) (cdr frameset--target-display))) filtered)) diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 8b3262998d2..6c59200dfa6 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,44 @@ +2014-10-06 Jan Tatarik <jan.tatarik@gmail.com> + + * gnus-icalendar.el (gnus-icalendar-identities): + Include message-alternative-emails. + +2014-10-04 Alan Schmitt <alan.schmitt@polytechnique.org> (tiny change) + + * nnimap.el (nnimap-process-expiry-targets): Reverse the list of + expired messages only when it was built in reverse order. + +2014-10-04 Peter Münster <pmlists@free.fr> (tiny change) + + * gnus-delay.el (gnus-delay-send-queue): Remove `gnus-delay-header' + last so it can be used in `message-send-hook'. + +2014-10-02 Daiki Ueno <ueno@gnu.org> + + * mml.el (mml-parse-1): Error out if unknown mode is specified in + <#secure> tag (bug#18513). + +2014-09-29 Daiki Ueno <ueno@gnu.org> + + * mml.el (mml-parse-1): Error out if unknown mode is specified in + <#secure> tag (bug#18513). + +2014-09-11 Paul Eggert <eggert@cs.ucla.edu> + + * gnus-cloud.el (gnus-cloud-parse-version-1): Fix misspelling + of ":delete". + +2014-08-26 Katsumi Yamaoka <yamaoka@jpl.org> + + * gnus-art.el (gnus-article-browse-html-save-cid-content) + (gnus-article-browse-html-parts): + Revert last change that breaks links other than cid contents. + +2014-08-26 Katsumi Yamaoka <yamaoka@jpl.org> + + * gnus-art.el (gnus-article-browse-html-save-cid-content) + (gnus-article-browse-html-parts): Make cid file names relative. + 2014-08-21 Katsumi Yamaoka <yamaoka@jpl.org> * mm-view.el (mm-display-inline-fontify): Make the working buffer diff --git a/lisp/gnus/ChangeLog.2 b/lisp/gnus/ChangeLog.2 index 475f7667f39..37d1c1d9f7a 100644 --- a/lisp/gnus/ChangeLog.2 +++ b/lisp/gnus/ChangeLog.2 @@ -41,20 +41,20 @@ * message.el (message-header-synonyms): Defcustom. (message-get-reply-headers): Catch `Original-To'. - (message-carefully-insert-headers): Added comment. + (message-carefully-insert-headers): Add comment. - * gnus-sum.el (gnus-summary-make-menu-bar): Improved "Washing" menu. + * gnus-sum.el (gnus-summary-make-menu-bar): Improve "Washing" menu. 2004-01-03 Lars Magne Ingebrigtsen <larsi@gnus.org> * gnus-sum.el (gnus-select-newsgroup): Use cat. - * gnus-agent.el (gnus-agent-cat-enable-undownloaded-faces): New - cat. + * gnus-agent.el (gnus-agent-cat-enable-undownloaded-faces): + New cat. - * gnus.el (gnus-user-agent): Moved here. + * gnus.el (gnus-user-agent): Move here. - * gnus-msg.el (gnus-user-agent): Moved from here. + * gnus-msg.el (gnus-user-agent): Move from here. * gnus.el (gnus-version-number): Bump. @@ -104,20 +104,19 @@ topic lines. (gnus-group-set-current-level): Fix fix. -2003-12-31 Jeremy Maitin-Shepard <jbms@attbi.com> +2003-12-31 Jeremy Maitin-Shepard <jbms@attbi.com> (tiny change) - * mml.el (mml-generate-mime-1): Use mml-compute-boundary (tiny - change). + * mml.el (mml-generate-mime-1): Use mml-compute-boundary. 2003-12-30 Reiner Steib <Reiner.Steib@gmx.de> - * gnus-group.el: Removed `(when t ...)' around `gnus-define-keys'. - (gnus-group-group-map): Added `gnus-group-read-ephemeral-group' + * gnus-group.el: Remove `(when t ...)' around `gnus-define-keys'. + (gnus-group-group-map): Add `gnus-group-read-ephemeral-group' (already in previous commit inadvertently). - (gnus-group-make-menu-bar): Added `gnus-group-read-ephemeral-group'. + (gnus-group-make-menu-bar): Add `gnus-group-read-ephemeral-group'. (gnus-group-read-ephemeral-group): Made interactive. - * gnus-score.el (gnus-score-find-trace): Added comment on sync + * gnus-score.el (gnus-score-find-trace): Add comment on sync with `gnus-score-edit-file-at-point'. * gnus-logic.el (gnus-score-advanced): Ditto. @@ -127,8 +126,8 @@ 2003-12-30 Simon Josefsson <jas@extundo.com> - * gnus-score.el (gnus-score-edit-file-at-point): Use - gnus-point-at-*, for portability. + * gnus-score.el (gnus-score-edit-file-at-point): + Use gnus-point-at-*, for portability. 2003-12-30 Reiner Steib <Reiner.Steib@gmx.de> @@ -136,8 +135,8 @@ custom type. (gnus-button-mid-or-mail-regexp): Don't be too restrictive. Suggested by Felix Wiemann <Felix.Wiemann@gmx.net>. - (gnus-button-alist): Added "M-x ... RET" and "mid:" buttons. - Added comments about relevant RFCs. + (gnus-button-alist): Add "M-x ... RET" and "mid:" buttons. + Add comments about relevant RFCs. * gnus-sum.el (gnus-summary-mode): Untabify doc-string. (gnus-summary-goto-article): Allow `%40'. @@ -150,15 +149,15 @@ 2003-12-30 Reiner Steib <Reiner.Steib@gmx.de> - (gnus-score-find-trace): Use gnus-score-edit-file-at-point. Added - `f' and `t' commands, added quick help. With some suggestions + (gnus-score-find-trace): Use gnus-score-edit-file-at-point. + Add `f' and `t' commands, added quick help. With some suggestions from Karl Pflästerer <sigurd@12move.de>. - * gnus-util.el (gnus-emacs-version): Added doc-string. + * gnus-util.el (gnus-emacs-version): Add doc-string. * mml.el (mml-minibuffer-read-disposition): New function. (mml-attach-file): Use it. - (mml-preview): Added MIME preview to gnus-buffers. + (mml-preview): Add MIME preview to gnus-buffers. 2003-12-30 Karl Pflästerer <sigurd@12move.de> @@ -190,7 +189,7 @@ (gnus-agent-auto-agentize-methods): Customize. 2003-12-29 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus.el (gnus-server-to-method): Fixed bug in 2003-12-22 + * gnus.el (gnus-server-to-method): Fix bug in 2003-12-22 check-in. 2003-12-28 Adrian Lanz <lanz@fowi.ethz.ch> @@ -202,8 +201,8 @@ 2003-12-28 Jesper Harder <harder@ifa.au.dk> - * mm-view.el (mm-text-html-washer-alist): Use - mm-inline-wash-with-stdin for w3m-standalone. + * mm-view.el (mm-text-html-washer-alist): + Use mm-inline-wash-with-stdin for w3m-standalone. * mm-decode.el (mm-text-html-renderer): Add w3m-standalone. @@ -226,16 +225,16 @@ 2003-12-22 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-int.el (gnus-open-server): Fixed the server status such + * gnus-int.el (gnus-open-server): Fix the server status such that an agentized server, when opened offline, has a status of offline. Also fixes bug whereby the agent's backend was called twice to open each server. - * gnus-start.el (gnus-get-unread-articles-in-group): Autoload - gnus-agent-possibly-alter-active rather than inline to resolve + * gnus-start.el (gnus-get-unread-articles-in-group): + Autoload gnus-agent-possibly-alter-active rather than inline to resolve compiler warnings. - * gnus.el (gnus-server-to-method): Added fallback of iterating + * gnus.el (gnus-server-to-method): Add fallback of iterating over gnus-newsrc-alist to resolve names of foreign servers. Should fix recent agent bug. @@ -247,8 +246,8 @@ 2003-12-21 Jesper Harder <harder@ifa.au.dk> - * gnus-agent.el (gnus-agent-read-agentview): Use - car-less-than-car. + * gnus-agent.el (gnus-agent-read-agentview): + Use car-less-than-car. 2003-12-20 Artem Chuprina <ran@ran.pp.ru> (tiny change) @@ -267,17 +266,17 @@ 2003-12-18 Reiner Steib <Reiner.Steib@gmx.de> * mm-url.el (mm-url-insert-file-contents-external) - (mm-url-insert-file-contents): Added doc-strings. Autoload. + (mm-url-insert-file-contents): Add doc-strings. Autoload. 2003-12-18 Jesper Harder <harder@ifa.au.dk> - * gnus-cus.el (defvar): Defvar - gnus-agent-cat-disable-undownloaded-faces. + * gnus-cus.el (defvar): + Defvar gnus-agent-cat-disable-undownloaded-faces. 2003-12-17 Katsumi Yamaoka <yamaoka@jpl.org> - * message.el (message-forward-subject-name-subject): Use - gnus-extract-address-components instead of + * message.el (message-forward-subject-name-subject): + Use gnus-extract-address-components instead of mail-header-parse-address because it may be called with non-ascii text. @@ -320,7 +319,7 @@ 2003-12-13 Teodor Zlatanov <tzz@lifelogs.com> - * spam.el: Added some gnus-registry autoloads. + * spam.el: Add some gnus-registry autoloads. (spam-split-symbolic-return): Makes spam-split return 'spam instead of the value of spam-split-group when spam is detected. (spam-split-symbolic-return-positive): Makes spam-split return @@ -345,8 +344,8 @@ (spam-unload-hook): Remove spam-find-spam from gnus-summary-prepare-hook. - * gnus.el (spam-autodetect, spam-autodetect-methods): New - configuration items for spam autodetection. + * gnus.el (spam-autodetect, spam-autodetect-methods): + New configuration items for spam autodetection. 2003-12-12 Reiner Steib <Reiner.Steib@gmx.de> @@ -367,16 +366,16 @@ (gnus-agent-regenerate-group): When necessary, alter the group's active range to include articles newly recognized as being downloaded. - (gnus-agent-regenerate): Removed code that updated the agent's + (gnus-agent-regenerate): Remove code that updated the agent's active file as the new gnus-agent-possibly-alter-active function obsolesced it. - * gnus-cus.el (gnus-agent-customize-category): Added missing + * gnus-cus.el (gnus-agent-customize-category): Add missing agent-disable-undownloaded-faces parameter. * gnus-start.el (gnus-activate-group): Backed out my 2003-11-29 patch as it was too late at adjusting the active range. - (gnus-get-unread-articles-in-group): Added call to new + (gnus-get-unread-articles-in-group): Add call to new gnus-agent-possibly-alter-active to adjust the active range. 2003-12-10 Jesper Harder <harder@ifa.au.dk> @@ -385,10 +384,10 @@ 2003-12-10 LÅ‘rentey Károly <lorentey@elte.hu> - * spam.el (spam-disable-spam-split-during-ham-respool): New - variable. - (spam-ham-copy-or-move-routine): Respect - spam-disable-spam-split-during-ham-respool. + * spam.el (spam-disable-spam-split-during-ham-respool): + New variable. + (spam-ham-copy-or-move-routine): + Respect spam-disable-spam-split-during-ham-respool. (spam-split-disabled): New variable. (spam-split): Respect spam-split-disabled. @@ -412,8 +411,8 @@ 2003-12-09 Xavier Maillard <zedek@gnu-rox.org> - * spam.el (spam-bogofilter-database-directory): Correct - customization group. + * spam.el (spam-bogofilter-database-directory): + Correct customization group. 2003-12-09 Per Abrahamsen <abraham@dina.kvl.dk> @@ -459,8 +458,8 @@ 2003-12-07 Jesper Harder <harder@ifa.au.dk> - * spam.el (spam-check-spamoracle, spam-spamoracle-learn): Don't - use = or zerop to test the return value of call-process, because + * spam.el (spam-check-spamoracle, spam-spamoracle-learn): + Don't use = or zerop to test the return value of call-process, because it can be a string. * mail-source.el (mail-source-fetch-with-program): Do. @@ -505,10 +504,10 @@ 2003-12-01 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agent-consider-all-articles): Updated - docstring. + * gnus-agent.el (gnus-agent-consider-all-articles): + Update docstring. (gnus-predicate-implies-unread, gnus-predicate-implies-unread-1): - Fixed implementation such that the predicate `true' no longer + Fix implementation such that the predicate `true' no longer evaluates to t. 2003-12-01 Adrian Lanz <lanz@fowi.ethz.ch> (tiny change) @@ -558,14 +557,14 @@ 2003-11-29 Jesper Harder <harder@ifa.au.dk> - * gnus-group.el (gnus-group-make-menu-bar): Add - gnus-group-make-rss-group. + * gnus-group.el (gnus-group-make-menu-bar): + Add gnus-group-make-rss-group. 2003-11-28 Reiner Steib <Reiner.Steib@gmx.de> - * message.el: Added custom-manual links to all variables that have + * message.el: Add custom-manual links to all variables that have an index entry in the message manual. - (message-generate-headers-first): Fixed doc-string. + (message-generate-headers-first): Fix doc-string. 2003-11-27 Katsumi Yamaoka <yamaoka@jpl.org> @@ -611,15 +610,15 @@ (spam-classification-valid-p, spam-process-type-valid-p) (spam-registration-check-valid-p) (spam-unregistration-check-valid-p): Convenience functions. - (spam-registration-function, spam-unregistration-function): Look - up the registration/unregistration function based on a + (spam-registration-function, spam-unregistration-function): + Look up the registration/unregistration function based on a classification and the check (spam-use-* symbol). (spam-list-articles): Generate list of spam/ham articles from a given list of articles. (spam-register-routine): Do the heavy work of registering and unregistering articles, using all the articles in the group or specific ones as needed. - (spam-generic-register-routine): Removed, no longer used. + (spam-generic-register-routine): Remove, no longer used. (spam-log-unregistration-needed-p, spam-log-undo-registration): Handle article registration/unregistration with a given spam/ham processor and group. @@ -642,7 +641,7 @@ parameter is specified. (spam-stat-load): Clear spam-stat-dirty. - * gnus.el (gnus-install-group-spam-parameters): Marked the + * gnus.el (gnus-install-group-spam-parameters): Mark the old-style exit processors as obsolete in the docs, added the new-style exit processors while the old ones are still allowed. @@ -666,23 +665,23 @@ 2003-11-20 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus.el (gnus-agent-covered-methods): Documented use of + * gnus.el (gnus-agent-covered-methods): Document use of named servers, not methods, to identity agentized groups. Users may now change their server configurations without having the server become "unagentized". - (gnus-agent-covered-methods): Removed from gnus-variable-list to + (gnus-agent-covered-methods): Remove from gnus-variable-list to avoid storing two copies of gnus-agent-covered-methods, one in .newsrc.eld and the other in agent/lib/servers. (gnus-server-to-method): Do not cache server for the nil method. (gnus-method-to-server): New function. Associate named server with all, even foreign, methods. - (gnus-agent-method-p, gnus-agent-method-p-cache): Incorporated + (gnus-agent-method-p, gnus-agent-method-p-cache): Incorporate simple last-response cache to offset performance lose of having to always convert methods to named servers. - * gnus-agent.el (gnus-agent-expire-days): Removed obsolete + * gnus-agent.el (gnus-agent-expire-days): Remove obsolete documentation. (gnus-agentize, gnus-agent-add-server, gnus-agent-remove-server): - Modified to support new definition of gnus-agent-covered-method. + Modify to support new definition of gnus-agent-covered-method. (gnus-agent-read-servers): Rewritten to convert old method data into server names. (gnus-agent-read-servers-validate) @@ -701,17 +700,17 @@ (gnus-agent-expire-done-message): New function. (gnus-agent-unread-articles): Bug fix. No longer drops last unread article onto read list. - (gnus-agent-regenerate-group): Changed prompt to use typical + (gnus-agent-regenerate-group): Change prompt to use typical style. (gnus-agent-group-covered-p): Rewrote to internally use gnus-agent-method-p. * gnus-int.el (gnus-start-news-server): Partially convert old gnus-agent-covered-methods to new format so that gnus-open-server functions correctly. - * gnus-srvr.el (gnus-server-insert-server-line): Replaced - gnus-agent-covered-methods with gnus-agent-method-p. - * gnus-start.el (gnus-clear-system): Added - gnus-agent-covered-methods to compensate for removing it from + * gnus-srvr.el (gnus-server-insert-server-line): + Replace gnus-agent-covered-methods with gnus-agent-method-p. + * gnus-start.el (gnus-clear-system): + Add gnus-agent-covered-methods to compensate for removing it from gnus-variable-list. (gnus-setup-news): Complete conversion of old gnus-agent-covered-methods to new format so that secondary and @@ -831,9 +830,9 @@ 2003-11-10 Reiner Steib <Reiner.Steib@gmx.de> - * message.el (message-mode-field-menu): Moved some entries, added + * message.el (message-mode-field-menu): Move some entries, added `message-insert-wide-reply'. - (message-change-subject): Fixed comment. + (message-change-subject): Fix comment. 2003-11-10 Sam Steingold <sds@gnu.org> @@ -876,15 +875,15 @@ requested. (gnus-registry-split-fancy-with-parent): When long names are in use, strip the name if we're in the native server, or else return nothing. - (gnus-registry-spool-action, gnus-registry-action): Use - gnus-group-guess-full-name-from-command-method instead of + (gnus-registry-spool-action, gnus-registry-action): + Use gnus-group-guess-full-name-from-command-method instead of gnus-group-guess-full-name. * spam.el (spam-mark-spam-as-expired-and-move-routine) (spam-ham-copy-or-move-routine): Prevent article deletions or moves unless the backend allows it. - * gnus.el (gnus-install-group-spam-parameters): Fixed parameters + * gnus.el (gnus-install-group-spam-parameters): Fix parameters to list spamoracle as well, suggested by Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr>. @@ -899,7 +898,7 @@ 2003-10-31 Teodor Zlatanov <tzz@lifelogs.com> * spam.el - (spam-log-processing-to-registry): Improved message and comments. + (spam-log-processing-to-registry): Improve message and comments. (spam-log-unregistration-needed-p): New function. (spam-ifile-register-spam-routine) (spam-ifile-register-ham-routine, spam-stat-register-spam-routine) @@ -908,8 +907,8 @@ (spam-whitelist-register-routine) (spam-bogofilter-register-spam-routine) (spam-bogofilter-register-ham-routine) - (spam-spamoracle-learn-ham, spam-spamoracle-learn-spam): Change - spam-log-processing-to-registry invocations appropriately. + (spam-spamoracle-learn-ham, spam-spamoracle-learn-spam): + Change spam-log-processing-to-registry invocations appropriately. 2003-10-31 Derek Atkins <warlord@MIT.EDU> (tiny change) @@ -936,8 +935,8 @@ (spam-whitelist-register-routine) (spam-bogofilter-register-spam-routine) (spam-bogofilter-register-ham-routine) - (spam-spamoracle-learn-ham, spam-spamoracle-learn-spam): Add - spam-log-processing-to-registry invocations. + (spam-spamoracle-learn-ham, spam-spamoracle-learn-spam): + Add spam-log-processing-to-registry invocations. * gnus-registry.el: Fixed docs in the preface to mention gnus-registry-initialize. @@ -1002,7 +1001,7 @@ * spam.el (spam-mark-spam-as-expired-and-move-routine) (spam-ham-copy-or-move-routine): Don't ask when deleting copied articles, and use move instead of copy when possible. - (spam-split): Added the option of specifying a string as a + (spam-split): Add the option of specifying a string as a spam-split parameter; such a string will override spam-split-group temporarily. @@ -1017,8 +1016,8 @@ * gnus-art.el (gnus-button-alist): Allow & in mailto URLs. (gnus-header-button-alist): Likewise. (gnus-url-mailto): Handle ?to parameters. Replace \r\n with \n. - Reverse parameter list to use same order as in the URL. Reported - by f95-msv@f.kth.se (MÃ¥rten Svantesson). + Reverse parameter list to use same order as in the URL. + Reported by f95-msv@f.kth.se (MÃ¥rten Svantesson). 2003-10-25 Teodor Zlatanov <tzz@lifelogs.com> @@ -1036,8 +1035,8 @@ 2003-10-24 Katsumi Yamaoka <yamaoka@jpl.org> - * nndoc.el (nndoc-guess-type): Reverse the sort order. Suggested - by ARISAWA Akihiro <ari@mbf.ocn.ne.jp>. + * nndoc.el (nndoc-guess-type): Reverse the sort order. + Suggested by ARISAWA Akihiro <ari@mbf.ocn.ne.jp>. (nndoc-dissect-buffer): Don't miss even-numbered articles. 2003-10-23 Katsumi Yamaoka <yamaoka@jpl.org> @@ -1054,7 +1053,7 @@ requirement, now just "IP address" is enough for detection for blackhole checking. (spam-check-blackholes): Oops, the dots were not escaped. - (spam-mark-spam-as-expired-and-move-routine): Added multiple group + (spam-mark-spam-as-expired-and-move-routine): Add multiple group support (multiple copies, then delete). (spam-ham-copy-routine): New function. (spam-ham-move-routine): New function. @@ -1086,8 +1085,8 @@ * gnus-art.el (gnus-narrow-to-page): Clear as well as set the value for gnus-page-broken. - * gnus-sum.el (gnus-summary-beginning-of-article): Use - gnus-break-pages instead of gnus-page-broken. + * gnus-sum.el (gnus-summary-beginning-of-article): + Use gnus-break-pages instead of gnus-page-broken. (gnus-summary-end-of-article): Use gnus-break-pages instead of gnus-page-broken; narrow to the end of a page beforehand. (gnus-summary-toggle-header): Use gnus-break-pages instead of @@ -1113,15 +1112,15 @@ * gnus-msg.el (gnus-extended-version): Use it. - * gnus-util.el (gnus-emacs-version): Separated out into own + * gnus-util.el (gnus-emacs-version): Separate out into own function. 2003-10-19 Reiner Steib <Reiner.Steib@gmx.de> - * message.el (message-mode-field-menu): Added - message-generate-unsubscribed-mail-followup-to. + * message.el (message-mode-field-menu): + Add message-generate-unsubscribed-mail-followup-to. (message-forward-subject-fwd): Avoid double "Fwd: ". - (message-change-subject): Added comment. + (message-change-subject): Add comment. 2003-10-19 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -1131,8 +1130,8 @@ 2003-10-19 Katsumi Yamaoka <yamaoka@jpl.org> - * gnus-sum.el (gnus-remove-odd-characters): Use - mm-subst-char-in-string instead of subst-char-in-string. + * gnus-sum.el (gnus-remove-odd-characters): + Use mm-subst-char-in-string instead of subst-char-in-string. (gnus-summary-refer-article): Use gnus-replace-in-string instead of replace-regexp-in-string. @@ -1143,22 +1142,19 @@ 2003-10-18 Jesper Harder <harder@ifa.au.dk> - * gnus-sum.el (gnus-summary-save-parts-last-directory): Default - to mm-default-directory. + * gnus-sum.el (gnus-summary-save-parts-last-directory): + Default to mm-default-directory. (gnus-summary-save-parts-1): Use mm-file-name-rewrite-functions. 2003-10-18 Lars Magne Ingebrigtsen <larsi@gnus.org> - * pop3.el (pop3-read-response): Check whether the process is - alive. + * pop3.el (pop3-read-response): Check whether the process is alive. * gnus-sum.el (gnus-summary-refer-article): Strip spaces. - * rfc2047.el (rfc2047-encode-region): Do error out on invalid - strings. + * rfc2047.el (rfc2047-encode-region): Do error out on invalid strings. - * nntp.el (nntp-retrieve-headers-with-xover): Get error messages - right. + * nntp.el (nntp-retrieve-headers-with-xover): Get error messages right. * gnus-agent.el (gnus-agent-read-servers): Remove sit-for. @@ -1244,8 +1240,8 @@ name for gcc-self. (gnus-inews-insert-archive-gcc): Paren mistake. - * gnus-sum.el (gnus-summary-enter-digest-group): Add - parent-group. + * gnus-sum.el (gnus-summary-enter-digest-group): + Add parent-group. * gnus-art.el (gnus-ignored-headers): Add more headers. @@ -1329,8 +1325,8 @@ 2003-10-06 Jesper Harder <harder@ifa.au.dk> - * gnus.el (gnus-group-faq-directory): Update .tw entry. From - Albert Chun-Chieh Huang <mr894348@cs.nthu.edu.tw> + * gnus.el (gnus-group-faq-directory): Update .tw entry. + From Albert Chun-Chieh Huang <mr894348@cs.nthu.edu.tw> 2003-10-03 Teodor Zlatanov <tzz@lifelogs.com> @@ -1355,7 +1351,7 @@ 2003-10-02 Reiner Steib <Reiner.Steib@gmx.de> - * spam.el (spam-install-hooks-function): Added Autoload cookie. + * spam.el (spam-install-hooks-function): Add Autoload cookie. 2003-10-02 Michael Shields <shields@msrl.com> @@ -1369,8 +1365,7 @@ 2003-10-01 Jesper Harder <harder@ifa.au.dk> - * message.el (message-send): Fix reversed logic of supersedes - check. + * message.el (message-send): Fix reversed logic of supersedes check. 2003-09-30 Reiner Steib <Reiner.Steib@gmx.de> @@ -1464,8 +1459,8 @@ 2003-09-05 Teodor Zlatanov <tzz@lifelogs.com> - * gnus-registry.el (gnus-registry-split-fancy-with-parent): Yet - another error. *sigh* + * gnus-registry.el (gnus-registry-split-fancy-with-parent): + Yet another error. *sigh* * gnus-registry.el (gnus-registry-fetch-extra-entry): Don't use puthash unless gnus-registry-entry-caching is on. @@ -1495,10 +1490,10 @@ (gnus-registry-register-message-ids): Pass subject to gnus-registry-add-group. (gnus-registry-simplify-subject) - (gnus-registry-fetch-simplified-message-subject-fast): New - functions. - (gnus-registry-fetch-extra, gnus-registry-fetch-extra-entry): Add - extra data entry caching. + (gnus-registry-fetch-simplified-message-subject-fast): + New functions. + (gnus-registry-fetch-extra, gnus-registry-fetch-extra-entry): + Add extra data entry caching. (gnus-registry-add-group): Handle the extra subject parameter. (gnus-registry-install-hooks, gnus-registry-unload-hook): Fix the gnus-register-* function names. @@ -1506,27 +1501,27 @@ * nnmail.el (nnmail-cache-insert): Add subject parameter, pass it on to the nnmail-spool-hook. - * nnbabyl.el (nnbabyl-request-accept-article): Added subject to + * nnbabyl.el (nnbabyl-request-accept-article): Add subject to nnmail-cache-insert call. - * nndiary.el (nndiary-request-accept-article): Added subject to + * nndiary.el (nndiary-request-accept-article): Add subject to nnmail-cache-insert call. - * nnfolder.el (nnfolder-request-accept-article): Added subject to + * nnfolder.el (nnfolder-request-accept-article): Add subject to nnmail-cache-insert call. - * nnimap.el (nnimap-split-articles): Added subject to + * nnimap.el (nnimap-split-articles): Add subject to nnmail-cache-insert call. - (nnimap-request-accept-article): Added subject to + (nnimap-request-accept-article): Add subject to nnmail-cache-insert call. - * nnmbox.el (nnmbox-request-accept-article): Added subject to + * nnmbox.el (nnmbox-request-accept-article): Add subject to nnmail-cache-insert call. - * nnmh.el (nnmh-request-accept-article): Added subject to + * nnmh.el (nnmh-request-accept-article): Add subject to nnmail-cache-insert call. - * nnml.el (nnml-request-accept-article): Added subject to + * nnml.el (nnml-request-accept-article): Add subject to nnmail-cache-insert call. 2003-09-04 Jesper Harder <harder@ifa.au.dk> @@ -1557,8 +1552,8 @@ 2003-08-29 Simon Josefsson <jas@extundo.com> - * gnus-group.el (gnus-group-delete-group): Doc fix. Suggested by - Jochen Küpper <jochen@jochen-kuepper.de>. + * gnus-group.el (gnus-group-delete-group): Doc fix. + Suggested by Jochen Küpper <jochen@jochen-kuepper.de>. 2003-08-29 Katsumi Yamaoka <yamaoka@jpl.org> @@ -1592,13 +1587,13 @@ 2003-08-24 Jesper Harder <harder@ifa.au.dk> - * gnus-art.el (gnus-header-button-alist, gnus-button-alist): Fix - type. + * gnus-art.el (gnus-header-button-alist, gnus-button-alist): + Fix type. 2003-08-22 Jesper Harder <harder@ifa.au.dk> - * message.el (message-make-forward-subject-function): Fix - customize mismatch. + * message.el (message-make-forward-subject-function): + Fix customize mismatch. * gnus.el (gnus-message-archive-method): Do. @@ -1608,7 +1603,7 @@ char is `/' and add more information for the user. * gnus-art.el (gnus-button-alist): Add `+' (gnus-button-handle-man). - (gnus-header-button-alist): Added `In-Reply-To'. + (gnus-header-button-alist): Add `In-Reply-To'. * nnimap.el (nnimap-open-connection): Allow different user names on the same server (and in the same authinfo file). @@ -1617,15 +1612,15 @@ * gnus-sieve.el (gnus-sieve-crosspost): Fix type. - * message.el (message-make-forward-subject-function): Add - message-forward-subject-name-subject to choices. + * message.el (message-make-forward-subject-function): + Add message-forward-subject-name-subject to choices. * gnus-art.el (gnus-article-edit-done, gnus-article-edit-exit): Redisplay article after editing. 2003-08-20 Jari Aalto <jari.aalto@poboxes.com> - * gnus.el (gnus-read-group): Added check to ask confirmation if + * gnus.el (gnus-read-group): Add check to ask confirmation if Group name contains invalid character. You can use '/' in IMAP, but not in filenames. G m cannot know what the user is creating, so let user decide. See thread m2oeysiev3.fsf@naima.lensflare.org. @@ -1645,8 +1640,8 @@ 2003-08-07 Jesper Harder <harder@ifa.au.dk> - * pgg-gpg.el (pgg-gpg-process-region): Bind - default-enable-multibyte-characters to nil. + * pgg-gpg.el (pgg-gpg-process-region): + Bind default-enable-multibyte-characters to nil. 2003-08-07 Katsumi Yamaoka <yamaoka@jpl.org> @@ -1729,11 +1724,11 @@ * spam.el (spam-use-regex-body, spam-regex-body-spam) (spam-regex-body-ham): New variables, default to nil/empty/empty. - (spam-install-hooks): Added spam-use-regex-body to list or + (spam-install-hooks): Add spam-use-regex-body to list or pre-install conditions. - (spam-list-of-checks): Added spam-use-regex-body and + (spam-list-of-checks): Add spam-use-regex-body and spam-check-regex-body to list of checks. - (spam-list-of-statistical-checks): Added spam-use-regex-body to + (spam-list-of-statistical-checks): Add spam-use-regex-body to list of statistical checks. (spam-check-regex-body): Invokes spam-check-regex-headers with appropriate variable masking. @@ -1754,8 +1749,8 @@ (gnus-registry-clean-empty): New variable to enable cleaning the registry when saving it by calling gnus-registry-clean-empty-function. - * spam.el (spam-summary-prepare-exit): Use - spam-process-ham-in-spam-groups. + * spam.el (spam-summary-prepare-exit): + Use spam-process-ham-in-spam-groups. (spam-process-ham-in-spam-groups): New variable. 2003-07-24 Jesper Harder <harder@ifa.au.dk> @@ -1763,8 +1758,8 @@ * pgg-gpg.el (pgg-gpg-process-region): Add "--yes" to options. * pgg-gpg.el, pgg-pgp.el, pgg-pgp5.el, pgg.el: Reapply changes - from 2003-04-03 to fix security problem. See - http://www.debian.org/security/2003/dsa-339. + from 2003-04-03 to fix security problem. + See http://www.debian.org/security/2003/dsa-339. 2003-07-23 Teodor Zlatanov <tzz@lifelogs.com> @@ -1806,8 +1801,7 @@ 2003-07-10 Kai Großjohann <kai.grossjohann@gmx.net> - * imap.el (imap-arrival-filter): Fix test for missing process - buffer. + * imap.el (imap-arrival-filter): Fix test for missing process buffer. 2003-07-09 Gaute B Strokkenes <gs234@cam.ac.uk> (tiny change) @@ -1881,8 +1875,8 @@ 2003-07-06 Jesper Harder <harder@ifa.au.dk> - * message.el (message-send-mail-with-sendmail): Handle - non-numeric return values. + * message.el (message-send-mail-with-sendmail): + Handle non-numeric return values. * gnus-start.el (gnus-clear-system): Revert change from 2003-06-19. @@ -1928,8 +1922,8 @@ 2003-06-23 Teodor Zlatanov <tzz@lifelogs.com> - * spam.el (spam-from-listed-p, spam-parse-list): Use - ietf-drums-parse-addresses to extract the address portion of the + * spam.el (spam-from-listed-p, spam-parse-list): + Use ietf-drums-parse-addresses to extract the address portion of the whitelist/blacklist file if it looks like an address can be found. 2003-06-23 Didier Verna <didier@xemacs.org> @@ -1942,8 +1936,8 @@ (gnus-xmas-remove-image): Ditto, with extents. * gnus-art.el (gnus-delete-images): Pass CATEGORY argument to gnus-[xmas-]remove-image. - (article-display-face): Don't always act as a toggle. Call - `gnus-put-image' with CATEGORY argument. + (article-display-face): Don't always act as a toggle. + Call `gnus-put-image' with CATEGORY argument. (article-display-x-face): Call `gnus-put-image' with CATEGORY argument. * smiley.el (smiley-region): Ditto. @@ -1959,11 +1953,11 @@ 2003-06-20 Jesper Harder <harder@ifa.au.dk> - * mm-util.el (mm-append-to-file): Say "Appended to". Suggested by - Dan Jacobson <jidanni@jidanni.org>. + * mm-util.el (mm-append-to-file): Say "Appended to". + Suggested by Dan Jacobson <jidanni@jidanni.org>. - * mm-view.el (mm-inline-message): Bind - gnus-original-article-buffer to the buffer in the mml handle + * mm-view.el (mm-inline-message): + Bind gnus-original-article-buffer to the buffer in the mml handle holding the message. 2003-06-20 Katsumi Yamaoka <yamaoka@jpl.org> @@ -1994,8 +1988,8 @@ 2003-06-19 Jesper Harder <harder@ifa.au.dk> - * nnheader.el (nnheader-init-server-buffer): Add - nntp-server-buffer to gnus-buffers. + * nnheader.el (nnheader-init-server-buffer): + Add nntp-server-buffer to gnus-buffers. * gnus-start.el (gnus-clear-system): Now we don't need to kill nntp-server-buffer separately. @@ -2016,8 +2010,8 @@ 2003-06-17 Reiner Steib <Reiner.Steib@gmx.de> - * gnus-util.el (gnus-extract-address-components): Added - doc-string. + * gnus-util.el (gnus-extract-address-components): + Add doc-string. 2003-06-16 Michael Albinus <Michael.Albinus@alcatel.de> @@ -2026,8 +2020,8 @@ 2003-06-16 Katsumi Yamaoka <yamaoka@jpl.org> - * gnus-sum.el (gnus-summary-refer-parent-article): Extract - Message-ID from In-Reply-To header. + * gnus-sum.el (gnus-summary-refer-parent-article): + Extract Message-ID from In-Reply-To header. 2003-06-16 Katsumi Yamaoka <yamaoka@jpl.org> @@ -2037,14 +2031,14 @@ 2003-06-15 Reiner Steib <Reiner.Steib@gmx.de> - * gnus-sum.el (gnus-summary-force-verify-and-decrypt): Bind - `gnus-article-emulate-mime'. + * gnus-sum.el (gnus-summary-force-verify-and-decrypt): + Bind `gnus-article-emulate-mime'. 2003-06-15 Tommi Vainikainen <thv+gnus@iki.fi> - * message.el (message-is-yours-p): New function. Separated common - code from message-cancel-news and message-supersede. Added - matching code which uses message-alternative-emails regexp as last + * message.el (message-is-yours-p): New function. Separate common + code from message-cancel-news and message-supersede. + Add matching code which uses message-alternative-emails regexp as last resort. (message-cancel-news, message-supersede): Use message-is-yours-p. @@ -2055,11 +2049,11 @@ 2003-06-12 Dave Love <fx@gnu.org> - * nnheader.el (nnheader-functionp): Deleted. + * nnheader.el (nnheader-functionp): Delete. * nnmail.el (nnmail-split-fancy-syntax-table): Define all in defvar. - (nnmail-version): Deleted. + (nnmail-version): Delete. (nnmail-check-duplication, nnmail-expiry-target-group): Don't use nnheader-functionp. @@ -2077,15 +2071,15 @@ (spam-spamoracle, spam-spamoracle): New variables. (spam-group-spam-processor-spamoracle-p) (spam-group-ham-processor-spamoracle-p): New functions. - (spam-summary-prepare-exit): Added spamoracle ham/spam exit processing. - (spam-list-of-checks, spam-list-of-statistical-checks): Add - spam-use-spamoracle. + (spam-summary-prepare-exit): Add spamoracle ham/spam exit processing. + (spam-list-of-checks, spam-list-of-statistical-checks): + Add spam-use-spamoracle. (spam-check-spamoracle, spam-spamoracle-learn) (spam-spamoracle-learn-ham, spam-spamoracle-learn-spam): New functions. * gnus.el (gnus-group-spam-exit-processor-spamoracle) (gnus-group-ham-exit-processor-spamoracle): New variables for SpamOracle. - (spam-process, ham-process): Added spamoracle spam/ham processors. + (spam-process, ham-process): Add spamoracle spam/ham processors. 2003-06-08 Jesper Harder <harder@ifa.au.dk> @@ -2094,7 +2088,7 @@ 2003-06-07 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-sum.el (gnus-summary-make-menu-bar): Removed ["Add buttons" + * gnus-sum.el (gnus-summary-make-menu-bar): Remove ["Add buttons" gnus-summary-display-buttonized t]. 2003-06-07 Kai Großjohann <kai.grossjohann@gmx.net> @@ -2150,9 +2144,9 @@ (gnus-other-frame): Quote lambda used as hook. * message.el: Doc fixes. - (message-functionp): Deleted. Callers changed. - (message-fix-before-sending): Highlight with overlays. Clarify - `illegible text' messages. + (message-functionp): Delete. Callers changed. + (message-fix-before-sending): Highlight with overlays. + Clarify `illegible text' messages. (rmail-enable-mime-composing, gnus-message-group-art): Defvar when compiling. (gnus-find-method-for-group, nnvirtual-find-group-art): Autoload. @@ -2168,8 +2162,8 @@ 2003-06-03 Eric Eide <eeide@cs.utah.edu> - * gnus-xmas.el (gnus-xmas-create-image): Use - insert-file-contents-literally. + * gnus-xmas.el (gnus-xmas-create-image): + Use insert-file-contents-literally. 2003-06-02 Teodor Zlatanov <tzz@lifelogs.com> @@ -2195,8 +2189,8 @@ (gnus-registry-delete-group): Use it. (gnus-registry-unload-hook): Uninstall all the hooks. - * spam.el (spam-install-hooks-function, spam-unload-hook): New - functions so users that load spam.el for customization don't get + * spam.el (spam-install-hooks-function, spam-unload-hook): + New functions so users that load spam.el for customization don't get all the hooks installed. (spam-install-hooks): New variable, set to t by default if user has one of the spam-use-* variables set. @@ -2210,8 +2204,8 @@ * rfc2047.el (rfc2047-decode): Don't use mm-with-unibyte-current-buffer. - * qp.el (quoted-printable-decode-string): Use - mm-with-unibyte-buffer. + * qp.el (quoted-printable-decode-string): + Use mm-with-unibyte-buffer. 2003-05-29 Teodor Zlatanov <tzz@lifelogs.com> @@ -2250,7 +2244,7 @@ 2003-05-20 Dave Love <fx@gnu.org> - * rfc2047.el (rfc2047-q-encoding-alist): Deleted. + * rfc2047.el (rfc2047-q-encoding-alist): Delete. (rfc2047-q-encode-region): Don't use it. (rfc2047-encode-message-header) <(eq method 'mime)>: Bind rfc2047-encoding-type to `mime'. @@ -2268,11 +2262,11 @@ 2003-05-14 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agentize): Updated documentation to match + * gnus-agent.el (gnus-agentize): Update documentation to match usage. (gnus-agent-expire-group-1): Do not skip over a group when the force argument is set. - * gnus.el (gnus-agent): Updated documentation to reflect that + * gnus.el (gnus-agent): Update documentation to reflect that gnus-agent now defaults to t. 2003-05-14 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -2285,24 +2279,24 @@ 2003-05-14 Lars Magne Ingebrigtsen <larsi@gnus.org> - * mail-source.el (mail-source-delete-incoming): Changed to t. + * mail-source.el (mail-source-delete-incoming): Change to t. * rfc2047.el (rfc2047-syntax-table): Funcall. * rfc2047.el (rfc2047-encodable-p): Use the header charset. - * gnus-sum.el (gnus-summary-reselect-current-group): Supply - leave-hidden. + * gnus-sum.el (gnus-summary-reselect-current-group): + Supply leave-hidden. 2003-05-14 Jonathan I. Kamens <jik@kamens.brookline.ma.us> - * gnus-sum.el (gnus-summary-exit): Added `leave-hidden'. (Tiny + * gnus-sum.el (gnus-summary-exit): Add `leave-hidden'. (Tiny patch.) 2003-05-13 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-registry.el (gnus-registry-store-extra-entry): Use - gnus-assq-delete-all. + * gnus-registry.el (gnus-registry-store-extra-entry): + Use gnus-assq-delete-all. * gnus-xmas.el (gnus-xmas-assq-delete-all): New function. @@ -2341,10 +2335,10 @@ (gnus-agent-cat-disable-undownloaded-faces): New function. Accessor for new agent property 'agent-disable-undownloaded-faces'. - gnus-cus.el (gnus-agent-parameters): Added - agent-disable-undownloaded-faces and corrected documentation. + gnus-cus.el (gnus-agent-parameters): + Add agent-disable-undownloaded-faces and corrected documentation. (gnus-agent-cat-prepare-category-field, - gnus-agent-customize-category): Changed to avoid creating free + gnus-agent-customize-category): Change to avoid creating free references to each field's symbol. gnus-sum.el (gnus-summary-use-undownloaded-faces): New local variable. (gnus-select-newgroup): Initialize it. @@ -2352,15 +2346,15 @@ 2003-05-12 Dave Love <fx@gnu.org> - * mm-util.el (mm-read-charset): Deleted. + * mm-util.el (mm-read-charset): Delete. (mm-coding-system-mime-charset): New. (mm-read-coding-system, mm-mule-charset-to-mime-charset) (mm-charset-to-coding-system, mm-mime-charset) (mm-find-mime-charset-region): Use it. (mm-default-multibyte-p): Fix non-mule case. - * rfc2047.el (rfc2047-point-at-bol, rfc2047-point-at-bol): Eval - and compile. + * rfc2047.el (rfc2047-point-at-bol, rfc2047-point-at-bol): + Eval and compile. (rfc2047-syntax-table): Fix building table to work in Emacs 22. (rfc2047-unfold-region): Delete unused var `leading'. @@ -2371,8 +2365,8 @@ 2003-05-11 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-agent.el (gnus-agent-expire-unagentized-dirs): Added - space. + * gnus-agent.el (gnus-agent-expire-unagentized-dirs): + Add space. 2003-05-11 Jesper Harder <harder@ifa.au.dk> @@ -2390,7 +2384,7 @@ 2003-05-10 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus.el (gnus-logo-color-alist): Added no colors. + * gnus.el (gnus-logo-color-alist): Add no colors. 2003-05-09 Dave Love <fx@gnu.org> @@ -2415,12 +2409,12 @@ * gnus-registry.el (gnus-registry-unregistered-group-regex): removed in favor of the group/topic/global variables. - (gnus-registry-register-message-ids): Fixed test to omit + (gnus-registry-register-message-ids): Fix test to omit gnus-registry-unregistered-group-regex. - * gnus.el (gnus-variable-list): Removed gnus-registry-alist and + * gnus.el (gnus-variable-list): Remove gnus-registry-alist and gnus-registry-headers-alist from the list. - (gnus-registry-headers-alist): Removed. + (gnus-registry-headers-alist): Remove. (registry-ignore): New parameter, with accompanying gnus-registry-ignored-groups global variable. @@ -2430,12 +2424,12 @@ used by gnus-registry.el. * gnus-registry.el (gnus-registry-cache-file): New file variable. - (gnus-registry-cache-read, gnus-registry-cache-save): New - functions. + (gnus-registry-cache-read, gnus-registry-cache-save): + New functions. (gnus-registry-save, gnus-registry-read): Use the new gnus-registry-cache-{read|save} functions, and change the name from gnus-registry-translate-{from|to}-alist. - (gnus-registry-clear): Fixed so it doesn't refer to old function name. + (gnus-registry-clear): Fix so it doesn't refer to old function name. 2003-05-09 Dan Christensen <jdc@chow.mat.jhu.edu> @@ -2448,7 +2442,7 @@ 2003-05-08 Teodor Zlatanov <tzz@lifelogs.com> - * gnus-start.el (gnus-clear-system): Added gnus-registry-alist to + * gnus-start.el (gnus-clear-system): Add gnus-registry-alist to the list of cleared variables. * gnus-registry.el (gnus-registry-split-fancy-with-parent): @@ -2461,8 +2455,8 @@ 2003-05-08 Kai Großjohann <kai.grossjohann@gmx.net> - * gnus-sum.el (gnus-summary-next-page): Mention - `gnus-article-skip-boring' in docstring. + * gnus-sum.el (gnus-summary-next-page): + Mention `gnus-article-skip-boring' in docstring. 2003-05-08 Jesper Harder <harder@ifa.au.dk> @@ -2546,13 +2540,13 @@ * rfc2047.el (rfc2047-point-at-bol, rfc2047-point-at-eol): New. Callers of gnus- versions changed to use them. - (rfc2047-header-encoding-alist): Add `address-mime' part. Doc - fixes. + (rfc2047-header-encoding-alist): Add `address-mime' part. + Doc fixes. (rfc2047-encoding-type): New. (rfc2047-encode-message-header): Use mm-charset-to-coding-system. Don't include header name field in encoding. Add `address-mime' case and bind rfc2047-encoding-type for `mime' case. - (rfc2047-encodable-p): Deleted. + (rfc2047-encodable-p): Delete. (rfc2047-syntax-table): New. (rfc2047-encode-region, rfc2047-encode): Rewritten to take account of rfc2047 rules with respect to rfc2822 tokens and to do encoding @@ -2566,8 +2560,8 @@ 2003-05-02 Dave Love <fx@gnu.org> - * rfc2047.el (rfc2047-q-encode-region, rfc2047-decode): Use - mm-with-unibyte-current-buffer. + * rfc2047.el (rfc2047-q-encode-region, rfc2047-decode): + Use mm-with-unibyte-current-buffer. (ietf-drums, gnus-util): Don't require. * sieve.el (sieve-manage-mode-menu): Define before use. @@ -2577,9 +2571,9 @@ * mm-util.el (mm-coding-system-p): Don't override nil from coding-system-p. (mm-mule4-p, mm-disable-multibyte-mule4) - (mm-with-unibyte-current-buffer-mule4): Deleted. + (mm-with-unibyte-current-buffer-mule4): Delete. (mm-multibyte-p): Use defun, not defalias. - (mm-make-temp-file): Moved to group at top of file. + (mm-make-temp-file): Move to group at top of file. (mm-point-at-eol, mm-point-at-bol): New. * gnus-cite.el (gnus-art): Require. @@ -2599,29 +2593,29 @@ (gnus-output-to-rmail): Require mm-util. * mail-source.el (mail-source-callback): Use mm-make-temp-file. - (mail-source-make-complex-temp-name): Deleted. + (mail-source-make-complex-temp-name): Delete. * message.el (message-use-idna): Use mm-coding-system-p. (message-tokenize-header, message-make-organization) (message-make-from): Use with-temp-buffer. - (message-set-work-buffer): Deleted. + (message-set-work-buffer): Delete. (message-fill-paragraph): Use `if' not `and' for compiler warning. (message-check-news-header-syntax): Remove useless lambda. (message-forward-make-body): Use mm-disable-multibyte, mm-with-unibyte-current-buffer, mm-enable-multibyte. - (message-replace-chars-in-string): Deleted. + (message-replace-chars-in-string): Delete. * mm-extern.el (mm-extern-local-file): Use mm-disable-multibyte. (mm-extern-url): Use mm-with-unibyte-current-buffer, mm-disable-multibyte. (mm-extern-anon-ftp): Use mm-disable-multibyte. - * mml1991.el (mml1991-mailcrypt-encrypt, mml1991-gpg-encrypt): Use - mm-with-unibyte-current-buffer. + * mml1991.el (mml1991-mailcrypt-encrypt, mml1991-gpg-encrypt): + Use mm-with-unibyte-current-buffer. * mml2015.el (mml): Require. - (mml2015-mailcrypt-encrypt, mml2015-gpg-encrypt): Use - mm-with-unibyte-current-buffer. + (mml2015-mailcrypt-encrypt, mml2015-gpg-encrypt): + Use mm-with-unibyte-current-buffer. * nnheader.el (gnus-util): Require. @@ -2656,7 +2650,7 @@ * gnus-registry.el (gnus-registry-fetch-extra) (gnus-registry-store-extra, gnus-registry-group-count): New functions. (gnus-registry-fetch-group, gnus-registry-delete-group) - (gnus-registry-add-group): Changed to work with extra data element + (gnus-registry-add-group): Change to work with extra data element if present. 2003-05-01 Lars Magne Ingebrigtsen <lars@ingebrigtsen.no> @@ -2693,8 +2687,8 @@ 2003-05-01 Lars Magne Ingebrigtsen <larsi@gnus.org> - * message.el (message-forward-subject-name-subject): Decode - string when forwarding. + * message.el (message-forward-subject-name-subject): + Decode string when forwarding. 2003-05-01 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -2756,7 +2750,7 @@ 2003-04-30 Reiner Steib <Reiner.Steib@gmx.de> - * gnus-art.el (gnus-button-prefer-mid-or-mail): Fixed typo in + * gnus-art.el (gnus-button-prefer-mid-or-mail): Fix typo in doc-string. 2003-05-01 Steve Youngs <youngs@xemacs.org> @@ -2778,20 +2772,20 @@ 2003-04-30 Teodor Zlatanov <tzz@lifelogs.com> - * gnus-registry.el (gnus-registry-split-fancy-with-parent): Added - diagnostic message. + * gnus-registry.el (gnus-registry-split-fancy-with-parent): + Add diagnostic message. (gnus-registry-grep-in-list): Don't run when word is nil. (gnus-registry-fetch-message-id-fast): New function. (gnus-registry-delete-group, gnus-registry-add-group): Make sure the id and group are not nil. (gnus-registry-register-message-ids): New function. - (gnus-register-action): Optimized logical flow. - (gnus-summary-prepare-hook): Added gnus-registry-register-message-ids. + (gnus-register-action): Optimize logical flow. + (gnus-summary-prepare-hook): Add gnus-registry-register-message-ids. 2003-04-30 Kai Großjohann <kai.grossjohann@gmx.net> - * gnus-delay.el (gnus-delay-article): Call - `gnus-agent-queue-setup' to create the delay group. + * gnus-delay.el (gnus-delay-article): + Call `gnus-agent-queue-setup' to create the delay group. * gnus-agent.el (gnus-agent-queue-setup): Support optional arg for the (queue) group name. @@ -2804,17 +2798,17 @@ 2003-04-30 Kevin Greiner <kgreiner@xpediantsolutions.com> * gnus-agent.el (gnus-agent-cat-defaccessor, gnus-agent-cat-name): - Wrapped in eval-when-compile. + Wrap in eval-when-compile. (gnus-agent-mode): Bind gnus-agent-go-online to nil as you shouldn't be asked twice to go online with each server. (gnus-agent-get-undownloaded-list, gnus-agent-fetch-articles, gnus-agent-crosspost, gnus-agent-flush-cache, gnus-agent-fetch-session, gnus-agent-unread-articles, gnus-agent-uncached-articles, gnus-agent-regenerate-group, - gnus-agent-group-covered-p): Expanded pop macros used for + gnus-agent-group-covered-p): Expand pop macros used for effect. Avoids compilation warning in emacs 21.3. - * gnus-int.el (gnus-open-server): Restructured to only open + * gnus-int.el (gnus-open-server): Restructure to only open nnagent when gnus-plugged is nil. 2003-04-29 Teodor Zlatanov <tzz@lifelogs.com> @@ -2830,7 +2824,7 @@ 2003-04-29 Reiner Steib <Reiner.Steib@gmx.de> - * gnus-art.el (gnus-button-alist): Fixed CTAN regexp. + * gnus-art.el (gnus-button-alist): Fix CTAN regexp. 2003-04-29 Teodor Zlatanov <tzz@lifelogs.com> @@ -2892,7 +2886,7 @@ * gnus-art.el (gnus-mime-display-multipart-as-mixed) (gnus-mime-display-multipart-alternative-as-mixed) - (gnus-mime-display-multipart-related-as-mixed): Added doc-strings, + (gnus-mime-display-multipart-related-as-mixed): Add doc-strings, allow customization. 2003-04-27 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -2909,7 +2903,7 @@ 2003-04-27 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-registry.el (gnus-register-spool-action): Replaced literal + * gnus-registry.el (gnus-register-spool-action): Replace literal carriage-return character with its escape sequence. 2003-04-27 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -2921,7 +2915,7 @@ * gnus.el: Remove gnus-functionp throughout. - * gnus-util.el (gnus-functionp): Removed. + * gnus-util.el (gnus-functionp): Remove. * gnus-msg.el (gnus-summary-wide-reply-with-original): Doc fix. @@ -2985,8 +2979,8 @@ * gnus-start.el (message-make-date): Autoload rather than requiring message. - * gnus-group.el (gnus-group-name-charset-group-alist): Use - mm-coding-system-p. + * gnus-group.el (gnus-group-name-charset-group-alist): + Use mm-coding-system-p. (gnus-cache-active-altered): Defvar when compiling. (gnus-group-delete-group): Re-write to help avoid warnings. @@ -3032,12 +3026,12 @@ 2003-04-22 Paul Jarc <prj@po.cwru.edu> - * gnus-util.el (gnus-merge): Added "type" argument to match CL + * gnus-util.el (gnus-merge): Add "type" argument to match CL merge and gnus-sum.el's expectations. 2003-04-21 Reiner Steib <Reiner.Steib@gmx.de> - * gnus-art.el (gnus-button-url-regexp): Added nntp. + * gnus-art.el (gnus-button-url-regexp): Add nntp. * message.el (message-generate-headers-first): Default to '(references). @@ -3089,8 +3083,8 @@ * spam.el (spam-split): Allow a particular check as a parameter, e.g. (: spam-split 'spam-use-bogofilter). (spam-mark-only-unseen-as-spam): New parameter, see doc. - (spam-mark-junk-as-spam-routine): Use - spam-mark-only-unseen-as-spam, simplify routine to take advantage + (spam-mark-junk-as-spam-routine): + Use spam-mark-only-unseen-as-spam, simplify routine to take advantage of gnus-newsgroup-unread as well as gnus-newsgroup-unseen. 2003-04-17 Teodor Zlatanov <tzz@lifelogs.com> @@ -3103,7 +3097,7 @@ * gnus-registry.el (gnus-registry-clear) (gnus-registry-fetch-group, gnus-registry-grep-in-list) (gnus-registry-split-fancy-with-parent): New functions. - (gnus-register-spool-action, gnus-register-action): Simplified the + (gnus-register-spool-action, gnus-register-action): Simplify the format. (gnus-registry): New customization group. (gnus-registry-unfollowed-groups): New variable. @@ -3154,9 +3148,9 @@ * spam-report.el (Module): New module for spam reporting. - * gnus.el (spam-process): Added - gnus-group-spam-exit-processor-report-gmane to the list of choices. - (gnus-install-group-spam-parameters): Defined new spam exit processor. + * gnus.el (spam-process): + Add gnus-group-spam-exit-processor-report-gmane to the list of choices. + (gnus-install-group-spam-parameters): Define new spam exit processor. * spam.el (autoload): Autoload spam-report-gmane when needed. (spam-report-gmane-register-routine): Glue for spam-report.el. @@ -3200,7 +3194,7 @@ 2003-04-16 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agent-make-cat): Added optional parameter to + * gnus-agent.el (gnus-agent-make-cat): Add optional parameter to specify a predicate other than false. (gnus-category-read): Use the new feature to create a 'default' category with a 'short' predicate. @@ -3214,7 +3208,7 @@ 2003-04-15 Teodor Zlatanov <tzz@lifelogs.com> - * spam.el (spam-split): Added save-restriction to save-excursion. + * spam.el (spam-split): Add save-restriction to save-excursion. 2003-04-15 Julien Avarre <julien@avarre.com> @@ -3276,8 +3270,8 @@ 2003-04-13 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agent-group-pathname): Bind - gnus-command-method so that gnus-agent-directory will always + * gnus-agent.el (gnus-agent-group-pathname): + Bind gnus-command-method so that gnus-agent-directory will always return a valid directory. * gnus-cache.el (gnus-cache-enter-article): Remove article from gnus-newsgroup-undownloaded so that the summary will display the @@ -3300,13 +3294,13 @@ 2003-04-12 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-art.el (gnus-article-next-page): Use - gnus-article-over-scroll. + * gnus-art.el (gnus-article-next-page): + Use gnus-article-over-scroll. (gnus-article-over-scroll): New variable. * message.el (message-newline-and-reformat): Place a boundary before filling. - (message-make-forward-subject-function): Changed default to + (message-make-forward-subject-function): Change default to message-forward-subject-name-subject. (message-forward-subject-name-subject): New function. @@ -3314,16 +3308,15 @@ * gnus-sum.el (gnus-summary-line-message-size): Ditto. - * gnus-cus.el (gnus-group-parameters): Removed "which see". + * gnus-cus.el (gnus-group-parameters): Remove "which see". - * mml.el (mml-minibuffer-read-file): Bind - completion-ignored-extensions to nil. + * mml.el (mml-minibuffer-read-file): + Bind completion-ignored-extensions to nil. * message.el (message-fix-before-sending): Comment fix. (message-fix-before-sending): Make hidden headers visible. (message-hide-headers): Bind after-change-functions to nil. - (message-forbidden-properties): Put invisible and intangible - back. + (message-forbidden-properties): Put invisible and intangible back. (message-strip-forbidden-properties): Ignore message-hidden text. * gnus-msg.el: Hide headers. @@ -3332,8 +3325,7 @@ (message-hide-headers): New function. (message-hide-header-p): New function. (message-hide-header-p): Change logic. - (message-forbidden-properties): Remove intangible nil invisible - nil. + (message-forbidden-properties): Remove intangible nil invisible nil. (message-hide-headers): Narrow to headers. 2003-04-12 Jesper Harder <harder@ifa.au.dk> @@ -3348,7 +3340,7 @@ * gnus-agent.el (gnus-agent-get-undownloaded-list): Articles in the CACHE are now detected and handled the same as an article downloaded into the agent. - (gnus-agent-group-path): Modified to match nnmail-group-pathname + (gnus-agent-group-path): Modify to match nnmail-group-pathname so that the agent front-end and back-end (nnagent) always use the same directory. (gnus-agent-group-pathname): New function. Wrapper for @@ -3371,7 +3363,7 @@ 2003-04-09 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agent-write-active): Added option of + * gnus-agent.el (gnus-agent-write-active): Add option of replacing, rather than updating, the agent's active file. Do NOT use the fully qualified group name as gnus-active-to-gnus-format blindly prefixes group names with server names. @@ -3384,9 +3376,9 @@ (gnus-agent-expire-unagentized-dirs): Avoid asking to delete the same ancestor multiple times. - * gnus-async.el (gnus-asynchronous): Moved defcustom of - gnus-asynchronous away from defgroup of gnus-asynchronous. This - seems to fix an intermittant error in which loading gnus-async + * gnus-async.el (gnus-asynchronous): Move defcustom of + gnus-asynchronous away from defgroup of gnus-asynchronous. + This seems to fix an intermittant error in which loading gnus-async fails to define gnus-asynchronous (the variable). * gnus-sum.el: Concur with Steve Young, 5th argument to 'load' is @@ -3395,7 +3387,7 @@ group's active range to include fetched articles that are no longer in the server's active range. - * gnus-util.el (gnus-with-output-to-file): Removed all of the + * gnus-util.el (gnus-with-output-to-file): Remove all of the print-* bindings as they should be handled by the function doing the printing. @@ -3443,8 +3435,8 @@ 2003-04-06 Jesper Harder <harder@ifa.au.dk> - * mm-uu.el (mm-uu-copy-to-buffer): Copy - `buffer-file-coding-system' to the new buffer. + * mm-uu.el (mm-uu-copy-to-buffer): + Copy `buffer-file-coding-system' to the new buffer. (mm-uu-pgp-signed-extract-1): Don't copy `buffer-file-coding-system' here. @@ -3452,8 +3444,8 @@ exist in XEmacs. (mm-decode-body): Add missing quote. - * mm-uu.el (mm-uu-pgp-signed-extract-1): Set - buffer-file-coding-system. + * mm-uu.el (mm-uu-pgp-signed-extract-1): + Set buffer-file-coding-system. * mm-bodies.el (mm-decode-body): Set buffer-file-coding-system to last-coding-system-used. @@ -3484,8 +3476,8 @@ 2003-04-05 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-start.el (gnus-gnus-to-quick-newsrc-format): Bound - print-escape-nonascii to fix more characters in compiled format + * gnus-start.el (gnus-gnus-to-quick-newsrc-format): + Bound print-escape-nonascii to fix more characters in compiled format specs. 2003-04-05 Jesper Harder <harder@ifa.au.dk> @@ -3495,8 +3487,8 @@ 2003-04-04 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-start.el (gnus-gnus-to-quick-newsrc-format): Bound - print-quoted, print-readably, print-escape-multibyte, and + * gnus-start.el (gnus-gnus-to-quick-newsrc-format): + Bound print-quoted, print-readably, print-escape-multibyte, and print-level to match original behavior of gnus-prin1. This should repair the format of .newsrc.eld when using compiled format specs. @@ -3514,7 +3506,7 @@ 2003-04-03 Reiner Steib <Reiner.Steib@gmx.de> - * gnus-art.el (gnus-button-ctan-directory-regexp): Changed meaning + * gnus-art.el (gnus-button-ctan-directory-regexp): Change meaning and value. (gnus-button-alist): Use it. @@ -3534,9 +3526,9 @@ 2003-04-02 Reiner Steib <Reiner.Steib@gmx.de> - * gnus-util.el (gnus-message): Added doc-string. + * gnus-util.el (gnus-message): Add doc-string. - * gnus-score.el (gnus-score-find-trace): Changed behavior of `q'. + * gnus-score.el (gnus-score-find-trace): Change behavior of `q'. (gnus-score-edit-file-at-point): Goto first match when using `e'. 2003-04-01 Reiner Steib <Reiner.Steib@gmx.de> @@ -3551,22 +3543,22 @@ 2003-03-31 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-start.el (gnus-gnus-to-quick-newsrc-format): Bound - print-escape-newlines to print escape sequences rather than + * gnus-start.el (gnus-gnus-to-quick-newsrc-format): + Bound print-escape-newlines to print escape sequences rather than literal newline characters. 2003-03-31 Reiner Steib <Reiner.Steib@gmx.de> - * gnus-art.el (gnus-button-valid-fqdn-regexp): Use - `message-valid-fqdn-regexp' for initialization. - (gnus-button-handle-info-url): Renamed and extended version of + * gnus-art.el (gnus-button-valid-fqdn-regexp): + Use `message-valid-fqdn-regexp' for initialization. + (gnus-button-handle-info-url): Rename and extended version of `gnus-button-handle-info'. - (gnus-button-message-level): Renamed from `gnus-button-mail-level'. + (gnus-button-message-level): Rename from `gnus-button-mail-level'. (gnus-button-handle-symbol, gnus-button-handle-library) (gnus-button-handle-info-keystrokes): New functions. (gnus-button-browse-level): New variable. (gnus-button-alist): Use them. Added levels. - (gnus-header-button-alist): Added levels. + (gnus-header-button-alist): Add levels. 2003-03-31 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -3578,10 +3570,10 @@ 2003-03-31 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-start.el (gnus-unload): Removed. + * gnus-start.el (gnus-unload): Remove. - * pop3.el (pop3-read-response): Use - nnheader-accept-process-output. + * pop3.el (pop3-read-response): + Use nnheader-accept-process-output. (pop3-retr): Ditto. * mm-view.el (mm-text-html-renderer-alist): Add -nolist to Lynx. @@ -3601,7 +3593,7 @@ * nnheader.el (nnheader-read-timeout): New variable. (nnheader-accept-process-output): New function. - * nntp.el (nntp-read-timeout): Removed. + * nntp.el (nntp-read-timeout): Remove. * gnus-sum.el (gnus-summary-prepare-threads): Add comment. @@ -3622,8 +3614,8 @@ 2003-03-28 Vasily Korytov <deskpot@myrealbox.com> - * message.el (message-make-in-reply-to): Use - mail-extract-address-components to determine sender's + * message.el (message-make-in-reply-to): + Use mail-extract-address-components to determine sender's name/address. 2003-03-30 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -3634,8 +3626,8 @@ valid lambda. (gnus-registry-translate-from-alist): Ditto. - * gnus-start.el (gnus-gnus-to-quick-newsrc-format): Bind - print-length to nil. + * gnus-start.el (gnus-gnus-to-quick-newsrc-format): + Bind print-length to nil. * gnus-sum.el (gnus-summary-highlight-line-0): Indent. @@ -3658,14 +3650,14 @@ (gnus-registry-translate-from-alist): New functions. (gnus-register-spool-action): Add a spool item to the registry. - * gnus.el (gnus-variable-list): Added gnus-registry-alist to the + * gnus.el (gnus-variable-list): Add gnus-registry-alist to the list of saved variables. (gnus-registry-alist): New variable. 2003-03-28 Andreas Fuchs <asf@void.at> - * gnus-registry.el (alist-to-hashtable, hashtable-to-alist): New - functions. + * gnus-registry.el (alist-to-hashtable, hashtable-to-alist): + New functions. 2003-03-27 Simon Josefsson <jas@extundo.com> @@ -3683,7 +3675,7 @@ 2003-03-26 Kevin Ryde <user42@zip.com.au> - * gnus-sum.el (gnus-summary-find-for-reselect): Renamed from + * gnus-sum.el (gnus-summary-find-for-reselect): Rename from gnus-summary-find-uncancelled, skip temporary articles inserted by "refer" functions. @@ -3693,7 +3685,7 @@ 2003-03-26 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agent-fetch-selected-article): Replaced + * gnus-agent.el (gnus-agent-fetch-selected-article): Replace gnus-summary-update-line (which updated the article's face) with gnus-summary-update-download-mark (which updates the article's face by calling gnus-summary-update-line AND updates the download @@ -3717,8 +3709,8 @@ * rfc2047.el (rfc2047-header-encoding-alist): Make Followup-To same as Newsgroups. - * nntp.el (nntp-open-connection-function): Mention - nntp-open-tls-stream. + * nntp.el (nntp-open-connection-function): + Mention nntp-open-tls-stream. (nntp-open-tls-stream): New function. * tls.el: New file. @@ -3769,10 +3761,10 @@ * gnus-int.el (gnus-open-server): Catch errors in backend's open-server method. Returns nil rather than crashing startup. - * gnus-sum.el (eval-when-compile): Modified to resolve + * gnus-sum.el (eval-when-compile): Modify to resolve compile-time warnings. - * gnus-uu.el (gnus-uu-mark-series): Added informative msg. + * gnus-uu.el (gnus-uu-mark-series): Add informative msg. Reports length of series so that the user can compare N with a subject that should, if the entire series is present, contain '(.../N)'. @@ -3801,7 +3793,7 @@ 2003-03-20 Reiner Steib <Reiner.Steib@gmx.de> - * message.el (message-check-news-header-syntax): Fixed regexp. + * message.el (message-check-news-header-syntax): Fix regexp. 2003-03-20 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -3860,7 +3852,7 @@ * spam.el (spam-group-ham-mark-p, spam-group-spam-mark-p) (spam-group-ham-marks, spam-group-spam-marks): New functions. - (spam-spam-marks, spam-ham-marks): Removed in favor of the + (spam-spam-marks, spam-ham-marks): Remove in favor of the spam-marks and ham-marks parameters. (spam-generic-register-routine, spam-ham-move-routine): Use the new spam-group-{spam,ham}-mark-p functions. @@ -4030,23 +4022,23 @@ 2003-03-09 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agent-fetched-hook): New variable. Just - fixing the code to match the documentation. - (gnus-agent-fetch-selected-article): Replaced + * gnus-agent.el (gnus-agent-fetched-hook): New variable. + Just fixing the code to match the documentation. + (gnus-agent-fetch-selected-article): Replace gnus-summary-update-article-line with gnus-summary-update-line as the former did not correctly recalculate the thread indentation. (gnus-agent-find-parameter): The agent-predicate, if not found anywhere else, defaults to the value of gnus-agent-predicate. - (gnus-agent-fetch-session): Fixed typo; now executes + (gnus-agent-fetch-session): Fix typo; now executes gnus-agent-fetched-hook rather than the undocumented gnus-agent-fetch-hook. - (gnus-agent-fetch-group-1): Removed part of 2003-03-06 fix. The - default agent predicate is now provided by + (gnus-agent-fetch-group-1): Remove part of 2003-03-06 fix. + The default agent predicate is now provided by gnus-agent-find-parameter. (gnus-agent-message): New macro. This macro avoids potentially costly parameter evaluation when the message's level is too high to display. - (gnus-agent-expire-group-1): Disabled undo tracking in temp + (gnus-agent-expire-group-1): Disable undo tracking in temp overview buffer. Uses new gnus-agent-message macro to reduce overhead of optional messages. Reversed message levels to emphasize percent completion messages. Detailed messages of @@ -4054,8 +4046,8 @@ 2003-03-08 Teodor Zlatanov <tzz@lifelogs.com> - * spam.el (spam-ham-move-routine): Use - spam-mark-ham-unread-before-move-from-spam-group. + * spam.el (spam-ham-move-routine): + Use spam-mark-ham-unread-before-move-from-spam-group. (spam-mark-ham-unread-before-move-from-spam-group): New variable. 2003-03-07 Teodor Zlatanov <tzz@lifelogs.com> @@ -4074,7 +4066,7 @@ 2003-03-07 Teodor Zlatanov <tzz@lifelogs.com> * spam.el (spam-use-hashcash): New variable. - (spam-list-of-checks): Added spam-use-hashcash with associated + (spam-list-of-checks): Add spam-use-hashcash with associated spam-check-hashcash. (spam-check-hashcash): New function, installed iff hashcash.el is loaded. @@ -4082,7 +4074,7 @@ 2003-03-06 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agent-fetch-group-1): Added default + * gnus-agent.el (gnus-agent-fetch-group-1): Add default predicate of `false' to avoid an error when a group defines no predicate. Fixed typo that disabled agent scoring (i.e. the low/high predicates should now work). @@ -4091,10 +4083,10 @@ * spam.el: Add spam-maybe-spam-stat-load to gnus-get-top-new-news-hook, remove it from gnus-get-new-news-hook. - (spam-bogofilter-register-with-bogofilter): Use - spam-bogofilter-spam-switch and spam-bogofilter-ham-switch. - (spam-bogofilter-spam-switch, spam-bogofilter-ham-switch): New - custom variables to replace "-s" and "-n". + (spam-bogofilter-register-with-bogofilter): + Use spam-bogofilter-spam-switch and spam-bogofilter-ham-switch. + (spam-bogofilter-spam-switch, spam-bogofilter-ham-switch): + New custom variables to replace "-s" and "-n". * gnus-group.el (gnus-group-get-new-news): Call the new gnus-get-top-new-news-hook hook. @@ -4113,9 +4105,9 @@ 2003-03-06 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agent-fetch-group-1): Added missing binding + * gnus-agent.el (gnus-agent-fetch-group-1): Add missing binding on gnus-agent-short-article. - (gnus-category-read): Replaced CL function mapcar* with new macro: + (gnus-category-read): Replace CL function mapcar* with new macro: gnus-mapcar. * gnus-util.el (gnus-mapcar): New macro. Generalizes mapcar to support functions that accept multiple parameters. A separate @@ -4144,19 +4136,19 @@ 2003-03-04 Kai Großjohann <kai.grossjohann@uni-duisburg.de> - * gnus-agent.el (gnus-function-implies-unread-1): Grok - byte-compiled functions. + * gnus-agent.el (gnus-function-implies-unread-1): + Grok byte-compiled functions. 2003-03-04 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-sum.el (gnus-auto-goto-ignores): New variable. Provides - customization between new maneuvering (which permits selecting + * gnus-sum.el (gnus-auto-goto-ignores): New variable. + Provides customization between new maneuvering (which permits selecting undownloaded articles) and old maneuvering (which skipped over undownloaded articles) behaviors. (gnus-summary-find-next): Pass through the unread and subject parameters when calling gnus-summary-find-prev. - (gnus-summary-find-next, gnus-summary-find-prev): Apply - gnus-auto-goto-ignores to filter out unacceptable articles. + (gnus-summary-find-next, gnus-summary-find-prev): + Apply gnus-auto-goto-ignores to filter out unacceptable articles. 2003-03-04 Jesper Harder <harder@ifa.au.dk> @@ -4167,8 +4159,8 @@ (mail-source-fetch-webmail): Use read-passwd. * nntp.el (nntp-send-authinfo, nntp-send-nosy-authinfo) - (nntp-open-telnet, nntp-open-via-telnet-and-telnet): Use - read-passwd. + (nntp-open-telnet, nntp-open-via-telnet-and-telnet): + Use read-passwd. * nnwarchive.el (nnwarchive-open-server): Use read-passwd. @@ -4182,14 +4174,14 @@ (sieve-manage-interactive-login): Use read-passwd. * pop3.el (pop3-read-passwd): Remove. - (pop3-movemail, pop3-get-message-count, pop3-apop): Use - read-passwd. + (pop3-movemail, pop3-get-message-count, pop3-apop): + Use read-passwd. * pgg.el (pgg-read-passphrase): Simplify. 2003-03-04 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agent-mode): Fixed the mode line reports + * gnus-agent.el (gnus-agent-mode): Fix the mode line reports 'plugged' when actually 'unplugged' bug. (gnus-category-read): Ignore nil values when converting an old-format category so that the new-format category will default @@ -4197,8 +4189,8 @@ 2003-03-03 Reiner Steib <Reiner.Steib@gmx.de> - * mail-source.el (mail-source-delete-old-incoming-confirm): Fixed - doc-string. + * mail-source.el (mail-source-delete-old-incoming-confirm): + Fix doc-string. 2003-03-03 Jesper Harder <harder@ifa.au.dk> @@ -4226,12 +4218,12 @@ 2003-03-03 Reiner Steib <Reiner.Steib@gmx.de> * gnus-msg.el (gnus-extended-version): Fix for 'emacs-gnus-config. - (gnus-user-agent): Fixed typo. + (gnus-user-agent): Fix typo. 2003-03-03 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agent-enable-expiration): Fixed documentation. - (gnus-agent-expire-group-1): Removed invalid (interactive) specifier. + * gnus-agent.el (gnus-agent-enable-expiration): Fix documentation. + (gnus-agent-expire-group-1): Remove invalid (interactive) specifier. 2003-03-03 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -4241,8 +4233,8 @@ 2003-03-03 Jesper Harder <harder@ifa.au.dk> * gnus-sum.el (gnus-highlight-selected-summary) - (gnus-article-get-xrefs, gnus-summary-show-thread): Use - `gnus-point-at-bol' and `gnus-point-at-eol' instead of + (gnus-article-get-xrefs, gnus-summary-show-thread): + Use `gnus-point-at-bol' and `gnus-point-at-eol' instead of `(progn (beginning-of-line) (point))'. It's shorter, faster, and makes it clear that we don't need the side effect. * gnus-util.el (gnus-delete-line): Do. @@ -4280,8 +4272,8 @@ 2003-03-02 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agent-enable-expiration): New - variable. Either ENABLE or DISABLE. Sets default behavior for + * gnus-agent.el (gnus-agent-enable-expiration): + New variable. Either ENABLE or DISABLE. Sets default behavior for selecting which groups are expired. (gnus-agent-cat-set-property, gnus-agent-cat-defaccessor, gnus-agent-set-cat-groups): Provides abstract interface for @@ -4289,8 +4281,8 @@ (gnus-agent-add-group, gnus-agent-remove-group, gnus-category-insert-line, gnus-category-edit-predicate, gnus-category-edit-score, gnus-category-edit-groups, - gnus-category-copy, gnus-category-add, gnus-group-category): Use - new agent category abstraction. + gnus-category-copy, gnus-category-add, gnus-group-category): + Use new agent category abstraction. (gnus-agent-find-parameter): New function. Search for agent configuration parameter first in the group's parameters, then its topics (if any), and then the group's category. If not found @@ -4310,11 +4302,11 @@ (gnus-category-write): Writes category file compatible with current, and previous, versions of gnus-agent. (gnus-category-make-function, gnus-category-make-function-1): - Corrected documentation; parameter is predicate NOT category. + Correct documentation; parameter is predicate NOT category. (gnus-predicate-implies-unread): Now works in more cases per the todo comment. - (gnus-function-implies-unread-1): New function. Supports - gnus-predicate-implies-unread. + (gnus-function-implies-unread-1): New function. + Supports gnus-predicate-implies-unread. (gnus-agent-expire-group): Command now provides default of group under point. (gnus-agent-expire-group-1): Obeys new agent-enable-expiration and @@ -4323,12 +4315,12 @@ (gnus-agent-request-article): Now performs its own checks of gnus-agent, gnus-agent-cache, and gnus-plugged rather than assuming that the caller will do them correctly. - (): Added one-time hook to gnus-group-prepare-hook. Detects when + (): Add one-time hook to gnus-group-prepare-hook. Detects when gnus-agent-expire-days is set to an alist. Converts said alist into group parameter so that gnus-agent-expire-days will not be needed. - * gnus-art.el (gnus-request-article-this-buffer): Conditional - checks surrounding gnus-agent-request-article removed; now + * gnus-art.el (gnus-request-article-this-buffer): + Conditional checks surrounding gnus-agent-request-article removed; now performed by gnus-agent-request-article. * gnus-cus.el (gnus-agent-parameters): New variable. List of customizable group/topic parameters that regulate the agent. @@ -4351,8 +4343,8 @@ warnings. (gnus-long-file-names): New function. Isolates platform dependent msdos-long-file-names. - (gnus-save-startup-file-via-temp-buffer): New variable. Provides - option of writing directly to file. Avoids memory exhausted + (gnus-save-startup-file-via-temp-buffer): New variable. + Provides option of writing directly to file. Avoids memory exhausted errors when .newsrc.eld is huge. (gnus-save-newsrc-file): Uses new gnus-save-startup-file-via-temp-buffer. @@ -4419,12 +4411,11 @@ nnimap-split-download-body, we add it to gnus-get-new-news-hook. (spam-list-of-statistical-checks): List of statistical splitter checks. - (spam-split): Added a widen call when a statistical check is - enabled. + (spam-split): Add a widen call when a statistical check is enabled. 2003-02-28 Reiner Steib <Reiner.Steib@gmx.de> - * gnus-msg.el (gnus-user-agent): Changed default to + * gnus-msg.el (gnus-user-agent): Change default to 'emacs-gnus-type, renamed 'full. 2003-02-28 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -4444,8 +4435,8 @@ 2003-02-26 Simon Josefsson <jas@extundo.com> - * gnus-sum.el (gnus-summary-toggle-header): Run - gnus-article-decode-hook instead of calling a-decode-encoded-words + * gnus-sum.el (gnus-summary-toggle-header): + Run gnus-article-decode-hook instead of calling a-decode-encoded-words directly (the latter is run as part of the former). 2003-02-26 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -4460,13 +4451,13 @@ 2003-02-25 Reiner Steib <Reiner.Steib@gmx.de> - * gnus-art.el (gnus-button-mid-or-mail-heuristic-alist): Added - compensation for TDMA addresses. + * gnus-art.el (gnus-button-mid-or-mail-heuristic-alist): + Add compensation for TDMA addresses. 2003-02-24 Reiner Steib <Reiner.Steib@gmx.de> * gnus-msg.el (gnus-user-agent): New variable. - (gnus-version-expose-system): Removed. Obsoleted by + (gnus-version-expose-system): Remove. Obsoleted by `gnus-user-agent'. (gnus-extended-version): Use `gnus-user-agent'. @@ -4478,17 +4469,17 @@ 2003-02-24 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-group.el (gnus-topic-mode-p): Fixed free variable + * gnus-group.el (gnus-topic-mode-p): Fix free variable reference. 2003-02-24 Kevin Greiner <kgreiner@xpediantsolutions.com> - * nnheader.el (nnheader-find-nov-line): Changed midpoint + * nnheader.el (nnheader-find-nov-line): Change midpoint calculation to avoid integer overflow. 2003-02-24 Reiner Steib <Reiner.Steib@gmx.de> - * gnus-start.el (gnus-backup-startup-file): Fixed custom type. + * gnus-start.el (gnus-backup-startup-file): Fix custom type. 2003-02-24 Teodor Zlatanov <tzz@lifelogs.com> @@ -4528,10 +4519,10 @@ clause of the condition-case statement. Errors connecting to a server no longer terminate gnus. - * gnus-agent.el (gnus-agent-toggle-plugged): Renamed parameter to + * gnus-agent.el (gnus-agent-toggle-plugged): Rename parameter to make its use obvious. Added no-nothing case to avoid opening(closing) servers when already open(closed). - (gnus-agent-while-plugged): Added macro to facilitate internal use + (gnus-agent-while-plugged): Add macro to facilitate internal use of gnus-agent-toggle-plugged. (gnus-agent-fetch-group): Use new gnus-agent-while-plugged to temporarily open servers. @@ -4565,8 +4556,8 @@ 2003-02-20 Reiner Steib <Reiner.Steib@gmx.de> - * message.el (message-user-fqdn, message-valid-fqdn-regexp): New - variables. + * message.el (message-user-fqdn, message-valid-fqdn-regexp): + New variables. (message-make-fqdn): Use it. Improved validity check. 2003-02-23 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -4592,7 +4583,7 @@ 2003-02-23 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-art.el (gnus-button-url-regexp): Removed `. + * gnus-art.el (gnus-button-url-regexp): Remove `. 2003-02-23 Max Froumentin <mf@w3.org> @@ -4603,13 +4594,13 @@ * gnus-art.el (gnus-mime-action-on-part): Require a match interactively. - * gnus-start.el (gnus-save-newsrc-file): Use - gnus-backup-startup-file. + * gnus-start.el (gnus-save-newsrc-file): + Use gnus-backup-startup-file. (gnus-backup-startup-file): New variable. 2003-02-22 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus.el (gnus-summary-buffer-name): Moved function here. + * gnus.el (gnus-summary-buffer-name): Move function here. * gnus-draft.el (defun): Remove debug. @@ -4631,8 +4622,8 @@ 2003-02-22 Kai Großjohann <kai.grossjohann@uni-duisburg.de> - * gnus-agent.el (gnus-agent-get-undownloaded-list): Sort - `gnus-newsgroup-headers'. + * gnus-agent.el (gnus-agent-get-undownloaded-list): + Sort `gnus-newsgroup-headers'. 2003-02-22 Karl Pflästerer <sigurd@12move.de> @@ -4651,18 +4642,18 @@ just article ID. * gnus-registry.el (gnus-registry-hashtb, gnus-register-action) - (gnus-register-spool-action): Added hashtable of message ID keys + (gnus-register-spool-action): Add hashtable of message ID keys with message motion data. 2003-02-21 Reiner Steib <Reiner.Steib@gmx.de> - * gnus-art.el (gnus-button-mid-or-mail-heuristic-alist): New - variable, used in `gnus-button-mid-or-mail-heuristic'. + * gnus-art.el (gnus-button-mid-or-mail-heuristic-alist): + New variable, used in `gnus-button-mid-or-mail-heuristic'. (gnus-button-mid-or-mail-heuristic): New function derived from Florian Weimer's Perl script. (gnus-button-handle-mid-or-mail): Allow a function instead of 'guess. - (gnus-button-guessed-mid-regexp): Removed. + (gnus-button-guessed-mid-regexp): Remove. 2003-02-20 Katsumi Yamaoka <yamaoka@jpl.org> @@ -4700,7 +4691,7 @@ 2003-02-19 Reiner Steib <Reiner.Steib@gmx.de> * gnus-cite.el (gnus-cite-unsightly-citation-regexp) - (gnus-cite-parse): Renamed `gnus-unsightly-citation-regexp' to + (gnus-cite-parse): Rename `gnus-unsightly-citation-regexp' to `gnus-cite-unsightly-citation-regexp'. 2003-02-19 Katsumi Yamaoka <yamaoka@jpl.org> @@ -4723,8 +4714,8 @@ 2003-02-18 Teodor Zlatanov <tzz@lifelogs.com> * spam.el (spam-ham-move-routine) - (spam-mark-spam-as-expired-and-move-routine): Use - gnus-summary-kill-process-mark and gnus-summary-yank-process-mark + (spam-mark-spam-as-expired-and-move-routine): + Use gnus-summary-kill-process-mark and gnus-summary-yank-process-mark around process-mark manipulation on the group. 2003-02-17 Kai Großjohann <kai.grossjohann@uni-duisburg.de> @@ -4739,8 +4730,8 @@ 2003-02-16 Lars Magne Ingebrigtsen <larsi@gnus.org> - * nndraft.el (nndraft-request-move-article): Bind - nnmh-allow-delete-final to t. + * nndraft.el (nndraft-request-move-article): + Bind nnmh-allow-delete-final to t. 2003-02-14 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -4821,8 +4812,8 @@ * gnus-art.el (gnus-article-only-boring-p): New. (gnus-article-skip-boring): New. * gnus-cite.el (gnus-article-boring-faces): New. - * gnus-sum.el (gnus-summary-next-page): Use - gnus-article-only-boring-p. + * gnus-sum.el (gnus-summary-next-page): + Use gnus-article-only-boring-p. 2003-02-12 Teodor Zlatanov <tzz@lifelogs.com> @@ -4842,7 +4833,7 @@ 2003-02-11 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-summary-set-agent-mark): Added call to + * gnus-agent.el (gnus-summary-set-agent-mark): Add call to gnus-summary-goto-subject as gnus-summary-update-mark operates on the current LINE. (gnus-agent-summary-fetch-group): Minimized the number of times @@ -4868,8 +4859,8 @@ 2003-02-10 Jesper Harder <harder@ifa.au.dk> - * mm-util.el (mm-mule-charset-to-mime-charset): Use - sort-coding-systems to prefer utf-8 over utf-16. + * mm-util.el (mm-mule-charset-to-mime-charset): + Use sort-coding-systems to prefer utf-8 over utf-16. 2003-02-09 Kevin Greiner <kgreiner@xpediantsolutions.com> @@ -4880,9 +4871,9 @@ If you don't want to run gnus-agent-expire, don't call it. (gnus-agent-expire): The broken test to disable gnus-agent-expire when g-a-e-d was NOT nil was removed. - (gnus-agent-article-name): Removed unnecessary input test as + (gnus-agent-article-name): Remove unnecessary input test as article IDs are always strings. - (gnus-agent-regenerate-group): Added check to protect against + (gnus-agent-regenerate-group): Add check to protect against servers that generate absurdly long article IDs. Valid IDs are less than 10 digits to avoid overflow errors. Fixed logic error when ensuring that the final article ID is present in the new @@ -4918,8 +4909,8 @@ 2003-02-08 Jesper Harder <harder@ifa.au.dk> - * gnus-art.el (gnus-article-refer-article): Use - gnus-replace-in-string. + * gnus-art.el (gnus-article-refer-article): + Use gnus-replace-in-string. * gnus-util.el (gnus-map-function): Remove unneeded let-binding. (gnus-remove-duplicates): Do. @@ -4928,12 +4919,12 @@ * gnus-int.el (gnus-internal-registry-spool-current-method): New variable. - (gnus-request-scan): Set - gnus-internal-registry-spool-current-method to gnus-command-method + (gnus-request-scan): + Set gnus-internal-registry-spool-current-method to gnus-command-method before a request-scan operation. - * gnus-registry.el (regtest-nnmail): Use - gnus-internal-registry-spool-current-method. + * gnus-registry.el (regtest-nnmail): + Use gnus-internal-registry-spool-current-method. 2003-02-07 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -4946,7 +4937,7 @@ * gnus-registry.el: New file with examples of using the hooks. - * gnus.el (gnus-registry): Added registry customization group. + * gnus.el (gnus-registry): Add registry customization group. (gnus-group-prefixed-name): Improve function to return full group name optionally. (gnus-group-guess-prefixed-name): Shortcut to @@ -4990,8 +4981,8 @@ 2003-02-07 Simon Josefsson <jas@extundo.com> - * mml-sec.el (mml-unsecure-message): Don't use kill-region. Tiny - patch from deskpot@myrealbox.com (Vasily Korytov). + * mml-sec.el (mml-unsecure-message): Don't use kill-region. + Tiny patch from deskpot@myrealbox.com (Vasily Korytov). 2003-02-02 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -5000,8 +4991,8 @@ 2003-02-06 Katsumi Yamaoka <yamaoka@jpl.org> - * gnus-art.el (gnus-mime-view-part-internally): Bind - buffer-read-only to nil. + * gnus-art.el (gnus-mime-view-part-internally): + Bind buffer-read-only to nil. 2003-02-05 Katsumi Yamaoka <yamaoka@jpl.org> @@ -5120,14 +5111,14 @@ * gnus-util.el (gnus-prin1-to-string): Bind print-length and print-level. - * gnus-art.el (article-display-x-face): Removed gray x-face stuff. - (gnus-treat-display-grey-xface): Removed. + * gnus-art.el (article-display-x-face): Remove gray x-face stuff. + (gnus-treat-display-grey-xface): Remove. * gnus-fun.el (gnus-grab-cam-face): New. - (gnus-convert-image-to-gray-x-face): Removed. - (gnus-convert-gray-x-face-to-xpm): Removed. - (gnus-convert-gray-x-face-region): Removed. - (gnus-grab-gray-x-face): Removed. + (gnus-convert-image-to-gray-x-face): Remove. + (gnus-convert-gray-x-face-to-xpm): Remove. + (gnus-convert-gray-x-face-region): Remove. + (gnus-grab-gray-x-face): Remove. * nnmail.el (nnmail-expiry-wait-function): Doc indent. @@ -5179,7 +5170,7 @@ * gnus-fun.el (gnus-face-encode): New function. (gnus-convert-png-to-face): Use it. - * gnus-sum.el (gnus-summary-make-menu-bar): Added M-& to marks. + * gnus-sum.el (gnus-summary-make-menu-bar): Add M-& to marks. 2003-01-26 Jesper Harder <harder@ifa.au.dk> @@ -5201,16 +5192,16 @@ * mm-encode.el (mm-qp-or-base64): Always QP iff mm-use-ultra-safe-encoding and cleartext PGP. - * gnus-sum.el (gnus-summary-select-article): Inhibit - redisplay (mainly for secured messages). + * gnus-sum.el (gnus-summary-select-article): + Inhibit redisplay (mainly for secured messages). * nnmail.el (nnmail-article-group): Copy body too (but don't process it). 2003-01-25 Jesper Harder <harder@ifa.au.dk> - * gnus-art.el (gnus-article-setup-buffer): Reset - gnus-button-marker-list. + * gnus-art.el (gnus-article-setup-buffer): + Reset gnus-button-marker-list. 2003-01-25 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -5219,8 +5210,8 @@ 2003-01-24 Lars Magne Ingebrigtsen <larsi@gnus.org> - * nnheader.el (nnheader-directory-separator-character): New - variable. + * nnheader.el (nnheader-directory-separator-character): + New variable. 2003-01-24 Kai Großjohann <kai.grossjohann@uni-duisburg.de> @@ -5257,8 +5248,8 @@ 2003-01-24 Teodor Zlatanov <tzz@lifelogs.com> * spam.el (spam-check-blackholes, spam-split) - (spam-mark-junk-as-spam-routine, spam-summary-prepare-exit): Added - gnus-message calls to show to users what spam.el is doing. + (spam-mark-junk-as-spam-routine, spam-summary-prepare-exit): + Add gnus-message calls to show to users what spam.el is doing. 2003-01-24 Jesper Harder <harder@ifa.au.dk> @@ -5282,7 +5273,7 @@ * gnus-async.el (gnus-async-wait-for-article): Don't use a timeout. - * nntp.el (nntp-accept-process-output): Removed timeout. + * nntp.el (nntp-accept-process-output): Remove timeout. (nntp-read-timeout): New variable. (nntp-accept-process-output): Use it. @@ -5290,14 +5281,14 @@ 2003-01-23 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-sum.el (gnus-summary-first-subject): Fixed bug that I + * gnus-sum.el (gnus-summary-first-subject): Fix bug that I introduced on 2002-01-22. (gnus-summary-first-unseen-or-unread-subject): Ditto. 2003-01-23 Teodor Zlatanov <tzz@lifelogs.com> * spam.el (spam-check-regex-headers, spam-list-of-checks) - (spam-regex-headers-spam, spam-regex-headers-ham): Added spam/ham + (spam-regex-headers-spam, spam-regex-headers-ham): Add spam/ham checks of incoming mail based on simple header regexp matching. 2003-01-22 Teodor Zlatanov <tzz@lifelogs.com> @@ -5310,16 +5301,16 @@ gnus-newsgroup-unfetched, the list of articles whose headers have not been fetched from the server. - * gnus-sum.el (gnus-summary-find-next): Removed undownloaded + * gnus-sum.el (gnus-summary-find-next): Remove undownloaded parameter as it never worked due to a bug. Added check to prevent selection of any article in the gnus-newsgroup-unfetched list. - (gnus-summary-find-prev): Added check to prevent selection of any + (gnus-summary-find-prev): Add check to prevent selection of any article in the gnus-newsgroup-unfetched list. - (gnus-summary-first-subject): Documented API. Modified - implementation so that constraints are handled independently. + (gnus-summary-first-subject): Document API. + Modified implementation so that constraints are handled independently. Added check to prevent selection of any article in the gnus-newsgroup-unfetched list. - (gnus-summary-first-unseen-subject): Updated parameters in + (gnus-summary-first-unseen-subject): Update parameters in gnus-summary-first-subject call to match new API. (gnus-summary-first-unseen-or-unread-subject): Ditto. (gnus-summary-catchup): Do not mark unfetched articles as read. @@ -5330,8 +5321,8 @@ make-obsolete-variable allows only two arguments in XEmacs and Emacs 20. - * gnus-sum.el (gnus-summary-wash-hide-map): Remove - gnus-article-hide-pgp. + * gnus-sum.el (gnus-summary-wash-hide-map): + Remove gnus-article-hide-pgp. (gnus-summary-make-menu-bar): Do. * gnus-art.el (gnus-treat-strip-pgp): Make obsolete. @@ -5348,21 +5339,21 @@ 2003-01-21 Teodor Zlatanov <tzz@lifelogs.com> - * spam.el (spam-group-ham-processor-bogofilter-p): Fixed bug. - (spam-ifile-register-ham-routine, spam-ifile-ham-category): New - option to make ifile a purely binary classifier. + * spam.el (spam-group-ham-processor-bogofilter-p): Fix bug. + (spam-ifile-register-ham-routine, spam-ifile-ham-category): + New option to make ifile a purely binary classifier. 2003-01-21 Lars Magne Ingebrigtsen <larsi@gnus.org> - * mml-sec.el (mml-secure-sign-pgpauto): Renamed. - (mml-secure-encrypt-pgpmime): Removed double. + * mml-sec.el (mml-secure-sign-pgpauto): Rename. + (mml-secure-encrypt-pgpmime): Remove double. - * gnus-sum.el (gnus-summary-mark-article-as-replied): Added - debugging statements. + * gnus-sum.el (gnus-summary-mark-article-as-replied): + Add debugging statements. 2003-01-21 Andreas Fuchs <asf@void.at> - * mml-sec.el (mml-sign-alist): Added pgpauto. + * mml-sec.el (mml-sign-alist): Add pgpauto. 2003-01-21 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -5374,7 +5365,7 @@ 2003-01-21 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-art.el (gnus-button-url-regexp): Removed |. + * gnus-art.el (gnus-button-url-regexp): Remove |. * message.el (message-send-hook): Doc fix. @@ -5394,10 +5385,10 @@ 2003-01-18 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agent-regenerate-group): Added interactive form. + * gnus-agent.el (gnus-agent-regenerate-group): Add interactive form. - * gnus-sum.el (gnus-summary-update-article-line): Fixed - calculation of net characters added for use in the gnus-data + * gnus-sum.el (gnus-summary-update-article-line): + Fix calculation of net characters added for use in the gnus-data structure. 2003-01-18 Kai Großjohann <kai.grossjohann@uni-duisburg.de> @@ -5431,8 +5422,8 @@ avoid encoding problems. * mailcap.el (mailcap-ps-command): New variable. - (mailcap-mime-data): Add print entry where applicable. Use - pdftotext on a tty. + (mailcap-mime-data): Add print entry where applicable. + Use pdftotext on a tty. 2003-01-16 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -5449,7 +5440,7 @@ * spam.el (spam-get-article-as-filename): New function (unused for now). (spam-get-article-as-buffer): New function. (spam-get-article-as-string): Use spam-get-article-as-buffer. - (spam-summary-prepare-exit): Fixed bug, noticed by Malcolm Purvis. + (spam-summary-prepare-exit): Fix bug, noticed by Malcolm Purvis. 2003-01-15 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -5500,7 +5491,7 @@ (spam-group-ham-processor-bogofilter-p): New functions for the new Bogofilter interface. (spam-summary-prepare-exit): Use the new Bogofilter functions. - (spam-list-of-checks): Added spam-use-bogofilter-headers. + (spam-list-of-checks): Add spam-use-bogofilter-headers. (spam-bogofilter-score): Rewrote function. (spam-check-bogofilter): Optional score parameter, uses spam-check-bogofilter-headers better. @@ -5546,9 +5537,9 @@ 2003-01-13 Jhair Tocancipa Triana <jhair_tocancipa@gmx.net> - * gnus-audio.el (gnus-audio-au-player, gnus-audio-wav-player): Use - /usr/bin/play as default player. - (gnus-audio-play): Added ARG-DESCRIPTOR to prompt for a file to play. + * gnus-audio.el (gnus-audio-au-player, gnus-audio-wav-player): + Use /usr/bin/play as default player. + (gnus-audio-play): Add ARG-DESCRIPTOR to prompt for a file to play. 2003-01-14 Katsumi Yamaoka <yamaoka@jpl.org> @@ -5560,7 +5551,7 @@ fictitious headers generated by nnagent (ie. Undownloaded Article ####) in the list of articles that have not been downloaded. - * gnus-int.el (): Added require declarations to resolve + * gnus-int.el (): Add require declarations to resolve compile-time warnings. (gnus-open-server): If the server status is set to offline, recursively execute gnus-open-server to open the offline backend @@ -5568,8 +5559,8 @@ 2003-01-14 Jesper Harder <harder@ifa.au.dk> - * gnus-art.el (gnus-article-reply-with-original): Use - gnus-mark-active-p. + * gnus-art.el (gnus-article-reply-with-original): + Use gnus-mark-active-p. (gnus-article-followup-with-original): Do. 2003-01-13 Reiner Steib <Reiner.Steib@gmx.de> @@ -5596,8 +5587,8 @@ * deuglify.el (gnus-article-outlook-unwrap-lines) (gnus-article-outlook-repair-attribution) (gnus-article-outlook-rearrange-citation): New function names, - renamed from "gnus-outlook-" to "gnus-article-outlook-". Changed - doc-string. + renamed from "gnus-outlook-" to "gnus-article-outlook-". + Changed doc-string. * gnus-sum.el (gnus-summary-mode-map): Use new function names, removed `W k' key binding (use `W Y f' instead). @@ -5632,7 +5623,7 @@ 2003-01-12 Lars Magne Ingebrigtsen <larsi@gnus.org> - * mail-source.el (mail-sources): Removed autoload to make it + * mail-source.el (mail-sources): Remove autoload to make it compile under XEmacs. 2003-01-12 Raymond Scholz <ray-2003@zonix.de> @@ -5660,8 +5651,8 @@ 2003-01-12 Simon Josefsson <jas@extundo.com> - * sieve.el (sieve-upload-and-bury): New. Suggested by - kai.grossjohann@uni-duisburg.de (Kai Großjohann). + * sieve.el (sieve-upload-and-bury): New. + Suggested by kai.grossjohann@uni-duisburg.de (Kai Großjohann). * sieve-mode.el (sieve-mode-map): Bind s-u-a-b to C-c C-c. Suggested by kai.grossjohann@uni-duisburg.de (Kai Großjohann). @@ -5706,8 +5697,8 @@ 2003-01-10 Reiner Steib <Reiner.Steib@gmx.de> - * deuglify.el (gnus-outlook-deuglify-attrib-verb-regexp): Added - castellano. + * deuglify.el (gnus-outlook-deuglify-attrib-verb-regexp): + Add castellano. (gnus-outlook-display-hook): New variable. (gnus-outlook-display-article-buffer): New function. (gnus-outlook-unwrap-lines, gnus-outlook-repair-attribution) @@ -5716,8 +5707,8 @@ (gnus-article-outlook-deuglify-article): Use `g-o-d-a-b'. * gnus-sum.el: Added autoloads. - (gnus-summary-mode-map): Added gnus-summary-wash-deuglify-map. - (gnus-summary-make-menu-bar): Added "(Outlook) Deuglify" menu. + (gnus-summary-mode-map): Add gnus-summary-wash-deuglify-map. + (gnus-summary-make-menu-bar): Add "(Outlook) Deuglify" menu. 2003-01-11 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -5765,7 +5756,7 @@ * gnus-fun.el (gnus-face-from-file): New function. (gnus-convert-face-to-png): Ditto. - * gnus-art.el (gnus-ignored-headers): Added Face. + * gnus-art.el (gnus-ignored-headers): Add Face. 2003-01-10 Simon Josefsson <jas@extundo.com> @@ -5787,13 +5778,13 @@ * spam-stat.el (spam-stat): Typo fix. (spam-stat-install-hooks): New variable. - (spam-stat-split-fancy-spam-group): Added documentation clarification. + (spam-stat-split-fancy-spam-group): Add documentation clarification. (spam-stat-split-fancy-spam-threshhold): New variable. (spam-stat-install-hooks): Make hooks conditional. (spam-stat-split-fancy): Use spam-stat-split-fancy-spam-threshhold. - * gnus.el (gnus-group-ham-exit-processor-stat, spam-process): Add - spam-stat ham/spam processor symbols. + * gnus.el (gnus-group-ham-exit-processor-stat, spam-process): + Add spam-stat ham/spam processor symbols. 2003-01-10 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -5811,7 +5802,7 @@ 2003-01-09 Teodor Zlatanov <tzz@lifelogs.com> - * spam.el (spam-check-ifile): Fixed call-process-region to use the + * spam.el (spam-check-ifile): Fix call-process-region to use the db parameter only if it's set. (spam-ifile-register-with-ifile): Ditto. @@ -5857,17 +5848,17 @@ * spam.el: Fixed the BBDB autoloads again, using bbdb-search-simple now (which is not a macro, thank god). - * gnus.el (ham-process-destination): Added new parameter for + * gnus.el (ham-process-destination): Add new parameter for destination of ham articles found in spam groups at summary exit. * spam.el (spam-get-ifile-database-parameter): use spam-ifile-database-path. (spam-check-ifile, spam-ifile-register-with-ifile): use spam-get-ifile-database-parameter. - (spam-ifile-database-path): Added new parameter for ifile's database. + (spam-ifile-database-path): Add new parameter for ifile's database. (spam-move-spam-nonspam-groups-only): New parameter to determine if spam should be moved from all groups or only some. - (spam-summary-prepare-exit): Fixed logic to use + (spam-summary-prepare-exit): Fix logic to use spam-move-spam-nonspam-groups-only when deciding to invoke spam-mark-spam-as-expired-and-move-routine; always invoke that routine after the spam has been expired-or-moved in case there's @@ -5879,8 +5870,8 @@ * gnus-spec.el (gnus-parse-complex-format): %~ => ~*. - * gnus-agent.el (gnus-agent-fetch-selected-article): Use - gnus-summary-update-article-line. + * gnus-agent.el (gnus-agent-fetch-selected-article): + Use gnus-summary-update-article-line. 2003-01-08 Simon Josefsson <jas@extundo.com> @@ -5889,7 +5880,7 @@ 2003-01-07 Teodor Zlatanov <tzz@lifelogs.com> - * spam.el (spam-check-ifile): Fixed the spam-ifile-all-categories + * spam.el (spam-check-ifile): Fix the spam-ifile-all-categories logic, finally. 2003-01-08 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -5914,21 +5905,21 @@ * message.el (message-make-mail-followup-to, message-generate-unsubscribed-mail-followup-to): New function names. Renamed functions: "-mft" -> "-mail-followup-to". - (message-make-mft, message-gen-unsubscribed-mft): Removed function + (message-make-mft, message-gen-unsubscribed-mft): Remove function names. * mml.el (mml-preview-insert-mail-followup-to): New function name. - (mml-preview-insert-mft): Removed function name. + (mml-preview-insert-mft): Remove function name. (mml-preview): Use new function names. * gnus-art.el (gnus-article-edit-mode-map): Use new function names. - * message.el (message-mode-field-menu): Moved header related + * message.el (message-mode-field-menu): Move header related commands from "Message" to "Field" menu. 2003-01-07 Reiner Steib <Reiner.Steib@gmx.de> - * message.el (message-generate-headers-first): Added customization + * message.el (message-generate-headers-first): Add customization if variable is a list. 2003-01-07 Michael Shields <shields@msrl.com> @@ -5940,8 +5931,8 @@ * gnus-msg.el (gnus-debug): Use ignore-errors. - * gnus-agent.el (gnus-agent-fetch-selected-article): Use - `gnus-summary-update-line'. + * gnus-agent.el (gnus-agent-fetch-selected-article): + Use `gnus-summary-update-line'. 2003-01-08 Simon Josefsson <jas@extundo.com> @@ -5969,8 +5960,8 @@ 2003-01-07 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-sum.el (gnus-summary-make-menu-bar): Added - gnus-summary-refer-thread to thread menu. + * gnus-sum.el (gnus-summary-make-menu-bar): + Add gnus-summary-refer-thread to thread menu. 2003-01-07 Kevin Greiner <kgreiner@xpediantsolutions.com> @@ -5986,16 +5977,16 @@ * spam.el (spam-check-ifile, spam-ifile-register-with-ifile) (spam-ifile-register-spam-routine) - (spam-ifile-register-ham-routine): Added ifile functionality that + (spam-ifile-register-ham-routine): Add ifile functionality that does not use ifile-gnus.el to classify and register articles. (spam-get-article-as-string): Convenience function. - (spam-summary-prepare-exit): Added ifile spam and ham registration. + (spam-summary-prepare-exit): Add ifile spam and ham registration. (spam-ifile-all-categories, spam-ifile-spam-category) - (spam-ifile-path, spam-ifile): Added customization options. + (spam-ifile-path, spam-ifile): Add customization options. - * gnus.el (gnus-group-ham-exit-processor-ifile): Added ifile ham + * gnus.el (gnus-group-ham-exit-processor-ifile): Add ifile ham exit processor. - (spam-process): Added gnus-group-ham-exit-processor-ifile to the + (spam-process): Add gnus-group-ham-exit-processor-ifile to the list of choices. 2003-01-07 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -6005,7 +5996,7 @@ 2003-01-06 Lars Magne Ingebrigtsen <larsi@gnus.org> - * nnweb.el (nnweb-asynchronous-p): Changed to nil. + * nnweb.el (nnweb-asynchronous-p): Change to nil. 2003-01-07 Simon Josefsson <jas@extundo.com> @@ -6033,14 +6024,14 @@ 2003-01-06 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agent-fetch-group): Modified to permit execution + * gnus-agent.el (gnus-agent-fetch-group): Modify to permit execution in either the group or summary buffer. New command "JS", in summary buffer, will fetch articles per the group's category, predicate, and processable flags. (gnus-agent-summary-fetch-series): Rewritten to call gnus-agent-session-fetch-group once with all articles in the series. - (gnus-agent-summary-fetch-group): Fixed bug and modified code to + (gnus-agent-summary-fetch-group): Fix bug and modified code to return list of fetched articles. (gnus-agent-fetch-articles): Split fetch list into sublists such that the article buffer is only slightly larger than @@ -6055,9 +6046,9 @@ When called in the group buffer, articles that can not be fetched are AUTOMATICALLY MARKED AS READ. - * gnus-sum.el (): Modified eval-when-compile to minimize + * gnus-sum.el (): Modify eval-when-compile to minimize misleading compilation warnings. - (gnus-update-summary-mark-positions): Changed code to use + (gnus-update-summary-mark-positions): Change code to use gnus-undownloaded-mark rather than gnus-downloaded-mark. * nnheader.el (nnheader-insert-nov-file): Do not try to insert an @@ -6071,18 +6062,18 @@ determine the appropriate course of action. Instead, two function implementations are provided and the nntp-report function value is bound to the appropriate implementation. - (nntp-retrieve-data): Moved nntp-report call to end of implementation. + (nntp-retrieve-data): Move nntp-report call to end of implementation. (nntp-with-open-group): Now binds nntp-report's function cell rather than binding gnus-with-open-group-first-pass. Added a condition-case to detect a quit during a nntp command. When the quit occurs, the current connection is closed as a fetch articles request could have several megabytes queued up for reading. - (nntp-retrieve-headers): Bind articles to itself. If - nntp-with-open-group repeats this command, I must have access to + (nntp-retrieve-headers): Bind articles to itself. + If nntp-with-open-group repeats this command, I must have access to the original list of articles. (nntp-retrieve-groups): Ditto for groups. (nntp-retrieve-articles): Ditto for articles. - (*): Replaced nntp-possibly-change-group calls to + (*): Replace nntp-possibly-change-group calls to nntp-with-open-group forms in all, but one, occurrence. (nntp-accept-process-output): Bug fix. Detect when called with null process. @@ -6106,8 +6097,8 @@ * mm-url.el (mm-url-program): Doc fix. - * message.el (message-mode-map): Rebound - message-insert-wide-reply. + * message.el (message-mode-map): + Rebound message-insert-wide-reply. 2003-01-05 Katsumi Yamaoka <yamaoka@jpl.org> @@ -6118,9 +6109,9 @@ * spam.el: Fixed line lengths to 80 chars or less. - * gnus-sum.el (gnus-read-mark-p): Added the spam-mark as a + * gnus-sum.el (gnus-read-mark-p): Add the spam-mark as a "not-read" mark. - (gnus-summary-mark-forward): Added the spam-mark to the list of + (gnus-summary-mark-forward): Add the spam-mark to the list of marks not to be marked as "read" when viewed. 2003-01-05 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -6170,8 +6161,8 @@ 2003-01-04 Kevin Ryde <user42@zip.com.au> - * gnus-art.el (gnus-mime-jka-compr-maybe-uncompress): New - function. + * gnus-art.el (gnus-mime-jka-compr-maybe-uncompress): + New function. 2003-01-04 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -6215,7 +6206,7 @@ (spam-generic-register-routine, spam-BBDB-register-routine) (spam-ifile-register-routine, spam-blacklist-register-routine) (spam-whitelist-register-routine): New functions. - (spam-summary-prepare-exit): Added summary exit processing (expire + (spam-summary-prepare-exit): Add summary exit processing (expire or move) of spam-marked articles for spam groups; added slots for all the spam-*-register-routine functions. @@ -6254,8 +6245,8 @@ 2003-01-02 Jesper Harder <harder@ifa.au.dk> - * gnus-group.el (gnus-group-fetch-charter): Use - http://TLH.news-admin.org/charters/GROUPNAME as a fallback. + * gnus-group.el (gnus-group-fetch-charter): + Use http://TLH.news-admin.org/charters/GROUPNAME as a fallback. 2003-01-02 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -6316,13 +6307,13 @@ * gnus.el (nnheader): Require nnheader. - * nndraft.el (nndraft-request-associate-buffer): Use - make-local-variable. + * nndraft.el (nndraft-request-associate-buffer): + Use make-local-variable. 2003-01-02 Michael Shields <shields@msrl.com> - * nndraft.el (nndraft-request-associate-buffer): Make - write-contents-hooks buffer-local before setting it. + * nndraft.el (nndraft-request-associate-buffer): + Make write-contents-hooks buffer-local before setting it. 2003-01-02 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -6344,11 +6335,11 @@ 2003-01-01 Teodor Zlatanov <tzz@lifelogs.com> - * spam.el (spam-summary-prepare-exit): Added slots for spam- and + * spam.el (spam-summary-prepare-exit): Add slots for spam- and ham-processing of articles; use the new spam-group-(spam|ham)-contents-p functions. - (spam-group-spam-contents-p, spam-group-ham-contents-p): New - convenience functions. + (spam-group-spam-contents-p, spam-group-ham-contents-p): + New convenience functions. (spam-mark-junk-as-spam-routine): Use the new spam-group-spam-contents-p function. @@ -6360,13 +6351,13 @@ (gnus-group-spam-exit-processor-whitelist) (gnus-group-spam-exit-processor-BBDB) (gnus-group-spam-classification-spam) - (gnus-group-spam-classification-ham): Added new symbols for the + (gnus-group-spam-classification-ham): Add new symbols for the spam-process and spam-contents parameters. - * spam.el (spam-ham-marks, spam-spam-marks): Changed list + * spam.el (spam-ham-marks, spam-spam-marks): Change list customization and list itself to store mark symbol rather than mark character. - (spam-bogofilter-register-routine): Added logic to generate mark + (spam-bogofilter-register-routine): Add logic to generate mark values list from spam-ham-marks and spam-spam-marks, so (member) would work. @@ -6376,10 +6367,10 @@ 2003-01-01 Teodor Zlatanov <tzz@lifelogs.com> - * spam.el (spam-ham-marks, spam-spam-marks): Changed list + * spam.el (spam-ham-marks, spam-spam-marks): Change list customization and list itself to store mark symbol rather than mark character. - (spam-bogofilter-register-routine): Added logic to generate mark + (spam-bogofilter-register-routine): Add logic to generate mark values list from spam-ham-marks and spam-spam-marks, so (member) would work. @@ -6396,16 +6387,16 @@ message-cross-post-note-function): New variables names. (message-xpost-old-target, message-xpost-default, message-xpost-note, message-fup2-note, - message-xpost-note-function): Removed variable names. + message-xpost-note-function): Remove variable names. (message-cross-post-followup-to-header, message-cross-post-insert-note, message-cross-post-followup-to): New function names. (message-xpost-fup2-header, message-xpost-insert-note, - message-xpost-fup2): Removed function names. + message-xpost-fup2): Remove function names. 2002-12-30 Reiner Steib <Reiner.Steib@gmx.de> - * message.el (message-send-mail): Added message-cleanup-headers to + * message.el (message-send-mail): Add message-cleanup-headers to prevent newlines in headers. 2003-01-01 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -6417,8 +6408,8 @@ 2003-01-01 Wes Hardaker <wes@hardakers.net> - * gnus-sum.el (gnus-summary-display-while-building): New - variable. + * gnus-sum.el (gnus-summary-display-while-building): + New variable. 2003-01-01 Raymond Scholz <ray-2003@zonix.de> @@ -6435,8 +6426,8 @@ lambda form. (message-draft-headers): New variable. - * gnus-msg.el (gnus-inews-make-draft-meta-information): New - function. + * gnus-msg.el (gnus-inews-make-draft-meta-information): + New function. (gnus-setup-message): Use it. * message.el (message-generate-headers-first): Doc fix. @@ -6455,8 +6446,8 @@ 2002-12-31 Raymond Scholz <ray-2002@zonix.de> - * deuglify.el (gnus-outlook-rearrange-article): Use - `transpose-regions' instead of tempering the kill-ring. + * deuglify.el (gnus-outlook-rearrange-article): + Use `transpose-regions' instead of tempering the kill-ring. (gnus-article-outlook-deuglify-article): Rehighlight article instead of a complete redisplay. @@ -6515,7 +6506,7 @@ 2002-12-30 Reiner Steib <Reiner.Steib@gmx.de> - * message.el (message-completion-alist): Added "Mail-Followup-To" + * message.el (message-completion-alist): Add "Mail-Followup-To" and "Mail-Copies-To". 2002-07-21 Jesper Harder <harder@ifa.au.dk> @@ -6528,10 +6519,10 @@ * spam.el (spam-use-dig): New variable for blackhole checking through dig.el. - (spam-check-blackholes): Added dig.el checking functionality and + (spam-check-blackholes): Add dig.el checking functionality and more verbose reporting; query-dig is autoloaded from dig.el. (spam-use-blackholes): Disabled by default. - (spam-blackhole-servers): Removed rbl.maps.vix.com from the + (spam-blackhole-servers): Remove rbl.maps.vix.com from the blackhole servers list. 2002-12-30 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -6555,7 +6546,7 @@ 2002-08-10 Jari Aalto <jari.aalto@poboxes.com> - * nnmail.el (nnmail-split-it): Added tracing to + * nnmail.el (nnmail-split-it): Add tracing to `:' split rule. 2002-08-13 Hrvoje Niksic <hniksic@xemacs.org> @@ -6581,7 +6572,7 @@ * gnus-topic.el (gnus-topic-display-missing-topic): New function. (gnus-topic-goto-missing-group): Use it. - * message.el (message-required-news-headers): Removed Lines. + * message.el (message-required-news-headers): Remove Lines. (message-reply): Don't insert References first. (message-followup): Ditto. (message-make-references): New function. @@ -6702,7 +6693,7 @@ 2002-12-12 Kevin Greiner <kgreiner@xpediantsolutions.com> - * gnus-agent.el (gnus-agent-fetch-selected-article): Added call to + * gnus-agent.el (gnus-agent-fetch-selected-article): Add call to gnus-summary-update-download-mark to update the article in the summary. @@ -6712,14 +6703,14 @@ gnus-summary-normal-uncached-face, gnus-summary-low-uncached-face) New faces. - * gnus-agent.el (gnus-agent-downloaded-article-face): REMOVED. I - added this on 2002-11-23 but it just wasn't working out as + * gnus-agent.el (gnus-agent-downloaded-article-face): REMOVED. + I added this on 2002-11-23 but it just wasn't working out as intended. The idea isn't entirely dead, three new faces gnus-summary-*-uncached-face are being added to gnus.el to provide the basis for an improved implementation. - (gnus-agent-read-servers): Undo the change made on 2002-11-23. The - proper file to open is lib/servers. - (gnus-summary-set-agent-mark): Expanded documentation. Unmarking + (gnus-agent-read-servers): Undo the change made on 2002-11-23. + The proper file to open is lib/servers. + (gnus-summary-set-agent-mark): Expand documentation. Unmarking (i.e. removing the article from gnus-newsgroup-downloadable) will now restore the article's default mark rather than simply setting no mark. @@ -6730,8 +6721,8 @@ (gnus-agent-summary-fetch-group): Keep gnus-newsgroup-undownloaded up to date. Call new gnus-summary-update-download-mark to keep summary buffer up-to-date. - (gnus-agent-fetch-selected-article): Keep - gnus-newsgroup-undownloaded up to date. + (gnus-agent-fetch-selected-article): + Keep gnus-newsgroup-undownloaded up to date. (gnus-agent-fetch-articles): Return list of articles that were successfully fetched. (gnus-agent-check-overview-buffer): No more thingatpt. @@ -6749,14 +6740,14 @@ downloaded/undownloaded mark is no longer stored as the article's mark. - * gnus-salt.el (gnus-tree-highlight-node): Added uncached as + * gnus-salt.el (gnus-tree-highlight-node): Add uncached as gnus-summary-highlight may use it. Added downloaded as gnus-summary-highlight was using it. - * gnus-sum.el (gnus-undownloaded-mark): Changed from ?@ to ?- as + * gnus-sum.el (gnus-undownloaded-mark): Change from ?@ to ?- as the download mark now follows Kai's +/- convention. - (gnus-downloaded-mark): Added ?+ mark. - (gnus-summary-highlight): Added rules to select + (gnus-downloaded-mark): Add ?+ mark. + (gnus-summary-highlight): Add rules to select gnus-summary-high-uncached-face, gnus-summary-normal-uncached-face, and gnus-summary-low-uncached-face. Removed the @@ -6770,7 +6761,7 @@ you don't have to agentize every server that you use. (gnus-update-summary-mark-positions): Completed support for the download type of mark. - (gnus-summary-insert-line): Added undownloaded to the parameters. + (gnus-summary-insert-line): Add undownloaded to the parameters. (gnus-summary-prepare-threads): Set gnus-tmp-downloaded for reference by the gnus-summary-line-format-spec. @@ -6816,8 +6807,8 @@ 2002-12-09 Kai Großjohann <kai.grossjohann@uni-duisburg.de> - * nntp.el (nntp-send-command): Braino in last commit. Replace - `and' with `or'. + * nntp.el (nntp-send-command): Braino in last commit. + Replace `and' with `or'. 2002-12-08 Kai Großjohann <kai.grossjohann@uni-duisburg.de> @@ -6850,7 +6841,7 @@ 2002-11-29 Kai Großjohann <kai.grossjohann@uni-duisburg.de> - * gnus-art.el (gnus-inhibit-mime-unbuttonizing): Moved here from + * gnus-art.el (gnus-inhibit-mime-unbuttonizing): Move here from gnus-sum. Made into a user option. * gnus-sum.el (gnus-simplify-ignored-prefixes) @@ -6911,7 +6902,7 @@ (gnus-summary-mark-article-as-unread) (gnus-mark-article-as-unread, gnus-summary-highlight-line): Reformatting to avoid long lines. - (gnus-inhibit-mime-unbuttonizing): Moved to gnus-art. + (gnus-inhibit-mime-unbuttonizing): Move to gnus-art. 2002-11-28 Daiki Ueno <ueno@unixuser.org> @@ -6933,15 +6924,15 @@ 2002-11-26 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-agent.el (gnus-agent-uncached-articles): If - gnus-agent-load-alist fails, return ARTICLES. + * gnus-agent.el (gnus-agent-uncached-articles): + If gnus-agent-load-alist fails, return ARTICLES. * nnrss.el (nnrss-group-alist): Update the link of Jabber. 2002-11-26 Kai Großjohann <kai.grossjohann@uni-duisburg.de> - * gnus-sum.el (gnus-summary-insert-old-articles): Remove - superfluous function call. + * gnus-sum.el (gnus-summary-insert-old-articles): + Remove superfluous function call. (gnus-summary-catchup-all, gnus-summary-catchup-all-and-exit): Add warning to docstring. @@ -6952,8 +6943,8 @@ 2002-11-26 Kai Großjohann <kai.grossjohann@uni-duisburg.de> - * gnus-agent.el (gnus-agent-check-overview-buffer): Explicitly - require thingatpt (for number-at-point) and protect against + * gnus-agent.el (gnus-agent-check-overview-buffer): + Explicitly require thingatpt (for number-at-point) and protect against deactivate-mark being unbound (on XEmacs). 2002-11-25 Kai Großjohann <kai.grossjohann@uni-duisburg.de> @@ -6968,8 +6959,8 @@ 2002-11-24 Kai Großjohann <kai.grossjohann@uni-duisburg.de> - * gnus-sum.el (gnus-summary-insert-old-articles): Use - gnus-remove-from-range instead of gnus-range-difference which + * gnus-sum.el (gnus-summary-insert-old-articles): + Use gnus-remove-from-range instead of gnus-range-difference which doesn't exist. 2002-11-23 Kevin Greiner <kgreiner@xpediantsolutions.com> @@ -6979,11 +6970,11 @@ (gnus-agent-article-alist): Format change. Add documentation. (gnus-agent-summary-mode-map): New keybinding `J s' for fetching process-marked articles. - (gnus-agent-summary-fetch-series): Command for `J s'. Articles - in the series are individually fetched to minimize lose of + (gnus-agent-summary-fetch-series): Command for `J s'. + Articles in the series are individually fetched to minimize lose of content due to an error/quit. - (gnus-agent-synchronize-flags-server, gnus-agent-add-server): Use - gnus-message instead of message. + (gnus-agent-synchronize-flags-server, gnus-agent-add-server): + Use gnus-message instead of message. (gnus-agent-read-servers): Use file lib/methods instead of lib/servers. TODO: Why? (gnus-summary-set-agent-mark): Adapt to new agent-alist format. @@ -6992,7 +6983,7 @@ (gnus-agent-fetch-selected-article): Don't use history. (gnus-agent-save-history, gnus-agent-enter-history) (gnus-agent-article-in-history-p, gnus-agent-history-path): - Removed function; history is not used anymore. + Remove function; history is not used anymore. (gnus-agent-fetch-articles): Fix handling of crossposted articles. (gnus-agent-crosspost): Started rewrite then realized that a typo in gnus-agent-fetch-articles ensures that this function is never @@ -7022,8 +7013,8 @@ (gnus-agent-regenerate-group): No longer needs to be called from gnus-agent-regenerate. Individual groups may be regenerated. The regeneration code now fixes duplicate, and mis-ordered, NOV entries. - The article fetch dates are validated in the article alist. The - article alist is pruned of entries that do not reference existing + The article fetch dates are validated in the article alist. + The article alist is pruned of entries that do not reference existing NOV entries. All changes are computed then applied with inhibit-quit bound to t. As a result, it is now safe to quit out of regeneration. The optional clean parameter has been replaced with @@ -7031,11 +7022,11 @@ regeneration gets the appropriate setting from gnus-agent-consider-all-articles. The new reread parameter will result in fetched, or all, articles being marked as unread. - (gnus-agent-regenerate): Removed code to regenerate the history + (gnus-agent-regenerate): Remove code to regenerate the history file as it is no longer used. - * gnus-start.el (gnus-make-ascending-articles-unread): New - function, for efficient mass-marking. + * gnus-start.el (gnus-make-ascending-articles-unread): + New function, for efficient mass-marking. * gnus-sum.el (gnus-summary-highlight): Use new face for downloaded articles. @@ -7045,7 +7036,7 @@ line. (gnus-summary-highlight-line): Use new face for downloaded articles. - (gnus-summary-insert-old-articles): Improved performance by + (gnus-summary-insert-old-articles): Improve performance by replacing the initial LIST of older articles with a compressed RANGE of older articles. Some servers appear to lie about their active range so the original list could contain millions @@ -7069,8 +7060,8 @@ 2002-11-19 Simon Josefsson <jas@extundo.com> - * gnus-sum.el (gnus-summary-morse-message): Load - morse.el (unmorse-region not autoloaded in Emacs 20 nor XEmacs). + * gnus-sum.el (gnus-summary-morse-message): + Load morse.el (unmorse-region not autoloaded in Emacs 20 nor XEmacs). (unmorse-region): Autoload it instead. 2002-11-18 Simon Josefsson <jas@extundo.com> @@ -7097,13 +7088,13 @@ 2002-11-17 ShengHuo ZHU <zsh@cs.rochester.edu> - * message.el (message-set-auto-save-file-name): Use - make-directory, to avoid the dependence on gnus-util. + * message.el (message-set-auto-save-file-name): + Use make-directory, to avoid the dependence on gnus-util. 2002-11-16 Simon Josefsson <jas@extundo.com> * nnimap.el (nnimap-callback-callback-function): - (nnimap-callback-buffer): Removed, these cannot be global but must + (nnimap-callback-buffer): Remove, these cannot be global but must be embedded into the callback. (nnimap-make-callback): New. Embedd article number, callback and buffer in function. @@ -7119,8 +7110,8 @@ 2002-11-11 Simon Josefsson <jas@extundo.com> - * pgg.el (pgg-encrypt, pgg-decrypt, pgg-sign, pgg-verify): Display - output when called interactively. + * pgg.el (pgg-encrypt, pgg-decrypt, pgg-sign, pgg-verify): + Display output when called interactively. 2002-11-08 Katsumi Yamaoka <yamaoka@jpl.org> @@ -7201,15 +7192,15 @@ works better. (gnus-agent-fetch-headers): New implementation from Kevin Greiner. Uses gnus-agent-article-alist to store information - about fetched messages which aren't on the server anymore. The - trick is to return a list of considered messages to the caller, + about fetched messages which aren't on the server anymore. + The trick is to return a list of considered messages to the caller, but to only fetch those which haven't been fetched yet. 2002-10-30 Simon Josefsson <jas@extundo.com> * pgg-def.el (pgg-passphrase-cache-expiry): New, defcustom. - * pgg.el (pgg-passphrase-cache-expiry): Removed. + * pgg.el (pgg-passphrase-cache-expiry): Remove. 2002-10-30 TSUCHIYA Masatoshi <tsuchiya@namazu.org> @@ -7217,14 +7208,14 @@ versions of emacs-w3m than 1.3.3. * mm-view.el (mm-w3m-mode-command-alist) - (mm-w3m-mode-dont-bind-keys, mm-w3m-mode-ignored-keys): Removed. + (mm-w3m-mode-dont-bind-keys, mm-w3m-mode-ignored-keys): Remove. (mm-w3m-mode-map): Undefined for Emacs21 and XEmacs. - (mm-setup-w3m): Simplified. + (mm-setup-w3m): Simplify. (mm-w3m-local-map-property): New function. (mm-inline-text-html-render-with-w3m): Use it. - * gnus-art.el (gnus-article-wash-html-with-w3m): Use - mm-w3m-local-map-property. + * gnus-art.el (gnus-article-wash-html-with-w3m): + Use mm-w3m-local-map-property. 2002-10-29 Katsumi Yamaoka <yamaoka@jpl.org> @@ -7240,7 +7231,7 @@ 2002-10-28 Josh Huber <huber@alum.wpi.edu> - * mml.el (mml-mode-map): Fixed keybindings for mml-secure-* + * mml.el (mml-mode-map): Fix keybindings for mml-secure-* functions. 2002-10-28 Mark A. Hershberger <mah@everybody.org> @@ -7256,8 +7247,8 @@ 2002-10-25 Kai Großjohann <kai.grossjohann@uni-duisburg.de> - * gnus-agent.el (gnus-agent-save-fetched-headers): Create - directory if it doesn't exist. + * gnus-agent.el (gnus-agent-save-fetched-headers): + Create directory if it doesn't exist. (gnus-agent-fetch-headers): Remove old cruft that tried to abstain from downloading articles more than once if gnus-agent-consider-all-articles was true. This is now done @@ -7289,8 +7280,8 @@ * gnus-agent.el (gnus-agent-fetched-headers): New variable, contains range of headers that have been fetched by the agent already. Compare gnus-agent-article-alist. - (gnus-agent-file-header-cache): Like - gnus-agent-file-loading-cache, but for gnus-agent-fetched-headers. + (gnus-agent-file-header-cache): + Like gnus-agent-file-loading-cache, but for gnus-agent-fetched-headers. (gnus-agent-fetch-headers): Improve comment. Revert to old seen/recent logic. Remember which headers have been fetched before and don't fetch @@ -7351,7 +7342,7 @@ * gnus-group.el (gnus-fetch-group): Allow an optional specification of the articles to select. - * gnus-srvr.el (gnus-server-prepare): Removed superfluous cdr. + * gnus-srvr.el (gnus-server-prepare): Remove superfluous cdr. 2002-10-20 Kai Großjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> @@ -7363,8 +7354,8 @@ 2002-10-20 Steve Youngs <youngs@xemacs.org> - * pgg-parse.el (pgg-parse-public-key-algorithm-alist): XEmacs - doesn't have the 'alist custom type, use cons cells instead. + * pgg-parse.el (pgg-parse-public-key-algorithm-alist): + XEmacs doesn't have the 'alist custom type, use cons cells instead. (pgg-parse-symmetric-key-algorithm-alist): Ditto. (pgg-parse-hash-algorithm-alist): Ditto. (pgg-parse-compression-algorithm-alist): Ditto. @@ -7441,8 +7432,8 @@ (nnheader-remove-cr-followed-by-lf): New function. (nnheader-ms-strip-cr): Use the above function. - * gnus-agent.el (gnus-agent-regenerate-group): Call - `nnheader-remove-body'; use `nnheader-parse-naked-head' instead of + * gnus-agent.el (gnus-agent-regenerate-group): + Call `nnheader-remove-body'; use `nnheader-parse-naked-head' instead of `nnheader-parse-head'. * gnus-cache.el (gnus-cache-possibly-enter-article): Ditto. @@ -7463,8 +7454,8 @@ 2002-10-16 Katsumi Yamaoka <yamaoka@jpl.org> * spam-stat.el: Check for the existence of hash functions instead - of the Emacs version to decide whether to load cl. Suggested by - Kai Großjohann. + of the Emacs version to decide whether to load cl. + Suggested by Kai Großjohann. 2002-10-15 Kai Großjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> @@ -7487,7 +7478,7 @@ 2002-10-11 Teodor Zlatanov <tzz@lifelogs.com> - * spam.el (spam-check-ifile): Added ifile as a spam checking + * spam.el (spam-check-ifile): Add ifile as a spam checking backend, and spam-use-ifle as the variable to toggle that check. 2002-10-12 Simon Josefsson <jas@extundo.com> @@ -7526,7 +7517,7 @@ * mml2015.el (mml2015-pgg-decrypt): Set gnus details even when decrypt failed. - (mml2015-trust-boundaries-alist): Removed. + (mml2015-trust-boundaries-alist): Remove. (mml2015-gpg-extract-signature-details): Don't use it. (mml2015-unabbrev-trust-alist): New. (mml2015-gpg-extract-signature-details): Use it. @@ -7547,8 +7538,8 @@ * pgg-gpg.el (pgg-gpg-verify-region): Filter out stuff into output buffer and error buffer depending on type of information. - * mml2015.el (mml2015-gpg-extract-signature-details): Parse - --status-fd stuff even if gpg.el is not used (revert earlier + * mml2015.el (mml2015-gpg-extract-signature-details): + Parse --status-fd stuff even if gpg.el is not used (revert earlier change). (mml2015-pgg-{clear-,}verify): Store both output and errors as gnus details. @@ -7594,8 +7585,8 @@ 2002-10-08 Kai Großjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> - * gnus-agent.el (gnus-agent-fetch-selected-article): Bind - gnus-agent-current-history. + * gnus-agent.el (gnus-agent-fetch-selected-article): + Bind gnus-agent-current-history. 2002-10-06 Simon Josefsson <jas@extundo.com> @@ -7623,8 +7614,8 @@ * pgg-gpg.el (pgg-gpg-encrypt-region): Make signencrypt work. - * pgg-pgp.el (pgg-pgp-verify-region): Inline - binary-write-decoded-region from MEL. + * pgg-pgp.el (pgg-pgp-verify-region): + Inline binary-write-decoded-region from MEL. * pgg.el (pgg-encrypt-region): Support sign. @@ -7679,13 +7670,13 @@ (pgg-string-as-unibyte): Defalias. (pgg-parse-armor-region): Use it. - * pgg-gpg.el (pgg-gpg-process-region): Use - pgg-temporary-file-directory. + * pgg-gpg.el (pgg-gpg-process-region): + Use pgg-temporary-file-directory. * luna.el: Don't def-edebug. - * pgg-pgp5.el (pgg-scheme-verify-region): Inline - binary-write-decoded-region from MEL. + * pgg-pgp5.el (pgg-scheme-verify-region): + Inline binary-write-decoded-region from MEL. * pgg-pgp5.el, pgg-gpg.el: Don't require mel. @@ -7790,8 +7781,8 @@ * gnus-art.el (gnus-article-mode-syntax-table): Make M-. work in article buffers. - * nnimap.el (nnimap-fixup-unread-after-getting-new-news): Autoload - it just in case. + * nnimap.el (nnimap-fixup-unread-after-getting-new-news): + Autoload it just in case. (nnimap-update-unseen): New function; update unseen count in `n-m-info'. (nnimap-close-group): Call it. @@ -7924,8 +7915,8 @@ * gnus-art.el (gnus-button-handle-apropos-variable): Fall back to apropos if apropos-variable does not exist. (gnus-button-guessed-mid-regexp) - (gnus-button-handle-describe-prefix, gnus-button-alist): Better - regexes. + (gnus-button-handle-describe-prefix, gnus-button-alist): + Better regexes. (gnus-button-handle-describe-function) (gnus-button-handle-describe-variable): Doc fix. (gnus-button-handle-describe-key, gnus-button-handle-apropos) @@ -7960,8 +7951,8 @@ 2002-09-23 Reiner Steib <Reiner.Steib@gmx.de> - * gnus-art.el (gnus-button-guessed-mid-regexp): Improved regexp. - (gnus-button-alist): Improved regexp for + * gnus-art.el (gnus-button-guessed-mid-regexp): Improve regexp. + (gnus-button-alist): Improve regexp for gnus-button-handle-mid-or-mail (false positives), fixed gnus-button-handle-man entries. @@ -7972,8 +7963,8 @@ 2002-09-23 Paul Jarc <prj@po.cwru.edu> - * nnmaildir.el: Store article numbers persistently. General - revision. + * nnmaildir.el: Store article numbers persistently. + General revision. (nnmaildir-request-expire-articles): Handle 'immediate and 'never for nnmail-expiry-wait; delete instead of moving if 'force is given. @@ -8015,8 +8006,8 @@ * gnus-msg.el (gnus-configure-posting-styles): Sort results. - * gnus-art.el (gnus-article-reply-with-original): Correct - with-current-buffer scope. + * gnus-art.el (gnus-article-reply-with-original): + Correct with-current-buffer scope. * message.el (message-completion-alist): Add Reply-To, From, etc. @@ -8043,7 +8034,7 @@ describtion and menu. (message-change-subject, message-xpost-fup2): Signal error if current header is empty. - (message-xpost-insert-note): Changed insert position. + (message-xpost-insert-note): Change insert position. (message-archive-note): Ensure to insert note in message body (not in head). (message-archive-header, message-archive-note) @@ -8056,7 +8047,7 @@ (message-subject-trailing-was-query) (message-subject-trailing-was-ask-regexp) (message-subject-trailing-was-regexp): New variables. - (message-to-list-only): Added doc-string and menu entry. + (message-to-list-only): Add doc-string and menu entry. * message-utils.el: Removed. Functions are now in message.el. @@ -8177,8 +8168,8 @@ 2002-09-03 Katsumi Yamaoka <yamaoka@jpl.org> - * gnus-util.el (gnus-frame-or-window-display-name): Exclude - invalid display names. + * gnus-util.el (gnus-frame-or-window-display-name): + Exclude invalid display names. 2002-08-30 Reiner Steib <Reiner.Steib@gmx.de> @@ -8220,8 +8211,8 @@ 2002-08-27 Simon Josefsson <jas@extundo.com> - * gnus-msg.el (posting-charset-alist): Use - gnus-define-group-parameter instead of defcustom. + * gnus-msg.el (posting-charset-alist): + Use gnus-define-group-parameter instead of defcustom. (gnus-put-message): Handle SPC in GCC. (gnus-inews-insert-gcc): Ditto. (gnus-inews-insert-archive-gcc): Ditto. @@ -8326,12 +8317,12 @@ 2002-08-11 Reiner Steib <Reiner.Steib@gmx.de> * message-utils.el (message-xpost-default) - (message-xpost-fup2-header, message-xpost-fup2): Fixed Typos. + (message-xpost-fup2-header, message-xpost-fup2): Fix Typos. 2002-08-09 Simon Josefsson <jas@extundo.com> - * message.el (message-canlock-password): Set - canlock-password-for-verify to newly generated canlock-password. + * message.el (message-canlock-password): + Set canlock-password-for-verify to newly generated canlock-password. When Emacs is restarted, Custom makes sure this is set, but during the same session we must set it manually. @@ -8389,7 +8380,7 @@ * nnweb.el (nnweb-type, nnweb-type-definition) (nnweb-gmane-create-mapping, nnweb-gmane-wash-article) - (nnweb-gmane-search, nnweb-gmane-identity): Added gmane + (nnweb-gmane-search, nnweb-gmane-identity): Add gmane functionality. * nnweb.el: Removed old non-functioning search engines. @@ -8401,8 +8392,8 @@ * flow-fill.el (fill-flowed): Disable filladapt-mode. - * gnus-sieve.el (gnus-sieve-guess-rule-for-article): Don't - regexp-quote, Cyrus Sieve is fixed. + * gnus-sieve.el (gnus-sieve-guess-rule-for-article): + Don't regexp-quote, Cyrus Sieve is fixed. * sieve-manage.el (sieve-manage-deletescript): New function. @@ -8420,13 +8411,13 @@ * mm-decode.el (mm-inline-text-html-with-images): Doc fix. (mm-w3m-safe-url-regexp): New user option. - * mm-view.el (mm-inline-text-html-render-with-w3m): Use - `mm-w3m-safe-url-regexp' to bind `w3m-safe-url-regexp'. + * mm-view.el (mm-inline-text-html-render-with-w3m): + Use `mm-w3m-safe-url-regexp' to bind `w3m-safe-url-regexp'. 2002-07-23 Karl Kleinpaste <karl@charcoal.com> - * gnus-sum.el (gnus-summary-delete-article): Force - nnmail-expiry-target to 'delete, so that absolute deletion + * gnus-sum.el (gnus-summary-delete-article): + Force nnmail-expiry-target to 'delete, so that absolute deletion happens when absolute deletion is requested. 2002-07-21 Nevin Kapur <nevin@jhu.edu> @@ -8487,8 +8478,8 @@ 2002-07-06 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-topic.el (gnus-topic-indent, gnus-topic-unindent): Change - cdaar to cdar and car. + * gnus-topic.el (gnus-topic-indent, gnus-topic-unindent): + Change cdaar to cdar and car. * nnsoup.el (nnsoup-retrieve-headers, nnsoup-request-type) (nnsoup-read-active-file, nnsoup-article-to-area): Ditto. @@ -8574,8 +8565,8 @@ 2002-06-17 Simon Josefsson <jas@extundo.com> - * gnus-start.el (gnus-clear-system, gnus-read-newsrc-file): Make - sure to write byte-compiled versions of gnus-*-format-alist to + * gnus-start.el (gnus-clear-system, gnus-read-newsrc-file): + Make sure to write byte-compiled versions of gnus-*-format-alist to .newsrc.eld. 2002-06-16 Bjørn Mork <bmork@dod.no> @@ -8594,7 +8585,7 @@ * nnheader.el (nnheader-file-name-translation-alist): Set the default value for MS Windows systems. - * gnus-ems.el (nnheader-file-name-translation-alist): Removed. + * gnus-ems.el (nnheader-file-name-translation-alist): Remove. 2002-06-14 Katsumi Yamaoka <yamaoka@jpl.org> @@ -8660,8 +8651,8 @@ * gnus-msg.el (gnus-group-mail, gnus-group-news) (gnus-group-post-news, gnus-summary-mail-other-window) - (gnus-summary-news-other-window, gnus-summary-post-news): Bind - gnus-article-copy to nil, thereby inhibiting the `header' posting + (gnus-summary-news-other-window, gnus-summary-post-news): + Bind gnus-article-copy to nil, thereby inhibiting the `header' posting style match to use data from last viewed article. Suggested by Hrvoje Niksic. @@ -8753,8 +8744,8 @@ 2002-05-20 Jason Baker <jbaker@cs.utah.edu> (tiny change) - * gnus-art.el (gnus-request-article-this-buffer): Try - reconnecting if you don't get the message. + * gnus-art.el (gnus-request-article-this-buffer): + Try reconnecting if you don't get the message. 2002-05-20 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -8840,7 +8831,7 @@ 2002-05-06 Josh Huber <huber@alum.wpi.edu> - * mml2015.el (mml2015-gpg-encrypt): Changed name of optional + * mml2015.el (mml2015-gpg-encrypt): Change name of optional argument, and fixed compiler warning. (Added autoload for gpg-encrypt). @@ -8864,10 +8855,10 @@ * mml-sec.el (mml-signencrypt-style): New. * mml-sec.el (mml-pgpmime-encrypt-buffer): Accept optional argument `sign'. - * mml-sec.el (mml-secure-message-encrypt-pgp): Changed default to + * mml-sec.el (mml-secure-message-encrypt-pgp): Change default to signencrypt. * mml-sec.el (mml-secure-message-encrypt-pgpmime): Ditto. - * mml.el (mml-generate-mime-1): Changed logic so a part which is + * mml.el (mml-generate-mime-1): Change logic so a part which is both signed & encryped is processed in one operation (rather than two separate ops: sign, then encrypt). * mml2015.el (mml2015-gpg-extract-signature-details): Give some @@ -8903,8 +8894,8 @@ 2002-05-01 Simon Josefsson <jas@extundo.com> - * imap.el (imap-parse-resp-text-code, imap-parse-status): Treat - UIDNEXT as a string. + * imap.el (imap-parse-resp-text-code, imap-parse-status): + Treat UIDNEXT as a string. * nnimap.el (nnimap-string-lessp-numerical): New function. (nnimap-retrieve-groups): Compare UIDNEXT as strings instead of @@ -8927,8 +8918,8 @@ (nnimap-mailbox-info): New internal variable. (nnimap-retrieve-groups): Implement faster new mail check. - * nnimap.el (nnimap-split-articles): Support - nnmail-cache-accepted-message-ids. + * nnimap.el (nnimap-split-articles): + Support nnmail-cache-accepted-message-ids. (nnimap-request-accept-article): Ditto. * imap.el (imap-mailbox-status-asynch): New command. @@ -9013,8 +9004,8 @@ 2002-04-23 Matthieu Moy <Matthieu.Moy@imag.fr> - * gnus-msg.el (gnus-summary-resend-message-edit): Remove - message-ignored-resent-headers, too. + * gnus-msg.el (gnus-summary-resend-message-edit): + Remove message-ignored-resent-headers, too. 2002-04-22 Björn Torkelsson <torkel@acc.umu.se> @@ -9048,7 +9039,7 @@ (message-mode): Add description for `message-to-list-only'. (message-to-list-only): New. - (message-make-mft): Changed to use the cl loop macro, and added + (message-make-mft): Change to use the cl loop macro, and added optional flag to return only the matched list (for use in new message-to-list-only function). @@ -9082,11 +9073,11 @@ 2002-04-13 Josh Huber <huber@alum.wpi.edu> - * mml-sec.el (mml-secure-message): Changed to support arbritrary + * mml-sec.el (mml-secure-message): Change to support arbritrary modes. * mml-sec.el (mml-secure-message-encrypt-(smime|pgp|pgpmime)): changed to support "signencrypt" mode. - * mml.el (mml-parse-1): Changed to support different secure modes + * mml.el (mml-parse-1): Change to support different secure modes more easily (for signencrypt). 2002-04-11 Stefan Monnier <monnier@cs.yale.edu> @@ -9107,13 +9098,13 @@ 2002-04-12 Daiki Ueno <ueno@unixuser.org> - * gnus-srvr.el (gnus-server-set-info): Clear - `gnus-server-method-cache' when `gnus-server-alist' is changed. + * gnus-srvr.el (gnus-server-set-info): + Clear `gnus-server-method-cache' when `gnus-server-alist' is changed. 2002-04-11 Simon Josefsson <jas@extundo.com> - * gnus-sum.el (gnus-summary-force-verify-and-decrypt): Force - viewing of security buttons. Thanks to Nicolas Kowalski + * gnus-sum.el (gnus-summary-force-verify-and-decrypt): + Force viewing of security buttons. Thanks to Nicolas Kowalski <Nicolas.Kowalski@imag.fr>. * smime.el (smime-CA-directory): Fix doc. Thanks to Arne @@ -9142,7 +9133,7 @@ 2002-04-07 Josh Huber <huber@alum.wpi.edu> - * message.el (message-make-mft): Changed MFT code from using + * message.el (message-make-mft): Change MFT code from using message-recipients (which included Bcc) to use only the To and CC headers. @@ -9202,8 +9193,8 @@ * nnmaildir.el: Use defstruct. Use a single copy of nnmail-extra-headers to save memory. Store server's group name prefix instead of each group's prefixed name. - * nnnil.el (nnnil-retrieve-headers, nnnil-request-list): Erase - nntp-server-buffer. + * nnnil.el (nnnil-retrieve-headers, nnnil-request-list): + Erase nntp-server-buffer. 2002-03-31 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -9272,7 +9263,7 @@ 2002-03-22 Josh Huber <huber@alum.wpi.edu> - * mml.el (mml-mode-map): Added a keybinding for + * mml.el (mml-mode-map): Add a keybinding for `mml-unsecure-message'. Also, added a menu entry for said function in the Attachments menu. @@ -9340,8 +9331,8 @@ 2002-03-12 Faried Nawaz <fn@hungry.org> (tiny change) - * message.el (message-qmail-inject-args): May be function. Adjust - doc string and custom type. + * message.el (message-qmail-inject-args): May be function. + Adjust doc string and custom type. (message-send-mail-with-qmail): Call function if m-q-i-a is a function. @@ -9367,8 +9358,8 @@ 2002-03-09 Andre Srinivasan <andre@slamdunknetworks.com> (tiny change) - * gnus-sum.el (gnus-summary-save-parts-default-mime): Remove - duplication. + * gnus-sum.el (gnus-summary-save-parts-default-mime): + Remove duplication. (gnus-summary-save-parts-type-history): Ditto. (gnus-summary-save-parts-last-directory): Ditto. @@ -9408,8 +9399,8 @@ * qp.el (quoted-printable-decode-region): Doc addition. From: Eli Zaretskii <eliz@is.elta.co.il> - * mail-source.el (make-source-make-complex-temp-name): Use - make-temp-file. + * mail-source.el (make-source-make-complex-temp-name): + Use make-temp-file. * mm-util.el (mm-make-temp-file): New function. * nneething.el (nneething-file-name): Use it. @@ -9424,8 +9415,8 @@ 2002-03-04 Paul Jarc <prj@po.cwru.edu> - * message.el (nnmaildir-article-number-to-base-name): New - function. + * message.el (nnmaildir-article-number-to-base-name): + New function. (nnmaildir-base-name-to-article-number): New function. 2002-03-04 Katsumi Yamaoka <yamaoka@jpl.org> @@ -9477,7 +9468,7 @@ * gnus-util.el (gnus-multiple-choice): New function. - * gnus-kill.el (gnus-score-insert-help): Removed, because it is + * gnus-kill.el (gnus-score-insert-help): Remove, because it is also defined in gnus-score.el. 2002-03-01 Paul Jarc <prj@po.cwru.edu> @@ -9544,8 +9535,8 @@ 2002-02-22 Andre Srinivasan <andre@slamdunknetworks.com> (tiny change) - * mm-decode.el (mm-display-external): Use - mm-file-name-rewrite-functions. + * mm-decode.el (mm-display-external): + Use mm-file-name-rewrite-functions. 2002-02-22 Paul Jarc <prj@po.cwru.edu> @@ -9559,13 +9550,13 @@ 2002-02-21 Paul Jarc <prj@po.cwru.edu> - * nnmaildir.el (nnmaildir-request-expire-articles): Use - nnmail-expiry-wait* if expire-age parameter is not set. + * nnmaildir.el (nnmaildir-request-expire-articles): + Use nnmail-expiry-wait* if expire-age parameter is not set. 2002-02-21 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-group.el (gnus-group-sort-groups-by-real-name): New - function. + * gnus-group.el (gnus-group-sort-groups-by-real-name): + New function. (gnus-group-sort-selected-groups-by-real-name): New function. (gnus-group-make-menu-bar): Add sort by real name. @@ -9615,8 +9606,8 @@ * rfc2231.el (rfc2231-parse-string): Support non-ascii chars. - * gnus-art.el (gnus-article-wash-html-with-w3): Remove - w3-delay-image-loads. + * gnus-art.el (gnus-article-wash-html-with-w3): + Remove w3-delay-image-loads. * mm-view.el (mm-inline-text-html-render-with-w3): Ditto. (mm-w3-prepare-buffer): Ditto. @@ -9686,7 +9677,7 @@ 2002-02-18 Katsumi Yamaoka <yamaoka@jpl.org> - * gnus-fun.el (gnus-convert-gray-x-face-to-xpm): Improved to speed + * gnus-fun.el (gnus-convert-gray-x-face-to-xpm): Improve to speed up. Suggested by Yuuichi Teranishi <teranisi@gohome.org>. * gnus-art.el (article-display-x-face): Sort gray X-Faces. @@ -9784,8 +9775,8 @@ * gnus-agent.el (gnus-get-predicate): Use nconc. - * gnus-sum.el (gnus-summary-display-make-predicate): Use - gnus-summary-display-cache as cache. + * gnus-sum.el (gnus-summary-display-make-predicate): + Use gnus-summary-display-cache as cache. * nndoc.el (nndoc-type-alist): Add mail-in-mail type. (nndoc-mail-in-mail-type-p): New function. @@ -9795,8 +9786,8 @@ * mailcap.el (mailcap-mime-data): Use enriched-decode. - * gnus-cite.el (gnus-article-fill-cited-article): Bind - use-hard-newlines to nil. + * gnus-cite.el (gnus-article-fill-cited-article): + Bind use-hard-newlines to nil. * gnus-xmas.el (gnus-xmas-image-type-available-p): Assume that image is not available if window-system is not available. @@ -9813,8 +9804,8 @@ * gnus-soup.el (gnus-soup-send-packet): Send news and mail directly instead of calling message-send-mail. - * gnus-start.el (gnus-read-descriptions-file): Use - gnus-default-charset. + * gnus-start.el (gnus-read-descriptions-file): + Use gnus-default-charset. * mm-util.el (mm-guess-mime-charset): New function. @@ -9857,16 +9848,16 @@ 2002-02-07 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-art.el (gnus-article-treat-body-boundary): Add - gnus-decoration property. + * gnus-art.el (gnus-article-treat-body-boundary): + Add gnus-decoration property. * gnus-msg.el (gnus-copy-article-buffer): Remove gnus-decoration. * gnus-art.el (gnus-article-treat-unfold-headers): Don't remove too many spaces. * rfc2047.el (rfc2047-unfold-region): Ditto. - (rfc2047-decode-region): Don't unfold. Let - gnus-article-treat-unfold-headers do it. + (rfc2047-decode-region): Don't unfold. + Let gnus-article-treat-unfold-headers do it. 2002-02-07 Matt Armstrong <matt@lickey.com> @@ -9946,8 +9937,8 @@ force, prevent errors when following up from article buffer. (gnus-article-reply-with-original): Ditto. - * binhex.el (binhex-decoder-switches): Fix doc. From - Pavel@Janik.cz (Pavel JanÃk). + * binhex.el (binhex-decoder-switches): Fix doc. + From Pavel@Janik.cz (Pavel JanÃk). 2002-02-04 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -9984,11 +9975,11 @@ * gnus-cache.el (gnus-summary-insert-cached-articles): (gnus-summary-limit-include-cached): gnus-newsgroup-cached is sorted. - * gnus-group.el (gnus-group-mark-article-read): Nreverse - gnus-newsgroups-unselected. + * gnus-group.el (gnus-group-mark-article-read): + Nreverse gnus-newsgroups-unselected. - * gnus-agent.el (gnus-summary-set-agent-mark): Use - gnus-add-to-sorted-list. + * gnus-agent.el (gnus-summary-set-agent-mark): + Use gnus-add-to-sorted-list. * gnus-sum.el (gnus-summary-update-info): gnus-newsgroup-unreads gnus-newsgroup-unselected are sorted. Use gnus-sorted-union. @@ -10003,8 +9994,8 @@ directories. (gnus-dired-print): New function. - * gnus-art.el (gnus-mime-print-part): Add argument filename. Call - ps-despool. + * gnus-art.el (gnus-mime-print-part): Add argument filename. + Call ps-despool. 2002-02-02 Simon Josefsson <jas@extundo.com> @@ -10048,11 +10039,11 @@ 2002-01-31 ShengHuo ZHU <zsh@cs.rochester.edu> - * nnfolder.el (nnfolder-request-replace-article): Unfold. Don't - use mail-header-unfold-field. + * nnfolder.el (nnfolder-request-replace-article): Unfold. + Don't use mail-header-unfold-field. - * gnus-cache.el (gnus-summary-insert-cached-articles): Use - gnus-summary-limit. + * gnus-cache.el (gnus-summary-insert-cached-articles): + Use gnus-summary-limit. * gnus-range.el (gnus-add-to-sorted-list): New function. * gnus-sum.el (gnus-mark-article-as-read): Use it. @@ -10068,8 +10059,8 @@ * gnus-msg.el (gnus-posting-styles): Add new format of header. (gnus-configure-posting-styles): Support the new format. - * mail-source.el (mail-source-bind, mail-source-bind-common): Set - edebug-form-spec to (sexp body). + * mail-source.el (mail-source-bind, mail-source-bind-common): + Set edebug-form-spec to (sexp body). Suggested by Joe Wells <jbw@izanami.cee.hw.ac.uk>. * message.el (message-reply-headers): Add doc. @@ -10095,19 +10086,19 @@ * nnagent.el (nnagent-retrieve-headers): Use gnus-sorted-difference. - * gnus-agent.el (gnus-agent-retrieve-headers): Use - gnus-sorted-difference. + * gnus-agent.el (gnus-agent-retrieve-headers): + Use gnus-sorted-difference. - * nnsoup.el (nnsoup-request-expire-articles): Use - gnus-sorted-difference. + * nnsoup.el (nnsoup-request-expire-articles): + Use gnus-sorted-difference. * nnheader.el: Autoload gnus-sorted-difference. - * nnfolder.el (nnfolder-request-expire-articles): Use - gnus-sorted-difference. + * nnfolder.el (nnfolder-request-expire-articles): + Use gnus-sorted-difference. - * gnus-cache.el (gnus-cache-retrieve-headers): Use - gnus-sorted-difference. + * gnus-cache.el (gnus-cache-retrieve-headers): + Use gnus-sorted-difference. * gnus-range.el: Autoload cookies. (gnus-sorted-difference): New function. @@ -10122,8 +10113,8 @@ * gnus-sum.el (gnus-select-newsgroup): Use gnus-sorted-difference, gnus-sorted-ndifference, and gnus-sorted-nintersection. (gnus-articles-to-read): Use gnus-sorted-difference. - (gnus-summary-limit-mark-excluded-as-read): Use - gnus-sorted-intersection and gnus-sorted-ndifference. + (gnus-summary-limit-mark-excluded-as-read): + Use gnus-sorted-intersection and gnus-sorted-ndifference. (gnus-list-of-read-articles): Use gnus-list-range-difference. (gnus-summary-insert-articles): Use gnus-sorted-difference. @@ -10139,7 +10130,7 @@ * mm-view.el (mm-w3m-mode-map): New variable. (mm-w3m-mode-command-alist): New variable. - (mm-w3m-minor-mode): Removed. + (mm-w3m-minor-mode): Remove. (mm-setup-w3m): Setup `mm-w3m-mode-map'; don't add minor mode. (mm-inline-text-html-render-with-w3m): Add keymap property to the buffer for using emacs-w3m command keys. @@ -10150,11 +10141,11 @@ (message-cite-prefix-regexp): Auto detect non word constituents. (message-cite-prefix-regexp): Don't use with-syntax-table. - * gnus-sum.el (gnus-summary-update-info): Use - gnus-list-range-intersection. + * gnus-sum.el (gnus-summary-update-info): + Use gnus-list-range-intersection. - * gnus-agent.el (gnus-agent-fetch-headers): Use - gnus-list-range-intersection. + * gnus-agent.el (gnus-agent-fetch-headers): + Use gnus-list-range-intersection. * gnus-range.el (gnus-range-normalize): Use correct predicate. (gnus-list-range-intersection): Use it. @@ -10189,8 +10180,8 @@ Don't split when the window is small, e.g. when a small *BBDB* window is the lowest one. - * gnus-agent.el (gnus-agent-retrieve-headers): Use - nnheader-find-nov-line to speed up. Use nreverse, because it is + * gnus-agent.el (gnus-agent-retrieve-headers): + Use nnheader-find-nov-line to speed up. Use nreverse, because it is sorted. Use nnheader-insert-nov-file. 2002-01-28 Katsumi Yamaoka <yamaoka@jpl.org> @@ -10208,7 +10199,7 @@ * time-date.el: Add autoload cookies. Many doc fixes. (time-add): New function. - (time-subtract): Renamed from subtract-time. + (time-subtract): Rename from subtract-time. (subtract-time): New alias for time-subtract. 2002-01-28 Katsumi Yamaoka <yamaoka@jpl.org> @@ -10254,7 +10245,7 @@ 2002-01-26 Lars Magne Ingebrigtsen <larsi@gnus.org> * nnml.el (nnml-use-compressed-files): New variable. - (nnml-filenames-are-evil): Removed. + (nnml-filenames-are-evil): Remove. (nnml-current-group-article-to-file-alist): Don't use. (nnml-update-file-alist): Inhibit. (nnml-article-to-file): Use new var. @@ -10319,7 +10310,7 @@ 2002-01-25 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-agent.el (gnus-agent-save-alist): Optimized. + * gnus-agent.el (gnus-agent-save-alist): Optimize. 2002-01-25 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -10330,15 +10321,15 @@ (gnus-server-method-cache): New variable. (gnus-server-to-method): Use it. (gnus-group-method-cache): New variable. - (gnus-find-method-for-group-1): Renamed. + (gnus-find-method-for-group-1): Rename. (gnus-find-method-for-group): New function. - (gnus-group-method-cache): Removed. + (gnus-group-method-cache): Remove. * gnus-sum.el (gnus-compute-unseen-list): Use new optimized function. * gnus-range.el (gnus-members-of-range): New function. - (gnus-list-range-intersection): Renamed. + (gnus-list-range-intersection): Rename. (gnus-inverse-list-range-intersection): New function. * gnus-sum.el (gnus-compute-unseen-list): Made into own function. @@ -10350,8 +10341,8 @@ 2002-01-25 Katsumi Yamaoka <yamaoka@jpl.org> - * mm-view.el (mm-inline-text-html-render-with-w3m): Decode - charset-encoded html contents. + * mm-view.el (mm-inline-text-html-render-with-w3m): + Decode charset-encoded html contents. 2002-01-24 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -10401,12 +10392,12 @@ 2002-01-22 Josh Huber <huber@alum.wpi.edu> - * mml.el (mml-parse-1): Fixed usage of recipients in the secure + * mml.el (mml-parse-1): Fix usage of recipients in the secure tag. 2002-01-22 Josh Huber <huber@alum.wpi.edu> - * message.el (message-font-lock-keywords): Added the secure tag. + * message.el (message-font-lock-keywords): Add the secure tag. * mml-sec.el: Added functions to generate/modify/remove the secure tag while in message mode. * mml-sec.el (mml-secure-message): New. @@ -10417,12 +10408,12 @@ * mml-sec.el (mml-secure-message-encrypt-smime): New. * mml-sec.el (mml-secure-message-encrypt-pgp): New. * mml-sec.el (mml-secure-message-encrypt-pgpmime): New. - * mml.el (mml-parse-1): Added code to recognize the secure tag and + * mml.el (mml-parse-1): Add code to recognize the secure tag and convert it to either a part or multipart depending on if there are other parts in the message. - * mml.el (mml-mode-map): Changed default sign/encrypt keybindings + * mml.el (mml-mode-map): Change default sign/encrypt keybindings to use the secure tag, rather than the part tag. - * mml.el (mml-preview): Added a save-excursion to keep cursor + * mml.el (mml-preview): Add a save-excursion to keep cursor position after doing an MML preview. 2002-01-22 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -10462,8 +10453,8 @@ 2002-01-20 Lars Magne Ingebrigtsen <larsi@gnus.org> - * nnfolder.el (nnfolder-request-accept-article): Unfold - x-from-line. + * nnfolder.el (nnfolder-request-accept-article): + Unfold x-from-line. (nnfolder-request-replace-article): Ditto. 2002-01-20 Nevin Kapur <nevin@jhu.edu> @@ -10487,8 +10478,8 @@ * message.el (message-dont-send): Doc fix. - * gnus-util.el (gnus-completing-read): Remove - inherit-input-method. + * gnus-util.el (gnus-completing-read): + Remove inherit-input-method. * gnus-art.el (gnus-treat-smiley): Doc fix. @@ -10541,8 +10532,8 @@ 2002-01-19 Daniel Pittman <daniel@rimspace.net> - * gnus-sum.el (gnus-summary-first-unseen-or-unread-subject): New - functions. + * gnus-sum.el (gnus-summary-first-unseen-or-unread-subject): + New functions. 2002-01-19 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -10551,7 +10542,7 @@ * gnus-sum.el (gnus-summary-goto-subject): Error on non-numerical articles. - * gnus-util.el (gnus-completing-read-with-default): Renamed. + * gnus-util.el (gnus-completing-read-with-default): Rename. * nnmail.el (nnmail-article-group): Clean up. @@ -10571,17 +10562,17 @@ * smiley-ems.el (smiley-region): Register smiley. (smiley-toggle-buffer): Rewrite the function. - (smiley-active): Removed. + (smiley-active): Remove. 2002-01-19 Simon Josefsson <jas@extundo.com> - * gnus-util.el (gnus-parent-id): Optimize null n case. From - Jesper Harder <harder@ifa.au.dk>. + * gnus-util.el (gnus-parent-id): Optimize null n case. + From Jesper Harder <harder@ifa.au.dk>. 2002-01-18 TSUCHIYA Masatoshi <tsuchiya@namazu.org> - * gnus-art.el (gnus-request-article-this-buffer): Call - `nneething-get-file-name' to extract the file name from the + * gnus-art.el (gnus-request-article-this-buffer): + Call `nneething-get-file-name' to extract the file name from the message id. * nneething.el (nneething-encode-file-name): New function. @@ -10649,21 +10640,21 @@ 2002-01-17 ShengHuo ZHU <zsh@cs.rochester.edu> * gnus-agent.el (gnus-agent-retrieve-headers): Use correct buffer. - (gnus-agent-braid-nov): Switch back to nntp-server-buffer. Remove - duplications. + (gnus-agent-braid-nov): Switch back to nntp-server-buffer. + Remove duplications. (gnus-agent-batch): Bind gnus-agent-confirmation-function. 2002-01-16 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-sum.el (gnus-summary-initial-limit): Inline - gnus-summary-limit-children. + * gnus-sum.el (gnus-summary-initial-limit): + Inline gnus-summary-limit-children. (gnus-summary-initial-limit): Don't limit if gnus-newsgroup-display is nil. (gnus-summary-initial-limit): No, don't. * gnus-util.el - (gnus-put-text-property-excluding-characters-with-faces): Inline - gnus-put-text-property. + (gnus-put-text-property-excluding-characters-with-faces): + Inline gnus-put-text-property. * gnus-spec.el (gnus-default-format-specs): New variable. @@ -10680,8 +10671,8 @@ * gnus-sum.el (gnus-summary-from-or-to-or-newsgroups): Inline some functions. - (gnus-gather-threads-by-references): Inline - `gnus-split-references'. + (gnus-gather-threads-by-references): + Inline `gnus-split-references'. * gnus-spec.el (gnus-summary-line-format-spec): New, optimized default value of gnus-summary-line-format-spec. @@ -10691,7 +10682,7 @@ * nnslashdot.el (nnslashdot-retrieve-headers-1): A better error message. (nnslashdot-request-list): Ditto. - (nnslashdot-sid-strip): Removed. + (nnslashdot-sid-strip): Remove. 2002-01-15 Simon Josefsson <jas@extundo.com> @@ -10705,14 +10696,14 @@ 2002-01-15 TSUCHIYA Masatoshi <tsuchiya@namazu.org> - * nneething.el (nneething-request-article): Set - `nnmail-file-coding-system' to `binary' locally, in order to read + * nneething.el (nneething-request-article): + Set `nnmail-file-coding-system' to `binary' locally, in order to read files without any conversion. 2002-01-15 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-agent.el (gnus-agent-retrieve-headers): Use - nnheader-file-coding-system and nnmail-active-file-coding-system. + * gnus-agent.el (gnus-agent-retrieve-headers): + Use nnheader-file-coding-system and nnmail-active-file-coding-system. (gnus-agent-regenerate-group): Ditto. (gnus-agent-regenerate): Ditto. (gnus-agent-write-active): Ditto. @@ -10747,19 +10738,19 @@ * imap.el (imap-close): Keep going if quit. - * gnus-agent.el (gnus-agent-retrieve-headers): Erase - nntp-server-buffer. + * gnus-agent.el (gnus-agent-retrieve-headers): + Erase nntp-server-buffer. 2002-01-12 Lars Magne Ingebrigtsen <larsi@gnus.org> * mm-view.el (mm-display-inline-fontify): Require font-lock to avoid unbinding shadowed variables. - * gnus-art.el (gnus-picon-databases): Moved here. - (gnus-picons-installed-p): Moved here. + * gnus-art.el (gnus-picon-databases): Move here. + (gnus-picons-installed-p): Move here. (gnus-article-reply-with-original): Use `mark'. - * gnus.el (gnus-picon): Moved here and renamed. + * gnus.el (gnus-picon): Move here and renamed. * gnus-art.el (gnus-treat-from-picon): Only be on if picons are installed. @@ -10782,8 +10773,8 @@ 2002-01-12 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-art.el (gnus-article-reply-with-original): Use - `mark-active'. + * gnus-art.el (gnus-article-reply-with-original): + Use `mark-active'. * gnus-msg.el (gnus-summary-reply): Don't bug out on regions. @@ -10794,16 +10785,16 @@ 2002-01-12 Simon Josefsson <jas@extundo.com> * flow-fill.el (fill-flowed-display-column) - (fill-flowed-encode-columnq): New variables. Suggested by - Kai.Grossjohann@CS.Uni-Dortmund.DE (Kai Großjohann). + (fill-flowed-encode-columnq): New variables. + Suggested by Kai.Grossjohann@CS.Uni-Dortmund.DE (Kai Großjohann). (fill-flowed-encode, fill-flowed): Use them. - * message.el (message-send-news, message-send-mail): Use - m-b-s-n-p-e-h-n. + * message.el (message-send-news, message-send-mail): + Use m-b-s-n-p-e-h-n. * mml.el (autoload): Autoload fill-flowed-encode. - (mml-buffer-substring-no-properties-except-hard-newlines): New - function. + (mml-buffer-substring-no-properties-except-hard-newlines): + New function. (mml-read-part): Use it. (mml-generate-mime-1): Encode format=flowed if appropriate. (mml-insert-mime-headers): Insert format=flowed. @@ -10843,8 +10834,8 @@ gnus-article-prepare-hook. * gnus-agent.el (gnus-agent-retrieve-headers): Load agentview. - (gnus-agent-toggle-plugged): Use gnus-agent-go-online. Move - gnus-agent-possibly-synchronize-flags to the last. + (gnus-agent-toggle-plugged): Use gnus-agent-go-online. + Move gnus-agent-possibly-synchronize-flags to the last. (gnus-agent-go-online): New function. New variable. 2002-01-11 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -10904,8 +10895,8 @@ 2002-01-10 ShengHuo ZHU <zsh@cs.rochester.edu> - * nnkiboze.el (nnkiboze-request-article): Use - gnus-agent-request-article. + * nnkiboze.el (nnkiboze-request-article): + Use gnus-agent-request-article. * nnagent.el (nnagent-retrieve-headers): Don't use nnml function. Insert undownloaded NOV. @@ -10915,13 +10906,13 @@ * gnus.el (gnus-agent-cache): New variable. - * gnus-int.el (gnus-retrieve-headers): Use - gnus-agent-retrieve-headers. + * gnus-int.el (gnus-retrieve-headers): + Use gnus-agent-retrieve-headers. (gnus-request-head): Use gnus-agent-request-article. (gnus-request-body): Ditto. - * gnus-art.el (gnus-request-article-this-buffer): Use - gnus-agent-request-article. + * gnus-art.el (gnus-request-article-this-buffer): + Use gnus-agent-request-article. * gnus-sum.el (gnus-summary-read-group-1): Don't show the first article if it is undownloaded. @@ -10942,8 +10933,8 @@ 2002-01-08 ShengHuo ZHU <zsh@cs.rochester.edu> - * mm-encode.el (mm-content-transfer-encoding-defaults): Add - application/x-emacs-lisp. + * mm-encode.el (mm-content-transfer-encoding-defaults): + Add application/x-emacs-lisp. * gnus-msg.el (gnus-bug): Use application/emacs-lisp. @@ -10986,8 +10977,8 @@ 2002-01-07 TSUCHIYA Masatoshi <tsuchiya@namazu.org> * nneething.el (nneething-request-article): When a non-text file - is converted to an article, its data is encoded in base64. Call - `nneething-make-head' with options to specify MIME types. + is converted to an article, its data is encoded in base64. + Call `nneething-make-head' with options to specify MIME types. (nneething-make-head): Add optional arguments to specify MIME types. @@ -11007,13 +10998,13 @@ 2002-01-06 Simon Josefsson <jas@extundo.com> - * imap.el (imap-ssl-open, imap-ssl-open, imap-parse-fetch): Use - condition-case, not ignore-errors. + * imap.el (imap-ssl-open, imap-ssl-open, imap-parse-fetch): + Use condition-case, not ignore-errors. 2002-01-06 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-sum.el (gnus-summary-insert-old-articles): Bind - gnus-fetch-old-headers. + * gnus-sum.el (gnus-summary-insert-old-articles): + Bind gnus-fetch-old-headers. * gnus-art.el (article-display-x-face): Use the current buffer unless `W f'. Otherwise, X-Face may be shown in the header of a @@ -11023,8 +11014,8 @@ 2002-01-06 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-group.el (gnus-group-read-ephemeral-group): Fix - parameters. + * gnus-group.el (gnus-group-read-ephemeral-group): + Fix parameters. 2002-01-06 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -11034,8 +11025,8 @@ (mm-detect-coding-region): New function. (mm-detect-mime-charset-region): New function. - * gnus-sum.el (gnus-summary-show-article): Use - mm-detect-coding-region. + * gnus-sum.el (gnus-summary-show-article): + Use mm-detect-coding-region. 2002-01-06 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -11071,7 +11062,7 @@ 2002-01-05 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus.el (gnus-logo-color-alist): Added more colors from Luis. + * gnus.el (gnus-logo-color-alist): Add more colors from Luis. 2002-01-05 Keiichi Suzuki <keiichi@nanap.org> (tiny change) @@ -11096,7 +11087,7 @@ 2002-01-05 Lars Magne Ingebrigtsen <larsi@gnus.org> * gnus-sum.el (gnus-thread-latest-date): New function. - (gnus-thread-sort-by-most-recent-number): Renamed. + (gnus-thread-sort-by-most-recent-number): Rename. (gnus-thread-sort-functions): Doc fix. (gnus-select-group-hook): Don't use setq on a hook. (gnus-thread-latest-date): Use date, not number. @@ -11104,14 +11095,14 @@ * gnus-agent.el (gnus-agent-expire-days): Doc fix. (gnus-agent-expire): Allow regexp of expire-days. - * gnus-art.el (gnus-article-reply-with-original): Deactivate - region. + * gnus-art.el (gnus-article-reply-with-original): + Deactivate region. (gnus-article-followup-with-original): Ditto. * gnus-sum.el (gnus-thread-highest-number): Doc fix. - * gnus-art.el (gnus-mime-display-alternative): Use - gnus-local-map-property. + * gnus-art.el (gnus-mime-display-alternative): + Use gnus-local-map-property. (gnus-mime-display-alternative): Ditto. (gnus-insert-mime-security-button): Ditto. (gnus-insert-next-page-button): Ditto. @@ -11130,7 +11121,7 @@ "X-Face: " to the data in the built-in scenario. * gnus-spec.el (gnus-parse-simple-format): Use gnus-pad-form. - (gnus-correct-pad-form): Renamed. + (gnus-correct-pad-form): Rename. (gnus-tilde-max-form): Clean up. (gnus-pad-form): Use gnus-use-correct-string-widths. @@ -11161,30 +11152,30 @@ * gnus-fun.el (gnus-display-x-face-in-from): Use face. - * gnus-ems.el (gnus-article-xface-ring-internal): Removed. - (gnus-article-xface-ring-size): Removed. - (gnus-article-display-xface): Removed. + * gnus-ems.el (gnus-article-xface-ring-internal): Remove. + (gnus-article-xface-ring-size): Remove. + (gnus-article-display-xface): Remove. (gnus-remove-image): Cleaned up. * gnus-xmas.el (gnus-xmas-create-image): Convert pbm to xbm. (gnus-xmas-create-image): Take pbm files. - (gnus-x-face): Removed. - (gnus-xmas-article-display-xface): Removed. + (gnus-x-face): Remove. + (gnus-xmas-article-display-xface): Remove. - * gnus-fun.el (gnus-display-x-face-in-from): Bind - default-enable-multibyte-characters. + * gnus-fun.el (gnus-display-x-face-in-from): + Bind default-enable-multibyte-characters. * compface.el (uncompface): Doc fix. - * gnus-art.el (gnus-article-x-face-command): Use - gnus-display-x-face-in-from. + * gnus-art.el (gnus-article-x-face-command): + Use gnus-display-x-face-in-from. * gnus-xmas.el (gnus-xmas-put-image): Return the image. * gnus-ems.el (gnus-put-image): Return the image. * gnus-fun.el (gnus-display-x-face-in-from): New function. - (gnus-x-face): Moved here. + (gnus-x-face): Move here. 2002-01-04 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -11218,9 +11209,9 @@ * gnus-fun.el (gnus-convert-gray-x-face-to-xpm): Use uncompface. - * compface.el (compface-xbm-p): Removed. + * compface.el (compface-xbm-p): Remove. - * gnus-ems.el (gnus-article-compface-xbm): Removed. + * gnus-ems.el (gnus-article-compface-xbm): Remove. (gnus-article-display-xface): Use compface. * compface.el: New file. @@ -11232,8 +11223,8 @@ 2002-01-03 Paul Jarc <prj@po.cwru.edu> - * nnmaildir.el (nnmaildir-request-expire-articles): Evaluate - the expire-group parameter once per article rather than once + * nnmaildir.el (nnmaildir-request-expire-articles): + Evaluate the expire-group parameter once per article rather than once per group; bind `nnmaildir-article-file-name' and `article' for convenience. Leave article alone when expire-group specifies the current group. @@ -11246,7 +11237,7 @@ 2002-01-03 Dave Love <d.love@dl.ac.uk> - * gnus-start.el (gnus-startup-file-coding-system): Removed. + * gnus-start.el (gnus-startup-file-coding-system): Remove. (gnus-read-init-file): Don't use it. 2002-01-03 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -11268,7 +11259,7 @@ 2002-01-03 Per Abrahamsen <abraham@dina.kvl.dk> - * gnus.el (gnus-summary-line-format): Added :link. + * gnus.el (gnus-summary-line-format): Add :link. * gnus-topic.el (gnus-topic-line-format): Ditto. * gnus-sum.el (gnus-summary-dummy-line-format): Ditto. * gnus-srvr.el (gnus-server-line-format): Ditto. @@ -11336,7 +11327,7 @@ 2002-01-02 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-fun.el (gnus-convert-gray-x-face-to-xpm): Renamed. + * gnus-fun.el (gnus-convert-gray-x-face-to-xpm): Rename. * gnus-art.el (gnus-ignored-headers): Hide all X-Faces. (article-display-x-face): Display gray X-Faces. @@ -11389,10 +11380,10 @@ * gnus-fun.el: New file. (gnus-convert-image-to-x-face-command): New variable. (gnus-insert-x-face): New function. - (gnus-random-x-face): Renamed. - (gnus-x-face-from-file): Renamed. + (gnus-random-x-face): Rename. + (gnus-x-face-from-file): Rename. - * gnus-art.el (gnus-body-boundary-delimiter): Changed default to + * gnus-art.el (gnus-body-boundary-delimiter): Change default to "_". (gnus-body-boundary-delimiter): Typo fix. @@ -11442,7 +11433,7 @@ * gnus-picon.el (gnus-picon-find-face): Search MISC for all types. (gnus-picon-transform-address): Search for unknown faces as well. (gnus-picon-find-face): Don't search "news" for MISC. - (gnus-picon-user-directories): Changed default back to exclude + (gnus-picon-user-directories): Change default back to exclude "unknown". * gnus-sum.el (gnus-summary-hide-all-threads): Reversed logic. @@ -11455,13 +11446,13 @@ keystroke. (gnus-topic-goto-next-topic): Ditto. - * gnus.el (gnus-summary-line-format): Changed default. + * gnus.el (gnus-summary-line-format): Change default. * nnmail.el (nnmail-extra-headers): Change default. * gnus-sum.el (gnus-extra-headers): Change default. - * message.el (message-news-other-window): Changed "news" to + * message.el (message-news-other-window): Change "news" to "posting". (message-news-other-frame): Ditto. (message-do-send-housekeeping): Ditto. @@ -11499,8 +11490,8 @@ 2002-01-01 Steve Youngs <youngs@xemacs.org> - * gnus-xmas.el (gnus-xmas-article-display-xface): Uncomment - 'set-glyph-face' so x-face back/foreground can be set. + * gnus-xmas.el (gnus-xmas-article-display-xface): + Uncomment 'set-glyph-face' so x-face back/foreground can be set. 2001-12-31 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -11508,16 +11499,16 @@ 2002-01-01 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-art.el (gnus-treat-smiley): Renamed command. + * gnus-art.el (gnus-treat-smiley): Rename command. (gnus-article-remove-images): New command and keystroke. - * gnus-sum.el (gnus-summary-toggle-smiley): Removed. + * gnus-sum.el (gnus-summary-toggle-smiley): Remove. - * smiley-ems.el (gnus-smiley-display): Removed. + * smiley-ems.el (gnus-smiley-display): Remove. * gnus.el (gnus-version-number): Update version. - * message.el (message-text-with-property): Renamed and moved + * message.el (message-text-with-property): Rename and moved here. (message-fix-before-sending): Highlight invisible text and place point there. @@ -11528,7 +11519,7 @@ 2002-01-01 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-delay.el (gnus-delay-send-queue): Renamed. + * gnus-delay.el (gnus-delay-send-queue): Rename. * gnus-art.el (gnus-ignored-headers): More headers. @@ -11558,7 +11549,7 @@ 2001-12-31 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-group.el (gnus-group-line-format): Added %O to the default + * gnus-group.el (gnus-group-line-format): Add %O to the default value. * gnus-util.el (gnus-text-with-property): The smallest point is @@ -11591,7 +11582,7 @@ * gnus-ems.el (gnus-article-display-xface): Mark and store image. - * gnus-art.el (gnus-article-wash-status-entry): Renamed. + * gnus-art.el (gnus-article-wash-status-entry): Rename. (gnus-article-wash-status): Use it. (gnus-signature-toggle): Clean up. (gnus-add-wash-status): New function. @@ -11615,7 +11606,7 @@ * smiley-ems.el (gnus-smiley-file-types): New variable. (smiley-update-cache): Use it. (smiley-regexp-alist): Suffix-less smiley names. - (smiley-regexp-alist): Added more smileys. + (smiley-regexp-alist): Add more smileys. * gnus-sum.el (gnus-print-buffer): Made into own function. (gnus-summary-print-article): Use it. @@ -11630,8 +11621,8 @@ 2001-12-31 Simon Josefsson <jas@extundo.com> - * imap.el (imap-parse-fetch): Notice empty flags responses. From - Nic Ferrier <nferrier@tf1.tapsellferrier.co.uk>. + * imap.el (imap-parse-fetch): Notice empty flags responses. + From Nic Ferrier <nferrier@tf1.tapsellferrier.co.uk>. 2001-12-30 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -11644,15 +11635,15 @@ 2001-12-30 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-art.el (gnus-article-treat-fold-newsgroups): Don't - infloop. + * gnus-art.el (gnus-article-treat-fold-newsgroups): + Don't infloop. * gnus-sum.el (t): New `W D' map. * gnus-art.el (gnus-treat-fold-newsgroups): New variable. (gnus-article-treat-body-boundary): Clean up. - (gnus-body-boundary-face): Removed. - (gnus-article-goto-header): Moved here. + (gnus-body-boundary-face): Remove. + (gnus-article-goto-header): Move here. (gnus-article-goto-header): Allow better regexps. (gnus-article-treat-fold-newsgroups): New command. @@ -11667,7 +11658,7 @@ * mail-parse.el (mail-header-fold-line): New alias. (mail-header-unfold-line): Ditto. - * gnus-art.el (gnus-body-boundary-face): Renamed. + * gnus-art.el (gnus-body-boundary-face): Rename. (gnus-article-treat-body-boundary): Use it. (gnus-article-treat-body-boundary): Use an invisible header and a line of underline characters. @@ -11682,8 +11673,8 @@ (gnus-picon-transform-address): Use it. Set first to t for each address. - * gnus-art.el (gnus-with-article-headers): Move to here. Define - the macro then use it. + * gnus-art.el (gnus-with-article-headers): Move to here. + Define the macro then use it. (gnus-treatment-function-alist): Treat picons earlier. 2001-12-30 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -11704,7 +11695,7 @@ * gnus-xmas.el (gnus-xmas-group-startup-message): Use general colors. - * gnus.el (gnus-logo-color-alist): Moved here and renamed. + * gnus.el (gnus-logo-color-alist): Move here and renamed. (gnus-logo-color-style): Ditto. (gnus-logo-colors): Ditto. @@ -11718,26 +11709,26 @@ * ietf-drums.el (ietf-drums-parse-addresses): Accept a nil string. - * gnus-picon.el (gnus-treat-mail-picon): Renamed. + * gnus-picon.el (gnus-treat-mail-picon): Rename. * gnus-art.el (gnus-treat-cc-picon): New variable. - (gnus-treat-mail-picon): Renamed. + (gnus-treat-mail-picon): Rename. * gnus-picon.el: New implementation. - (gnus-picon-find-face): Renamed. + (gnus-picon-find-face): Rename. (gnus-treat-from-picon): Use it. - (gnus-picon-transform-address): Renamed. + (gnus-picon-transform-address): Rename. (gnus-treat-from-picon): Use it. - (gnus-picon-create-glyph): Renamed. + (gnus-picon-create-glyph): Rename. (gnus-picon-transform-address): Use it. (gnus-treat-cc-picon): New command. - * mm-decode.el (mm-create-image-xemacs): Separated out into + * mm-decode.el (mm-create-image-xemacs): Separate out into function. (mm-get-image): Use it. * gnus-art.el (gnus-treat-display-picons): Simplify. - (gnus-treat-from-picon): Renamed. + (gnus-treat-from-picon): Rename. * gnus-ems.el (gnus-create-image): New function. (gnus-put-image): New function. @@ -11764,7 +11755,7 @@ 2001-12-29 Lars Magne Ingebrigtsen <larsi@gnus.org> * gnus-art.el (gnus-treat-unfold-lines): New variable. - (gnus-treat-unfold-headers): Renamed. + (gnus-treat-unfold-headers): Rename. (gnus-article-treat-unfold-headers): New command and keystroke. * rfc2047.el (rfc2047-encode-message-header): Clean up. @@ -11781,7 +11772,7 @@ 2001-12-29 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-picon.el (gnus-picons-news-directories): Removed obsolete + * gnus-picon.el (gnus-picons-news-directories): Remove obsolete alias. (gnus-picons-database): Default to list. (gnus-picons-lookup-internal): Use it. @@ -11819,8 +11810,8 @@ * gnus-art.el (gnus-treatment-function-alist): Emphasize after other treatments. - * gnus-util.el (gnus-put-overlay-excluding-newlines): New - function. + * gnus-util.el (gnus-put-overlay-excluding-newlines): + New function. * gnus-art.el (gnus-article-show-hidden-text): Remove the type from the list of hidden types. @@ -11833,7 +11824,7 @@ 2001-12-29 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-art.el (gnus-ignored-headers): Added more headers. + * gnus-art.el (gnus-ignored-headers): Add more headers. 2001-12-29 Jesper Harder <harder@ifa.au.dk> @@ -11846,13 +11837,13 @@ 2001-12-28 Simon Josefsson <jas@extundo.com> - * gnus-srvr.el (gnus-browse-foreign-server): Fix typo. From - Jesper Harder <harder@ifa.au.dk>. + * gnus-srvr.el (gnus-browse-foreign-server): Fix typo. + From Jesper Harder <harder@ifa.au.dk>. 2001-12-27 Simon Josefsson <jas@extundo.com> - * gnus-sum.el (gnus-select-newsgroup): Make - `gnus-newsgroup-unseen' sorted. Make `gnus-newsgroup-unseen' + * gnus-sum.el (gnus-select-newsgroup): + Make `gnus-newsgroup-unseen' sorted. Make `gnus-newsgroup-unseen' contain all articles (instead of none) when no seen marks have been set for the group. (gnus-update-marks): Use `gnus-range-add' on a uncompressed list @@ -11860,8 +11851,8 @@ 2001-12-26 11:00:00 Jesper Harder <harder@ifa.au.dk> - * mm-util.el (mm-iso-8859-x-to-15-region): Use - insert-before-markers. + * mm-util.el (mm-iso-8859-x-to-15-region): + Use insert-before-markers. 2001-12-26 Paul Jarc <prj@po.cwru.edu> @@ -11874,8 +11865,8 @@ 2001-12-22 22:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-group.el (gnus-group-read-ephemeral-group): Call - gnus-group-real-name. + * gnus-group.el (gnus-group-read-ephemeral-group): + Call gnus-group-real-name. * gnus-sum.el (gnus-decode-encoded-word-methods): Backslash paren. (gnus-newsgroup-variables): Ditto. @@ -11904,8 +11895,8 @@ * nnimap.el (top-level): Don't require cl. Suggested by ShengHuo ZHU <zsh@cs.rochester.edu>. - (nnimap-close-group): Don't quote KEYLIST items. Suggested by - Brian P Templeton <bpt@tunes.org>. + (nnimap-close-group): Don't quote KEYLIST items. + Suggested by Brian P Templeton <bpt@tunes.org>. 2001-12-19 17:00:00 Paul Jarc <prj@po.cwru.edu> @@ -11946,8 +11937,8 @@ * gnus-salt.el (gnus-tree-recenter, gnus-generate-tree) (gnus-generate-tree, gnus-highlight-selected-tree) - (gnus-highlight-selected-tree, gnus-tree-highlight-article): Use - it. + (gnus-highlight-selected-tree, gnus-tree-highlight-article): + Use it. * gnus-art.el (gnus-article-set-window-start) (gnus-mm-display-part, gnus-request-article-this-buffer) @@ -12004,7 +11995,7 @@ 2001-12-13 Josh Huber <huber@alum.wpi.edu> - * gnus-cus.el (gnus-extra-topic-parameters): Added topic parameter + * gnus-cus.el (gnus-extra-topic-parameters): Add topic parameter subscribe-level * gnus-topic.el (gnus-subscribe-topics): Use it. @@ -12110,8 +12101,8 @@ 2001-12-07 09:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * nnrss.el (nnrss-decode-entities-unibyte-string): Use - mm-url-decode-entities-nbsp. + * nnrss.el (nnrss-decode-entities-unibyte-string): + Use mm-url-decode-entities-nbsp. * nnlistserv.el, nnultimate.el, nnwarchive.el, nnweb.el: * webmail.el, nnwfm.el: Use mm-url. @@ -12131,7 +12122,7 @@ 2001-12-06 10:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * nnweb.el (nnweb-replace-in-string): Removed. + * nnweb.el (nnweb-replace-in-string): Remove. * gnus-util.el (gnus-replace-in-string): New function. (gnus-mode-string-quote): Use it. @@ -12179,8 +12170,8 @@ 2001-12-01 15:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-sum.el (gnus-summary-save-article): Nix - gnus-display-mime-function and gnus-article-prepare-hook. + * gnus-sum.el (gnus-summary-save-article): + Nix gnus-display-mime-function and gnus-article-prepare-hook. * gnus-spec.el (gnus-parse-complex-format): Properly handle %C at the beginning of lines. @@ -12216,8 +12207,8 @@ 2001-11-29 Kai Großjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> * message.el (message-newgroups-header-regexp) - (message-completion-alist, message-tab-body-function): Use - defcustom rather than defvar. + (message-completion-alist, message-tab-body-function): + Use defcustom rather than defvar. (message-tab): Mention `message-tab-body-function' in doc. Suggested by Karl Eichwalder. @@ -12252,8 +12243,8 @@ * message.el (message-mode): make-local-hook is harmless in Emacs 21. - * gnus-msg.el (gnus-configure-posting-styles): Use - make-local-hook. Add LOCAL for add-hook. + * gnus-msg.el (gnus-configure-posting-styles): + Use make-local-hook. Add LOCAL for add-hook. 2001-11-27 Per Abrahamsen <abraham@dina.kvl.dk> @@ -12419,8 +12410,8 @@ 2001-11-15 Per Abrahamsen <abraham@dina.kvl.dk> - * gnus-art.el (gnus-article-wash-status-strings): Use - `copy-sequence', not `copy-seq'. + * gnus-art.el (gnus-article-wash-status-strings): + Use `copy-sequence', not `copy-seq'. 2001-11-15 Per Abrahamsen <abraham@dina.kvl.dk> @@ -12435,7 +12426,7 @@ 2001-11-12 Simon Josefsson <jas@extundo.com> * mml1991.el (mml1991-use, mml1991-function-alist): New variables. - (mml1991-gpg-sign, mml1991-gpg-encrypt): Renamed, from + (mml1991-gpg-sign, mml1991-gpg-encrypt): Rename, from `mml1991-sign' and `mml1991-encrypt'. (mml1991-encrypt, mml1991-sign): New glue functions. (mml1991-mailcrypt-sign, mml1991-mailcrypt-encrypt): New functions. @@ -12466,8 +12457,8 @@ * message.el (top-level): Autoload sha1. (message-canlock-generate): Use sha1 instead of md5 (sha1 used by - canlock, no need to require two different hash algs). Suggested - by Ferenc Wagner <wferi@bolyai1.elte.hu>. + canlock, no need to require two different hash algs). + Suggested by Ferenc Wagner <wferi@bolyai1.elte.hu>. 2001-11-09 Pavel JanÃk <Pavel@Janik.cz> @@ -12493,13 +12484,13 @@ * sieve-mode.el (sieve-control-commands-face) (sieve-control-commands-face, sieve-action-commands-face) - (sieve-test-commands-face, sieve-tagged-arguments-face): New - faces. + (sieve-test-commands-face, sieve-tagged-arguments-face): + New faces. (sieve-font-lock-keywords): Use them. (sieve-mode): Only set font-lock-defaults in emacs. - * gnus-art.el (gnus-default-article-saver): Add - gnus-summary-save-body-in-file. + * gnus-art.el (gnus-default-article-saver): + Add gnus-summary-save-body-in-file. (gnus-summary-write-to-file): Fix doc. 2001-11-07 Simon Josefsson <jas@extundo.com> @@ -12588,7 +12579,7 @@ (nnimap-expunge): Don't use it. * imap.el (imap-callbacks): New variable. - (imap-remassoc): Copied from `gnus-remassoc'. + (imap-remassoc): Copy from `gnus-remassoc'. (imap-add-callback): New function. (imap-mailbox-expunge, imap-mailbox-close): Support asynchronous behavior. @@ -12633,8 +12624,8 @@ * smiley-ems.el (smiley-update-cache): Auto detect file type. - * message.el (message-forward-rmail-make-body): Use - save-window-excursion. + * message.el (message-forward-rmail-make-body): + Use save-window-excursion. (message-encode-message-body): Search with noerror. (message-setup-1): Convert compose-mail send-actions to message-send-actions. @@ -12715,8 +12706,8 @@ (mm-charset-synonym-alist): Remove windows-125[02]. Make other entries conditional on not having a coding system defined for them. - (mm-mule-charset-to-mime-charset): Use - find-coding-systems-for-charsets if defined. + (mm-mule-charset-to-mime-charset): + Use find-coding-systems-for-charsets if defined. (mm-charset-to-coding-system): Don't use mm-get-coding-system-list. Look in mm-charset-synonym-alist later. Add last resort search of coding systems. @@ -12742,8 +12733,8 @@ 2001-10-30 13:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-spec.el (gnus-parse-simple-format): Use - buffer-substring-no-properties. + * gnus-spec.el (gnus-parse-simple-format): + Use buffer-substring-no-properties. 2001-10-30 Katsumi Yamaoka <yamaoka@jpl.org> @@ -12846,8 +12837,8 @@ 2001-10-22 Simon Josefsson <jas@extundo.com> - * gnus-msg.el (gnus-extended-version): Include - system-configuration. + * gnus-msg.el (gnus-extended-version): + Include system-configuration. Suggested by Kai.Grossjohann@CS.Uni-Dortmund.DE (Kai Großjohann). 2001-10-22 Per Abrahamsen <abraham@dina.kvl.dk> @@ -12860,8 +12851,8 @@ 2001-10-21 Simon Josefsson <jas@extundo.com> * nnimap.el (nnimap): Defgroup. - (nnimap-strict-function, nnimap-strict-function-match): New - widget, from Per Abrahamsen <abraham@dina.kvl.dk>. + (nnimap-strict-function, nnimap-strict-function-match): + New widget, from Per Abrahamsen <abraham@dina.kvl.dk>. (nnimap-split-crosspost, nnimap-split-inbox) (nnimap-split-rule, nnimap-split-predicate) (nnimap-split-predicate): Defcustom. @@ -12907,9 +12898,9 @@ * message.el (message-do-auto-fill): New version that does not rely on text properties, by Simon Josefsson <jas@extundo.com>. - (message-setup-1): Removed the `message-field' property. + (message-setup-1): Remove the `message-field' property. - * gnus-draft.el (gnus-draft-edit-message): Removed the + * gnus-draft.el (gnus-draft-edit-message): Remove the `message-field' property. 2001-10-19 Per Abrahamsen <abraham@dina.kvl.dk> @@ -12945,8 +12936,8 @@ * message.el (message-check-news-header-syntax): Special case nnvirtual groups. - * gnus-sum.el (gnus-summary-respool-default-method): Changed - customize type to `symbol'. + * gnus-sum.el (gnus-summary-respool-default-method): + Change customize type to `symbol'. 2001-10-17 12:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -12968,13 +12959,13 @@ 2001-10-17 Per Abrahamsen <abraham@dina.kvl.dk> - * gnus-msg.el (gnus-post-method): Changed two instances of + * gnus-msg.el (gnus-post-method): Change two instances of `active' to `current' and one `null' to `not'. 2001-10-16 Katsumi Yamaoka <yamaoka@jpl.org> - * message.el (message-setup-fill-variables): Use - `normal-auto-fill-function' instead of `auto-fill-function'. + * message.el (message-setup-fill-variables): + Use `normal-auto-fill-function' instead of `auto-fill-function'. 2001-10-16 Simon Josefsson <jas@extundo.com> @@ -13040,8 +13031,8 @@ 2001-10-12 Kai Großjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> Suggested by Oliver Scholz <epameinondas@gmx.de>. - * message.el (message-do-auto-fill): New function. Like - `do-auto-fill' but don't fill when in the message header. + * message.el (message-do-auto-fill): New function. + Like `do-auto-fill' but don't fill when in the message header. (message-setup-1): Put a text property on the message header. (message-setup-fill-variables): Use `message-do-auto-fill'. @@ -13063,8 +13054,8 @@ 2001-10-10 Katsumi Yamaoka <yamaoka@jpl.org> - * gnus-group.el (gnus-group-name-charset-group-alist): Use - `find-coding-system' for XEmacs to check whether the coding-system + * gnus-group.el (gnus-group-name-charset-group-alist): + Use `find-coding-system' for XEmacs to check whether the coding-system `utf-8' is available. 2001-10-09 Per Abrahamsen <abraham@dina.kvl.dk> @@ -13074,8 +13065,8 @@ 2001-10-09 Per Abrahamsen <abraham@dina.kvl.dk> - * message.el (message-send-news): Allow - `gnus-group-name-charset-group-alist' to affect encoding of the + * message.el (message-send-news): + Allow `gnus-group-name-charset-group-alist' to affect encoding of the "Newsgroups" and "Followup-To" headers. 2001-10-07 Per Abrahamsen <abraham@dina.kvl.dk> @@ -13096,7 +13087,7 @@ default charset for newsgroup names in accordance with USEFOR. * gnus-group.el (gnus-group-name-charset-method-alist, - gnus-group-name-charset-group-alist): Removed "*" from doc + gnus-group-name-charset-group-alist): Remove "*" from doc strings, "*" should not be used for complex variables. 2001-10-06 Simon Josefsson <jas@extundo.com> @@ -13110,18 +13101,18 @@ `gnus-article-decode-hook's except `article-decode-charset' instead of hardcoding call to one of them. - * gnus-art.el (gnus-article-decode-hook): Add - `article-decode-group-name'. + * gnus-art.el (gnus-article-decode-hook): + Add `article-decode-group-name'. (article-decode-group-name): New function, use `g-d-n'. - * gnus-group.el (gnus-group-insert-group-line): Decode - gnus-tmp-group using `g-d-n'. + * gnus-group.el (gnus-group-insert-group-line): + Decode gnus-tmp-group using `g-d-n'. * gnus-util.el (gnus-decode-newsgroups): New function. 2001-10-06 Per Abrahamsen <abraham@dina.kvl.dk> - * gnus-srvr.el (gnus-browse-foreign-server): Fixed bug non-nil + * gnus-srvr.el (gnus-browse-foreign-server): Fix bug non-nil `gnus-group-name-charset-group-alist'. 2001-10-05 Simon Josefsson <jas@extundo.com> @@ -13283,8 +13274,8 @@ 2001-09-19 Sam Steingold <sds@gnu.org> - * gnus-win.el (gnus-buffer-configuration): Respect - `gnus-bug-create-help-buffer'. + * gnus-win.el (gnus-buffer-configuration): + Respect `gnus-bug-create-help-buffer'. 2001-09-18 Simon Josefsson <jas@extundo.com> @@ -13338,7 +13329,7 @@ 2001-09-14 Simon Josefsson <jas@extundo.com> - * gnus-start.el (gnus-group-mode-hook): Moved from gnus-group + * gnus-start.el (gnus-group-mode-hook): Move from gnus-group (otherwise e.g. gnus-agentize in .gnus overrides the customized default before gnus-group is loaded and the variable set.) @@ -13369,11 +13360,11 @@ * nndiary.el (nndiary-request-accept-article-hooks): New. * nndiary.el (nndiary-request-accept-article): Use it, check message validity. - * nndiary.el (nndiary-get-new-mail): Changed default to nil. + * nndiary.el (nndiary-get-new-mail): Change default to nil. * nndiary.el (nndiary-schedule): Fix bug (misplaced condition-case): it didn't return nil on error. * gnus-diary.el: New version. - * gnus-diary.el (gnus-diary-summary-line-format): Removed %I. + * gnus-diary.el (gnus-diary-summary-line-format): Remove %I. * gnus-diary.el (gnus-diary-header-value-history): New. * gnus-diary.el (gnus-diary-narrow-to-headers): New. * gnus-diary.el (gnus-diary-add-header): New. @@ -13383,11 +13374,11 @@ 2001-09-10 TSUCHIYA Masatoshi <tsuchiya@namazu.org> - * gnus-sum.el (gnus-select-newsgroup): Make - `gnus-current-select-method' buffer-local. + * gnus-sum.el (gnus-select-newsgroup): + Make `gnus-current-select-method' buffer-local. - * gnus-art.el (gnus-request-article-this-buffer): Refer - `gnus-current-select-method' in the current summary buffer. + * gnus-art.el (gnus-request-article-this-buffer): + Refer `gnus-current-select-method' in the current summary buffer. 2001-09-10 Daniel Pittman <daniel@rimspace.net> @@ -13395,10 +13386,10 @@ 2001-09-09 Simon Josefsson <jas@extundo.com> - * mm-decode.el (mm-inline-media-tests): Add - application/x-emacs-lisp. - (mm-attachment-override-types): Add - application/{x-,}pkcs7-signature. + * mm-decode.el (mm-inline-media-tests): + Add application/x-emacs-lisp. + (mm-attachment-override-types): + Add application/{x-,}pkcs7-signature. * gnus-srvr.el (gnus-server-mode-hook, gnus-server-exit-hook) (gnus-server-line-format, gnus-server-mode-line-format) @@ -13431,8 +13422,8 @@ (nnml-request-update-info): Don't update if marks didn't change. * gnus-agent.el (gnus-agent-any-covered-gcc) - (gnus-agent-add-server, gnus-agent-remove-server): Use - gnus-agent-method-p. + (gnus-agent-add-server, gnus-agent-remove-server): + Use gnus-agent-method-p. * gnus-art.el (gnus-buttonized-mime-types): New variable. (gnus-unbuttonized-mime-type-p): Use it. @@ -13634,8 +13625,8 @@ * gnus-spec.el (gnus-compile): Don't compile gnus-version. - * gnus-group.el (gnus-update-group-mark-positions): Bind - gnus-group-update-hook to nil. + * gnus-group.el (gnus-update-group-mark-positions): + Bind gnus-group-update-hook to nil. 2001-08-24 13:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -13655,8 +13646,8 @@ 2001-08-24 Simon Josefsson <jas@extundo.com> - * gnus-group.el (gnus-info-clear-data): Call - nnfoo-request-set-mark to propagate marks. Fix bug: + * gnus-group.el (gnus-info-clear-data): + Call nnfoo-request-set-mark to propagate marks. Fix bug: `gnus-group-update-line' doesn't update read range unless we call `gnus-get-unread-articles-in-group' first. @@ -13732,8 +13723,8 @@ 2001-08-20 15:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * nnslashdot.el (nnslashdot-retrieve-headers-1): Replace - nnslashdot-*-retrieve-headers. + * nnslashdot.el (nnslashdot-retrieve-headers-1): + Replace nnslashdot-*-retrieve-headers. (nnslashdot-request-article): Fix for slashcode 2.2. (nnslashdot-make-tuple): New function. (nnslashdot-read-groups): Use it. @@ -13775,15 +13766,15 @@ * mm-view.el (mm-inline-text): Ignore vcard errors. - * gnus-art.el (gnus-ignored-headers): Added more junk headers. + * gnus-art.el (gnus-ignored-headers): Add more junk headers. * gnus-score.el (gnus-all-score-files): Use append instead of nconc. * gnus.el (gnus-splash-face): Doc fix. - * mm-decode.el (mm-mailcap-command): Use - mm-path-name-rewrite-functions. + * mm-decode.el (mm-mailcap-command): + Use mm-path-name-rewrite-functions. (mm-path-name-rewrite-functions): New variable. * gnus-spec.el (gnus-parse-complex-format): React to ?=. @@ -13797,10 +13788,10 @@ the positional spec. (gnus-parse-complex-format): React to %C. - * gnus-ems.el (gnus-char-width): Moved here. + * gnus-ems.el (gnus-char-width): Move here. - * gnus-sum.el (gnus-select-newsgroup): Set - gnus-newsgroup-articles. + * gnus-sum.el (gnus-select-newsgroup): + Set gnus-newsgroup-articles. (gnus-unseen-mark): New variable. (gnus-newsgroup-unseen): Ditto. (gnus-newsgroup-seen): Ditto. @@ -13858,15 +13849,15 @@ 2001-08-18 Simon Josefsson <jas@extundo.com> - * gnus-util.el (gnus-remassoc, gnus-update-alist-soft): Moved from + * gnus-util.el (gnus-remassoc, gnus-update-alist-soft): Move from nnimap. - * nnimap.el (nnimap-remassoc, nnimap-update-alist-soft): Moved to + * nnimap.el (nnimap-remassoc, nnimap-update-alist-soft): Move to gnus-util. (nnimap-request-update-info-internal): Use new functions. - * nnml.el (nnml-request-set-mark, nnml-request-update-info): Use - new functions. + * nnml.el (nnml-request-set-mark, nnml-request-update-info): + Use new functions. 2001-08-18 Simon Josefsson <jas@extundo.com> @@ -13963,7 +13954,7 @@ * gnus-start.el (gnus-setup-news): Push the archive server only the server list. - * mml.el (mml-menu): Changed name to "Attachments". + * mml.el (mml-menu): Change name to "Attachments". * mm-decode.el (mm-destroy-postponed-undisplay-list): Only message when there is something to destroy. @@ -13999,8 +13990,8 @@ `nnmail-split-history' if recent is > 0. (nnimap-request-update-info-internal): Update `recent' marks. (nnimap-request-set-mark): Never set `recent' marks. - (nnimap-mark-to-predicate-alist, nnimap-mark-to-flag-alist): Add - recent. + (nnimap-mark-to-predicate-alist, nnimap-mark-to-flag-alist): + Add recent. * gnus-sum.el (gnus-recent-mark): New mark. (gnus-newsgroup-recent): New variable. @@ -14013,8 +14004,8 @@ 2001-08-12 Simon Josefsson <jas@extundo.com> - * mm-bodies.el (mm-decode-content-transfer-encoding): Returns - whether successful decoding took place. Add doc. + * mm-bodies.el (mm-decode-content-transfer-encoding): + Returns whether successful decoding took place. Add doc. 2001-08-12 Simon Josefsson <jas@extundo.com> Suggested by Per Abrahamsen <abraham@dina.kvl.dk> @@ -14051,8 +14042,8 @@ 2001-08-10 02:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-ml.el (turn-on-gnus-mailing-list-mode): Use - gnus-group-find-parameter. Suggested by Janne Rinta-Manty + * gnus-ml.el (turn-on-gnus-mailing-list-mode): + Use gnus-group-find-parameter. Suggested by Janne Rinta-Manty <rintaman@cs.Helsinki.FI>. * mail-source.el (mail-source-movemail): The error buffer is @@ -14065,8 +14056,8 @@ 2001-08-09 15:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * nndraft.el (nndraft-request-group): Use - nndraft-auto-save-file-name. + * nndraft.el (nndraft-request-group): + Use nndraft-auto-save-file-name. 2001-08-09 Simon Josefsson <jas@extundo.com> @@ -14091,8 +14082,8 @@ 2001-08-09 Simon Josefsson <jas@extundo.com> - * message.el (message-get-reply-headers): Fix string. Suggested by - Christoph Conrad <cc@cli.de>. + * message.el (message-get-reply-headers): Fix string. + Suggested by Christoph Conrad <cc@cli.de>. 2001-08-08 15:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -14107,8 +14098,8 @@ 2001-08-04 Nuutti Kotivuori <nuutti.kotivuori@smarttrust.com> - * gnus-sum.el (gnus-summary-show-article): Call - gnus-summary-update-secondary-secondary-mark. + * gnus-sum.el (gnus-summary-show-article): + Call gnus-summary-update-secondary-secondary-mark. * gnus-sum.el (gnus-summary-edit-article-done): Ditto. * gnus-sum.el (gnus-summary-reparent-thread): Ditto. @@ -14131,8 +14122,8 @@ 2001-08-06 Florian Weimer <fw@deneb.enyo.de> - * message.el (message-indent-citation): Use - `message-yank-cited-prefix' for empty lines. + * message.el (message-indent-citation): + Use `message-yank-cited-prefix' for empty lines. 2001-08-05 Florian Weimer <fw@deneb.enyo.de> @@ -14141,8 +14132,8 @@ 2001-08-05 Nuutti Kotivuori <nuutti.kotivuori@smarttrust.com> (tiny change) - * gnus-cache.el (gnus-cache-possibly-enter-article): Use - gnus-cache-fully-p. + * gnus-cache.el (gnus-cache-possibly-enter-article): + Use gnus-cache-fully-p. 2001-08-04 Simon Josefsson <jas@extundo.com> @@ -14152,7 +14143,7 @@ 2001-08-04 Simon Josefsson <jas@extundo.com> * gnus-cache.el (gnus-cache-possibly-enter-article): Revert. - (gnus-cache-passively-or-fully-p): Removed. + (gnus-cache-passively-or-fully-p): Remove. (gnus-cache-fully-p): Fix it. * mm-view.el (mm-pkcs7-signed-magic): Support more ASN.1 lengths. @@ -14180,8 +14171,8 @@ 2001-08-04 10:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-art.el (gnus-mime-security-verify-or-decrypt): Insert - before remove. + * gnus-art.el (gnus-mime-security-verify-or-decrypt): + Insert before remove. (gnus-mime-security-show-details): Ditto. 2001-08-04 Kai Großjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> @@ -14228,7 +14219,7 @@ 2001-08-02 Simon Josefsson <jas@extundo.com> - * smime.el (smime-extra-arguments): Removed. + * smime.el (smime-extra-arguments): Remove. (smime-call-openssl-region): Don't use it. 2001-08-02 Simon Josefsson <jas@extundo.com> @@ -14236,8 +14227,8 @@ * smime.el (smime-sign-region): Handle stderr. (smime-encrypt-region): Ditto. - * mm-view.el (mm-pkcs7-signed-magic): Make it a regexp. Don't - match the ASN.1 length bytes. + * mm-view.el (mm-pkcs7-signed-magic): Make it a regexp. + Don't match the ASN.1 length bytes. (mm-pkcs7-enveloped-magic): Ditto. (mm-view-pkcs7-get-type): Don't regexp quote. @@ -14305,8 +14296,8 @@ * smime.el (smime-call-openssl-region): Revert previous change, just pass on buf to `call-process-region'. - (smime-verify-region): Doc fix. Don't message stuff. Use - `smime-new-details-buffer'. Inserts error messages into buffer. + (smime-verify-region): Doc fix. Don't message stuff. + Use `smime-new-details-buffer'. Inserts error messages into buffer. (smime-noverify-region): Ditto. (smime-decrypt-region): Ditto. Handles stderr separately. (smime-verify-buffer, smime-noverify-buffer) @@ -14321,8 +14312,8 @@ 2001-07-30 12:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-art.el (gnus-mime-save-part-and-strip): Save - gnus-article-mime-handles. + * gnus-art.el (gnus-mime-save-part-and-strip): + Save gnus-article-mime-handles. 2001-07-29 Simon Josefsson <jas@extundo.com> @@ -14380,8 +14371,8 @@ * gnus.el (gnus-summary-line-format): Mention `gnus-sum-thread-*' for %B spec. - * gnus-sum.el (gnus-summary-prepare-threads): If - gnus-sum-thread-tree-root is nil, use subject instead. + * gnus-sum.el (gnus-summary-prepare-threads): + If gnus-sum-thread-tree-root is nil, use subject instead. (gnus-sum-thread-tree-root, gnus-sum-thread-tree-single-indent) (gnus-sum-thread-tree-vertical, gnus-sum-thread-tree-indent) (gnus-sum-thread-tree-leaf-with-other) @@ -14407,16 +14398,16 @@ 2001-07-27 12:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * nnfolder.el (nnfolder-request-accept-article): Bind - nntp-server-buffer. + * nnfolder.el (nnfolder-request-accept-article): + Bind nntp-server-buffer. * nnmail.el (nnmail-parse-active): Read from buffer instead of nntp-server-buffer. 2001-07-27 11:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * message.el (message-check-news-header-syntax): Use - message-post-method. + * message.el (message-check-news-header-syntax): + Use message-post-method. (message-send-news): Bind message-post-method. 2001-07-27 07:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -14428,8 +14419,8 @@ 2001-07-26 22:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * nnfolder.el (nnfolder-request-accept-article): Replace - nnfolder-request-list. + * nnfolder.el (nnfolder-request-accept-article): + Replace nnfolder-request-list. 2001-07-27 Simon Josefsson <jas@extundo.com> @@ -14444,8 +14435,8 @@ * gnus-art.el (gnus-mm-display-part): Narrow to point if eobp. - * message.el (message-set-auto-save-file-name): More - poor-system-types. + * message.el (message-set-auto-save-file-name): + More poor-system-types. * mailcap.el (mailcap-parse-mimetypes): poor-system-types. @@ -14489,8 +14480,8 @@ 2001-07-25 22:22:22 Raymond Scholz <rscholz@zonix.de> - * nnmail.el (nnmail-split-fancy-with-parent-ignore-groups): New - variable. + * nnmail.el (nnmail-split-fancy-with-parent-ignore-groups): + New variable. (nnmail-split-fancy-with-parent): Ignore certain groups. 2001-07-25 11:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -14574,8 +14565,8 @@ 2001-07-23 Katsumi Yamaoka <yamaoka@jpl.org> - * gnus-start.el (gnus-setup-news): Call - `gnus-check-bogus-newsgroups' just after the native server is + * gnus-start.el (gnus-setup-news): + Call `gnus-check-bogus-newsgroups' just after the native server is opened. 2001-07-23 Kai Großjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> @@ -14614,8 +14605,8 @@ * mm-util.el (mm-read-coding-system): Take two arguments. - * gnus-sum.el (gnus-summary-show-article): Use - mm-read-coding-system. + * gnus-sum.el (gnus-summary-show-article): + Use mm-read-coding-system. * gnus-art.el (article-de-quoted-unreadable): (article-de-base64-unreadable, article-wash-html): @@ -14631,8 +14622,8 @@ * nntp.el (nntp-request-newgroups): Use UTC date for NEWGROUPS command. - * gnus-start.el (gnus-find-new-newsgroups): Use - `message-make-date' instead of `current-time-string'. + * gnus-start.el (gnus-find-new-newsgroups): + Use `message-make-date' instead of `current-time-string'. (gnus-ask-server-for-new-groups): Ditto. (gnus-check-first-time-used): Ditto. @@ -14757,7 +14748,7 @@ 2001-07-12 Björn Torkelsson <torkel@hpc2n.umu.se> - * gnus-srvr.el (gnus-browse-make-menu-bar): Changed one of the + * gnus-srvr.el (gnus-browse-make-menu-bar): Change one of the Browse->Next entries to Browse->Prev. 2001-07-11 22:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -15078,8 +15069,8 @@ 2001-06-15 09:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-art.el (article-strip-multiple-blank-lines): Use - delete-region instead of replace-match. + * gnus-art.el (article-strip-multiple-blank-lines): + Use delete-region instead of replace-match. 2001-06-14 16:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -15160,8 +15151,8 @@ 2001-06-05 Alex Schroeder <alex@gnu.org> - * mm-decode.el (mm-handle-set-external-undisplayer): Don't - generate compiler warnings. + * mm-decode.el (mm-handle-set-external-undisplayer): + Don't generate compiler warnings. 2001-06-04 Hrvoje Niksic <hniksic@arsdigita.com> @@ -15346,7 +15337,7 @@ 2001-04-25 Per Abrahamsen <abraham@dina.kvl.dk> - * mm-uu.el (mm-uu-configure-list): Fixed customize type. + * mm-uu.el (mm-uu-configure-list): Fix customize type. 2001-04-24 Hrvoje Niksic <hniksic@arsdigita.com> @@ -15416,7 +15407,7 @@ 2001-04-02 Nevin Kapur <nevin@jhu.edu> - * nnmail.el (nnmail-split-it): Added check for .* at the end of + * nnmail.el (nnmail-split-it): Add check for .* at the end of regexp in nnmail-split-fancy. 2001-04-10 Simon Josefsson <simon@josefsson.org> @@ -15545,8 +15536,8 @@ 2001-03-31 00:03:42 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-msg.el (gnus-inews-insert-draft-meta-information): Allow - lists of articles. + * gnus-msg.el (gnus-inews-insert-draft-meta-information): + Allow lists of articles. * gnus-uu.el (gnus-uu-digest-mail-forward): Mark as forwarded. @@ -15563,7 +15554,7 @@ forwarded. (gnus-summary-mail-forward): Clean up. - * gnus.el (gnus-article-mark-lists): Added forward. + * gnus.el (gnus-article-mark-lists): Add forward. * gnus-sum.el (gnus-forwarded-mark): New variable. (gnus-summary-prepare-threads): Use it. @@ -15593,14 +15584,14 @@ 2001-03-15 09:47:23 Lars Magne Ingebrigtsen <larsi@gnus.org> - * nnultimate.el (nnultimate-retrieve-headers): Understand - long-form month names. + * nnultimate.el (nnultimate-retrieve-headers): + Understand long-form month names. 2001-03-18 23:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> * gnus-sum.el (gnus-summary-show-all-headers): - gnus-article-show-all-headers is broken. Use - gnus-summary-toggle-header instead. + gnus-article-show-all-headers is broken. + Use gnus-summary-toggle-header instead. * mml2015.el (mml2015-gpg-extract-from): No error. @@ -15612,8 +15603,8 @@ 2001-03-17 10:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * message.el (message-setup-fill-variables): Use - fill-paragraph-function. + * message.el (message-setup-fill-variables): + Use fill-paragraph-function. (message-fill-paragraph): Take an argument. (message-newline-and-reformat): Take another argument. @@ -15628,7 +15619,7 @@ 2001-03-16 Simon Josefsson <simon@josefsson.org> - * nnimap.el (nnimap-dont-use-nov-p): Renamed from + * nnimap.el (nnimap-dont-use-nov-p): Rename from `nnimap-use-nov-p' (it really tested the negative). (nnimap-retrieve-headers): Use it. @@ -15669,8 +15660,8 @@ ;; 2001-03-01 Dave Love <fx@gnu.org> - * mm-util.el (mm-inhibit-file-name-handlers): Add - image-file-handler. + * mm-util.el (mm-inhibit-file-name-handlers): + Add image-file-handler. 2001-02-11 Dave Love <fx@gnu.org> @@ -15704,8 +15695,8 @@ * gnus-score.el (gnus-score-find-bnews): Print messages on illegal SCORE paths. - * mm-decode.el (mm-dissect-buffer): Call - mail-extract-address-components only if necessary. + * mm-decode.el (mm-dissect-buffer): + Call mail-extract-address-components only if necessary. 2001-03-06 13:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -15715,8 +15706,8 @@ 2001-03-06 13:00:00 Adrian Aichner <adrian@xemacs.org> - * gnus-score.el (gnus-score-score-files-1): Use - gnus-kill-files-directory. + * gnus-score.el (gnus-score-score-files-1): + Use gnus-kill-files-directory. 2001-03-05 08:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -15726,8 +15717,8 @@ * mml.el (mml-preview): Disable local map. - * gnus-sum.el (gnus-summary-make-menu-bar): Make - gnus-article-post-menu here. + * gnus-sum.el (gnus-summary-make-menu-bar): + Make gnus-article-post-menu here. * gnus-art.el (gnus-article-make-menu-bar): Make summary-menu bar if it has not been made. @@ -15824,8 +15815,8 @@ * smiley.el (gnus-smiley-display): Don't do widening. - * smiley-ems.el (gnus-smiley-display): Don't do widening. Smiley - within body. + * smiley-ems.el (gnus-smiley-display): Don't do widening. + Smiley within body. * gnus-msg.el (gnus-inews-do-gcc): Activate group anyway. @@ -15911,7 +15902,7 @@ 2001-02-14 15:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus.el (gnus-define-group-parameter): Improved. + * gnus.el (gnus-define-group-parameter): Improve. * gnus-sum.el (charset): Define parameter. (ignored-charsets): Ditto. @@ -15927,8 +15918,8 @@ 2001-02-13 21:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-sum.el (gnus-summary-read-group-1): Remove - gnus-summary-set-local-parameters. + * gnus-sum.el (gnus-summary-read-group-1): + Remove gnus-summary-set-local-parameters. (gnus-summary-setup-buffer): Put it here. 2001-02-13 20:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -15980,8 +15971,8 @@ (article-remove-leading-whitespace): New function. (gnus-article-make-menu-bar): Use it. - * gnus-sum.el (gnus-summary-wash-empty-map): Add - remove-leading-whitespace. + * gnus-sum.el (gnus-summary-wash-empty-map): + Add remove-leading-whitespace. (gnus-summary-wash-map): Bind strip-headers-in-body to `W a', because of conflict. @@ -16012,13 +16003,13 @@ 2001-02-08 Tommi Vainikainen <thv@iki.fi> (tiny change) - * gnus-sum.el (gnus-simplify-subject-re): Use - message-subject-re-regexp. + * gnus-sum.el (gnus-simplify-subject-re): + Use message-subject-re-regexp. 2001-02-08 18:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * nnmail.el (nnmail-expiry-target-group): Bind - nnmail-cache-accepted-message-ids to nil. + * nnmail.el (nnmail-expiry-target-group): + Bind nnmail-cache-accepted-message-ids to nil. * gnus-xmas.el (gnus-xmas-article-display-xface): Use binary coding system. @@ -16072,34 +16063,34 @@ 2001-02-06 02:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-xmas.el (gnus-xmas-article-menu-add): Add - gnus-article-commands-menu. + * gnus-xmas.el (gnus-xmas-article-menu-add): + Add gnus-article-commands-menu. * gnus-sum.el (gnus-summary-make-menu-bar): Don't share menu bar in Emacs. - * gnus-start.el (gnus-read-descriptions-file): Use - gnus-group-name-charset and gnus-group-charset-alist. + * gnus-start.el (gnus-read-descriptions-file): + Use gnus-group-name-charset and gnus-group-charset-alist. 2001-02-04 23:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-sum.el (gnus-summary-mark-as-processable): Understand - active region. + * gnus-sum.el (gnus-summary-mark-as-processable): + Understand active region. * gnus-start.el (gnus-group-change-level): Remove from both gnus-zombie-list and gnus-killed-list. 2001-02-04 11:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-start.el (gnus-subscribe-options-newsgroup-method): Add - gnus-subscribe-topics. + * gnus-start.el (gnus-subscribe-options-newsgroup-method): + Add gnus-subscribe-topics. * gnus-cus.el (gnus-extra-topic-parameters): Fix doc. 2001-02-04 11:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-art.el (gnus-article-make-menu-bar): Make - gnus-article-post-menu. + * gnus-art.el (gnus-article-make-menu-bar): + Make gnus-article-post-menu. * gnus-xmas.el (gnus-xmas-article-menu-add): Add post menu. @@ -16131,8 +16122,8 @@ 2001-01-31 Dave Love <fx@gnu.org> * gnus-art.el (gnus-article-x-face-command) - (gnus-treat-display-xface, gnus-treat-display-smileys): Add - :version. + (gnus-treat-display-xface, gnus-treat-display-smileys): + Add :version. 2001-01-26 Dave Love <fx@gnu.org> @@ -16170,7 +16161,7 @@ 2001-01-31 Karl Kleinpaste <karl@charcoal.com> - * nnmail.el (nnmail-remove-list-identifiers): Improved. + * nnmail.el (nnmail-remove-list-identifiers): Improve. 2001-01-31 09:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -16317,8 +16308,8 @@ 2001-01-18 18:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * message.el (message-yank-original): Understand - universal-argument. + * message.el (message-yank-original): + Understand universal-argument. 2001-01-18 16:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -16349,8 +16340,8 @@ 2001-01-15 16:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-art.el (article-display-x-face): Use - gnus-original-article-buffer. + * gnus-art.el (article-display-x-face): + Use gnus-original-article-buffer. 2001-01-15 Jack Twilley <jmt@tbe.net> @@ -16408,8 +16399,8 @@ (message-make-forward-subject-function) (message-send-mail-function, message-reply-to-function) (message-wide-reply-to-function, message-followup-to-function) - (message-distribution-function, message-auto-save-directory): Fix - :type. + (message-distribution-function, message-auto-save-directory): + Fix :type. * mml.el (mml-parse-1): Frob mml-confirmation-set when proceeding after warnings. Amend multipart warning message. @@ -16420,8 +16411,8 @@ compiling. (gnus-make-directory): Require nnmail. - * mm-decode.el (mm-inline-media-tests): Add - image/x-portable-bitmap. + * mm-decode.el (mm-inline-media-tests): + Add image/x-portable-bitmap. (mm-get-image): Grok pbm. 2001-01-10 Paul Stevenson <p.stevenson@surrey.ac.uk> @@ -16574,8 +16565,8 @@ 2000-12-30 00:17:38 Lars Magne Ingebrigtsen <larsi@gnus.org> - * gnus-sum.el (gnus-summary-limit-include-expunged): Really - include the expunged articles. + * gnus-sum.el (gnus-summary-limit-include-expunged): + Really include the expunged articles. * gnus-group.el (gnus-group-sort-by-server): New function. @@ -16595,7 +16586,7 @@ * gnus-cite.el (gnus-article-fill-cited-article): Add a space after the fill prefix. - * gnus-sum.el (gnus-summary-make-menu-bar): Removed "Enter + * gnus-sum.el (gnus-summary-make-menu-bar): Remove "Enter score...". * gnus-art.el (gnus-ignored-headers): Hide more headers. @@ -16612,12 +16603,12 @@ 2000-12-29 01:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * mm-util.el (mm-enable-multibyte): Use - default-enable-multibyte-characters. + * mm-util.el (mm-enable-multibyte): + Use default-enable-multibyte-characters. (mm-enable-multibyte-mule4): Ditto. (mm-disable-multibyte): Test XEmacs. (mm-disable-multibyte-mule4): Ditto. - (mm-with-unibyte-current-buffer): Simplified. + (mm-with-unibyte-current-buffer): Simplify. (mm-with-unibyte-current-buffer-mule4): Ditto. 2000-12-28 19:44:56 Lars Magne Ingebrigtsen <larsi@gnus.org> @@ -16672,8 +16663,8 @@ 2000-12-24 Simon Josefsson <sj@extundo.com> - * mm-bodies.el (mm-decode-content-transfer-encoding): Preserve - mailing list junk at end of part. + * mm-bodies.el (mm-decode-content-transfer-encoding): + Preserve mailing list junk at end of part. 2000-12-23 Simon Josefsson <sj@extundo.com> @@ -16768,7 +16759,7 @@ * mml.el (gnus-ems): Don't require. - * gnus.el (gnus-decode-rfc1522): Removed. + * gnus.el (gnus-decode-rfc1522): Remove. (gnus-set-text-properties): Define. 2000-12-21 09:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -16791,8 +16782,8 @@ 2000-12-20 17:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> * message.el (message-mail-user-agent): New variable. - (message-setup): Renamed to message-setup-1. Support - mail-user-agent. + (message-setup): Rename to message-setup-1. + Support mail-user-agent. (message-mail-user-agent): New function. (message-mail): Use it. (message-reply): Use it. @@ -16845,8 +16836,8 @@ 2000-12-20 03:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * mm-decode.el (mm-possibly-verify-or-decrypt): Use - mail-extract-a-c instead. Don't depend on Gnus. + * mm-decode.el (mm-possibly-verify-or-decrypt): + Use mail-extract-a-c instead. Don't depend on Gnus. * mml.el (gnus-ems): Require it. @@ -16959,11 +16950,11 @@ 2000-11-30 Dave Love <fx@gnu.org> - * message.el (message-auto-save-directory): Use - file-name-as-directory. - (message-set-auto-save-file-name): Create - message-auto-save-directory if necessary. - (message-replace-chars-in-string): Removed -- unused. + * message.el (message-auto-save-directory): + Use file-name-as-directory. + (message-set-auto-save-file-name): + Create message-auto-save-directory if necessary. + (message-replace-chars-in-string): Remove -- unused. (message-mail-alias-type): Customize. (message-headers): Remove duplicate defgroup. @@ -16990,8 +16981,8 @@ * uu-post.pbm, uu-decode.pbm: New files from XPMs. * mm-uu.el (uudecode): Require. - (uudecode-decode-region, uudecode-decode-region-external): Don't - autoload. + (uudecode-decode-region, uudecode-decode-region-external): + Don't autoload. (mm-uu-copy-to-buffer): Doc fix. (mm-uu-decode-function, mm-uu-binhex-decode-function): Doc, custom type fix. @@ -17001,7 +16992,7 @@ (mailcap): New group. (mailcap-download-directory): Customize. (mailcap-generate-unique-filename, mailcap-binary-suffixes) - (mailcap-temporary-directory): Deleted (unused). + (mailcap-temporary-directory): Delete (unused). (mailcap-unescape-mime-test): Simplify slightly. (mailcap-viewer-passes-test): Use functionp. (mailcap-command-p): Aliased to executable-find. @@ -17039,11 +17030,11 @@ * gnus-agent.el (gnus-agent-confirmation-function): Add :version. (gnus-agent-lib-file, gnus-agent-load-alist) - (gnus-agent-save-alist, gnus-agent-article-name): Use - expand-file-name. + (gnus-agent-save-alist, gnus-agent-article-name): + Use expand-file-name. - * gnus-group.el (gnus-group-name-charset-method-alist): Add - :version. + * gnus-group.el (gnus-group-name-charset-method-alist): + Add :version. (nnkiboze-score-file): Defvar when compiling. * gnus-start.el (gnus-read-newsrc-file): Add :version. @@ -17075,8 +17066,8 @@ * gnus-cache.el (gnus-cache-active-file): Don't use file-name-as-directory on directory. - (gnus-cache-file-name): Use expand-file-name, not concat. Don't - use file-name-as-directory on directory. + (gnus-cache-file-name): Use expand-file-name, not concat. + Don't use file-name-as-directory on directory. * time-date.el (timezone-make-date-arpa-standard): Autoload. (date-to-time): Use it. @@ -17098,7 +17089,7 @@ * gnus-int.el (gnus-start-news-server): Use expand-file-name, not concat. - * pop3.el (pop3-version): Deleted. + * pop3.el (pop3-version): Delete. (pop3-make-date): New function, avoiding message-make-date. (pop3-munge-message-separator): Use it. @@ -17114,12 +17105,12 @@ * message.el (tool-bar-map): Defvar when compiling. * gnus-setup.el (running-xemacs, gnus-use-installed-tm) - (gnus-tm-lisp-directory): Deleted. - (gnus-use-installed-mailcrypt, gnus-emacs-lisp-directory): Use - (featurep 'xemacs). + (gnus-tm-lisp-directory): Delete. + (gnus-use-installed-mailcrypt, gnus-emacs-lisp-directory): + Use (featurep 'xemacs). (gnus-gnus-lisp-directory, gnus-mailcrypt-lisp-directory) - (gnus-mailcrypt-lisp-directory, gnus-bbdb-lisp-directory): Remove - version numbers from file names. + (gnus-mailcrypt-lisp-directory, gnus-bbdb-lisp-directory): + Remove version numbers from file names. 2000-11-08 Dave Love <fx@gnu.org> @@ -17220,8 +17211,8 @@ * rfc2047.el (base64): Require unconditionally. (message-posting-charset): Defvar when compiling. - (rfc2047-encode-message-header, rfc2047-encodable-p): Require - message. + (rfc2047-encode-message-header, rfc2047-encodable-p): + Require message. * gnus-sum.el (nnoo): Require. (mm-uu-dissect): Autoload. @@ -17318,8 +17309,8 @@ 2000-10-09 Dave Love <fx@gnu.org> - * mail-source.el (mail-source-fetch-imap): Bind - default-enable-multibyte-characters rather than using + * mail-source.el (mail-source-fetch-imap): + Bind default-enable-multibyte-characters rather than using mm-disable-multibyte. 2000-10-05 Dave Love <fx@gnu.org> @@ -17356,8 +17347,8 @@ 2000-10-04 Dave Love <fx@gnu.org> - * smiley-ems.el (smiley-regexp-alist, smiley-update-cache): Use - pbm images. + * smiley-ems.el (smiley-regexp-alist, smiley-update-cache): + Use pbm images. * frown.pbm, smile.pbm, wry.pbm: New files. @@ -17452,7 +17443,7 @@ 2000-12-15 10:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> * pop3.el (pop3-movemail): Use binary. - (pop3-movemail-file-coding-system): Removed. + (pop3-movemail-file-coding-system): Remove. 2000-12-14 13:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -17512,8 +17503,8 @@ 2000-12-04 18:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * mail-source.el (mail-source-report-new-mail): Use - nnheader-run-at-time. + * mail-source.el (mail-source-report-new-mail): + Use nnheader-run-at-time. 2000-02-15 Andrew Innes <andrewi@gnu.org> @@ -17557,8 +17548,8 @@ 2000-12-01 Simon Josefsson <sj@extundo.com> - * mml-smime.el (mml-smime-verify): Don't modify MM buffer. Handle - more than one certificate inside PKCS#7 blob. Better security + * mml-smime.el (mml-smime-verify): Don't modify MM buffer. + Handle more than one certificate inside PKCS#7 blob. Better security information (clamed / actual sender, openssl output, certificates inside message). @@ -17567,8 +17558,8 @@ 2000-11-30 23:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-art.el (gnus-mime-security-button-line-format-alist): Add - ?d and ?D. + * gnus-art.el (gnus-mime-security-button-line-format-alist): + Add ?d and ?D. (gnus-mime-security-show-details-inline): New variable. (gnus-mime-security-show-details): Use them. (gnus-insert-mime-security-button): Ditto. @@ -17614,8 +17605,8 @@ 2000-11-22 Jan Nieuwenhuizen <janneke@gnu.org> - * nnmh.el (nnmh-request-expire-articles): Implemented - expiry-target for nnmh backend. + * nnmh.el (nnmh-request-expire-articles): + Implemented expiry-target for nnmh backend. 2000-11-30 Simon Josefsson <sj@extundo.com> @@ -17681,8 +17672,8 @@ 2000-11-22 11:00:00 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-xmas.el (gnus-xmas-article-display-xface): Use - insert-buffer-substring. + * gnus-xmas.el (gnus-xmas-article-display-xface): + Use insert-buffer-substring. * message.el (message-send-mail): Use buffer-substring-no-properties. (message-send-news): Ditto. @@ -17777,13 +17768,13 @@ * mml-sec.el (mml-sign-alist): Update names. (mml-encrypt-alist): Ditto. - (mml-secure-part-smime-sign): Moved to mml-smime.el + (mml-secure-part-smime-sign): Move to mml-smime.el as `mml-smime-sign-query'. - (mml-secure-part-smime-encrypt-by-file): Moved to mml-smime.el as + (mml-secure-part-smime-encrypt-by-file): Move to mml-smime.el as `mml-smime-get-file-cert'. - (mml-secure-part-smime-encrypt-by-dns): Moved to mml-smime.el as + (mml-secure-part-smime-encrypt-by-dns): Move to mml-smime.el as `mml-smime-get-dns-cert'. - (mml-secure-part-smime-encrypt): Moved to mml-smime.el as + (mml-secure-part-smime-encrypt): Move to mml-smime.el as `mml-smime-encrypt-query'. (mml-smime-sign-buffer): Use mml-smime-sign. (mml-smime-encrypt-buffer): Use mml-smime-encrypt. @@ -17793,7 +17784,7 @@ (mml-smime-sign-query): (mml-smime-get-file-cert): (mml-smime-get-dns-cert): - (mml-smime-encrypt-query): Moved from mml-sec.el. + (mml-smime-encrypt-query): Move from mml-sec.el. 2000-11-16 Simon Josefsson <sj@extundo.com> @@ -17802,8 +17793,8 @@ 2000-11-17 14:21 ShengHuo ZHU <zsh@cs.rochester.edu> - * message.el (message-setup-fill-variables): Use - message-cite-prefix-regexp. + * message.el (message-setup-fill-variables): + Use message-cite-prefix-regexp. (message-newline-and-reformat): Check the end of citation, leading WSP, break in the cite prefix. (message-fill-paragraph): New function. @@ -17844,8 +17835,8 @@ 2000-11-12 David Edmondson <dme@dme.org> - * message.el (message-font-lock-keywords): Use - message-cite-prefix-regexp. + * message.el (message-font-lock-keywords): + Use message-cite-prefix-regexp. 2000-11-15 Kai Großjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE> @@ -17939,15 +17930,15 @@ 2000-11-12 David Edmondson <dme@dme.org> - * message.el (message-cite-prefix-regexp): Moved from gnus-cite.el + * message.el (message-cite-prefix-regexp): Move from gnus-cite.el and replace `.' with `\w' to allow for different syntax tables (from Vladimir Volovich). - * message.el (message-newline-and-reformat): Use - `message-cite-prefix-regexp'. - * gnus-cite.el (gnus-supercite-regexp): Use - `message-cite-prefix-regexp'. - * gnus-cite.el (gnus-cite-parse): Use - `message-cite-prefix-regexp'. + * message.el (message-newline-and-reformat): + Use `message-cite-prefix-regexp'. + * gnus-cite.el (gnus-supercite-regexp): + Use `message-cite-prefix-regexp'. + * gnus-cite.el (gnus-cite-parse): + Use `message-cite-prefix-regexp'. 2000-11-12 08:52:46 ShengHuo ZHU <zsh@cs.rochester.edu> @@ -18124,8 +18115,8 @@ Verify S/MIME signature support. - * mm-decode.el (mm-inline-media-tests): Add - application/{x-,}pkcs7-signature. + * mm-decode.el (mm-inline-media-tests): + Add application/{x-,}pkcs7-signature. (mm-inlined-types): Ditto. (mm-automatic-display): Ditto. (mm-verify-function-alist): Ditto. Add name of method. @@ -18337,8 +18328,8 @@ * qp.el (quoted-printable-encode-region): Replace leading - when ultra safe. - * mml.el (mml-generate-mime-postprocess-function): Removed. - (mml-postprocess-alist): Removed. + * mml.el (mml-generate-mime-postprocess-function): Remove. + (mml-postprocess-alist): Remove. (mml-generate-mime-1): Use ultra-safe when sign. * mml2015.el (mml2015-fix-micalg): Uppercase. (mml2015-verify): Insert LF. @@ -18366,14 +18357,14 @@ 2000-10-30 08:17:46 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus.el (gnus-server-browse-hashtb): Removed. + * gnus.el (gnus-server-browse-hashtb): Remove. * gnus-group.el (gnus-group-prepare-flat-list-dead): Use gnus-active. (gnus-group-insert-group-line-info): Use simplified method. * gnus-srvr.el (gnus-browse-foreign-server): Use gnus-set-active. 2000-10-30 01:52:40 ShengHuo ZHU <zsh@cs.rochester.edu> - * gnus-util.el (gnus-union): Renamed from gnus-agent-union, and + * gnus-util.el (gnus-union): Rename from gnus-agent-union, and moved here. * gnus-agent.el (gnus-agent-fetch-headers): Use it. * gnus-group.el (gnus-group-prepare-flat): Use it. @@ -18450,9 +18441,9 @@ * mml-sec.el (mml-smime-encrypt-buffer): Support certfiles stored in buffers. - (mml-secure-dns-server): Removed. - (mml-secure-part-smime-encrypt-by-dns): Use DIG interface. Don't - write certificates to files. + (mml-secure-dns-server): Remove. + (mml-secure-part-smime-encrypt-by-dns): Use DIG interface. + Don't write certificates to files. * smime.el (smime-dns-server): New variable. (smime-mail-to-domain): diff --git a/lisp/gnus/gnus-art.el b/lisp/gnus/gnus-art.el index bbfe55c5d84..3b343adb2fd 100644 --- a/lisp/gnus/gnus-art.el +++ b/lisp/gnus/gnus-art.el @@ -5983,7 +5983,7 @@ Since MIME attachments tend to be put at the end of an article, we may overlook them if there is a huge body. This option offers you a copy of all non-inlinable MIME parts as buttons shown in front of an article. If nil, don't show those extra buttons." - :version "24.5" + :version "25.1" :group 'gnus-article-mime :type 'boolean) diff --git a/lisp/gnus/gnus-cloud.el b/lisp/gnus/gnus-cloud.el index c47976bdcfa..ec85a16ba32 100644 --- a/lisp/gnus/gnus-cloud.el +++ b/lisp/gnus/gnus-cloud.el @@ -125,7 +125,7 @@ (let ((spec (ignore-errors (read (current-buffer)))) length) (when (and (consp spec) - (memq (plist-get spec :type) '(:file :data :deleta))) + (memq (plist-get spec :type) '(:file :data :delete))) (setq length (plist-get spec :length)) (push (append spec (list diff --git a/lisp/gnus/gnus-delay.el b/lisp/gnus/gnus-delay.el index 5432d4da9f1..75b967e2d48 100644 --- a/lisp/gnus/gnus-delay.el +++ b/lisp/gnus/gnus-delay.el @@ -153,7 +153,7 @@ DELAY is a string, giving the length of the time. Possible values are: (when (gnus-group-entry group) (gnus-activate-group group) (add-hook 'message-send-hook - (lambda () (message-remove-header gnus-delay-header))) + (lambda () (message-remove-header gnus-delay-header)) t) (setq articles (nndraft-articles)) (while (setq article (pop articles)) (gnus-request-head article group) diff --git a/lisp/gnus/gnus-fun.el b/lisp/gnus/gnus-fun.el index e0d1578f49a..8d08cd66463 100644 --- a/lisp/gnus/gnus-fun.el +++ b/lisp/gnus/gnus-fun.el @@ -42,19 +42,19 @@ (defcustom gnus-x-face-omit-files nil "Regexp to match faces in `gnus-x-face-directory' to be omitted." - :version "24.5" + :version "25.1" :group 'gnus-fun :type 'string) (defcustom gnus-face-directory (expand-file-name "faces" gnus-directory) "*Directory where Face PNG files are stored." - :version "24.5" + :version "25.1" :group 'gnus-fun :type 'directory) (defcustom gnus-face-omit-files nil "Regexp to match faces in `gnus-face-directory' to be omitted." - :version "24.5" + :version "25.1" :group 'gnus-fun :type 'string) @@ -239,7 +239,7 @@ Files matching `gnus-face-omit-files' are not considered." ;;;###autoload (defun gnus-insert-random-face-header () - "Insert a randome Face header from `gnus-face-directory'." + "Insert a random Face header from `gnus-face-directory'." (gnus--insert-random-face-with-type 'gnus-random-face 'Face)) (defface gnus-x-face '((t (:foreground "black" :background "white"))) diff --git a/lisp/gnus/gnus-icalendar.el b/lisp/gnus/gnus-icalendar.el index 9027c53a6f3..3362cc87811 100644 --- a/lisp/gnus/gnus-icalendar.el +++ b/lisp/gnus/gnus-icalendar.el @@ -676,8 +676,9 @@ Gnus will only offer you the Accept/Tentative/Decline buttons for calendar events if any of your identities matches at least one RSVP participant. -Your identity is guessed automatically from the variables `user-full-name', -`user-mail-address', and `gnus-ignored-from-addresses'. +Your identity is guessed automatically from the variables +`user-full-name', `user-mail-address', +`gnus-ignored-from-addresses' and `message-alternative-emails'. If you need even more aliases you can define them here. It really only makes sense to define names or email addresses." @@ -703,6 +704,7 @@ These will be used to retrieve the RSVP information from ical events." (list user-full-name (regexp-quote user-mail-address) ; NOTE: these can be lists gnus-ignored-from-addresses ; already regexp-quoted + message-alternative-emails ; (mapcar #'regexp-quote gnus-icalendar-additional-identities))))) ;; TODO: make the template customizable diff --git a/lisp/gnus/message.el b/lisp/gnus/message.el index ca0280c874f..92cab57337c 100644 --- a/lisp/gnus/message.el +++ b/lisp/gnus/message.el @@ -619,7 +619,7 @@ This may also be a list of regexps." "If non-nil, delete non-matching headers when forwarding a message. Only headers that match this regexp will be included. This variable should be a regexp or a list of regexps." - :version "24.5" + :version "25.1" :group 'message-forwarding :type '(repeat :value-to-internal (lambda (widget value) (custom-split-regexp-maybe value)) diff --git a/lisp/gnus/mml.el b/lisp/gnus/mml.el index 726faeed6a0..fccdf521303 100644 --- a/lisp/gnus/mml.el +++ b/lisp/gnus/mml.el @@ -257,7 +257,9 @@ part. This is for the internal use, you should never modify the value.") ((string= mode "encrypt") (setq tags (list "encrypt" method))) ((string= mode "signencrypt") - (setq tags (list "sign" method "encrypt" method)))) + (setq tags (list "sign" method "encrypt" method))) + (t + (error "Unknown secure mode %s" mode))) (eval `(mml-insert-tag ,secure-mode ,@tags ,(if keyfile "keyfile") diff --git a/lisp/gnus/mml2015.el b/lisp/gnus/mml2015.el index 74290f45469..941b5ecf7c3 100644 --- a/lisp/gnus/mml2015.el +++ b/lisp/gnus/mml2015.el @@ -149,7 +149,7 @@ If set, it overrides the setting of `mml2015-sign-with-sender'." (defcustom mml2015-display-key-image t "If t, try to display key images." - :version "24.5" + :version "25.1" :group 'mime-security :type 'boolean) diff --git a/lisp/gnus/nnimap.el b/lisp/gnus/nnimap.el index 1730bd4252c..ad48d4737a5 100644 --- a/lisp/gnus/nnimap.el +++ b/lisp/gnus/nnimap.el @@ -986,10 +986,10 @@ textual parts.") (setq target nil)) (nnheader-message 7 "Expiring article %s:%d" group article)) (when target - (push article deleted-articles)))))))) + (push article deleted-articles)))))) + (setq deleted-articles (nreverse deleted-articles)))) ;; Change back to the current group again. (nnimap-change-group group server) - (setq deleted-articles (nreverse deleted-articles)) (nnimap-delete-article (gnus-compress-sequence deleted-articles)) deleted-articles)) diff --git a/lisp/ibuf-ext.el b/lisp/ibuf-ext.el index a3c5b062401..4b13b9ab11b 100644 --- a/lisp/ibuf-ext.el +++ b/lisp/ibuf-ext.el @@ -1,4 +1,4 @@ -;;; ibuf-ext.el --- extensions for ibuffer +;;; ibuf-ext.el --- extensions for ibuffer -*- lexical-binding:t -*- ;; Copyright (C) 2000-2014 Free Software Foundation, Inc. @@ -523,9 +523,9 @@ To evaluate a form without viewing the buffer, see `ibuffer-do-eval'." ibuffer-filter-groups (append ibuffer-filter-groups (list (cons "Default" nil)))))) -;; (dolist (hidden ibuffer-hidden-filter-groups) -;; (setq filter-group-alist (ibuffer-delete-alist -;; hidden filter-group-alist))) + ;; (dolist (hidden ibuffer-hidden-filter-groups) + ;; (setq filter-group-alist (ibuffer-delete-alist + ;; hidden filter-group-alist))) (let ((vec (make-vector (length filter-group-alist) nil)) (i 0)) (dolist (filtergroup filter-group-alist) @@ -540,12 +540,13 @@ To evaluate a form without viewing the buffer, see `ibuffer-do-eval'." (cl-incf i) (setq bmarklist lamers)))) (let (ret) - (dotimes (j i ret) + (dotimes (j i) (let ((bufs (aref vec j))) (unless (and noempty (null bufs)) (push (cons (car (nth j filter-group-alist)) bufs) - ret)))))))) + ret)))) + ret)))) ;;;###autoload (defun ibuffer-filters-to-filter-group (name) @@ -1100,9 +1101,9 @@ Default sorting modes are: Major Mode - the name of the major mode of the buffer Size - the size of the buffer" (interactive) - (let ((modes (mapcar 'car ibuffer-sorting-functions-alist))) - (add-to-list 'modes 'recency) - (setq modes (sort modes 'string-lessp)) + (let ((modes (mapcar #'car ibuffer-sorting-functions-alist))) + (cl-pushnew 'recency modes) + (setq modes (sort modes #'string-lessp)) (let ((next (or (car-safe (cdr-safe (memq ibuffer-sorting-mode modes))) (car modes)))) (setq ibuffer-sorting-mode next) diff --git a/lisp/ibuf-macs.el b/lisp/ibuf-macs.el index a475e1eccb9..96701ee4d39 100644 --- a/lisp/ibuf-macs.el +++ b/lisp/ibuf-macs.el @@ -1,4 +1,4 @@ -;;; ibuf-macs.el --- macros for ibuffer +;;; ibuf-macs.el --- macros for ibuffer -*- lexical-binding:t -*- ;; Copyright (C) 2000-2014 Free Software Foundation, Inc. @@ -111,6 +111,7 @@ change its definition, you should explicitly call ,(if inline `(push '(,sym ,bod) ibuffer-inline-columns) `(defun ,sym (buffer mark) + (ignore mark) ;Silence byte-compiler if mark is unused. ,bod)) (put (quote ,sym) 'ibuffer-column-name ,(if (stringp name) @@ -204,7 +205,8 @@ macro for exactly what it does. (declare (indent 2) (doc-string 3)) `(progn (defun ,(intern (concat (if (string-match "^ibuffer-do" (symbol-name op)) - "" "ibuffer-do-") (symbol-name op))) + "" "ibuffer-do-") + (symbol-name op))) ,args ,(if (stringp documentation) documentation @@ -247,6 +249,9 @@ macro for exactly what it does. (_ 'ibuffer-map-marked-lines)) #'(lambda (buf mark) + ;; Silence warning for code that doesn't + ;; use `mark'. + (ignore mark) ,(if (eq modifier-p :maybe) `(let ((ibuffer-tmp-previous-buffer-modification (buffer-modified-p buf))) diff --git a/lisp/ibuffer.el b/lisp/ibuffer.el index 833bce12c8e..5541bbb310e 100644 --- a/lisp/ibuffer.el +++ b/lisp/ibuffer.el @@ -1,4 +1,4 @@ -;;; ibuffer.el --- operate on buffers like dired +;;; ibuffer.el --- operate on buffers like dired -*- lexical-binding:t -*- ;; Copyright (C) 2000-2014 Free Software Foundation, Inc. @@ -540,10 +540,6 @@ directory, like `default-directory'." (define-key map (kbd "/ X") 'ibuffer-delete-saved-filter-groups) (define-key map (kbd "/ \\") 'ibuffer-clear-filter-groups) - (define-key map (kbd "q") 'ibuffer-quit) - (define-key map (kbd "h") 'describe-mode) - (define-key map (kbd "?") 'describe-mode) - (define-key map (kbd "% n") 'ibuffer-mark-by-name-regexp) (define-key map (kbd "% m") 'ibuffer-mark-by-mode-regexp) (define-key map (kbd "% f") 'ibuffer-mark-by-file-name-regexp) @@ -878,12 +874,6 @@ directory, like `default-directory'." (define-key map [down-mouse-3] 'ibuffer-mouse-popup-menu) map)) -(defvar ibuffer-restore-window-config-on-quit nil - "If non-nil, restore previous window configuration upon exiting `ibuffer'.") - -(defvar ibuffer-prev-window-config nil - "Window configuration before starting Ibuffer.") - (defvar ibuffer-did-modification nil) (defvar ibuffer-compiled-formats nil) @@ -917,7 +907,7 @@ width and the longest string in LIST." (when (zerop columns) (setq columns 1)) (while list - (dotimes (i (1- columns)) + (dotimes (_ (1- columns)) (insert (concat (car list) (make-string (- max (length (car list))) ?\s))) (setq list (cdr list))) @@ -1285,7 +1275,7 @@ a new window in the current frame, splitting vertically." :modifier-p t) (set-buffer-modified-p (not (buffer-modified-p)))) -(define-ibuffer-op ibuffer-do-toggle-read-only (&optional arg) +(define-ibuffer-op ibuffer-do-toggle-read-only (&optional _arg);FIXME:arg unused! "Toggle read only status in marked buffers. With optional ARG, make read-only only if ARG is not negative." (:opstring "toggled read only status in" @@ -1530,7 +1520,7 @@ If point is on a group name, this function operates on that group." ;; We use these variables to keep track of which variables ;; inside the generated function we need to bind, since ;; binding variables in Emacs takes time. - str-used tmp1-used tmp2-used global-strlen-used) + (vars-used ())) (dolist (form format) (push ;; Generate a form based on a particular format entry, like @@ -1556,8 +1546,8 @@ If point is on a group name, this function operates on that group." ;; This is a complex case; they want it limited to a ;; minimum size. (setq min-used t) - (setq str-used t strlen-used t global-strlen-used t - tmp1-used t tmp2-used t) + (setq strlen-used t) + (setq vars-used '(str strlen tmp1 tmp2)) ;; Generate code to limit the string to a minimum size. (setq minform `(progn (setq str @@ -1569,7 +1559,8 @@ If point is on a group name, this function operates on that group." strlen) align))))) (when (or (not (integerp max)) (> max 0)) - (setq str-used t max-used t) + (setq max-used t) + (cl-pushnew 'str vars-used) ;; Generate code to limit the string to a maximum size. (setq maxform `(progn (setq str @@ -1597,8 +1588,9 @@ If point is on a group name, this function operates on that group." ;; don't even understand it, and I wrote it five ;; minutes ago. (insertgenfn - (ibuffer-aif (get sym 'ibuffer-column-summarizer) + (if (get sym 'ibuffer-column-summarizer) ;; I really, really wish Emacs Lisp had closures. + ;; FIXME: Elisp does have them now. (lambda (arg sym) `(insert (let ((ret ,arg)) @@ -1606,7 +1598,7 @@ If point is on a group name, this function operates on that group." (cons ret (get ',sym 'ibuffer-column-summary))) ret))) - (lambda (arg sym) + (lambda (arg _sym) `(insert ,arg)))) (mincompform `(< strlen ,(if (integerp min) min @@ -1634,10 +1626,9 @@ If point is on a group name, this function operates on that group." `(when ,maxcompform ,maxform))) outforms) - (push (append - `(setq str ,callform) - (when strlen-used - `(strlen (length str)))) + (push `(setq str ,callform + ,@(when strlen-used + `(strlen (length str)))) outforms) (setq outforms (append outforms @@ -1650,25 +1641,17 @@ If point is on a group name, this function operates on that group." `(let ,letbindings ,@outforms))))) result)) - (setq result - ;; We don't want to unconditionally load the byte-compiler. - (funcall (if (or ibuffer-always-compile-formats - (featurep 'bytecomp)) - #'byte-compile - #'identity) - ;; Here, we actually create a lambda form which - ;; inserts all the generated forms for each entry - ;; in the format string. - (nconc (list 'lambda '(buffer mark)) - `((let ,(append (when str-used - '(str)) - (when global-strlen-used - '(strlen)) - (when tmp1-used - '(tmp1)) - (when tmp2-used - '(tmp2))) - ,@(nreverse result)))))))) + ;; We don't want to unconditionally load the byte-compiler. + (funcall (if (or ibuffer-always-compile-formats + (featurep 'bytecomp)) + #'byte-compile + #'identity) + ;; Here, we actually create a lambda form which + ;; inserts all the generated forms for each entry + ;; in the format string. + `(lambda (buffer mark) + (let ,vars-used + ,@(nreverse result)))))) (defun ibuffer-recompile-formats () "Recompile `ibuffer-formats'." @@ -1686,8 +1669,8 @@ If point is on a group name, this function operates on that group." (defun ibuffer-clear-summary-columns (format) (dolist (form format) - (ibuffer-awhen (and (consp form) - (get (car form) 'ibuffer-column-summarizer)) + (when (and (consp form) + (get (car form) 'ibuffer-column-summarizer)) (put (car form) 'ibuffer-column-summary nil)))) (defun ibuffer-check-formats () @@ -2298,18 +2281,6 @@ If optional arg SILENT is non-nil, do not display progress messages." (goto-char (point-min)) (forward-line orig)))) -(defun ibuffer-quit () - "Quit this `ibuffer' session. -Try to restore the previous window configuration if -`ibuffer-restore-window-config-on-quit' is non-nil." - (interactive) - (if ibuffer-restore-window-config-on-quit - (progn - (bury-buffer) - (unless (= (count-windows) 1) - (set-window-configuration ibuffer-prev-window-config))) - (bury-buffer))) - ;;;###autoload (defun ibuffer-list-buffers (&optional files-only) "Display a list of buffers, in another window. @@ -2350,7 +2321,6 @@ FORMATS is the value to use for `ibuffer-formats'. (interactive "P") (when ibuffer-use-other-window (setq other-window-p t)) - (setq ibuffer-prev-window-config (current-window-configuration)) (let ((buf (get-buffer-create (or name "*Ibuffer*")))) (if other-window-p (funcall (if noselect (lambda (buf) (display-buffer buf t)) #'pop-to-buffer) buf) @@ -2362,8 +2332,7 @@ FORMATS is the value to use for `ibuffer-formats'. (select-window (get-buffer-window buf 0)) (or (derived-mode-p 'ibuffer-mode) (ibuffer-mode)) - (setq ibuffer-restore-window-config-on-quit other-window-p) - (when shrink + (when shrink (setq ibuffer-shrink-to-minimum-size shrink)) (when qualifiers (require 'ibuf-ext) @@ -2501,7 +2470,6 @@ Other commands: '\\[ibuffer-switch-format]' - Change the current display format. '\\[forward-line]' - Move point to the next line. '\\[previous-line]' - Move point to the previous line. - '\\[ibuffer-quit]' - Bury the Ibuffer buffer. '\\[describe-mode]' - This help. '\\[ibuffer-diff-with-file]' - View the differences between this buffer and its associated file. @@ -2616,7 +2584,6 @@ will be inserted before the group at point." (set (make-local-variable 'ibuffer-cached-eliding-string) nil) (set (make-local-variable 'ibuffer-cached-elide-long-columns) nil) (set (make-local-variable 'ibuffer-current-format) nil) - (set (make-local-variable 'ibuffer-restore-window-config-on-quit) nil) (set (make-local-variable 'ibuffer-did-modification) nil) (set (make-local-variable 'ibuffer-tmp-hide-regexps) nil) (set (make-local-variable 'ibuffer-tmp-show-regexps) nil) @@ -2630,7 +2597,7 @@ will be inserted before the group at point." ;;; Start of automatically extracted autoloads. -;;;### (autoloads nil "ibuf-ext" "ibuf-ext.el" "e8ce929c4c76419f8d355b444f722c3a") +;;;### (autoloads nil "ibuf-ext" "ibuf-ext.el" "0d2393d1b47136bc7b1ac41593527f02") ;;; Generated autoloads from ibuf-ext.el (autoload 'ibuffer-auto-mode "ibuf-ext" "\ diff --git a/lisp/icomplete.el b/lisp/icomplete.el index 0c5a2babd86..95a6e1b357c 100644 --- a/lisp/icomplete.el +++ b/lisp/icomplete.el @@ -487,6 +487,19 @@ matches exist." "}") (concat determ " [Matched]")))))) +;;; Iswitchb compatibility + +;; We moved Iswitchb to `obsolete' in 24.4, but autoloads in files in +;; `obsolete' aren't obeyed (since that would encourage people to keep using +;; those packages, oblivious to their obsolescence). Given the fact that +;; Iswitchb was very popular, we decided to keep its autoload for a bit longer, +;; so we moved it here. + +;;;###autoload(when (locate-library "obsolete/iswitchb") +;;;###autoload (autoload 'iswitchb-mode "iswitchb" "Toggle Iswitchb mode." t) +;;;###autoload (make-obsolete 'iswitchb-mode +;;;###autoload "use `icomplete-mode' or `ido-mode' instead." "24.4")) + ;;;_* Provide (provide 'icomplete) diff --git a/lisp/ielm.el b/lisp/ielm.el index d6d742875d6..37e66ccc611 100644 --- a/lisp/ielm.el +++ b/lisp/ielm.el @@ -541,7 +541,9 @@ Customized bindings may be defined in `ielm-map', which currently contains: (setq comint-process-echoes nil) (set (make-local-variable 'completion-at-point-functions) '(comint-replace-by-expanded-history - ielm-complete-filename lisp-completion-at-point)) + ielm-complete-filename elisp-completion-at-point)) + (setq-local eldoc-documentation-function + #'elisp-eldoc-documentation-function) (set (make-local-variable 'ielm-prompt-internal) ielm-prompt) (set (make-local-variable 'comint-prompt-read-only) ielm-prompt-read-only) (setq comint-get-old-input 'ielm-get-old-input) diff --git a/lisp/image-mode.el b/lisp/image-mode.el index 492ac10d706..b94162d413a 100644 --- a/lisp/image-mode.el +++ b/lisp/image-mode.el @@ -49,6 +49,26 @@ "Special hook run when image data is requested in a new window. It is called with one argument, the initial WINPROPS.") +;; FIXME this doesn't seem mature yet. Document in manual when it is. +(defvar image-transform-resize nil + "The image resize operation. +Its value should be one of the following: + - nil, meaning no resizing. + - `fit-height', meaning to fit the image to the window height. + - `fit-width', meaning to fit the image to the window width. + - A number, which is a scale factor (the default size is 1).") + +(defvar image-transform-scale 1.0 + "The scale factor of the image being displayed.") + +(defvar image-transform-rotation 0.0 + "Rotation angle for the image in the current Image mode buffer.") + +(defvar image-transform-right-angle-fudge 0.0001 + "Snap distance to a multiple of a right angle. +There's no deep theory behind the default value, it should just +be somewhat larger than ImageMagick's MagickEpsilon.") + (defun image-mode-winprops (&optional window cleanup) "Return winprops of WINDOW. A winprops object has the shape (WINDOW . ALIST). @@ -642,14 +662,19 @@ was inserted." (string-make-unibyte (buffer-substring-no-properties (point-min) (point-max))) filename)) - (edges (window-inside-pixel-edges - (get-buffer-window (current-buffer)))) + ;; If we have a `fit-width' or a `fit-height', don't limit + ;; the size of the image to the window size. + (edges (and (null image-transform-resize) + (window-inside-pixel-edges + (get-buffer-window (current-buffer))))) (type (if (fboundp 'imagemagick-types) 'imagemagick (image-type file-or-data nil data-p))) - (image (create-image file-or-data type data-p - :max-width (- (nth 2 edges) (nth 0 edges)) - :max-height (- (nth 3 edges) (nth 1 edges)))) + (image (if (not edges) + (create-image file-or-data type data-p) + (create-image file-or-data type data-p + :max-width (- (nth 2 edges) (nth 0 edges)) + :max-height (- (nth 3 edges) (nth 1 edges))))) (inhibit-read-only t) (buffer-undo-list t) (modified (buffer-modified-p)) @@ -900,26 +925,6 @@ replacing the current Image mode buffer." ;; nil "image-transform" image-transform-minor-mode-map) -;; FIXME this doesn't seem mature yet. Document in manual when it is. -(defvar image-transform-resize nil - "The image resize operation. -Its value should be one of the following: - - nil, meaning no resizing. - - `fit-height', meaning to fit the image to the window height. - - `fit-width', meaning to fit the image to the window width. - - A number, which is a scale factor (the default size is 1).") - -(defvar image-transform-scale 1.0 - "The scale factor of the image being displayed.") - -(defvar image-transform-rotation 0.0 - "Rotation angle for the image in the current Image mode buffer.") - -(defvar image-transform-right-angle-fudge 0.0001 - "Snap distance to a multiple of a right angle. -There's no deep theory behind the default value, it should just -be somewhat larger than ImageMagick's MagickEpsilon.") - (defsubst image-transform-width (width height) "Return the bounding box width of a rotated WIDTH x HEIGHT rectangle. The rotation angle is the value of `image-transform-rotation' in degrees." diff --git a/lisp/image.el b/lisp/image.el index ef39fa7909f..8430d36a627 100644 --- a/lisp/image.el +++ b/lisp/image.el @@ -637,8 +637,8 @@ in which case you might want to use `image-default-frame-delay'." (images (plist-get metadata 'count)) (delay (plist-get metadata 'delay))) (when (and images (> images 1)) - (if (or (not (numberp delay)) (< delay 0)) - (setq delay image-default-frame-delay)) + (and delay (or (not (numberp delay)) (< delay 0)) + (setq delay image-default-frame-delay)) (cons images delay))))) (defun image-animated-p (image) diff --git a/lisp/imenu.el b/lisp/imenu.el index e5f33a5efb9..5bad4c09c44 100644 --- a/lisp/imenu.el +++ b/lisp/imenu.el @@ -1012,7 +1012,7 @@ to `imenu-update-menubar'.") (imenu item) nil)) -(defun imenu-default-goto-function (_name position &optional _rest) +(defun imenu-default-goto-function (_name position &rest _rest) "Move to the given position. NAME is ignored. POSITION is where to move. REST is also ignored. @@ -1034,16 +1034,13 @@ for more information." (if (stringp index-item) (setq index-item (assoc index-item (imenu--make-index-alist)))) (when index-item - (push-mark nil t) - (let* ((is-special-item (listp (cdr index-item))) - (function - (if is-special-item - (nth 2 index-item) imenu-default-goto-function)) - (position (if is-special-item - (cadr index-item) (cdr index-item))) - (args (if is-special-item (cdr (cddr index-item))))) - (apply function (car index-item) position args)) - (run-hooks 'imenu-after-jump-hook))) + (pcase index-item + (`(,name ,pos ,fn . ,args) + (push-mark nil t) + (apply fn name pos args) + (run-hooks 'imenu-after-jump-hook)) + (`(,name . ,pos) (imenu (list name pos imenu-default-goto-function))) + (_ (error "Unknown imenu item: %S" index-item))))) (provide 'imenu) diff --git a/lisp/info.el b/lisp/info.el index 59501c73534..2a8ba9064b2 100644 --- a/lisp/info.el +++ b/lisp/info.el @@ -138,10 +138,15 @@ The Lisp code is executed when the node is selected.") :type 'boolean :group 'info) -(defcustom Info-fontify-maximum-menu-size 100000 +;; It's unfortunate that nil means no fontification, as opposed to no limit, +;; since that differs from font-lock-maximum-size. +(defcustom Info-fontify-maximum-menu-size 400000 "Maximum size of menu to fontify if `font-lock-mode' is non-nil. -Set to nil to disable node fontification." - :type 'integer +Set to nil to disable node fontification; set to t for no limit." + :type '(choice (const :tag "No fontification" nil) + (const :tag "No size limit" t) + (integer :tag "Up to this many characters")) + :version "25.1" ; 100k -> 400k :group 'info) (defcustom Info-use-header-line t @@ -4605,7 +4610,9 @@ first line or header line, and for breadcrumb links.") (and Info-fontify-visited-nodes ;; Don't take time to refontify visited nodes in huge nodes Info-fontify-maximum-menu-size - (< (- (point-max) (point-min)) Info-fontify-maximum-menu-size))) + (or (eq Info-fontify-maximum-menu-size t) + (< (- (point-max) (point-min)) + Info-fontify-maximum-menu-size)))) rbeg rend) ;; Fontify header line @@ -4862,7 +4869,9 @@ first line or header line, and for breadcrumb links.") (search-forward "\n* Menu:" nil t) ;; Don't take time to annotate huge menus Info-fontify-maximum-menu-size - (< (- (point-max) (point)) Info-fontify-maximum-menu-size)) + (or (eq Info-fontify-maximum-menu-size t) + (< (- (point-max) (point)) + Info-fontify-maximum-menu-size))) (let ((n 0) cont) (while (re-search-forward diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds.el index f6c0719e4c4..61ecc8b702a 100644 --- a/lisp/international/mule-cmds.el +++ b/lisp/international/mule-cmds.el @@ -2776,11 +2776,7 @@ See also the documentation of `get-char-code-property' and (or (stringp table) (error "Not a char-table nor a file name: %s" table))) (if (stringp table) (setq table (purecopy table))) - (let ((slot (assq name char-code-property-alist))) - (if slot - (setcdr slot table) - (setq char-code-property-alist - (cons (cons name table) char-code-property-alist)))) + (setf (alist-get name char-code-property-alist) table) (put name 'char-code-property-documentation (purecopy docstring))) (defvar char-code-property-table diff --git a/lisp/isearch.el b/lisp/isearch.el index 20dabdc5b6c..9bee5aa7eb0 100644 --- a/lisp/isearch.el +++ b/lisp/isearch.el @@ -1968,10 +1968,12 @@ Subword is used when `subword-mode' is activated. " (lambda () (if (or (= (char-syntax (or (char-after) 0)) ?w) (= (char-syntax (or (char-after (1+ (point))) 0)) ?w)) - (if (and (boundp 'subword-mode) subword-mode) + (if (or (and (boundp 'subword-mode) subword-mode) + (and (boundp 'superword-mode) superword-mode)) (subword-forward 1) (forward-word 1)) - (forward-char 1)) (point)))) + (forward-char 1)) + (point)))) (defun isearch-yank-word (&optional arg) "Pull next word from buffer into search string. diff --git a/lisp/ldefs-boot.el b/lisp/ldefs-boot.el index 3fa7e131d0c..b5b94764fe1 100644 --- a/lisp/ldefs-boot.el +++ b/lisp/ldefs-boot.el @@ -65,8 +65,8 @@ should return a grid vector array that is the new solution. ;;;*** -;;;### (autoloads nil "ada-mode" "progmodes/ada-mode.el" (21220 61111 -;;;;;; 156047 0)) +;;;### (autoloads nil "ada-mode" "progmodes/ada-mode.el" (21476 41895 +;;;;;; 55661 0)) ;;; Generated autoloads from progmodes/ada-mode.el (autoload 'ada-add-extensions "ada-mode" "\ @@ -96,8 +96,8 @@ Insert a descriptive header at the top of the file. ;;;*** -;;;### (autoloads nil "ada-xref" "progmodes/ada-xref.el" (21187 63826 -;;;;;; 213216 0)) +;;;### (autoloads nil "ada-xref" "progmodes/ada-xref.el" (21476 41895 +;;;;;; 55661 0)) ;;; Generated autoloads from progmodes/ada-xref.el (autoload 'ada-find-file "ada-xref" "\ @@ -108,7 +108,7 @@ Completion is available. ;;;*** -;;;### (autoloads nil "add-log" "vc/add-log.el" (21240 46395 727291 +;;;### (autoloads nil "add-log" "vc/add-log.el" (21541 15655 55679 ;;;;;; 0)) ;;; Generated autoloads from vc/add-log.el @@ -1153,7 +1153,7 @@ Returns list of symbols and documentation found. ;;;*** -;;;### (autoloads nil "arc-mode" "arc-mode.el" (21207 49087 974317 +;;;### (autoloads nil "arc-mode" "arc-mode.el" (21476 41895 55661 ;;;;;; 0)) ;;; Generated autoloads from arc-mode.el @@ -2716,8 +2716,8 @@ Like `bug-reference-mode', but only buttonize in comments and strings. ;;;*** -;;;### (autoloads nil "bytecomp" "emacs-lisp/bytecomp.el" (21334 -;;;;;; 16805 699731 0)) +;;;### (autoloads nil "bytecomp" "emacs-lisp/bytecomp.el" (21543 +;;;;;; 57381 284584 0)) ;;; Generated autoloads from emacs-lisp/bytecomp.el (put 'byte-compile-dynamic 'safe-local-variable 'booleanp) (put 'byte-compile-disable-print-circle 'safe-local-variable 'booleanp) @@ -2981,8 +2981,8 @@ See the documentation for `calculator-mode' for more information. ;;;*** -;;;### (autoloads nil "calendar" "calendar/calendar.el" (21403 21198 -;;;;;; 190145 203000)) +;;;### (autoloads nil "calendar" "calendar/calendar.el" (21546 33576 +;;;;;; 601815 0)) ;;; Generated autoloads from calendar/calendar.el (autoload 'calendar "calendar" "\ @@ -3050,8 +3050,8 @@ it fails. ;;;*** -;;;### (autoloads nil "cc-engine" "progmodes/cc-engine.el" (21425 -;;;;;; 14635 268306 0)) +;;;### (autoloads nil "cc-engine" "progmodes/cc-engine.el" (21522 +;;;;;; 51241 590401 0)) ;;; Generated autoloads from progmodes/cc-engine.el (autoload 'c-guess-basic-syntax "cc-engine" "\ @@ -3640,8 +3640,8 @@ See the documentation of `define-ccl-program' for the detail of CCL program. ;;;*** -;;;### (autoloads nil "cconv" "emacs-lisp/cconv.el" (21240 46395 -;;;;;; 727291 0)) +;;;### (autoloads nil "cconv" "emacs-lisp/cconv.el" (21543 57381 +;;;;;; 284584 0)) ;;; Generated autoloads from emacs-lisp/cconv.el (autoload 'cconv-closure-convert "cconv" "\ @@ -4086,8 +4086,8 @@ instead. ;;;*** -;;;### (autoloads nil "cl-lib" "emacs-lisp/cl-lib.el" (21372 32036 -;;;;;; 731951 0)) +;;;### (autoloads nil "cl-lib" "emacs-lisp/cl-lib.el" (21541 15655 +;;;;;; 55679 0)) ;;; Generated autoloads from emacs-lisp/cl-lib.el (push (purecopy '(cl-lib 1 0)) package--builtin-versions) @@ -4313,8 +4313,8 @@ on third call it again advances points to the next difference and so on. ;;;*** -;;;### (autoloads nil "compile" "progmodes/compile.el" (21383 2343 -;;;;;; 498187 0)) +;;;### (autoloads nil "compile" "progmodes/compile.el" (21484 36010 +;;;;;; 707226 0)) ;;; Generated autoloads from progmodes/compile.el (defvar compilation-mode-hook nil "\ @@ -5044,8 +5044,8 @@ Enable CUA selection mode without the C-z/C-x/C-c/C-v bindings. ;;;*** -;;;### (autoloads nil "cua-rect" "emulation/cua-rect.el" (21437 5802 -;;;;;; 125919 0)) +;;;### (autoloads nil "cua-rect" "emulation/cua-rect.el" (21503 425 +;;;;;; 992235 0)) ;;; Generated autoloads from emulation/cua-rect.el (autoload 'cua-rectangle-mark-mode "cua-rect" "\ @@ -5915,7 +5915,7 @@ relevant to POS. ;;;*** -;;;### (autoloads nil "desktop" "desktop.el" (21446 45134 152348 +;;;### (autoloads nil "desktop" "desktop.el" (21526 48295 289762 ;;;;;; 0)) ;;; Generated autoloads from desktop.el @@ -6154,8 +6154,8 @@ Deuglify broken Outlook (Express) articles and redisplay. ;;;*** -;;;### (autoloads nil "diary-lib" "calendar/diary-lib.el" (21350 -;;;;;; 58112 380040 0)) +;;;### (autoloads nil "diary-lib" "calendar/diary-lib.el" (21526 +;;;;;; 48295 289762 0)) ;;; Generated autoloads from calendar/diary-lib.el (autoload 'diary "diary-lib" "\ @@ -6245,8 +6245,8 @@ This requires the external program `diff' to be in your `exec-path'. ;;;*** -;;;### (autoloads nil "diff-mode" "vc/diff-mode.el" (21409 26408 -;;;;;; 607647 0)) +;;;### (autoloads nil "diff-mode" "vc/diff-mode.el" (21546 33576 +;;;;;; 601815 0)) ;;; Generated autoloads from vc/diff-mode.el (autoload 'diff-mode "diff-mode" "\ @@ -6724,8 +6724,8 @@ Switch to *dungeon* buffer and start game. ;;;*** -;;;### (autoloads nil "easy-mmode" "emacs-lisp/easy-mmode.el" (21259 -;;;;;; 10807 217062 0)) +;;;### (autoloads nil "easy-mmode" "emacs-lisp/easy-mmode.el" (21505 +;;;;;; 42150 427725 0)) ;;; Generated autoloads from emacs-lisp/easy-mmode.el (defalias 'easy-mmode-define-minor-mode 'define-minor-mode) @@ -8009,8 +8009,8 @@ It creates an autoload function for CNAME's constructor. ;;;*** -;;;### (autoloads nil "eldoc" "emacs-lisp/eldoc.el" (21305 16557 -;;;;;; 836987 0)) +;;;### (autoloads nil "eldoc" "emacs-lisp/eldoc.el" (21546 33576 +;;;;;; 601815 0)) ;;; Generated autoloads from emacs-lisp/eldoc.el (defvar eldoc-minor-mode-string (purecopy " ElDoc") "\ @@ -8033,9 +8033,23 @@ expression point is on. \(fn &optional ARG)" t nil) +(defvar global-eldoc-mode nil "\ +Non-nil if Global-Eldoc mode is enabled. +See the command `global-eldoc-mode' for a description of this minor mode. +Setting this variable directly does not take effect; +either customize it (see the info node `Easy Customization') +or call the function `global-eldoc-mode'.") + +(custom-autoload 'global-eldoc-mode "eldoc" nil) + +(autoload 'global-eldoc-mode "eldoc" "\ +Enable `eldoc-mode' in all buffers where it's applicable. + +\(fn &optional ARG)" t nil) + (define-obsolete-function-alias 'turn-on-eldoc-mode 'eldoc-mode "24.4") -(defvar eldoc-documentation-function #'eldoc-documentation-function-default "\ +(defvar eldoc-documentation-function nil "\ Function to call to return doc string. The function of no args should return a one-line string for displaying doc about a function etc. appropriate to the context around point. @@ -8048,8 +8062,7 @@ the variables `eldoc-argument-case' and `eldoc-echo-area-use-multiline-p', and the face `eldoc-highlight-function-argument', if they are to have any effect. -This variable is expected to be made buffer-local by modes (other than -Emacs Lisp mode) that support ElDoc.") +This variable is expected to be set buffer-locally by modes that support ElDoc.") ;;;*** @@ -8637,7 +8650,7 @@ Return a context object. ;;;*** -;;;### (autoloads nil "epg-config" "epg-config.el" (21187 63826 213216 +;;;### (autoloads nil "epg-config" "epg-config.el" (21543 57381 284584 ;;;;;; 0)) ;;; Generated autoloads from epg-config.el @@ -8658,9 +8671,8 @@ Look at CONFIG and try to expand GROUP. ;;;*** -;;;### (autoloads nil "erc" "erc/erc.el" (21437 5802 125919 0)) +;;;### (autoloads nil "erc" "erc/erc.el" (21542 36519 256429 0)) ;;; Generated autoloads from erc/erc.el -(push (purecopy '(erc 5 3)) package--builtin-versions) (autoload 'erc-select-read-args "erc" "\ Prompt the user for values of nick, server, port, and password. @@ -9100,15 +9112,15 @@ This will add a speedbar major display mode. ;;;*** -;;;### (autoloads nil "erc-stamp" "erc/erc-stamp.el" (21240 46395 -;;;;;; 727291 0)) +;;;### (autoloads nil "erc-stamp" "erc/erc-stamp.el" (21546 33576 +;;;;;; 601815 0)) ;;; Generated autoloads from erc/erc-stamp.el (autoload 'erc-timestamp-mode "erc-stamp" nil t) ;;;*** -;;;### (autoloads nil "erc-track" "erc/erc-track.el" (21240 46395 -;;;;;; 727291 0)) +;;;### (autoloads nil "erc-track" "erc/erc-track.el" (21547 54441 +;;;;;; 168831 0)) ;;; Generated autoloads from erc/erc-track.el (defvar erc-track-minor-mode nil "\ @@ -9914,7 +9926,7 @@ fourth arg NOSEP non-nil inhibits this. ;;;*** -;;;### (autoloads nil "eww" "net/eww.el" (21423 59302 489365 0)) +;;;### (autoloads nil "eww" "net/eww.el" (21546 33576 601815 0)) ;;; Generated autoloads from net/eww.el (autoload 'eww "eww" "\ @@ -10311,7 +10323,7 @@ you can set `feedmail-queue-reminder-alist' to nil. ;;;*** -;;;### (autoloads nil "ffap" "ffap.el" (21401 32300 989919 0)) +;;;### (autoloads nil "ffap" "ffap.el" (21546 33576 601815 0)) ;;; Generated autoloads from ffap.el (autoload 'ffap-next "ffap" "\ @@ -10523,7 +10535,7 @@ Set up hooks, load the cache file -- if existing -- and build the menu. ;;;*** -;;;### (autoloads nil "find-cmd" "find-cmd.el" (21187 63826 213216 +;;;### (autoloads nil "find-cmd" "find-cmd.el" (21539 60334 648861 ;;;;;; 0)) ;;; Generated autoloads from find-cmd.el (push (purecopy '(find-cmd 0 6)) package--builtin-versions) @@ -11840,8 +11852,8 @@ CLEAN is obsolete and ignored. ;;;*** -;;;### (autoloads nil "gnus-art" "gnus/gnus-art.el" (21393 38187 -;;;;;; 675040 0)) +;;;### (autoloads nil "gnus-art" "gnus/gnus-art.el" (21546 33576 +;;;;;; 601815 0)) ;;; Generated autoloads from gnus/gnus-art.el (autoload 'gnus-article-prepare-display "gnus-art" "\ @@ -11991,8 +12003,8 @@ Reminder user if there are unsent drafts. ;;;*** -;;;### (autoloads nil "gnus-fun" "gnus/gnus-fun.el" (21355 22953 -;;;;;; 61816 0)) +;;;### (autoloads nil "gnus-fun" "gnus/gnus-fun.el" (21546 33576 +;;;;;; 601815 0)) ;;; Generated autoloads from gnus/gnus-fun.el (autoload 'gnus--random-face-with-type "gnus-fun" "\ @@ -12051,7 +12063,7 @@ Files matching `gnus-face-omit-files' are not considered. \(fn)" t nil) (autoload 'gnus-insert-random-face-header "gnus-fun" "\ -Insert a randome Face header from `gnus-face-directory'. +Insert a random Face header from `gnus-face-directory'. \(fn)" nil nil) @@ -12450,8 +12462,8 @@ Declare back end NAME with ABILITIES as a Gnus back end. ;;;*** -;;;### (autoloads nil "gnus-sum" "gnus/gnus-sum.el" (21414 44327 -;;;;;; 790846 0)) +;;;### (autoloads nil "gnus-sum" "gnus/gnus-sum.el" (21485 56871 +;;;;;; 932720 0)) ;;; Generated autoloads from gnus/gnus-sum.el (autoload 'gnus-summary-bookmark-jump "gnus-sum" "\ @@ -12592,7 +12604,7 @@ Retrieve MAIL-ADDRESS gravatar and returns it. ;;;*** -;;;### (autoloads nil "grep" "progmodes/grep.el" (21356 43818 957743 +;;;### (autoloads nil "grep" "progmodes/grep.el" (21542 36519 256429 ;;;;;; 0)) ;;; Generated autoloads from progmodes/grep.el @@ -12626,7 +12638,7 @@ List of hook functions run by `grep-process-setup' (see `run-hooks').") (custom-autoload 'grep-setup-hook "grep" t) -(defconst grep-regexp-alist '(("^\\(.+?\\)\\(:[ ]*\\)\\([1-9][0-9]*\\)\\2" 1 3 ((lambda nil (when grep-highlight-matches (let* ((beg (match-end 0)) (end (save-excursion (goto-char beg) (line-end-position))) (mbeg (text-property-any beg end 'font-lock-face grep-match-face))) (when mbeg (- mbeg beg))))) lambda nil (when grep-highlight-matches (let* ((beg (match-end 0)) (end (save-excursion (goto-char beg) (line-end-position))) (mbeg (text-property-any beg end 'font-lock-face grep-match-face)) (mend (and mbeg (next-single-property-change mbeg 'font-lock-face nil end)))) (when mend (- mend beg)))))) ("^Binary file \\(.+\\) matches$" 1 nil nil 0 1)) "\ +(defconst grep-regexp-alist '(("^\\(.*?[^/\n]\\):[ ]*\\([1-9][0-9]*\\)[ ]*:" 1 2 ((lambda nil (when grep-highlight-matches (let* ((beg (match-end 0)) (end (save-excursion (goto-char beg) (line-end-position))) (mbeg (text-property-any beg end 'font-lock-face grep-match-face))) (when mbeg (- mbeg beg))))) lambda nil (when grep-highlight-matches (let* ((beg (match-end 0)) (end (save-excursion (goto-char beg) (line-end-position))) (mbeg (text-property-any beg end 'font-lock-face grep-match-face)) (mend (and mbeg (next-single-property-change mbeg 'font-lock-face nil end)))) (when mend (- mend beg)))))) ("^Binary file \\(.+\\) matches$" 1 nil nil 0 1)) "\ Regexp used to match grep hits. See `compilation-error-regexp-alist'.") (defvar grep-program (purecopy "grep") "\ @@ -12770,7 +12782,7 @@ the form \"WINDOW-ID PIXMAP-ID\". Value is non-nil if successful. ;;;*** -;;;### (autoloads nil "gud" "progmodes/gud.el" (21240 46395 727291 +;;;### (autoloads nil "gud" "progmodes/gud.el" (21510 60072 112989 ;;;;;; 0)) ;;; Generated autoloads from progmodes/gud.el @@ -12819,6 +12831,13 @@ and source-file directory for your debugger. \(fn COMMAND-LINE)" t nil) +(autoload 'guiler "gud" "\ +Run guiler on program FILE in buffer `*gud-FILE*'. +The directory containing FILE becomes the initial working directory +and source-file directory for your debugger. + +\(fn COMMAND-LINE)" t nil) + (autoload 'jdb "gud" "\ Run jdb with command line COMMAND-LINE in a buffer. The buffer is named \"*gud*\" if no initial class is given or @@ -13651,8 +13670,8 @@ be found in variable `hi-lock-interactive-patterns'. ;;;*** -;;;### (autoloads nil "hideif" "progmodes/hideif.el" (21452 59559 -;;;;;; 901066 0)) +;;;### (autoloads nil "hideif" "progmodes/hideif.el" (21546 33576 +;;;;;; 601815 0)) ;;; Generated autoloads from progmodes/hideif.el (autoload 'hide-ifdef-mode "hideif" "\ @@ -14171,7 +14190,7 @@ You may also want to set `hfy-page-header' and `hfy-page-footer'. ;;;*** -;;;### (autoloads nil "ibuf-macs" "ibuf-macs.el" (21187 63826 213216 +;;;### (autoloads nil "ibuf-macs" "ibuf-macs.el" (21537 18599 384335 ;;;;;; 0)) ;;; Generated autoloads from ibuf-macs.el @@ -14260,8 +14279,8 @@ bound to the current value of the filter. ;;;*** -;;;### (autoloads nil "ibuffer" "ibuffer.el" (21187 63826 213216 -;;;;;; 0)) +;;;### (autoloads nil "ibuffer" "ibuffer.el" (21537 18854 710114 +;;;;;; 217000)) ;;; Generated autoloads from ibuffer.el (autoload 'ibuffer-list-buffers "ibuffer" "\ @@ -14300,8 +14319,8 @@ FORMATS is the value to use for `ibuffer-formats'. ;;;*** -;;;### (autoloads nil "icalendar" "calendar/icalendar.el" (21466 -;;;;;; 6053 9002 0)) +;;;### (autoloads nil "icalendar" "calendar/icalendar.el" (21546 +;;;;;; 33576 601815 0)) ;;; Generated autoloads from calendar/icalendar.el (push (purecopy '(icalendar 0 19)) package--builtin-versions) @@ -14849,7 +14868,7 @@ DEF, if non-nil, is the default value. ;;;*** -;;;### (autoloads nil "ielm" "ielm.el" (21240 46395 727291 0)) +;;;### (autoloads nil "ielm" "ielm.el" (21542 36519 256429 0)) ;;; Generated autoloads from ielm.el (autoload 'ielm "ielm" "\ @@ -14877,7 +14896,7 @@ the mode if ARG is omitted or nil, and toggle it if ARG is `toggle'. ;;;*** -;;;### (autoloads nil "image" "image.el" (21261 4487 230861 399000)) +;;;### (autoloads nil "image" "image.el" (21526 48295 289762 0)) ;;; Generated autoloads from image.el (autoload 'image-type-from-data "image" "\ @@ -15271,7 +15290,7 @@ An image file is one whose name has an extension in ;;;*** -;;;### (autoloads nil "image-mode" "image-mode.el" (21334 16805 699731 +;;;### (autoloads nil "image-mode" "image-mode.el" (21532 676 459903 ;;;;;; 0)) ;;; Generated autoloads from image-mode.el @@ -15507,7 +15526,7 @@ of `inferior-lisp-program'). Runs the hooks from ;;;*** -;;;### (autoloads nil "info" "info.el" (21419 7843 195974 0)) +;;;### (autoloads nil "info" "info.el" (21480 38952 540043 0)) ;;; Generated autoloads from info.el (defcustom Info-default-directory-list (let* ((config-dir (file-name-as-directory (or (and (featurep 'ns) (let ((dir (expand-file-name "../info" data-directory))) (if (file-directory-p dir) dir))) configure-info-directory))) (prefixes (prune-directory-list '("/usr/local/" "/usr/" "/opt/" "/"))) (suffixes '("share/" "" "gnu/" "gnu/lib/" "gnu/lib/emacs/" "emacs/" "lib/" "lib/emacs/")) (standard-info-dirs (apply #'nconc (mapcar (lambda (pfx) (let ((dirs (mapcar (lambda (sfx) (concat pfx sfx "info/")) suffixes))) (prune-directory-list dirs))) prefixes))) (dirs (if (member config-dir standard-info-dirs) (nconc standard-info-dirs (list config-dir)) (cons config-dir standard-info-dirs)))) (if (not (eq system-type 'windows-nt)) dirs (let* ((instdir (file-name-directory invocation-directory)) (dir1 (expand-file-name "../info/" instdir)) (dir2 (expand-file-name "../../../info/" instdir))) (cond ((file-exists-p dir1) (append dirs (list dir1))) ((file-exists-p dir2) (append dirs (list dir2))) (t dirs))))) "\ @@ -15549,8 +15568,7 @@ with the top-level Info directory. In interactive use, a non-numeric prefix argument directs this command to read a file name from the minibuffer. -A numeric prefix argument N selects an Info buffer named -\"*info*<%s>\". +A numeric prefix argument of N selects an Info buffer named \"*info*<N>\". The search path for Info files is in the variable `Info-directory-list'. The top-level Info directory is made by combining all the files named `dir' @@ -16408,8 +16426,7 @@ by `jka-compr-installed'. ;;;*** -;;;### (autoloads nil "js" "progmodes/js.el" (21388 20265 495157 -;;;;;; 0)) +;;;### (autoloads nil "js" "progmodes/js.el" (21529 24490 97012 0)) ;;; Generated autoloads from progmodes/js.el (push (purecopy '(js 9)) package--builtin-versions) @@ -16419,6 +16436,8 @@ Major mode for editing JavaScript. \(fn)" t nil) (defalias 'javascript-mode 'js-mode) +(dolist (name (list "node" "nodejs" "gjs" "rhino")) (add-to-list 'interpreter-mode-alist (cons (purecopy name) 'js-mode))) + ;;;*** ;;;### (autoloads nil "json" "json.el" (21187 63826 213216 0)) @@ -17082,7 +17101,7 @@ for further customization of the printer command. ;;;*** -;;;### (autoloads nil "ls-lisp" "ls-lisp.el" (21240 46395 727291 +;;;### (autoloads nil "ls-lisp" "ls-lisp.el" (21546 33576 601815 ;;;;;; 0)) ;;; Generated autoloads from ls-lisp.el @@ -17705,7 +17724,7 @@ recursion depth in the minibuffer prompt. This is only useful if ;;;*** -;;;### (autoloads nil "message" "gnus/message.el" (21326 22692 123234 +;;;### (autoloads nil "message" "gnus/message.el" (21546 33576 601815 ;;;;;; 0)) ;;; Generated autoloads from gnus/message.el @@ -17932,7 +17951,7 @@ redisplayed as output is inserted. ;;;*** -;;;### (autoloads nil "mh-comp" "mh-e/mh-comp.el" (21187 63826 213216 +;;;### (autoloads nil "mh-comp" "mh-e/mh-comp.el" (21546 33576 601815 ;;;;;; 0)) ;;; Generated autoloads from mh-e/mh-comp.el @@ -18023,9 +18042,9 @@ delete the draft message. ;;;*** -;;;### (autoloads nil "mh-e" "mh-e/mh-e.el" (21356 43818 957743 0)) +;;;### (autoloads nil "mh-e" "mh-e/mh-e.el" (21546 33576 601815 0)) ;;; Generated autoloads from mh-e/mh-e.el -(push (purecopy '(mh-e 8 5 -4)) package--builtin-versions) +(push (purecopy '(mh-e 8 6)) package--builtin-versions) (put 'mh-progs 'risky-local-variable t) @@ -18382,7 +18401,7 @@ Assume text has been decoded if DECODED is non-nil. ;;;*** -;;;### (autoloads nil "mml" "gnus/mml.el" (21296 1575 438327 0)) +;;;### (autoloads nil "mml" "gnus/mml.el" (21546 33576 601815 0)) ;;; Generated autoloads from gnus/mml.el (autoload 'mml-to-mime "mml" "\ @@ -18423,7 +18442,7 @@ body) or \"attachment\" (separate from the body). ;;;*** -;;;### (autoloads nil "mml2015" "gnus/mml2015.el" (21356 43818 957743 +;;;### (autoloads nil "mml2015" "gnus/mml2015.el" (21546 33576 601815 ;;;;;; 0)) ;;; Generated autoloads from gnus/mml2015.el @@ -18580,7 +18599,7 @@ To test this function, evaluate: ;;;*** -;;;### (autoloads nil "mpc" "mpc.el" (21361 61732 646433 0)) +;;;### (autoloads nil "mpc" "mpc.el" (21537 18599 384335 0)) ;;; Generated autoloads from mpc.el (autoload 'mpc "mpc" "\ @@ -18600,7 +18619,7 @@ Multiplication puzzle with GNU Emacs. ;;;*** -;;;### (autoloads nil "msb" "msb.el" (21240 46395 727291 0)) +;;;### (autoloads nil "msb" "msb.el" (21528 3626 241769 0)) ;;; Generated autoloads from msb.el (defvar msb-mode nil "\ @@ -19092,8 +19111,8 @@ a greeting from the server. ;;;*** -;;;### (autoloads nil "newst-backend" "net/newst-backend.el" (21260 -;;;;;; 57908 370145 500000)) +;;;### (autoloads nil "newst-backend" "net/newst-backend.el" (21539 +;;;;;; 60334 648861 0)) ;;; Generated autoloads from net/newst-backend.el (autoload 'newsticker-running-p "newst-backend" "\ @@ -19136,8 +19155,8 @@ Start reading news. You may want to bind this to a key. ;;;*** -;;;### (autoloads nil "newst-ticker" "net/newst-ticker.el" (21187 -;;;;;; 63826 213216 0)) +;;;### (autoloads nil "newst-ticker" "net/newst-ticker.el" (21539 +;;;;;; 60334 648861 0)) ;;; Generated autoloads from net/newst-ticker.el (autoload 'newsticker-ticker-running-p "newst-ticker" "\ @@ -19157,8 +19176,8 @@ running already. ;;;*** -;;;### (autoloads nil "newst-treeview" "net/newst-treeview.el" (21187 -;;;;;; 63826 213216 0)) +;;;### (autoloads nil "newst-treeview" "net/newst-treeview.el" (21546 +;;;;;; 33576 601815 0)) ;;; Generated autoloads from net/newst-treeview.el (autoload 'newsticker-treeview "newst-treeview" "\ @@ -20141,8 +20160,8 @@ See the command `outline-mode' for more information on this mode. ;;;*** -;;;### (autoloads nil "package" "emacs-lisp/package.el" (21419 62246 -;;;;;; 751914 0)) +;;;### (autoloads nil "package" "emacs-lisp/package.el" (21547 54441 +;;;;;; 168831 0)) ;;; Generated autoloads from emacs-lisp/package.el (push (purecopy '(package 1 0 1)) package--builtin-versions) @@ -20240,8 +20259,8 @@ matching parenthesis is highlighted in `show-paren-style' after ;;;*** -;;;### (autoloads nil "parse-time" "calendar/parse-time.el" (21296 -;;;;;; 1575 438327 0)) +;;;### (autoloads nil "parse-time" "calendar/parse-time.el" (21541 +;;;;;; 15655 55679 0)) ;;; Generated autoloads from calendar/parse-time.el (put 'parse-time-rules 'risky-local-variable t) @@ -20326,8 +20345,8 @@ Check if KEY is in the cache. ;;;*** -;;;### (autoloads nil "pcase" "emacs-lisp/pcase.el" (21190 39993 -;;;;;; 744837 0)) +;;;### (autoloads nil "pcase" "emacs-lisp/pcase.el" (21542 36519 +;;;;;; 256429 0)) ;;; Generated autoloads from emacs-lisp/pcase.el (autoload 'pcase "pcase" "\ @@ -20340,26 +20359,31 @@ UPatterns can take the following forms: SYMBOL matches anything and binds it to SYMBOL. (or UPAT...) matches if any of the patterns matches. (and UPAT...) matches if all the patterns match. + 'VAL matches if the object is `equal' to VAL `QPAT matches if the QPattern QPAT matches. - (pred PRED) matches if PRED applied to the object returns non-nil. + (pred FUN) matches if FUN applied to the object returns non-nil. (guard BOOLEXP) matches if BOOLEXP evaluates to non-nil. (let UPAT EXP) matches if EXP matches UPAT. + (app FUN UPAT) matches if FUN applied to the object matches UPAT. If a SYMBOL is used twice in the same pattern (i.e. the pattern is \"non-linear\"), then the second occurrence is turned into an `eq'uality test. QPatterns can take the following forms: - (QPAT1 . QPAT2) matches if QPAT1 matches the car and QPAT2 the cdr. - ,UPAT matches if the UPattern UPAT matches. - STRING matches if the object is `equal' to STRING. - ATOM matches if the object is `eq' to ATOM. -QPatterns for vectors are not implemented yet. - -PRED can take the form - FUNCTION in which case it gets called with one argument. - (FUN ARG1 .. ARGN) in which case it gets called with an N+1'th argument + (QPAT1 . QPAT2) matches if QPAT1 matches the car and QPAT2 the cdr. + [QPAT1 QPAT2..QPATn] matches a vector of length n and QPAT1..QPATn match + its 0..(n-1)th elements, respectively. + ,UPAT matches if the UPattern UPAT matches. + STRING matches if the object is `equal' to STRING. + ATOM matches if the object is `eq' to ATOM. + +FUN can take the form + SYMBOL or (lambda ARGS BODY) in which case it's called with one argument. + (F ARG1 .. ARGn) in which case F gets called with an n+1'th argument which is the value being matched. -A PRED of the form FUNCTION is equivalent to one of the form (FUNCTION). -PRED patterns can refer to variables bound earlier in the pattern. +So a FUN of the form SYMBOL is equivalent to one of the form (FUN). +FUN can refer to variables bound earlier in the pattern. +FUN is assumed to be pure, i.e. it can be dropped if its result is not used, +and two identical calls can be merged into one. E.g. you can match pairs where the cdr is larger than the car with a pattern like `(,a . ,(pred (< a))) or, with more checks: `(,(and a (pred numberp)) . ,(and (pred numberp) (pred (< a)))) @@ -20368,6 +20392,13 @@ like `(,a . ,(pred (< a))) or, with more checks: (function-put 'pcase 'lisp-indent-function '1) +(autoload 'pcase-exhaustive "pcase" "\ +The exhaustive version of `pcase' (which see). + +\(fn EXP &rest CASES)" nil t) + +(function-put 'pcase-exhaustive 'lisp-indent-function '1) + (autoload 'pcase-let* "pcase" "\ Like `let*' but where you can use `pcase' patterns for bindings. BODY should be an expression, and BINDINGS should be a list of bindings @@ -20386,6 +20417,15 @@ of the form (UPAT EXP). (function-put 'pcase-let 'lisp-indent-function '1) +(autoload 'pcase-defmacro "pcase" "\ +Define a pcase UPattern macro. + +\(fn NAME ARGS &rest BODY)" nil t) + +(function-put 'pcase-defmacro 'lisp-indent-function '2) + +(function-put 'pcase-defmacro 'doc-string-elt '3) + ;;;*** ;;;### (autoloads nil "pcmpl-cvs" "pcmpl-cvs.el" (21187 63826 213216 @@ -20682,8 +20722,8 @@ Global menu used by PCL-CVS.") ;;;*** -;;;### (autoloads nil "perl-mode" "progmodes/perl-mode.el" (21437 -;;;;;; 5802 125919 0)) +;;;### (autoloads nil "perl-mode" "progmodes/perl-mode.el" (21535 +;;;;;; 63274 647253 0)) ;;; Generated autoloads from progmodes/perl-mode.el (put 'perl-indent-level 'safe-local-variable 'integerp) (put 'perl-continued-statement-offset 'safe-local-variable 'integerp) @@ -20931,7 +20971,7 @@ Ignores leading comment characters. ;;;*** -;;;### (autoloads nil "printing" "printing.el" (21364 37926 837230 +;;;### (autoloads nil "printing" "printing.el" (21546 33576 601815 ;;;;;; 0)) ;;; Generated autoloads from printing.el (push (purecopy '(printing 6 9 3)) package--builtin-versions) @@ -21864,8 +21904,8 @@ If EXTENSION is any other symbol, it is ignored. ;;;*** -;;;### (autoloads nil "python" "progmodes/python.el" (21467 26920 -;;;;;; 243336 0)) +;;;### (autoloads nil "python" "progmodes/python.el" (21547 54441 +;;;;;; 168831 0)) ;;; Generated autoloads from progmodes/python.el (push (purecopy '(python 0 24 4)) package--builtin-versions) @@ -22249,7 +22289,7 @@ Display `quickurl-list' as a formatted list using `quickurl-list-mode'. ;;;*** -;;;### (autoloads nil "rcirc" "net/rcirc.el" (21452 59559 901066 +;;;### (autoloads nil "rcirc" "net/rcirc.el" (21546 33576 601815 ;;;;;; 0)) ;;; Generated autoloads from net/rcirc.el @@ -22334,7 +22374,7 @@ were operated on recently. ;;;*** -;;;### (autoloads nil "rect" "rect.el" (21450 17830 135996 0)) +;;;### (autoloads nil "rect" "rect.el" (21546 33576 601815 0)) ;;; Generated autoloads from rect.el (autoload 'delete-rectangle "rect" "\ @@ -22495,8 +22535,8 @@ For true \"word wrap\" behavior, use `visual-line-mode' instead. ;;;*** -;;;### (autoloads nil "reftex" "textmodes/reftex.el" (21418 41409 -;;;;;; 280143 158000)) +;;;### (autoloads nil "reftex" "textmodes/reftex.el" (21534 42729 +;;;;;; 1557 881000)) ;;; Generated autoloads from textmodes/reftex.el (autoload 'reftex-citation "reftex-cite" nil t) (autoload 'reftex-all-document-files "reftex-parse") @@ -22829,204 +22869,6 @@ variable. ;;;*** -;;;### (autoloads nil "rmail" "mail/rmail.el" (21384 23211 329821 -;;;;;; 0)) -;;; Generated autoloads from mail/rmail.el - -(defvar rmail-file-name (purecopy "~/RMAIL") "\ -Name of user's primary mail file.") - -(custom-autoload 'rmail-file-name "rmail" t) - -(put 'rmail-spool-directory 'standard-value '((cond ((file-exists-p "/var/mail") "/var/mail/") ((file-exists-p "/var/spool/mail") "/var/spool/mail/") ((memq system-type '(hpux usg-unix-v irix)) "/usr/mail/") (t "/usr/spool/mail/")))) - -(defvar rmail-spool-directory (purecopy (cond ((file-exists-p "/var/mail") "/var/mail/") ((file-exists-p "/var/spool/mail") "/var/spool/mail/") ((memq system-type '(hpux usg-unix-v irix)) "/usr/mail/") (t "/usr/spool/mail/"))) "\ -Name of directory used by system mailer for delivering new mail. -Its name should end with a slash.") - -(custom-autoload 'rmail-spool-directory "rmail" t) -(custom-initialize-delay 'rmail-spool-directory nil) - -(autoload 'rmail-movemail-variant-p "rmail" "\ -Return t if the current movemail variant is any of VARIANTS. -Currently known variants are 'emacs and 'mailutils. - -\(fn &rest VARIANTS)" nil nil) - -(defvar rmail-user-mail-address-regexp nil "\ -Regexp matching user mail addresses. -If non-nil, this variable is used to identify the correspondent -when receiving new mail. If it matches the address of the sender, -the recipient is taken as correspondent of a mail. -If nil (default value), your `user-login-name' and `user-mail-address' -are used to exclude yourself as correspondent. - -Usually you don't have to set this variable, except if you collect mails -sent by you under different user names. -Then it should be a regexp matching your mail addresses. - -Setting this variable has an effect only before reading a mail.") - -(custom-autoload 'rmail-user-mail-address-regexp "rmail" t) - -(define-obsolete-variable-alias 'rmail-dont-reply-to-names 'mail-dont-reply-to-names "24.1") - -(defvar rmail-default-dont-reply-to-names nil "\ -Regexp specifying part of the default value of `mail-dont-reply-to-names'. -This is used when the user does not set `mail-dont-reply-to-names' -explicitly.") - -(make-obsolete-variable 'rmail-default-dont-reply-to-names 'mail-dont-reply-to-names "24.1") - -(defvar rmail-ignored-headers (purecopy (concat "^via:\\|^mail-from:\\|^origin:\\|^references:\\|^sender:" "\\|^status:\\|^received:\\|^x400-originator:\\|^x400-recipients:" "\\|^x400-received:\\|^x400-mts-identifier:\\|^x400-content-type:" "\\|^\\(resent-\\|\\)message-id:\\|^summary-line:\\|^resent-date:" "\\|^nntp-posting-host:\\|^path:\\|^x-char.*:\\|^x-face:\\|^face:" "\\|^x-mailer:\\|^delivered-to:\\|^lines:" "\\|^content-transfer-encoding:\\|^x-coding-system:" "\\|^return-path:\\|^errors-to:\\|^return-receipt-to:" "\\|^precedence:\\|^mime-version:" "\\|^list-owner:\\|^list-help:\\|^list-post:\\|^list-subscribe:" "\\|^list-id:\\|^list-unsubscribe:\\|^list-archive:" "\\|^content-length:\\|^nntp-posting-date:\\|^user-agent" "\\|^importance:\\|^envelope-to:\\|^delivery-date\\|^openpgp:" "\\|^mbox-line:\\|^cancel-lock:" "\\|^DomainKey-Signature:\\|^dkim-signature:" "\\|^resent-face:\\|^resent-x.*:\\|^resent-organization:\\|^resent-openpgp:" "\\|^x-.*:")) "\ -Regexp to match header fields that Rmail should normally hide. -\(See also `rmail-nonignored-headers', which overrides this regexp.) -This variable is used for reformatting the message header, -which normally happens once for each message, -when you view the message for the first time in Rmail. -To make a change in this variable take effect -for a message that you have already viewed, -go to that message and type \\[rmail-toggle-header] twice.") - -(custom-autoload 'rmail-ignored-headers "rmail" t) - -(defvar rmail-displayed-headers nil "\ -Regexp to match Header fields that Rmail should display. -If nil, display all header fields except those matched by -`rmail-ignored-headers'.") - -(custom-autoload 'rmail-displayed-headers "rmail" t) - -(defvar rmail-retry-ignored-headers (purecopy "^x-authentication-warning:\\|^x-detected-operating-system:\\|^x-spam[-a-z]*:\\|content-type:\\|content-transfer-encoding:\\|mime-version:\\|message-id:") "\ -Headers that should be stripped when retrying a failed message.") - -(custom-autoload 'rmail-retry-ignored-headers "rmail" t) - -(defvar rmail-highlighted-headers (purecopy "^From:\\|^Subject:") "\ -Regexp to match Header fields that Rmail should normally highlight. -A value of nil means don't highlight. Uses the face `rmail-highlight'.") - -(custom-autoload 'rmail-highlighted-headers "rmail" t) - -(defvar rmail-primary-inbox-list nil "\ -List of files that are inboxes for your primary mail file `rmail-file-name'. -If this is nil, uses the environment variable MAIL. If that is -unset, uses a file named by the function `user-login-name' in the -directory `rmail-spool-directory' (whose value depends on the -operating system). For example, \"/var/mail/USER\".") - -(custom-autoload 'rmail-primary-inbox-list "rmail" t) - -(defvar rmail-secondary-file-directory (purecopy "~/") "\ -Directory for additional secondary Rmail files.") - -(custom-autoload 'rmail-secondary-file-directory "rmail" t) - -(defvar rmail-secondary-file-regexp (purecopy "\\.xmail$") "\ -Regexp for which files are secondary Rmail files.") - -(custom-autoload 'rmail-secondary-file-regexp "rmail" t) - -(defvar rmail-mode-hook nil "\ -List of functions to call when Rmail is invoked.") - -(defvar rmail-show-message-hook nil "\ -List of functions to call when Rmail displays a message.") - -(custom-autoload 'rmail-show-message-hook "rmail" t) - -(defvar rmail-file-coding-system nil "\ -Coding system used in RMAIL file. - -This is set to nil by default.") - -(defvar rmail-insert-mime-forwarded-message-function nil "\ -Function to insert a message in MIME format so it can be forwarded. -This function is called if `rmail-enable-mime' and -`rmail-enable-mime-composing' are non-nil. -It is called with one argument FORWARD-BUFFER, which is a -buffer containing the message to forward. The current buffer -is the outgoing mail buffer.") - -(autoload 'rmail "rmail" "\ -Read and edit incoming mail. -Moves messages into file named by `rmail-file-name' and edits that -file in RMAIL Mode. -Type \\[describe-mode] once editing that file, for a list of RMAIL commands. - -May be called with file name as argument; then performs rmail editing on -that file, but does not copy any new mail into the file. -Interactively, if you supply a prefix argument, then you -have a chance to specify a file name with the minibuffer. - -If `rmail-display-summary' is non-nil, make a summary for this RMAIL file. - -\(fn &optional FILE-NAME-ARG)" t nil) - -(autoload 'rmail-mode "rmail" "\ -Rmail Mode is used by \\<rmail-mode-map>\\[rmail] for editing Rmail files. -All normal editing commands are turned off. -Instead, these commands are available: - -\\[rmail-beginning-of-message] Move point to front of this message. -\\[rmail-end-of-message] Move point to bottom of this message. -\\[scroll-up] Scroll to next screen of this message. -\\[scroll-down] Scroll to previous screen of this message. -\\[rmail-next-undeleted-message] Move to Next non-deleted message. -\\[rmail-previous-undeleted-message] Move to Previous non-deleted message. -\\[rmail-next-message] Move to Next message whether deleted or not. -\\[rmail-previous-message] Move to Previous message whether deleted or not. -\\[rmail-first-message] Move to the first message in Rmail file. -\\[rmail-last-message] Move to the last message in Rmail file. -\\[rmail-show-message] Jump to message specified by numeric position in file. -\\[rmail-search] Search for string and show message it is found in. -\\[rmail-delete-forward] Delete this message, move to next nondeleted. -\\[rmail-delete-backward] Delete this message, move to previous nondeleted. -\\[rmail-undelete-previous-message] Undelete message. Tries current message, then earlier messages - till a deleted message is found. -\\[rmail-edit-current-message] Edit the current message. \\[rmail-cease-edit] to return to Rmail. -\\[rmail-expunge] Expunge deleted messages. -\\[rmail-expunge-and-save] Expunge and save the file. -\\[rmail-quit] Quit Rmail: expunge, save, then switch to another buffer. -\\[save-buffer] Save without expunging. -\\[rmail-get-new-mail] Move new mail from system spool directory into this file. -\\[rmail-mail] Mail a message (same as \\[mail-other-window]). -\\[rmail-continue] Continue composing outgoing message started before. -\\[rmail-reply] Reply to this message. Like \\[rmail-mail] but initializes some fields. -\\[rmail-retry-failure] Send this message again. Used on a mailer failure message. -\\[rmail-forward] Forward this message to another user. -\\[rmail-output] Output (append) this message to another mail file. -\\[rmail-output-as-seen] Output (append) this message to file as it's displayed. -\\[rmail-output-body-to-file] Save message body to a file. Default filename comes from Subject line. -\\[rmail-input] Input Rmail file. Run Rmail on that file. -\\[rmail-add-label] Add label to message. It will be displayed in the mode line. -\\[rmail-kill-label] Kill label. Remove a label from current message. -\\[rmail-next-labeled-message] Move to Next message with specified label - (label defaults to last one specified). - Standard labels: filed, unseen, answered, forwarded, deleted. - Any other label is present only if you add it with \\[rmail-add-label]. -\\[rmail-previous-labeled-message] Move to Previous message with specified label -\\[rmail-summary] Show headers buffer, with a one line summary of each message. -\\[rmail-summary-by-labels] Summarize only messages with particular label(s). -\\[rmail-summary-by-recipients] Summarize only messages with particular recipient(s). -\\[rmail-summary-by-regexp] Summarize only messages with particular regexp(s). -\\[rmail-summary-by-topic] Summarize only messages with subject line regexp(s). -\\[rmail-toggle-header] Toggle display of complete header. - -\(fn)" t nil) - -(autoload 'rmail-input "rmail" "\ -Run Rmail on file FILENAME. - -\(fn FILENAME)" t nil) - -(autoload 'rmail-set-remote-password "rmail" "\ -Set PASSWORD to be used for retrieving mail from a POP or IMAP server. - -\(fn PASSWORD)" t nil) - -;;;*** - ;;;### (autoloads nil "rmailout" "mail/rmailout.el" (21240 46395 ;;;;;; 727291 0)) ;;; Generated autoloads from mail/rmailout.el @@ -24200,7 +24042,7 @@ only these files will be asked to be saved. ;;;*** -;;;### (autoloads nil "ses" "ses.el" (21454 14892 338155 0)) +;;;### (autoloads nil "ses" "ses.el" (21547 54441 168831 0)) ;;; Generated autoloads from ses.el (autoload 'ses-mode "ses" "\ @@ -24244,8 +24086,8 @@ formula: ;;;*** -;;;### (autoloads nil "sgml-mode" "textmodes/sgml-mode.el" (21240 -;;;;;; 46395 727291 0)) +;;;### (autoloads nil "sgml-mode" "textmodes/sgml-mode.el" (21481 +;;;;;; 59815 980216 0)) ;;; Generated autoloads from textmodes/sgml-mode.el (autoload 'sgml-mode "sgml-mode" "\ @@ -24310,8 +24152,8 @@ To work around that, do: ;;;*** -;;;### (autoloads nil "sh-script" "progmodes/sh-script.el" (21452 -;;;;;; 59559 901066 0)) +;;;### (autoloads nil "sh-script" "progmodes/sh-script.el" (21510 +;;;;;; 60072 112989 0)) ;;; Generated autoloads from progmodes/sh-script.el (push (purecopy '(sh-script 2 0 6)) package--builtin-versions) (put 'sh-shell 'safe-local-variable 'symbolp) @@ -24512,7 +24354,7 @@ Otherwise, one argument `-i' is passed to the shell. ;;;*** -;;;### (autoloads nil "shr" "net/shr.el" (21327 43559 923043 0)) +;;;### (autoloads nil "shr" "net/shr.el" (21532 676 459903 0)) ;;; Generated autoloads from net/shr.el (autoload 'shr-render-region "shr" "\ @@ -25179,7 +25021,7 @@ Spam reports will be queued with the method used when ;;;*** -;;;### (autoloads nil "speedbar" "speedbar.el" (21335 37672 97862 +;;;### (autoloads nil "speedbar" "speedbar.el" (21485 56871 932720 ;;;;;; 0)) ;;; Generated autoloads from speedbar.el @@ -25220,8 +25062,8 @@ Return a vector containing the lines from `spook-phrases-file'. ;;;*** -;;;### (autoloads nil "sql" "progmodes/sql.el" (21263 60346 30834 -;;;;;; 928000)) +;;;### (autoloads nil "sql" "progmodes/sql.el" (21546 33576 601815 +;;;;;; 0)) ;;; Generated autoloads from progmodes/sql.el (push (purecopy '(sql 3 4)) package--builtin-versions) @@ -25680,6 +25522,11 @@ buffer. \(fn &optional BUFFER)" t nil) +(autoload 'sql-vertica "sql" "\ +Run vsql as an inferior process. + +\(fn &optional BUFFER)" t nil) + ;;;*** ;;;### (autoloads nil "srecode" "cedet/srecode.el" (21187 63826 213216 @@ -25860,11 +25707,11 @@ Studlify-case the current buffer. ;;;*** -;;;### (autoloads nil "subword" "progmodes/subword.el" (21377 49959 -;;;;;; 896066 0)) +;;;### (autoloads nil "subword" "progmodes/subword.el" (21546 33576 +;;;;;; 601815 0)) ;;; Generated autoloads from progmodes/subword.el -(define-obsolete-function-alias 'capitalized-words-mode 'subword-mode "24.5") +(define-obsolete-function-alias 'capitalized-words-mode 'subword-mode "25.1") (autoload 'subword-mode "subword" "\ Toggle subword movement and editing (Subword mode). @@ -25888,7 +25735,7 @@ called a `subword'. Here are some examples: NSGraphicsContext => \"NS\", \"Graphics\" and \"Context\" This mode changes the definition of a word so that word commands -treat nomenclature boundaries as word bounaries. +treat nomenclature boundaries as word boundaries. \\{subword-mode-map} @@ -26652,7 +26499,7 @@ Connect to the Emacs talk group from the current X display or tty frame. ;;;*** -;;;### (autoloads nil "tar-mode" "tar-mode.el" (21240 46395 727291 +;;;### (autoloads nil "tar-mode" "tar-mode.el" (21510 60072 112989 ;;;;;; 0)) ;;; Generated autoloads from tar-mode.el @@ -26830,8 +26677,8 @@ tetris-mode keybindings: ;;;*** -;;;### (autoloads nil "tex-mode" "textmodes/tex-mode.el" (21462 9001 -;;;;;; 456449 0)) +;;;### (autoloads nil "tex-mode" "textmodes/tex-mode.el" (21546 33576 +;;;;;; 601815 0)) ;;; Generated autoloads from textmodes/tex-mode.el (defvar tex-shell-file-name nil "\ @@ -27549,8 +27396,8 @@ Return a string giving the duration of the Emacs initialization. ;;;*** -;;;### (autoloads nil "time-date" "calendar/time-date.el" (21361 -;;;;;; 61732 646433 0)) +;;;### (autoloads nil "time-date" "calendar/time-date.el" (21471 +;;;;;; 23976 844614 0)) ;;; Generated autoloads from calendar/time-date.el (autoload 'date-to-time "time-date" "\ @@ -27882,8 +27729,8 @@ Its value should be an event that has a binding in MENU. ;;;*** -;;;### (autoloads nil "todo-mode" "calendar/todo-mode.el" (21462 -;;;;;; 9001 456449 0)) +;;;### (autoloads nil "todo-mode" "calendar/todo-mode.el" (21471 +;;;;;; 23976 844614 0)) ;;; Generated autoloads from calendar/todo-mode.el (autoload 'todo-show "todo-mode" "\ @@ -28081,7 +27928,8 @@ the output buffer or changing the window configuration. ;;;*** -;;;### (autoloads nil "tramp" "net/tramp.el" (21429 11690 49391 0)) +;;;### (autoloads nil "tramp" "net/tramp.el" (21525 27433 340807 +;;;;;; 0)) ;;; Generated autoloads from net/tramp.el (defvar tramp-mode t "\ @@ -28196,8 +28044,8 @@ Discard Tramp from loading remote files. ;;;*** -;;;### (autoloads nil "tramp-ftp" "net/tramp-ftp.el" (21406 50214 -;;;;;; 284651 0)) +;;;### (autoloads nil "tramp-ftp" "net/tramp-ftp.el" (21476 41895 +;;;;;; 55661 0)) ;;; Generated autoloads from net/tramp-ftp.el (autoload 'tramp-ftp-enable-ange-ftp "tramp-ftp" "\ @@ -28207,7 +28055,7 @@ Discard Tramp from loading remote files. ;;;*** -;;;### (autoloads nil "tutorial" "tutorial.el" (21240 46395 727291 +;;;### (autoloads nil "tutorial" "tutorial.el" (21510 60072 112989 ;;;;;; 0)) ;;; Generated autoloads from tutorial.el @@ -28558,7 +28406,7 @@ UNSAFEP-VARS is a list of symbols with local bindings. ;;;*** -;;;### (autoloads nil "url" "url/url.el" (21302 6641 882267 783000)) +;;;### (autoloads nil "url" "url/url.el" (21537 18599 384335 0)) ;;; Generated autoloads from url/url.el (autoload 'url-retrieve "url" "\ @@ -28726,8 +28574,8 @@ Handle file: and ftp: URLs. ;;;*** -;;;### (autoloads nil "url-gw" "url/url-gw.el" (21302 6606 390237 -;;;;;; 377000)) +;;;### (autoloads nil "url-gw" "url/url-gw.el" (21545 12711 344259 +;;;;;; 0)) ;;; Generated autoloads from url/url-gw.el (autoload 'url-gateway-nslookup-host "url-gw" "\ @@ -28741,12 +28589,15 @@ Args per `open-network-stream'. Will not make a connection if `url-gateway-unplugged' is non-nil. Might do a non-blocking connection; use `process-status' to check. -\(fn NAME BUFFER HOST SERVICE)" nil nil) +Optional arg GATEWAY-METHOD specifies the gateway to be used, +overriding the value of `url-gateway-method'. + +\(fn NAME BUFFER HOST SERVICE &optional GATEWAY-METHOD)" nil nil) ;;;*** -;;;### (autoloads nil "url-handlers" "url/url-handlers.el" (21419 -;;;;;; 62246 751914 0)) +;;;### (autoloads nil "url-handlers" "url/url-handlers.el" (21546 +;;;;;; 33576 601815 0)) ;;; Generated autoloads from url/url-handlers.el (defvar url-handler-mode nil "\ @@ -28800,7 +28651,7 @@ accessible. ;;;*** -;;;### (autoloads nil "url-http" "url/url-http.el" (21419 62246 751914 +;;;### (autoloads nil "url-http" "url/url-http.el" (21545 12711 344259 ;;;;;; 0)) ;;; Generated autoloads from url/url-http.el (autoload 'url-default-expander "url-expand") @@ -29021,8 +28872,8 @@ The variable `url-queue-timeout' sets a timeout. ;;;*** -;;;### (autoloads nil "url-tramp" "url/url-tramp.el" (21307 58279 -;;;;;; 19956 0)) +;;;### (autoloads nil "url-tramp" "url/url-tramp.el" (21546 33576 +;;;;;; 601815 0)) ;;; Generated autoloads from url/url-tramp.el (defvar url-tramp-protocols '("ftp" "ssh" "scp" "rsync" "telnet") "\ @@ -29586,8 +29437,8 @@ Return the branch part of a revision number REV. ;;;*** -;;;### (autoloads nil "vc-annotate" "vc/vc-annotate.el" (21435 50471 -;;;;;; 547961 0)) +;;;### (autoloads nil "vc-annotate" "vc/vc-annotate.el" (21546 33576 +;;;;;; 601815 0)) ;;; Generated autoloads from vc/vc-annotate.el (autoload 'vc-annotate "vc-annotate" "\ @@ -29666,7 +29517,7 @@ Name of the format file in a .bzr directory.") ;;;*** -;;;### (autoloads nil "vc-dir" "vc/vc-dir.el" (21187 63826 213216 +;;;### (autoloads nil "vc-dir" "vc/vc-dir.el" (21517 33344 974987 ;;;;;; 0)) ;;; Generated autoloads from vc/vc-dir.el @@ -29715,7 +29566,7 @@ case, and the process object in the asynchronous case. ;;;*** -;;;### (autoloads nil "vc-git" "vc/vc-git.el" (21429 11690 49391 +;;;### (autoloads nil "vc-git" "vc/vc-git.el" (21513 36261 278490 ;;;;;; 0)) ;;; Generated autoloads from vc/vc-git.el (defun vc-git-registered (file) @@ -29802,8 +29653,8 @@ find any project directory." (let ((project-dir (getenv "PROJECTDIR")) dirs dir) ;;;*** -;;;### (autoloads nil "vera-mode" "progmodes/vera-mode.el" (21383 -;;;;;; 2343 498187 0)) +;;;### (autoloads nil "vera-mode" "progmodes/vera-mode.el" (21546 +;;;;;; 33576 601815 0)) ;;; Generated autoloads from progmodes/vera-mode.el (push (purecopy '(vera-mode 2 28)) package--builtin-versions) (add-to-list 'auto-mode-alist (cons (purecopy "\\.vr[hi]?\\'") 'vera-mode)) @@ -29862,7 +29713,7 @@ Key bindings: ;;;*** ;;;### (autoloads nil "verilog-mode" "progmodes/verilog-mode.el" -;;;;;; (21388 20265 495157 0)) +;;;;;; (21546 33576 601815 0)) ;;; Generated autoloads from progmodes/verilog-mode.el (autoload 'verilog-mode "verilog-mode" "\ @@ -31001,8 +30852,8 @@ Please submit bug reports and other feedback to the author, Neil W. Van Dyke ;;;*** -;;;### (autoloads nil "which-func" "progmodes/which-func.el" (21187 -;;;;;; 63826 213216 0)) +;;;### (autoloads nil "which-func" "progmodes/which-func.el" (21511 +;;;;;; 46035 786880 0)) ;;; Generated autoloads from progmodes/which-func.el (put 'which-func-format 'risky-local-variable t) (put 'which-func-current 'risky-local-variable t) @@ -31856,7 +31707,7 @@ Zone out, completely. ;;;;;; "leim/quail/vntelex.el" "leim/quail/vnvni.el" "leim/quail/welsh.el" ;;;;;; "loadup.el" "mail/blessmail.el" "mail/mailheader.el" "mail/mspools.el" ;;;;;; "mail/rfc2368.el" "mail/rfc822.el" "mail/rmail-spam-filter.el" -;;;;;; "mail/rmailedit.el" "mail/rmailkwd.el" "mail/rmailmm.el" +;;;;;; "mail/rmail.el" "mail/rmailedit.el" "mail/rmailkwd.el" "mail/rmailmm.el" ;;;;;; "mail/rmailmsc.el" "mail/rmailsort.el" "mail/rmailsum.el" ;;;;;; "mail/undigest.el" "mh-e/mh-acros.el" "mh-e/mh-alias.el" ;;;;;; "mh-e/mh-buffers.el" "mh-e/mh-compat.el" "mh-e/mh-funcs.el" @@ -31947,8 +31798,8 @@ Zone out, completely. ;;;;;; "vc/ediff-ptch.el" "vc/ediff-vers.el" "vc/ediff-wind.el" ;;;;;; "vc/pcvs-info.el" "vc/pcvs-parse.el" "vc/pcvs-util.el" "vc/vc-dav.el" ;;;;;; "vcursor.el" "vt-control.el" "vt100-led.el" "w32-common-fns.el" -;;;;;; "w32-fns.el" "w32-vars.el" "x-dnd.el") (21467 27179 976956 -;;;;;; 799000)) +;;;;;; "w32-fns.el" "w32-vars.el" "x-dnd.el") (21547 54610 44674 +;;;;;; 534000)) ;;;*** diff --git a/lisp/loadup.el b/lisp/loadup.el index b911e9f1768..fd34648bb30 100644 --- a/lisp/loadup.el +++ b/lisp/loadup.el @@ -119,13 +119,13 @@ (let ((macroexp--pending-eager-loads '(skip))) (load "emacs-lisp/pcase")) ;; Re-load macroexp so as to eagerly macro-expand its uses of pcase. - (load "emacs-lisp/macroexp")) + (let ((max-lisp-eval-depth (* 2 max-lisp-eval-depth))) + (load "emacs-lisp/macroexp"))) (load "cus-face") (load "faces") ; after here, `defface' may be used. (load "button") -(load "startup") ;; We don't want to store loaddefs.el in the repository because it is ;; a generated file; but it is required in order to compile the lisp files. @@ -192,6 +192,7 @@ (load "indent") (load "frame") +(load "startup") (load "term/tty-colors") (load "font-core") ;; facemenu must be loaded before font-lock, because `facemenu-keymap' @@ -216,6 +217,7 @@ (load "textmodes/paragraphs") (load "progmodes/prog-mode") (load "emacs-lisp/lisp-mode") +(load "progmodes/elisp-mode") (load "textmodes/text-mode") (load "textmodes/fill") (load "newcomment") @@ -250,7 +252,6 @@ (load "w32-vars") (load "term/w32-win") (load "disp-table") - (load "w32-common-fns") (when (eq system-type 'windows-nt) (load "w32-fns") (load "ls-lisp") diff --git a/lisp/ls-lisp.el b/lisp/ls-lisp.el index 2ff0a3a230b..03ee0d25cce 100644 --- a/lisp/ls-lisp.el +++ b/lisp/ls-lisp.el @@ -113,6 +113,47 @@ update the dependent variables." :type 'boolean :group 'ls-lisp) +(defcustom ls-lisp-use-string-collate + (cond ((memq ls-lisp-emulation '(MacOS UNIX)) nil) + (t t)) ; GNU/Linux or MS-Windows emulate GNU ls + "Non-nil causes ls-lisp to sort files in locale-dependent collation order. + +A value of nil means use ordinary string comparison (see `compare-strings') +for sorting files. A non-nil value uses `string-collate-lessp' instead, +which more closely emulates what GNU `ls' does. + +On GNU/Linux systems, if the locale's codeset specifies UTF-8, as +in \"en_US.UTF-8\", the collation order follows the Unicode +Collation Algorithm (UCA), which places together file names that +differ only in punctuation characters. On MS-Windows, customize +the option `ls-lisp-UCA-like-collation' to a non-nil value to get +similar behavior." + :version "25.1" + :set-after '(ls-lisp-emulation) + :type 'boolean + :group 'ls-lisp) + +(defcustom ls-lisp-UCA-like-collation t + "Non-nil means force ls-lisp use a collation order compatible with UCA. + +UCA is the Unicode Collation Algorithm. GNU/Linux systems automatically +follow it in their string-collation routines if the locale specifies +UTF-8 as its codeset. On MS-Windows, customize this option to a non-nil +value to get similar behavior. + +When this option is non-nil, and `ls-lisp-use-string-collate' is also +non-nil, the collation order produced on MS-Windows will ignore +punctuation and symbol characters, which will, for example, place +\`.foo' near `foo'. See the documentation of `string-collate-lessp' +and `w32-collate-ignore-punctuation' for more details. + +This option is ignored on platforms other than MS-Windows; to +control the collation ordering of the file names on those other +systems, set your locale instead." + :version "25.1" + :type 'boolean + :group 'ls-lisp) + (defcustom ls-lisp-dirs-first (eq ls-lisp-emulation 'MS-Windows) "Non-nil causes ls-lisp to sort directories first in any ordering. \(Or last if it is reversed.) Follows Microsoft Windows Explorer." @@ -232,7 +273,7 @@ The Lisp emulation does not run any external programs or shells. It supports ordinary shell wildcards if `ls-lisp-support-shell-wildcards' is non-nil; otherwise, it interprets wildcards as regular expressions to match file names. It does not support all `ls' switches -- those -that work are: A a B C c F G g h i n R r S s t U u X. The l switch +that work are: A a B C c F G g h i n R r S s t U u v X. The l switch is assumed to be always present and cannot be turned off." (if ls-lisp-use-insert-directory-program (funcall orig-fun @@ -495,11 +536,81 @@ Responds to the window width as ls should but may not!" result)) (defsubst ls-lisp-string-lessp (s1 s2) - "Return t if string S1 is less than string S2 in lexicographic order. + "Return t if string S1 should sort before string S2. +Case is significant if `ls-lisp-ignore-case' is nil. +Uses `string-collate-lessp' if `ls-lisp-use-string-collate' is non-nil, +\`compare-strings' otherwise. +On GNU/Linux systems, if the locale specifies UTF-8 as the codeset, +the sorting order will place together file names that differ only +by punctuation characters, like `.emacs' and `emacs'. To have a +similar behavior on MS-Windows, customize `ls-lisp-UCA-like-collation' +to a non-nil value." + (let ((w32-collate-ignore-punctuation ls-lisp-UCA-like-collation)) + (if ls-lisp-use-string-collate + (string-collate-lessp s1 s2 nil ls-lisp-ignore-case) + (let ((u (compare-strings s1 0 nil s2 0 nil ls-lisp-ignore-case))) + (and (numberp u) (< u 0)))))) + +(defun ls-lisp-version-lessp (s1 s2) + "Return t if versioned string S1 should sort before versioned string S2. + Case is significant if `ls-lisp-ignore-case' is nil. -Unibyte strings are converted to multibyte for comparison." - (let ((u (compare-strings s1 0 nil s2 0 nil ls-lisp-ignore-case))) - (and (numberp u) (< u 0)))) +This is the same as string-lessp (with the exception of case +insensitivity), but sequences of digits are compared numerically, +as a whole, in the same manner as the `strverscmp' function available +in some standard C libraries does." + (let ((i1 0) + (i2 0) + (len1 (length s1)) + (len2 (length s2)) + (val 0) + ni1 ni2 e1 e2 found-2-numbers-p) + (while (and (< i1 len1) (< i2 len2) (zerop val)) + (unless found-2-numbers-p + (setq ni1 (string-match "[0-9]+" s1 i1) + e1 (match-end 0)) + (setq ni2 (string-match "[0-9]+" s2 i2) + e2 (match-end 0))) + (cond + ((and ni1 ni2) + (cond + ((and (> ni1 i1) (> ni2 i2)) + ;; Compare non-numerical part as strings. + (setq val (compare-strings s1 i1 ni1 s2 i2 ni2 ls-lisp-ignore-case) + i1 ni1 + i2 ni2 + found-2-numbers-p t)) + ((and (= ni1 i1) (= ni2 i2)) + (setq found-2-numbers-p nil) + ;; Compare numerical parts as integral and/or fractional parts. + (let* ((sub1 (substring s1 ni1 e1)) + (sub2 (substring s2 ni2 e2)) + ;; "Fraction" is a numerical sequence with leading zeros. + (fr1 (string-match "\\`0+" sub1)) + (fr2 (string-match "\\`0+" sub2))) + (cond + ((and fr1 fr2) ; two fractions, the shortest wins + (setq val (- val (- (length sub1) (length sub2))))) + (fr1 ; a fraction is always less than an integral + (setq val (- ni1))) + (fr2 + (setq val ni2))) + (if (zerop val) ; fall back on numerical comparison + (setq val (- (string-to-number sub1) + (string-to-number sub2)))) + (setq i1 e1 + i2 e2))) + (t + (setq val (compare-strings s1 i1 nil s2 i2 nil ls-lisp-ignore-case) + i1 len1 + i2 len2)))) + (t (setq val (compare-strings s1 i1 nil s2 i2 nil ls-lisp-ignore-case) + i1 len1 + i2 len2))) + (and (eq val t) (setq val 0))) + (if (zerop val) + (setq val (- len1 len2))) + (< val 0))) (defun ls-lisp-handle-switches (file-alist switches) "Return new FILE-ALIST sorted according to SWITCHES. @@ -527,6 +638,9 @@ SWITCHES is a list of characters. Default sorting is alphabetic." (ls-lisp-string-lessp (ls-lisp-extension (car x)) (ls-lisp-extension (car y))))) + ((memq ?v switches) + (lambda (x y) ; sorted by version number + (ls-lisp-version-lessp (car x) (car y)))) (t (lambda (x y) ; sorted alphabetically (ls-lisp-string-lessp (car x) (car y)))))))) diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el index f76920449f2..5f3628b7131 100644 --- a/lisp/mail/rmail.el +++ b/lisp/mail/rmail.el @@ -4684,7 +4684,7 @@ With prefix argument N moves forward N messages with these labels. ;;;*** -;;;### (autoloads nil "rmailmm" "rmailmm.el" "4904dafb4e3b7b456c14e63d2dc9163d") +;;;### (autoloads nil "rmailmm" "rmailmm.el" "6446c799d49a6df8519b11bfe2e3cbea") ;;; Generated autoloads from rmailmm.el (autoload 'rmail-mime "rmailmm" "\ diff --git a/lisp/mail/rmailmm.el b/lisp/mail/rmailmm.el index 2c625f67e38..29f7d449a8b 100644 --- a/lisp/mail/rmailmm.el +++ b/lisp/mail/rmailmm.el @@ -131,6 +131,26 @@ automatically display the image in the buffer." :version "23.2" :group 'rmail-mime) +(defcustom rmail-mime-render-html-function + (cond ((fboundp 'libxml-parse-html-region) 'rmail-mime-render-html-shr) + ((executable-find "lynx") 'rmail-mime-render-html-lynx) + (t nil)) + "Function to convert HTML to text. Called with buffer containing HTML +extracted from message in a temporary buffer. Converts to text in current +buffer. If NIL, display HTML source." + :group 'rmail + :version "25.1" + :type '(choice function (const nil))) + +(defcustom rmail-mime-prefer-html + ;; Default to preferring HTML parts, but only if we have a renderer + (if rmail-mime-render-html-function t nil) + "If non-nil, default to showing HTML part rather than text part +when both are available" + :group 'rmail + :version "25.1" + :type 'boolean) + ;;; End of user options. ;;; Global variables that always have let-binding when referred. @@ -150,6 +170,10 @@ processing MIME.") The value is usually nil, and bound to non-nil while inserting MIME entities.") +(defvar rmail-mime-searching nil + "Bound to T inside `rmail-search-mime-message' to suppress expensive +operations such as HTML decoding") + ;;; MIME-entity object (defun rmail-mime-entity (type disposition transfer-encoding @@ -631,6 +655,72 @@ HEADER is a header component of a MIME-entity object (see (insert-image (create-image data (cdr bulk-data) t)) (insert "\n"))) +(defun rmail-mime-insert-html (entity) + "Decode, render, and insert html from MIME-entity ENTITY." + (let ((body (rmail-mime-entity-body entity)) + (transfer-encoding (rmail-mime-entity-transfer-encoding entity)) + (charset (cdr (assq 'charset (cdr (rmail-mime-entity-type entity))))) + (buffer (current-buffer)) + coding-system) + (if charset (setq coding-system (coding-system-from-name charset))) + (or (and coding-system (coding-system-p coding-system)) + (setq coding-system 'undecided)) + (with-temp-buffer + (set-buffer-multibyte nil) + (setq buffer-undo-list t) + (insert-buffer-substring rmail-mime-mbox-buffer + (aref body 0) (aref body 1)) + (cond ((string= transfer-encoding "base64") + (ignore-errors (base64-decode-region (point-min) (point-max)))) + ((string= transfer-encoding "quoted-printable") + (quoted-printable-decode-region (point-min) (point-max)))) + (decode-coding-region (point-min) (point) coding-system) + (if (and + (or (not rmail-mime-coding-system) (consp rmail-mime-coding-system)) + (not (eq (coding-system-base coding-system) 'us-ascii))) + (setq rmail-mime-coding-system coding-system)) + ;; Convert html in temporary buffer to text and insert in original buffer + (let ((source-buffer (current-buffer))) + (with-current-buffer buffer + (let ((start (point))) + (if rmail-mime-render-html-function + (funcall rmail-mime-render-html-function source-buffer) + (insert-buffer-substring source-buffer)) + (rmail-mime-fix-inserted-faces start))))))) + +(defun rmail-mime-render-html-shr (source-buffer) + (let ((dom (with-current-buffer source-buffer + (libxml-parse-html-region (point-min) (point-max)))) + ;; Image retrieval happens asynchronously, but meanwhile + ;; `rmail-swap-buffers' may have been run, leaving + ;; `shr-image-fetched' trying to insert the image in the wrong buffer. + (shr-inhibit-images t) + ;; Bind shr-width to nil to force shr-insert-document break + ;; the lines at the window margin. The default is + ;; fill-column, whose default value is too small, and screws + ;; up display of the quoted messages. + shr-width) + (shr-insert-document dom))) + +(defun rmail-mime-render-html-lynx (source-buffer) + (let ((destination-buffer (current-buffer))) + (with-current-buffer source-buffer + (call-process-region (point-min) (point-max) + "lynx" nil destination-buffer nil + "-stdin" "-dump" "-force_html" + "-dont_wrap_pre" "-width=70")))) + +;; Put font-lock-face properties matching face properties on text +;; inserted, e.g., by shr, in text from START to point. +(defun rmail-mime-fix-inserted-faces (start) + (while (< start (point)) + (let ((face (get-text-property start 'face)) + (next (next-single-property-change + start 'face (current-buffer) (point)))) + (if face ; anything to do? + (put-text-property start next 'font-lock-face face)) + (setq start next)))) + (defun rmail-mime-toggle-button (button) "Hide or show the body of the MIME-entity associated with BUTTON." (save-excursion @@ -675,6 +765,8 @@ directly." (setq size (/ (* size 7) 3))))))) (cond + ((string-match "text/html" content-type) + (setq type 'html)) ((string-match "text/" content-type) (setq type 'text)) ((string-match "image/\\(.*\\)" content-type) @@ -784,6 +876,12 @@ directly." (if (rmail-mime-display-body new) (cond ((eq (cdr bulk-data) 'text) (rmail-mime-insert-decoded-text entity)) + ((eq (cdr bulk-data) 'html) + ;; Render HTML if display single message, but if searching + ;; don't render but just search HTML itself. + (if rmail-mime-searching + (rmail-mime-insert-decoded-text entity) + (rmail-mime-insert-html entity))) ((cdr bulk-data) (rmail-mime-insert-image entity)) (t @@ -918,18 +1016,28 @@ The other arguments are the same as `rmail-mime-multipart-handler'." (setq entities (nreverse entities)) (if (string-match "alternative" subtype) ;; Find the best entity to show, and hide all the others. - (let (best second) + ;; If rmail-mime-prefer-html is set, html is best, then plain. + ;; If not, plain is best, then html. + ;; Then comes any other text part. + ;; If thereto of the same type, earlier entities in the message (later + ;; in the reverse list) are preferred. + (let (best best-priority) (dolist (child entities) (if (string= (or (car (rmail-mime-entity-disposition child)) (car content-disposition)) "inline") - (if (string-match "text/plain" - (car (rmail-mime-entity-type child))) - (setq best child) - (if (string-match "text/.*" - (car (rmail-mime-entity-type child))) - (setq second child))))) - (or best (not second) (setq best second)) + (let ((type (car (rmail-mime-entity-type child)))) + (if (string-match "text/" type) + ;; Consider all inline text parts + (let ((priority + (cond ((string-match "text/html" type) + (if rmail-mime-prefer-html 1 2)) + ((string-match "text/plain" type) + (if rmail-mime-prefer-html 2 1)) + (t 3)))) + (if (or (null best) (<= priority best-priority)) + (setq best child + best-priority priority))))))) (dolist (child entities) (unless (eq best child) (aset (rmail-mime-entity-body child) 2 nil) @@ -1114,6 +1222,8 @@ modified." (cond ((string-match "multipart/.*" (car content-type)) (save-restriction (narrow-to-region (1- end) (point-max)) + (if (zerop (length parse-tag)) ; top level of message + (aset new 1 (aset tagline 2 nil))) ; don't show tagline (setq children (rmail-mime-process-multipart content-type content-disposition @@ -1134,6 +1244,12 @@ modified." (aset (rmail-mime-entity-tagline msg) 2 nil) (setq children (list msg) handler 'rmail-mime-insert-multipart)))) + ((and is-inline (string-match "text/html" (car content-type))) + ;; Display tagline, so part can be detached + (aset new 1 (aset tagline 2 t)) + (aset new 2 (aset body 2 t)) ; display body also. + (setq handler 'rmail-mime-insert-bulk)) + ;; Inline non-HTML text ((and is-inline (string-match "text/" (car content-type))) ;; Don't need a tagline. (aset new 1 (aset tagline 2 nil)) @@ -1186,10 +1302,6 @@ If an error occurs, return an error message string." (new (aref (rmail-mime-entity-display entity) 1))) ;; Show header. (aset new 0 (aset (rmail-mime-entity-header entity) 2 t)) - ;; Show tagline if and only if body is not shown. - (if (aref new 2) - (aset new 1 (aset (rmail-mime-entity-tagline entity) 2 nil)) - (aset new 1 (aset (rmail-mime-entity-tagline entity) 2 t))) entity))) (error (format "%s" err))))) @@ -1390,7 +1502,8 @@ This is the usual value of `rmail-insert-mime-forwarded-message-function'." "Function to set in `rmail-search-mime-message-function' (which see)." (save-restriction (narrow-to-region (rmail-msgbeg msg) (rmail-msgend msg)) - (let* ((rmail-mime-mbox-buffer (current-buffer)) + (let* ((rmail-mime-searching t) ; mark inside search + (rmail-mime-mbox-buffer (current-buffer)) (rmail-mime-view-buffer rmail-view-buffer) (header-end (save-excursion (re-search-forward "^$" nil 'move) (point))) diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el index 57acbbe648e..5ae5da9aff2 100644 --- a/lisp/menu-bar.el +++ b/lisp/menu-bar.el @@ -470,17 +470,14 @@ [paste-from-menu]) ;; ns-win.el said: Change text to be more consistent with ;; surrounding menu items `paste', etc." - `(menu-item ,(if (featurep 'ns) "Select and Paste" - "Paste from Kill Menu") yank-menu + `(menu-item ,(if (featurep 'ns) "Select and Paste" "Paste from Kill Menu") + yank-menu :enable (and (cdr yank-menu) (not buffer-read-only)) :help "Choose a string from the kill ring and paste it")) (bindings--define-key menu [paste] '(menu-item "Paste" yank :enable (and (or - ;; Emacs compiled --without-x (or --with-ns) - ;; doesn't have x-selection-exists-p. - (and (fboundp 'x-selection-exists-p) - (x-selection-exists-p 'CLIPBOARD)) + (gui-call gui-selection-exists-p 'CLIPBOARD) (if (featurep 'ns) ; like paste-from-menu (cdr yank-menu) kill-ring)) @@ -537,27 +534,26 @@ '(and mark-active (not buffer-read-only))) (put 'clipboard-kill-ring-save 'menu-enable 'mark-active) (put 'clipboard-yank 'menu-enable - '(and (or (not (fboundp 'x-selection-exists-p)) - (x-selection-exists-p) - (x-selection-exists-p 'CLIPBOARD)) + '(and (or (gui-call gui-selection-exists-p 'PRIMARY) + (gui-call gui-selection-exists-p 'CLIPBOARD)) (not buffer-read-only))) (defun clipboard-yank () "Insert the clipboard contents, or the last stretch of killed text." (interactive "*") - (let ((x-select-enable-clipboard t)) + (let ((gui-select-enable-clipboard t)) (yank))) (defun clipboard-kill-ring-save (beg end &optional region) - "Copy region to kill ring, and save in the X clipboard." + "Copy region to kill ring, and save in the GUI's clipboard." (interactive "r\np") - (let ((x-select-enable-clipboard t)) + (let ((gui-select-enable-clipboard t)) (kill-ring-save beg end region))) (defun clipboard-kill-region (beg end &optional region) - "Kill the region, and save it in the X clipboard." + "Kill the region, and save it in the GUI's clipboard." (interactive "r\np") - (let ((x-select-enable-clipboard t)) + (let ((gui-select-enable-clipboard t)) (kill-region beg end region))) (defun menu-bar-enable-clipboard () @@ -903,19 +899,17 @@ by \"Save Options\" in Custom buffers.") '(menu-item "Horizontal" menu-bar-horizontal-scroll-bar :help "Horizontal scroll bar" - :visible (display-graphic-p) - :button (:radio . (eq (cdr (assq 'horizontal-scroll-bars - (frame-parameters))) - t)))) + :visible (horizontal-scroll-bars-available-p) + :button (:radio . (cdr (assq 'horizontal-scroll-bars + (frame-parameters)))))) (bindings--define-key menu [none-horizontal] '(menu-item "None-horizontal" menu-bar-no-horizontal-scroll-bar :help "Turn off horizontal scroll bars" - :visible (display-graphic-p) - :button (:radio . (eq (cdr (assq 'horizontal-scroll-bars - (frame-parameters))) - nil)))) + :visible (horizontal-scroll-bars-available-p) + :button (:radio . (not (cdr (assq 'horizontal-scroll-bars + (frame-parameters))))))) (bindings--define-key menu [right] '(menu-item "On the Right" @@ -1332,9 +1326,6 @@ mail status in mode line")) (bindings--define-key menu [life] '(menu-item "Life" life :help "Watch how John Conway's cellular automaton evolves")) - (bindings--define-key menu [land] - '(menu-item "Landmark" landmark - :help "Watch a neural-network robot learn landmarks")) (bindings--define-key menu [hanoi] '(menu-item "Towers of Hanoi" hanoi :help "Watch Towers-of-Hanoi puzzle solved by Emacs")) diff --git a/lisp/mh-e/ChangeLog b/lisp/mh-e/ChangeLog index 96a9b19ab78..8008f07c700 100644 --- a/lisp/mh-e/ChangeLog +++ b/lisp/mh-e/ChangeLog @@ -1,3 +1,21 @@ +2014-09-30 Bill Wohler <wohler@newt.com> + + Release MH-E version 8.6. + + * mh-e.el (Version, mh-version): Update for release 8.6. + +2014-09-30 Mike Kupfer <m.kupfer@acm.org> + + * mh-comp.el (mh-insert-x-face): Ensure that mh-x-face-file is a + string before trying to use it (closes SF #474). + (mh-bare-components): New function to create a temporary initial + components file; replaces mh-find-components. Improve the temp + folder and file names as per a suggestion from Bill Wohler. Also + address XEmacs compatibility issues: use mm-make-temp-file instead + of make-temp-file, and only pass one argument to delete-directory. + (mh-edit-again, mh-send-sub): Use mh-bare-components instead of + mh-find-components (partially closes SF #468). + 2014-05-09 Glenn Morris <rgm@gnu.org> * mh-e.el (mh-variants): Use file-accessible-directory-p. diff --git a/lisp/mh-e/mh-acros.el b/lisp/mh-e/mh-acros.el index 7abd16bd832..21526c80d0a 100644 --- a/lisp/mh-e/mh-acros.el +++ b/lisp/mh-e/mh-acros.el @@ -46,6 +46,10 @@ ;;; Compatibility +;; TODO: Replace `cl' with `cl-lib'. +;; `cl' is deprecated in Emacs 24.3. Use `cl-lib' instead. However, +;; we'll likely have to insert `cl-' before each use of a Common Lisp +;; function. ;;;###mh-autoload (defmacro mh-require-cl () "Macro to load \"cl\" if needed. diff --git a/lisp/mh-e/mh-comp.el b/lisp/mh-e/mh-comp.el index 95c543db248..35572c1eaaf 100644 --- a/lisp/mh-e/mh-comp.el +++ b/lisp/mh-e/mh-comp.el @@ -411,6 +411,7 @@ See also `mh-send'." (interactive (list (mh-get-msg-num t))) (let* ((from-folder mh-current-folder) (config (current-window-configuration)) + (components-file (mh-bare-components)) (draft (cond ((and mh-draft-folder (equal from-folder mh-draft-folder)) (pop-to-buffer (find-file-noselect (mh-msg-filename message)) @@ -467,7 +468,8 @@ See also `mh-send'." ;; Text field, that's an easy case (t (mh-modify-header-field field value)))))) - (mh-components-to-list (mh-find-components))) + (mh-components-to-list components-file)) + (delete-file components-file) (goto-char (point-min)) (save-buffer) (mh-compose-and-send-mail @@ -885,22 +887,6 @@ Optional argument BUFFER can be used to specify the buffer." (t nil)))) -(defun mh-find-components () - "Return the path to the components file." - (let (components) - (cond - ((file-exists-p - (setq components - (expand-file-name mh-comp-formfile mh-user-path))) - components) - ((file-exists-p - (setq components - (expand-file-name mh-comp-formfile mh-lib))) - components) - (t - (error "Can't find %s in %s or %s" - mh-comp-formfile mh-user-path mh-lib))))) - (defun mh-send-sub (to cc subject config) "Do the real work of composing and sending a letter. Expects the TO, CC, and SUBJECT fields as arguments. @@ -910,8 +896,8 @@ CONFIG is the window configuration before sending mail." (message "Composing a message...") (let ((draft (mh-read-draft "message" - (mh-find-components) - nil))) + (mh-bare-components) + t))) (mh-insert-fields "To:" to "Subject:" subject "Cc:" cc) (goto-char (point-max)) (mh-compose-and-send-mail draft "" folder msg-num @@ -920,6 +906,29 @@ CONFIG is the window configuration before sending mail." (mh-letter-mode-message) (mh-letter-adjust-point)))) +(defun mh-bare-components () + "Generate a temporary, clean components file and return its path." + ;; Let comp(1) create the skeleton for us. This is particularly + ;; important with nmh-1.5, because its default "components" needs + ;; some processing before it can be used. Unfortunately, comp(1) + ;; doesn't have a -build option. So, to avoid the possibility of + ;; clobbering an existing draft, create a temporary directory and + ;; use it as the drafts folder. Then copy the skeleton to a regular + ;; temp file, and return the regular temp file. + (let (new + (temp-folder (mm-make-temp-file + (concat mh-user-path "draftfolder.") t))) + (mh-exec-cmd "comp" "-nowhatnowproc" + "-draftfolder" (format "+%s" + (file-name-nondirectory temp-folder)) + (if (stringp mh-comp-formfile) + (list "-form" mh-comp-formfile))) + (setq new (mm-make-temp-file "comp.")) + (rename-file (concat temp-folder "/" "1") new t) + (delete-file (concat temp-folder "/" ".mh_sequences")) + (delete-directory temp-folder) + new)) + (defun mh-read-draft (use initial-contents delete-contents-file) "Read draft file into a draft buffer and make that buffer the current one. @@ -1069,7 +1078,8 @@ The versions of MH-E, Emacs, and MH are shown." (defun mh-insert-x-face () "Append X-Face, Face or X-Image-URL field to header. If the field already exists, this function does nothing." - (when (and (file-exists-p mh-x-face-file) + (when (and (stringp mh-x-face-file) + (file-exists-p mh-x-face-file) (file-readable-p mh-x-face-file)) (save-excursion (unless (or (mh-position-on-field "X-Face") diff --git a/lisp/mh-e/mh-e.el b/lisp/mh-e/mh-e.el index 7368c0b9ffb..06f48e95c4b 100644 --- a/lisp/mh-e/mh-e.el +++ b/lisp/mh-e/mh-e.el @@ -5,7 +5,7 @@ ;; Author: Bill Wohler <wohler@newt.com> ;; Maintainer: Bill Wohler <wohler@newt.com> -;; Version: 8.5+bzr +;; Version: 8.6 ;; Keywords: mail ;; This file is part of GNU Emacs. @@ -127,7 +127,7 @@ ;; Try to keep variables local to a single file. Provide accessors if ;; variables are shared. Use this section as a last resort. -(defconst mh-version "8.5+bzr" "Version number of MH-E.") +(defconst mh-version "8.6" "Version number of MH-E.") ;; Variants diff --git a/lisp/minibuffer.el b/lisp/minibuffer.el index f998843cd85..fb74af2e0df 100644 --- a/lisp/minibuffer.el +++ b/lisp/minibuffer.el @@ -2106,7 +2106,11 @@ The completion method is determined by `completion-at-point-functions'." (completion-in-region start end collection (plist-get plist :predicate)))) ;; Maybe completion already happened and the function returned t. - (_ (cdr res))))) + (_ + (when (cdr res) + (message "Warning: %S failed to return valid completion data!" + (car res))) + (cdr res))))) (defun completion-help-at-point () "Display the completions on the text around point. diff --git a/lisp/mouse-copy.el b/lisp/mouse-copy.el index b8bd339acb3..ddfb879318f 100644 --- a/lisp/mouse-copy.el +++ b/lisp/mouse-copy.el @@ -147,7 +147,7 @@ If you have the bug (or the real fix :-), please let me know." ;; Third, set the selection. ;; (setq me-beg beg me-end end me-range range) ; for debugging (set-buffer end-buffer) - (x-set-selection 'SECONDARY (buffer-substring beg end))))) + (gui-set-selection 'SECONDARY (buffer-substring beg end))))) (defun mouse-drag-secondary-pasting (start-event) @@ -203,7 +203,7 @@ by johnh@ficus.cs.ucla.edu." (kill-region (overlay-start mouse-secondary-overlay) (overlay-end mouse-secondary-overlay))) ;; (delete-overlay mouse-secondary-overlay) - ;; (x-set-selection 'SECONDARY nil) + ;; (gui-set-selection 'SECONDARY nil) ;; (setq mouse-secondary-overlay nil) ) diff --git a/lisp/mouse.el b/lisp/mouse.el index a10f4d67593..f569ec3577d 100644 --- a/lisp/mouse.el +++ b/lisp/mouse.el @@ -396,7 +396,16 @@ must be one of the symbols `header', `mode', or `vertical'." ;; Check whether header-line can be dragged at all. (if (window-at-side-p window 'top) (setq draggable nil) - (setq height (/ (window-header-line-height window) 2)) + ;; window-pixel-edges includes the header and mode lines, so + ;; we need to account for that when calculating window growth. + ;; On GUI frames, assume the mouse is approximately in the + ;; middle of the header/mode line, so we need only half the + ;; height in pixels. + (setq height + (cond + ((display-graphic-p frame) + (/ (window-header-line-height window) 2)) + (t (window-header-line-height window)))) (setq window (window-in-direction 'above window t)))) ((eq line 'mode) ;; Check whether mode-line can be dragged at all. @@ -411,7 +420,11 @@ must be one of the symbols `header', `mode', or `vertical'." (eq minibuffer-window (active-minibuffer-window)))))) (setq draggable nil) - (setq height (/ (window-mode-line-height window) 2)))) + (setq height + (cond + ((display-graphic-p frame) + (/ (window-mode-line-height window) 2)) + (t (window-mode-line-height window)))))) ((eq line 'vertical) ;; Get the window to adjust for the vertical case. If the scroll ;; bar is on the window's right or we drag a vertical divider, @@ -1055,24 +1068,7 @@ regardless of where you click." (let (select-active-regions) (deactivate-mark))) (or mouse-yank-at-point (mouse-set-point click)) - (let ((primary - (if (fboundp 'x-get-selection-value) - (if (eq (framep (selected-frame)) 'w32) - ;; MS-Windows emulates PRIMARY in x-get-selection, but not - ;; in x-get-selection-value (the latter only accesses the - ;; clipboard). So try PRIMARY first, in case they selected - ;; something with the mouse in the current Emacs session. - (or (x-get-selection 'PRIMARY) - (x-get-selection-value)) - ;; Else MS-DOS or X. - ;; On X, x-get-selection-value supports more formats and - ;; encodings, so use it in preference to x-get-selection. - (or (x-get-selection-value) - (x-get-selection 'PRIMARY))) - ;; FIXME: What about xterm-mouse-mode etc.? - (x-get-selection 'PRIMARY)))) - (unless primary - (error "No selection is available")) + (let ((primary (gui-get-primary-selection))) (push-mark (point)) (insert-for-yank primary))) @@ -1259,7 +1255,7 @@ This must be bound to a mouse drag event." (if (numberp (posn-point posn)) (setq beg (posn-point posn))) (move-overlay mouse-secondary-overlay beg (posn-point end)) - (x-set-selection + (gui-set-selection 'SECONDARY (buffer-substring (overlay-start mouse-secondary-overlay) (overlay-end mouse-secondary-overlay)))))) @@ -1334,13 +1330,13 @@ The function returns a non-nil value if it creates a secondary selection." (if (marker-position mouse-secondary-start) (save-window-excursion (delete-overlay mouse-secondary-overlay) - (x-set-selection 'SECONDARY nil) + (gui-set-selection 'SECONDARY nil) (select-window start-window) (save-excursion (goto-char mouse-secondary-start) (sit-for 1) nil)) - (x-set-selection + (gui-set-selection 'SECONDARY (buffer-substring (overlay-start mouse-secondary-overlay) (overlay-end mouse-secondary-overlay))))))))) @@ -1473,7 +1469,7 @@ CLICK position, kill the secondary selection." (setq str (buffer-substring (overlay-start mouse-secondary-overlay) (overlay-end mouse-secondary-overlay))) (> (length str) 0) - (x-set-selection 'SECONDARY str)))) + (gui-set-selection 'SECONDARY str)))) (defcustom mouse-buffer-menu-maxlen 20 diff --git a/lisp/mpc.el b/lisp/mpc.el index ab3fd6e7518..3dac7f99014 100644 --- a/lisp/mpc.el +++ b/lisp/mpc.el @@ -1,4 +1,4 @@ -;;; mpc.el --- A client for the Music Player Daemon -*- coding: utf-8; lexical-binding: t -*- +;;; mpc.el --- A client for the Music Player Daemon -*- lexical-binding: t -*- ;; Copyright (C) 2006-2014 Free Software Foundation, Inc. @@ -891,9 +891,7 @@ If PLAYLIST is t or nil or missing, use the main playlist." :type '(choice (const nil) directory)) (defcustom mpc-data-directory - (if (and (not (file-directory-p "~/.mpc")) - (file-directory-p "~/.emacs.d")) - "~/.emacs.d/mpc" "~/.mpc") + (locate-user-emacs-file "mpc" ".mpc") "Directory where MPC.el stores auxiliary data." :type 'directory) @@ -1807,7 +1805,9 @@ A value of t means the main playlist.") ;; Maintain the volume. (setq mpc-volume (mpc-volume-widget - (string-to-number (cdr (assq 'volume mpc-status)))))) + (string-to-number (cdr (assq 'volume mpc-status))))) + (let ((status-buf (mpc-proc-buffer (mpc-proc) 'status))) + (when status-buf (with-current-buffer status-buf (force-mode-line-update))))) (defvar mpc-volume-step 5) @@ -2036,7 +2036,7 @@ This is used so that they can be compared with `eq', which is needed for (match-string 1))))) (cond ((null re) (posn-set-point posn)) - ((null sn) (error "This song is not in the playlist")) + ((null sn) (user-error "This song is not in the playlist")) ((null (with-current-buffer plbuf (re-search-forward re nil t))) ;; song-file only appears once in the playlist: no ambiguity, ;; we're good to go! @@ -2346,7 +2346,7 @@ This is used so that they can be compared with `eq', which is needed for (if (mpc-playlist-add) (if (member (cdr (assq 'state (mpc-cmd-status))) '("stop")) (mpc-cmd-play)) - (error "Don't know what to play")))) + (user-error "Don't know what to play")))) (defun mpc-next () "Jump to the next song in the queue." @@ -2610,7 +2610,8 @@ This is used so that they can be compared with `eq', which is needed for (mpc-cmd-move (let ((poss '())) (dotimes (i (length songs)) (push (+ i (length pl)) poss)) - (nreverse poss)) dest-pos mpc-songs-playlist) + (nreverse poss)) + dest-pos mpc-songs-playlist) (message "Added %d songs" (length songs))))) (mpc-songs-refresh)) (t diff --git a/lisp/msb.el b/lisp/msb.el index 166c6c61e30..474d76bf6ca 100644 --- a/lisp/msb.el +++ b/lisp/msb.el @@ -1064,7 +1064,7 @@ variable `msb-menu-cond'." list)) (defun msb--make-keymap-menu (raw-menu) - (let ((end (cons '(nil) 'menu-bar-select-buffer)) + (let ((end 'menu-bar-select-buffer) (mcount 0)) (mapcar (lambda (sub-menu) @@ -1105,13 +1105,12 @@ variable `msb-menu-cond'." (setcdr (nthcdr msb-max-menu-items frames) nil)) (setq frames-menu (nconc - (list 'frame f-title '(nil) 'keymap f-title) + (list 'frame f-title 'keymap f-title) (mapcar (lambda (frame) (nconc (list (frame-parameter frame 'name) - (frame-parameter frame 'name) - (cons nil nil)) + (frame-parameter frame 'name)) `(lambda () (interactive) (menu-bar-select-frame ,frame)))) frames))))) diff --git a/lisp/net/eww.el b/lisp/net/eww.el index f99148162e4..3329c3263c9 100644 --- a/lisp/net/eww.el +++ b/lisp/net/eww.el @@ -59,7 +59,7 @@ (defcustom eww-bookmarks-directory user-emacs-directory "Directory where bookmark files will be stored." - :version "24.5" + :version "25.1" :group 'eww :type 'string) @@ -270,7 +270,6 @@ word(s) will be searched for via `eww-search-prefix'." (setq eww-current-dom document) (let ((inhibit-read-only t) (after-change-functions nil) - (shr-width nil) (shr-target-id (url-target (url-generic-parse-url url))) (shr-external-rendering-functions '((title . eww-tag-title) diff --git a/lisp/net/newst-backend.el b/lisp/net/newst-backend.el index f67baccda7c..b7bd3d0933e 100644 --- a/lisp/net/newst-backend.el +++ b/lisp/net/newst-backend.el @@ -6,7 +6,6 @@ ;; Filename: newst-backend.el ;; URL: http://www.nongnu.org/newsticker ;; Keywords: News, RSS, Atom -;; Time-stamp: "13. Mai 2011, 20:47:05 (ulf)" ;; Package: newsticker ;; ====================================================================== @@ -47,9 +46,6 @@ "List of timers for news retrieval. This is an alist, each element consisting of (feed-name . timer).") -(defvar newsticker--download-logos nil - "If non-nil download feed logos if available.") - (defvar newsticker--sentinel-callback nil "Function called at end of `newsticker--sentinel'.") @@ -483,14 +479,6 @@ that can be added." ;; ====================================================================== ;;; Internal variables ;; ====================================================================== -(defvar newsticker--item-list nil - "List of newsticker items.") -(defvar newsticker--item-position 0 - "Actual position in list of newsticker items.") -(defvar newsticker--prev-message "There was no previous message yet!" - "Last message that the newsticker displayed.") -(defvar newsticker--scrollable-text "" - "The text which is scrolled smoothly in the echo area.") (defvar newsticker--buffer-uptodate-p nil "Tells whether the newsticker buffer is up to date.") (defvar newsticker--latest-update-time (current-time) @@ -869,59 +857,11 @@ Argument BUFFER is the buffer of the retrieval process." (node-list (save-current-buffer (set-buffer buffer) - ;; a very very dirty workaround to overcome the - ;; problems with the newest (20030621) xml.el: - ;; remove all unnecessary whitespace - (goto-char (point-min)) - (while (re-search-forward ">[ \t\r\n]+<" nil t) - (replace-match "><" nil t)) - ;; and another brutal workaround (20031105)! For some - ;; reason the xml parser does not like the colon in the - ;; doctype name "rdf:RDF" - (goto-char (point-min)) - (if (re-search-forward "<!DOCTYPE[ \t\n]+rdf:RDF" nil t) - (replace-match "<!DOCTYPE rdfColonRDF" nil t)) - ;; finally.... ~##^°!!!!! - (goto-char (point-min)) - (while (search-forward "\r\n" nil t) - (replace-match "\n" nil t)) - ;; still more brutal workarounds (20040309)! The xml - ;; parser does not like doctype rss - (goto-char (point-min)) - (if (re-search-forward "<!DOCTYPE[ \t\n]+rss[ \t\n]*>" nil t) - (replace-match "" nil t)) - ;; And another one (20050618)! (Fixed in GNU Emacs 22.0.50.18) - ;; Remove comments to avoid this xml-parsing bug: - ;; "XML files can have only one toplevel tag" - (goto-char (point-min)) - (while (search-forward "<!--" nil t) - (let ((start (match-beginning 0))) - (unless (search-forward "-->" nil t) - (error "Can't find end of comment")) - (delete-region start (point)))) - ;; And another one (20050702)! If description is HTML - ;; encoded and starts with a `<', wrap the whole - ;; description in a CDATA expression. This happened for - ;; http://www.thefreedictionary.com/_/WoD/rss.aspx?type=quote - (goto-char (point-min)) - (while (re-search-forward - "<description>\\(<img.*?\\)</description>" nil t) - (replace-match - "<description><![CDATA[ \\1 ]]></description>")) - ;; And another one (20051123)! XML parser does not - ;; like this: <yweather:location city="Frankfurt/Main" - ;; region="" country="GM" /> - ;; try to "fix" empty attributes - ;; This happened for - ;; http://xml.weather.yahoo.com/forecastrss?p=GMXX0040&u=f - (goto-char (point-min)) - (while (re-search-forward "\\(<[^>]*\\)=\"\"" nil t) - (replace-match "\\1=\" \"")) - ;; - (set-buffer-modified-p nil) + (unless (fboundp 'libxml-parse-xml-region) + (newsticker--do-xml-workarounds)) ;; check coding system (goto-char (point-min)) - (if (re-search-forward "encoding=\"\\([^\"]+\\)\"" + (if (re-search-forward "encoding=['\"]\\([^\"]+?\\)['\"]" nil t) (setq coding-system (intern (downcase (match-string 1)))) (setq coding-system @@ -939,12 +879,13 @@ Argument BUFFER is the buffer of the retrieval process." (condition-case errordata ;; The xml parser might fail ;; or the xml might be bugged - (xml-parse-region (point-min) (point-max)) + (if (fboundp 'libxml-parse-xml-region) + (list (libxml-parse-xml-region (point-min) (point-max))) + (xml-parse-region (point-min) (point-max))) (error (message "Could not parse %s: %s" (buffer-name) (cadr errordata)) (throw 'oops nil))))) (topnode (car node-list)) - (channelnode (car (xml-get-children topnode 'channel))) (imageurl nil)) ;; mark all items as obsolete (newsticker--cache-replace-age newsticker--cache @@ -971,7 +912,8 @@ Argument BUFFER is the buffer of the retrieval process." (setq imageurl (newsticker--get-logo-url-rss-0.92 topnode)) (newsticker--parse-rss-0.92 name time topnode)) ;; RSS 1.0 - ((eq 'rdf:RDF (xml-node-name topnode)) + ((or (eq 'RDF (xml-node-name topnode)) + (eq 'rdf:RDF (xml-node-name topnode))) (setq imageurl (newsticker--get-logo-url-rss-1.0 topnode)) (newsticker--parse-rss-1.0 name time topnode)) ;; RSS 2.0 @@ -986,16 +928,24 @@ Argument BUFFER is the buffer of the retrieval process." (setq imageurl (newsticker--get-logo-url-atom-0.3 topnode)) (newsticker--parse-atom-0.3 name time topnode)) ;; Atom 1.0 - ((and (eq 'feed (xml-node-name topnode)) - (string= "http://www.w3.org/2005/Atom" - (xml-get-attribute topnode 'xmlns))) + (t + ;; The test for Atom 1.0 does not work when using + ;; libxml, as with libxml the namespace attribute is + ;; not in the xml tree. For the time being we skip + ;; the check and assume that we are dealing with an + ;; Atom 1.0 feed. + + ;; (and (eq 'feed (xml-node-name topnode)) + ;; (string= "http://www.w3.org/2005/Atom" + ;; (xml-get-attribute topnode 'xmlns))) (setq imageurl (newsticker--get-logo-url-atom-1.0 topnode)) (newsticker--parse-atom-1.0 name time topnode)) ;; unknown feed type - (t - (newsticker--debug-msg "Feed type unknown: %s: %s" - (xml-node-name topnode) name) - nil)) + ;; (t + ;; (newsticker--debug-msg "Feed type unknown: %s: %s" + ;; (xml-node-name topnode) name) + ;; nil) + ) (setq something-was-added t)) (error (message "sentinelerror in %s: %s" name error-data))) @@ -1039,11 +989,67 @@ Argument BUFFER is the buffer of the retrieval process." (unless newsticker-debug (kill-buffer buffer)) ;; launch retrieval of image - (when (and imageurl newsticker--download-logos) + (when (and imageurl (boundp 'newsticker-download-logos) + newsticker-download-logos) (newsticker--image-get name imageurl))))) (when newsticker--sentinel-callback (funcall newsticker--sentinel-callback))) +(defun newsticker--do-xml-workarounds () + "Fix all issues which `xml-parse-region' could be choking on." + + ;; a very very dirty workaround to overcome the + ;; problems with the newest (20030621) xml.el: + ;; remove all unnecessary whitespace + (goto-char (point-min)) + (while (re-search-forward ">[ \t\r\n]+<" nil t) + (replace-match "><" nil t)) + ;; and another brutal workaround (20031105)! For some + ;; reason the xml parser does not like the colon in the + ;; doctype name "rdf:RDF" + (goto-char (point-min)) + (if (re-search-forward "<!DOCTYPE[ \t\n]+rdf:RDF" nil t) + (replace-match "<!DOCTYPE rdfColonRDF" nil t)) + ;; finally.... ~##^°!!!!! + (goto-char (point-min)) + (while (search-forward "\r\n" nil t) + (replace-match "\n" nil t)) + ;; still more brutal workarounds (20040309)! The xml + ;; parser does not like doctype rss + (goto-char (point-min)) + (if (re-search-forward "<!DOCTYPE[ \t\n]+rss[ \t\n]*>" nil t) + (replace-match "" nil t)) + ;; And another one (20050618)! (Fixed in GNU Emacs 22.0.50.18) + ;; Remove comments to avoid this xml-parsing bug: + ;; "XML files can have only one toplevel tag" + (goto-char (point-min)) + (while (search-forward "<!--" nil t) + (let ((start (match-beginning 0))) + (unless (search-forward "-->" nil t) + (error "Can't find end of comment")) + (delete-region start (point)))) + ;; And another one (20050702)! If description is HTML + ;; encoded and starts with a `<', wrap the whole + ;; description in a CDATA expression. This happened for + ;; http://www.thefreedictionary.com/_/WoD/rss.aspx?type=quote + (goto-char (point-min)) + (while (re-search-forward + "<description>\\(<img.*?\\)</description>" nil t) + (replace-match + "<description><![CDATA[ \\1 ]]></description>")) + ;; And another one (20051123)! XML parser does not + ;; like this: <yweather:location city="Frankfurt/Main" + ;; region="" country="GM" /> + ;; try to "fix" empty attributes + ;; This happened for + ;; http://xml.weather.yahoo.com/forecastrss?p=GMXX0040&u=f + (goto-char (point-min)) + (while (re-search-forward "\\(<[^>]*\\)=\"\"" nil t) + (replace-match "\\1=\" \"")) + ;; + (set-buffer-modified-p nil)) + + (defun newsticker--get-logo-url-atom-1.0 (node) "Return logo URL from atom 1.0 data in NODE." (car (xml-node-children @@ -1125,6 +1131,30 @@ same as in `newsticker--parse-atom-1.0'." (xml-node-children node)))) (or new-item new-feed))) +(defun newsticker--unxml (node) + "Reverse parsing of an xml string. +Restore an xml-string from a an xml-node that was returned by xml-parse..." + (if (or (not node) (stringp node)) + node + (newsticker--unxml-node node))) + +(defun newsticker--unxml-node (node) + "Actually restore xml-string of an xml node." + (let ((qname (symbol-name (car node))) + (att-list (cadr node)) + (children (cddr node))) + (concat "<" qname + (when att-list " ") + (mapconcat 'newsticker--unxml-attribute att-list " ") + ">" + (mapconcat 'newsticker--unxml children "") "</" qname ">"))) + +(defun newsticker--unxml-attribute (att) + "Actually restore xml-string of an attribute of an xml node." + (let ((name (symbol-name (car att))) + (value (cdr att))) + (concat name "=\"" value "\""))) + (defun newsticker--parse-atom-1.0 (name time topnode) "Parse Atom 1.0 data. Argument NAME gives the name of a news feed. TIME gives the @@ -1157,8 +1187,13 @@ URL `http://www.atompub.org/2005/08/17/draft-ietf-atompub-format-11.html'" (car (xml-get-children node 'title))))) ;; desc-fn (lambda (node) - (or (car (xml-node-children - (car (xml-get-children node 'content)))) + ;; unxml the content node. Atom allows for + ;; integrating (x)html into the atom structure + ;; but we need the raw html string. + ;; e.g. http://www.heise.de/open/news/news-atom.xml + (or (newsticker--unxml + (car (xml-node-children + (car (xml-get-children node 'content))))) (car (xml-node-children (car (xml-get-children node 'summary)))))) ;; link-fn @@ -1303,9 +1338,15 @@ For the RSS 1.0 specification see URL `http://web.resource.org/rss/1.0/spec'." (car (xml-node-children (car (xml-get-children channelnode 'title)))) ;; desc - (car (xml-node-children - (car (xml-get-children channelnode - 'description)))) + (or (car (xml-node-children + (car (xml-get-children channelnode + 'encoded)))) + (car (xml-node-children + (car (xml-get-children channelnode + 'content:encoded)))) + (car (xml-node-children + (car (xml-get-children channelnode + 'description))))) ;; link (car (xml-node-children (car (xml-get-children channelnode 'link)))) @@ -1329,8 +1370,10 @@ For the RSS 1.0 specification see URL `http://web.resource.org/rss/1.0/spec'." ;; time-fn (lambda (node) (newsticker--decode-iso8601-date - (car (xml-node-children - (car (xml-get-children node 'dc:date)))))) + (or (car (xml-node-children + (car (xml-get-children node 'dc:date)))) + (car (xml-node-children + (car (xml-get-children node 'date))))))) ;; guid-fn (lambda (node) nil) @@ -1354,9 +1397,15 @@ For the RSS 2.0 specification see URL `http://blogs.law.harvard.edu/tech/rss'." (car (xml-node-children (car (xml-get-children channelnode 'title)))) ;; desc - (car (xml-node-children - (car (xml-get-children channelnode - 'description)))) + (or (car (xml-node-children + (car (xml-get-children channelnode + 'encoded)))) + (car (xml-node-children + (car (xml-get-children channelnode + 'content:encoded)))) + (car (xml-node-children + (car (xml-get-children channelnode + 'description))))) ;; link (car (xml-node-children (car (xml-get-children channelnode 'link)))) @@ -1372,6 +1421,9 @@ For the RSS 2.0 specification see URL `http://blogs.law.harvard.edu/tech/rss'." (lambda (node) (or (car (xml-node-children (car (xml-get-children node + 'encoded)))) + (car (xml-node-children + (car (xml-get-children node 'content:encoded)))) (car (xml-node-children (car (xml-get-children node @@ -1464,7 +1516,7 @@ argument, which is one of the items in ITEMLIST." ;; decode numeric entities (setq title (xml-substitute-numeric-entities title)) (when desc - (setq desc (xml-substitute-numeric-entities desc))) + (setq desc (xml-substitute-numeric-entities desc))) (setq link (xml-substitute-numeric-entities link)) ;; remove whitespace from title, desc, and link (setq title (newsticker--remove-whitespace title)) @@ -1486,9 +1538,9 @@ argument, which is one of the items in ITEMLIST." (let ((prev-age (newsticker--age old-item))) (unless newsticker-automatically-mark-items-as-old ;; Some feeds deliver items multiply, the - ;; first time we find an 'obsolete-old one the - ;; cache, the following times we find an 'old - ;; one + ;; first time we find an 'obsolete-old one in + ;; the cache, the following times we find an + ;; 'old one (if (memq prev-age '(obsolete-old old)) (setq age2 'old) (setq age2 'new))) @@ -1712,7 +1764,7 @@ Checks list of active processes against list of newsticker processes." ;; ====================================================================== (defun newsticker--images-dir () "Return directory where feed images are saved." - (concat newsticker-dir "/images")) + (concat newsticker-dir "/images/")) (defun newsticker--image-get (feed-name url) "Get image of the news site FEED-NAME from URL. @@ -1733,7 +1785,7 @@ If the image has been downloaded in the last 24h do nothing." (item (or (assoc feed-name newsticker-url-list) (assoc feed-name newsticker-url-list-defaults) (error - "Cannot get news for %s: Check newsticker-url-list" + "Cannot get image for %s: Check newsticker-url-list" feed-name))) (wget-arguments (or (car (cdr (cdr (cdr (cdr item))))) newsticker-wget-arguments))) diff --git a/lisp/net/newst-plainview.el b/lisp/net/newst-plainview.el index a05a2f67bcb..dea24f12a97 100644 --- a/lisp/net/newst-plainview.el +++ b/lisp/net/newst-plainview.el @@ -5,7 +5,6 @@ ;; Author: Ulf Jasper <ulf.jasper@web.de> ;; Filename: newst-plainview.el ;; URL: http://www.nongnu.org/newsticker -;; Time-stamp: "Mon 11-Feb-2013 20:27:11 gm on skiddaw" ;; Package: newsticker ;; ====================================================================== diff --git a/lisp/net/newst-reader.el b/lisp/net/newst-reader.el index 737aac22d46..8232e4bd9bd 100644 --- a/lisp/net/newst-reader.el +++ b/lisp/net/newst-reader.el @@ -5,7 +5,6 @@ ;; Author: Ulf Jasper <ulf.jasper@web.de> ;; Filename: newst-reader.el ;; URL: http://www.nongnu.org/newsticker -;; Time-stamp: "24. September 2011, 15:47:49 (ulf)" ;; Package: newsticker ;; ====================================================================== @@ -67,6 +66,12 @@ This must be one of the functions `newsticker-plainview' or :group 'newsticker-reader) ;; image related things +(defcustom newsticker-download-logos + t + "If non-nil newsticker downloads logo images of subscribed feeds." + :type 'boolean + :group 'newsticker-reader) + (defcustom newsticker-enable-logo-manipulations t "If non-nil newsticker manipulates logo images. @@ -186,15 +191,17 @@ KEYMAP will be applied." 'nt-type 'desc)) (insert "\n"))))) -(defun newsticker--print-extra-elements (item keymap) +(defun newsticker--print-extra-elements (item keymap &optional htmlish) "Insert extra-elements of ITEM in a pretty form into the current buffer. KEYMAP is applied." (let ((ignored-elements '(items link title description content - content:encoded dc:subject - dc:date entry item guid pubDate + content:encoded encoded + dc:subject subject + dc:date date entry item guid pubDate published updated enclosure)) (left-column-width 1)) + (if htmlish (insert "<ul>")) (mapc (lambda (extra-element) (when (listp extra-element) ;; take care of broken xml ;; data, 2007-05-25 @@ -209,15 +216,19 @@ KEYMAP is applied." (unless (memq (car extra-element) ignored-elements) (newsticker--do-print-extra-element extra-element left-column-width - keymap)))) - (newsticker--extra item)))) + keymap + htmlish)))) + (newsticker--extra item)) + (if htmlish (insert "</ul>")))) -(defun newsticker--do-print-extra-element (extra-element width keymap) +(defun newsticker--do-print-extra-element (extra-element width keymap htmlish) "Actually print an EXTRA-ELEMENT using the given WIDTH. KEYMAP is applied." (let ((name (symbol-name (car extra-element)))) - (insert (format "%s: " name)) - (insert (make-string (- width (length name)) ? ))) + (if htmlish + (insert (format "<li>%s: " name)) + (insert (format "%s: " name)) + (insert (make-string (- width (length name)) ? )))) (let (;;(attributes (cadr extra-element)) ;FIXME!!!! (contents (cddr extra-element))) (cond ((listp contents) @@ -238,7 +249,9 @@ KEYMAP is applied." contents)) (t (insert (format "%s" contents)))) - (insert "\n"))) + (if htmlish + (insert "</li>") + (insert "\n")))) (defun newsticker--image-read (feed-name-symbol disabled) "Read the cached image for FEED-NAME-SYMBOL from disk. diff --git a/lisp/net/newst-ticker.el b/lisp/net/newst-ticker.el index bf0e3981824..982bcfc59f4 100644 --- a/lisp/net/newst-ticker.el +++ b/lisp/net/newst-ticker.el @@ -6,7 +6,6 @@ ;; Filename: newst-ticker.el ;; URL: http://www.nongnu.org/newsticker ;; Keywords: News, RSS, Atom -;; Time-stamp: "6. Dezember 2009, 19:16:00 (ulf)" ;; Package: newsticker ;; ====================================================================== @@ -37,6 +36,14 @@ (require 'newst-backend) +(defvar newsticker--item-list nil + "List of newsticker items.") +(defvar newsticker--item-position 0 + "Actual position in list of newsticker items.") +(defvar newsticker--prev-message "There was no previous message yet!" + "Last message that the newsticker displayed.") +(defvar newsticker--scrollable-text "" + "The text which is scrolled smoothly in the echo area.") (defvar newsticker--ticker-timer nil "Timer for newsticker ticker.") diff --git a/lisp/net/newst-treeview.el b/lisp/net/newst-treeview.el index acca575877a..097a2a58805 100644 --- a/lisp/net/newst-treeview.el +++ b/lisp/net/newst-treeview.el @@ -87,7 +87,7 @@ "%d.%m.%y, %H:%M" "Format for the date column in the treeview list buffer. See `format-time-string' for a list of valid specifiers." - :version "24.5" + :version "25.1" :type 'string :group 'newsticker-treeview) @@ -238,23 +238,23 @@ their id stays constant." (newsticker--treeview-do-get-node-of-feed feed-name newsticker--treeview-vfeed-tree))) -(defun newsticker--treeview-do-get-node (id startnode) +(defun newsticker--treeview-do-get-node-by-id (id startnode) "Recursively search node with ID starting from STARTNODE." (if (newsticker--treeview-ids-eq id (widget-get startnode :nt-id)) (throw 'found startnode) (let ((children (widget-get startnode :children))) (dolist (w children) - (newsticker--treeview-do-get-node id w))))) + (newsticker--treeview-do-get-node-by-id id w))))) -(defun newsticker--treeview-get-node (id) +(defun newsticker--treeview-get-node-by-id (id) "Return node with ID in newsticker treeview tree." (catch 'found - (newsticker--treeview-do-get-node id newsticker--treeview-feed-tree) - (newsticker--treeview-do-get-node id newsticker--treeview-vfeed-tree))) + (newsticker--treeview-do-get-node-by-id id newsticker--treeview-feed-tree) + (newsticker--treeview-do-get-node-by-id id newsticker--treeview-vfeed-tree))) (defun newsticker--treeview-get-current-node () "Return current node in newsticker treeview tree." - (newsticker--treeview-get-node newsticker--treeview-current-node-id)) + (newsticker--treeview-get-node-by-id newsticker--treeview-current-node-id)) ;; ====================================================================== @@ -781,8 +781,11 @@ for the button." (put-text-property pos (point) 'face 'newsticker-enclosure-face) (setq pos (point)) (insert "\n") - (newsticker--print-extra-elements item newsticker--treeview-url-keymap) - (put-text-property pos (point) 'face 'newsticker-extra-face) + (set-marker marker1 pos) + (newsticker--print-extra-elements item newsticker--treeview-url-keymap t) + (set-marker marker2 (point)) + (newsticker--treeview-render-text marker1 marker2) + (put-text-property marker1 marker2 'face 'newsticker-extra-face) (goto-char (point-min))))) (if (and newsticker-treeview-automatically-mark-displayed-items-as-old item @@ -1166,12 +1169,14 @@ Arguments IGNORE are ignored." (unless newsticker--selection-overlay (with-current-buffer (newsticker--treeview-list-buffer) + (setq buffer-undo-list t) (setq newsticker--selection-overlay (make-overlay (point-min) (point-max))) (overlay-put newsticker--selection-overlay 'face 'newsticker-treeview-selection-face))) (unless newsticker--tree-selection-overlay (with-current-buffer (newsticker--treeview-tree-buffer) + (setq buffer-undo-list t) (setq newsticker--tree-selection-overlay (make-overlay (point-min) (point-max))) (overlay-put newsticker--tree-selection-overlay 'face @@ -1218,7 +1223,7 @@ Note: does not update the layout." (newsticker-treeview-save)) (defun newsticker-treeview-save () - "Save newsticker data including treeview settings." + "Save treeview group settings." (interactive) (let ((coding-system-for-write 'utf-8) (buf (find-file-noselect (concat newsticker-dir "/groups")))) @@ -1598,10 +1603,8 @@ Return t if a new feed was activated, nil otherwise." "Recursively show subtree above the node that represents FEED-NAME." (let ((node (newsticker--treeview-get-node-of-feed feed-name))) (unless node - (let* ((group-name (or (car (newsticker--group-find-group-for-feed - feed-name)) - (newsticker--group-get-parent-group - feed-name)))) + (let* ((group-name (car (newsticker--group-find-parent-group + feed-name)))) (newsticker--treeview-unfold-node group-name)) (setq node (newsticker--treeview-get-node-of-feed feed-name))) (when node @@ -1625,20 +1628,31 @@ Return t if a new feed was activated, nil otherwise." ;; ====================================================================== ;;; Groups ;; ====================================================================== -(defun newsticker--group-do-find-group-for-feed (feed-name node) - "Recursively find FEED-NAME in NODE." - (if (member feed-name (cdr node)) - (throw 'found node) - (mapc (lambda (n) - (if (listp n) - (newsticker--group-do-find-group-for-feed feed-name n))) - (cdr node)))) - -(defun newsticker--group-find-group-for-feed (feed-name) - "Find group containing FEED-NAME." +(defun newsticker--group-do-find-group (feed-or-group-name parent-node node) + "Recursively find FEED-OR-GROUP-NAME in PARENT-NODE or NODE." + (cond ((stringp node) + (when (string= feed-or-group-name node) + (throw 'found parent-node))) + ((listp node) + (cond ((string= feed-or-group-name (car node)) + (throw 'found parent-node)) + ((member feed-or-group-name (cdr node)) + (throw 'found node)) + (t + (mapc (lambda (n) + (if (listp n) + (newsticker--group-do-find-group + feed-or-group-name node n))) + (cdr node))))))) + +(defun newsticker--group-find-parent-group (feed-or-group-name) + "Find group containing FEED-OR-GROUP-NAME." (catch 'found - (newsticker--group-do-find-group-for-feed feed-name - newsticker-groups) + (mapc (lambda (n) + (newsticker--group-do-find-group feed-or-group-name + newsticker-groups + n)) + newsticker-groups) nil)) (defun newsticker--group-do-get-group (name node) @@ -1659,26 +1673,6 @@ Return t if a new feed was activated, nil otherwise." newsticker-groups) nil)) -(defun newsticker--group-do-get-parent-group (name node parent) - "Recursively find parent group for NAME from NODE which is a child of PARENT." - (if (string= name (car node)) - (throw 'found parent) - (mapc (lambda (n) - (if (listp n) - (newsticker--group-do-get-parent-group name n (car node)))) - (cdr node)))) - -(defun newsticker--group-get-parent-group (name) - "Find parent group for group named NAME." - (catch 'found - (mapc (lambda (n) - (if (listp n) - (newsticker--group-do-get-parent-group - name n (car newsticker-groups)))) - newsticker-groups) - nil)) - - (defun newsticker--group-get-subgroups (group &optional recursive) "Return list of subgroups for GROUP. If RECURSIVE is non-nil recursively get subgroups and return a nested list." @@ -1714,9 +1708,9 @@ return a nested list." (defun newsticker-group-add-group (name parent) "Add group NAME to group PARENT." (interactive - (list (read-string "Group Name: ") + (list (read-string "Name of new group: ") (let ((completion-ignore-case t)) - (completing-read "Parent Group: " (newsticker--group-all-groups) + (completing-read "Name of parent group (optional): " (newsticker--group-all-groups) nil t)))) (if (newsticker--group-get-group name) (error "Group %s exists already" name)) @@ -1726,46 +1720,154 @@ return a nested list." (unless p (error "Parent %s does not exist" parent)) (setcdr p (cons (list name) (cdr p)))) - (newsticker--treeview-tree-update)) + (newsticker--treeview-tree-update) + (newsticker-treeview-jump newsticker--treeview-current-feed)) + +(defun newsticker-group-delete-group (name) + "Delete group NAME." + (interactive + (list (let ((completion-ignore-case t)) + (completing-read "Delete group: " + (newsticker--group-names) + nil t (car (newsticker--group-find-parent-group + newsticker--treeview-current-feed)))))) + (let ((parent-group (newsticker--group-find-parent-group name))) + (unless parent-group + (error "Parent %s does not exist" parent-group)) + (setcdr parent-group (cl-delete-if (lambda (g) + (and (listp g) + (string= name (car g)))) + (cdr parent-group))) + (newsticker--group-manage-orphan-feeds) + (newsticker--treeview-tree-update) + (newsticker-treeview-update) + (newsticker-treeview-jump newsticker--treeview-current-feed))) + +(defun newsticker--group-do-rename-group (old-name new-name) + "Actually rename group OLD-NAME to NEW-NAME." + (let ((parent-group (newsticker--group-find-parent-group old-name))) + (unless parent-group + (error "Parent of %s does not exist" old-name)) + (mapcar (lambda (elt) + (cond ((and (listp elt) + (string= old-name (car elt))) + (cons new-name (cdr elt))) + (t + elt))) parent-group))) + +(defun newsticker-group-rename-group (old-name new-name) + "Rename group OLD-NAME to NEW-NAME." + (interactive + (list (let* ((completion-ignore-case t)) + (completing-read "Rename group: " + (newsticker--group-names) + nil t (car (newsticker--group-find-parent-group + newsticker--treeview-current-feed)))) + (read-string "Rename to: "))) + (setq newsticker-groups (newsticker--group-do-rename-group old-name new-name)) + (newsticker--group-manage-orphan-feeds) + (newsticker--treeview-tree-update) + (newsticker-treeview-update) + (newsticker-treeview-jump newsticker--treeview-current-feed)) + +(defun newsticker--get-group-names (lst) + "Do get the group names from LST." + (delete nil (cons (car lst) + (apply 'append + (mapcar (lambda (e) + (cond ((listp e) + (newsticker--get-group-names e)) + (t + nil))) + (cdr lst)))))) + +(defun newsticker--group-names () + "Get names of all newsticker groups." + (newsticker--get-group-names newsticker-groups)) (defun newsticker-group-move-feed (name group-name &optional no-update) "Move feed NAME to group GROUP-NAME. Update treeview afterwards unless NO-UPDATE is non-nil." (interactive (let ((completion-ignore-case t)) - (list (completing-read "Feed Name: " - (mapcar 'car newsticker-url-list) + (list (completing-read "Name of feed or group to move: " + (append (mapcar 'car newsticker-url-list) + (newsticker--group-names)) nil t newsticker--treeview-current-feed) - (completing-read "Group Name: " (newsticker--group-all-groups) + (completing-read "Name of new parent group: " (newsticker--group-names) nil t)))) - (let ((group (if (and group-name (not (string= group-name ""))) - (newsticker--group-get-group group-name) - newsticker-groups))) + (let* ((group (if (and group-name (not (string= group-name ""))) + (newsticker--group-get-group group-name) + newsticker-groups)) + (moving-group-p (member name (newsticker--group-names))) + (moved-thing (if moving-group-p + (newsticker--group-get-group name) + name))) (unless group (error "Group %s does not exist" group-name)) (while (let ((old-group - (newsticker--group-find-group-for-feed name))) + (newsticker--group-find-parent-group name))) (when old-group - (delete name old-group)) + (delete moved-thing old-group)) old-group)) - (setcdr group (cons name (cdr group))) + (setcdr group (cons moved-thing (cdr group))) (unless no-update (newsticker--treeview-tree-update) - (newsticker-treeview-update)))) + (newsticker-treeview-update) + (newsticker-treeview-jump name)))) -(defun newsticker-group-delete-group (name) - "Remove group NAME." - (interactive - (let ((completion-ignore-case t)) - (list (completing-read "Group Name: " (newsticker--group-all-groups) - nil t)))) - (let* ((g (newsticker--group-get-group name)) - (p (or (newsticker--group-get-parent-group name) - newsticker-groups))) - (unless g - (error "Group %s does not exist" name)) - (delete g p)) - (newsticker--treeview-tree-update)) +(defun newsticker-group-shift-feed-down () + "Shift current feed down in its group." + (interactive) + (newsticker--group-shift 1)) + +(defun newsticker-group-shift-feed-up () + "Shift current feed down in its group." + (interactive) + (newsticker--group-shift -1)) + +(defun newsticker-group-shift-group-down () + "Shift current group down in its group." + (interactive) + (newsticker--group-shift 1 t)) + +(defun newsticker-group-shift-group-up () + "Shift current group down in its group." + (interactive) + (newsticker--group-shift -1 t)) + +(defun newsticker--group-shift (delta &optional move-group) + "Shift current feed or group within its parent group. +DELTA is an integer which specifies the direction and the amount +of the shift. If MOVE-GROUP is nil the currently selected feed +`newsticker--treeview-current-feed' is shifted, if it is t then +the current feed's parent group is shifted.." + (let* ((cur-feed newsticker--treeview-current-feed) + (thing (if move-group + (newsticker--group-find-parent-group cur-feed) + cur-feed)) + (parent-group (newsticker--group-find-parent-group + (if move-group (car thing) thing)))) + (unless parent-group + (error "Group not found!")) + (let* ((siblings (cdr parent-group)) + (pos (cl-position thing siblings :test 'equal)) + (tpos (+ pos delta )) + (new-pos (max 0 (min (length siblings) tpos))) + (beg (cl-subseq siblings 0 (min pos new-pos))) + (end (cl-subseq siblings (+ 1 (max pos new-pos)))) + (p (elt siblings new-pos))) + (when (not (= pos new-pos)) + (setcdr parent-group + (cl-concatenate 'list + beg + (if (> delta 0) + (list p thing) + (list thing p)) + end)) + (newsticker--treeview-tree-update) + (newsticker-treeview-update) + (newsticker-treeview-jump cur-feed))))) (defun newsticker--count-groups (group) "Recursively count number of subgroups of GROUP." @@ -1812,7 +1914,7 @@ Return t if groups have changed, nil otherwise." (let ((new-feed nil) (grouped-feeds (newsticker--count-grouped-feeds newsticker-groups))) (mapc (lambda (f) - (unless (newsticker--group-find-group-for-feed (car f)) + (unless (newsticker--group-find-parent-group (car f)) (setq new-feed t) (newsticker-group-move-feed (car f) nil t))) (append newsticker-url-list-defaults newsticker-url-list)) @@ -1914,6 +2016,12 @@ Return t if groups have changed, nil otherwise." ;;(define-key map "\C-m" 'newsticker-treeview-scroll-item) (define-key map "\M-m" 'newsticker-group-move-feed) (define-key map "\M-a" 'newsticker-group-add-group) + (define-key map "\M-d" 'newsticker-group-delete-group) + (define-key map "\M-r" 'newsticker-group-rename-group) + (define-key map [M-down] 'newsticker-group-shift-feed-down) + (define-key map [M-up] 'newsticker-group-shift-feed-up) + (define-key map [M-S-down] 'newsticker-group-shift-group-down) + (define-key map [M-S-up] 'newsticker-group-shift-group-up) map) "Mode map for newsticker treeview.") @@ -1972,10 +2080,10 @@ POS gives the position where EVENT occurred." (newsticker-treeview-show-item)) (t ;; click in tree buffer - (let ((w (newsticker--treeview-get-node nt-id))) + (let ((w (newsticker--treeview-get-node-by-id nt-id))) (when w (newsticker--treeview-tree-update-tag w t t) - (setq w (newsticker--treeview-get-node nt-id)) + (setq w (newsticker--treeview-get-node-by-id nt-id)) (widget-put w :nt-selected t) (widget-apply w :action event) (newsticker--treeview-set-current-node w)))))) diff --git a/lisp/net/newsticker.el b/lisp/net/newsticker.el index c77058a1e19..630db6782a1 100644 --- a/lisp/net/newsticker.el +++ b/lisp/net/newsticker.el @@ -7,8 +7,6 @@ ;; URL: http://www.nongnu.org/newsticker ;; Created: 17. June 2003 ;; Keywords: News, RSS, Atom -;; Time-stamp: "6. Dezember 2009, 19:15:18 (ulf)" -;; Version: 1.99 ;; ====================================================================== @@ -28,6 +26,7 @@ ;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. (defconst newsticker-version "1.99" "Version number of newsticker.el.") +(make-obsolete-variable 'newsticker-version 'emacs-version "25.1") ;; ====================================================================== ;;; Commentary: diff --git a/lisp/net/ntlm.el b/lisp/net/ntlm.el index bff3bab7207..30958aaa6bf 100644 --- a/lisp/net/ntlm.el +++ b/lisp/net/ntlm.el @@ -80,8 +80,8 @@ is not given." (request-msgType (concat (make-string 1 1) (make-string 3 0))) ;0x01 0x00 0x00 0x00 (request-flags (concat (make-string 1 7) (make-string 1 178) - (make-string 2 0))) - ;0x07 0xb2 0x00 0x00 + (make-string 1 8) (make-string 1 0))) + ;0x07 0xb2 0x08 0x00 lu ld off-d off-u) (when (string-match "@" user) (unless domain @@ -144,11 +144,35 @@ by PASSWORD-HASHES. PASSWORD-HASHES should be a return value of (setq domain (substring user (1+ (match-beginning 0)))) (setq user (substring user 0 (match-beginning 0)))) - ;; generate response data - (setq lmRespData - (ntlm-smb-owf-encrypt (car password-hashes) challengeData)) - (setq ntRespData - (ntlm-smb-owf-encrypt (cadr password-hashes) challengeData)) + ;; check if "negotiate NTLM2 key" flag is set in type 2 message + (if (not (zerop (logand (aref flags 2) 8))) + (let (randomString + sessionHash) + ;; generate NTLM2 session response data + (setq randomString (string-make-unibyte + (concat + (make-string 1 (random 256)) + (make-string 1 (random 256)) + (make-string 1 (random 256)) + (make-string 1 (random 256)) + (make-string 1 (random 256)) + (make-string 1 (random 256)) + (make-string 1 (random 256)) + (make-string 1 (random 256))))) + (setq sessionHash (secure-hash 'md5 + (concat challengeData randomString) + nil nil t)) + (setq sessionHash (substring sessionHash 0 8)) + + (setq lmRespData (concat randomString (make-string 16 0))) + (setq ntRespData (ntlm-smb-owf-encrypt + (cadr password-hashes) sessionHash))) + (progn + ;; generate response data + (setq lmRespData + (ntlm-smb-owf-encrypt (car password-hashes) challengeData)) + (setq ntRespData + (ntlm-smb-owf-encrypt (cadr password-hashes) challengeData)))) ;; get offsets to fields to pack the response struct in a string (setq lu (length user)) diff --git a/lisp/net/rcirc.el b/lisp/net/rcirc.el index f06f8bd292e..f36487971c4 100644 --- a/lisp/net/rcirc.el +++ b/lisp/net/rcirc.el @@ -661,7 +661,7 @@ Functions are called with PROCESS and SENTINEL arguments.") (defcustom rcirc-reconnect-delay 0 "The minimum interval in seconds between reconnect attempts. When 0, do not auto-reconnect." - :version "24.5" + :version "25.1" :type 'integer :group 'rcirc) diff --git a/lisp/net/shr.el b/lisp/net/shr.el index 5e2e1eadf86..878728c9319 100644 --- a/lisp/net/shr.el +++ b/lisp/net/shr.el @@ -130,6 +130,7 @@ cid: URL as the argument.") (defvar shr-start nil) (defvar shr-indentation 0) (defvar shr-inhibit-images nil) +(defvar shr-internal-width (or shr-width (1- (window-width)))) (defvar shr-list-mode nil) (defvar shr-content-cache nil) (defvar shr-kinsoku-shorten nil) @@ -197,7 +198,7 @@ DOM should be a parse tree as generated by (shr-state nil) (shr-start nil) (shr-base nil) - (shr-width (or shr-width (1- (window-width))))) + (shr-internal-width (or shr-width (1- (window-width))))) (shr-descend (shr-transform-dom dom)) (shr-remove-trailing-whitespace start (point)))) @@ -246,9 +247,9 @@ redirects somewhere else." ;; Copy the URL to the kill ring. (t (with-temp-buffer - (insert url) + (insert (url-encode-url url)) (copy-region-as-kill (point-min) (point-max)) - (message "Copied %s" url)))))) + (message "Copied %s" (buffer-string))))))) (defun shr-next-link () "Skip to the next link." @@ -471,8 +472,8 @@ size, and full-buffer size." (insert elem) (setq shr-state nil) (let (found) - (while (and (> (current-column) shr-width) - (> shr-width 0) + (while (and (> (current-column) shr-internal-width) + (> shr-internal-width 0) (progn (setq found (shr-find-fill-point)) (not (eolp)))) @@ -486,10 +487,10 @@ size, and full-buffer size." (when (> shr-indentation 0) (shr-indent)) (end-of-line)) - (if (<= (current-column) shr-width) + (if (<= (current-column) shr-internal-width) (insert " ") ;; In case we couldn't get a valid break point (because of a - ;; word that's longer than `shr-width'), just break anyway. + ;; word that's longer than `shr-internal-width'), just break anyway. (insert "\n") (when (> shr-indentation 0) (shr-indent))))) @@ -497,7 +498,7 @@ size, and full-buffer size." (delete-char -1))))) (defun shr-find-fill-point () - (when (> (move-to-column shr-width) shr-width) + (when (> (move-to-column shr-internal-width) shr-internal-width) (backward-char 1)) (let ((bp (point)) failed) @@ -537,7 +538,7 @@ size, and full-buffer size." ;; so we look for the second best position. (while (and (progn (forward-char 1) - (<= (current-column) shr-width)) + (<= (current-column) shr-internal-width)) (progn (setq bp (point)) (shr-char-kinsoku-eol-p (following-char))))) @@ -589,6 +590,10 @@ size, and full-buffer size." (url-type parsed) url))) +(autoload 'url-expand-file-name "url-expand") + +;; FIXME This needs some tests writing. +;; Does it even need to exist, given that url-expand-file-name does? (defun shr-expand-url (url &optional base) (setq base (if base @@ -614,7 +619,7 @@ size, and full-buffer size." (concat (nth 3 base) url)) (t ;; Totally relative. - (concat (car base) (expand-file-name url (cadr base)))))) + (url-expand-file-name url (concat (car base) (cadr base)))))) (defun shr-ensure-newline () (unless (zerop (current-column)) @@ -1340,7 +1345,7 @@ The preference is a float determined from `shr-prefer-media-type'." (defun shr-tag-hr (_cont) (shr-ensure-newline) - (insert (make-string shr-width shr-hr-line) "\n")) + (insert (make-string shr-internal-width shr-hr-line) "\n")) (defun shr-tag-title (cont) (shr-heading cont 'bold 'underline)) @@ -1633,7 +1638,7 @@ The preference is a float determined from `shr-prefer-media-type'." (setq style (nconc (list (cons 'color fgcolor)) style))) (when style (setq shr-stylesheet (append style shr-stylesheet))) - (let ((shr-width width) + (let ((shr-internal-width width) (shr-indentation 0)) (shr-descend (cons 'td cont))) ;; Delete padding at the bottom of the TDs. @@ -1705,7 +1710,8 @@ The preference is a float determined from `shr-prefer-media-type'." (dotimes (i (length columns)) (aset widths i (max (truncate (* (aref columns i) total-percentage - (- shr-width (1+ (length columns))))) + (- shr-internal-width + (1+ (length columns))))) 10))) widths)) diff --git a/lisp/net/tramp-adb.el b/lisp/net/tramp-adb.el index 16017eebba3..88e52fe0199 100644 --- a/lisp/net/tramp-adb.el +++ b/lisp/net/tramp-adb.el @@ -2,7 +2,7 @@ ;; Copyright (C) 2011-2014 Free Software Foundation, Inc. -;; Author: Juergen Hoetzel <juergen@archlinux.org> +;; Author: Jürgen Hötzel <juergen@archlinux.org> ;; Keywords: comm, processes ;; Package: tramp diff --git a/lisp/net/tramp-cache.el b/lisp/net/tramp-cache.el index bdcbba85960..056b1bdaf91 100644 --- a/lisp/net/tramp-cache.el +++ b/lisp/net/tramp-cache.el @@ -207,15 +207,12 @@ Remove also properties of all files in subdirectories." "Flush all Tramp cache properties from `buffer-file-name'. This is suppressed for temporary buffers." (save-match-data - (unless - (string-match - (concat - "^" (regexp-opt '("*tramp/" "*debug tramp/" " *temp*") 'paren)) - (or (buffer-name) "")) - + (unless (or (null (buffer-name)) + (string-match "^\\( \\|\\*\\)" (buffer-name))) (let ((bfn (if (stringp (buffer-file-name)) (buffer-file-name) - default-directory))) + default-directory)) + (tramp-verbose 0)) (when (tramp-tramp-file-p bfn) (with-parsed-tramp-file-name bfn nil (tramp-flush-file-property v localname))))))) diff --git a/lisp/net/tramp-gvfs.el b/lisp/net/tramp-gvfs.el index 5d6447609fa..569fb684144 100644 --- a/lisp/net/tramp-gvfs.el +++ b/lisp/net/tramp-gvfs.el @@ -1108,7 +1108,7 @@ is no information where to trace the message.") (defun tramp-gvfs-url-file-name (filename) "Return FILENAME in URL syntax." ;; "/" must NOT be hexlified. - (let ((url-unreserved-chars (append '(?/) url-unreserved-chars)) + (let ((url-unreserved-chars (cons ?/ url-unreserved-chars)) result) (setq result diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el index 569d3473532..ce5e2faff50 100644 --- a/lisp/net/tramp-sh.el +++ b/lisp/net/tramp-sh.el @@ -2811,7 +2811,7 @@ the result will be a local, non-Tramp, file name." ;; connection has been setup. (defun tramp-sh-handle-start-file-process (name buffer program &rest args) "Like `start-file-process' for Tramp files." - (with-parsed-tramp-file-name default-directory nil + (with-parsed-tramp-file-name (expand-file-name default-directory) nil (let* (;; When PROGRAM matches "*sh", and the first arg is "-c", ;; it might be that the arguments exceed the command line ;; length. Therefore, we modify the command. @@ -3464,19 +3464,19 @@ the result will be a local, non-Tramp, file name." (not (with-tramp-connection-property v vc-bzr-program (tramp-find-executable v vc-bzr-program (tramp-get-remote-path v))))) - (setq vc-handled-backends (delq 'Bzr vc-handled-backends))) + (setq vc-handled-backends (remq 'Bzr vc-handled-backends))) (when (and (memq 'Git vc-handled-backends) (boundp 'vc-git-program) (not (with-tramp-connection-property v vc-git-program (tramp-find-executable v vc-git-program (tramp-get-remote-path v))))) - (setq vc-handled-backends (delq 'Git vc-handled-backends))) + (setq vc-handled-backends (remq 'Git vc-handled-backends))) (when (and (memq 'Hg vc-handled-backends) (boundp 'vc-hg-program) (not (with-tramp-connection-property v vc-hg-program (tramp-find-executable v vc-hg-program (tramp-get-remote-path v))))) - (setq vc-handled-backends (delq 'Hg vc-handled-backends))) + (setq vc-handled-backends (remq 'Hg vc-handled-backends))) ;; Run. (ignore-errors (tramp-run-real-handler 'vc-registered (list file)))))))) @@ -3955,10 +3955,8 @@ process to set up. VEC specifies the connection." (tramp-message vec 5 "Setting shell prompt") (tramp-send-command - vec (format "PS1=%s" (tramp-shell-quote-argument tramp-end-of-output)) t) - (tramp-send-command vec "PS2=''" t) - (tramp-send-command vec "PS3=''" t) - (tramp-send-command vec "PROMPT_COMMAND=''" t) + vec (format "PS1=%s PS2='' PS3='' PROMPT_COMMAND=''" + (tramp-shell-quote-argument tramp-end-of-output)) t) ;; Try to set up the coding system correctly. ;; CCC this can't be the right way to do it. Hm. @@ -4078,15 +4076,22 @@ process to set up. VEC specifies the connection." (let ((env (append (when (tramp-get-remote-locale vec) ; Discard `(nil)'. `(,(tramp-get-remote-locale vec))) (copy-sequence tramp-remote-process-environment))) - unset item) + unset vars item) (while env (setq item (tramp-compat-split-string (car env) "=")) (setcdr item (mapconcat 'identity (cdr item) "=")) (if (and (stringp (cdr item)) (not (string-equal (cdr item) ""))) - (tramp-send-command - vec (format "%s=%s; export %s" (car item) (cdr item) (car item)) t) + (push (format "%s %s" (car item) (cdr item)) vars) (push (car item) unset)) (setq env (cdr env))) + (when vars + (tramp-send-command + vec + (format "while read var val; do export $var=$val; done <<'%s'\n%s\n%s" + tramp-end-of-heredoc + (mapconcat 'identity vars "\n") + tramp-end-of-heredoc) + t)) (when unset (tramp-send-command vec (format "unset %s" (mapconcat 'identity unset " ")) t)))) @@ -5228,13 +5233,14 @@ Return ATTR." (with-tramp-connection-property vec "id" (tramp-message vec 5 "Finding POSIX `id' command") (catch 'id-found - (let ((dl (tramp-get-remote-path vec)) - result) - (while (and dl (setq result (tramp-find-executable vec "id" dl t t))) - ;; Check POSIX parameter. - (when (tramp-send-command-and-check vec (format "%s -u" result)) - (throw 'id-found result)) - (setq dl (cdr dl))))))) + (dolist (cmd '("id" "gid")) + (let ((dl (tramp-get-remote-path vec)) + result) + (while (and dl (setq result (tramp-find-executable vec cmd dl t t))) + ;; Check POSIX parameter. + (when (tramp-send-command-and-check vec (format "%s -u" result)) + (throw 'id-found result)) + (setq dl (cdr dl)))))))) (defun tramp-get-remote-uid-with-id (vec id-format) (tramp-send-command-and-read diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 17259c69159..e3fb177b0c5 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el @@ -2148,13 +2148,13 @@ Falls back to normal file name handler if no Tramp file name handler exists." ((eq result 'non-essential) (tramp-message v 5 "Non-essential received in operation %s" - (append (list operation) args)) + (cons operation args)) (tramp-run-real-handler operation args)) ((eq result 'suppress) (let (tramp-message-show-message) (tramp-message v 1 "Suppress received in operation %s" - (append (list operation) args)) + (cons operation args)) (tramp-cleanup-connection v t) (tramp-run-real-handler operation args))) (t result))) @@ -2164,7 +2164,7 @@ Falls back to normal file name handler if no Tramp file name handler exists." (let (tramp-message-show-message) (tramp-message v 1 "Interrupt received in operation %s" - (append (list operation) args))) + (cons operation args))) ;; Propagate the quit signal. (signal (car err) (cdr err))) @@ -3289,11 +3289,12 @@ User is always nil." ;; Run the process. (setq p (apply 'start-file-process "*Async Shell*" buffer args)) ;; Display output. - (pop-to-buffer output-buffer) - (setq mode-line-process '(":%s")) - (shell-mode) - (set-process-sentinel p 'shell-command-sentinel) - (set-process-filter p 'comint-output-filter)) + (with-current-buffer output-buffer + (display-buffer output-buffer '(nil (allow-no-window . t))) + (setq mode-line-process '(":%s")) + (shell-mode) + (set-process-sentinel p 'shell-command-sentinel) + (set-process-filter p 'comint-output-filter))) (prog1 ;; Run the process. diff --git a/lisp/obsolete/cl-compat.el b/lisp/obsolete/cl-compat.el index 191f885a900..bd702a84a25 100644 --- a/lisp/obsolete/cl-compat.el +++ b/lisp/obsolete/cl-compat.el @@ -129,14 +129,6 @@ (if test-not (not (funcall test-not item elt)) (funcall (or test 'eql) item elt)))) - -;;; Rounding functions with old-style multiple value returns. - -(defun cl-floor (a &optional b) (Values-list (floor* a b))) -(defun cl-ceiling (a &optional b) (Values-list (ceiling* a b))) -(defun cl-round (a &optional b) (Values-list (round* a b))) -(defun cl-truncate (a &optional b) (Values-list (truncate* a b))) - (defun safe-idiv (a b) (let* ((q (/ (abs a) (abs b))) (s (* (signum a) (signum b)))) diff --git a/lisp/obsolete/iswitchb.el b/lisp/obsolete/iswitchb.el index dfe1222d550..4a0338af530 100644 --- a/lisp/obsolete/iswitchb.el +++ b/lisp/obsolete/iswitchb.el @@ -1416,7 +1416,7 @@ See the variable `iswitchb-case' for details." (isearch-no-upper-case-p iswitchb-text) (isearch-no-upper-case-p iswitchb-text t)))) -;;;###obsolete-autoload +;;;###autoload (define-minor-mode iswitchb-mode "Toggle Iswitchb mode. With a prefix argument ARG, enable Iswitchb mode if ARG is @@ -1430,10 +1430,6 @@ between buffers using substrings. See `iswitchb' for details." (add-hook 'minibuffer-setup-hook 'iswitchb-minibuffer-setup) (remove-hook 'minibuffer-setup-hook 'iswitchb-minibuffer-setup))) -;;;###obsolete-autoload -(make-obsolete 'iswitchb-mode - "use `icomplete-mode' or `ido-mode' instead." "24.4") - (provide 'iswitchb) ;;; iswitchb.el ends here diff --git a/lisp/obsolete/lucid.el b/lisp/obsolete/lucid.el index 15f80652809..2c6efa408ff 100644 --- a/lisp/obsolete/lucid.el +++ b/lisp/obsolete/lucid.el @@ -30,27 +30,6 @@ (defalias 'current-time-seconds 'current-time) -(defun read-number (prompt &optional integers-only) - "Read a number from the minibuffer. -Keep reentering the minibuffer until we get suitable input. -If optional argument INTEGERS-ONLY is non-nil, insist on an integer." - (interactive) - (let (success - (number nil) - (predicate (if integers-only 'integerp 'numberp))) - (while (not success) - (let ((input-string (read-string prompt))) - (condition-case () - (setq number (read input-string)) - (error)) - (if (funcall predicate number) - (setq success t) - (let ((cursor-in-echo-area t)) - (message "Please type %s" - (if integers-only "an integer" "a number")) - (sit-for 1))))) - number)) - (defun real-path-name (name &optional default) (file-truename (expand-file-name name default))) diff --git a/lisp/obsolete/mouse-sel.el b/lisp/obsolete/mouse-sel.el index 21765c3d652..837aefb8b7f 100644 --- a/lisp/obsolete/mouse-sel.el +++ b/lisp/obsolete/mouse-sel.el @@ -97,8 +97,8 @@ ;; In this mode, mouse-insert-selection just calls mouse-yank-at-click. ;; ;; Selection/kill-ring interaction is retained -;; interprogram-cut-function = x-select-text -;; interprogram-paste-function = x-selection-value +;; interprogram-cut-function = gui-select-text +;; interprogram-paste-function = gui-selection-value ;; ;; What you lose is the ability to select some text in ;; delete-selection-mode and yank over the top of it. @@ -292,15 +292,13 @@ where SELECTION-NAME = name of selection SELECTION-THING-SYMBOL = name of variable where the current selection type for this selection should be stored.") -(declare-function x-select-text "term/common-win" (text)) - (defvar mouse-sel-set-selection-function (if (eq mouse-sel-default-bindings 'interprogram-cut-paste) - 'x-set-selection + 'gui-set-selection (lambda (selection value) (if (eq selection 'PRIMARY) - (x-select-text value) - (x-set-selection selection value)))) + (gui-select-text value) + (gui-set-selection selection value)))) "Function to call to set selection. Called with two arguments: @@ -310,14 +308,13 @@ Called with two arguments: This sets the selection, unless `mouse-sel-default-bindings' is `interprogram-cut-paste'.") -(declare-function x-selection-value "term/x-win" ()) (defvar mouse-sel-get-selection-function (lambda (selection) (if (eq selection 'PRIMARY) - (or (x-selection-value) - (bound-and-true-p x-last-selected-text) - (bound-and-true-p x-last-selected-text-primary)) + (or (gui-selection-value) + (bound-and-true-p x-last-selected-text-primary) + gui-last-selected-text) (x-get-selection selection))) "Function to call to get the selection. Called with one argument: diff --git a/lisp/org/ChangeLog b/lisp/org/ChangeLog index 7ad601b1719..3910a71db3f 100644 --- a/lisp/org/ChangeLog +++ b/lisp/org/ChangeLog @@ -1,3 +1,625 @@ +2014-10-12 Marco Wahl <marcowahlsoft@gmail.com> + + * org-agenda.el (org-get-entries-from-diary): Use + `diary-fancy-display' instead of the obsolete + `diary-display-hook'. + +2014-10-12 Nicolas Goaziou <mail@nicolasgoaziou.fr> + + * ox.el (org-export-async-start): Limit first argument to lambda + expressions. + + * ox-publish.el (org-publish, org-publish-all) + (org-publish-current-file): Replace `ignore', per limit stated + above. + +2014-10-12 Christopher Schmidt <ch@ristopher.com> + + * org.el (orgstruct-make-binding): Do not use loop in interpreted code. + +2014-10-12 Mike McLean <mike.mclean@pobox.com> (tiny change) + + * org-agenda.el (org-agenda-time-grid): Change docstring. + +2014-10-12 Nicolas Goaziou <mail@nicolasgoaziou.fr> + + * ox.el (org-export-async-start): Allow to use symbols as function. + +2014-10-03 Achim Gratz <Stromeko@Stromeko.DE> + + * ob-sh.el (org-babel-sh-initiate-session): After initiating a + session, initialize the marker `comint-last-output-start' since it + is going to be used by the ANSI color filter without further + checks in Emacs 23 and throws an error. + + * ob-lilypond.el: Change prefix from `ly-' to + `org-babel-lilypond-' throughout. + + * org-footnote.el: Forward declare `org-element-context', + `org-element-property' and `org-element-type'. + + * org.el: Add forward declarations for a number of functions that + the compiler otherwise warns about as potentially undefined at + runtime. + + * ob-core.el: Add comment to forward declaration of + 'org-src-preserve-indentations'. + + * ob-exp.el: Require org-src to import + 'org-src-preserve-indentations'. + + * ob-haskell.el, ob-python.el: Remove superfluous forward + declaration of 'org-src-preserve-indentations', since it gets + imported by other requires. + + * ob-core.el (org-every): Forward declare 'org-every'. + + * ob-C.el: Require cl during compilation so that lexical-let is + known. + + * org-entities.el: Remove superfluous require of org-macs. + Forward declare 'org-toggle-pretty-entities' and + 'org-pretty-entities'. + + * ox.el (org-export-get-parent): Move definition of + 'org-export-get-parent' before first use. Leave comment at original + place of definition. + + * org.el (org-uniquify): Move definition of 'org-uniquify' before + first use. Leave comment at original place of definition. + + * ob-tangle.el (org-babel-tangle): When `file-name-directory' + returns nil, do not run make-directory. Remove superfluous when + clauses by using short-circuiting `and' instead. + +2014-10-03 Alex Kosorukoff <alex@3form.com> (tiny change) + + * org-capture.el (org-capture-fill-template): Set `mark-active' to + nil. + +2014-10-03 Bastien Guerry <bzg@gnu.org> + + * org-agenda.el (org-agenda-prepare): Reset preset filters when + using sticky agendas. + + * org-agenda.el (org-agenda-get-sexps): Don't add tags as text + properties. + + * org-capture.el (org-capture-fill-template): Take + `org-extend-today-until' into account when setting the format time + string. + + * org.el (org-paste-subtree): Fix match subexpression. + + * org.el (org-fix-ellipsis-at-bol): Delete. + (org-mode, org-show-context, org-isearch-end): Don't use + `org-fix-ellipsis-at-bol'. + + * org-agenda.el (org-agenda-filter-apply): Fix setting of + `org-agenda-filtered-by-category'. + + * org.el (org-fontify-meta-lines-and-blocks-1): Fix handling + of `org-hidden-keywords'. + + * org-agenda.el (org-cmp-ts): Fix agenda entry type checking. + + * org-agenda.el (org-entries-lessp): Fix inactive timestamp + comparison. + + * org-agenda.el (org-agenda-mode): Let `org-agenda-redo' DTRT + when agenda are sticky. + (org-agenda-tag-filter-while-redo): Delete. + (org-agenda-list, org-agenda-redo, org-agenda-filter-by-tag): + Remove unused code. + (org-agenda-clockreport-mode, org-agenda-set-mode-name): Don't + consider tag filters. + + * org.el (org-fix-ellipsis-at-bol) + (org-first-headline-recenter): Use `set-window-start' instead + of `recenter'. + + * org-agenda.el (org-recenter-heading): Delete. + + * org.el (org-insert-heading): With one universal prefix argument + or `org-insert-heading-respect-content' set to `t', always respect + the content, i.e. don't insert a list item and don't convert + normal lines into headings. Update docstring. + (org-insert-heading-respect-content): Remove unused arg. + (org-insert-todo-heading-respect-content): Don't use + `org-insert-todo-heading-respect-content', use the second argument + of `org-insert-todo-heading' instead. + + * org-mobile.el (org-mobile-edit): Use only one arg. + + * org.el (org-overview): Don't call `recenter'. + + * org-agenda.el (org-agenda-custom-commands-local-options): Fix + misquoted values. + + * org.el (org-property-re): Also match null properties by default. + (org-entry-delete): Also delete null properties. + (org-read-property-value): Allow the empty string as a new value. + (org-delete-property): Throw a message when there is not property + to delete. + + * org-agenda.el (org-agenda-insert-diary-make-new-entry): Fix + docstring. + + * org.el (org-re-property): New parameter `allow-null' to match + property with a null value. + (org-entry-put): Correctly update a property with a null + value. + + * ox-md.el (org-md-headline): When exporting with a HTML table of + contents, add HTML anchors to Markdown headlines. + + * org.el (org-insert-heading): Don't insert an item when called + with two universal prefix arguments. + + * org-agenda.el (org-agenda-finalize): Remove duplicate check for + 'org-hd-marker. + + * org-agenda.el (org-agenda-prepare-window): New parameter + `filter-alist' to set the filters correctly when + `org-agenda-persistent-filter' is on. + (org-agenda-prepare): Use the new parameter for + `org-agenda-prepare-window'. + + * org-compat.el (org-in-invisibility-spec-p): Tiny code cleanup. + (org-move-to-column): Only remove '(org-filtered) from + `buffer-invisibility-spec'. + + * org-agenda.el (org-agenda-mode): Add buffer invisibility specs. + (org-agenda-filter-hide-line, org-agenda-remove-filter): Set + the 'invisible text property to 'org-filtered. + (org-agenda-show-new-time): Add the default face to avoid the + foreground of the last character on the line to leak into the + timestamp notification. + + * org-agenda.el (org-get-time-of-day): Don't return time string + from within links. + + * org-timer.el (org-timer-value-string): Always return a positive + value. Add docstring. + + * org-capture.el (org-capture-steal-local-variables): Don't steal + `mark-active', which should be nil in the target buffer. + + * org-agenda.el (org-agenda-remove-filter): Use `save-excursion'. + + * org.el (org-move-subtree-down): Use `org-end-of-subtree' instead + of `outline-end-of-subtree'. + (outline-end-of-subtree): Remove advice. + + * org-mouse.el (org-mouse-move-tree, org-mouse-do-remotely): Use + `org-end-of-subtree' instead of `outline-end-of-subtree'. + + * org-agenda.el (org-cmp-ts): Argument `type' is not optional. + Don't quote it. + + * org-habit.el (org-habit-insert-consistency-graphs): Don't remove + filter overlays as we don't use overlays for filters anymore. + + * org-agenda.el (org-agenda-local-vars): Add + `org-agenda-top-headline-filter'. + (org-agenda-filter-by-category): Fix syntax. + (org-agenda-filter-show-all-top-filter): New function. + (org-agenda-filter-by-top-headline) + (org-agenda-filter-remove-all): Use the new function. + (org-agenda-filter-top-headline-apply): Use a dedicated symbol + `top-headline'. + + * org.el (org-entry-properties): Ensure the special property is + not commented out when matched. + + * org-agenda.el (org-agenda-write): Code cleanup. + (org-agenda-mark-filtered-text) + (org-agenda-unmark-filtered-text) + (org-agenda-fix-tags-filter-overlays-at): Delete. + (org-agenda-remove-marked-text): Use the `property' argument + instead of hard-coding 'org-filtered. + (org-agenda-filter-remove-all): Use `org-agenda-finalize'. + (org-agenda-filter-hide-line): Rewrite using text properties + instead of overlays. + (org-agenda-remove-filter): New function. + (org-agenda-filter-show-all-tag) + (org-agenda-filter-show-all-cat) + (org-agenda-filter-show-all-re): Rewrite using + `org-agenda-remove-filter'. + + * org-attach.el (org-attach-dir): When the property is "inherited" + from a variable outside of the file, do not use + `org-entry-property-inherited-from' to find the attachment + position, assume we need to go back to the current headline. + + * ob-R.el (org-babel-R-assign-elisp): Fix parsing of a + one-dimensional value. + + * org.el (org-insert-heading): Fix bug when trying to insert a + heading when point is before the first headline and not at the + beginning of a line. + + * org-table.el (org-table-eval-formula): Fix conversion of + inactive timestamps to active ones. + + * org.el (org-set-regexps-and-options): Allow + `org-complex-heading-regexp-format' to match [/] and [%] cookies + when they are both before and after the heading. + + * org-agenda.el (org-agenda-max-todos, org-agenda-max-tags) + (org-agenda-max-effort): Fix type strings. + + * org-capture.el (org-capture-fill-template): Deactivate region + while trying to align tags on the current headline. + + * org-agenda.el (org-agenda-finalize): Filter by top headline if + `org-agenda-top-headline-filter' is set. + +2014-10-03 Bernt Hansen <bernt@norang.ca> + + * org-macs.el: Remove restriction when locating markers. + +2014-10-03 Dmitry Gorbik <dgorbik@me.com> (tiny change) + + * org.el (org-fast-tag-selection): Fix window splitting. + +2014-10-03 Eric Schulte <schulte.eric@gmail.com> + + * ob-screen.el (org-babel-screen-test): Use unpredictable name for + temporary file. + + * ob-screen.el (org-babel-screen-session-write-temp-file): Use + unpredictable temp file name, fixes bug#17416. + +2014-10-03 Ian Kelling <ian@iankelling.org> + + * ob-core.el (org-babel-insert-result): Test all list elements + against listp and (eq element 'hline) instead of checking just the + first. + +2014-10-03 Konstantin Kliakhandler <kosta@slumpy.org> (tiny change) + + * org-agenda.el (org-agenda-redo): Reapply the filters correctly. + +2014-10-03 Kyle Meyer <kyle@kyleam.com> (tiny change) + + * ox.el (org-export-show-temporary-export-buffer): Fix typo. + +2014-10-03 Matt Lundin <mdl@imapmail.org> + + * ox-publish.el (org-publish-find-title, org-publish-find-date): + Make sure to call org-export-get-environment in copy of buffer if + emacs is already visiting. Otherwise, #+bind variables meant for + export can be set in live buffers. + + * org.el (org-agenda-inhibit-startup): fix docstring to reflect + default value + + * ox-publish.el (org-publish-find-title, org-publish-find-date): + Fix unnecessary invocations of org-mode with org-inhibit-startup. + +2014-10-03 Nick Dokos <ndokos@gmail.com> + + * org-table.el (org-table-clean-before-export): The regexes match + spaces in addition to the special characters that might be used in + the first column as special marking characters. Remove the space + from the character class. + + * ox-ascii.el (org-ascii-superscript): Change _ to ^ in the + output. + +2014-10-03 Nick Dokos <ndokos@redhat.com> + + * org-table.el (org-table-show-reference): Call `set-window-start' + with the calculated values `min' and `max', not with + (point-min) and (point-max). + +2014-10-03 Nicolas Goaziou <n.goaziou@gmail.com> + + * ox-latex.el (org-latex-link): Improve test for unnumbered + headlines. + + * ox-ascii.el (org-ascii--fill-string): Allow filling even when + `org-export-preserve-breaks' is non-nil. + + * org.el (org-N-empty-lines-before-current): Make sure to delete + only empty lines, not trailing whitespaces. + + * ox-html.el (org-html-headline): Make sure even listified + headlines have proper anchors so internal links can refer to them. + Small refactoring. + + * org-src.el (org-edit-src-code): Fix regexp. + (org-edit-src-exit): Do not remove auto-save timer. This is + handled by the timer itself. + + * org.el (org-re-property): Fix regexp. Improve docstring. + + * org-element.el (org-element-property-drawer-parser) + (org-element-node-property-parser): Ignore lines that are not node + properties. + (org-element-node-property-interpreter): Allow nil properties. + + * org.el (org-re-property): Fix regexp to match properties with + empty values. + + * org-element.el (org-element-headline-interpreter): Take into + consideration `org-odd-levels-only' value. Small refactoring. + + * ox-texinfo.el (org-texinfo--get-node): Return a node or anchor + name. + (org-texinfo--sanitize-content): Fix regexp. + (org-texinfo-link): Fix various bugs in link export. + + * ox-beamer.el (org-beamer-link): + * ox-html.el (org-html-link): + * ox-latex.el (org-latex-link): + * ox-odt.el (org-odt-link): When radio link has no valid + target (e.g., this is a subtree export and the radio target is not + in the exported subtree), simply return contents. + + * org.el (org-called-with-limited-levels): Initialize variable. + + * org-agenda.el (org-agenda-write): Write headings in proper + order. + + * org-element.el (org-element-table-interpreter): Enhance + docstring. + + * ox-md.el (org-md-link): Allow custom link type export function. + + * ox-texinfo.el (org-texinfo-template): Fix language and encoding + case. + + * ox-md.el (org-md-separate-elements): Outside of lists, preserve + blank lines between paragraphs and plain lists. + + * org-element.el (org-element-normalize-contents): Fix indentation + removal when there is an empty line within a verse block. + + * ox-texinfo.el (org-texinfo--normalize-headlines): Properly add a + section to the contents. + + * ox-texinfo.el (org-texinfo--normalize-headlines): Do not set pre + blanks since the value is now hard-coded. + (org-texinfo-headline): Force one blank line before contents, when non + empty. Refactoring. + (org-texinfo-src-block): Refactor code. Comply to predicate naming. + + * ox-texinfo.el (org-texinfo--sanitize-node): Handle + " (not)allowed" case. + + * ox-texinfo.el (org-texinfo-headline): Remove wrong code + comments. + + * ox-texinfo.el (org-texinfo-headline): Remove `not-in-toc' + special case for tags. + + * ox-texinfo.el (org-texinfo-headline): Remove LaTeXism (optional + arguments within square brackets). + + * ox-texinfo.el (org-texinfo-info-process): Fix docstring. + (org-texinfo-compile): Do not check for impossible cases (e.g., if the + previous variable contains a function). + + * ox-texinfo.el (org-texinfo-max-toc-depth): Fix docstring. + + * ox-texinfo.el (org-texinfo--make-option-string, + org-texinfo--sanitize-headline, + org-texinfo--sanitize-headline-contents): Remove. + + * ox-texinfo.el (org-texinfo--sanitize-node): "@", "{" and "}" + characters are allowed in a node name. So are "(" and ")" unless + "(" starts the name and there is ")" somewhere in the name. Also + trim and collapse whitespace characters. Renamed from + `org-texinfo--sanitize-menu'. + (org-texinfo--get-node): Do not sanitize node names over zealously. + Ensure returned node names are unique. + (org-texinfo-headline): Only add @node command where it makes sense. + + * ox-texinfo.el (org-texinfo--sanitize-menu) + (org-texinfo--sanitize-content): Fix docstrings. + + * ox-texinfo.el (org-texinfo--normalize-headlines): Make sure a + blank line always follows nodes. + + * ox-texinfo.el (org-texinfo-make-menu): Change signature. Remove + some intermediate functions. Generate the full master menu when + asked. + (org-texinfo--build-menu): Use a simpler algorithm. + (org-texinfo--format-entries): Fix entries when both node and title + are different. + (org-texinfo--menu-entries): Renamed from `org-texinfo--generate-menu-list'. + (org-texinfo-headline): Move menu handling to next function. + (org-texinfo-section): Handle menu for current parent. + (org-texinfo--menu-headlines, org-texinfo--generate-detailed): Remove + functions. + (org-texinfo--normalize-headlines): New function. + + * ox-texinfo.el (org-texinfo-headline): Fix @appendix command. + + * ox-texinfo.el (org-texinfo-headline): Do not sanitize heading + text for sectioning command. + + * ox-texinfo.el (org-texinfo--generate-menu-list): ":COPYING: nil" + is expected to be equivalent to no COPYING property at all. + + * ox-texinfo.el (org-texinfo-item): Fix blank lines between items. + + * ox-texinfo.el (org-texinfo-plain-list): Fix format string. + Small refactoring. + + * ox-texinfo.el (texinfo): Provide new export property. + (org-texinfo-template): Use dedicated title for hard copy, when + available. + + * ox-texinfo.el (org-texinfo-headline): Always obey to a non-nil + :APPENDIX: property. Small refactoring. + + * ox-texinfo.el (org-texinfo-verse-block): Generate somewhat + meaningful Texinfo code instead of LaTeX. + + * ox-texinfo.el (org-texinfo-table): Remove reference to + "verbatim" attribute. Handle table.el tables. Tiny refactoring. + (org-texinfo-table--org-table, org-texinfo-table--table.el-table): + Remove functions. + (org-texinfo-table-column-widths): Indent code correctly. Ignore + special column, if any. Add a comment about the limitation on the + width computation. + (org-texinfo-table-row): Small refactoring. + + * ox-texinfo.el (texinfo): Do not provide a default value for + @setfilename value. + (org-texinfo-filename): Remove variable. + (org-texinfo-template): Correctly find value for @setfilename command. + If none is possible, do not provide the command at all. + + * ox.el (org-export-to-file): Provide output file name in + communication channel, through :output-file property. + + * ox-texinfo.el (org-texinfo-template): Do not hardcode "Manual" + in top node. + + * ox-texinfo.el (org-texinfo-classes): Change default value. + Update docstring. + (org-texinfo-template): Insert header string from current class after + "@settitle" command. Always provide "\input texinfo" at the beginning + of the output. + + * ox-texinfo.el (org-texinfo-template): Remove spurious blank + lines in output. Refactor code. + + * ox-texinfo.el (org-texinfo-template): Fix multi-line subtitles. + + * ox-texinfo.el (org-texinfo-template): Make sure table of + contents are allowed before inserting them. + + * ox-texinfo.el (org-texinfo-template): Check if copying data is + not nil before using it. + + * ox-texinfo.el (org-texinfo-template): Fix multi-line subauthors. + Correctly add email, when provided. Check if author info is + wanted first. + + * ox-texinfo.el (org-texinfo-node-description-column) + (org-texinfo-format-drawer-function): Fix docstrings. + + * ox-texinfo.el (texinfo): Make sure comments are ignored. + (org-texinfo-comment, org-texinfo-comment-block): Remove functions. + + * ox-texinfo.el (org-texinfo-template): Properly pad @direntry + description. + + * org-element.el (org-element-headline-parser): Add missing + `:post-blank' property in docstring. + + * ox-latex.el (org-latex-table-scientific-notation): Set + appropriate value. + (org-latex-listings-options): Fix docstring. + + * ox.el (org-export-raw-special-block-p): New function. + + * org-element.el (org-element-link-parser): Properly handle + multi-line links according to RFC 3986 when enclosed within square + brackets. + + * org-element.el (org-element-parse-secondary-string): Clone all + local variables from current buffer before parsing a secondary + string. Small refactoring. + (org-element-object-variables): Remove variable. + + * ox-odt.el (org-odt--format-paragraph): Change signature to + include info. + (org-odt-footnote-reference, org-odt-paragraph): Apply signature + change. + + * org-clock.el (org-clocktable-indent-string): Use "\emsp" instead + of "\__", which is not supported anymore since Org 8.0. + + * ox-odt.el (org-odt--paragraph-style): New function. + (org-odt--format-paragraph): Use new function to get proper style + to apply. + + * org-element.el (org-element--current-element): Fix regexp. + + * org-element.el (org-element--current-element): Fix regexp + matching latex environments. Discrepancy with regexp used in + `org-element-latex-environment-parser' introduced matching errors. + + * ox-ascii.el (org-ascii--table-cell-width): Correctly export + tables with width cookies. + + * org.el (org-insert-heading): Fix error when inserting a headline + before first headline, with point not at bol. Remove source block + check for consistency with behavior after first headline. Tiny + fix to docstring. + + * org.el (org-scan-tags): Fix typo in docstring. + + * ox.el (org-export--get-inbuffer-options): Return the empty + string instead of nil when TITLE keywords has no value. + (org-export--get-buffer-attributes): Do not set :title property + early. + (org-export--get-global-options): Do not ignore anymore nil values. + Small refactoring. + (org-export-as): Correctly set :title here. + + * org-list.el (org-list-repair): Fix typo in docstring. + + * ox-ascii.el (org-ascii--current-text-width): Tiny fix. + + * ox-org.el (org-org-section): Tiny refactoring. Use appropriate + property. + + * ox-org.el (org-org-headline): Ignore footnote sections. + (org-org-section): New function. + + * ox-beamer.el (org-beamer-select-environment): Ignore persistent + tags when displaying environments. + + * ox-ascii.el (org-ascii-indented-line-width): Update docstring. + (org-ascii-paragraph): Do not apply indentation to the very first line + of a section. + + * ox-latex.el (org-latex-inlinetask): Skip body if contents are + empty. + + * ox-html.el (org-html-standalone-image-p): Ensure paragraph + contains at least a link before return a non-nil value. Clarify + docstring. + + * ox.el (org-export-data): Always return a string, as specified + by the docstring. + + * ox-ascii.el (org-ascii--indent-string): Fix regexp to avoid + stack overflow in regexp matcher on very long lines. + + * org-element.el (org-element-timestamp-parser): Fix docstring. + + * ox-icalendar.el (org-icalendar-include-sexps, + org-icalendar-blocked-headline-p): Fix docstrings. + (org-icalendar-clear-blank-lines): Fix docstring and regexp. + + * ox-icalendar.el (org-icalendar-entry): Use + `org-icalendar-with-timestamps'. + +2014-10-03 Nicolas Richard <theonewiththeevillook@yahoo.fr> + + * org.el (org-cycle-internal-local): Don't show a trailing + character when cycling a subtree that ends with a non-newline + character at the end of the buffer or the narrowed region. + +2014-10-03 Sebastien Vauban <sva-news-D0wtAvR13HarG/iDocfnWg@public.gmane.org> + + * ox-ascii.el (org-ascii--box-string): Choose more universal + Unicode characters for boxquote corners. + +2014-10-03 Marco Wahl <marcowahlsoft@gmail.com> (tiny change) + + * org-agenda.el (org-agenda-bulk-mark) + (org-agenda-bulk-mark-regexp, org-agenda-bulk-toggle-all): Fix + org-agenda-bulk-mark-all when time-grid is shown. + 2014-06-23 Stefan Monnier <monnier@iro.umontreal.ca> * org-compat.el (activate-mark): Set transient-mark-mode buffer-locally. @@ -661,7 +1283,7 @@ * org-habit.el (org-habit-parse-todo): Match all TODO keywords, not just "TODO". -2013-01-07 U-usuario <rbenit68@yahoo.es> (tiny change) +2013-01-07 Miguel Ruiz <rbenit68@yahoo.es> (tiny change) * ob-gnuplot.el (org-babel-gnuplot-quote-tsv-field): Fix code typo. diff --git a/lisp/org/ob-C.el b/lisp/org/ob-C.el index c460be326f8..2fcec790c43 100644 --- a/lisp/org/ob-C.el +++ b/lisp/org/ob-C.el @@ -30,6 +30,8 @@ ;; - not much in the way of error feedback ;;; Code: +(eval-when-compile + (require 'cl)) (require 'ob) (require 'cc-mode) diff --git a/lisp/org/ob-R.el b/lisp/org/ob-R.el index 93d6fe284f5..b97fd912eae 100644 --- a/lisp/org/ob-R.el +++ b/lisp/org/ob-R.el @@ -173,12 +173,11 @@ This function is called by `org-babel-execute-src-block'." (defun org-babel-R-assign-elisp (name value colnames-p rownames-p) "Construct R code assigning the elisp VALUE to a variable named NAME." (if (listp value) - (let ((max (apply #'max (mapcar #'length (org-remove-if-not - #'sequencep value)))) - (min (apply #'min (mapcar #'length (org-remove-if-not - #'sequencep value)))) - (transition-file (org-babel-temp-file "R-import-"))) - ;; ensure VALUE has an orgtbl structure (depth of at least 2) + (let* ((lengths (mapcar 'length (org-remove-if-not 'sequencep value))) + (max (if lengths (apply 'max lengths) 0)) + (min (if lengths (apply 'min lengths) 0)) + (transition-file (org-babel-temp-file "R-import-"))) + ;; Ensure VALUE has an orgtbl structure (depth of at least 2). (unless (listp (car value)) (setq value (list value))) (with-temp-file transition-file (insert diff --git a/lisp/org/ob-core.el b/lisp/org/ob-core.el index 61d9ee3f870..a83f6b2fe01 100644 --- a/lisp/org/ob-core.el +++ b/lisp/org/ob-core.el @@ -38,6 +38,7 @@ (defvar org-src-lang-modes) (defvar org-babel-library-of-babel) (declare-function show-all "outline" ()) +(declare-function org-every "org" (pred seq)) (declare-function org-reduce "org" (CL-FUNC CL-SEQ &rest CL-KEYS)) (declare-function org-mark-ring-push "org" (&optional pos buffer)) (declare-function tramp-compat-make-temp-file "tramp-compat" @@ -1348,7 +1349,7 @@ specified in the properties of the current outline entry." (org-entry-get org-babel-current-src-block-location (concat "header-args:" lang) 'inherit)))))) -(defvar org-src-preserve-indentation) +(defvar org-src-preserve-indentation) ;; declare defcustom from org-src (defun org-babel-parse-src-block-match () "Parse the results from a match of the `org-babel-src-block-regexp'." (let* ((block-indentation (length (match-string 1))) @@ -2100,9 +2101,9 @@ code ---- the results are extracted in the syntax of the source ((funcall proper-list-p result) (goto-char beg) (insert (concat (orgtbl-to-orgtbl - (if (or (eq 'hline (car result)) - (and (listp (car result)) - (listp (cdr (car result))))) + (if (org-every + (lambda (el) (or (listp el) (eq el 'hline))) + result) result (list result)) '(:fmt (lambda (cell) (format "%s" cell)))) "\n")) (goto-char beg) (when (org-at-table-p) (org-table-align))) diff --git a/lisp/org/ob-exp.el b/lisp/org/ob-exp.el index 6d65496dbd4..761c9f17ad0 100644 --- a/lisp/org/ob-exp.el +++ b/lisp/org/ob-exp.el @@ -24,6 +24,7 @@ ;;; Code: (require 'ob-core) +(require 'org-src) (eval-when-compile (require 'cl)) diff --git a/lisp/org/ob-haskell.el b/lisp/org/ob-haskell.el index 22240addd8a..00066702a51 100644 --- a/lisp/org/ob-haskell.el +++ b/lisp/org/ob-haskell.el @@ -147,7 +147,6 @@ specifying a variable of the same value." (concat "[" (mapconcat #'org-babel-haskell-var-to-haskell var ", ") "]") (format "%S" var))) -(defvar org-src-preserve-indentation) (defvar org-export-copy-to-kill-ring) (declare-function org-export-to-file "ox" (backend file diff --git a/lisp/org/ob-lilypond.el b/lisp/org/ob-lilypond.el index 9b575464ea9..00a951d32d1 100644 --- a/lisp/org/ob-lilypond.el +++ b/lisp/org/ob-lilypond.el @@ -39,62 +39,62 @@ (defvar org-babel-default-header-args:lilypond '() "Default header arguments for lilypond code blocks. NOTE: The arguments are determined at lilypond compile time. -See (ly-set-header-args)") +See (org-babel-lilypond-set-header-args)") -(defvar ly-compile-post-tangle t +(defvar org-babel-lilypond-compile-post-tangle t "Following the org-babel-tangle (C-c C-v t) command, -ly-compile-post-tangle determines whether ob-lilypond should +org-babel-lilypond-compile-post-tangle determines whether ob-lilypond should automatically attempt to compile the resultant tangled file. If the value is nil, no automated compilation takes place. Default value is t") -(defvar ly-display-pdf-post-tangle t +(defvar org-babel-lilypond-display-pdf-post-tangle t "Following a successful LilyPond compilation -ly-display-pdf-post-tangle determines whether to automate the +org-babel-lilypond-display-pdf-post-tangle determines whether to automate the drawing / redrawing of the resultant pdf. If the value is nil, the pdf is not automatically redrawn. Default value is t") -(defvar ly-play-midi-post-tangle t +(defvar org-babel-lilypond-play-midi-post-tangle t "Following a successful LilyPond compilation -ly-play-midi-post-tangle determines whether to automate the +org-babel-lilypond-play-midi-post-tangle determines whether to automate the playing of the resultant midi file. If the value is nil, the midi file is not automatically played. Default value is t") -(defvar ly-OSX-ly-path +(defvar org-babel-lilypond-OSX-ly-path "/Applications/lilypond.app/Contents/Resources/bin/lilypond") -(defvar ly-OSX-pdf-path "open") -(defvar ly-OSX-midi-path "open") +(defvar org-babel-lilypond-OSX-pdf-path "open") +(defvar org-babel-lilypond-OSX-midi-path "open") -(defvar ly-nix-ly-path "/usr/bin/lilypond") -(defvar ly-nix-pdf-path "evince") -(defvar ly-nix-midi-path "timidity") +(defvar org-babel-lilypond-nix-ly-path "/usr/bin/lilypond") +(defvar org-babel-lilypond-nix-pdf-path "evince") +(defvar org-babel-lilypond-nix-midi-path "timidity") -(defvar ly-w32-ly-path "lilypond") -(defvar ly-w32-pdf-path "") -(defvar ly-w32-midi-path "") +(defvar org-babel-lilypond-w32-ly-path "lilypond") +(defvar org-babel-lilypond-w32-pdf-path "") +(defvar org-babel-lilypond-w32-midi-path "") -(defvar ly-gen-png nil +(defvar org-babel-lilypond-gen-png nil "Image generation (png) can be turned on by default by setting -LY-GEN-PNG to t") +ORG-BABEL-LILYPOND-GEN-PNG to t") -(defvar ly-gen-svg nil +(defvar org-babel-lilypond-gen-svg nil "Image generation (SVG) can be turned on by default by setting -LY-GEN-SVG to t") +ORG-BABEL-LILYPOND-GEN-SVG to t") -(defvar ly-gen-html nil +(defvar org-babel-lilypond-gen-html nil "HTML generation can be turned on by default by setting -LY-GEN-HTML to t") +ORG-BABEL-LILYPOND-GEN-HTML to t") -(defvar ly-gen-pdf nil +(defvar org-babel-lilypond-gen-pdf nil "PDF generation can be turned on by default by setting -LY-GEN-PDF to t") +ORG-BABEL-LILYPOND-GEN-PDF to t") -(defvar ly-use-eps nil +(defvar org-babel-lilypond-use-eps nil "You can force the compiler to use the EPS backend by setting -LY-USE-EPS to t") +ORG-BABEL-LILYPOND-USE-EPS to t") -(defvar ly-arrange-mode nil - "Arrange mode is turned on by setting LY-ARRANGE-MODE +(defvar org-babel-lilypond-arrange-mode nil + "Arrange mode is turned on by setting ORG-BABEL-LILYPOND-ARRANGE-MODE to t. In Arrange mode the following settings are altered from default... :tangle yes, :noweb yes @@ -123,20 +123,20 @@ Depending on whether we are in arrange mode either: 1. Attempt to execute lilypond block according to header settings (This is the default basic mode) 2. Tangle all lilypond blocks and process the result (arrange mode)" - (ly-set-header-args ly-arrange-mode) - (if ly-arrange-mode - (ly-tangle) - (ly-process-basic body params))) + (org-babel-lilypond-set-header-args org-babel-lilypond-arrange-mode) + (if org-babel-lilypond-arrange-mode + (org-babel-lilypond-tangle) + (org-babel-lilypond-process-basic body params))) -(defun ly-tangle () +(defun org-babel-lilypond-tangle () "ob-lilypond specific tangle, attempts to invoke =ly-execute-tangled-ly= if tangle is successful. Also passes specific arguments to =org-babel-tangle=" (interactive) (if (org-babel-tangle nil "yes" "lilypond") - (ly-execute-tangled-ly) nil)) + (org-babel-lilypond-execute-tangled-ly) nil)) -(defun ly-process-basic (body params) +(defun org-babel-lilypond-process-basic (body params) "Execute a lilypond block in basic mode." (let* ((result-params (cdr (assoc :result-params params))) (out-file (cdr (assoc :file params))) @@ -148,7 +148,7 @@ specific arguments to =org-babel-tangle=" (insert (org-babel-expand-body:generic body params))) (org-babel-eval (concat - (ly-determine-ly-path) + (org-babel-lilypond-determine-ly-path) " -dbackend=eps " "-dno-gs-load-fonts " "-dinclude-eps-fonts " @@ -167,45 +167,45 @@ specific arguments to =org-babel-tangle=" "Return an error because LilyPond exporter does not support sessions." (error "Sorry, LilyPond does not currently support sessions!")) -(defun ly-execute-tangled-ly () +(defun org-babel-lilypond-execute-tangled-ly () "Compile result of block tangle with lilypond. If error in compilation, attempt to mark the error in lilypond org file" - (when ly-compile-post-tangle - (let ((ly-tangled-file (ly-switch-extension + (when org-babel-lilypond-compile-post-tangle + (let ((org-babel-lilypond-tangled-file (org-babel-lilypond-switch-extension (buffer-file-name) ".lilypond")) - (ly-temp-file (ly-switch-extension + (org-babel-lilypond-temp-file (org-babel-lilypond-switch-extension (buffer-file-name) ".ly"))) - (if (file-exists-p ly-tangled-file) + (if (file-exists-p org-babel-lilypond-tangled-file) (progn - (when (file-exists-p ly-temp-file) - (delete-file ly-temp-file)) - (rename-file ly-tangled-file - ly-temp-file)) + (when (file-exists-p org-babel-lilypond-temp-file) + (delete-file org-babel-lilypond-temp-file)) + (rename-file org-babel-lilypond-tangled-file + org-babel-lilypond-temp-file)) (error "Error: Tangle Failed!") t) (switch-to-buffer-other-window "*lilypond*") (erase-buffer) - (ly-compile-lilyfile ly-temp-file) + (org-babel-lilypond-compile-lilyfile org-babel-lilypond-temp-file) (goto-char (point-min)) - (if (not (ly-check-for-compile-error ly-temp-file)) + (if (not (org-babel-lilypond-check-for-compile-error org-babel-lilypond-temp-file)) (progn (other-window -1) - (ly-attempt-to-open-pdf ly-temp-file) - (ly-attempt-to-play-midi ly-temp-file)) + (org-babel-lilypond-attempt-to-open-pdf org-babel-lilypond-temp-file) + (org-babel-lilypond-attempt-to-play-midi org-babel-lilypond-temp-file)) (error "Error in Compilation!")))) nil) -(defun ly-compile-lilyfile (file-name &optional test) +(defun org-babel-lilypond-compile-lilyfile (file-name &optional test) "Compile lilypond file and check for compile errors FILE-NAME is full path to lilypond (.ly) file" (message "Compiling LilyPond...") - (let ((arg-1 (ly-determine-ly-path)) ;program + (let ((arg-1 (org-babel-lilypond-determine-ly-path)) ;program (arg-2 nil) ;infile (arg-3 "*lilypond*") ;buffer (arg-4 t) ;display - (arg-5 (if ly-gen-png "--png" "")) ;&rest... - (arg-6 (if ly-gen-html "--html" "")) - (arg-7 (if ly-gen-pdf "--pdf" "")) - (arg-8 (if ly-use-eps "-dbackend=eps" "")) - (arg-9 (if ly-gen-svg "-dbackend=svg" "")) + (arg-5 (if org-babel-lilypond-gen-png "--png" "")) ;&rest... + (arg-6 (if org-babel-lilypond-gen-html "--html" "")) + (arg-7 (if org-babel-lilypond-gen-pdf "--pdf" "")) + (arg-8 (if org-babel-lilypond-use-eps "-dbackend=eps" "")) + (arg-9 (if org-babel-lilypond-gen-svg "-dbackend=svg" "")) (arg-10 (concat "--output=" (file-name-sans-extension file-name))) (arg-11 file-name)) (if test @@ -215,7 +215,7 @@ FILE-NAME is full path to lilypond (.ly) file" arg-1 arg-2 arg-3 arg-4 arg-5 arg-6 arg-7 arg-8 arg-9 arg-10 arg-11)))) -(defun ly-check-for-compile-error (file-name &optional test) +(defun org-babel-lilypond-check-for-compile-error (file-name &optional test) "Check for compile error. This is performed by parsing the *lilypond* buffer containing the output message from the compilation. @@ -226,24 +226,24 @@ nil as file-name since it is unused in this context" (if (not test) (if (not is-error) nil - (ly-process-compile-error file-name)) + (org-babel-lilypond-process-compile-error file-name)) is-error))) -(defun ly-process-compile-error (file-name) +(defun org-babel-lilypond-process-compile-error (file-name) "Process the compilation error that has occurred. FILE-NAME is full path to lilypond file" - (let ((line-num (ly-parse-line-num))) - (let ((error-lines (ly-parse-error-line file-name line-num))) - (ly-mark-error-line file-name error-lines) + (let ((line-num (org-babel-lilypond-parse-line-num))) + (let ((error-lines (org-babel-lilypond-parse-error-line file-name line-num))) + (org-babel-lilypond-mark-error-line file-name error-lines) (error "Error: Compilation Failed!")))) -(defun ly-mark-error-line (file-name line) +(defun org-babel-lilypond-mark-error-line (file-name line) "Mark the erroneous lines in the lilypond org buffer. FILE-NAME is full path to lilypond file. LINE is the erroneous line" (switch-to-buffer-other-window (concat (file-name-nondirectory - (ly-switch-extension file-name ".org")))) + (org-babel-lilypond-switch-extension file-name ".org")))) (let ((temp (point))) (goto-char (point-min)) (setq case-fold-search nil) @@ -254,7 +254,7 @@ LINE is the erroneous line" (goto-char (- (point) (length line)))) (goto-char temp)))) -(defun ly-parse-line-num (&optional buffer) +(defun org-babel-lilypond-parse-line-num (&optional buffer) "Extract error line number." (when buffer (set-buffer buffer)) @@ -276,12 +276,12 @@ LINE is the erroneous line" nil))) nil))) -(defun ly-parse-error-line (file-name lineNo) +(defun org-babel-lilypond-parse-error-line (file-name lineNo) "Extract the erroneous line from the tangled .ly file FILE-NAME is full path to lilypond file. LINENO is the number of the erroneous line" (with-temp-buffer - (insert-file-contents (ly-switch-extension file-name ".ly") + (insert-file-contents (org-babel-lilypond-switch-extension file-name ".ly") nil nil nil t) (if (> lineNo 0) (progn @@ -290,128 +290,128 @@ LINENO is the number of the erroneous line" (buffer-substring (point) (point-at-eol))) nil))) -(defun ly-attempt-to-open-pdf (file-name &optional test) +(defun org-babel-lilypond-attempt-to-open-pdf (file-name &optional test) "Attempt to display the generated pdf file FILE-NAME is full path to lilypond file If TEST is non-nil, the shell command is returned and is not run" - (when ly-display-pdf-post-tangle - (let ((pdf-file (ly-switch-extension file-name ".pdf"))) + (when org-babel-lilypond-display-pdf-post-tangle + (let ((pdf-file (org-babel-lilypond-switch-extension file-name ".pdf"))) (if (file-exists-p pdf-file) (let ((cmd-string - (concat (ly-determine-pdf-path) " " pdf-file))) + (concat (org-babel-lilypond-determine-pdf-path) " " pdf-file))) (if test cmd-string (start-process "\"Audition pdf\"" "*lilypond*" - (ly-determine-pdf-path) + (org-babel-lilypond-determine-pdf-path) pdf-file))) (message "No pdf file generated so can't display!"))))) -(defun ly-attempt-to-play-midi (file-name &optional test) +(defun org-babel-lilypond-attempt-to-play-midi (file-name &optional test) "Attempt to play the generated MIDI file FILE-NAME is full path to lilypond file If TEST is non-nil, the shell command is returned and is not run" - (when ly-play-midi-post-tangle - (let ((midi-file (ly-switch-extension file-name ".midi"))) + (when org-babel-lilypond-play-midi-post-tangle + (let ((midi-file (org-babel-lilypond-switch-extension file-name ".midi"))) (if (file-exists-p midi-file) (let ((cmd-string - (concat (ly-determine-midi-path) " " midi-file))) + (concat (org-babel-lilypond-determine-midi-path) " " midi-file))) (if test cmd-string (start-process "\"Audition midi\"" "*lilypond*" - (ly-determine-midi-path) + (org-babel-lilypond-determine-midi-path) midi-file))) (message "No midi file generated so can't play!"))))) -(defun ly-determine-ly-path (&optional test) +(defun org-babel-lilypond-determine-ly-path (&optional test) "Return correct path to ly binary depending on OS If TEST is non-nil, it contains a simulation of the OS for test purposes" (let ((sys-type (or test system-type))) (cond ((string= sys-type "darwin") - ly-OSX-ly-path) + org-babel-lilypond-OSX-ly-path) ((string= sys-type "windows-nt") - ly-w32-ly-path) - (t ly-nix-ly-path)))) + org-babel-lilypond-w32-ly-path) + (t org-babel-lilypond-nix-ly-path)))) -(defun ly-determine-pdf-path (&optional test) +(defun org-babel-lilypond-determine-pdf-path (&optional test) "Return correct path to pdf viewer depending on OS If TEST is non-nil, it contains a simulation of the OS for test purposes" (let ((sys-type (or test system-type))) (cond ((string= sys-type "darwin") - ly-OSX-pdf-path) + org-babel-lilypond-OSX-pdf-path) ((string= sys-type "windows-nt") - ly-w32-pdf-path) - (t ly-nix-pdf-path)))) + org-babel-lilypond-w32-pdf-path) + (t org-babel-lilypond-nix-pdf-path)))) -(defun ly-determine-midi-path (&optional test) +(defun org-babel-lilypond-determine-midi-path (&optional test) "Return correct path to midi player depending on OS If TEST is non-nil, it contains a simulation of the OS for test purposes" (let ((sys-type (or test test system-type))) (cond ((string= sys-type "darwin") - ly-OSX-midi-path) + org-babel-lilypond-OSX-midi-path) ((string= sys-type "windows-nt") - ly-w32-midi-path) - (t ly-nix-midi-path)))) + org-babel-lilypond-w32-midi-path) + (t org-babel-lilypond-nix-midi-path)))) -(defun ly-toggle-midi-play () +(defun org-babel-lilypond-toggle-midi-play () "Toggle whether midi will be played following a successful compilation." (interactive) - (setq ly-play-midi-post-tangle - (not ly-play-midi-post-tangle)) + (setq org-babel-lilypond-play-midi-post-tangle + (not org-babel-lilypond-play-midi-post-tangle)) (message (concat "Post-Tangle MIDI play has been " - (if ly-play-midi-post-tangle + (if org-babel-lilypond-play-midi-post-tangle "ENABLED." "DISABLED.")))) -(defun ly-toggle-pdf-display () +(defun org-babel-lilypond-toggle-pdf-display () "Toggle whether pdf will be displayed following a successful compilation." (interactive) - (setq ly-display-pdf-post-tangle - (not ly-display-pdf-post-tangle)) + (setq org-babel-lilypond-display-pdf-post-tangle + (not org-babel-lilypond-display-pdf-post-tangle)) (message (concat "Post-Tangle PDF display has been " - (if ly-display-pdf-post-tangle + (if org-babel-lilypond-display-pdf-post-tangle "ENABLED." "DISABLED.")))) -(defun ly-toggle-png-generation () +(defun org-babel-lilypond-toggle-png-generation () "Toggle whether png image will be generated by compilation." (interactive) - (setq ly-gen-png (not ly-gen-png)) + (setq org-babel-lilypond-gen-png (not org-babel-lilypond-gen-png)) (message (concat "PNG image generation has been " - (if ly-gen-png "ENABLED." "DISABLED.")))) + (if org-babel-lilypond-gen-png "ENABLED." "DISABLED.")))) -(defun ly-toggle-html-generation () +(defun org-babel-lilypond-toggle-html-generation () "Toggle whether html will be generated by compilation." (interactive) - (setq ly-gen-html (not ly-gen-html)) + (setq org-babel-lilypond-gen-html (not org-babel-lilypond-gen-html)) (message (concat "HTML generation has been " - (if ly-gen-html "ENABLED." "DISABLED.")))) + (if org-babel-lilypond-gen-html "ENABLED." "DISABLED.")))) -(defun ly-toggle-pdf-generation () +(defun org-babel-lilypond-toggle-pdf-generation () "Toggle whether pdf will be generated by compilation." (interactive) - (setq ly-gen-pdf (not ly-gen-pdf)) + (setq org-babel-lilypond-gen-pdf (not org-babel-lilypond-gen-pdf)) (message (concat "PDF generation has been " - (if ly-gen-pdf "ENABLED." "DISABLED.")))) + (if org-babel-lilypond-gen-pdf "ENABLED." "DISABLED.")))) -(defun ly-toggle-arrange-mode () +(defun org-babel-lilypond-toggle-arrange-mode () "Toggle whether in Arrange mode or Basic mode." (interactive) - (setq ly-arrange-mode - (not ly-arrange-mode)) + (setq org-babel-lilypond-arrange-mode + (not org-babel-lilypond-arrange-mode)) (message (concat "Arrange mode has been " - (if ly-arrange-mode "ENABLED." "DISABLED.")))) + (if org-babel-lilypond-arrange-mode "ENABLED." "DISABLED.")))) -(defun ly-switch-extension (file-name ext) +(defun org-babel-lilypond-switch-extension (file-name ext) "Utility command to swap current FILE-NAME extension with EXT" (concat (file-name-sans-extension file-name) ext)) -(defun ly-get-header-args (mode) +(defun org-babel-lilypond-get-header-args (mode) "Default arguments to use when evaluating a lilypond source block. These depend upon whether we are in arrange mode i.e. ARRANGE-MODE is t" @@ -425,11 +425,11 @@ mode i.e. ARRANGE-MODE is t" '((:results . "file") (:exports . "results"))))) -(defun ly-set-header-args (mode) +(defun org-babel-lilypond-set-header-args (mode) "Set org-babel-default-header-args:lilypond -dependent on LY-ARRANGE-MODE" +dependent on ORG-BABEL-LILYPOND-ARRANGE-MODE" (setq org-babel-default-header-args:lilypond - (ly-get-header-args mode))) + (org-babel-lilypond-get-header-args mode))) (provide 'ob-lilypond) diff --git a/lisp/org/ob-python.el b/lisp/org/ob-python.el index baa5764ac42..7cee1046690 100644 --- a/lisp/org/ob-python.el +++ b/lisp/org/ob-python.el @@ -56,8 +56,6 @@ This will typically be either 'python or 'python-mode." :package-version '(Org . "8.0") :type 'symbol) -(defvar org-src-preserve-indentation) - (defcustom org-babel-python-hline-to "None" "Replace hlines in incoming tables with this when translating to python." :group 'org-babel diff --git a/lisp/org/ob-sh.el b/lisp/org/ob-sh.el index 96f275bc87a..856c7a01c88 100644 --- a/lisp/org/ob-sh.el +++ b/lisp/org/ob-sh.el @@ -123,7 +123,13 @@ Emacs-lisp table, otherwise return the results as a string." (when (and session (not (string= session "none"))) (save-window-excursion (or (org-babel-comint-buffer-livep session) - (progn (shell session) (get-buffer (current-buffer))))))) + (progn + (shell session) + ;; Needed for Emacs 23 since the marker is initially + ;; undefined and the filter functions try to use it without + ;; checking. + (set-marker comint-last-output-start (point)) + (get-buffer (current-buffer))))))) (defvar org-babel-sh-eoe-indicator "echo 'org_babel_sh_eoe'" "String to indicate that evaluation has completed.") diff --git a/lisp/org/ob-tangle.el b/lisp/org/ob-tangle.el index 37b2d92a8cf..3a43b42e3ad 100644 --- a/lisp/org/ob-tangle.el +++ b/lisp/org/ob-tangle.el @@ -225,13 +225,14 @@ used to limit the exported source code blocks by language." (concat base-name "." ext) base-name)))) (when file-name ;; Possibly create the parent directories for file. - (when (let ((m (funcall get-spec :mkdirp))) - (and m (not (string= m "no")))) - (make-directory (file-name-directory file-name) 'parents)) + (let ((m (funcall get-spec :mkdirp)) + (fnd (file-name-directory file-name))) + (and m fnd (not (string= m "no")) + (make-directory fnd 'parents))) ;; delete any old versions of file - (when (and (file-exists-p file-name) - (not (member file-name (mapcar #'car path-collector)))) - (delete-file file-name)) + (and (file-exists-p file-name) + (not (member file-name (mapcar #'car path-collector))) + (delete-file file-name)) ;; drop source-block to file (with-temp-buffer (when (fboundp lang-f) (ignore-errors (funcall lang-f))) diff --git a/lisp/org/org-agenda.el b/lisp/org/org-agenda.el index 18fada15de8..c11c1c8ba41 100644 --- a/lisp/org/org-agenda.el +++ b/lisp/org/org-agenda.el @@ -390,32 +390,36 @@ the daily/weekly agenda, see `org-agenda-skip-function'.") (repeat :inline t :tag "Conditions for skipping" (choice :tag "Condition type" - (list :tag "Regexp matches" :inline t (const :format "" regexp) (regexp)) - (list :tag "Regexp does not match" :inline t (const :format "" notregexp) (regexp)) + (list :tag "Regexp matches" :inline t + (const :format "" 'regexp) + (regexp)) + (list :tag "Regexp does not match" :inline t + (const :format "" 'notregexp) + (regexp)) (list :tag "TODO state is" :inline t - (const todo) + (const 'todo) (choice - (const :tag "any not-done state" todo) - (const :tag "any done state" done) - (const :tag "any state" any) + (const :tag "Any not-done state" 'todo) + (const :tag "Any done state" 'done) + (const :tag "Any state" 'any) (list :tag "Keyword list" (const :format "" quote) (repeat (string :tag "Keyword"))))) (list :tag "TODO state is not" :inline t - (const nottodo) + (const 'nottodo) (choice - (const :tag "any not-done state" todo) - (const :tag "any done state" done) - (const :tag "any state" any) + (const :tag "Any not-done state" 'todo) + (const :tag "Any done state" 'done) + (const :tag "Any state" 'any) (list :tag "Keyword list" (const :format "" quote) (repeat (string :tag "Keyword"))))) - (const :tag "scheduled" scheduled) - (const :tag "not scheduled" notscheduled) - (const :tag "deadline" deadline) - (const :tag "no deadline" notdeadline) - (const :tag "timestamp" timestamp) - (const :tag "no timestamp" nottimestamp)))))) + (const :tag "scheduled" 'scheduled) + (const :tag "not scheduled" 'notscheduled) + (const :tag "deadline" 'deadline) + (const :tag "no deadline" 'notdeadline) + (const :tag "timestamp" 'timestamp) + (const :tag "no timestamp" 'nottimestamp)))))) (list :tag "Non-standard skipping condition" :value (org-agenda-skip-function) (const org-agenda-skip-function) @@ -1468,6 +1472,7 @@ symbols specifying conditions when the grid should be displayed: weekly if the agenda shows an entire week today show grid on current date, independent of daily/weekly display require-timed show grid only if at least one item has a time specification + remove-match skip grid times already present in an entry The second item is a string which will be placed behind the grid time. @@ -2092,11 +2097,9 @@ When nil, `q' will kill the single agenda buffer." org-agenda-info org-agenda-pre-window-conf org-agenda-columns-active - org-agenda-tag-filter-overlays org-agenda-tag-filter - org-agenda-cat-filter-overlays org-agenda-category-filter - org-agenda-re-filter-overlays + org-agenda-top-headline-filter org-agenda-regexp-filter org-agenda-markers org-agenda-last-search-view-search-was-boolean @@ -2158,10 +2161,11 @@ The following commands are available: nil t) (unless org-agenda-keep-modes (setq org-agenda-follow-mode org-agenda-start-with-follow-mode - org-agenda-entry-text-mode org-agenda-start-with-entry-text-mode - org-agenda-clockreport-mode org-agenda-start-with-clockreport-mode - org-agenda-show-log org-agenda-start-with-log-mode)) - + org-agenda-entry-text-mode org-agenda-start-with-entry-text-mode)) + (setq org-agenda-show-log org-agenda-start-with-log-mode) + (setq org-agenda-clockreport-mode org-agenda-start-with-clockreport-mode) + (add-to-invisibility-spec '(org-filtered)) + (add-to-invisibility-spec '(org-link)) (easy-menu-change '("Agenda") "Agenda Files" (append @@ -2604,7 +2608,7 @@ type." :package-version '(Org . "8.0") :group 'org-agenda-custom-commands :type '(choice (symbol :tag "No limit" nil) - (integer :tag "Max number of entries") + (integer :tag "Max number of TODOs") (repeat (cons (choice :tag "Agenda type" (const agenda) @@ -2612,7 +2616,7 @@ type." (const tags) (const search) (const timeline)) - (integer :tag "Max number of entries"))))) + (integer :tag "Max number of TODOs"))))) (defcustom org-agenda-max-tags nil "Maximum number of tagged entries to display in an agenda. @@ -2623,7 +2627,7 @@ type." :package-version '(Org . "8.0") :group 'org-agenda-custom-commands :type '(choice (symbol :tag "No limit" nil) - (integer :tag "Max number of entries") + (integer :tag "Max number of tagged entries") (repeat (cons (choice :tag "Agenda type" (const agenda) @@ -2631,7 +2635,7 @@ type." (const tags) (const search) (const timeline)) - (integer :tag "Max number of entries"))))) + (integer :tag "Max number of tagged entries"))))) (defcustom org-agenda-max-effort nil "Maximum cumulated effort duration for the agenda. @@ -2642,7 +2646,7 @@ to limit entries to in this type." :package-version '(Org . "8.0") :group 'org-agenda-custom-commands :type '(choice (symbol :tag "No limit" nil) - (integer :tag "Max number of entries") + (integer :tag "Max number of minutes") (repeat (cons (choice :tag "Agenda type" (const agenda) @@ -2650,7 +2654,7 @@ to limit entries to in this type." (const tags) (const search) (const timeline)) - (integer :tag "Max number of entries"))))) + (integer :tag "Max number of minutes"))))) (defvar org-keys nil) (defvar org-match nil) @@ -3324,19 +3328,12 @@ If AGENDA-BUFFER-NAME, use this as the buffer name for the agenda to write." (org-let (if nosettings nil org-agenda-exporter-settings) '(save-excursion (save-window-excursion - (org-agenda-mark-filtered-text) (let ((bs (copy-sequence (buffer-string))) beg content) - (org-agenda-unmark-filtered-text) (with-temp-buffer (rename-buffer org-agenda-write-buffer-name t) (set-buffer-modified-p nil) (insert bs) (org-agenda-remove-marked-text 'org-filtered) - (while (setq beg (text-property-any (point-min) (point-max) - 'org-filtered t)) - (delete-region - beg (or (next-single-property-change beg 'org-filtered) - (point-max)))) (run-hooks 'org-agenda-before-write-hook) (cond ((org-bound-and-true-p org-mobile-creating-agendas) @@ -3356,7 +3353,7 @@ If AGENDA-BUFFER-NAME, use this as the buffer name for the agenda to write." content))) (find-file file) (erase-buffer) - (mapcar (lambda (s) (org-paste-subtree 1 s)) (reverse content)) + (dolist (s content) (org-paste-subtree 1 s)) (write-file file) (kill-buffer (current-buffer)) (message "Org file written to %s" file))) @@ -3402,28 +3399,6 @@ If AGENDA-BUFFER-NAME, use this as the buffer name for the agenda to write." org-agenda-buffer-name))) (when open (org-open-file file))) -(defvar org-agenda-tag-filter-overlays nil) -(defvar org-agenda-cat-filter-overlays nil) -(defvar org-agenda-re-filter-overlays nil) - -(defun org-agenda-mark-filtered-text () - "Mark all text hidden by filtering with a text property." - (let ((inhibit-read-only t)) - (mapc - (lambda (o) - (when (equal (overlay-buffer o) (current-buffer)) - (put-text-property - (overlay-start o) (overlay-end o) - 'org-filtered t))) - (append org-agenda-tag-filter-overlays - org-agenda-cat-filter-overlays - org-agenda-re-filter-overlays)))) - -(defun org-agenda-unmark-filtered-text () - "Remove the filtering text property." - (let ((inhibit-read-only t)) - (remove-text-properties (point-min) (point-max) '(org-filtered t)))) - (defun org-agenda-remove-marked-text (property &optional value) "Delete all text marked with VALUE of PROPERTY. VALUE defaults to t." @@ -3432,7 +3407,7 @@ VALUE defaults to t." (while (setq beg (text-property-any (point-min) (point-max) property value)) (delete-region - beg (or (next-single-property-change beg 'org-filtered) + beg (or (next-single-property-change beg property) (point-max)))))) (defun org-agenda-add-entry-text () @@ -3557,7 +3532,6 @@ removed from the entry content. Currently only `planning' is allowed here." (defvar org-agenda-category-filter nil) (defvar org-agenda-regexp-filter nil) (defvar org-agenda-top-headline-filter nil) -(defvar org-agenda-tag-filter-while-redo nil) (defvar org-agenda-tag-filter-preset nil "A preset of the tags filter used for secondary agenda filtering. This must be a list of strings, each string must be a single tag preceded @@ -3609,10 +3583,12 @@ generating a new one." ;; does not have org variables local org-agenda-this-buffer-is-sticky)))) -(defun org-agenda-prepare-window (abuf) - "Setup agenda buffer in the window." - (let* ((awin (get-buffer-window abuf)) - wconf) +(defun org-agenda-prepare-window (abuf filter-alist) + "Setup agenda buffer in the window. +ABUF is the buffer for the agenda window. +FILTER-ALIST is an alist of filters we need to apply when +`org-agenda-persistent-filter' is non-nil." + (let* ((awin (get-buffer-window abuf)) wconf) (cond ((equal (current-buffer) abuf) nil) (awin (select-window awin)) @@ -3626,68 +3602,76 @@ generating a new one." ((equal org-agenda-window-setup 'reorganize-frame) (delete-other-windows) (org-switch-to-buffer-other-window abuf))) - ;; additional test in case agenda is invoked from within agenda - ;; buffer via elisp link + (setq org-agenda-tag-filter (cdr (assoc 'tag filter-alist))) + (setq org-agenda-category-filter (cdr (assoc 'cat filter-alist))) + (setq org-agenda-regexp-filter (cdr (assoc 're filter-alist))) + ;; Additional test in case agenda is invoked from within agenda + ;; buffer via elisp link. (unless (equal (current-buffer) abuf) (org-pop-to-buffer-same-window abuf)) (setq org-agenda-pre-window-conf (or org-agenda-pre-window-conf wconf)))) (defun org-agenda-prepare (&optional name) - (if (org-agenda-use-sticky-p) - (progn - ;; Popup existing buffer - (org-agenda-prepare-window (get-buffer org-agenda-buffer-name)) - (message "Sticky Agenda buffer, use `r' to refresh") - (or org-agenda-multi (org-agenda-fit-window-to-buffer)) - (throw 'exit "Sticky Agenda buffer, use `r' to refresh")) - (setq org-todo-keywords-for-agenda nil) - (setq org-drawers-for-agenda nil) - (unless org-agenda-persistent-filter - (setq org-agenda-tag-filter nil - org-agenda-category-filter nil - org-agenda-regexp-filter nil)) - (put 'org-agenda-tag-filter :preset-filter - org-agenda-tag-filter-preset) - (put 'org-agenda-category-filter :preset-filter - org-agenda-category-filter-preset) - (put 'org-agenda-regexp-filter :preset-filter - org-agenda-regexp-filter-preset) - (if org-agenda-multi + (let ((filter-alist (if org-agenda-persistent-filter + (list `(tag . ,org-agenda-tag-filter) + `(re . ,org-agenda-regexp-filter) + `(car . ,org-agenda-category-filter))))) + (if (org-agenda-use-sticky-p) (progn - (setq buffer-read-only nil) - (goto-char (point-max)) - (unless (or (bobp) org-agenda-compact-blocks - (not org-agenda-block-separator)) - (insert "\n" - (if (stringp org-agenda-block-separator) - org-agenda-block-separator - (make-string (window-width) org-agenda-block-separator)) - "\n")) - (narrow-to-region (point) (point-max))) - (setq org-done-keywords-for-agenda nil) - - ;; Setting any org variables that are in org-agenda-local-vars - ;; list need to be done after the prepare call - (org-agenda-prepare-window (get-buffer-create org-agenda-buffer-name)) - (setq buffer-read-only nil) - (org-agenda-reset-markers) - (let ((inhibit-read-only t)) (erase-buffer)) - (org-agenda-mode) - (setq org-agenda-buffer (current-buffer)) - (setq org-agenda-contributing-files nil) - (setq org-agenda-columns-active nil) - (org-agenda-prepare-buffers (org-agenda-files nil 'ifmode)) - (setq org-todo-keywords-for-agenda - (org-uniquify org-todo-keywords-for-agenda)) - (setq org-done-keywords-for-agenda - (org-uniquify org-done-keywords-for-agenda)) - (setq org-drawers-for-agenda (org-uniquify org-drawers-for-agenda)) - (setq org-agenda-last-prefix-arg current-prefix-arg) - (setq org-agenda-this-buffer-name org-agenda-buffer-name) - (and name (not org-agenda-name) - (org-set-local 'org-agenda-name name))) - (setq buffer-read-only nil))) + (put 'org-agenda-tag-filter :preset-filter nil) + (put 'org-agenda-category-filter :preset-filter nil) + (put 'org-agenda-regexp-filter :preset-filter nil) + ;; Popup existing buffer + (org-agenda-prepare-window (get-buffer org-agenda-buffer-name) + filter-alist) + (message "Sticky Agenda buffer, use `r' to refresh") + (or org-agenda-multi (org-agenda-fit-window-to-buffer)) + (throw 'exit "Sticky Agenda buffer, use `r' to refresh")) + (setq org-todo-keywords-for-agenda nil) + (setq org-drawers-for-agenda nil) + (put 'org-agenda-tag-filter :preset-filter + org-agenda-tag-filter-preset) + (put 'org-agenda-category-filter :preset-filter + org-agenda-category-filter-preset) + (put 'org-agenda-regexp-filter :preset-filter + org-agenda-regexp-filter-preset) + (if org-agenda-multi + (progn + (setq buffer-read-only nil) + (goto-char (point-max)) + (unless (or (bobp) org-agenda-compact-blocks + (not org-agenda-block-separator)) + (insert "\n" + (if (stringp org-agenda-block-separator) + org-agenda-block-separator + (make-string (window-width) org-agenda-block-separator)) + "\n")) + (narrow-to-region (point) (point-max))) + (setq org-done-keywords-for-agenda nil) + + ;; Setting any org variables that are in org-agenda-local-vars + ;; list need to be done after the prepare call + (org-agenda-prepare-window + (get-buffer-create org-agenda-buffer-name) filter-alist) + (setq buffer-read-only nil) + (org-agenda-reset-markers) + (let ((inhibit-read-only t)) (erase-buffer)) + (org-agenda-mode) + (setq org-agenda-buffer (current-buffer)) + (setq org-agenda-contributing-files nil) + (setq org-agenda-columns-active nil) + (org-agenda-prepare-buffers (org-agenda-files nil 'ifmode)) + (setq org-todo-keywords-for-agenda + (org-uniquify org-todo-keywords-for-agenda)) + (setq org-done-keywords-for-agenda + (org-uniquify org-done-keywords-for-agenda)) + (setq org-drawers-for-agenda (org-uniquify org-drawers-for-agenda)) + (setq org-agenda-last-prefix-arg current-prefix-arg) + (setq org-agenda-this-buffer-name org-agenda-buffer-name) + (and name (not org-agenda-name) + (org-set-local 'org-agenda-name name))) + (setq buffer-read-only nil)))) (defvar org-agenda-overriding-columns-format) ; From org-colview.el (defun org-agenda-finalize () @@ -3739,13 +3723,15 @@ generating a new one." (save-excursion (goto-char (point-min)) (while (equal (forward-line) 0) - (when (setq mrk (or (get-text-property (point) 'org-hd-marker) - (get-text-property (point) 'org-hd-marker))) + (when (setq mrk (get-text-property (point) 'org-hd-marker)) (put-text-property (point-at-bol) (point-at-eol) 'tags (org-with-point-at mrk (delete-dups (mapcar 'downcase (org-get-tags-at)))))))))) (run-hooks 'org-agenda-finalize-hook) + (when org-agenda-top-headline-filter + (org-agenda-filter-top-headline-apply + org-agenda-top-headline-filter)) (when org-agenda-tag-filter (org-agenda-filter-apply org-agenda-tag-filter 'tag)) (when (get 'org-agenda-tag-filter :preset-filter) @@ -4326,14 +4312,6 @@ items if they have an hour specification like [h]h:mm." (setq p (plist-put p :tstart clocktable-start)) (setq p (plist-put p :tend clocktable-end)) (setq p (plist-put p :scope 'agenda)) - (when (and (eq org-agenda-clockreport-mode 'with-filter) - (setq filter (or org-agenda-tag-filter-while-redo - (get 'org-agenda-tag-filter :preset-filter)))) - (setq p (plist-put p :tags (mapconcat (lambda (x) - (if (string-match "[<>=]" x) - "" - x)) - filter "")))) (setq tbl (apply 'org-clock-get-clocktable p)) (insert tbl))) (goto-char (point-min)) @@ -5111,8 +5089,7 @@ of what a project is and how to check if it stuck, customize the variable "Get the (Emacs Calendar) diary entries for DATE." (require 'diary-lib) (let* ((diary-fancy-buffer "*temporary-fancy-diary-buffer*") - (diary-display-hook '(fancy-diary-display)) - (diary-display-function 'fancy-diary-display) + (diary-display-function 'diary-fancy-display) (pop-up-frames nil) (diary-list-entries-hook (cons 'org-diary-default-entry diary-list-entries-hook)) @@ -5703,7 +5680,7 @@ This function is invoked if `org-agenda-todo-ignore-deadlines', (setq txt (org-agenda-format-item extra txt level category tags 'time)) (org-add-props txt props 'org-marker marker 'org-category category 'date date 'todo-state todo-state - 'org-category-position category-pos 'tags tags + 'org-category-position category-pos 'level level 'type "sexp" 'warntime warntime) (push txt ee))))) @@ -6781,8 +6758,10 @@ The optional STRING argument forces conversion into a 5 character wide string HH:MM." (save-match-data (when - (or (string-match "\\<\\([012]?[0-9]\\)\\(:\\([0-5][0-9]\\)\\)\\([AaPp][Mm]\\)?\\> *" s) - (string-match "\\<\\([012]?[0-9]\\)\\(:\\([0-5][0-9]\\)\\)?\\([AaPp][Mm]\\)\\> *" s)) + (and + (or (string-match "\\<\\([012]?[0-9]\\)\\(:\\([0-5][0-9]\\)\\)\\([AaPp][Mm]\\)?\\> *" s) + (string-match "\\<\\([012]?[0-9]\\)\\(:\\([0-5][0-9]\\)\\)?\\([AaPp][Mm]\\)\\> *" s)) + (not (eq (get-text-property 1 'face s) 'org-link))) (let* ((h (string-to-number (match-string 1 s))) (m (if (match-end 3) (string-to-number (match-string 3 s)) 0)) (ampm (if (match-end 4) (downcase (match-string 4 s)))) @@ -7010,7 +6989,7 @@ The optional argument TYPE tells the agenda type." (cond ((< ta tb) -1) ((< tb ta) +1)))) -(defsubst org-cmp-ts (a b &optional type) +(defsubst org-cmp-ts (a b type) "Compare the timestamps values of entries A and B. When TYPE is \"scheduled\", \"deadline\", \"timestamp\" or \"timestamp_ia\", compare within each of these type. When TYPE @@ -7018,9 +6997,11 @@ is the empty string, compare all timestamps without respect of their type." (let* ((def (if org-sort-agenda-notime-is-late most-positive-fixnum -1)) (ta (or (and (string-match type (or (get-text-property 1 'type a) "")) - (get-text-property 1 'ts-date a)) def)) + (get-text-property 1 'ts-date a)) + def)) (tb (or (and (string-match type (or (get-text-property 1 'type b) "")) - (get-text-property 1 'ts-date b)) def))) + (get-text-property 1 'ts-date b)) + def))) (cond ((< ta tb) -1) ((< tb ta) +1)))) @@ -7046,7 +7027,7 @@ their type." (org-cmp-ts a b "deadline"))) (deadline-down (if deadline-up (- deadline-up) nil)) (tsia-up (and (org-em 'tsia-up 'tsia-down ss) - (org-cmp-ts a b "iatimestamp_ia"))) + (org-cmp-ts a b "timestamp_ia"))) (tsia-down (if tsia-up (- tsia-up) nil)) (ts-up (and (org-em 'ts-up 'ts-down ss) (org-cmp-ts a b "timestamp"))) @@ -7283,7 +7264,6 @@ in the agenda." (cat-preset (get 'org-agenda-category-filter :preset-filter)) (re-filter org-agenda-regexp-filter) (re-preset (get 'org-agenda-regexp-filter :preset-filter)) - (org-agenda-tag-filter-while-redo (or tag-filter tag-preset)) (cols org-agenda-columns-active) (line (org-current-line)) (window-line (- line (org-current-line (window-start)))) @@ -7316,9 +7296,12 @@ in the agenda." (put 'org-agenda-tag-filter :preset-filter tag-preset) (put 'org-agenda-category-filter :preset-filter cat-preset) (put 'org-agenda-regexp-filter :preset-filter re-preset) - (and (or tag-filter tag-preset) (org-agenda-filter-apply tag-filter 'tag)) - (and (or cat-filter cat-preset) (org-agenda-filter-apply cat-filter 'category)) - (and (or re-filter re-preset) (org-agenda-filter-apply re-filter 'regexp)) + (let ((tag (or tag-filter tag-preset)) + (cat (or cat-filter cat-preset)) + (re (or re-filter re-preset))) + (when tag (org-agenda-filter-apply tag 'tag)) + (when cat (org-agenda-filter-apply cat 'category)) + (when re (org-agenda-filter-apply re 'regexp))) (and top-hl-filter (org-agenda-filter-top-headline-apply top-hl-filter)) (and cols (org-called-interactively-p 'any) (org-agenda-columns)) (org-goto-line line) @@ -7344,7 +7327,7 @@ The category is that of the current line." (org-agenda-filter-apply (setq org-agenda-category-filter (list (concat "+" cat))) 'category)) - ((error "No category at point")))))) + (t (error "No category at point")))))) (defun org-find-top-headline (&optional pos) "Find the topmost parent headline and return it." @@ -7365,10 +7348,10 @@ The top headline is that of the current line." (progn (setq org-agenda-filtered-by-top-headline nil org-agenda-top-headline-filter nil) - (org-agenda-filter-show-all-cat)) - (let ((cat (org-find-top-headline (org-get-at-bol 'org-hd-marker)))) - (if cat (org-agenda-filter-top-headline-apply cat strip) - (error "No top-level category at point"))))) + (org-agenda-filter-show-all-top-filter)) + (let ((toph (org-find-top-headline (org-get-at-bol 'org-hd-marker)))) + (if toph (org-agenda-filter-top-headline-apply toph strip) + (error "No top-level headline at point"))))) (defvar org-agenda-regexp-filter nil) (defun org-agenda-filter-by-regexp (strip) @@ -7397,7 +7380,10 @@ With two prefix arguments, remove the regexp filters." (when org-agenda-category-filter (org-agenda-filter-show-all-cat)) (when org-agenda-regexp-filter - (org-agenda-filter-show-all-re))) + (org-agenda-filter-show-all-re)) + (when org-agenda-top-headline-filter + (org-agenda-filter-show-all-top-filter)) + (org-agenda-finalize)) (defun org-agenda-filter-by-tag (strip &optional char narrow) "Keep only those lines in the agenda buffer that have a specific tag. @@ -7500,8 +7486,7 @@ to switch to narrowing." (org-agenda-filter-apply org-agenda-tag-filter 'tag) (setq maybe-refresh t)) (t (error "Invalid tag selection character %c" char))) - (when (and maybe-refresh - (eq org-agenda-clockreport-mode 'with-filter)) + (when maybe-refresh (org-agenda-redo)))) (defun org-agenda-get-represented-tags () @@ -7622,13 +7607,12 @@ When NO-OPERATOR is non-nil, do not add the + operator to returned tags." ;; Deactivate `org-agenda-entry-text-mode' when filtering (if org-agenda-entry-text-mode (org-agenda-entry-text-mode)) (let (tags cat txt) - (setq org-agenda-filter-form - (org-agenda-filter-make-matcher filter type)) - (if (and (eq type 'category) - (not (equal (substring (car filter) 0 1) "-"))) - ;; Only set `org-agenda-filtered-by-category' to t - ;; when a unique category is used as the filter - (setq org-agenda-filtered-by-category t)) + (setq org-agenda-filter-form (org-agenda-filter-make-matcher filter type)) + ;; Only set `org-agenda-filtered-by-category' to t when a unique + ;; category is used as the filter: + (setq org-agenda-filtered-by-category + (and (eq type 'category) + (not (equal (substring (car filter) 0 1) "-")))) (org-agenda-set-mode-name) (save-excursion (goto-char (point-min)) @@ -7659,7 +7643,7 @@ When NO-OPERATOR is non-nil, do not add the + operator to returned tags." (tophl (and pos (org-find-top-headline pos)))) (if (and tophl (funcall (if negative 'identity 'not) (string= hl tophl))) - (org-agenda-filter-hide-line 'category))) + (org-agenda-filter-hide-line 'top-headline))) (beginning-of-line 2))) (if (get-char-property (point) 'invisible) (org-agenda-previous-line)) @@ -7669,50 +7653,35 @@ When NO-OPERATOR is non-nil, do not add the + operator to returned tags." (defun org-agenda-filter-hide-line (type) "Hide lines with TYPE in the agenda buffer." (let* ((b (max (point-min) (1- (point-at-bol)))) - (e (point-at-eol)) - (ov (make-overlay b e))) - (overlay-put ov 'invisible t) - (overlay-put ov 'intangible t) - (overlay-put ov 'type type) - (cond ((eq type 'tag) (push ov org-agenda-tag-filter-overlays)) - ((eq type 'category) (push ov org-agenda-cat-filter-overlays)) - ((eq type 'regexp) (push ov org-agenda-re-filter-overlays))))) - -(defun org-agenda-fix-tags-filter-overlays-at (&optional pos) - (setq pos (or pos (point))) + (e (point-at-eol))) + (let ((inhibit-read-only t)) + (add-text-properties + b e `(invisible org-filtered org-filter-type ,type))))) + +(defun org-agenda-remove-filter (type) + (interactive) + "Remove filter of type TYPE from the agenda buffer." (save-excursion - (dolist (ov (overlays-at pos)) - (when (and (overlay-get ov 'invisible) - (eq (overlay-get ov 'type) 'tag)) + (goto-char (point-min)) + (let ((inhibit-read-only t) pos) + (while (setq pos (text-property-any (point) (point-max) 'org-filter-type type)) (goto-char pos) - (if (< (overlay-start ov) (point-at-eol)) - (move-overlay ov (point-at-eol) - (overlay-end ov))))))) + (remove-text-properties + (point) (next-single-property-change (point) 'org-filter-type) + `(invisible org-filtered org-filter-type ,type)))) + (set (intern (format "org-agenda-%s-filter" (intern-soft type))) nil) + (setq org-agenda-filter-form nil) + (org-agenda-set-mode-name) + (org-agenda-finalize))) (defun org-agenda-filter-show-all-tag nil - "Remove tag filter overlays from the agenda buffer." - (mapc 'delete-overlay org-agenda-tag-filter-overlays) - (setq org-agenda-tag-filter-overlays nil - org-agenda-tag-filter nil - org-agenda-filter-form nil) - (org-agenda-set-mode-name)) - + (org-agenda-remove-filter 'tag)) (defun org-agenda-filter-show-all-re nil - "Remove regexp filter overlays from the agenda buffer." - (mapc 'delete-overlay org-agenda-re-filter-overlays) - (setq org-agenda-re-filter-overlays nil - org-agenda-regexp-filter nil - org-agenda-filter-form nil) - (org-agenda-set-mode-name)) - + (org-agenda-remove-filter 'regexp)) (defun org-agenda-filter-show-all-cat nil - "Remove category filter overlays from the agenda buffer." - (mapc 'delete-overlay org-agenda-cat-filter-overlays) - (setq org-agenda-cat-filter-overlays nil - org-agenda-filtered-by-category nil - org-agenda-category-filter nil - org-agenda-filter-form nil) - (org-agenda-set-mode-name)) + (org-agenda-remove-filter 'category)) +(defun org-agenda-filter-show-all-top-filter nil + (org-agenda-remove-filter 'top-headline)) (defun org-agenda-manipulate-query-add () "Manipulate the query by adding a search term with positive selection. @@ -8106,15 +8075,12 @@ so that the date SD will be in that range." (format " (maximum number of lines is %d)" (if (integerp arg) arg org-agenda-entry-text-maxlines)))))) -(defun org-agenda-clockreport-mode (&optional with-filter) - "Toggle clocktable mode in an agenda buffer. -With prefix arg WITH-FILTER, make the clocktable respect the current -agenda filter." - (interactive "P") +(defun org-agenda-clockreport-mode () + "Toggle clocktable mode in an agenda buffer." + (interactive) (org-agenda-check-type t 'agenda) - (if with-filter - (setq org-agenda-clockreport-mode 'with-filter) - (setq org-agenda-clockreport-mode (not org-agenda-clockreport-mode))) + (setq org-agenda-clockreport-mode (not org-agenda-clockreport-mode)) + (setq org-agenda-start-with-clockreport-mode org-agenda-clockreport-mode) (org-agenda-set-mode-name) (org-agenda-redo) (message "Clocktable mode is %s" @@ -8135,6 +8101,7 @@ With a double `C-u' prefix arg, show *only* log items, nothing else." nil 'clockcheck)) (special '(closed clock state)) (t (not org-agenda-show-log)))) + (setq org-agenda-start-with-log-mode org-agenda-show-log) (org-agenda-set-mode-name) (org-agenda-redo) (message "Log mode is %s" @@ -8252,10 +8219,7 @@ When called with a prefix argument, include all archive files as well." " Archives" (format " :%s:" org-archive-tag)) "") - (if org-agenda-clockreport-mode - (if (eq org-agenda-clockreport-mode 'with-filter) - " Clock{}" " Clock") - ""))) + (if org-agenda-clockreport-mode " Clock" ""))) (force-mode-line-update)) (define-obsolete-function-alias @@ -8623,7 +8587,8 @@ if it was hidden in the outline." (interactive "p") (let ((win (selected-window))) (org-agenda-goto t) - (org-recenter-heading 1) + (org-back-to-heading) + (set-window-start (selected-window) (point-at-bol)) (cond ((= more 0) (hide-subtree) @@ -8662,11 +8627,6 @@ if it was hidden in the outline." (message "Remote: SUBTREE AND ALL DRAWERS"))) (select-window win))) -(defun org-recenter-heading (n) - (save-excursion - (org-back-to-heading) - (recenter n))) - (defvar org-agenda-cycle-counter nil) (defun org-agenda-cycle-show (&optional n) "Show the current entry in another window, with default settings. @@ -9177,8 +9137,6 @@ Called with a universal prefix arg, show the priority instead of setting it." (when (equal marker (org-get-at-bol 'org-marker)) (remove-text-properties (point-at-bol) (point-at-eol) '(display)) (org-move-to-column (- (window-width) (length stamp)) t) - - (org-agenda-fix-tags-filter-overlays-at (point)) (if (featurep 'xemacs) ;; Use `duplicable' property to trigger undo recording (let ((ex (make-extent nil nil)) @@ -9190,7 +9148,7 @@ Called with a universal prefix arg, show the priority instead of setting it." (add-text-properties (1- (point)) (point-at-eol) (list 'display (org-add-props stamp nil - 'face 'secondary-selection)))) + 'face '(secondary-selection default))))) (beginning-of-line 1)) (beginning-of-line 0))))) @@ -9478,9 +9436,9 @@ a timestamp can be added there." (if org-adapt-indentation (org-indent-to-column 2))) (defun org-agenda-insert-diary-make-new-entry (text) - "Make new entry as last child of current entry. -Add TEXT as headline, and position the cursor in the second line so that -a timestamp can be added there." + "Make a new entry with TEXT as the first child of the current subtree. +Position the point in the line right after the new heading so +that a timestamp can be added there." (let ((org-show-following-heading t) (org-show-siblings t) (org-show-hierarchy-above t) @@ -9669,7 +9627,7 @@ This is a command that has to be installed in `calendar-mode-map'." (overlay-put ov 'type 'org-marked-entry-overlay)) (end-of-line 1) (or (ignore-errors - (goto-char (next-single-property-change (point) 'txt))) + (goto-char (next-single-property-change (point) 'org-hd-marker))) (beginning-of-line 2)) (while (and (get-char-property (point) 'invisible) (not (eobp))) (beginning-of-line 2)) @@ -9687,7 +9645,7 @@ This is a command that has to be installed in `calendar-mode-map'." (let ((entries-marked 0) txt-at-point) (save-excursion (goto-char (point-min)) - (goto-char (next-single-property-change (point) 'txt)) + (goto-char (next-single-property-change (point) 'org-hd-marker)) (while (and (re-search-forward regexp nil t) (setq txt-at-point (get-text-property (point) 'txt))) (when (string-match regexp txt-at-point) @@ -9723,7 +9681,7 @@ This is a command that has to be installed in `calendar-mode-map'." (save-excursion (goto-char (point-min)) (while (ignore-errors - (goto-char (next-single-property-change (point) 'txt))) + (goto-char (next-single-property-change (point) 'org-hd-marker))) (org-agenda-bulk-toggle)))) (defun org-agenda-bulk-toggle () diff --git a/lisp/org/org-attach.el b/lisp/org/org-attach.el index 07307e68f6f..bcf7ba736fd 100644 --- a/lisp/org/org-attach.el +++ b/lisp/org/org-attach.el @@ -208,7 +208,9 @@ the directory and (if necessary) the corresponding ID will be created." (save-excursion (save-restriction (widen) - (goto-char org-entry-property-inherited-from) + (if (marker-position org-entry-property-inherited-from) + (goto-char org-entry-property-inherited-from) + (org-back-to-heading t)) (let (org-attach-allow-inheritance) (org-attach-dir create-if-not-exists-p))))) (org-attach-check-absolute-path attach-dir) diff --git a/lisp/org/org-bbdb.el b/lisp/org/org-bbdb.el index b9841a65b84..cfd5b3b6a8c 100644 --- a/lisp/org/org-bbdb.el +++ b/lisp/org/org-bbdb.el @@ -400,8 +400,11 @@ This is used by Org to re-create the anniversary hash table." (defun org-bbdb-complete-link () "Read a bbdb link with name completion." (require 'bbdb-com) - (concat "bbdb:" - (bbdb-record-name (car (bbdb-completing-read-record "Name: "))))) + (let ((rec (bbdb-completing-read-record "Name: "))) + (concat "bbdb:" + (bbdb-record-name (if (listp rec) + (car rec) + rec))))) (defun org-bbdb-anniv-export-ical () "Extract anniversaries from BBDB and convert them to icalendar format." diff --git a/lisp/org/org-capture.el b/lisp/org/org-capture.el index 0433306a909..c7086837437 100644 --- a/lisp/org/org-capture.el +++ b/lisp/org/org-capture.el @@ -1529,8 +1529,8 @@ The template may still contain \"%?\" for cursor positioning." (v-x (or (org-get-x-clipboard 'PRIMARY) (org-get-x-clipboard 'CLIPBOARD) (org-get-x-clipboard 'SECONDARY))) - (v-t (format-time-string (car org-time-stamp-formats) ct)) - (v-T (format-time-string (cdr org-time-stamp-formats) ct)) + (v-t (format-time-string (car org-time-stamp-formats) ct1)) + (v-T (format-time-string (cdr org-time-stamp-formats) ct1)) (v-u (concat "[" (substring v-t 1 -1) "]")) (v-U (concat "[" (substring v-T 1 -1) "]")) ;; `initial' and `annotation' might habe been passed. @@ -1587,7 +1587,7 @@ The template may still contain \"%?\" for cursor positioning." (insert template) (goto-char (point-min)) (org-capture-steal-local-variables buffer) - (setq buffer-file-name nil) + (setq buffer-file-name nil mark-active nil) ;; %[] Insert contents of a file. (goto-char (point-min)) @@ -1674,7 +1674,9 @@ The template may still contain \"%?\" for cursor positioning." (or (equal (char-before) ?:) (insert ":")) (insert ins) (or (equal (char-after) ?:) (insert ":")) - (and (org-at-heading-p) (org-set-tags nil 'align))))) + (and (org-at-heading-p) + (let ((org-ignore-region t)) + (org-set-tags nil 'align)))))) ((equal char "C") (cond ((= (length clipboards) 1) (insert (car clipboards))) ((> (length clipboards) 1) diff --git a/lisp/org/org-clock.el b/lisp/org/org-clock.el index e345bf37b6d..1bbe8506531 100644 --- a/lisp/org/org-clock.el +++ b/lisp/org/org-clock.el @@ -2556,13 +2556,10 @@ from the dynamic block definition." total-time)) (defun org-clocktable-indent-string (level) - (if (= level 1) - "" - (let ((str "\\__")) - (while (> level 2) - (setq level (1- level) - str (concat str "___"))) - (concat str " ")))) + (if (= level 1) "" + (let ((str " ")) + (dotimes (k (1- level) str) + (setq str (concat "\\emsp" str)))))) (defun org-clocktable-steps (params) "Step through the range to make a number of clock tables." diff --git a/lisp/org/org-compat.el b/lisp/org/org-compat.el index c3ccf062db9..4466b0be80d 100644 --- a/lisp/org/org-compat.el +++ b/lisp/org/org-compat.el @@ -312,8 +312,7 @@ Works on both Emacs and XEmacs." (defun org-in-invisibility-spec-p (arg) "Is ARG a member of `buffer-invisibility-spec'?" (if (consp buffer-invisibility-spec) - (member arg buffer-invisibility-spec) - nil)) + (member arg buffer-invisibility-spec))) (defmacro org-xemacs-without-invisibility (&rest body) "Turn off extents with invisibility while executing BODY." @@ -347,18 +346,8 @@ Works on both Emacs and XEmacs." "Move to column COLUMN. Pass COLUMN and FORCE to `move-to-column'. Pass BUFFER to the XEmacs version of `move-to-column'." - (let* ((with-bracket-link - (save-excursion - (forward-line 0) - (looking-at (concat "^.*" org-bracket-link-regexp)))) - (buffer-invisibility-spec - (cond - ((or (not (derived-mode-p 'org-mode)) - (and with-bracket-link (org-invisible-p2))) - (remove '(org-link) buffer-invisibility-spec)) - (with-bracket-link - (remove t buffer-invisibility-spec)) - (t buffer-invisibility-spec)))) + (let ((buffer-invisibility-spec + (remove '(org-filtered) buffer-invisibility-spec))) (if (featurep 'xemacs) (org-xemacs-without-invisibility (move-to-column column force buffer)) diff --git a/lisp/org/org-element.el b/lisp/org/org-element.el index b44466e53df..eb8ff415861 100644 --- a/lisp/org/org-element.el +++ b/lisp/org/org-element.el @@ -360,11 +360,6 @@ still has an entry since one of its properties (`:title') does.") (footnote-reference . :inline-definition)) "Alist between element types and location of secondary value.") -(defconst org-element-object-variables '(org-link-abbrev-alist-local) - "List of buffer-local variables used when parsing objects. -These variables are copied to the temporary buffer created by -`org-export-secondary-string'.") - ;;; Accessors and Setters @@ -732,11 +727,11 @@ CONTENTS is the contents of the footnote-definition." Return a list whose CAR is `headline' and CDR is a plist containing `:raw-value', `:title', `:alt-title', `:begin', -`:end', `:pre-blank', `:hiddenp', `:contents-begin' and +`:end', `:pre-blank', `:hiddenp', `:contents-begin', `:contents-end', `:level', `:priority', `:tags', `:todo-keyword',`:todo-type', `:scheduled', `:deadline', -`:closed', `:quotedp', `:archivedp', `:commentedp' and -`:footnote-section-p' keywords. +`:closed', `:quotedp', `:archivedp', `:commentedp', +`:footnote-section-p' and `:post-blank' keywords. The plist also contains any property set in the property drawer, with its name in upper cases and colons added at the @@ -875,38 +870,40 @@ CONTENTS is the contents of the element." (org-element-property :tags headline)) (org-element-property :tags headline)))) (and tag-list - (format ":%s:" (mapconcat 'identity tag-list ":"))))) + (format ":%s:" (mapconcat #'identity tag-list ":"))))) (commentedp (org-element-property :commentedp headline)) (quotedp (org-element-property :quotedp headline)) (pre-blank (or (org-element-property :pre-blank headline) 0)) - (heading (concat (make-string (org-reduced-level level) ?*) - (and todo (concat " " todo)) - (and quotedp (concat " " org-quote-string)) - (and commentedp (concat " " org-comment-string)) - (and priority - (format " [#%s]" (char-to-string priority))) - (cond ((and org-footnote-section - (org-element-property - :footnote-section-p headline)) - (concat " " org-footnote-section)) - (title (concat " " title)))))) - (concat heading - ;; Align tags. - (when tags - (cond - ((zerop org-tags-column) (format " %s" tags)) - ((< org-tags-column 0) - (concat - (make-string - (max (- (+ org-tags-column (length heading) (length tags))) 1) - ? ) - tags)) - (t - (concat - (make-string (max (- org-tags-column (length heading)) 1) ? ) - tags)))) - (make-string (1+ pre-blank) 10) - contents))) + (heading + (concat (make-string (if org-odd-levels-only (1- (* level 2)) level) + ?*) + (and todo (concat " " todo)) + (and quotedp (concat " " org-quote-string)) + (and commentedp (concat " " org-comment-string)) + (and priority (format " [#%s]" (char-to-string priority))) + " " + (if (and org-footnote-section + (org-element-property :footnote-section-p headline)) + org-footnote-section + title)))) + (concat + heading + ;; Align tags. + (when tags + (cond + ((zerop org-tags-column) (format " %s" tags)) + ((< org-tags-column 0) + (concat + (make-string + (max (- (+ org-tags-column (length heading) (length tags))) 1) + ?\s) + tags)) + (t + (concat + (make-string (max (- org-tags-column (length heading)) 1) ?\s) + tags)))) + (make-string (1+ pre-blank) ?\n) + contents))) ;;;; Inlinetask @@ -1315,36 +1312,36 @@ containing `:begin', `:end', `:hiddenp', `:contents-begin', `:contents-end', `:post-blank' and `:post-affiliated' keywords. Assume point is at the beginning of the property drawer." - (save-excursion - (let ((case-fold-search t)) - (if (not (save-excursion - (re-search-forward "^[ \t]*:END:[ \t]*$" limit t))) - ;; Incomplete drawer: parse it as a paragraph. - (org-element-paragraph-parser limit affiliated) - (save-excursion - (let* ((drawer-end-line (match-beginning 0)) - (begin (car affiliated)) - (post-affiliated (point)) - (contents-begin (progn (forward-line) - (and (< (point) drawer-end-line) - (point)))) - (contents-end (and contents-begin drawer-end-line)) - (hidden (org-invisible-p2)) - (pos-before-blank (progn (goto-char drawer-end-line) - (forward-line) - (point))) - (end (progn (skip-chars-forward " \r\t\n" limit) - (if (eobp) (point) (line-beginning-position))))) - (list 'property-drawer - (nconc - (list :begin begin - :end end - :hiddenp hidden - :contents-begin contents-begin - :contents-end contents-end - :post-blank (count-lines pos-before-blank end) - :post-affiliated post-affiliated) - (cdr affiliated))))))))) + (let ((case-fold-search t)) + (if (not (save-excursion (re-search-forward "^[ \t]*:END:[ \t]*$" limit t))) + ;; Incomplete drawer: parse it as a paragraph. + (org-element-paragraph-parser limit affiliated) + (save-excursion + (let* ((drawer-end-line (match-beginning 0)) + (begin (car affiliated)) + (post-affiliated (point)) + (contents-begin + (progn + (forward-line) + (and (re-search-forward org-property-re drawer-end-line t) + (line-beginning-position)))) + (contents-end (and contents-begin drawer-end-line)) + (hidden (org-invisible-p2)) + (pos-before-blank (progn (goto-char drawer-end-line) + (forward-line) + (point))) + (end (progn (skip-chars-forward " \r\t\n" limit) + (if (eobp) (point) (line-beginning-position))))) + (list 'property-drawer + (nconc + (list :begin begin + :end end + :hiddenp hidden + :contents-begin contents-begin + :contents-end contents-end + :post-blank (count-lines pos-before-blank end) + :post-affiliated post-affiliated) + (cdr affiliated)))))))) (defun org-element-property-drawer-interpreter (property-drawer contents) "Interpret PROPERTY-DRAWER element as Org syntax. @@ -2099,28 +2096,28 @@ LIMIT bounds the search. Return a list whose CAR is `node-property' and CDR is a plist containing `:key', `:value', `:begin', `:end' and `:post-blank' keywords." - (save-excursion - (looking-at org-property-re) - (let ((case-fold-search t) - (begin (point)) - (key (org-match-string-no-properties 2)) - (value (org-match-string-no-properties 3)) - (pos-before-blank (progn (forward-line) (point))) - (end (progn (skip-chars-forward " \r\t\n" limit) - (if (eobp) (point) (point-at-bol))))) - (list 'node-property - (list :key key - :value value - :begin begin - :end end - :post-blank (count-lines pos-before-blank end)))))) + (looking-at org-property-re) + (let ((begin (point)) + (key (org-match-string-no-properties 2)) + (value (org-match-string-no-properties 3)) + (end (save-excursion + (end-of-line) + (if (re-search-forward org-property-re limit t) + (line-beginning-position) + limit)))) + (list 'node-property + (list :key key + :value value + :begin begin + :end end + :post-blank 0)))) (defun org-element-node-property-interpreter (node-property contents) "Interpret NODE-PROPERTY element as Org syntax. CONTENTS is nil." (format org-property-format (format ":%s:" (org-element-property :key node-property)) - (org-element-property :value node-property))) + (or (org-element-property :value node-property) ""))) ;;;; Paragraph @@ -2486,7 +2483,7 @@ Assume point is at the beginning of the table." (defun org-element-table-interpreter (table contents) "Interpret TABLE element as Org syntax. -CONTENTS is nil." +CONTENTS is a string, if table's type is `org', or nil." (if (eq (org-element-property :type table) 'table.el) (org-remove-indentation (org-element-property :value table)) (concat (with-temp-buffer (insert contents) @@ -3112,16 +3109,20 @@ Assume point is at the beginning of the link." (cond ;; File type. ((or (file-name-absolute-p raw-link) - (string-match "^\\.\\.?/" raw-link)) + (string-match "\\`\\.\\.?/" raw-link)) (setq type "file" path raw-link)) ;; Explicit type (http, irc, bbdb...). See `org-link-types'. - ((string-match org-link-re-with-space3 raw-link) - (setq type (match-string 1 raw-link) path (match-string 2 raw-link))) + ((string-match org-link-types-re raw-link) + (setq type (match-string 1 raw-link) + ;; According to RFC 3986, extra whitespace should be + ;; ignored when a URI is extracted. + path (replace-regexp-in-string + "[ \t]*\n[ \t]*" "" (substring raw-link (match-end 0))))) ;; Id type: PATH is the id. - ((string-match "^id:\\([-a-f0-9]+\\)" raw-link) + ((string-match "\\`id:\\([-a-f0-9]+\\)" raw-link) (setq type "id" path (match-string 1 raw-link))) ;; Code-ref type: PATH is the name of the reference. - ((string-match "^(\\(.*\\))$" raw-link) + ((string-match "\\`(\\(.*\\))\\'" raw-link) (setq type "coderef" path (match-string 1 raw-link))) ;; Custom-id type: PATH is the name of the custom id. ((= (aref raw-link 0) ?#) @@ -3541,7 +3542,7 @@ Return a list whose CAR is `timestamp', and CDR a plist with `:month-end', `:day-end', `:hour-end', `:minute-end', `:repeater-type', `:repeater-value', `:repeater-unit', `:warning-type', `:warning-value', `:warning-unit', `:begin', -`:end', `:value' and `:post-blank' keywords. +`:end' and `:post-blank' keywords. Assume point is at the beginning of the timestamp." (save-excursion @@ -3890,8 +3891,7 @@ element it has to parse." (goto-char (car affiliated)) (org-element-keyword-parser limit nil)) ;; LaTeX Environment. - ((looking-at - "[ \t]*\\\\begin{[A-Za-z0-9*]+}\\(\\[.*?\\]\\|{.*?}\\)*[ \t]*$") + ((looking-at "[ \t]*\\\\begin{\\([A-Za-z0-9]+\\*?\\)}\\(\\[.*?\\]\\|{.*?}\\)*[ \t]*$") (org-element-latex-environment-parser limit affiliated)) ;; Drawer and Property Drawer. ((looking-at org-drawer-regexp) @@ -4090,21 +4090,18 @@ looked after. Optional argument PARENT, when non-nil, is the element or object containing the secondary string. It is used to set correctly `:parent' property within the string." - ;; Copy buffer-local variables listed in - ;; `org-element-object-variables' into temporary buffer. This is - ;; required since object parsing is dependent on these variables. - (let ((pairs (delq nil (mapcar (lambda (var) - (when (boundp var) - (cons var (symbol-value var)))) - org-element-object-variables)))) + (let ((local-variables (buffer-local-variables))) (with-temp-buffer - (mapc (lambda (pair) (org-set-local (car pair) (cdr pair))) pairs) + (dolist (v local-variables) + (ignore-errors + (if (symbolp v) (makunbound v) + (org-set-local (car v) (cdr v))))) (insert string) + (restore-buffer-modified-p nil) (let ((secondary (org-element--parse-objects (point-min) (point-max) nil restriction))) (when parent - (mapc (lambda (obj) (org-element-put-property obj :parent parent)) - secondary)) + (dolist (o secondary) (org-element-put-property o :parent parent))) secondary)))) (defun org-element-map @@ -4617,29 +4614,29 @@ indentation is not done with TAB characters." (let* ((min-ind most-positive-fixnum) find-min-ind ; For byte-compiler. (find-min-ind - (function - ;; Return minimal common indentation within BLOB. This is - ;; done by walking recursively BLOB and updating MIN-IND - ;; along the way. FIRST-FLAG is non-nil when the first - ;; string hasn't been seen yet. It is required as this - ;; string is the only one whose indentation doesn't happen - ;; after a newline character. - (lambda (blob first-flag) - (dolist (object (org-element-contents blob)) - (when (and first-flag (stringp object)) - (setq first-flag nil) - (string-match "\\`\\( *\\)" object) - (let ((len (length (match-string 1 object)))) - ;; An indentation of zero means no string will be - ;; modified. Quit the process. - (if (zerop len) (throw 'zero (setq min-ind 0)) - (setq min-ind (min len min-ind))))) - (cond - ((stringp object) - (dolist (line (delq "" (cdr (org-split-string object " *\n")))) - (setq min-ind (min (org-get-indentation line) min-ind)))) - ((memq (org-element-type object) org-element-recursive-objects) - (funcall find-min-ind object first-flag)))))))) + ;; Return minimal common indentation within BLOB. This is + ;; done by walking recursively BLOB and updating MIN-IND + ;; along the way. FIRST-FLAG is non-nil when the first + ;; string hasn't been seen yet. It is required as this + ;; string is the only one whose indentation doesn't happen + ;; after a newline character. + (lambda (blob first-flag) + (dolist (object (org-element-contents blob)) + (when (and first-flag (stringp object)) + (setq first-flag nil) + (string-match "\\` *" object) + (let ((len (match-end 0))) + ;; An indentation of zero means no string will be + ;; modified. Quit the process. + (if (zerop len) (throw 'zero (setq min-ind 0)) + (setq min-ind (min len min-ind))))) + (cond + ((stringp object) + (dolist (line (cdr (org-split-string object " *\n"))) + (unless (string= line "") + (setq min-ind (min (org-get-indentation line) min-ind))))) + ((memq (org-element-type object) org-element-recursive-objects) + (funcall find-min-ind object first-flag))))))) ;; Find minimal indentation in ELEMENT. (catch 'zero (funcall find-min-ind element (not ignore-first))) (if (or (zerop min-ind) (= min-ind most-positive-fixnum)) element diff --git a/lisp/org/org-entities.el b/lisp/org/org-entities.el index ba1eed12bdb..6324a625dbd 100644 --- a/lisp/org/org-entities.el +++ b/lisp/org/org-entities.el @@ -27,9 +27,8 @@ ;;; Code: -(require 'org-macs) - -(declare-function org-table-align "org-table" ()) +(declare-function org-toggle-pretty-entities "org" ()) +(declare-function org-table-align "org-table" ()) (eval-when-compile (require 'cl)) @@ -568,6 +567,7 @@ Kind can be any of `latex', `html', `ascii', `latin1', or `utf8'." (goto-char pos) (org-table-align))) +(defvar org-pretty-entities) ;; declare defcustom from org (defun org-entities-help () "Create a Help buffer with all available entities." (interactive) diff --git a/lisp/org/org-habit.el b/lisp/org/org-habit.el index 721718d2b6c..60137568c00 100644 --- a/lisp/org/org-habit.el +++ b/lisp/org/org-habit.el @@ -351,14 +351,7 @@ current time." (let ((inhibit-read-only t) l c (buffer-invisibility-spec '(org-link)) (moment (time-subtract (current-time) - (list 0 (* 3600 org-extend-today-until) 0))) - disabled-overlays) - ;; Disable filters; this helps with alignment if there are links. - (mapc (lambda (ol) - (when (overlay-get ol 'invisible) - (overlay-put ol 'invisible nil) - (setq disabled-overlays (cons ol disabled-overlays)))) - (overlays-in (point-min) (point-max))) + (list 0 (* 3600 org-extend-today-until) 0)))) (save-excursion (goto-char (if line (point-at-bol) (point-min))) (while (not (eobp)) @@ -374,9 +367,7 @@ current time." (time-subtract moment (days-to-time org-habit-preceding-days)) moment (time-add moment (days-to-time org-habit-following-days)))))) - (forward-line))) - (mapc (lambda (ol) (overlay-put ol 'invisible t)) - disabled-overlays))) + (forward-line))))) (defun org-habit-toggle-habits () "Toggle display of habits in an agenda buffer." diff --git a/lisp/org/org-list.el b/lisp/org/org-list.el index 92a92491e30..a00e557371c 100644 --- a/lisp/org/org-list.el +++ b/lisp/org/org-list.el @@ -2237,7 +2237,7 @@ item is invisible." t))))) (defun org-list-repair () - "Fix indentation, bullets and checkboxes is the list at point." + "Fix indentation, bullets and checkboxes in the list at point." (interactive) (unless (org-at-item-p) (error "This is not a list")) (let* ((struct (org-list-struct)) diff --git a/lisp/org/org-macs.el b/lisp/org/org-macs.el index ddd6e2e90f5..96265ec02fe 100644 --- a/lisp/org/org-macs.el +++ b/lisp/org/org-macs.el @@ -154,9 +154,9 @@ We use a macro so that the test can happen at compilation time." `(let ((,mpom ,pom)) (save-excursion (if (markerp ,mpom) (set-buffer (marker-buffer ,mpom))) - (save-excursion - (goto-char (or ,mpom (point))) - ,@body))))) + (org-with-wide-buffer + (goto-char (or ,mpom (point))) + ,@body))))) (def-edebug-spec org-with-point-at (form body)) (put 'org-with-point-at 'lisp-indent-function 1) diff --git a/lisp/org/org-mobile.el b/lisp/org/org-mobile.el index f59d1c47911..41a99586742 100644 --- a/lisp/org/org-mobile.el +++ b/lisp/org/org-mobile.el @@ -1074,7 +1074,7 @@ be returned that indicates what went wrong." ;; which prevents correct insertion when point is invisible (org-show-subtree) (end-of-line 1) - (org-insert-heading-respect-content '(16) t) + (org-insert-heading-respect-content t) (org-demote)) (beginning-of-line) (insert "* ")) diff --git a/lisp/org/org-mouse.el b/lisp/org/org-mouse.el index 9f9538df789..718f346670f 100644 --- a/lisp/org/org-mouse.el +++ b/lisp/org/org-mouse.el @@ -953,20 +953,23 @@ This means, between the beginning of line and the point." (point) (save-excursion (goto-char start) (org-back-to-heading) (point)))) - (outline-end-of-subtree) + (progn (org-end-of-subtree nil t) + (unless (eobp) (backward-char))) (end-of-line) (if (eobp) (newline) (forward-char))) (when (looking-at org-outline-regexp) (let ((level (- (match-end 0) (match-beginning 0)))) (when (> end (match-end 0)) - (outline-end-of-subtree) + (progn (org-end-of-subtree nil t) + (unless (eobp) (backward-char))) (end-of-line) (if (eobp) (newline) (forward-char)) (setq level (1+ level))) (org-paste-subtree level) (save-excursion - (outline-end-of-subtree) + (progn (org-end-of-subtree nil t) + (unless (eobp) (backward-char))) (when (bolp) (delete-char -1)))))))))) @@ -1003,8 +1006,8 @@ This means, between the beginning of line and the point." (org-mouse-main-buffer (current-buffer))) (when (eq (with-current-buffer buffer major-mode) 'org-mode) (let ((endmarker (with-current-buffer buffer - (outline-end-of-subtree) - (forward-char 1) + (org-end-of-subtree nil t) + (unless (eobp) (forward-char 1)) (point-marker)))) (org-with-remote-undo buffer (with-current-buffer buffer diff --git a/lisp/org/org-src.el b/lisp/org/org-src.el index d5e70076df0..26b10cea9c7 100644 --- a/lisp/org/org-src.el +++ b/lisp/org/org-src.el @@ -376,23 +376,21 @@ the display of windows containing the Org buffer and the code buffer." (when (fboundp edit-prep-func) (funcall edit-prep-func full-info))) (or org-edit-src-code-timer + (zerop org-edit-src-auto-save-idle-delay) (setq org-edit-src-code-timer - (unless (zerop org-edit-src-auto-save-idle-delay) - (run-with-idle-timer - org-edit-src-auto-save-idle-delay t - (lambda () - (cond - ((and (string-match "\*Org Src" (buffer-name)) - (buffer-modified-p)) - (org-edit-src-save)) - ((not - (delq nil (mapcar - (lambda (b) - (string-match "\*Org Src" (buffer-name b))) - (buffer-list)))) - (cancel-timer org-edit-src-code-timer) - (setq org-edit-src-code-timer))))))))) - t))) + (run-with-idle-timer + org-edit-src-auto-save-idle-delay t + (lambda () + (cond + ((org-string-match-p "\\`\\*Org Src" (buffer-name)) + (when (buffer-modified-p) (org-edit-src-save))) + ((not (org-some (lambda (b) + (org-string-match-p "\\`\\*Org Src" + (buffer-name b))) + (buffer-list))) + (cancel-timer org-edit-src-code-timer) + (setq org-edit-src-code-timer nil)))))))) + t))) (defun org-edit-src-continue (e) "Continue editing source blocks." ;; Fixme: be more accurate @@ -757,8 +755,8 @@ with \",*\", \",#+\", \",,*\" and \",,#+\"." (delete-region beg (max beg end)) (unless (string-match "\\`[ \t]*\\'" code) (insert code)) - ;; Make sure the overlay stays in place - (when (eq context 'save) (move-overlay ovl beg (point))) + ;; Make sure the overlay stays in place + (when (eq context 'save) (move-overlay ovl beg (point))) (goto-char beg) (if single (just-one-space))) (if (memq t (mapcar (lambda (overlay) @@ -774,9 +772,6 @@ with \",*\", \",#+\", \",,*\" and \",,#+\"." (unless (eq context 'save) (move-marker beg nil) (move-marker end nil))) - (when org-edit-src-code-timer - (cancel-timer org-edit-src-code-timer) - (setq org-edit-src-code-timer nil)) (unless (eq context 'save) (when org-edit-src-saved-temp-window-config (set-window-configuration org-edit-src-saved-temp-window-config) diff --git a/lisp/org/org-table.el b/lisp/org/org-table.el index ed926a387b5..f28e96c694e 100644 --- a/lisp/org/org-table.el +++ b/lisp/org/org-table.el @@ -2712,7 +2712,8 @@ not overwrite the stored one." (or (fboundp 'calc-eval) (user-error "Calc does not seem to be installed, and is needed to evaluate the formula")) ;; Use <...> time-stamps so that Calc can handle them - (setq form (replace-regexp-in-string org-ts-regexp3 "<\\1>" form)) + (while (string-match (concat "\\[" org-ts-regexp1 "\\]") form) + (setq form (replace-match "<\\1>" nil nil form))) ;; I18n-ize local time-stamps by setting (system-time-locale "C") (when (string-match org-ts-regexp2 form) (let* ((ts (match-string 0 form)) @@ -3862,9 +3863,10 @@ With prefix ARG, apply the new formulas to the table." (push org-table-current-begin-pos org-show-positions) (let ((min (apply 'min org-show-positions)) (max (apply 'max org-show-positions))) - (goto-char min) (recenter 0) + (set-window-start (selected-window) min) (goto-char max) - (or (pos-visible-in-window-p max) (recenter -1)))) + (or (pos-visible-in-window-p max) + (set-window-start (selected-window) max)))) (select-window win)))) (defun org-table-force-dataline () diff --git a/lisp/org/org-timer.el b/lisp/org/org-timer.el index 1a86ffa7488..8161699f316 100644 --- a/lisp/org/org-timer.el +++ b/lisp/org/org-timer.el @@ -186,7 +186,10 @@ it in the buffer." (insert (org-timer-value-string)))) (defun org-timer-value-string () - (format org-timer-format (org-timer-secs-to-hms (floor (org-timer-seconds))))) + "Set the timer string." + (format org-timer-format + (org-timer-secs-to-hms + (abs (floor (org-timer-seconds)))))) (defvar org-timer-timer-is-countdown nil) (defun org-timer-seconds () diff --git a/lisp/org/org-version.el b/lisp/org/org-version.el index 4909d45530a..aae65cc6d37 100644 --- a/lisp/org/org-version.el +++ b/lisp/org/org-version.el @@ -5,13 +5,13 @@ (defun org-release () "The release version of org-mode. Inserted by installing org-mode or when a release is made." - (let ((org-release "8.2.6")) + (let ((org-release "8.2.10")) org-release)) ;;;###autoload (defun org-git-version () "The Git version of org-mode. Inserted by installing org-mode or when a release is made." - (let ((org-git-version "release_8.2.6-1")) + (let ((org-git-version "release_8.2.10")) org-git-version)) (provide 'org-version) diff --git a/lisp/org/org.el b/lisp/org/org.el index fed3854007f..1604241f6b3 100644 --- a/lisp/org/org.el +++ b/lisp/org/org.el @@ -111,6 +111,8 @@ Stars are put in group 1 and the trimmed body in group 2.") (unless (boundp 'diary-fancy-buffer) (org-defvaralias 'diary-fancy-buffer 'fancy-diary-buffer)) +(declare-function org-add-archive-files "org-archive" (files)) + (declare-function org-inlinetask-at-task-p "org-inlinetask" ()) (declare-function org-inlinetask-outline-regexp "org-inlinetask" ()) (declare-function org-inlinetask-toggle-visibility "org-inlinetask" ()) @@ -118,7 +120,10 @@ Stars are put in group 1 and the trimmed body in group 2.") (declare-function org-clock-get-last-clock-out-time "org-clock" ()) (declare-function org-clock-timestamps-up "org-clock" (&optional n)) (declare-function org-clock-timestamps-down "org-clock" (&optional n)) +(declare-function org-clock-remove-overlays "org-clock" (&optional beg end noremove)) (declare-function org-clock-sum-current-item "org-clock" (&optional tstart)) +(declare-function org-clock-update-time-maybe "org-clock" ()) +(declare-function org-clocktable-shift "org-clock" (dir n)) (declare-function orgtbl-mode "org-table" (&optional arg)) (declare-function org-clock-out "org-clock" (&optional switch-to-state fail-quietly at-time)) @@ -133,6 +138,10 @@ Stars are put in group 1 and the trimmed body in group 2.") (declare-function org-agenda-list "org-agenda" (&optional arg start-day span)) (declare-function org-agenda-redo "org-agenda" (&optional all)) (declare-function org-table-align "org-table" ()) +(declare-function org-table-begin "org-table" (&optional table-type)) +(declare-function org-table-blank-field "org-table" ()) +(declare-function org-table-end "org-table" (&optional table-type)) +(declare-function org-table-insert-row "org-table" (&optional arg)) (declare-function org-table-paste-rectangle "org-table" ()) (declare-function org-table-maybe-eval-formula "org-table" ()) (declare-function org-table-maybe-recalculate-line "org-table" ()) @@ -179,6 +188,7 @@ Stars are put in group 1 and the trimmed body in group 2.") (intern (concat "org-babel-expand-body:" lang))))))) org-babel-load-languages)) +(declare-function org-babel-tangle-file "ob-tangle" (file &optional target-file lang)) ;;;###autoload (defun org-babel-load-file (file &optional compile) "Load Emacs Lisp source code blocks in the Org-mode FILE. @@ -5109,9 +5119,9 @@ Support for group tags is controlled by the option "\\(?: +\\(\\[#.\\]\\)\\)?" "\\(?: +" ;; Stats cookies can be stuck to body. - "\\(?:\\[[0-9%%/]+\\] *\\)?" + "\\(?:\\[[0-9%%/]+\\] *\\)*" "\\(%s\\)" - "\\(?: *\\[[0-9%%/]+\\]\\)?" + "\\(?: *\\[[0-9%%/]+\\]\\)*" "\\)" (org-re "\\(?:[ \t]+\\(:[[:alnum:]_@#%%:]+:\\)\\)?") "[ \t]*$") @@ -5417,8 +5427,7 @@ The following commands are available: (org-add-hook 'isearch-mode-end-hook 'org-isearch-end 'append 'local) ;; Emacs 22 deals with this through a special variable (org-set-local 'outline-isearch-open-invisible-function - (lambda (&rest ignore) (org-show-context 'isearch))) - (org-add-hook 'isearch-mode-end-hook 'org-fix-ellipsis-at-bol 'append 'local)) + (lambda (&rest ignore) (org-show-context 'isearch)))) ;; Setup the pcomplete hooks (set (make-local-variable 'pcomplete-command-completion-function) @@ -5473,9 +5482,6 @@ The following commands are available: (put 'org-mode 'flyspell-mode-predicate 'org-mode-flyspell-verify) -(defsubst org-fix-ellipsis-at-bol () - (save-excursion (goto-char (window-start)) (recenter 0))) - (defun org-find-invisible-foreground () (let ((candidates (remove "unspecified-bg" @@ -5881,7 +5887,7 @@ by a #." ((member dc1 '("+title:" "+author:" "+email:" "+date:")) (add-text-properties beg (match-end 3) - (if (member (intern (substring dc1 0 -1)) org-hidden-keywords) + (if (member (intern (substring dc1 1 -1)) org-hidden-keywords) '(font-lock-fontified t invisible t) '(font-lock-fontified t face org-document-info-keyword))) (add-text-properties @@ -6145,15 +6151,25 @@ Use `org-reduced-level' to remove the effect of `org-odd-levels'." (defvar org-font-lock-keywords nil) -(defsubst org-re-property (property &optional literal) +(defsubst org-re-property (property &optional literal allow-null) "Return a regexp matching a PROPERTY line. -Match group 3 will be set to the value if it exists." - (concat "^\\(?4:[ \t]*\\)\\(?1::\\(?2:" - (if literal property (regexp-quote property)) - "\\):\\)[ \t]+\\(?3:[^ \t\r\n].*?\\)\\(?5:[ \t]*\\)$")) + +When optional argument LITERAL is non-nil, do not quote PROPERTY. +This is useful when PROPERTY is a regexp. When ALLOW-NULL is +non-nil, match properties even without a value. + +Match group 3 is set to the value when it exists. If there is no +value and ALLOW-NULL is non-nil, it is set to the empty string." + (concat + "^\\(?4:[ \t]*\\)" + (format "\\(?1::\\(?2:%s\\):\\)" + (if literal property (regexp-quote property))) + (if allow-null + "\\(?:\\(?3:$\\)\\|[ \t]+\\(?3:.*?\\)\\)\\(?5:[ \t]*\\)$" + "[ \t]+\\(?3:[^ \r\t\n]+.*?\\)\\(?5:[ \t]*\\)$"))) (defconst org-property-re - (org-re-property ".*?" 'literal) + (org-re-property ".*?" 'literal t) "Regular expression matching a property line. There are four matching groups: 1: :PROPKEY: including the leading and trailing colon, @@ -6712,7 +6728,8 @@ in special contexts. (setq org-cycle-global-status 'overview) (run-hook-with-args 'org-cycle-hook 'overview))))) -(defvar org-called-with-limited-levels);Dyn-bound in Ì€org-with-limited-levels'. +(defvar org-called-with-limited-levels nil + "Non-nil when `org-with-limited-levels' is currently active.") (defun org-cycle-internal-local () "Do the local cycling action." @@ -6729,7 +6746,8 @@ in special contexts. (setq has-children (org-list-has-child-p (point) struct))) (org-back-to-heading) (setq eoh (save-excursion (outline-end-of-heading) (point))) - (setq eos (save-excursion (1- (org-end-of-subtree t t)))) + (setq eos (save-excursion (org-end-of-subtree t t) + (when (bolp) (backward-char)) (point))) (setq has-children (or (save-excursion (let ((level (funcall outline-level))) @@ -6894,21 +6912,20 @@ With a numeric prefix, show all headlines up to that level." ;; buffers, where outline-regexp is needed. (defun org-overview () "Switch to overview mode, showing only top-level headlines. -Really, this shows all headlines with level equal or greater than the level +This shows all headlines with a level equal or greater than the level of the first headline in the buffer. This is important, because if the first headline is not level one, then (hide-sublevels 1) gives confusing results." (interactive) - (let ((pos (point)) - (level (save-excursion - (goto-char (point-min)) - (if (re-search-forward (concat "^" outline-regexp) nil t) - (progn - (goto-char (match-beginning 0)) - (funcall outline-level)))))) - (and level (hide-sublevels level)) - (recenter '(4)) - (goto-char pos))) + (save-excursion + (let ((level + (save-excursion + (goto-char (point-min)) + (if (re-search-forward (concat "^" outline-regexp) nil t) + (progn + (goto-char (match-beginning 0)) + (funcall outline-level)))))) + (and level (hide-sublevels level))))) (defun org-content (&optional arg) "Show all headlines in the buffer, like a table of contents. @@ -7105,13 +7122,11 @@ Otherwise make it visible." (pos-visible-in-window-p (save-excursion (org-end-of-subtree t) (point)))) -(defun org-first-headline-recenter (&optional N) - "Move cursor to the first headline and recenter the headline. -Optional argument N means put the headline into the Nth line of the window." +(defun org-first-headline-recenter () + "Move cursor to the first headline and recenter the headline." (goto-char (point-min)) (when (re-search-forward (concat "^\\(" org-outline-regexp "\\)") nil t) - (beginning-of-line) - (recenter (prefix-numeric-value N)))) + (set-window-start (selected-window) (point-at-bol)))) ;;; Saving and restoring visibility @@ -7545,23 +7560,22 @@ When NEXT is non-nil, check the next line instead." (looking-at "[ \t]*$"))))) (defun org-insert-heading (&optional arg invisible-ok) - "Insert a new heading or item with same depth at point. + "Insert a new heading or an item with the same depth at point. If point is at the beginning of a heading or a list item, insert -a heading or a list item before it. - -If point is at the beginning of a normal line, turn this line -into a heading. +a new heading or a new item above the current one. If point is +at the beginning of a normal line, turn the line into a heading. If point is in the middle of a headline or a list item, split the headline or the item and create a new headline/item with the text in the current line after point \(see `org-M-RET-may-split-line' on how to modify this behavior). -With one universal prefix argument: If point is within a list, -insert a heading instead of a list item. Otherwise, set the -value of `org-insert-heading-respect-content' to `t' for the -duration of the command. +With one universal prefix argument, set the user option +`org-insert-heading-respect-content' to t for the duration of +the command. This modifies the behavior described above in this +ways: on list items and at the beginning of normal lines, force +the insertion of a heading after the current subtree. With two universal prefix arguments, insert the heading at the end of the grandparent subtree. For example, if point is within @@ -7589,12 +7603,19 @@ command." (or arg (not itemp)))) ;; At beginning of buffer or so high up that only a heading ;; makes sense. - (insert - (if (or (bobp) (org-previous-line-empty-p)) "" "\n") - (if (org-in-src-block-p) ",* " "* ")) + (cond ((and (bolp) (not respect-content)) (insert "* ")) + ((not respect-content) + (unless may-split (end-of-line)) + (insert "\n* ")) + ((re-search-forward org-outline-regexp-bol nil t) + (beginning-of-line) + (insert "* \n") + (backward-char)) + (t (goto-char (point-max)) + (insert "\n* "))) (run-hooks 'org-insert-heading-hook)) - ((and itemp (not (equal arg '(4)))) + ((and itemp (not (member arg '((4) (16))))) ;; Insert an item (org-insert-item)) @@ -7614,11 +7635,12 @@ command." nil)) ;; Get a level string to fall back on (fix-level - (save-excursion - (org-back-to-heading t) - (if (org-previous-line-empty-p) (setq empty-line-p t)) - (looking-at org-outline-regexp) - (make-string (1- (length (match-string 0))) ?*))) + (if (org-before-first-heading-p) "*" + (save-excursion + (org-back-to-heading t) + (if (org-previous-line-empty-p) (setq empty-line-p t)) + (looking-at org-outline-regexp) + (make-string (1- (length (match-string 0))) ?*)))) (stars (save-excursion (condition-case nil @@ -7650,8 +7672,12 @@ command." pos hide-previous previous-pos) ;; If we insert after content, move there and clean up whitespace - (when (and respect-content (not (org-on-heading-p))) - (org-end-of-subtree nil t) + (when (and respect-content + (not (org-looking-at-p org-outline-regexp-bol))) + (if (not (org-before-first-heading-p)) + (org-end-of-subtree nil t) + (re-search-forward org-outline-regexp-bol) + (beginning-of-line 0)) (skip-chars-backward " \r\n") (and (not (looking-back "^\*+")) (looking-at "[ \t]+") (replace-match "")) @@ -7680,10 +7706,9 @@ command." (setq initial-content (org-trim initial-content))) (goto-char pos)) ;; a normal line - (unless (bolp) - (setq initial-content (buffer-substring (point) (point-at-eol))) - (delete-region (point) (point-at-eol)) - (setq initial-content (org-trim initial-content))))) + (setq initial-content + (org-trim (buffer-substring (point) (point-at-eol)))) + (delete-region (point) (point-at-eol)))) ;; If we are at the beginning of the line, insert before it. Else after (cond @@ -7708,13 +7733,12 @@ command." "Make the number of empty lines before current exactly N. So this will delete or add empty lines." (save-excursion - (goto-char (point-at-bol)) - (if (looking-back "\\s-+" nil 'greedy) - (replace-match "")) - (or (bobp) (insert "\n")) - (while (> N 0) - (insert "\n") - (setq N (1- N))))) + (beginning-of-line) + (let ((p (point))) + (skip-chars-backward " \r\t\n") + (unless (bolp) (forward-line)) + (delete-region (point) p)) + (when (> N 0) (insert (make-string N ?\n))))) (defun org-get-heading (&optional no-tags no-todo) "Return the heading of the current entry, without the stars. @@ -7783,17 +7807,15 @@ This is a list with the following elements: (org-move-subtree-down) (end-of-line 1)) -(defun org-insert-heading-respect-content (&optional arg invisible-ok) +(defun org-insert-heading-respect-content (&optional invisible-ok) "Insert heading with `org-insert-heading-respect-content' set to t." - (interactive "P") - (let ((org-insert-heading-respect-content t)) - (org-insert-heading '(4) invisible-ok))) + (interactive) + (org-insert-heading '(4) invisible-ok)) (defun org-insert-todo-heading-respect-content (&optional force-state) "Insert TODO heading with `org-insert-heading-respect-content' set to t." - (interactive "P") - (let ((org-insert-heading-respect-content t)) - (org-insert-todo-heading force-state '(4)))) + (interactive) + (org-insert-todo-heading force-state '(4))) (defun org-insert-todo-heading (arg &optional force-heading) "Insert a new heading with the same level and TODO state as current heading. @@ -8150,7 +8172,8 @@ case." (save-match-data (save-excursion (outline-end-of-heading) (setq folded (outline-invisible-p))) - (outline-end-of-subtree)) + (progn (org-end-of-subtree nil t) + (unless (eobp) (backward-char)))) (outline-next-heading) (setq ne-end (org-back-over-empty-lines)) (setq end (point)) @@ -8303,7 +8326,7 @@ the inserted text when done." (string-match "^\\*+$" (buffer-substring (point-at-bol) (point)))) - (- (match-end 1) (match-beginning 1))) + (- (match-end 0) (match-beginning 0))) ((and (bolp) (looking-at org-outline-regexp)) (- (match-end 0) (point) 1)))) @@ -9076,14 +9099,16 @@ if `orgstruct-heading-prefix-regexp' is not empty." (if fallback (let* ((orgstruct-mode) (binding - (loop with key = ,key - for rep in - '(nil - ("<\\([^>]*\\)tab>" . "\\1TAB") - ("<\\([^>]*\\)return>" . "\\1RET") - ("<\\([^>]*\\)escape>" . "\\1ESC") - ("<\\([^>]*\\)delete>" . "\\1DEL")) - do + (let ((key ,key)) + (catch 'exit + (dolist + (rep + '(nil + ("<\\([^>]*\\)tab>" . "\\1TAB") + ("<\\([^>]*\\)return>" . "\\1RET") + ("<\\([^>]*\\)escape>" . "\\1ESC") + ("<\\([^>]*\\)delete>" . "\\1DEL")) + nil) (when rep (setq key (read-kbd-macro (let ((case-fold-search)) @@ -9091,7 +9116,8 @@ if `orgstruct-heading-prefix-regexp' is not empty." (car rep) (cdr rep) (key-description key)))))) - thereis (key-binding key)))) + (when (key-binding key) + (throw 'exit (key-binding key)))))))) (if (keymapp binding) (org-set-transient-map binding) (let ((func (or binding @@ -10592,6 +10618,10 @@ application the system uses for this file type." (move-marker org-open-link-marker nil) (run-hook-with-args 'org-follow-link-hook))) +(defsubst org-uniquify (list) + "Non-destructively remove duplicate elements from LIST." + (let ((res (copy-sequence list))) (delete-dups res))) + (defun org-offer-links-in-entry (buffer marker &optional nth zero) "Offer links in the current entry and return the selected link. If there is only one link, return it. @@ -13640,8 +13670,7 @@ How much context is shown depends upon the variables (error nil)) (not (bobp))) (org-flag-heading nil) - (when siblings-p (org-show-siblings))))) - (unless (eq key 'agenda) (org-fix-ellipsis-at-bol)))) + (when siblings-p (org-show-siblings))))))) (defvar org-reveal-start-hook nil "Hook run before revealing a location.") @@ -13836,7 +13865,7 @@ a file becomes an N^2 operation - but with this variable set, it scales as N.") (defun org-scan-tags (action matcher todo-only &optional start-level) - "Sca headline tags with inheritance and produce output ACTION. + "Scan headline tags with inheritance and produce output ACTION. ACTION can be `sparse-tree' to produce a sparse tree in the current buffer, or `agenda' to produce an entry list for an agenda view. It can also be @@ -14744,8 +14773,8 @@ Returns the new tags string, or nil to not change the current settings." (if expert (set-buffer (get-buffer-create " *Org tags*")) (delete-other-windows) - (split-window-vertically) - (org-switch-to-buffer-other-window (get-buffer-create " *Org tags*"))) + (set-window-buffer (split-window-vertically) (get-buffer-create " *Org tags*")) + (org-switch-to-buffer-other-window " *Org tags*")) (erase-buffer) (org-set-local 'org-done-keywords done-keywords) (org-fast-tag-insert "Inherited" inherited i-face "\n") @@ -15269,7 +15298,10 @@ things up because then unnecessary parsing is avoided." '("SCHEDULED" "DEADLINE" "CLOCK" "CLOSED" "TIMESTAMP" "TIMESTAMP_IA"))) (catch 'match - (while (re-search-forward org-maybe-keyword-time-regexp end t) + (while (and (re-search-forward org-maybe-keyword-time-regexp end t) + (not (text-property-any 0 (length (match-string 0)) + 'face 'font-lock-comment-face + (match-string 0)))) (setq key (if (match-end 1) (substring (org-match-string-no-properties 1) 0 -1)) @@ -15397,7 +15429,7 @@ an empty drawer to delete." (if (and range (goto-char (car range)) (re-search-forward - (org-re-property property) + (org-re-property property nil t) (cdr range) t)) (progn (delete-region (match-beginning 0) (1+ (point-at-eol))) @@ -15562,7 +15594,7 @@ If it is not a string, an error is raised." (setq range (org-get-property-block beg end 'force)) (goto-char (car range)) (if (re-search-forward - (org-re-property property) (cdr range) t) + (org-re-property property nil t) (cdr range) t) (progn (delete-region (match-beginning 0) (match-end 0)) (goto-char (match-beginning 0))) @@ -15773,9 +15805,7 @@ This is computed according to `org-property-set-functions-alist'." (funcall set-function prompt (mapcar 'list (org-property-values property)) nil nil "" nil cur))))) - (if (equal val "") - cur - val))) + (org-trim val))) (defvar org-last-set-property nil) (defvar org-last-set-property-value nil) @@ -15853,8 +15883,10 @@ an empty drawer to delete." (org-icompleting-read "Property: " props nil t) (caar props)))) (list prop))) - (if (org-entry-delete nil property delete-empty-drawer) - (message "Property %s deleted" property))) + (if (not property) + (message "No property to delete in this entry") + (org-entry-delete nil property delete-empty-drawer) + (message "Property \"%s\" deleted" property))) (defun org-delete-property-globally (property) "Remove PROPERTY globally, from all entries." @@ -17743,9 +17775,9 @@ This requires Emacs >= 24.1, build with imagemagick support." (defcustom org-agenda-inhibit-startup nil "Inhibit startup when preparing agenda buffers. -When this variable is `t' (the default), the initialization of -the Org agenda buffers is inhibited: e.g. the visibility state -is not set, the tables are not re-aligned, etc." +When this variable is `t', the initialization of the Org agenda +buffers is inhibited: e.g. the visibility state is not set, the +tables are not re-aligned, etc." :type 'boolean :version "24.3" :group 'org-agenda) @@ -21819,9 +21851,7 @@ for the search purpose." "Return the reverse of STRING." (apply 'string (reverse (string-to-list string)))) -(defsubst org-uniquify (list) - "Non-destructively remove duplicate elements from LIST." - (let ((res (copy-sequence list))) (delete-dups res))) +;; defsubst org-uniquify must be defined before first use (defun org-uniquify-alist (alist) "Merge elements of ALIST with the same key. @@ -23273,14 +23303,6 @@ If there is no such heading, return nil." (forward-char -1)))))) (point)) -(defadvice outline-end-of-subtree (around prefer-org-version activate compile) - "Use Org version in org-mode, for dramatic speed-up." - (if (derived-mode-p 'org-mode) - (progn - (org-end-of-subtree nil t) - (unless (eobp) (backward-char 1))) - ad-do-it)) - (defun org-end-of-meta-data-and-drawers () "Jump to the first text after meta data and drawers in the current entry. This will move over empty lines, lines with planning time stamps, @@ -23777,8 +23799,7 @@ Show the heading too, if it is currently invisible." isearch-mode-end-hook-quit) ;; Only when the isearch was not quitted. (org-add-hook 'post-command-hook 'org-isearch-post-command - 'append 'local))) - (org-fix-ellipsis-at-bol))) + 'append 'local))))) (defun org-isearch-post-command () "Remove self from hook, and show context." diff --git a/lisp/org/ox-ascii.el b/lisp/org/ox-ascii.el index 6208cdbe065..cd2a9af10ac 100644 --- a/lisp/org/ox-ascii.el +++ b/lisp/org/ox-ascii.el @@ -192,8 +192,10 @@ original Org buffer at the same place." (defcustom org-ascii-indented-line-width 'auto "Additional indentation width for the first line in a paragraph. If the value is an integer, indent the first line of each -paragraph by this number. If it is the symbol `auto' preserve -indentation from original document." +paragraph by this width, unless it is located at the beginning of +a section, in which case indentation is removed from that line. +If it is the symbol `auto' preserve indentation from original +document." :group 'org-export-ascii :version "24.4" :package-version '(Org . "8.0") @@ -421,17 +423,17 @@ equivalent to `left'. For a justification that doesn't also fill string, see `org-ascii--justify-string'. Return nil if S isn't a string." - ;; Don't fill paragraph when break should be preserved. - (cond ((not (stringp s)) nil) - ((plist-get info :preserve-breaks) s) - (t (let ((double-space-p sentence-end-double-space)) - (with-temp-buffer - (let ((fill-column text-width) - (use-hard-newlines t) - (sentence-end-double-space double-space-p)) - (insert s) - (fill-region (point-min) (point-max) justify)) - (buffer-string)))))) + (when (stringp s) + (let ((double-space-p sentence-end-double-space)) + (with-temp-buffer + (let ((fill-column text-width) + (use-hard-newlines t) + (sentence-end-double-space double-space-p)) + (insert (if (plist-get info :preserve-breaks) + (replace-regexp-in-string "\n" hard-newline s) + s)) + (fill-region (point-min) (point-max) justify)) + (buffer-string))))) (defun org-ascii--justify-string (s text-width how) "Justify string S. @@ -455,13 +457,13 @@ HOW determines the type of justification: it can be `left', Empty lines are not indented." (when (stringp s) (replace-regexp-in-string - "\\(^\\)\\(?:.*\\S-\\)" (make-string width ? ) s nil nil 1))) + "\\(^\\)[ \t]*\\S-" (make-string width ?\s) s nil nil 1))) (defun org-ascii--box-string (s info) "Return string S with a partial box to its left. INFO is a plist used as a communication channel." (let ((utf8p (eq (plist-get info :ascii-charset) 'utf-8))) - (format (if utf8p "â•────\n%s\n╰────" ",----\n%s\n`----") + (format (if utf8p "┌────\n%s\n└────" ",----\n%s\n`----") (replace-regexp-in-string "^" (if utf8p "│ " "| ") ;; Remove last newline character. @@ -473,7 +475,7 @@ INFO is a plist used as a communication channel." (case (org-element-type element) ;; Elements with an absolute width: `headline' and `inlinetask'. (inlinetask org-ascii-inlinetask-width) - ('headline + (headline (- org-ascii-text-width (let ((low-level-rank (org-export-low-level-p element info))) (if low-level-rank (* low-level-rank 2) org-ascii-global-margin)))) @@ -1418,12 +1420,16 @@ INFO is a plist holding contextual information." "Transcode a PARAGRAPH element from Org to ASCII. CONTENTS is the contents of the paragraph, as a string. INFO is the plist used as a communication channel." - (let ((contents (if (not (wholenump org-ascii-indented-line-width)) contents - (concat - (make-string org-ascii-indented-line-width ? ) - (replace-regexp-in-string "\\`[ \t]+" "" contents))))) - (org-ascii--fill-string - contents (org-ascii--current-text-width paragraph info) info))) + (org-ascii--fill-string + (if (not (wholenump org-ascii-indented-line-width)) contents + (concat + ;; Do not indent first paragraph in a section. + (unless (and (not (org-export-get-previous-element paragraph info)) + (eq (org-element-type (org-export-get-parent paragraph)) + 'section)) + (make-string org-ascii-indented-line-width ?\s)) + (replace-regexp-in-string "\\`[ \t]+" "" contents))) + (org-ascii--current-text-width paragraph info) info)) ;;;; Plain List @@ -1591,8 +1597,8 @@ contextual information." CONTENTS is the contents of the object. INFO is a plist holding contextual information." (if (org-element-property :use-brackets-p superscript) - (format "_{%s}" contents) - (format "_%s" contents))) + (format "^{%s}" contents) + (format "^%s" contents))) ;;;; Strike-through @@ -1659,20 +1665,25 @@ are ignored." (or (gethash key cache) (puthash key - (or (and (not org-ascii-table-widen-columns) - (org-export-table-cell-width table-cell info)) - (let* ((max-width 0)) - (org-element-map table 'table-row - (lambda (row) - (setq max-width - (max (string-width - (org-export-data - (org-element-contents - (elt (org-element-contents row) col)) - info)) - max-width))) - info) - max-width)) + (let ((cookie-width (org-export-table-cell-width table-cell info))) + (or (and (not org-ascii-table-widen-columns) cookie-width) + (let ((contents-width + (let ((max-width 0)) + (org-element-map table 'table-row + (lambda (row) + (setq max-width + (max (string-width + (org-export-data + (org-element-contents + (elt (org-element-contents row) col)) + info)) + max-width))) + info) + max-width))) + (cond ((not cookie-width) contents-width) + (org-ascii-table-widen-columns + (max cookie-width contents-width)) + (t cookie-width))))) cache)))) (defun org-ascii-table-cell (table-cell contents info) diff --git a/lisp/org/ox-beamer.el b/lisp/org/ox-beamer.el index f3a79d7c860..5ab805db271 100644 --- a/lisp/org/ox-beamer.el +++ b/lisp/org/ox-beamer.el @@ -687,7 +687,7 @@ used as a communication channel." (cond ((equal type "radio") (let ((destination (org-export-resolve-radio-link link info))) - (when destination + (if (not destination) contents (format "\\hyperlink%s{%s}{%s}" (or (org-beamer--element-has-overlay-p link) "") (org-export-solidify-link-text @@ -1092,6 +1092,7 @@ aid, but the tag does not have any semantic meaning." envs) '((:endgroup)) '(("BMCOL" . ?|)))) + (org-tag-persistent-alist nil) (org-use-fast-tag-selection t) (org-fast-tag-selection-single-key t)) (org-set-tags) diff --git a/lisp/org/ox-html.el b/lisp/org/ox-html.el index 1fd1da7bbbb..21f34810f15 100644 --- a/lisp/org/ox-html.el +++ b/lisp/org/ox-html.el @@ -2275,83 +2275,70 @@ holding contextual information." "Transcode a HEADLINE element from Org to HTML. CONTENTS holds the contents of the headline. INFO is a plist holding contextual information." - ;; Empty contents? - (setq contents (or contents "")) - (let* ((numberedp (org-export-numbered-headline-p headline info)) - (level (org-export-get-relative-level headline info)) - (text (org-export-data (org-element-property :title headline) info)) - (todo (and (plist-get info :with-todo-keywords) - (let ((todo (org-element-property :todo-keyword headline))) - (and todo (org-export-data todo info))))) - (todo-type (and todo (org-element-property :todo-type headline))) - (tags (and (plist-get info :with-tags) - (org-export-get-tags headline info))) - (priority (and (plist-get info :with-priority) - (org-element-property :priority headline))) - (section-number (and (org-export-numbered-headline-p headline info) - (mapconcat 'number-to-string - (org-export-get-headline-number - headline info) "."))) - ;; Create the headline text. - (full-text (org-html-format-headline--wrap headline info))) - (cond - ;; Case 1: This is a footnote section: ignore it. - ((org-element-property :footnote-section-p headline) nil) - ;; Case 2. This is a deep sub-tree: export it as a list item. - ;; Also export as items headlines for which no section - ;; format has been found. - ((org-export-low-level-p headline info) - ;; Build the real contents of the sub-tree. - (let* ((type (if numberedp 'ordered 'unordered)) - (itemized-body (org-html-format-list-item - contents type nil info nil full-text))) - (concat - (and (org-export-first-sibling-p headline info) - (org-html-begin-plain-list type)) - itemized-body - (and (org-export-last-sibling-p headline info) - (org-html-end-plain-list type))))) - ;; Case 3. Standard headline. Export it as a section. - (t - (let* ((section-number (mapconcat 'number-to-string - (org-export-get-headline-number - headline info) "-")) - (ids (remove 'nil - (list (org-element-property :CUSTOM_ID headline) - (concat "sec-" section-number) - (org-element-property :ID headline)))) - (preferred-id (car ids)) - (extra-ids (cdr ids)) - (extra-class (org-element-property :HTML_CONTAINER_CLASS headline)) - (level1 (+ level (1- org-html-toplevel-hlevel))) - (first-content (car (org-element-contents headline)))) - (format "<%s id=\"%s\" class=\"%s\">%s%s</%s>\n" - (org-html--container headline info) - (format "outline-container-%s" - (or (org-element-property :CUSTOM_ID headline) - (concat "sec-" section-number))) - (concat (format "outline-%d" level1) (and extra-class " ") - extra-class) - (format "\n<h%d id=\"%s\">%s%s</h%d>\n" - level1 - preferred-id - (mapconcat - (lambda (x) - (let ((id (org-export-solidify-link-text - (if (org-uuidgen-p x) (concat "ID-" x) - x)))) - (org-html--anchor id))) - extra-ids "") - full-text - level1) - ;; When there is no section, pretend there is an empty - ;; one to get the correct <div class="outline- ...> - ;; which is needed by `org-info.js'. - (if (not (eq (org-element-type first-content) 'section)) - (concat (org-html-section first-content "" info) - contents) - contents) - (org-html--container headline info))))))) + (unless (org-element-property :footnote-section-p headline) + (let* ((contents (or contents "")) + (numberedp (org-export-numbered-headline-p headline info)) + (level (org-export-get-relative-level headline info)) + (text (org-export-data (org-element-property :title headline) info)) + (todo (and (plist-get info :with-todo-keywords) + (let ((todo (org-element-property :todo-keyword headline))) + (and todo (org-export-data todo info))))) + (todo-type (and todo (org-element-property :todo-type headline))) + (tags (and (plist-get info :with-tags) + (org-export-get-tags headline info))) + (priority (and (plist-get info :with-priority) + (org-element-property :priority headline))) + (section-number (mapconcat #'number-to-string + (org-export-get-headline-number + headline info) "-")) + (ids (delq 'nil + (list (org-element-property :CUSTOM_ID headline) + (concat "sec-" section-number) + (org-element-property :ID headline)))) + (preferred-id (car ids)) + (extra-ids (mapconcat + (lambda (id) + (org-html--anchor + (org-export-solidify-link-text + (if (org-uuidgen-p id) (concat "ID-" id) id)))) + (cdr ids) "")) + ;; Create the headline text. + (full-text (org-html-format-headline--wrap headline info))) + (if (org-export-low-level-p headline info) + ;; This is a deep sub-tree: export it as a list item. + (let* ((type (if numberedp 'ordered 'unordered)) + (itemized-body + (org-html-format-list-item + contents type nil info nil + (concat (org-html--anchor preferred-id) extra-ids + full-text)))) + (concat + (and (org-export-first-sibling-p headline info) + (org-html-begin-plain-list type)) + itemized-body + (and (org-export-last-sibling-p headline info) + (org-html-end-plain-list type)))) + ;; Standard headline. Export it as a section. + (let ((extra-class (org-element-property :HTML_CONTAINER_CLASS headline)) + (level1 (+ level (1- org-html-toplevel-hlevel))) + (first-content (car (org-element-contents headline)))) + (format "<%s id=\"%s\" class=\"%s\">%s%s</%s>\n" + (org-html--container headline info) + (format "outline-container-%s" + (or (org-element-property :CUSTOM_ID headline) + (concat "sec-" section-number))) + (concat (format "outline-%d" level1) (and extra-class " ") + extra-class) + (format "\n<h%d id=\"%s\">%s%s</h%d>\n" + level1 preferred-id extra-ids full-text level1) + ;; When there is no section, pretend there is an + ;; empty one to get the correct <div class="outline- + ;; ...> which is needed by `org-info.js'. + (if (not (eq (org-element-type first-content) 'section)) + (concat (org-html-section first-content "" info) + contents) + contents) + (org-html--container headline info))))))) (defun org-html--container (headline info) (or (org-element-property :HTML_CONTAINER headline) @@ -2596,18 +2583,17 @@ if its description is a single link targeting an image file." (defvar org-html-standalone-image-predicate) (defun org-html-standalone-image-p (element info) - "Test if ELEMENT is a standalone image. + "Non-nil if ELEMENT is a standalone image. INFO is a plist holding contextual information. -Return non-nil, if ELEMENT is of type paragraph and its sole -content, save for white spaces, is a link that qualifies as an -inline image. +An element or object is a standalone image when -Return non-nil, if ELEMENT is of type link and its containing -paragraph has no other content save white spaces. + - its type is `paragraph' and its sole content, save for white + spaces, is a link that qualifies as an inline image; -Return nil, otherwise. + - its type is `link' and its containing paragraph has no other + content save white spaces. Bind `org-html-standalone-image-predicate' to constrain paragraph further. For example, to check for only captioned standalone @@ -2618,19 +2604,21 @@ images, set it to: (paragraph element) (link (org-export-get-parent element))))) (and (eq (org-element-type paragraph) 'paragraph) - (or (not (and (boundp 'org-html-standalone-image-predicate) - (functionp org-html-standalone-image-predicate))) + (or (not (fboundp 'org-html-standalone-image-predicate)) (funcall org-html-standalone-image-predicate paragraph)) - (not (let ((link-count 0)) - (org-element-map (org-element-contents paragraph) - (cons 'plain-text org-element-all-objects) - (lambda (obj) (case (org-element-type obj) - (plain-text (org-string-nw-p obj)) - (link - (or (> (incf link-count) 1) - (not (org-html-inline-image-p obj info)))) - (otherwise t))) - info 'first-match 'link)))))) + (catch 'exit + (let ((link-count 0)) + (org-element-map (org-element-contents paragraph) + (cons 'plain-text org-element-all-objects) + #'(lambda (obj) + (when (case (org-element-type obj) + (plain-text (org-string-nw-p obj)) + (link (or (> (incf link-count) 1) + (not (org-html-inline-image-p obj info)))) + (otherwise t)) + (throw 'exit nil))) + info nil 'link) + (= link-count 1)))))) (defun org-html-link (link desc info) "Transcode a LINK object from Org to HTML. @@ -2719,7 +2707,7 @@ INFO is a plist holding contextual information. See ;; link's description. ((string= type "radio") (let ((destination (org-export-resolve-radio-link link info))) - (when destination + (if (not destination) desc (format "<a href=\"#%s\"%s>%s</a>" (org-export-solidify-link-text (org-element-property :value destination)) diff --git a/lisp/org/ox-icalendar.el b/lisp/org/ox-icalendar.el index a60c2f92f39..cd48bbf9aef 100644 --- a/lisp/org/ox-icalendar.el +++ b/lisp/org/ox-icalendar.el @@ -174,8 +174,7 @@ The anniversaries are defined in the BBDB database." (defcustom org-icalendar-include-sexps t "Non-nil means export to iCalendar files should also cover sexp entries. -These are entries like in the diary, but directly in an Org mode -file." +These are entries like in the diary, but directly in an Org file." :group 'org-export-icalendar :type 'boolean) @@ -302,14 +301,14 @@ which will be updated." INFO is a plist used as a communication channel. -a headline is blocked when either: +A headline is blocked when either - - It has children which are not all in a completed state. + - it has children which are not all in a completed state; - - It has a parent with the property :ORDERED:, and there are - siblings prior to it with incomplete status. + - it has a parent with the property :ORDERED:, and there are + siblings prior to it with incomplete status; - - Its parent is blocked because it has siblings that should be + - its parent is blocked because it has siblings that should be done first or is a child of a blocked grandparent entry." (or ;; Check if any child is not done. @@ -478,10 +477,10 @@ or subject for the event." ;;; Filters (defun org-icalendar-clear-blank-lines (headline back-end info) - "Remove trailing blank lines in HEADLINE export. + "Remove blank lines in HEADLINE export. HEADLINE is a string representing a transcoded headline. BACK-END and INFO are ignored." - (replace-regexp-in-string "^\\(?:[ \t]*\n\\)*" "" headline)) + (replace-regexp-in-string "^\\(?:[ \t]*\n\\)+" "" headline)) @@ -570,13 +569,19 @@ inlinetask within the section." ;; happen once ENTRY is one of them. (let ((counter 0)) (mapconcat - 'identity + #'identity (org-element-map (cons (org-element-property :title entry) (org-element-contents inside)) 'timestamp (lambda (ts) - (let ((uid (format "TS%d-%s" (incf counter) uid))) - (org-icalendar--vevent entry ts uid summary loc desc cat))) + (when (let ((type (org-element-property :type ts))) + (case (plist-get info :with-timestamps) + (active (memq type '(active active-range))) + (inactive (memq type '(inactive inactive-range))) + ((t) t))) + (let ((uid (format "TS%d-%s" (incf counter) uid))) + (org-icalendar--vevent + entry ts uid summary loc desc cat)))) info nil (and (eq type 'headline) 'inlinetask)) "")) ;; Task: First check if it is appropriate to export it. @@ -589,7 +594,7 @@ inlinetask within the section." (and (eq type 'headline) (not (org-icalendar-blocked-headline-p entry info)))) - ('t (eq todo-type 'todo)))) + ((t) (eq todo-type 'todo)))) (org-icalendar--vtodo entry uid summary loc desc cat)) ;; Diary-sexp: Collect every diary-sexp element within ;; ENTRY and its title, and transcode them. If ENTRY is @@ -597,7 +602,7 @@ inlinetask within the section." ;; separately. (when org-icalendar-include-sexps (let ((counter 0)) - (mapconcat 'identity + (mapconcat #'identity (org-element-map (cons (org-element-property :title entry) (org-element-contents inside)) @@ -613,7 +618,7 @@ inlinetask within the section." ;; inlinetask within it. In agenda export, this is independent ;; from the mark (or lack thereof) on the entry. (when (eq type 'headline) - (mapconcat 'identity + (mapconcat #'identity (org-element-map inside 'inlinetask (lambda (task) (org-icalendar-entry task nil info)) info) "")) diff --git a/lisp/org/ox-latex.el b/lisp/org/ox-latex.el index 53cc54f00f7..2c71f7d785a 100644 --- a/lisp/org/ox-latex.el +++ b/lisp/org/ox-latex.el @@ -524,7 +524,7 @@ When nil, no transformation is made." :package-version '(Org . "8.0") :type '(choice (string :tag "Format string") - (const :tag "No formatting"))) + (const :tag "No formatting" nil))) ;;;; Text markup @@ -689,9 +689,9 @@ These options are supplied as a comma-separated list to the a list containing two strings: the name of the option, and the value. For example, - (setq org-latex-listings-options + \(setq org-latex-listings-options '((\"basicstyle\" \"\\\\small\") - (\"keywordstyle\" \"\\\\color{black}\\\\bfseries\\\\underbar\"))) + \(\"keywordstyle\" \"\\\\color{black}\\\\bfseries\\\\underbar\"))) will typeset the code in a small size font with underlined, bold black keywords. @@ -1526,17 +1526,16 @@ holding contextual information." (when priority (format "\\framebox{\\#%c} " priority)) title (when tags (format "\\hfill{}\\textsc{:%s:}" - (mapconcat 'identity tags ":")))))) - (format (concat "\\begin{center}\n" - "\\fbox{\n" - "\\begin{minipage}[c]{.6\\textwidth}\n" - "%s\n\n" - "\\rule[.8em]{\\textwidth}{2pt}\n\n" - "%s" - "\\end{minipage}\n" - "}\n" - "\\end{center}") - full-title contents)))))) + (mapconcat #'identity tags ":")))))) + (concat "\\begin{center}\n" + "\\fbox{\n" + "\\begin{minipage}[c]{.6\\textwidth}\n" + full-title "\n\n" + (and (org-string-nw-p contents) + (concat "\\rule[.8em]{\\textwidth}{2pt}\n\n" contents)) + "\\end{minipage}\n" + "}\n" + "\\end{center}")))))) ;;;; Italic @@ -1810,7 +1809,7 @@ INFO is a plist holding contextual information. See ;; description. ((string= type "radio") (let ((destination (org-export-resolve-radio-link link info))) - (when destination + (if (not destination) desc (format "\\hyperref[%s]{%s}" (org-export-solidify-link-text (org-element-property :value destination)) @@ -1843,7 +1842,8 @@ INFO is a plist holding contextual information. See 'number-to-string (org-export-get-headline-number destination info) "-")))) - (if (and (plist-get info :section-numbers) (not desc)) + (if (and (not desc) + (org-export-numbered-headline-p destination info)) (format "\\ref{%s}" label) (format "\\hyperref[%s]{%s}" label (or desc diff --git a/lisp/org/ox-md.el b/lisp/org/ox-md.el index 1f841c865fa..99a4ae01786 100644 --- a/lisp/org/ox-md.el +++ b/lisp/org/ox-md.el @@ -102,21 +102,28 @@ This variable can be set to either `atx' or `setext'." TREE is the parse tree being exported. BACKEND is the export back-end used. INFO is a plist used as a communication channel. -Make sure there's no blank line before a plain list, unless it is -located right after a paragraph. Otherwise, add a blank line -between elements. Blank lines between items are preserved. +Enforce a blank line between elements. There are three +exceptions to this rule: + + 1. Preserve blank lines between sibling items in a plain list, + + 2. Outside of plain lists, preserve blank lines between + a paragraph and a plain list, + + 3. In an item, remove any blank line before the very first + paragraph and the next sub-list. Assume BACKEND is `md'." (org-element-map tree (remq 'item org-element-all-elements) - (lambda (elem) - (org-element-put-property - elem :post-blank - (if (and (eq (org-element-type (org-export-get-next-element elem info)) - 'plain-list) - (not (and (eq (org-element-type elem) 'paragraph) - (org-export-get-previous-element elem info)))) - 0 - 1)))) + (lambda (e) + (cond + ((not (and (eq (org-element-type e) 'paragraph) + (eq (org-element-type (org-export-get-next-element e info)) + 'plain-list))) + (org-element-put-property e :post-blank 1)) + ((not (eq (org-element-type (org-element-property :parent e)) 'item))) + (t (org-element-put-property + e :post-blank (if (org-export-get-previous-element e info) 1 0)))))) ;; Return updated tree. tree) @@ -182,6 +189,14 @@ a communication channel." (and (plist-get info :with-priority) (let ((char (org-element-property :priority headline))) (and char (format "[#%c] " char))))) + (anchor + (when (plist-get info :with-toc) + (org-html--anchor + (or (org-element-property :CUSTOM_ID headline) + (concat "sec-" + (mapconcat 'number-to-string + (org-export-get-headline-number + headline info) "-")))))) ;; Headline text without tags. (heading (concat todo priority title))) (cond @@ -202,12 +217,12 @@ a communication channel." (replace-regexp-in-string "^" " " contents))))) ;; Use "Setext" style. ((eq org-md-headline-style 'setext) - (concat heading tags "\n" + (concat heading tags anchor "\n" (make-string (length heading) (if (= level 1) ?= ?-)) "\n\n" contents)) ;; Use "atx" style. - (t (concat (make-string level ?#) " " heading tags "\n\n" contents)))))) + (t (concat (make-string level ?#) " " heading tags anchor "\n\n" contents)))))) ;;;; Horizontal Rule @@ -279,57 +294,65 @@ a communication channel." (concat (file-name-sans-extension raw-path) ".md") raw-path)))) (type (org-element-property :type link))) - (cond ((member type '("custom-id" "id")) - (let ((destination (org-export-resolve-id-link link info))) - (if (stringp destination) ; External file. - (let ((path (funcall link-org-files-as-md destination))) - (if (not contents) (format "<%s>" path) - (format "[%s](%s)" contents path))) - (concat - (and contents (concat contents " ")) - (format "(%s)" - (format (org-export-translate "See section %s" :html info) - (mapconcat 'number-to-string - (org-export-get-headline-number - destination info) - "."))))))) - ((org-export-inline-image-p link org-html-inline-image-rules) - (let ((path (let ((raw-path (org-element-property :path link))) - (if (not (file-name-absolute-p raw-path)) raw-path - (expand-file-name raw-path)))) - (caption (org-export-data - (org-export-get-caption - (org-export-get-parent-element link)) info))) - (format "" - (if (not (org-string-nw-p caption)) path - (format "%s \"%s\"" path caption))))) - ((string= type "coderef") - (let ((ref (org-element-property :path link))) - (format (org-export-get-coderef-format ref contents) - (org-export-resolve-coderef ref info)))) - ((equal type "radio") contents) - ((equal type "fuzzy") - (let ((destination (org-export-resolve-fuzzy-link link info))) - (if (org-string-nw-p contents) contents - (when destination - (let ((number (org-export-get-ordinal destination info))) - (when number - (if (atom number) (number-to-string number) - (mapconcat 'number-to-string number ".")))))))) - (t (let* ((raw-path (org-element-property :path link)) - (path - (cond - ((member type '("http" "https" "ftp")) - (concat type ":" raw-path)) - ((string= type "file") - (let ((path (funcall link-org-files-as-md raw-path))) - (if (not (file-name-absolute-p path)) path - ;; If file path is absolute, prepend it - ;; with "file:" component. - (concat "file:" path)))) - (t raw-path)))) - (if (not contents) (format "<%s>" path) - (format "[%s](%s)" contents path))))))) + (cond + ((member type '("custom-id" "id")) + (let ((destination (org-export-resolve-id-link link info))) + (if (stringp destination) ; External file. + (let ((path (funcall link-org-files-as-md destination))) + (if (not contents) (format "<%s>" path) + (format "[%s](%s)" contents path))) + (concat + (and contents (concat contents " ")) + (format "(%s)" + (format (org-export-translate "See section %s" :html info) + (mapconcat 'number-to-string + (org-export-get-headline-number + destination info) + "."))))))) + ((org-export-inline-image-p link org-html-inline-image-rules) + (let ((path (let ((raw-path (org-element-property :path link))) + (if (not (file-name-absolute-p raw-path)) raw-path + (expand-file-name raw-path)))) + (caption (org-export-data + (org-export-get-caption + (org-export-get-parent-element link)) info))) + (format "" + (if (not (org-string-nw-p caption)) path + (format "%s \"%s\"" path caption))))) + ((string= type "coderef") + (let ((ref (org-element-property :path link))) + (format (org-export-get-coderef-format ref contents) + (org-export-resolve-coderef ref info)))) + ((equal type "radio") contents) + ((equal type "fuzzy") + (let ((destination (org-export-resolve-fuzzy-link link info))) + (if (org-string-nw-p contents) contents + (when destination + (let ((number (org-export-get-ordinal destination info))) + (when number + (if (atom number) (number-to-string number) + (mapconcat 'number-to-string number ".")))))))) + ;; Link type is handled by a special function. + ((let ((protocol (nth 2 (assoc type org-link-protocols)))) + (and (functionp protocol) + (funcall protocol + (org-link-unescape (org-element-property :path link)) + contents + 'md)))) + (t (let* ((raw-path (org-element-property :path link)) + (path + (cond + ((member type '("http" "https" "ftp")) + (concat type ":" raw-path)) + ((string= type "file") + (let ((path (funcall link-org-files-as-md raw-path))) + (if (not (file-name-absolute-p path)) path + ;; If file path is absolute, prepend it + ;; with "file:" component. + (concat "file:" path)))) + (t raw-path)))) + (if (not contents) (format "<%s>" path) + (format "[%s](%s)" contents path))))))) ;;;; Paragraph diff --git a/lisp/org/ox-odt.el b/lisp/org/ox-odt.el index 49be3bcb015..8b61d5c47b6 100644 --- a/lisp/org/ox-odt.el +++ b/lisp/org/ox-odt.el @@ -1741,7 +1741,8 @@ CONTENTS is nil. INFO is a plist holding contextual information." :transcoders '((paragraph . (lambda (p c i) (org-odt--format-paragraph - p c "Footnote" + p c i + "Footnote" "OrgFootnoteCenter" "OrgFootnoteQuotations"))))) info)))) @@ -2732,7 +2733,7 @@ INFO is a plist holding contextual information. See ;; link's description. ((string= type "radio") (let ((destination (org-export-resolve-radio-link link info))) - (when destination + (if (not destination) desc (format "<text:bookmark-ref text:reference-format=\"text\" text:ref-name=\"OrgXref.%s\">%s</text:bookmark-ref>" (org-export-solidify-link-text @@ -2832,33 +2833,44 @@ INFO is a plist holding contextual information. See ;;;; Paragraph -(defun org-odt--format-paragraph (paragraph contents default center quote) +(defun org-odt--paragraph-style (paragraph) + "Return style of PARAGRAPH. +Style is a symbol among `quoted', `centered' and nil." + (let ((up paragraph)) + (while (and (setq up (org-element-property :parent up)) + (not (memq (org-element-type up) + '(center-block quote-block section))))) + (case (org-element-type up) + (center-block 'centered) + (quote-block 'quoted)))) + +(defun org-odt--format-paragraph (paragraph contents info default center quote) "Format paragraph according to given styles. PARAGRAPH is a paragraph type element. CONTENTS is the -transcoded contents of that paragraph, as a string. DEFAULT, -CENTER and QUOTE are, respectively, style to use when paragraph -belongs to no special environment, a center block, or a quote -block." - (let* ((parent (org-export-get-parent paragraph)) - (parent-type (org-element-type parent)) - (style (case parent-type - (quote-block quote) - (center-block center) - (t default)))) - ;; If this paragraph is a leading paragraph in an item and the - ;; item has a checkbox, splice the checkbox and paragraph contents - ;; together. - (when (and (eq (org-element-type parent) 'item) - (eq paragraph (car (org-element-contents parent)))) - (setq contents (concat (org-odt--checkbox parent) contents))) - (format "\n<text:p text:style-name=\"%s\">%s</text:p>" style contents))) +transcoded contents of that paragraph, as a string. INFO is +a plist used as a communication channel. DEFAULT, CENTER and +QUOTE are, respectively, style to use when paragraph belongs to +no special environment, a center block, or a quote block." + (format "\n<text:p text:style-name=\"%s\">%s</text:p>" + (case (org-odt--paragraph-style paragraph) + (quoted quote) + (centered center) + (otherwise default)) + ;; If PARAGRAPH is a leading paragraph in an item that has + ;; a checkbox, splice checkbox and paragraph contents + ;; together. + (concat (let ((parent (org-element-property :parent paragraph))) + (and (eq (org-element-type parent) 'item) + (not (org-export-get-previous-element paragraph info)) + (org-odt--checkbox parent))) + contents))) (defun org-odt-paragraph (paragraph contents info) "Transcode a PARAGRAPH element from Org to ODT. CONTENTS is the contents of the paragraph, as a string. INFO is the plist used as a communication channel." (org-odt--format-paragraph - paragraph contents + paragraph contents info (or (org-element-property :style paragraph) "Text_20_body") "OrgCenter" "Quotations")) diff --git a/lisp/org/ox-org.el b/lisp/org/ox-org.el index d9a8001dcfc..4bee45ab014 100644 --- a/lisp/org/ox-org.el +++ b/lisp/org/ox-org.el @@ -65,7 +65,7 @@ setting of `org-html-htmlize-output-type' is 'css." (entity . org-org-identity) (example-block . org-org-identity) (fixed-width . org-org-identity) - (footnote-definition . org-org-identity) + (footnote-definition . ignore) (footnote-reference . org-org-identity) (headline . org-org-headline) (horizontal-rule . org-org-identity) @@ -87,7 +87,7 @@ setting of `org-html-htmlize-output-type' is 'css." (quote-block . org-org-identity) (quote-section . org-org-identity) (radio-target . org-org-identity) - (section . org-org-identity) + (section . org-org-section) (special-block . org-org-identity) (src-block . org-org-identity) (statistics-cookie . org-org-identity) @@ -122,15 +122,16 @@ CONTENTS is its contents, as a string or nil. INFO is ignored." (defun org-org-headline (headline contents info) "Transcode HEADLINE element back into Org syntax. CONTENTS is its contents, as a string or nil. INFO is ignored." - (unless (plist-get info :with-todo-keywords) - (org-element-put-property headline :todo-keyword nil)) - (unless (plist-get info :with-tags) - (org-element-put-property headline :tags nil)) - (unless (plist-get info :with-priority) - (org-element-put-property headline :priority nil)) - (org-element-put-property headline :level - (org-export-get-relative-level headline info)) - (org-element-headline-interpreter headline contents)) + (unless (org-element-property :footnote-section-p headline) + (unless (plist-get info :with-todo-keywords) + (org-element-put-property headline :todo-keyword nil)) + (unless (plist-get info :with-tags) + (org-element-put-property headline :tags nil)) + (unless (plist-get info :with-priority) + (org-element-put-property headline :priority nil)) + (org-element-put-property headline :level + (org-export-get-relative-level headline info)) + (org-element-headline-interpreter headline contents))) (defun org-org-keyword (keyword contents info) "Transcode KEYWORD element back into Org syntax. @@ -144,6 +145,33 @@ keywords targeted at other export back-ends." org-element-block-name-alist)) (org-element-keyword-interpreter keyword nil))) +(defun org-org-section (section contents info) + "Transcode SECTION element back into Org syntax. +CONTENTS is the contents of the section. INFO is a plist used as +a communication channel." + (concat + (org-element-normalize-string contents) + ;; Insert footnote definitions appearing for the first time in this + ;; section. Indeed, some of them may not be available to narrowing + ;; so we make sure all of them are included in the result. + (let ((footnotes-alist + (org-element-map section 'footnote-reference + (lambda (fn) + (and (eq (org-element-property :type fn) 'standard) + (org-export-footnote-first-reference-p fn info) + (cons (org-element-property :label fn) + (org-export-get-footnote-definition fn info)))) + info))) + (and footnotes-alist + (concat "\n" + (mapconcat + (lambda (d) + (org-element-normalize-string + (concat (format "[%s] "(car d)) + (org-export-data (cdr d) info)))) + footnotes-alist "\n")))) + (make-string (or (org-element-property :post-blank section) 0) ?\n))) + ;;;###autoload (defun org-org-export-as-org (&optional async subtreep visible-only ext-plist) "Export current buffer to an Org buffer. diff --git a/lisp/org/ox-publish.el b/lisp/org/ox-publish.el index b38fca97059..efc70d22a83 100644 --- a/lisp/org/ox-publish.el +++ b/lisp/org/ox-publish.el @@ -805,9 +805,14 @@ Default for SITEMAP-FILENAME is 'sitemap.org'." (visiting (find-buffer-visiting file)) (buffer (or visiting (find-file-noselect file)))) (with-current-buffer buffer - (org-mode) (let ((title - (let ((property (plist-get (org-export-get-environment) :title))) + (let ((property + (plist-get + ;; protect local variables in open buffers + (if visiting + (org-export-with-buffer-copy (org-export-get-environment)) + (org-export-get-environment)) + :title))) (if property (org-no-properties (org-element-interpret-data property)) (file-name-nondirectory (file-name-sans-extension file)))))) @@ -822,12 +827,14 @@ If FILE is an Org file and provides a DATE keyword use it. In any other case use the file system's modification time. Return time in `current-time' format." (if (file-directory-p file) (nth 5 (file-attributes file)) - (let* ((visiting (find-buffer-visiting file)) + (let* ((org-inhibit-startup t) + (visiting (find-buffer-visiting file)) (file-buf (or visiting (find-file-noselect file nil))) (date (plist-get (with-current-buffer file-buf - (let ((org-inhibit-startup t)) (org-mode)) - (org-export-get-environment)) + (if visiting + (org-export-with-buffer-copy (org-export-get-environment)) + (org-export-get-environment))) :date))) (unless visiting (kill-buffer file-buf)) ;; DATE is either a timestamp object or a secondary string. If it @@ -874,7 +881,7 @@ publishing will be done asynchronously, in another process." ;; project is still a string here. (list (assoc project org-publish-project-alist))))) (if async - (org-export-async-start 'ignore + (org-export-async-start (lambda (results) nil) `(let ((org-publish-use-timestamps-flag (if ',force nil ,org-publish-use-timestamps-flag))) (org-publish-projects ',project-alist))) @@ -892,7 +899,7 @@ optional argument ASYNC, publishing will be done asynchronously, in another process." (interactive "P") (if async - (org-export-async-start 'ignore + (org-export-async-start (lambda (results) nil) `(progn (when ',force (org-publish-remove-all-timestamps)) (let ((org-publish-use-timestamps-flag @@ -914,7 +921,7 @@ asynchronously, in another process." (interactive "P") (let ((file (buffer-file-name (buffer-base-buffer)))) (if async - (org-export-async-start 'ignore + (org-export-async-start (lambda (results) nil) `(let ((org-publish-use-timestamps-flag (if ',force nil ,org-publish-use-timestamps-flag))) (org-publish-file ,file))) diff --git a/lisp/org/ox-texinfo.el b/lisp/org/ox-texinfo.el index a961d7acdbc..37841d776f4 100644 --- a/lisp/org/ox-texinfo.el +++ b/lisp/org/ox-texinfo.el @@ -21,38 +21,7 @@ ;;; Commentary: ;; -;; This library implements a Texinfo back-end for Org generic -;; exporter. -;; -;; To test it, run -;; -;; M-: (org-export-to-buffer 'texinfo "*Test Texinfo*") RET -;; -;; in an Org mode buffer then switch to the buffer to see the Texinfo -;; export. See ox.el for more details on how this exporter works. -;; - -;; It introduces nine new buffer keywords: "TEXINFO_CLASS", -;; "TEXINFO_FILENAME", "TEXINFO_HEADER", "TEXINFO_POST_HEADER", -;; "TEXINFO_DIR_CATEGORY", "TEXINFO_DIR_TITLE", "TEXINFO_DIR_DESC" -;; "SUBTITLE" and "SUBAUTHOR". - -;; -;; It introduces 1 new headline property keywords: -;; "TEXINFO_MENU_TITLE" for optional menu titles. -;; -;; To include inline code snippets (for example for generating @kbd{} -;; and @key{} commands), the following export-snippet keys are -;; accepted: -;; -;; texinfo -;; info -;; -;; You can add them for export snippets via any of the below: -;; -;; (add-to-list 'org-export-snippet-translation-alist -;; '("info" . "texinfo")) -;; +;; See Org manual for details. ;;; Code: @@ -70,8 +39,8 @@ (center-block . org-texinfo-center-block) (clock . org-texinfo-clock) (code . org-texinfo-code) - (comment . org-texinfo-comment) - (comment-block . org-texinfo-comment-block) + (comment . (lambda (&rest args) "")) + (comment-block . (lambda (&rest args) "")) (drawer . org-texinfo-drawer) (dynamic-block . org-texinfo-dynamic-block) (entity . org-texinfo-entity) @@ -114,13 +83,14 @@ :export-block "TEXINFO" :filters-alist '((:filter-headline . org-texinfo-filter-section-blank-lines) + (:filter-parse-tree . org-texinfo--normalize-headlines) (:filter-section . org-texinfo-filter-section-blank-lines)) :menu-entry '(?i "Export to Texinfo" ((?t "As TEXI file" org-texinfo-export-to-texinfo) (?i "As INFO file" org-texinfo-export-to-info))) :options-alist - '((:texinfo-filename "TEXINFO_FILENAME" nil org-texinfo-filename t) + '((:texinfo-filename "TEXINFO_FILENAME" nil nil t) (:texinfo-class "TEXINFO_CLASS" nil org-texinfo-default-class t) (:texinfo-header "TEXINFO_HEADER" nil nil newline) (:texinfo-post-header "TEXINFO_POST_HEADER" nil nil newline) @@ -128,7 +98,8 @@ (:subauthor "SUBAUTHOR" nil nil newline) (:texinfo-dircat "TEXINFO_DIR_CATEGORY" nil nil t) (:texinfo-dirtitle "TEXINFO_DIR_TITLE" nil nil t) - (:texinfo-dirdesc "TEXINFO_DIR_DESC" nil nil t))) + (:texinfo-dirdesc "TEXINFO_DIR_DESC" nil nil t) + (:texinfo-printed-title "TEXINFO_PRINTED_TITLE" nil nil t))) @@ -141,12 +112,7 @@ :package-version '(Org . "8.0") :group 'org-export) -;;; Preamble - -(defcustom org-texinfo-filename "" - "Default filename for Texinfo output." - :group 'org-export-texinfo - :type '(string :tag "Export Filename")) +;;;; Preamble (defcustom org-texinfo-coding-system nil "Default document encoding for Texinfo output. @@ -162,19 +128,42 @@ If `nil' it will default to `buffer-file-coding-system'." (defcustom org-texinfo-classes '(("info" - "\\input texinfo @c -*- texinfo -*-" + "@documentencoding AUTO\n@documentlanguage AUTO" ("@chapter %s" . "@unnumbered %s") ("@section %s" . "@unnumberedsec %s") ("@subsection %s" . "@unnumberedsubsec %s") ("@subsubsection %s" . "@unnumberedsubsubsec %s"))) "Alist of Texinfo classes and associated header and structure. -If #+Texinfo_CLASS is set in the buffer, use its value and the +If #+TEXINFO_CLASS is set in the buffer, use its value and the associated information. Here is the structure of each cell: \(class-name header-string - \(numbered-section . unnumbered-section\) - ...\) + \(numbered-section . unnumbered-section) + ...) + + +The header string +----------------- + +The header string is inserted in the header of the generated +document, right after \"@setfilename\" and \"@settitle\" +commands. + +If it contains the special string + + \"@documentencoding AUTO\" + +\"AUTO\" will be replaced with an appropriate coding system. See +`org-texinfo-coding-system' for more information. Likewise, if +the string contains the special string + + \"@documentlanguage AUTO\" + +\"AUTO\" will be replaced with the language defined in the +buffer, through #+LANGUAGE keyword, or globally, with +`org-export-default-language', which see. + The sectioning structure ------------------------ @@ -186,10 +175,12 @@ section string and will be replaced by the title of the section. Instead of a list of sectioning commands, you can also specify a function name. That function will be called with two -parameters, the \(reduced) level of the headline, and a predicate +parameters, the reduced) level of the headline, and a predicate non-nil when the headline should be numbered. It must return a format string in which the section title will be added." :group 'org-export-texinfo + :version "24.4" + :package-version '(Org . "8.2") :type '(repeat (list (string :tag "Texinfo class") (string :tag "Texinfo header") @@ -200,7 +191,7 @@ a format string in which the section title will be added." (string :tag "unnumbered")) (function :tag "Hook computing sectioning")))))) -;;; Headline +;;;; Headline (defcustom org-texinfo-format-headline-function 'ignore "Function to format headline text. @@ -230,22 +221,16 @@ order to reproduce the default set-up: :group 'org-export-texinfo :type 'function) -;;; Node listing (menu) +;;;; Node listing (menu) (defcustom org-texinfo-node-description-column 32 - "Column at which to start the description in the node - listings. - + "Column at which to start the description in the node listings. If a node title is greater than this length, the description will be placed after the end of the title." :group 'org-export-texinfo :type 'integer) -;;; Footnotes -;; -;; Footnotes are inserted directly - -;;; Timestamps +;;;; Timestamps (defcustom org-texinfo-active-timestamp-format "@emph{%s}" "A printf format string to be applied to active timestamps." @@ -262,14 +247,14 @@ be placed after the end of the title." :group 'org-export-texinfo :type 'string) -;;; Links +;;;; Links (defcustom org-texinfo-link-with-unknown-path-format "@indicateurl{%s}" "Format string for links with unknown path type." :group 'org-export-texinfo :type 'string) -;;; Tables +;;;; Tables (defcustom org-texinfo-tables-verbatim nil "When non-nil, tables are exported verbatim." @@ -285,14 +270,14 @@ When nil, no transformation is made." :group 'org-export-texinfo :type '(choice (string :tag "Format string") - (const :tag "No formatting"))) + (const :tag "No formatting" nil))) (defcustom org-texinfo-def-table-markup "@samp" "Default setting for @table environments." :group 'org-export-texinfo :type 'string) -;;; Text markup +;;;; Text markup (defcustom org-texinfo-text-markup-alist '((bold . "@strong{%s}") (code . code) @@ -316,7 +301,7 @@ returned as-is." :type 'alist :options '(bold code italic verbatim comment)) -;;; Drawers +;;;; Drawers (defcustom org-texinfo-format-drawer-function (lambda (name contents) contents) @@ -331,10 +316,10 @@ The function should return the string to be exported. The default function simply returns the value of CONTENTS." :group 'org-export-texinfo :version "24.4" - :package-version '(Org . "8.3") + :package-version '(Org . "8.2") :type 'function) -;;; Inlinetasks +;;;; Inlinetasks (defcustom org-texinfo-format-inlinetask-function 'ignore "Function called to format an inlinetask in Texinfo code. @@ -370,18 +355,13 @@ in order to mimic default behavior: :group 'org-export-texinfo :type 'function) -;;; Src blocks -;; -;; Src Blocks are example blocks, except for LISP - -;;; Compilation +;;;; Compilation -(defcustom org-texinfo-info-process - '("makeinfo %f") +(defcustom org-texinfo-info-process '("makeinfo %f") "Commands to process a Texinfo file to an INFO file. This is list of strings, each of them will be given to the shell as a command. %f in the command will be replaced by the full -file name, %b by the file base name \(i.e without extension) and +file name, %b by the file base name (i.e without extension) and %o by the base directory of the file." :group 'org-export-texinfo :type '(repeat :tag "Shell command sequence" @@ -403,12 +383,13 @@ set `org-texinfo-logfiles-extensions'." :group 'org-export-latex :type 'boolean) - ;;; Constants + (defconst org-texinfo-max-toc-depth 4 - "Maximum depth for creation of detailed menu listings. Beyond - this depth Texinfo will not recognize the nodes and will cause - errors. Left as a constant in case this value ever changes.") + "Maximum depth for creation of detailed menu listings. +Beyond this depth, Texinfo will not recognize the nodes and will +cause errors. Left as a constant in case this value ever +changes.") (defconst org-texinfo-supported-coding-systems '("US-ASCII" "UTF-8" "ISO-8859-15" "ISO-8859-1" "ISO-8859-2" "koi8-r" "koi8-u") @@ -425,6 +406,31 @@ If two strings share the same prefix (e.g. \"ISO-8859-1\" and (let ((blanks (make-string 2 ?\n))) (replace-regexp-in-string "\n\\(?:\n[ \t]*\\)*\\'" blanks headline))) +(defun org-texinfo--normalize-headlines (tree back-end info) + "Normalize headlines in TREE. + +BACK-END is the symbol specifying back-end used for export. INFO +is a plist used as a communication channel. + +Make sure every headline in TREE contains a section, since those +are required to install a menu. Also put exactly one blank line +at the end of each section. + +Return new tree." + (org-element-map tree 'headline + (lambda (hl) + (org-element-put-property hl :post-blank 1) + (let ((contents (org-element-contents hl))) + (when contents + (let ((first (org-element-map contents '(headline section) + #'identity info t))) + (unless (eq (org-element-type first) 'section) + (apply #'org-element-set-contents + hl + (cons `(section (:parent ,hl)) contents))))))) + info) + tree) + (defun org-texinfo--find-verb-separator (s) "Return a character not used in string S. This is used to choose a separator for constructs like \\verb." @@ -433,18 +439,6 @@ This is used to choose a separator for constructs like \\verb." when (not (string-match (regexp-quote (char-to-string c)) s)) return (char-to-string c)))) -(defun org-texinfo--make-option-string (options) - "Return a comma separated string of keywords and values. -OPTIONS is an alist where the key is the options keyword as -a string, and the value a list containing the keyword value, or -nil." - (mapconcat (lambda (pair) - (concat (first pair) - (when (> (length (second pair)) 0) - (concat "=" (second pair))))) - options - ",")) - (defun org-texinfo--text-markup (text markup) "Format TEXT depending on MARKUP text markup. See `org-texinfo-text-markup-alist' for details." @@ -472,207 +466,44 @@ See `org-texinfo-text-markup-alist' for details." ;; Else use format string. (t (format fmt text))))) -(defun org-texinfo--get-node (headline info) - "Return node entry associated to HEADLINE. -INFO is a plist used as a communication channel." - (let ((menu-title (org-export-get-alt-title headline info))) - (org-texinfo--sanitize-menu - (replace-regexp-in-string - "%" "%%" - (if menu-title (org-export-data menu-title info) - (org-texinfo--sanitize-headline - (org-element-property :title headline) info)))))) - -;;; Headline sanitizing - -(defun org-texinfo--sanitize-headline (headline info) - "Remove all formatting from the text of a headline for use in - node and menu listing." - (mapconcat 'identity - (org-texinfo--sanitize-headline-contents headline info) " ")) - -(defun org-texinfo--sanitize-headline-contents (headline info) - "Retrieve the content of the headline. - -Any content that can contain further formatting is checked -recursively, to ensure that nested content is also properly -retrieved." - (loop for contents in headline append - (cond - ;; already a string - ((stringp contents) - (list (replace-regexp-in-string " $" "" contents))) - ;; Is exported as-is (value) - ((org-element-map contents '(verbatim code) - (lambda (value) (org-element-property :value value)) info)) - ;; Has content and recurse into the content - ((org-element-contents contents) - (org-texinfo--sanitize-headline-contents - (org-element-contents contents) info))))) - -;;; Menu sanitizing - -(defun org-texinfo--sanitize-menu (title) - "Remove invalid characters from TITLE for use in menus and -nodes. - -Based on Texinfo specifications, the following must be removed: -@ { } ( ) : . ," - (replace-regexp-in-string "[@{}():,.]" "" title)) - -;;; Content sanitizing +(defun org-texinfo--get-node (blob info) + "Return node or anchor associated to BLOB. +BLOB is an element or object. INFO is a plist used as +a communication channel. The function guarantees the node or +anchor name is unique." + (let ((cache (plist-get info :texinfo-node-cache))) + (or (cdr (assq blob cache)) + (let ((name + (org-texinfo--sanitize-node + (case (org-element-type blob) + (headline + (org-export-data (org-export-get-alt-title blob info) info)) + ((radio-target target) (org-element-property :value blob)) + (otherwise (or (org-element-property :name blob) "")))))) + ;; Ensure NAME is unique. + (while (rassoc name cache) (setq name (concat name "x"))) + (plist-put info :texinfo-node-cache (cons (cons blob name) cache)) + name)))) + +;;;; Menu sanitizing + +(defun org-texinfo--sanitize-node (title) + "Bend string TITLE to node line requirements. +Trim string and collapse multiple whitespace characters as they +are not significant. Also remove the following characters: @ +{ } ( ) : . ," + (replace-regexp-in-string + "[:,.]" "" + (replace-regexp-in-string + "\\`(\\(.*)\\)" "[\\1" + (org-trim (replace-regexp-in-string "[ \t]\\{2,\\}" " " title))))) + +;;;; Content sanitizing (defun org-texinfo--sanitize-content (text) - "Ensure characters are properly escaped when used in headlines or blocks. - -Escape characters are: @ { }" - (replace-regexp-in-string "\\\([@{}]\\\)" "@\\1" text)) - -;;; Menu creation - -(defun org-texinfo--build-menu (tree level info &optional detailed) - "Create the @menu/@end menu information from TREE at headline -level LEVEL. - -TREE contains the parse-tree to work with, either of the entire -document or of a specific parent headline. LEVEL indicates what -level of headlines to look at when generating the menu. INFO is -a plist containing contextual information. - -Detailed determines whether to build a single level of menu, or -recurse into all children as well." - (let ((menu (org-texinfo--generate-menu-list tree level info)) - output text-menu) - (cond - (detailed - ;; Looping is done within the menu generation. - (setq text-menu (org-texinfo--generate-detailed menu level info))) - (t - (setq text-menu (org-texinfo--generate-menu-items menu info)))) - (when text-menu - (setq output (org-texinfo--format-menu text-menu)) - (mapconcat 'identity output "\n")))) - -(defun org-texinfo--generate-detailed (menu level info) - "Generate a detailed listing of all subheadings within MENU starting at LEVEL. - -MENU is the parse-tree to work with. LEVEL is the starting level -for the menu headlines and from which recursion occurs. INFO is -a plist containing contextual information." - (when level - (let ((max-depth (min org-texinfo-max-toc-depth - (plist-get info :headline-levels)))) - (when (> max-depth level) - (loop for headline in menu append - (let* ((title (org-texinfo--menu-headlines headline info)) - ;; Create list of menu entries for the next level - (sublist (org-texinfo--generate-menu-list - headline (1+ level) info)) - ;; Generate the menu items for that level. If - ;; there are none omit that heading completely, - ;; otherwise join the title to it's related entries. - (submenu (if (org-texinfo--generate-menu-items sublist info) - (append (list title) - (org-texinfo--generate-menu-items sublist info)) - 'nil)) - ;; Start the process over the next level down. - (recursion (org-texinfo--generate-detailed sublist (1+ level) info))) - (setq recursion (append submenu recursion)) - recursion)))))) - -(defun org-texinfo--generate-menu-list (tree level info) - "Generate the list of headlines that are within a given level -of the tree for further formatting. - -TREE is the parse-tree containing the headlines. LEVEL is the -headline level to generate a list of. INFO is a plist holding -contextual information." - (org-element-map tree 'headline - (lambda (head) - (and (= (org-export-get-relative-level head info) level) - ;; Do not take note of footnotes or copying headlines. - (not (org-element-property :COPYING head)) - (not (org-element-property :footnote-section-p head)) - ;; Collect headline. - head)) - info)) - -(defun org-texinfo--generate-menu-items (items info) - "Generate a list of headline information from the listing ITEMS. - -ITEMS is a list of the headlines to be converted into entries. -INFO is a plist containing contextual information. - -Returns a list containing the following information from each -headline: length, title, description. This is used to format the -menu using `org-texinfo--format-menu'." - (loop for headline in items collect - (let* ((menu-title (org-texinfo--sanitize-menu - (org-export-data - (org-export-get-alt-title headline info) - info))) - (title (org-texinfo--sanitize-menu - (org-texinfo--sanitize-headline - (org-element-property :title headline) info))) - (descr (org-export-data - (org-element-property :DESCRIPTION headline) - info)) - (menu-entry (if (string= "" menu-title) title menu-title)) - (len (length menu-entry)) - (output (list len menu-entry descr))) - output))) - -(defun org-texinfo--menu-headlines (headline info) - "Retrieve the title from HEADLINE. - -INFO is a plist holding contextual information. - -Return the headline as a list of (length title description) with -length of -1 and nil description. This is used in -`org-texinfo--format-menu' to identify headlines as opposed to -entries." - (let ((title (org-export-data - (org-element-property :title headline) info))) - (list -1 title 'nil))) - -(defun org-texinfo--format-menu (text-menu) - "Format the TEXT-MENU items to be properly printed in the menu. - -Each entry in the menu should be provided as (length title -description). - -Headlines in the detailed menu are given length -1 to ensure they -are never confused with other entries. They also have no -description. - -Other menu items are output as: - Title:: description - -With the spacing between :: and description based on the length -of the longest menu entry." - - (let (output) - (setq output - (mapcar (lambda (name) - (let* ((title (nth 1 name)) - (desc (nth 2 name)) - (length (nth 0 name)) - (column (max - ;;6 is "* " ":: " for inserted text - length - (- - org-texinfo-node-description-column - 6))) - (spacing (- column length) - )) - (if (> length -1) - (concat "* " title ":: " - (make-string spacing ?\s) - (if desc - (concat desc))) - (concat "\n" title "\n")))) - text-menu)) - output)) + "Escape special characters in string TEXT. +Special characters are: @ { }" + (replace-regexp-in-string "[@{}]" "@\\&" text)) ;;; Template @@ -680,145 +511,127 @@ of the longest menu entry." "Return complete document string after Texinfo conversion. CONTENTS is the transcoded contents string. INFO is a plist holding export options." - (let* ((title (org-export-data (plist-get info :title) info)) - (info-filename (or (plist-get info :texinfo-filename) - (file-name-nondirectory - (org-export-output-file-name ".info")))) - (author (org-export-data (plist-get info :author) info)) - (lang (org-export-data (plist-get info :language) info)) - (texinfo-header (plist-get info :texinfo-header)) - (texinfo-post-header (plist-get info :texinfo-post-header)) - (subtitle (plist-get info :subtitle)) - (subauthor (plist-get info :subauthor)) - (class (plist-get info :texinfo-class)) - (header (nth 1 (assoc class org-texinfo-classes))) - (copying - (org-element-map (plist-get info :parse-tree) 'headline - (lambda (hl) (and (org-element-property :COPYING hl) hl)) info t)) - (dircat (plist-get info :texinfo-dircat)) - (dirtitle (plist-get info :texinfo-dirtitle)) - (dirdesc (plist-get info :texinfo-dirdesc)) - ;; Spacing to align description (column 32 - 3 for `* ' and - ;; `.' in text. - (dirspacing (- 29 (length dirtitle))) - (menu (org-texinfo-make-menu info 'main)) - (detail-menu (org-texinfo-make-menu info 'detailed))) + (let ((title (org-export-data (plist-get info :title) info)) + ;; Copying data is the contents of the first headline in + ;; parse tree with a non-nil copying property. + (copying (org-element-map (plist-get info :parse-tree) 'headline + (lambda (hl) + (and (org-not-nil (org-element-property :COPYING hl)) + (org-element-contents hl))) + info t))) (concat - ;; Header - header "\n" + "\\input texinfo @c -*- texinfo -*-\n" "@c %**start of header\n" - ;; Filename and Title - "@setfilename " info-filename "\n" - "@settitle " title "\n" - ;; Coding system. - (format - "@documentencoding %s\n" - (catch 'coding-system - (let ((case-fold-search t) - (name (symbol-name (or org-texinfo-coding-system - buffer-file-coding-system)))) - (dolist (system org-texinfo-supported-coding-systems "UTF-8") - (when (org-string-match-p (regexp-quote system) name) - (throw 'coding-system system)))))) - "\n" - (format "@documentlanguage %s\n" lang) - "\n\n" - "@c Version and Contact Info\n" - "@set AUTHOR " author "\n" - - ;; Additional Header Options set by `#+TEXINFO_HEADER - (if texinfo-header - (concat "\n" - texinfo-header - "\n")) - - "@c %**end of header\n" - "@finalout\n" - "\n\n" - - ;; Additional Header Options set by #+TEXINFO_POST_HEADER - (if texinfo-post-header - (concat "\n" - texinfo-post-header - "\n")) - - ;; Copying - "@copying\n" - ;; Only export the content of the headline, do not need the - ;; initial headline. - (org-export-data (nth 2 copying) info) - "@end copying\n" - "\n\n" - - ;; Info directory information - ;; Only supply if both title and category are provided - (if (and dircat dirtitle) + (let ((file (or (plist-get info :texinfo-filename) + (let ((f (plist-get info :output-file))) + (and f (concat (file-name-sans-extension f) ".info")))))) + (and file (format "@setfilename %s\n" file))) + (format "@settitle %s\n" title) + ;; Insert class-defined header. + (org-element-normalize-string + (let ((header (nth 1 (assoc (plist-get info :texinfo-class) + org-texinfo-classes))) + (coding + (catch 'coding-system + (let ((case-fold-search t) + (name (symbol-name (or org-texinfo-coding-system + buffer-file-coding-system)))) + (dolist (system org-texinfo-supported-coding-systems "UTF-8") + (when (org-string-match-p (regexp-quote system) name) + (throw 'coding-system system)))))) + (language (plist-get info :language)) + (case-fold-search nil)) + ;; Auto coding system. + (replace-regexp-in-string + "^@documentencoding \\(AUTO\\)$" + coding + (replace-regexp-in-string + "^@documentlanguage \\(AUTO\\)$" language header t nil 1) t nil 1))) + ;; Additional header options set by #+TEXINFO_HEADER. + (let ((texinfo-header (plist-get info :texinfo-header))) + (and texinfo-header (org-element-normalize-string texinfo-header))) + "@c %**end of header\n\n" + ;; Additional options set by #+TEXINFO_POST_HEADER. + (let ((texinfo-post-header (plist-get info :texinfo-post-header))) + (and texinfo-post-header + (org-element-normalize-string texinfo-post-header))) + ;; Copying. + (and copying + (format "@copying\n%s@end copying\n\n" + (org-element-normalize-string + (org-export-data copying info)))) + ;; Info directory information. Only supply if both title and + ;; category are provided. + (let ((dircat (plist-get info :texinfo-dircat)) + (dirtitle + (let ((title (plist-get info :texinfo-dirtitle))) + (and title + (string-match "^\\(?:\\* \\)?\\(.*?\\)\\(\\.\\)?$" title) + (format "* %s." (match-string 1 title)))))) + (when (and dircat dirtitle) (concat "@dircategory " dircat "\n" "@direntry\n" - "* " dirtitle "." - (make-string dirspacing ?\s) - dirdesc "\n" - "@end direntry\n")) - "\n\n" - + (let ((dirdesc + (let ((desc (plist-get info :texinfo-dirdesc))) + (cond ((not desc) nil) + ((org-string-match-p "\\.$" desc) desc) + (t (concat desc ".")))))) + (if dirdesc (format "%-23s %s" dirtitle dirdesc) dirtitle)) + "\n" + "@end direntry\n\n"))) ;; Title + "@finalout\n" "@titlepage\n" - "@title " title "\n\n" - (if subtitle - (concat "@subtitle " subtitle "\n")) - "@author " author "\n" - (if subauthor - (concat subauthor "\n")) - "\n" - "@c The following two commands start the copyright page.\n" - "@page\n" - "@vskip 0pt plus 1filll\n" - "@insertcopying\n" + (format "@title %s\n" (or (plist-get info :texinfo-printed-title) title)) + (let ((subtitle (plist-get info :subtitle))) + (and subtitle + (org-element-normalize-string + (replace-regexp-in-string "^" "@subtitle " subtitle)))) + (when (plist-get info :with-author) + (concat + ;; Primary author. + (let ((author (org-string-nw-p + (org-export-data (plist-get info :author) info))) + (email (and (plist-get info :with-email) + (org-string-nw-p + (org-export-data (plist-get info :email) info))))) + (cond ((and author email) + (format "@author %s (@email{%s})\n" author email)) + (author (format "@author %s\n" author)) + (email (format "@author @email{%s}\n" email)))) + ;; Other authors. + (let ((subauthor (plist-get info :subauthor))) + (and subauthor + (org-element-normalize-string + (replace-regexp-in-string "^" "@author " subauthor)))))) + (and copying "@page\n@vskip 0pt plus 1filll\n@insertcopying\n") "@end titlepage\n\n" - "@c Output the table of contents at the beginning.\n" - "@contents\n\n" - + ;; Table of contents. + (and (plist-get info :with-toc) "@contents\n\n") ;; Configure Top Node when not for Tex "@ifnottex\n" "@node Top\n" - "@top " title " Manual\n" - "@insertcopying\n" + (format "@top %s\n" title) + (and copying "@insertcopying\n") "@end ifnottex\n\n" - - ;; Do not output menus if they are empty - (if menu - ;; Menu - (concat "@menu\n" - menu - "\n\n" - ;; Detailed Menu - (if detail-menu - (concat "@detailmenu\n" - " --- The Detailed Node Listing ---\n" - detail-menu - "\n\n" - "@end detailmenu\n")) - "@end menu\n")) - "\n\n" - - ;; Document's body. - contents + ;; Menu. + (org-texinfo-make-menu (plist-get info :parse-tree) info 'master) "\n" + ;; Document's body. + contents "\n" ;; Creator. - (let ((creator-info (plist-get info :with-creator))) - (cond - ((not creator-info) "") - ((eq creator-info 'comment) - (format "@c %s\n" (plist-get info :creator))) - (t (concat (plist-get info :creator) "\n")))) + (case (plist-get info :with-creator) + ((nil) nil) + (comment (format "@c %s\n" (plist-get info :creator))) + (otherwise (concat (plist-get info :creator) "\n"))) ;; Document end. - "\n@bye"))) + "@bye"))) ;;; Transcode Functions -;;; Bold +;;;; Bold (defun org-texinfo-bold (bold contents info) "Transcode BOLD from Org to Texinfo. @@ -826,7 +639,7 @@ CONTENTS is the text with bold markup. INFO is a plist holding contextual information." (org-texinfo--text-markup contents 'bold)) -;;; Center Block +;;;; Center Block (defun org-texinfo-center-block (center-block contents info) "Transcode a CENTER-BLOCK element from Org to Texinfo. @@ -834,7 +647,7 @@ CONTENTS holds the contents of the block. INFO is a plist used as a communication channel." contents) -;;; Clock +;;;; Clock (defun org-texinfo-clock (clock contents info) "Transcode a CLOCK element from Org to Texinfo. @@ -851,7 +664,7 @@ information." (and time (format " (%s)" time))))) "@*")) -;;; Code +;;;; Code (defun org-texinfo-code (code contents info) "Transcode a CODE object from Org to Texinfo. @@ -859,23 +672,7 @@ CONTENTS is nil. INFO is a plist used as a communication channel." (org-texinfo--text-markup (org-element-property :value code) 'code)) -;;; Comment - -(defun org-texinfo-comment (comment contents info) - "Transcode a COMMENT object from Org to Texinfo. -CONTENTS is the text in the comment. INFO is a plist holding -contextual information." - (org-texinfo--text-markup (org-element-property :value comment) 'comment)) - -;;; Comment Block - -(defun org-texinfo-comment-block (comment-block contents info) - "Transcode a COMMENT-BLOCK object from Org to Texinfo. -CONTENTS is the text within the block. INFO is a plist holding -contextual information." - (format "@ignore\n%s@end ignore" (org-element-property :value comment-block))) - -;;; Drawer +;;;; Drawer (defun org-texinfo-drawer (drawer contents info) "Transcode a DRAWER element from Org to Texinfo. @@ -886,15 +683,15 @@ holding contextual information." name contents))) output)) -;;; Dynamic Block +;;;; Dynamic Block (defun org-texinfo-dynamic-block (dynamic-block contents info) "Transcode a DYNAMIC-BLOCK element from Org to Texinfo. CONTENTS holds the contents of the block. INFO is a plist -holding contextual information. See `org-export-data'." +holding contextual information." contents) -;;; Entity +;;;; Entity (defun org-texinfo-entity (entity contents info) "Transcode an ENTITY object from Org to Texinfo. @@ -903,7 +700,7 @@ contextual information." (let ((ent (org-element-property :latex entity))) (if (org-element-property :latex-math-p entity) (format "@math{%s}" ent) ent))) -;;; Example Block +;;;; Example Block (defun org-texinfo-example-block (example-block contents info) "Transcode an EXAMPLE-BLOCK element from Org to Texinfo. @@ -912,7 +709,7 @@ information." (format "@verbatim\n%s@end verbatim" (org-export-format-code-default example-block info))) -;;; Export Block +;;;; Export Block (defun org-texinfo-export-block (export-block contents info) "Transcode a EXPORT-BLOCK element from Org to Texinfo. @@ -920,7 +717,7 @@ CONTENTS is nil. INFO is a plist holding contextual information." (when (string= (org-element-property :type export-block) "TEXINFO") (org-remove-indentation (org-element-property :value export-block)))) -;;; Export Snippet +;;;; Export Snippet (defun org-texinfo-export-snippet (export-snippet contents info) "Transcode a EXPORT-SNIPPET object from Org to Texinfo. @@ -928,7 +725,7 @@ CONTENTS is nil. INFO is a plist holding contextual information." (when (eq (org-export-snippet-backend export-snippet) 'texinfo) (org-element-property :value export-snippet))) -;;; Fixed Width +;;;; Fixed Width (defun org-texinfo-fixed-width (fixed-width contents info) "Transcode a FIXED-WIDTH element from Org to Texinfo. @@ -938,8 +735,7 @@ CONTENTS is nil. INFO is a plist holding contextual information." (org-texinfo--sanitize-content (org-element-property :value fixed-width))))) -;;; Footnote Reference -;; +;;;; Footnote Reference (defun org-texinfo-footnote-reference (footnote contents info) "Create a footnote reference for FOOTNOTE. @@ -950,7 +746,7 @@ plist holding contextual information." (format "@footnote{%s}" (org-trim (org-export-data def info))))) -;;; Headline +;;;; Headline (defun org-texinfo-headline (headline contents info) "Transcode a HEADLINE element from Org to Texinfo. @@ -960,66 +756,29 @@ holding contextual information." (level (org-export-get-relative-level headline info)) (numberedp (org-export-numbered-headline-p headline info)) (class-sectioning (assoc class org-texinfo-classes)) - ;; Find the index type, if any + ;; Find the index type, if any. (index (org-element-property :INDEX headline)) - ;; Check if it is an appendix - (appendix (org-element-property :APPENDIX headline)) - ;; Retrieve headline text - (text (org-texinfo--sanitize-headline - (org-element-property :title headline) info)) ;; Create node info, to insert it before section formatting. - ;; Use custom menu title if present + ;; Use custom menu title if present. (node (format "@node %s\n" (org-texinfo--get-node headline info))) - ;; Menus must be generated with first child, otherwise they - ;; will not nest properly - (menu (let* ((first (org-export-first-sibling-p headline info)) - (parent (org-export-get-parent-headline headline)) - (title (org-texinfo--sanitize-headline - (org-element-property :title parent) info)) - heading listing - (tree (plist-get info :parse-tree))) - (if first - (org-element-map (plist-get info :parse-tree) 'headline - (lambda (ref) - (if (member title (org-element-property :title ref)) - (push ref heading))) - info t)) - (setq listing (org-texinfo--build-menu - (car heading) level info)) - (if listing - (setq listing (replace-regexp-in-string - "%" "%%" listing) - listing (format - "\n@menu\n%s\n@end menu\n\n" listing)) - 'nil))) ;; Section formatting will set two placeholders: one for the ;; title and the other for the contents. (section-fmt - (let ((sec (if (and (symbolp (nth 2 class-sectioning)) - (fboundp (nth 2 class-sectioning))) - (funcall (nth 2 class-sectioning) level numberedp) - (nth (1+ level) class-sectioning)))) - (cond - ;; No section available for that LEVEL. - ((not sec) nil) - ;; Section format directly returned by a function. - ((stringp sec) sec) - ;; (numbered-section . unnumbered-section) - ((not (consp (cdr sec))) + (if (org-not-nil (org-element-property :APPENDIX headline)) + "@appendix %s\n%s" + (let ((sec (if (and (symbolp (nth 2 class-sectioning)) + (fboundp (nth 2 class-sectioning))) + (funcall (nth 2 class-sectioning) level numberedp) + (nth (1+ level) class-sectioning)))) (cond - ;;If an index, always unnumbered - (index - (concat menu node (cdr sec) "\n%s")) - (appendix - (concat menu node (replace-regexp-in-string - "unnumbered" - "appendix" - (cdr sec)) "\n%s")) - ;; Otherwise number as needed. - (t - (concat menu node - (funcall - (if numberedp #'car #'cdr) sec) "\n%s"))))))) + ;; No section available for that LEVEL. + ((not sec) nil) + ;; Section format directly returned by a function. + ((stringp sec) sec) + ;; (numbered-section . unnumbered-section) + ((not (consp (cdr sec))) + (concat (if (or index (not numberedp)) (cdr sec) (car sec)) + "\n%s")))))) (todo (and (plist-get info :with-todo-keywords) (let ((todo (org-element-property :todo-keyword headline))) @@ -1029,100 +788,54 @@ holding contextual information." (org-export-get-tags headline info))) (priority (and (plist-get info :with-priority) (org-element-property :priority headline))) - ;; Create the headline text along with a no-tag version. The - ;; latter is required to remove tags from table of contents. - (full-text (org-texinfo--sanitize-content - (if (not (eq org-texinfo-format-headline-function 'ignore)) - ;; User-defined formatting function. - (funcall org-texinfo-format-headline-function - todo todo-type priority text tags) - ;; Default formatting. - (concat - (when todo - (format "@strong{%s} " todo)) - (when priority (format "@emph{#%s} " priority)) - text - (when tags - (format " :%s:" - (mapconcat 'identity tags ":"))))))) - (full-text-no-tag - (org-texinfo--sanitize-content - (if (not (eq org-texinfo-format-headline-function 'ignore)) - ;; User-defined formatting function. - (funcall org-texinfo-format-headline-function - todo todo-type priority text nil) - ;; Default formatting. - (concat - (when todo (format "@strong{%s} " todo)) - (when priority (format "@emph{#%c} " priority)) - text)))) - (pre-blanks - (make-string (org-element-property :pre-blank headline) 10))) + (text (org-export-data (org-element-property :title headline) info)) + (full-text (if (not (eq org-texinfo-format-headline-function 'ignore)) + ;; User-defined formatting function. + (funcall org-texinfo-format-headline-function + todo todo-type priority text tags) + ;; Default formatting. + (concat + (when todo + (format "@strong{%s} " todo)) + (when priority (format "@emph{#%s} " priority)) + text + (when tags + (format " :%s:" + (mapconcat 'identity tags ":")))))) + (contents (if (org-string-nw-p contents) (concat "\n" contents) ""))) (cond ;; Case 1: This is a footnote section: ignore it. ((org-element-property :footnote-section-p headline) nil) ;; Case 2: This is the `copying' section: ignore it ;; This is used elsewhere. - ((org-element-property :COPYING headline) nil) + ((org-not-nil (org-element-property :COPYING headline)) nil) ;; Case 3: An index. If it matches one of the known indexes, ;; print it as such following the contents, otherwise ;; print the contents and leave the index up to the user. (index - (format - section-fmt full-text - (concat pre-blanks contents "\n" - (if (member index '("cp" "fn" "ky" "pg" "tp" "vr")) - (concat "@printindex " index))))) + (concat node + (format + section-fmt + full-text + (concat contents + (and (member index '("cp" "fn" "ky" "pg" "tp" "vr")) + (concat "\n@printindex " index)))))) ;; Case 4: This is a deep sub-tree: export it as a list item. ;; Also export as items headlines for which no section ;; format has been found. ((or (not section-fmt) (org-export-low-level-p headline info)) ;; Build the real contents of the sub-tree. - (let ((low-level-body - (concat - ;; If the headline is the first sibling, start a list. - (when (org-export-first-sibling-p headline info) - (format "@%s\n" (if numberedp 'enumerate 'itemize))) - ;; Itemize headline - "@item\n" full-text "\n" pre-blanks contents))) - ;; If headline is not the last sibling simply return - ;; LOW-LEVEL-BODY. Otherwise, also close the list, before any - ;; blank line. - (if (not (org-export-last-sibling-p headline info)) low-level-body - (replace-regexp-in-string - "[ \t\n]*\\'" - (format "\n@end %s" (if numberedp 'enumerate 'itemize)) - low-level-body)))) + (concat (and (org-export-first-sibling-p headline info) + (format "@%s\n" (if numberedp 'enumerate 'itemize))) + "@item\n" full-text "\n" + contents + (if (org-export-last-sibling-p headline info) + (format "@end %s" (if numberedp 'enumerate 'itemize)) + "\n"))) ;; Case 5: Standard headline. Export it as a section. - (t - (cond - ((not (and tags (eq (plist-get info :with-tags) 'not-in-toc))) - ;; Regular section. Use specified format string. - (format (replace-regexp-in-string "%]" "%%]" section-fmt) full-text - (concat pre-blanks contents))) - ((string-match "\\`@\\(.*?\\){" section-fmt) - ;; If tags should be removed from table of contents, insert - ;; title without tags as an alternative heading in sectioning - ;; command. - (format (replace-match (concat (match-string 1 section-fmt) "[%s]") - nil nil section-fmt 1) - ;; Replace square brackets with parenthesis since - ;; square brackets are not supported in optional - ;; arguments. - (replace-regexp-in-string - "\\[" "(" - (replace-regexp-in-string - "\\]" ")" - full-text-no-tag)) - full-text - (concat pre-blanks contents))) - (t - ;; Impossible to add an alternative heading. Fallback to - ;; regular sectioning format string. - (format (replace-regexp-in-string "%]" "%%]" section-fmt) full-text - (concat pre-blanks contents)))))))) - -;;; Inline Src Block + (t (concat node (format section-fmt full-text contents)))))) + +;;;; Inline Src Block (defun org-texinfo-inline-src-block (inline-src-block contents info) "Transcode an INLINE-SRC-BLOCK element from Org to Texinfo. @@ -1132,7 +845,7 @@ contextual information." (separator (org-texinfo--find-verb-separator code))) (concat "@verb{" separator code separator "}"))) -;;; Inlinetask +;;;; Inlinetask (defun org-texinfo-inlinetask (inlinetask contents info) "Transcode an INLINETASK element from Org to Texinfo. @@ -1165,7 +878,7 @@ holding contextual information." "\n") full-title contents))))) -;;; Italic +;;;; Italic (defun org-texinfo-italic (italic contents info) "Transcode ITALIC from Org to Texinfo. @@ -1173,18 +886,18 @@ CONTENTS is the text with italic markup. INFO is a plist holding contextual information." (org-texinfo--text-markup contents 'italic)) -;;; Item +;;;; Item (defun org-texinfo-item (item contents info) "Transcode an ITEM element from Org to Texinfo. CONTENTS holds the contents of the item. INFO is a plist holding contextual information." - (let* ((tag (org-element-property :tag item)) - (desc (org-export-data tag info))) - (concat "\n@item " (if tag desc) "\n" - (and contents (org-trim contents)) "\n"))) + (format "@item%s\n%s" + (let ((tag (org-element-property :tag item))) + (if tag (concat " " (org-export-data tag info)) "")) + (or contents ""))) -;;; Keyword +;;;; Keyword (defun org-texinfo-keyword (keyword contents info) "Transcode a KEYWORD element from Org to Texinfo. @@ -1200,14 +913,14 @@ CONTENTS is nil. INFO is a plist holding contextual information." ((string= key "TINDEX") (format "@tindex %s" value)) ((string= key "VINDEX") (format "@vindex %s" value))))) -;;; Line Break +;;;; Line Break (defun org-texinfo-line-break (line-break contents info) "Transcode a LINE-BREAK object from Org to Texinfo. CONTENTS is nil. INFO is a plist holding contextual information." "@*\n") -;;; Link +;;;; Link (defun org-texinfo-link (link desc info) "Transcode a LINK object from Org to Texinfo. @@ -1225,55 +938,69 @@ INFO is a plist holding contextual information. See ((and (string= type "file") (file-name-absolute-p raw-path)) (concat "file:" raw-path)) (t raw-path))) - (email (if (string= type "mailto") - (let ((text (replace-regexp-in-string - "@" "@@" raw-path))) - (concat text (if desc (concat "," desc)))))) protocol) (cond - ;; Links pointing to a headline: Find destination and build - ;; appropriate referencing command. - ((member type '("custom-id" "id")) - (let ((destination (org-export-resolve-id-link link info))) + ((equal type "radio") + (let ((destination (org-export-resolve-radio-link link info))) + (if (not destination) desc + (format "@ref{%s,,%s}" + (org-texinfo--get-node destination info) + desc)))) + ((member type '("custom-id" "id" "fuzzy")) + (let ((destination + (if (equal type "fuzzy") + (org-export-resolve-fuzzy-link link info) + (org-export-resolve-id-link link info)))) (case (org-element-type destination) + ((nil) + (format org-texinfo-link-with-unknown-path-format + (org-texinfo--sanitize-content path))) ;; Id link points to an external file. (plain-text (if desc (format "@uref{file://%s,%s}" destination desc) (format "@uref{file://%s}" destination))) - ;; LINK points to a headline. Use the headline as the NODE target (headline (format "@ref{%s,%s}" (org-texinfo--get-node destination info) - (or desc ""))) + (cond + (desc) + ((org-export-numbered-headline-p destination info) + (org-export-data + (org-element-property :title destination) info)) + (t + (mapconcat + #'number-to-string + (org-export-get-headline-number destination info) "."))))) (otherwise - (let ((path (org-export-solidify-link-text path))) - (if (not desc) (format "@ref{%s}" path) - (format "@ref{%s,,%s}" path desc))))))) - ((member type '("info")) + (let ((topic + (or desc + (if (and (eq (org-element-type destination) 'headline) + (not (org-export-numbered-headline-p + destination info))) + (org-export-data + (org-element-property :title destination) info)) + (let ((n (org-export-get-ordinal destination info))) + (cond + ((not n) nil) + ((integerp n) n) + (t (mapconcat #'number-to-string n "."))))))) + (when topic + (format "@ref{%s,,%s}" + (org-texinfo--get-node destination info) + topic))))))) + ((equal type "info") (let* ((info-path (split-string path "[:#]")) (info-manual (car info-path)) (info-node (or (cadr info-path) "top")) (title (or desc ""))) (format "@ref{%s,%s,,%s,}" info-node title info-manual))) - ((member type '("fuzzy")) - (let ((destination (org-export-resolve-fuzzy-link link info))) - (case (org-element-type destination) - ;; Id link points to an external file. - (plain-text - (if desc (format "@uref{file://%s,%s}" destination desc) - (format "@uref{file://%s}" destination))) - ;; LINK points to a headline. Use the headline as the NODE target - (headline - (format "@ref{%s,%s}" - (org-texinfo--get-node destination info) - (or desc ""))) - (otherwise - (let ((path (org-export-solidify-link-text path))) - (if (not desc) (format "@ref{%s}" path) - (format "@ref{%s,,%s}" path desc))))))) - ;; Special case for email addresses - (email - (format "@email{%s}" email)) + ((string= type "mailto") + (format "@email{%s}" + (concat (org-texinfo--sanitize-content path) + (and desc (concat "," desc))))) + ((let ((protocol (nth 2 (assoc type org-link-protocols)))) + (and (functionp protocol) + (funcall protocol (org-link-unescape path) desc 'texinfo)))) ;; External link with a description part. ((and path desc) (format "@uref{%s,%s}" path desc)) ;; External link without a description part. @@ -1282,27 +1009,97 @@ INFO is a plist holding contextual information. See (t (format org-texinfo-link-with-unknown-path-format desc))))) -;;; Menu - -(defun org-texinfo-make-menu (info level) - "Create the menu for inclusion in the texifo document. - -INFO is the parsed buffer that contains the headlines. LEVEL -determines whether to make the main menu, or the detailed menu. - -This is only used for generating the primary menu. In-Node menus -are generated directly." - (let ((parse (plist-get info :parse-tree))) - (cond - ;; Generate the main menu - ((eq level 'main) (org-texinfo--build-menu parse 1 info)) - ;; Generate the detailed (recursive) menu - ((eq level 'detailed) - ;; Requires recursion - ;;(org-texinfo--build-detailed-menu parse top info) - (org-texinfo--build-menu parse 1 info 'detailed))))) - -;;; Paragraph +;;;; Menu + +(defun org-texinfo-make-menu (scope info &optional master) + "Create the menu for inclusion in the Texinfo document. + +SCOPE is a headline or a full parse tree. INFO is the +communication channel, as a plist. + +When optional argument MASTER is non-nil, generate a master menu, +including detailed node listing." + (let ((menu (org-texinfo--build-menu scope info))) + (when (org-string-nw-p menu) + (org-element-normalize-string + (format + "@menu\n%s@end menu" + (concat menu + (when master + (let ((detailmenu + (org-texinfo--build-menu + scope info + (let ((toc-depth (plist-get info :with-toc))) + (if (wholenump toc-depth) toc-depth + org-texinfo-max-toc-depth))))) + (when (org-string-nw-p detailmenu) + (concat "\n@detailmenu\n" + "--- The Detailed Node Listing ---\n\n" + detailmenu + "@end detailmenu\n")))))))))) + +(defun org-texinfo--build-menu (scope info &optional level) + "Build menu for entries within SCOPE. +SCOPE is a headline or a full parse tree. INFO is a plist +containing contextual information. When optional argument LEVEL +is an integer, build the menu recursively, down to this depth." + (cond + ((not level) + (org-texinfo--format-entries (org-texinfo--menu-entries scope info) info)) + ((zerop level) nil) + (t + (org-element-normalize-string + (mapconcat + (lambda (h) + (let ((entries (org-texinfo--menu-entries h info))) + (when entries + (concat + (format "%s\n\n%s\n" + (org-export-data (org-export-get-alt-title h info) info) + (org-texinfo--format-entries entries info)) + (org-texinfo--build-menu h info (1- level)))))) + (org-texinfo--menu-entries scope info) ""))))) + +(defun org-texinfo--format-entries (entries info) + "Format all direct menu entries in SCOPE, as a string. +SCOPE is either a headline or a full Org document. INFO is +a plist containing contextual information." + (org-element-normalize-string + (mapconcat + (lambda (h) + (let* ((title (org-export-data + (org-export-get-alt-title h info) info)) + (node (org-texinfo--get-node h info)) + (entry (concat "* " title ":" + (if (string= title node) ":" + (concat " " node ". ")))) + (desc (org-element-property :DESCRIPTION h))) + (if (not desc) entry + (format (format "%%-%ds %%s" org-texinfo-node-description-column) + entry desc)))) + entries "\n"))) + +(defun org-texinfo--menu-entries (scope info) + "List direct children in SCOPE needing a menu entry. +SCOPE is a headline or a full parse tree. INFO is a plist +holding contextual information." + (let* ((cache (or (plist-get info :texinfo-entries-cache) + (plist-get (plist-put info :texinfo-entries-cache + (make-hash-table :test #'eq)) + :texinfo-entries-cache))) + (cached-entries (gethash scope cache 'no-cache))) + (if (not (eq cached-entries 'no-cache)) cached-entries + (puthash scope + (org-element-map (org-element-contents scope) 'headline + (lambda (h) + (and (not (org-not-nil (org-element-property :COPYING h))) + (not (org-element-property :footnote-section-p h)) + (not (org-export-low-level-p h info)) + h)) + info nil 'headline) + cache)))) + +;;;; Paragraph (defun org-texinfo-paragraph (paragraph contents info) "Transcode a PARAGRAPH element from Org to Texinfo. @@ -1310,32 +1107,27 @@ CONTENTS is the contents of the paragraph, as a string. INFO is the plist used as a communication channel." contents) -;;; Plain List +;;;; Plain List (defun org-texinfo-plain-list (plain-list contents info) "Transcode a PLAIN-LIST element from Org to Texinfo. CONTENTS is the contents of the list. INFO is a plist holding contextual information." (let* ((attr (org-export-read-attribute :attr_texinfo plain-list)) - (indic (or (plist-get attr :indic) - org-texinfo-def-table-markup)) - (type (org-element-property :type plain-list)) + (indic (or (plist-get attr :indic) org-texinfo-def-table-markup)) (table-type (plist-get attr :table-type)) - ;; Ensure valid texinfo table type. - (table-type (if (member table-type '("ftable" "vtable")) table-type - "table")) + (type (org-element-property :type plain-list)) (list-type (cond ((eq type 'ordered) "enumerate") ((eq type 'unordered) "itemize") - ((eq type 'descriptive) table-type)))) - (format "@%s%s\n@end %s" - (if (eq type 'descriptive) - (concat list-type " " indic) - list-type) + ((member table-type '("ftable" "vtable")) table-type) + (t "table")))) + (format "@%s\n%s@end %s" + (if (eq type 'descriptive) (concat list-type " " indic) list-type) contents list-type))) -;;; Plain Text +;;;; Plain Text (defun org-texinfo-plain-text (text info) "Transcode a TEXT string from Org to Texinfo. @@ -1366,7 +1158,7 @@ contextual information." ;; Return value. output)) -;;; Planning +;;;; Planning (defun org-texinfo-planning (planning contents info) "Transcode a PLANNING element from Org to Texinfo. @@ -1402,7 +1194,7 @@ information." " ") "@*")) -;;; Property Drawer +;;;; Property Drawer (defun org-texinfo-property-drawer (property-drawer contents info) "Transcode a PROPERTY-DRAWER element from Org to Texinfo. @@ -1412,7 +1204,7 @@ information." ;; lines nonetheless. "") -;;; Quote Block +;;;; Quote Block (defun org-texinfo-quote-block (quote-block contents info) "Transcode a QUOTE-BLOCK element from Org to Texinfo. @@ -1424,7 +1216,7 @@ holding contextual information." (format " %s" title))))) (format "%s\n%s@end quotation" start-quote contents))) -;;; Quote Section +;;;; Quote Section (defun org-texinfo-quote-section (quote-section contents info) "Transcode a QUOTE-SECTION element from Org to Texinfo. @@ -1433,7 +1225,7 @@ CONTENTS is nil. INFO is a plist holding contextual information." (org-element-property :value quote-section)))) (when value (format "@verbatim\n%s@end verbatim" value)))) -;;; Radio Target +;;;; Radio Target (defun org-texinfo-radio-target (radio-target text info) "Transcode a RADIO-TARGET object from Org to Texinfo. @@ -1444,15 +1236,17 @@ contextual information." (org-element-property :value radio-target)) text)) -;;; Section +;;;; Section (defun org-texinfo-section (section contents info) "Transcode a SECTION element from Org to Texinfo. CONTENTS holds the contents of the section. INFO is a plist holding contextual information." - contents) + (concat contents + (let ((parent (org-export-get-parent-headline section))) + (and parent (org-texinfo-make-menu parent info))))) -;;; Special Block +;;;; Special Block (defun org-texinfo-special-block (special-block contents info) "Transcode a SPECIAL-BLOCK element from Org to Texinfo. @@ -1460,34 +1254,26 @@ CONTENTS holds the contents of the block. INFO is a plist used as a communication channel." contents) -;;; Src Block +;;;; Src Block (defun org-texinfo-src-block (src-block contents info) "Transcode a SRC-BLOCK element from Org to Texinfo. CONTENTS holds the contents of the item. INFO is a plist holding contextual information." - (let* ((lang (org-element-property :language src-block)) - (lisp-p (string-match-p "lisp" lang)) - (src-contents (org-texinfo--sanitize-content - (org-export-format-code-default src-block info)))) - (cond - ;; Case 1. Lisp Block - (lisp-p - (format "@lisp\n%s@end lisp" - src-contents)) - ;; Case 2. Other blocks - (t - (format "@example\n%s@end example" - src-contents))))) + (let ((lispp (org-string-match-p "lisp" + (org-element-property :language src-block))) + (code (org-texinfo--sanitize-content + (org-export-format-code-default src-block info)))) + (format (if lispp "@lisp\n%s@end lisp" "@example\n%s@end example") code))) -;;; Statistics Cookie +;;;; Statistics Cookie (defun org-texinfo-statistics-cookie (statistics-cookie contents info) "Transcode a STATISTICS-COOKIE object from Org to Texinfo. CONTENTS is nil. INFO is a plist holding contextual information." (org-element-property :value statistics-cookie)) -;;; Subscript +;;;; Subscript (defun org-texinfo-subscript (subscript contents info) "Transcode a SUBSCRIPT object from Org to Texinfo. @@ -1495,7 +1281,7 @@ CONTENTS is the contents of the object. INFO is a plist holding contextual information." (format "@math{_%s}" contents)) -;;; Superscript +;;;; Superscript (defun org-texinfo-superscript (superscript contents info) "Transcode a SUPERSCRIPT object from Org to Texinfo. @@ -1503,96 +1289,47 @@ CONTENTS is the contents of the object. INFO is a plist holding contextual information." (format "@math{^%s}" contents)) -;;; Table -;; -;; `org-texinfo-table' is the entry point for table transcoding. It -;; takes care of tables with a "verbatim" attribute. Otherwise, it -;; delegates the job to either `org-texinfo-table--table.el-table' or -;; `org-texinfo-table--org-table' functions, depending of the type of -;; the table. -;; -;; `org-texinfo-table--align-string' is a subroutine used to build -;; alignment string for Org tables. +;;;; Table (defun org-texinfo-table (table contents info) "Transcode a TABLE element from Org to Texinfo. CONTENTS is the contents of the table. INFO is a plist holding contextual information." - (cond - ;; Case 1: verbatim table. - ((or org-texinfo-tables-verbatim - (let ((attr (mapconcat 'identity - (org-element-property :attr_latex table) - " "))) - (and attr (string-match "\\<verbatim\\>" attr)))) - (format "@verbatim \n%s\n@end verbatim" - ;; Re-create table, without affiliated keywords. - (org-trim - (org-element-interpret-data - `(table nil ,@(org-element-contents table)))))) - ;; Case 2: table.el table. Convert it using appropriate tools. - ((eq (org-element-property :type table) 'table.el) - (org-texinfo-table--table.el-table table contents info)) - ;; Case 3: Standard table. - (t (org-texinfo-table--org-table table contents info)))) + (if (eq (org-element-property :type table) 'table.el) + (format "@verbatim\n%s@end verbatim" + (org-element-normalize-string + (org-element-property :value table))) + (let* ((col-width (org-export-read-attribute :attr_texinfo table :columns)) + (columns + (if col-width (format "@columnfractions %s" col-width) + (org-texinfo-table-column-widths table info)))) + (format "@multitable %s\n%s@end multitable" + columns + contents)))) (defun org-texinfo-table-column-widths (table info) "Determine the largest table cell in each column to process alignment. - TABLE is the table element to transcode. INFO is a plist used as a communication channel." - (let* ((rows (org-element-map table 'table-row 'identity info)) - (collected (loop for row in rows collect - (org-element-map row 'table-cell 'identity info))) - (number-cells (length (car collected))) - cells counts) - (loop for row in collected do - (push (mapcar (lambda (ref) - (let* ((start (org-element-property :contents-begin ref)) - (end (org-element-property :contents-end ref)) - (length (- end start))) - length)) row) cells)) - (setq cells (org-remove-if 'null cells)) - (push (loop for count from 0 to (- number-cells 1) collect - (loop for item in cells collect - (nth count item))) counts) - (mapconcat (lambda (size) - (make-string size ?a)) (mapcar (lambda (ref) - (apply 'max `(,@ref))) (car counts)) - "} {"))) - -(defun org-texinfo-table--org-table (table contents info) - "Return appropriate Texinfo code for an Org table. - -TABLE is the table type element to transcode. CONTENTS is its -contents, as a string. INFO is a plist used as a communication -channel. - -This function assumes TABLE has `org' as its `:type' attribute." - (let* ((attr (org-export-read-attribute :attr_texinfo table)) - (col-width (plist-get attr :columns)) - (columns (if col-width - (format "@columnfractions %s" - col-width) - (format "{%s}" - (org-texinfo-table-column-widths - table info))))) - ;; Prepare the final format string for the table. - (cond - ;; Longtable. - ;; Others. - (t (concat - (format "@multitable %s\n%s@end multitable" - columns - contents)))))) - -(defun org-texinfo-table--table.el-table (table contents info) - "Returns nothing. - -Rather than return an invalid table, nothing is returned." - 'nil) - -;;; Table Cell + (let ((widths (make-vector (cdr (org-export-table-dimensions table info)) 0))) + (org-element-map table 'table-row + (lambda (row) + (let ((idx 0)) + (org-element-map row 'table-cell + (lambda (cell) + ;; Length of the cell in the original buffer is only an + ;; approximation of the length of the cell in the + ;; output. It can sometimes fail (e.g. it considers + ;; "/a/" being larger than "ab"). + (let ((w (- (org-element-property :contents-end cell) + (org-element-property :contents-begin cell)))) + (aset widths idx (max w (aref widths idx)))) + (incf idx)) + info))) + info) + (format "{%s}" (mapconcat (lambda (w) (make-string w ?a)) widths "} {")))) + +;;;; Table Cell (defun org-texinfo-table-cell (table-cell contents info) "Transcode a TABLE-CELL element from Org to Texinfo. @@ -1609,7 +1346,7 @@ a communication channel." contents) (when (org-export-get-next-element table-cell info) "\n@tab "))) -;;; Table Row +;;;; Table Row (defun org-texinfo-table-row (table-row contents info) "Transcode a TABLE-ROW element from Org to Texinfo. @@ -1618,21 +1355,15 @@ a communication channel." ;; Rules are ignored since table separators are deduced from ;; borders of the current row. (when (eq (org-element-property :type table-row) 'standard) - (let ((rowgroup-tag - (cond - ;; Case 1: Belongs to second or subsequent rowgroup. - ((not (= 1 (org-export-table-row-group table-row info))) - "@item ") - ;; Case 2: Row is from first rowgroup. Table has >=1 rowgroups. - ((org-export-table-has-header-p - (org-export-get-parent-table table-row) info) - "@headitem ") - ;; Case 3: Row is from first and only row group. - (t "@item ")))) - (when (eq (org-element-property :type table-row) 'standard) - (concat rowgroup-tag contents "\n"))))) - -;;; Target + (let ((rowgroup-tag + (if (and (= 1 (org-export-table-row-group table-row info)) + (org-export-table-has-header-p + (org-export-get-parent-table table-row) info)) + "@headitem " + "@item "))) + (concat rowgroup-tag contents "\n")))) + +;;;; Target (defun org-texinfo-target (target contents info) "Transcode a TARGET object from Org to Texinfo. @@ -1641,7 +1372,7 @@ information." (format "@anchor{%s}" (org-export-solidify-link-text (org-element-property :value target)))) -;;; Timestamp +;;;; Timestamp (defun org-texinfo-timestamp (timestamp contents info) "Transcode a TIMESTAMP object from Org to Texinfo. @@ -1656,7 +1387,7 @@ information." (format org-texinfo-inactive-timestamp-format value)) (t (format org-texinfo-diary-timestamp-format value))))) -;;; Verbatim +;;;; Verbatim (defun org-texinfo-verbatim (verbatim contents info) "Transcode a VERBATIM object from Org to Texinfo. @@ -1664,26 +1395,13 @@ CONTENTS is nil. INFO is a plist used as a communication channel." (org-texinfo--text-markup (org-element-property :value verbatim) 'verbatim)) -;;; Verse Block +;;;; Verse Block (defun org-texinfo-verse-block (verse-block contents info) "Transcode a VERSE-BLOCK element from Org to Texinfo. CONTENTS is verse block contents. INFO is a plist holding contextual information." - ;; In a verse environment, add a line break to each newline - ;; character and change each white space at beginning of a line - ;; into a space of 1 em. Also change each blank line with - ;; a vertical space of 1 em. - (progn - (setq contents (replace-regexp-in-string - "^ *\\\\\\\\$" "\\\\vspace*{1em}" - (replace-regexp-in-string - "\\(\\\\\\\\\\)?[ \t]*\n" " \\\\\\\\\n" contents))) - (while (string-match "^[ \t]+" contents) - (let ((new-str (format "\\hspace*{%dem}" - (length (match-string 0 contents))))) - (setq contents (replace-match new-str nil t contents)))) - (format "\\begin{verse}\n%s\\end{verse}" contents))) + (format "@display\n%s@end display" contents)) ;;; Interactive functions @@ -1797,29 +1515,21 @@ Return INFO file name or an error if it couldn't be produced." errors) (message (format "Processing Texinfo file %s..." file)) (save-window-excursion - (cond - ;; A function is provided: Apply it. - ((functionp org-texinfo-info-process) - (funcall org-texinfo-info-process (shell-quote-argument file))) - ;; A list is provided: Replace %b, %f and %o with appropriate - ;; values in each command before applying it. Output is - ;; redirected to "*Org INFO Texinfo Output*" buffer. - ((consp org-texinfo-info-process) - (let ((outbuf (get-buffer-create "*Org INFO Texinfo Output*"))) - (mapc - (lambda (command) - (shell-command - (replace-regexp-in-string - "%b" (shell-quote-argument base-name) - (replace-regexp-in-string - "%f" (shell-quote-argument full-name) - (replace-regexp-in-string - "%o" (shell-quote-argument out-dir) command t t) t t) t t) - outbuf)) - org-texinfo-info-process) - ;; Collect standard errors from output buffer. - (setq errors (org-texinfo-collect-errors outbuf)))) - (t (error "No valid command to process to Info"))) + ;; Replace %b, %f and %o with appropriate values in each command + ;; before applying it. Output is redirected to "*Org INFO + ;; Texinfo Output*" buffer. + (let ((outbuf (get-buffer-create "*Org INFO Texinfo Output*"))) + (dolist (command org-texinfo-info-process) + (shell-command + (replace-regexp-in-string + "%b" (shell-quote-argument base-name) + (replace-regexp-in-string + "%f" (shell-quote-argument full-name) + (replace-regexp-in-string + "%o" (shell-quote-argument out-dir) command t t) t t) t t) + outbuf)) + ;; Collect standard errors from output buffer. + (setq errors (org-texinfo-collect-errors outbuf))) (let ((infofile (concat out-dir base-name ".info"))) ;; Check for process failure. Provide collected errors if ;; possible. diff --git a/lisp/org/ox.el b/lisp/org/ox.el index faa2e0541b4..1327ae409ed 100644 --- a/lisp/org/ox.el +++ b/lisp/org/ox.el @@ -814,7 +814,7 @@ This variable can be either set to `buffer' or `subtree'." (defcustom org-export-show-temporary-export-buffer t "Non-nil means show buffer after exporting to temp buffer. -When Org exports to a file, the buffer visiting that file is ever +When Org exports to a file, the buffer visiting that file is never shown, but remains buried. However, when exporting to a temporary buffer, that buffer is popped up in a second window. When this variable is nil, the buffer remains buried also in @@ -1317,6 +1317,10 @@ The back-end could then be called with, for example: ;; - category :: tree ;; - type :: list of elements and objects ;; +;; + `:input-buffer' :: Name of input buffer. +;; - category :: option +;; - type :: string +;; ;; + `:input-file' :: Full path to input file, if any. ;; - category :: option ;; - type :: string or nil @@ -1329,6 +1333,10 @@ The back-end could then be called with, for example: ;; - category :: option ;; - type :: string ;; +;; + `:output-file' :: Full path to output file, if any. +;; - category :: option +;; - type :: string or nil +;; ;; + `:parse-tree' :: Whole parse tree, available at any time during ;; transcoding. ;; - category :: option @@ -1765,17 +1773,19 @@ Assume buffer is in Org mode. Narrowing, if any, is ignored." (when (stringp value) (setq plist (plist-put plist property - (org-element-parse-secondary-string - value (org-element-restriction 'keyword)))))))))) + (or (org-element-parse-secondary-string + value (org-element-restriction 'keyword)) + ;; When TITLE keyword sets an empty + ;; string, make sure it doesn't + ;; appear as nil in the plist. + (and (eq property :title) "")))))))))) (defun org-export--get-buffer-attributes () "Return properties related to buffer attributes, as a plist." ;; Store full path of input file name, or nil. For internal use. (let ((visited-file (buffer-file-name (buffer-base-buffer)))) (list :input-file visited-file - :title (if (not visited-file) (buffer-name (buffer-base-buffer)) - (file-name-sans-extension - (file-name-nondirectory visited-file)))))) + :input-buffer (buffer-name (buffer-base-buffer))))) (defun org-export--get-global-options (&optional backend) "Return global export options as a plist. @@ -1788,23 +1798,22 @@ process." (all (append (and backend (org-export-get-all-options backend)) org-export-options-alist))) (dolist (cell all plist) - (let ((prop (car cell)) - (default-value (nth 3 cell))) - (unless (or (not default-value) (plist-member plist prop)) + (let ((prop (car cell))) + (unless (plist-member plist prop) (setq plist (plist-put plist prop - ;; Eval default value provided. If keyword is + ;; Evaluate default value provided. If keyword is ;; a member of `org-element-document-properties', ;; parse it as a secondary string before storing it. (let ((value (eval (nth 3 cell)))) - (if (not (stringp value)) value - (let ((keyword (nth 1 cell))) - (if (member keyword org-element-document-properties) - (org-element-parse-secondary-string - value (org-element-restriction 'keyword)) - value))))))))))) + (if (and (stringp value) + (member (nth 1 cell) + org-element-document-properties)) + (org-element-parse-secondary-string + value (org-element-restriction 'keyword)) + value))))))))) (defun org-export--list-bound-variables () "Return variables bound from BIND keywords in current buffer. @@ -1843,6 +1852,13 @@ an alist where associations are (VARIABLE-NAME VALUE)." ;; Return value in appropriate order of appearance. (nreverse (funcall collect-bind nil nil))))) +;; defsubst org-export-get-parent must be defined before first use, +;; was originally defined in the topology section + +(defsubst org-export-get-parent (blob) + "Return BLOB parent or nil. +BLOB is the element or object considered." + (org-element-property :parent blob)) ;;;; Tree Properties ;; @@ -2146,9 +2162,8 @@ INFO is a plist containing export directives." DATA is a parse tree, an element or an object or a secondary string. INFO is a plist holding export options. -Return transcoded string." - (let ((memo (gethash data (plist-get info :exported-data) 'no-memo))) - (if (not (eq memo 'no-memo)) memo +Return a string." + (or (gethash data (plist-get info :exported-data)) (let* ((type (org-element-type data)) (results (cond @@ -2174,9 +2189,9 @@ Return transcoded string." ;; Secondary string. ((not type) (mapconcat (lambda (obj) (org-export-data obj info)) data "")) - ;; Element/Object without contents or, as a special case, - ;; headline with archive tag and archived trees restricted - ;; to title only. + ;; Element/Object without contents or, as a special + ;; case, headline with archive tag and archived trees + ;; restricted to title only. ((or (not (org-element-contents data)) (and (eq type 'headline) (eq (plist-get info :with-archived-trees) 'headline) @@ -2201,16 +2216,16 @@ Return transcoded string." (lambda (element) (org-export-data element info)) (org-element-contents (if (or greaterp objectp) data - ;; Elements directly containing objects - ;; must have their indentation normalized - ;; first. + ;; Elements directly containing + ;; objects must have their indentation + ;; normalized first. (org-element-normalize-contents data - ;; When normalizing contents of the first - ;; paragraph in an item or a footnote - ;; definition, ignore first line's - ;; indentation: there is none and it - ;; might be misleading. + ;; When normalizing contents of the + ;; first paragraph in an item or + ;; a footnote definition, ignore + ;; first line's indentation: there is + ;; none and it might be misleading. (when (eq type 'paragraph) (let ((parent (org-export-get-parent data))) (and @@ -2227,10 +2242,10 @@ Return transcoded string." (puthash data (cond - ((not results) nil) + ((not results) "") ((memq type '(org-data plain-text nil)) results) - ;; Append the same white space between elements or objects as in - ;; the original buffer, and call appropriate filters. + ;; Append the same white space between elements or objects + ;; as in the original buffer, and call appropriate filters. (t (let ((results (org-export-filter-apply-functions @@ -2240,10 +2255,10 @@ Return transcoded string." (if (memq type org-element-all-elements) (concat (org-element-normalize-string results) (make-string post-blank ?\n)) - (concat results (make-string post-blank ? )))) + (concat results (make-string post-blank ?\s)))) info))) results))) - (plist-get info :exported-data)))))) + (plist-get info :exported-data))))) (defun org-export-data-with-backend (data backend info) "Convert DATA into BACKEND format. @@ -3011,6 +3026,14 @@ Return code as a string." (org-export-install-filters (org-combine-plists info (org-export-get-environment backend subtreep ext-plist)))) + ;; Special case: provide original file name or buffer name as + ;; default value for :title property. + (unless (plist-get info :title) + (plist-put + info :title + (let ((file (plist-get info :input-file))) + (if file (file-name-sans-extension (file-name-nondirectory file)) + (plist-get info :input-buffer))))) ;; Expand export-specific set of macros: {{{author}}}, ;; {{{date}}}, {{{email}}} and {{{title}}}. It must be done ;; once regular macros have been expanded, since document @@ -5106,11 +5129,7 @@ Return the new string." ;; `org-export-get-genealogy' returns the full genealogy of a given ;; element or object, from closest parent to full parse tree. -(defsubst org-export-get-parent (blob) - "Return BLOB parent or nil. -BLOB is the element or object considered." - (org-element-property :parent blob)) - +;; defsubst org-export-get-parent must be defined before first use (defun org-export-get-genealogy (blob) "Return full genealogy relative to a given element or object. @@ -5460,8 +5479,9 @@ to `:default' encoding. If it fails, return S." (defmacro org-export-async-start (fun &rest body) "Call function FUN on the results returned by BODY evaluation. -BODY evaluation happens in an asynchronous process, from a buffer -which is an exact copy of the current one. +FUN is an anonymous function of one argument. BODY evaluation +happens in an asynchronous process, from a buffer which is an +exact copy of the current one. Use `org-export-add-to-stack' in FUN in order to register results in the stack. @@ -5638,7 +5658,8 @@ The function returns either a file name returned by POST-PROCESS, or FILE." (declare (indent 2)) (if (not (file-writable-p file)) (error "Output file not writable") - (let ((encoding (or org-export-coding-system buffer-file-coding-system))) + (let ((ext-plist (org-combine-plists `(:output-file ,file) ext-plist)) + (encoding (or org-export-coding-system buffer-file-coding-system))) (if async (org-export-async-start `(lambda (file) diff --git a/lisp/printing.el b/lisp/printing.el index 39da132d64e..101c8e2a8e7 100644 --- a/lisp/printing.el +++ b/lisp/printing.el @@ -3172,7 +3172,7 @@ See `pr-ps-printer-alist'.") (defmacro pr-save-file-modes (&rest body) "Execute BODY with file permissions temporarily set to `pr-file-modes'." - (declare (obsolete with-file-modes "24.5")) + (declare (obsolete with-file-modes "25.1")) `(with-file-modes pr-file-modes ,@body)) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; diff --git a/lisp/progmodes/bat-mode.el b/lisp/progmodes/bat-mode.el index e328cfa0d8b..266c24adcca 100644 --- a/lisp/progmodes/bat-mode.el +++ b/lisp/progmodes/bat-mode.el @@ -78,11 +78,11 @@ "goto" "gtr" "if" "in" "leq" "lss" "neq" "not" "start")) (UNIX '("bash" "cat" "cp" "fgrep" "grep" "ls" "sed" "sh" "mv" "rm"))) - `(("\\<_\\(call\\|goto\\)\\_>[ \t]+%?\\([A-Za-z0-9-_\\:.]+\\)%?" + `(("\\_<\\(call\\|goto\\)\\_>[ \t]+%?\\([A-Za-z0-9-_\\:.]+\\)%?" (2 font-lock-constant-face t)) ("^:[^:].*" . 'bat-label-face) - ("\\<_\\(defined\\|set\\)\\_>[ \t]*\\(\\w+\\)" + ("\\_<\\(defined\\|set\\)\\_>[ \t]*\\(\\w+\\)" (2 font-lock-variable-name-face)) ("%\\(\\w+\\)%?" (1 font-lock-variable-name-face)) diff --git a/lisp/progmodes/cc-awk.el b/lisp/progmodes/cc-awk.el index 44d69d7d0f1..d57d601cd7a 100644 --- a/lisp/progmodes/cc-awk.el +++ b/lisp/progmodes/cc-awk.el @@ -61,7 +61,6 @@ (cc-bytecomp-defun c-backward-token-1) (cc-bytecomp-defun c-beginning-of-statement-1) (cc-bytecomp-defun c-backward-sws) -(cc-bytecomp-defun c-forward-sws) (defvar awk-mode-syntax-table (let ((st (make-syntax-table))) diff --git a/lisp/progmodes/cc-cmds.el b/lisp/progmodes/cc-cmds.el index 4f205d62a4c..afbd577b10d 100644 --- a/lisp/progmodes/cc-cmds.el +++ b/lisp/progmodes/cc-cmds.el @@ -1090,7 +1090,7 @@ numeric argument is supplied, or the point is inside a literal." (interactive "*P") (let ((c-echo-syntactic-information-p nil) - final-pos close-paren-inserted found-delim case-fold-search) + final-pos found-delim case-fold-search) (self-insert-command (prefix-numeric-value arg)) (setq final-pos (point)) diff --git a/lisp/progmodes/cc-defs.el b/lisp/progmodes/cc-defs.el index d6134a510b2..dc31fde131d 100644 --- a/lisp/progmodes/cc-defs.el +++ b/lisp/progmodes/cc-defs.el @@ -86,6 +86,11 @@ font-lock-keywords))) (cc-load "cc-fix"))) +;; XEmacs 21.4 doesn't have `delete-dups'. +(eval-and-compile + (if (and (not (fboundp 'delete-dups)) + (not (featurep 'cc-fix))) + (cc-load "cc-fix"))) ;;; Variables also used at compile time. @@ -913,6 +918,12 @@ MODE is either a mode symbol or a list of mode symbols." (cc-bytecomp-fboundp 'delete-extent) (cc-bytecomp-fboundp 'map-extents)))) +(defconst c-<-as-paren-syntax '(4 . ?>)) +(put 'c-<-as-paren-syntax 'syntax-table c-<-as-paren-syntax) + +(defconst c->-as-paren-syntax '(5 . ?<)) +(put 'c->-as-paren-syntax 'syntax-table c->-as-paren-syntax) + ;; `c-put-char-property' is complex enough in XEmacs and Emacs < 21 to ;; make it a function. (defalias 'c-put-char-property-fun @@ -1188,9 +1199,6 @@ been put there by c-put-char-property. POINT remains unchanged." (if (< (point) start) (goto-char (point-max))))) -(defconst c-<-as-paren-syntax '(4 . ?>)) -(put 'c-<-as-paren-syntax 'syntax-table c-<-as-paren-syntax) - (defsubst c-mark-<-as-paren (pos) ;; Mark the "<" character at POS as a template opener using the ;; `syntax-table' property via the `category' property. @@ -1201,9 +1209,6 @@ been put there by c-put-char-property. POINT remains unchanged." ;; cheaply. We use this, for instance, in `c-parse-state'. (c-put-char-property pos 'category 'c-<-as-paren-syntax)) -(defconst c->-as-paren-syntax '(5 . ?<)) -(put 'c->-as-paren-syntax 'syntax-table c->-as-paren-syntax) - (defsubst c-mark->-as-paren (pos) ;; Mark the ">" character at POS as an sexp list closer using the ;; syntax-table property. @@ -1419,8 +1424,8 @@ Notably, null elements in LIST are ignored." (defun c-make-keywords-re (adorn list &optional mode) "Make a regexp that matches all the strings the list. -Duplicates and nil elements in the list are removed. The resulting -regexp may contain zero or more submatch expressions. +Duplicates and nil elements in the list are removed. The +resulting regexp may contain zero or more submatch expressions. If ADORN is t there will be at least one submatch and the first surrounds the matched alternative, and the regexp will also not match @@ -1438,11 +1443,7 @@ The optional MODE specifies the language to get `c-nonsymbol-key' from when it's needed. The default is the current language taken from `c-buffer-is-cc-mode'." - (let (unique) - (dolist (elt list) - (unless (member elt unique) - (push elt unique))) - (setq list (delete nil unique))) + (setq list (delete nil (delete-dups list))) (if list (let (re) @@ -1556,6 +1557,8 @@ non-nil, a caret is prepended to invert the set." (cc-bytecomp-defvar open-paren-in-column-0-is-defun-start) +(defvar lookup-syntax-properties) ;XEmacs. + (defconst c-emacs-features (let (list) @@ -1636,13 +1639,13 @@ non-nil, a caret is prepended to invert the set." "support for the `syntax-table' text property " "is required."))) - ;; Find out if generic comment delimiters work. + ;; Find out if "\\s!" (generic comment delimiters) work. (c-safe (modify-syntax-entry ?x "!") (if (string-match "\\s!" "x") (setq list (cons 'gen-comment-delim list)))) - ;; Find out if generic string delimiters work. + ;; Find out if "\\s|" (generic string delimiters) work. (c-safe (modify-syntax-entry ?x "|") (if (string-match "\\s|" "x") @@ -1689,7 +1692,8 @@ non-nil, a caret is prepended to invert the set." (kill-buffer buf)) ;; See if `parse-partial-sexp' returns the eighth element. - (if (c-safe (>= (length (save-excursion (parse-partial-sexp (point) (point)))) + (if (c-safe (>= (length (save-excursion + (parse-partial-sexp (point) (point)))) 10)) (setq list (cons 'pps-extended-state list)) (error (concat @@ -1705,9 +1709,8 @@ might be present: '8-bit 8 bit syntax entry flags (XEmacs style). '1-bit 1 bit syntax entry flags (Emacs style). -'argumentative-bod-function beginning-of-defun passes ARG through - to a non-null beginning-of-defun-function. It is assumed - the end-of-defun does the same thing. +'argumentative-bod-function beginning-of-defun and end-of-defun pass + ARG through to beginning/end-of-defun-function. 'syntax-properties It works to override the syntax for specific characters in the buffer with the 'syntax-table property. It's always set - CC Mode no longer works in emacsen without @@ -1802,11 +1805,11 @@ system." (put mode 'c-fallback-mode base-mode)) (defvar c-lang-constants (make-vector 151 0)) -;; This obarray is a cache to keep track of the language constants -;; defined by `c-lang-defconst' and the evaluated values returned by -;; `c-lang-const'. It's mostly used at compile time but it's not +;; Obarray used as a cache to keep track of the language constants. +;; The constants stored are those defined by `c-lang-defconst' and the values +;; computed by `c-lang-const'. It's mostly used at compile time but it's not ;; stored in compiled files. -;; + ;; The obarray contains all the language constants as symbols. The ;; value cells hold the evaluated values as alists where each car is ;; the mode name symbol and the corresponding cdr is the evaluated @@ -1829,7 +1832,9 @@ system." (t ;; Being evaluated interactively. (buffer-file-name))))) - (and file (file-name-base file)))) + (and file + (file-name-sans-extension + (file-name-nondirectory file))))) (defmacro c-lang-defconst-eval-immediately (form) "Can be used inside a VAL in `c-lang-defconst' to evaluate FORM @@ -1897,7 +1902,7 @@ constant. A file is identified by its base name." pre-files) (or (symbolp name) - (error "Not a symbol: %s" name)) + (error "Not a symbol: %S" name)) (when (stringp (car-safe args)) ;; The docstring is hardly used anywhere since there's no normal @@ -1907,7 +1912,7 @@ constant. A file is identified by its base name." (setq args (cdr args))) (or args - (error "No assignments in `c-lang-defconst' for %s" name)) + (error "No assignments in `c-lang-defconst' for %S" name)) ;; Rework ARGS to an association list to make it easier to handle. ;; It's reversed at the same time to make it easier to implement @@ -1921,17 +1926,17 @@ constant. A file is identified by its base name." ((listp (car args)) (mapcar (lambda (lang) (or (symbolp lang) - (error "Not a list of symbols: %s" + (error "Not a list of symbols: %S" (car args))) (intern (concat (symbol-name lang) "-mode"))) (car args))) - (t (error "Not a symbol or a list of symbols: %s" + (t (error "Not a symbol or a list of symbols: %S" (car args))))) val) (or (cdr args) - (error "No value for %s" (car args))) + (error "No value for %S" (car args))) (setq args (cdr args) val (car args)) @@ -1945,7 +1950,7 @@ constant. A file is identified by its base name." ;; dependencies on the `c-lang-const's in VAL.) (setq val (macroexpand-all val)) - (setq bindings (cons (cons assigned-mode val) bindings) + (setq bindings `(cons (cons ',assigned-mode (lambda () ,val)) ,bindings) args (cdr args)))) ;; Compile in the other files that have provided source @@ -1957,7 +1962,7 @@ constant. A file is identified by its base name." (mapcar 'car (get sym 'source)))) `(eval-and-compile - (c-define-lang-constant ',name ',bindings + (c-define-lang-constant ',name ,bindings ,@(and pre-files `(',pre-files)))))) (put 'c-lang-defconst 'lisp-indent-function 1) @@ -2022,19 +2027,16 @@ language. NAME and LANG are not evaluated so they should not be quoted." (or (symbolp name) - (error "Not a symbol: %s" name)) + (error "Not a symbol: %S" name)) (or (symbolp lang) - (error "Not a symbol: %s" lang)) + (error "Not a symbol: %S" lang)) (let ((sym (intern (symbol-name name) c-lang-constants)) - mode source-files args) + (mode (when lang (intern (concat (symbol-name lang) "-mode"))))) - (when lang - (setq mode (intern (concat (symbol-name lang) "-mode"))) - (unless (get mode 'c-mode-prefix) - (error - "Unknown language %S since it got no `c-mode-prefix' property" - (symbol-name lang)))) + (or (get mode 'c-mode-prefix) (null mode) + (error "Unknown language %S: no `c-mode-prefix' property" + lang)) (if (eq c-lang-const-expansion 'immediate) ;; No need to find out the source file(s) when we evaluate @@ -2042,49 +2044,56 @@ quoted." ;; `source' property. `',(c-get-lang-constant name nil mode) - (let ((file (c-get-current-file))) - (if file (setq file (intern file))) - ;; Get the source file(s) that must be loaded to get the value - ;; of the constant. If the symbol isn't defined yet we assume - ;; that its definition will come later in this file, and thus - ;; are no file dependencies needed. - (setq source-files (nreverse - ;; Reverse to get the right load order. - (apply 'nconc - (mapcar (lambda (elem) - (if (eq file (car elem)) - nil ; Exclude our own file. - (list (car elem)))) - (get sym 'source)))))) - - ;; Make some effort to do a compact call to - ;; `c-get-lang-constant' since it will be compiled in. - (setq args (and mode `(',mode))) - (if (or source-files args) - (setq args (cons (and source-files `',source-files) - args))) - - (if (or (eq c-lang-const-expansion 'call) - (and (not c-lang-const-expansion) - (not mode)) - load-in-progress - (not (boundp 'byte-compile-dest-file)) - (not (stringp byte-compile-dest-file))) - ;; Either a straight call is requested in the context, or - ;; we're in an "uncontrolled" context and got no language, - ;; or we're not being byte compiled so the compile time - ;; stuff below is unnecessary. - `(c-get-lang-constant ',name ,@args) - - ;; Being compiled. If the loading and compiling version is - ;; the same we use a value that is evaluated at compile time, - ;; otherwise it's evaluated at runtime. - `(if (eq c-version-sym ',c-version-sym) - (cc-eval-when-compile - (c-get-lang-constant ',name ,@args)) - (c-get-lang-constant ',name ,@args)))))) - -(defvar c-lang-constants-under-evaluation nil) + (let ((source-files + (let ((file (c-get-current-file))) + (if file (setq file (intern file))) + ;; Get the source file(s) that must be loaded to get the value + ;; of the constant. If the symbol isn't defined yet we assume + ;; that its definition will come later in this file, and thus + ;; are no file dependencies needed. + (nreverse + ;; Reverse to get the right load order. + (apply 'nconc + (mapcar (lambda (elem) + (if (eq file (car elem)) + nil ; Exclude our own file. + (list (car elem)))) + (get sym 'source)))))) + ;; Make some effort to do a compact call to + ;; `c-get-lang-constant' since it will be compiled in. + (args (and mode `(',mode)))) + + (if (or source-files args) + (push (and source-files `',source-files) args)) + + (if (or (eq c-lang-const-expansion 'call) + (and (not c-lang-const-expansion) + (not mode)) + load-in-progress + (not (boundp 'byte-compile-dest-file)) + (not (stringp byte-compile-dest-file))) + ;; Either a straight call is requested in the context, or + ;; we're in an "uncontrolled" context and got no language, + ;; or we're not being byte compiled so the compile time + ;; stuff below is unnecessary. + `(c-get-lang-constant ',name ,@args) + + ;; Being compiled. If the loading and compiling version is + ;; the same we use a value that is evaluated at compile time, + ;; otherwise it's evaluated at runtime. + `(if (eq c-version-sym ',c-version-sym) + (cc-eval-when-compile + (c-get-lang-constant ',name ,@args)) + (c-get-lang-constant ',name ,@args))))))) + +(defvar c-lang-constants-under-evaluation nil + "Alist of constants in the process of being evaluated. +The `cdr' of each entry indicates how far we've looked in the list +of definitions, so that the def for var FOO in c-mode can be defined in +terms of the def for that same var FOO (which will then rely on the +fallback definition for all modes, to break the cycle).") + +(defconst c-lang--novalue "novalue") (defun c-get-lang-constant (name &optional source-files mode) ;; Used by `c-lang-const'. @@ -2150,7 +2159,7 @@ quoted." ;; mode might have an explicit entry before that. (eq (setq value (c-find-assignment-for-mode (cdr source-pos) mode nil name)) - c-lang-constants) + c-lang--novalue) ;; Try again with the fallback mode from the ;; original position. Note that ;; `c-buffer-is-cc-mode' still is the real mode if @@ -2158,22 +2167,22 @@ quoted." (eq (setq value (c-find-assignment-for-mode (setcdr source-pos backup-source-pos) fallback t name)) - c-lang-constants))) + c-lang--novalue))) ;; A simple lookup with no fallback mode. (eq (setq value (c-find-assignment-for-mode (cdr source-pos) mode t name)) - c-lang-constants)) + c-lang--novalue)) (error - "`%s' got no (prior) value in %s (might be a cyclic reference)" + "`%s' got no (prior) value in %S (might be a cyclic reference)" name mode)) (condition-case err - (setq value (eval value)) + (setq value (funcall value)) (error ;; Print a message to aid in locating the error. We don't ;; print the error itself since that will be done later by ;; some caller higher up. - (message "Eval error in the `c-lang-defconst' for `%s' in %s:" + (message "Eval error in the `c-lang-defconst' for `%S' in %s:" sym mode) (makunbound sym) (signal (car err) (cdr err)))) @@ -2181,13 +2190,13 @@ quoted." (set sym (cons (cons mode value) (symbol-value sym))) value)))) -(defun c-find-assignment-for-mode (source-pos mode match-any-lang name) +(defun c-find-assignment-for-mode (source-pos mode match-any-lang _name) ;; Find the first assignment entry that applies to MODE at or after ;; SOURCE-POS. If MATCH-ANY-LANG is non-nil, entries with `t' as ;; the language list are considered to match, otherwise they don't. ;; On return SOURCE-POS is updated to point to the next assignment ;; after the returned one. If no assignment is found, - ;; `c-lang-constants' is returned as a magic value. + ;; `c-lang--novalue' is returned as a magic value. ;; ;; SOURCE-POS is a vector that points out a specific assignment in ;; the double alist that's used in the `source' property. The first @@ -2243,7 +2252,7 @@ quoted." match-any-lang) (throw 'found (cdr assignment)))) - c-lang-constants))) + c-lang--novalue))) (defun c-lang-major-mode-is (mode) ;; `c-major-mode-is' expands to a call to this function inside diff --git a/lisp/progmodes/cc-engine.el b/lisp/progmodes/cc-engine.el index 626e131ed22..9a2531d1e99 100644 --- a/lisp/progmodes/cc-engine.el +++ b/lisp/progmodes/cc-engine.el @@ -147,18 +147,19 @@ (cc-require-when-compile 'cc-langs) (cc-require 'cc-vars) +(eval-when-compile (require 'cl)) + ;; Make declarations for all the `c-lang-defvar' variables in cc-langs. (defmacro c-declare-lang-variables () `(progn - ,@(apply 'nconc - (mapcar (lambda (init) - `(,(if (elt init 2) - `(defvar ,(car init) nil ,(elt init 2)) - `(defvar ,(car init) nil)) - (make-variable-buffer-local ',(car init)))) - (cdr c-lang-variable-inits))))) + ,@(mapcan (lambda (init) + `(,(if (elt init 2) + `(defvar ,(car init) nil ,(elt init 2)) + `(defvar ,(car init) nil)) + (make-variable-buffer-local ',(car init)))) + (cdr c-lang-variable-inits)))) (c-declare-lang-variables) @@ -826,7 +827,6 @@ comment at the start of cc-engine.el for more info." ;; Record this as the first token if not starting inside it. (setq tok start)) - ;; The following while loop goes back one sexp (balanced parens, ;; etc. with contents, or symbol or suchlike) each iteration. This ;; movement is accomplished with a call to c-backward-sexp approx 170 @@ -2159,7 +2159,6 @@ comment at the start of cc-engine.el for more info." ;; the middle of the desert, as long as it is not within a brace pair ;; recorded in `c-state-cache' or a paren/bracket pair. - ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; We maintain a simple cache of positions which aren't in a literal, so as to ;; speed up testing for non-literality. @@ -2780,7 +2779,7 @@ comment at the start of cc-engine.el for more info." paren+1 ; Pos after some opening or closing paren. paren+1s ; A list of `paren+1's; used to determine a ; good-pos. - bra+1 ce+1 ; just after L/R bra-ces. + bra+1 ; just after L bra-ce. bra+1s ; list of OLD values of bra+1. mstart) ; start of a macro. @@ -3296,7 +3295,7 @@ comment at the start of cc-engine.el for more info." (setq res (c-remove-stale-state-cache start-point here here-bopl)) (setq cache-pos (car res) scan-backward-pos (cadr res) - cons-separated (car (cddr res)) + cons-separated (car (cddr res)) bopl-state (cadr (cddr res))) ; will be nil if (< here-bopl ; start-point) (if (and scan-backward-pos @@ -3392,6 +3391,7 @@ comment at the start of cc-engine.el for more info." (defvar c-parse-state-point nil) (defvar c-parse-state-state nil) +(make-variable-buffer-local 'c-parse-state-state) (defun c-record-parse-state-state () (setq c-parse-state-point (point)) (setq c-parse-state-state @@ -4166,7 +4166,7 @@ comment at the start of cc-engine.el for more info." ;; Use `parse-partial-sexp' from a safe position down to the point to check ;; if it's outside comments and strings. (save-excursion - (let ((pos (point)) safe-pos state pps-end-pos) + (let ((pos (point)) safe-pos state) ;; Pick a safe position as close to the point as possible. ;; ;; FIXME: Consult `syntax-ppss' here if our cache doesn't give a good @@ -4860,14 +4860,17 @@ comment at the start of cc-engine.el for more info." ;; it should return non-nil to ensure that the next search will find them. ;; ;; Such a spot is: - ;; o The first token after bob. - ;; o The first token after the end of submatch 1 in - ;; `c-decl-prefix-or-start-re' when that submatch matches. - ;; o The start of each `c-decl-prefix-or-start-re' match when - ;; submatch 1 doesn't match. - ;; o The first token after the end of each occurrence of the - ;; `c-type' text property with the value `c-decl-end', provided - ;; `c-type-decl-end-used' is set. + ;; o The first token after bob. + ;; o The first token after the end of submatch 1 in + ;; `c-decl-prefix-or-start-re' when that submatch matches. This + ;; submatch is typically a (L or R) brace or paren, a ;, or a ,. + ;; o The start of each `c-decl-prefix-or-start-re' match when + ;; submatch 1 doesn't match. This is, for example, the keyword + ;; "class" in Pike. + ;; o The start of a previously recognized declaration; "recognized" + ;; means that the last char of the previous token has a `c-type' + ;; text property with the value `c-decl-end'; this only holds + ;; when `c-type-decl-end-used' is set. ;; ;; Only a spot that match CFD-DECL-RE and whose face is in the ;; CFD-FACE-CHECKLIST list causes CFD-FUN to be called. The face @@ -4899,7 +4902,7 @@ comment at the start of cc-engine.el for more info." ;; ;; This function might do hidden buffer changes. - (let ((cfd-start-pos (point)) + (let ((cfd-start-pos (point)) ; never changed (cfd-buffer-end (point-max)) ;; The end of the token preceding the decl spot last found ;; with `c-decl-prefix-or-start-re'. `cfd-limit' if there's @@ -4938,10 +4941,20 @@ comment at the start of cc-engine.el for more info." ;; statement or declaration, which is earlier than the first ;; returned match. + ;; This `cond' moves back over any literals or macros. It has special + ;; handling for when the region being searched is entirely within a + ;; macro. It sets `cfd-continue-pos' (unless we've reached + ;; `cfd-limit'). (cond ;; First we need to move to a syntactically relevant position. ;; Begin by backing out of comment or string literals. + ;; + ;; This arm of the cond actually triggers if we're in a literal, + ;; and cfd-limit is at most at BONL. ((and + ;; This arm of the `and' moves backwards out of a literal when + ;; the face at point is a literal face. In this case, its value + ;; is always non-nil. (when (c-got-face-at (point) c-literal-faces) ;; Try to use the faces to back up to the start of the ;; literal. FIXME: What if the point is on a declaration @@ -4970,7 +4983,7 @@ comment at the start of cc-engine.el for more info." (let ((range (c-literal-limits))) (if range (goto-char (car range))))) - (setq start-in-literal (point))) + (setq start-in-literal (point))) ; end of `and' arm. ;; The start is in a literal. If the limit is in the same ;; one we don't have to find a syntactic position etc. We @@ -4985,18 +4998,18 @@ comment at the start of cc-engine.el for more info." (point) 'face nil cfd-limit)) (and (< (point) cfd-limit) (c-got-face-at (point) c-literal-faces)))) - (= (point) cfd-limit))) + (= (point) cfd-limit))) ; end of `cond' arm condition ;; Completely inside a literal. Set up variables to trig the ;; (< cfd-continue-pos cfd-start-pos) case below and it'll ;; find a suitable start position. - (setq cfd-continue-pos start-in-literal)) + (setq cfd-continue-pos start-in-literal)) ; end of `cond' arm ;; Check if the region might be completely inside a macro, to ;; optimize that like the completely-inside-literal above. ((save-excursion (and (= (forward-line 1) 0) - (bolp) ; forward-line has funny behavior at eob. + (bolp) ; forward-line has funny behavior at eob. (>= (point) cfd-limit) (progn (backward-char) (eq (char-before) ?\\)))) @@ -5006,6 +5019,8 @@ comment at the start of cc-engine.el for more info." (setq cfd-continue-pos (1- cfd-start-pos) start-in-macro t)) + ;; The default arm of the `cond' moves back over any macro we're in + ;; and over any syntactic WS. It sets `c-find-decl-syntactic-pos'. (t ;; Back out of any macro so we don't miss any declaration ;; that could follow after it. @@ -5052,10 +5067,10 @@ comment at the start of cc-engine.el for more info." (< (point) cfd-limit)) ;; Do an initial search now. In the bob case above it's ;; only done to search for a `c-decl-end' spot. - (c-find-decl-prefix-search)) + (c-find-decl-prefix-search)) ; sets cfd-continue-pos (setq c-find-decl-match-pos (and (< cfd-match-pos cfd-start-pos) - cfd-match-pos))))) + cfd-match-pos))))) ; end of `cond' ;; Advance `cfd-continue-pos' if it's before the start position. ;; The closest continue position that might have effect at or @@ -5114,7 +5129,7 @@ comment at the start of cc-engine.el for more info." ;; `cfd-match-pos' so we can continue at the start position. ;; (Note that we don't get here if the first match is below ;; it.) - (goto-char cfd-start-pos))) + (goto-char cfd-start-pos))) ; end of `cond' ;; Delete found matches if they are before our new continue ;; position, so that `c-find-decl-prefix-search' won't back up @@ -5123,7 +5138,7 @@ comment at the start of cc-engine.el for more info." (when (and cfd-re-match (< cfd-re-match cfd-continue-pos)) (setq cfd-re-match nil)) (when (and cfd-prop-match (< cfd-prop-match cfd-continue-pos)) - (setq cfd-prop-match nil))) + (setq cfd-prop-match nil))) ; end of `when' (if syntactic-pos ;; This is the normal case and we got a proper syntactic @@ -5144,9 +5159,10 @@ comment at the start of cc-engine.el for more info." ;; good start position for the search, so do it. (c-find-decl-prefix-search))) - ;; Now loop. Round what? (ACM, 2006/7/5). We already got the first match. - + ;; Now loop, one decl spot per iteration. We already have the first + ;; match in `cfd-match-pos'. (while (progn + ;; Go forward over "false matches", one per iteration. (while (and (< cfd-match-pos cfd-limit) @@ -5187,10 +5203,10 @@ comment at the start of cc-engine.el for more info." (goto-char cfd-continue-pos) t))) - (< (point) cfd-limit)) - (c-find-decl-prefix-search)) + (< (point) cfd-limit)) ; end of "false matches" condition + (c-find-decl-prefix-search)) ; end of "false matches" loop - (< (point) cfd-limit)) + (< (point) cfd-limit)) ; end of condition for "decl-spot" while (when (and (>= (point) cfd-start-pos) @@ -5218,7 +5234,7 @@ comment at the start of cc-engine.el for more info." ;; The matched token was the last thing in the macro, ;; so the whole match is bogus. (setq cfd-macro-end 0) - nil)))) + nil)))) ; end of when condition (c-debug-put-decl-spot-faces cfd-match-pos (point)) (if (funcall cfd-fun cfd-match-pos (/= cfd-macro-end 0)) @@ -5531,8 +5547,6 @@ comment at the start of cc-engine.el for more info." (when need-new-end (and (> new-end c-new-END) (setq c-new-END new-end)))))) - - (defun c-after-change-check-<>-operators (beg end) ;; This is called from `after-change-functions' when ;; c-recognize-<>-arglists' is set. It ensures that no "<" or ">" @@ -5867,7 +5881,6 @@ comment at the start of cc-engine.el for more info." ;; Recursive part of `c-forward-<>-arglist'. ;; ;; This function might do hidden buffer changes. - (let ((start (point)) res pos tmp ;; Cover this so that any recorded found type ranges are ;; automatically lost if it turns out to not be an angle @@ -5944,7 +5957,7 @@ comment at the start of cc-engine.el for more info." ;; Either an operator starting with '>' or the end of ;; the angle bracket arglist. - (if (looking-at c->-op-cont-regexp) + (if (looking-at c->-op-without->-cont-regexp) (progn (goto-char (match-end 0)) t) ; Continue the loop. @@ -5993,7 +6006,6 @@ comment at the start of cc-engine.el for more info." (c-keyword-member (c-keyword-sym (match-string 1)) 'c-<>-type-kwds))))))) - ;; It was an angle bracket arglist. (setq c-record-found-types subres) @@ -6286,7 +6298,8 @@ comment at the start of cc-engine.el for more info." ;; `*-font-lock-extra-types'); ;; o - 'prefix if it's a known prefix of a type; ;; o - 'found if it's a type that matches one in `c-found-types'; - ;; o - 'maybe if it's an identifier that might be a type; or + ;; o - 'maybe if it's an identifier that might be a type; + ;; o - 'decltype if it's a decltype(variable) declaration; - or ;; o - nil if it can't be a type (the point isn't moved then). ;; ;; The point is assumed to be at the beginning of a token. @@ -6316,6 +6329,16 @@ comment at the start of cc-engine.el for more info." (setq res 'prefix))) (cond + ((looking-at c-typeof-key) ; e.g. C++'s "decltype". + (goto-char (match-end 1)) + (c-forward-syntactic-ws) + (setq res (and (eq (char-after) ?\() + (c-safe (c-forward-sexp)) + 'decltype)) + (if res + (c-forward-syntactic-ws) + (goto-char start))) + ((looking-at c-type-prefix-key) ; e.g. "struct", "class", but NOT ; "typedef". (goto-char (match-end 1)) @@ -6442,7 +6465,7 @@ comment at the start of cc-engine.el for more info." ;; of these alter the classification of the found type, since ;; these operators typically are allowed in normal expressions ;; too. - (when c-opt-type-suffix-key + (when c-opt-type-suffix-key ; e.g. "..." (while (looking-at c-opt-type-suffix-key) (goto-char (match-end 1)) (c-forward-syntactic-ws))) @@ -6654,6 +6677,13 @@ comment at the start of cc-engine.el for more info." ;; Foo::Foo (int b) : Base (b) {} ;; car ^ ^ point ;; + ;; auto foo = 5; + ;; car ^ ^ point + ;; auto cplusplus_11 (int a, char *b) -> decltype (bar): + ;; car ^ ^ point + ;; + ;; + ;; ;; The cdr of the return value is non-nil when a ;; `c-typedef-decl-kwds' specifier is found in the declaration. ;; Specifically it is a dotted pair (A . B) where B is t when a @@ -6719,6 +6749,10 @@ comment at the start of cc-engine.el for more info." ;; If `backup-at-type' is nil then the other variables have ;; undefined values. backup-at-type backup-type-start backup-id-start + ;; This stores `kwd-sym' of the symbol before the current one. + ;; This is needed to distinguish the C++11 version of "auto" from + ;; the pre C++11 meaning. + backup-kwd-sym ;; Set if we've found a specifier (apart from "typedef") that makes ;; the defined identifier(s) types. at-type-decl @@ -6727,6 +6761,10 @@ comment at the start of cc-engine.el for more info." ;; Set if we've found a specifier that can start a declaration ;; where there's no type. maybe-typeless + ;; Save the value of kwd-sym between loops of the "Check for a + ;; type" loop. Needed to distinguish a C++11 "auto" from a pre + ;; C++11 one. + prev-kwd-sym ;; If a specifier is found that also can be a type prefix, ;; these flags are set instead of those above. If we need to ;; back up an identifier, they are copied to the real flag @@ -6744,6 +6782,8 @@ comment at the start of cc-engine.el for more info." backup-if-not-cast ;; For casts, the return position. cast-end + ;; Have we got a new-style C++11 "auto"? + new-style-auto ;; Save `c-record-type-identifiers' and ;; `c-record-ref-identifiers' since ranges are recorded ;; speculatively and should be thrown away if it turns out @@ -6762,11 +6802,12 @@ comment at the start of cc-engine.el for more info." (let* ((start (point)) kwd-sym kwd-clause-end found-type) ;; Look for a specifier keyword clause. - (when (or (looking-at c-prefix-spec-kwds-re) + (when (or (looking-at c-prefix-spec-kwds-re) ;FIXME!!! includes auto (and (c-major-mode-is 'java-mode) (looking-at "@[A-Za-z0-9]+"))) - (if (looking-at c-typedef-key) - (setq at-typedef t)) + (save-match-data + (if (looking-at c-typedef-key) + (setq at-typedef t))) (setq kwd-sym (c-keyword-sym (match-string 1))) (save-excursion (c-forward-keyword-clause 1) @@ -6774,6 +6815,12 @@ comment at the start of cc-engine.el for more info." (when (setq found-type (c-forward-type t)) ; brace-block-too ;; Found a known or possible type or a prefix of a known type. + (when (and (c-major-mode-is 'c++-mode) ; C++11 style "auto"? + (eq prev-kwd-sym (c-keyword-sym "auto")) + (looking-at "[=(]")) ; FIXME!!! proper regexp. + (setq new-style-auto t) + (setq found-type nil) + (goto-char start)) ; position of foo in "auto foo" (when at-type ;; Got two identifiers with nothing but whitespace @@ -6792,6 +6839,7 @@ comment at the start of cc-engine.el for more info." (setq backup-at-type at-type backup-type-start type-start backup-id-start id-start + backup-kwd-sym kwd-sym at-type found-type type-start start id-start (point) @@ -6847,6 +6895,7 @@ comment at the start of cc-engine.el for more info." ;; specifier keyword and we know we're in a ;; declaration. (setq at-decl-or-cast t) + (setq prev-kwd-sym kwd-sym) (goto-char kwd-clause-end)))) @@ -7038,50 +7087,60 @@ comment at the start of cc-engine.el for more info." (c-forward-syntactic-ws)) - (when (and (or maybe-typeless backup-maybe-typeless) - (not got-identifier) - (not got-prefix) - at-type) + (when (or (and new-style-auto + (looking-at c-auto-ops-re)) + (and (or maybe-typeless backup-maybe-typeless) + (not got-identifier) + (not got-prefix) + at-type)) ;; Have found no identifier but `c-typeless-decl-kwds' has ;; matched so we know we're inside a declaration. The ;; preceding type must be the identifier instead. (c-fdoc-shift-type-backward)) + ;; Prepare the "-> type;" for fontification later on. + (when (and new-style-auto + (looking-at c-haskell-op-re)) + (save-excursion + (goto-char (match-end 0)) + (c-forward-syntactic-ws) + (setq type-start (point)) + (setq at-type (c-forward-type)))) + (setq at-decl-or-cast (catch 'at-decl-or-cast ;; CASE 1 - (when (> paren-depth 0) - ;; Encountered something inside parens that isn't matched by - ;; the `c-type-decl-*' regexps, so it's not a type decl - ;; expression. Try to skip out to the same paren depth to - ;; not confuse the cast check below. - (c-safe (goto-char (scan-lists (point) 1 paren-depth))) - ;; If we've found a specifier keyword then it's a - ;; declaration regardless. - (throw 'at-decl-or-cast (eq at-decl-or-cast t))) - - (setq at-decl-end - (looking-at (cond ((eq context '<>) "[,>]") - (context "[,\)]") - (t "[,;]")))) - - ;; Now we've collected info about various characteristics of - ;; the construct we're looking at. Below follows a decision - ;; tree based on that. It's ordered to check more certain - ;; signs before less certain ones. - - (if got-identifier - (progn - - ;; CASE 2 - (when (and (or at-type maybe-typeless) - (not (or got-prefix got-parens))) - ;; Got another identifier directly after the type, so it's a - ;; declaration. - (throw 'at-decl-or-cast t)) + (when (> paren-depth 0) + ;; Encountered something inside parens that isn't matched by + ;; the `c-type-decl-*' regexps, so it's not a type decl + ;; expression. Try to skip out to the same paren depth to + ;; not confuse the cast check below. + (c-safe (goto-char (scan-lists (point) 1 paren-depth))) + ;; If we've found a specifier keyword then it's a + ;; declaration regardless. + (throw 'at-decl-or-cast (eq at-decl-or-cast t))) + + (setq at-decl-end + (looking-at (cond ((eq context '<>) "[,>]") + (context "[,\)]") + (t "[,;]")))) + + ;; Now we've collected info about various characteristics of + ;; the construct we're looking at. Below follows a decision + ;; tree based on that. It's ordered to check more certain + ;; signs before less certain ones. + + (if got-identifier + (progn + ;; CASE 2 + (when (and (or at-type maybe-typeless) + (not (or got-prefix got-parens))) + ;; Got another identifier directly after the type, so it's a + ;; declaration. + (throw 'at-decl-or-cast t)) (when (and got-parens (not got-prefix) @@ -7103,9 +7162,9 @@ comment at the start of cc-engine.el for more info." (c-fdoc-shift-type-backward))) ;; Found no identifier. - (if backup-at-type - (progn + (if backup-at-type + (progn ;; CASE 3 (when (= (point) start) @@ -7128,250 +7187,251 @@ comment at the start of cc-engine.el for more info." (setq backup-if-not-cast t) (throw 'at-decl-or-cast t))) - ;; CASE 4 - (when (and got-suffix - (not got-prefix) - (not got-parens)) - ;; Got a plain list of identifiers followed by some suffix. - ;; If this isn't a cast then the last identifier probably is - ;; the declared one and we should back up to the previous - ;; type. - (setq backup-if-not-cast t) - (throw 'at-decl-or-cast t))) - - ;; CASE 5 - (when (eq at-type t) - ;; If the type is known we know that there can't be any - ;; identifier somewhere else, and it's only in declarations in - ;; e.g. function prototypes and in casts that the identifier may - ;; be left out. - (throw 'at-decl-or-cast t)) - - (when (= (point) start) - ;; Only got a single identifier (parsed as a type so far). - ;; CASE 6 - (if (and - ;; Check that the identifier isn't at the start of an - ;; expression. - at-decl-end - (cond - ((eq context 'decl) - ;; Inside an arglist that contains declarations. If K&R - ;; style declarations and parenthesis style initializers - ;; aren't allowed then the single identifier must be a - ;; type, else we require that it's known or found - ;; (primitive types are handled above). - (or (and (not c-recognize-knr-p) - (not c-recognize-paren-inits)) - (memq at-type '(known found)))) - ((eq context '<>) - ;; Inside a template arglist. Accept known and found - ;; types; other identifiers could just as well be - ;; constants in C++. - (memq at-type '(known found))))) - (throw 'at-decl-or-cast t) - ;; CASE 7 - ;; Can't be a valid declaration or cast, but if we've found a - ;; specifier it can't be anything else either, so treat it as - ;; an invalid/unfinished declaration or cast. - (throw 'at-decl-or-cast at-decl-or-cast)))) - - (if (and got-parens - (not got-prefix) - (not context) - (not (eq at-type t)) - (or backup-at-type - maybe-typeless - backup-maybe-typeless - (when c-recognize-typeless-decls - (or (not got-suffix) - (not (looking-at - c-after-suffixed-type-maybe-decl-key)))))) - ;; Got an empty paren pair and a preceding type that probably - ;; really is the identifier. Shift the type backwards to make - ;; the last one the identifier. This is analogous to the - ;; "backtracking" done inside the `c-type-decl-suffix-key' loop - ;; above. - ;; - ;; Exception: In addition to the conditions in that - ;; "backtracking" code, do not shift backward if we're not - ;; looking at either `c-after-suffixed-type-decl-key' or "[;,]". - ;; Since there's no preceding type, the shift would mean that - ;; the declaration is typeless. But if the regexp doesn't match - ;; then we will simply fall through in the tests below and not - ;; recognize it at all, so it's better to try it as an abstract - ;; declarator instead. - (c-fdoc-shift-type-backward) - - ;; Still no identifier. - ;; CASE 8 - (when (and got-prefix (or got-parens got-suffix)) - ;; Require `got-prefix' together with either `got-parens' or - ;; `got-suffix' to recognize it as an abstract declarator: - ;; `got-parens' only is probably an empty function call. - ;; `got-suffix' only can build an ordinary expression together - ;; with the preceding identifier which we've taken as a type. - ;; We could actually accept on `got-prefix' only, but that can - ;; easily occur temporarily while writing an expression so we - ;; avoid that case anyway. We could do a better job if we knew - ;; the point when the fontification was invoked. - (throw 'at-decl-or-cast t)) - - ;; CASE 9 - (when (and at-type - (not got-prefix) - (not got-parens) - got-suffix-after-parens - (eq (char-after got-suffix-after-parens) ?\()) - ;; Got a type, no declarator but a paren suffix. I.e. it's a - ;; normal function call after all (or perhaps a C++ style object - ;; instantiation expression). - (throw 'at-decl-or-cast nil)))) - - ;; CASE 10 - (when at-decl-or-cast - ;; By now we've located the type in the declaration that we know - ;; we're in. - (throw 'at-decl-or-cast t)) - - ;; CASE 11 - (when (and got-identifier - (not context) - (looking-at c-after-suffixed-type-decl-key) - (if (and got-parens + ;; CASE 4 + (when (and got-suffix (not got-prefix) - (not got-suffix) - (not (eq at-type t))) - ;; Shift the type backward in the case that there's a - ;; single identifier inside parens. That can only - ;; occur in K&R style function declarations so it's - ;; more likely that it really is a function call. - ;; Therefore we only do this after - ;; `c-after-suffixed-type-decl-key' has matched. - (progn (c-fdoc-shift-type-backward) t) - got-suffix-after-parens)) - ;; A declaration according to `c-after-suffixed-type-decl-key'. - (throw 'at-decl-or-cast t)) - - ;; CASE 12 - (when (and (or got-prefix (not got-parens)) - (memq at-type '(t known))) - ;; It's a declaration if a known type precedes it and it can't be a - ;; function call. - (throw 'at-decl-or-cast t)) - - ;; If we get here we can't tell if this is a type decl or a normal - ;; expression by looking at it alone. (That's under the assumption - ;; that normal expressions always can look like type decl expressions, - ;; which isn't really true but the cases where it doesn't hold are so - ;; uncommon (e.g. some placements of "const" in C++) it's not worth - ;; the effort to look for them.) + (not got-parens)) + ;; Got a plain list of identifiers followed by some suffix. + ;; If this isn't a cast then the last identifier probably is + ;; the declared one and we should back up to the previous + ;; type. + (setq backup-if-not-cast t) + (throw 'at-decl-or-cast t))) + + ;; CASE 5 + (when (eq at-type t) + ;; If the type is known we know that there can't be any + ;; identifier somewhere else, and it's only in declarations in + ;; e.g. function prototypes and in casts that the identifier may + ;; be left out. + (throw 'at-decl-or-cast t)) + + (when (= (point) start) + ;; Only got a single identifier (parsed as a type so far). + ;; CASE 6 + (if (and + ;; Check that the identifier isn't at the start of an + ;; expression. + at-decl-end + (cond + ((eq context 'decl) + ;; Inside an arglist that contains declarations. If K&R + ;; style declarations and parenthesis style initializers + ;; aren't allowed then the single identifier must be a + ;; type, else we require that it's known or found + ;; (primitive types are handled above). + (or (and (not c-recognize-knr-p) + (not c-recognize-paren-inits)) + (memq at-type '(known found)))) + ((eq context '<>) + ;; Inside a template arglist. Accept known and found + ;; types; other identifiers could just as well be + ;; constants in C++. + (memq at-type '(known found))))) + (throw 'at-decl-or-cast t) + ;; CASE 7 + ;; Can't be a valid declaration or cast, but if we've found a + ;; specifier it can't be anything else either, so treat it as + ;; an invalid/unfinished declaration or cast. + (throw 'at-decl-or-cast at-decl-or-cast)))) + + (if (and got-parens + (not got-prefix) + (not context) + (not (eq at-type t)) + (or backup-at-type + maybe-typeless + backup-maybe-typeless + (when c-recognize-typeless-decls + (or (not got-suffix) + (not (looking-at + c-after-suffixed-type-maybe-decl-key)))))) + ;; Got an empty paren pair and a preceding type that probably + ;; really is the identifier. Shift the type backwards to make + ;; the last one the identifier. This is analogous to the + ;; "backtracking" done inside the `c-type-decl-suffix-key' loop + ;; above. + ;; + ;; Exception: In addition to the conditions in that + ;; "backtracking" code, do not shift backward if we're not + ;; looking at either `c-after-suffixed-type-decl-key' or "[;,]". + ;; Since there's no preceding type, the shift would mean that + ;; the declaration is typeless. But if the regexp doesn't match + ;; then we will simply fall through in the tests below and not + ;; recognize it at all, so it's better to try it as an abstract + ;; declarator instead. + (c-fdoc-shift-type-backward) + + ;; Still no identifier. + ;; CASE 8 + (when (and got-prefix (or got-parens got-suffix)) + ;; Require `got-prefix' together with either `got-parens' or + ;; `got-suffix' to recognize it as an abstract declarator: + ;; `got-parens' only is probably an empty function call. + ;; `got-suffix' only can build an ordinary expression together + ;; with the preceding identifier which we've taken as a type. + ;; We could actually accept on `got-prefix' only, but that can + ;; easily occur temporarily while writing an expression so we + ;; avoid that case anyway. We could do a better job if we knew + ;; the point when the fontification was invoked. + (throw 'at-decl-or-cast t)) + + ;; CASE 9 + (when (and at-type + (not got-prefix) + (not got-parens) + got-suffix-after-parens + (eq (char-after got-suffix-after-parens) ?\()) + ;; Got a type, no declarator but a paren suffix. I.e. it's a + ;; normal function call after all (or perhaps a C++ style object + ;; instantiation expression). + (throw 'at-decl-or-cast nil)))) + + ;; CASE 10 + (when at-decl-or-cast + ;; By now we've located the type in the declaration that we know + ;; we're in. + (throw 'at-decl-or-cast t)) + + ;; CASE 11 + (when (and got-identifier + (not context) + (looking-at c-after-suffixed-type-decl-key) + (if (and got-parens + (not got-prefix) + (not got-suffix) + (not (eq at-type t))) + ;; Shift the type backward in the case that there's a + ;; single identifier inside parens. That can only + ;; occur in K&R style function declarations so it's + ;; more likely that it really is a function call. + ;; Therefore we only do this after + ;; `c-after-suffixed-type-decl-key' has matched. + (progn (c-fdoc-shift-type-backward) t) + got-suffix-after-parens)) + ;; A declaration according to `c-after-suffixed-type-decl-key'. + (throw 'at-decl-or-cast t)) + + ;; CASE 12 + (when (and (or got-prefix (not got-parens)) + (memq at-type '(t known))) + ;; It's a declaration if a known type precedes it and it can't be a + ;; function call. + (throw 'at-decl-or-cast t)) + + ;; If we get here we can't tell if this is a type decl or a normal + ;; expression by looking at it alone. (That's under the assumption + ;; that normal expressions always can look like type decl expressions, + ;; which isn't really true but the cases where it doesn't hold are so + ;; uncommon (e.g. some placements of "const" in C++) it's not worth + ;; the effort to look for them.) ;;; 2008-04-16: commented out the next form, to allow the function to recognize ;;; "foo (int bar)" in CC (an implicit type (in class foo) without a semicolon) ;;; as a(n almost complete) declaration, enabling it to be fontified. - ;; CASE 13 - ;; (unless (or at-decl-end (looking-at "=[^=]")) - ;; If this is a declaration it should end here or its initializer(*) - ;; should start here, so check for allowed separation tokens. Note - ;; that this rule doesn't work e.g. with a K&R arglist after a - ;; function header. - ;; - ;; *) Don't check for C++ style initializers using parens - ;; since those already have been matched as suffixes. - ;; - ;; If `at-decl-or-cast' is then we've found some other sign that - ;; it's a declaration or cast, so then it's probably an - ;; invalid/unfinished one. - ;; (throw 'at-decl-or-cast at-decl-or-cast)) - - ;; Below are tests that only should be applied when we're certain to - ;; not have parsed halfway through an expression. - - ;; CASE 14 - (when (memq at-type '(t known)) - ;; The expression starts with a known type so treat it as a - ;; declaration. - (throw 'at-decl-or-cast t)) - - ;; CASE 15 - (when (and (c-major-mode-is 'c++-mode) - ;; In C++ we check if the identifier is a known type, since - ;; (con|de)structors use the class name as identifier. - ;; We've always shifted over the identifier as a type and - ;; then backed up again in this case. - identifier-type - (or (memq identifier-type '(found known)) - (and (eq (char-after identifier-start) ?~) - ;; `at-type' probably won't be 'found for - ;; destructors since the "~" is then part of the - ;; type name being checked against the list of - ;; known types, so do a check without that - ;; operator. - (or (save-excursion - (goto-char (1+ identifier-start)) - (c-forward-syntactic-ws) - (c-with-syntax-table - c-identifier-syntax-table - (looking-at c-known-type-key))) - (save-excursion - (goto-char (1+ identifier-start)) - ;; We have already parsed the type earlier, - ;; so it'd be possible to cache the end - ;; position instead of redoing it here, but - ;; then we'd need to keep track of another - ;; position everywhere. - (c-check-type (point) - (progn (c-forward-type) - (point)))))))) - (throw 'at-decl-or-cast t)) - - (if got-identifier - (progn - ;; CASE 16 - (when (and got-prefix-before-parens - at-type - (or at-decl-end (looking-at "=[^=]")) - (not context) - (not got-suffix)) - ;; Got something like "foo * bar;". Since we're not inside an - ;; arglist it would be a meaningless expression because the - ;; result isn't used. We therefore choose to recognize it as - ;; a declaration. Do not allow a suffix since it could then - ;; be a function call. - (throw 'at-decl-or-cast t)) - - ;; CASE 17 - (when (and (or got-suffix-after-parens - (looking-at "=[^=]")) - (eq at-type 'found) - (not (eq context 'arglist))) - ;; Got something like "a (*b) (c);" or "a (b) = c;". It could - ;; be an odd expression or it could be a declaration. Treat - ;; it as a declaration if "a" has been used as a type - ;; somewhere else (if it's a known type we won't get here). - (throw 'at-decl-or-cast t))) - - ;; CASE 18 - (when (and context - (or got-prefix - (and (eq context 'decl) - (not c-recognize-paren-inits) - (or got-parens got-suffix)))) - ;; Got a type followed by an abstract declarator. If `got-prefix' - ;; is set it's something like "a *" without anything after it. If - ;; `got-parens' or `got-suffix' is set it's "a()", "a[]", "a()[]", - ;; or similar, which we accept only if the context rules out - ;; expressions. - (throw 'at-decl-or-cast t))) - - ;; If we had a complete symbol table here (which rules out - ;; `c-found-types') we should return t due to the disambiguation rule - ;; (in at least C++) that anything that can be parsed as a declaration - ;; is a declaration. Now we're being more defensive and prefer to - ;; highlight things like "foo (bar);" as a declaration only if we're - ;; inside an arglist that contains declarations. - (eq context 'decl)))) + ;; CASE 13 + ;; (unless (or at-decl-end (looking-at "=[^=]")) + ;; If this is a declaration it should end here or its initializer(*) + ;; should start here, so check for allowed separation tokens. Note + ;; that this rule doesn't work e.g. with a K&R arglist after a + ;; function header. + ;; + ;; *) Don't check for C++ style initializers using parens + ;; since those already have been matched as suffixes. + ;; + ;; If `at-decl-or-cast' is then we've found some other sign that + ;; it's a declaration or cast, so then it's probably an + ;; invalid/unfinished one. + ;; (throw 'at-decl-or-cast at-decl-or-cast)) + + ;; Below are tests that only should be applied when we're certain to + ;; not have parsed halfway through an expression. + + ;; CASE 14 + (when (memq at-type '(t known)) + ;; The expression starts with a known type so treat it as a + ;; declaration. + (throw 'at-decl-or-cast t)) + + ;; CASE 15 + (when (and (c-major-mode-is 'c++-mode) + ;; In C++ we check if the identifier is a known type, since + ;; (con|de)structors use the class name as identifier. + ;; We've always shifted over the identifier as a type and + ;; then backed up again in this case. + identifier-type + (or (memq identifier-type '(found known)) + (and (eq (char-after identifier-start) ?~) + ;; `at-type' probably won't be 'found for + ;; destructors since the "~" is then part of the + ;; type name being checked against the list of + ;; known types, so do a check without that + ;; operator. + (or (save-excursion + (goto-char (1+ identifier-start)) + (c-forward-syntactic-ws) + (c-with-syntax-table + c-identifier-syntax-table + (looking-at c-known-type-key))) + (save-excursion + (goto-char (1+ identifier-start)) + ;; We have already parsed the type earlier, + ;; so it'd be possible to cache the end + ;; position instead of redoing it here, but + ;; then we'd need to keep track of another + ;; position everywhere. + (c-check-type (point) + (progn (c-forward-type) + (point)))))))) + (throw 'at-decl-or-cast t)) + + (if got-identifier + (progn + ;; CASE 16 + (when (and got-prefix-before-parens + at-type + (or at-decl-end (looking-at "=[^=]")) + (not context) + (not got-suffix)) + ;; Got something like "foo * bar;". Since we're not inside an + ;; arglist it would be a meaningless expression because the + ;; result isn't used. We therefore choose to recognize it as + ;; a declaration. Do not allow a suffix since it could then + ;; be a function call. + (throw 'at-decl-or-cast t)) + + ;; CASE 17 + (when (and (or got-suffix-after-parens + (looking-at "=[^=]")) + (eq at-type 'found) + (not (eq context 'arglist))) + ;; Got something like "a (*b) (c);" or "a (b) = c;". It could + ;; be an odd expression or it could be a declaration. Treat + ;; it as a declaration if "a" has been used as a type + ;; somewhere else (if it's a known type we won't get here). + (throw 'at-decl-or-cast t))) + + ;; CASE 18 + (when (and context + (or got-prefix + (and (eq context 'decl) + (not c-recognize-paren-inits) + (or got-parens got-suffix)))) + ;; Got a type followed by an abstract declarator. If `got-prefix' + ;; is set it's something like "a *" without anything after it. If + ;; `got-parens' or `got-suffix' is set it's "a()", "a[]", "a()[]", + ;; or similar, which we accept only if the context rules out + ;; expressions. + (throw 'at-decl-or-cast t))) + + ;; If we had a complete symbol table here (which rules out + ;; `c-found-types') we should return t due to the disambiguation rule + ;; (in at least C++) that anything that can be parsed as a declaration + ;; is a declaration. Now we're being more defensive and prefer to + ;; highlight things like "foo (bar);" as a declaration only if we're + ;; inside an arglist that contains declarations. + ;; CASE 19 + (eq context 'decl)))) ;; The point is now after the type decl expression. @@ -7460,6 +7520,8 @@ comment at the start of cc-engine.el for more info." ;; interactive refontification. (c-put-c-type-property (point) 'c-decl-arg-start)) + ;; Record the type's coordinates in `c-record-type-identifiers' for + ;; later fontification. (when (and c-record-type-identifiers at-type ;; (not (eq at-type t)) ;; There seems no reason to exclude a token from ;; fontification just because it's "a known type that can't @@ -7558,10 +7620,10 @@ comment at the start of cc-engine.el for more info." (c-put-c-type-property (1- (point)) 'c-decl-end) t) - ;; It's an unfinished label. We consider the keyword enough - ;; to recognize it as a label, so that it gets fontified. - ;; Leave the point at the end of it, but don't put any - ;; `c-decl-end' marker. + ;; It's an unfinished label. We consider the keyword enough + ;; to recognize it as a label, so that it gets fontified. + ;; Leave the point at the end of it, but don't put any + ;; `c-decl-end' marker. (goto-char kwd-end) t)))) @@ -7746,69 +7808,69 @@ comment at the start of cc-engine.el for more info." ;; ;; This function might do hidden buffer changes. - (let ((start (point)) - start-char - (c-promote-possible-types t) - lim - ;; Turn off recognition of angle bracket arglists while parsing - ;; types here since the protocol reference list might then be - ;; considered part of the preceding name or superclass-name. - c-recognize-<>-arglists) - - (if (or - (when (looking-at - (eval-when-compile - (c-make-keywords-re t - (append (c-lang-const c-protection-kwds objc) - '("@end")) - 'objc-mode))) - (goto-char (match-end 1)) - t) + (let ((start (point)) + start-char + (c-promote-possible-types t) + lim + ;; Turn off recognition of angle bracket arglists while parsing + ;; types here since the protocol reference list might then be + ;; considered part of the preceding name or superclass-name. + c-recognize-<>-arglists) + + (if (or + (when (looking-at + (eval-when-compile + (c-make-keywords-re t + (append (c-lang-const c-protection-kwds objc) + '("@end")) + 'objc-mode))) + (goto-char (match-end 1)) + t) - (and - (looking-at - (eval-when-compile - (c-make-keywords-re t - '("@interface" "@implementation" "@protocol") - 'objc-mode))) + (and + (looking-at + (eval-when-compile + (c-make-keywords-re t + '("@interface" "@implementation" "@protocol") + 'objc-mode))) - ;; Handle the name of the class itself. - (progn -; (c-forward-token-2) ; 2006/1/13 This doesn't move if the token's -; at EOB. - (goto-char (match-end 0)) - (setq lim (point)) - (c-skip-ws-forward) - (c-forward-type)) - - (catch 'break - ;; Look for ": superclass-name" or "( category-name )". - (when (looking-at "[:\(]") - (setq start-char (char-after)) + ;; Handle the name of the class itself. + (progn + ;; (c-forward-token-2) ; 2006/1/13 This doesn't move if the token's + ;; at EOB. + (goto-char (match-end 0)) + (setq lim (point)) + (c-skip-ws-forward) + (c-forward-type)) + + (catch 'break + ;; Look for ": superclass-name" or "( category-name )". + (when (looking-at "[:\(]") + (setq start-char (char-after)) + (forward-char) + (c-forward-syntactic-ws) + (unless (c-forward-type) (throw 'break nil)) + (when (eq start-char ?\() + (unless (eq (char-after) ?\)) (throw 'break nil)) (forward-char) - (c-forward-syntactic-ws) - (unless (c-forward-type) (throw 'break nil)) - (when (eq start-char ?\() - (unless (eq (char-after) ?\)) (throw 'break nil)) - (forward-char) - (c-forward-syntactic-ws))) - - ;; Look for a protocol reference list. - (if (eq (char-after) ?<) - (let ((c-recognize-<>-arglists t) - (c-parse-and-markup-<>-arglists t) - c-restricted-<>-arglists) - (c-forward-<>-arglist t)) - t)))) + (c-forward-syntactic-ws))) - (progn - (c-backward-syntactic-ws lim) - (c-clear-c-type-property start (1- (point)) 'c-decl-end) - (c-put-c-type-property (1- (point)) 'c-decl-end) - t) + ;; Look for a protocol reference list. + (if (eq (char-after) ?<) + (let ((c-recognize-<>-arglists t) + (c-parse-and-markup-<>-arglists t) + c-restricted-<>-arglists) + (c-forward-<>-arglist t)) + t)))) - (c-clear-c-type-property start (point) 'c-decl-end) - nil))) + (progn + (c-backward-syntactic-ws lim) + (c-clear-c-type-property start (1- (point)) 'c-decl-end) + (c-put-c-type-property (1- (point)) 'c-decl-end) + t) + + (c-clear-c-type-property start (point) 'c-decl-end) + nil))) (defun c-beginning-of-inheritance-list (&optional lim) ;; Go to the first non-whitespace after the colon that starts a @@ -7895,7 +7957,7 @@ comment at the start of cc-engine.el for more info." ;; ;; This function might do hidden buffer changes. - (let ((beg (point)) end id-start) + (let ((beg (point)) id-start) (and (eq (c-beginning-of-statement-1 lim) 'same) @@ -7985,54 +8047,54 @@ comment at the start of cc-engine.el for more info." (throw 'knr nil))) (if after-rparen - ;; We're inside a paren. Could it be our argument list....? - (if - (and - (progn - (goto-char after-rparen) - (unless (c-go-list-backward) (throw 'knr nil)) ; - ;; FIXME!!! What about macros between the parens? 2007/01/20 - (setq before-lparen (point))) + ;; We're inside a paren. Could it be our argument list....? + (if + (and + (progn + (goto-char after-rparen) + (unless (c-go-list-backward) (throw 'knr nil)) ; + ;; FIXME!!! What about macros between the parens? 2007/01/20 + (setq before-lparen (point))) - ;; It can't be the arg list if next token is ; or { - (progn (goto-char after-rparen) - (c-forward-syntactic-ws) - (not (memq (char-after) '(?\; ?\{ ?\=)))) + ;; It can't be the arg list if next token is ; or { + (progn (goto-char after-rparen) + (c-forward-syntactic-ws) + (not (memq (char-after) '(?\; ?\{ ?\=)))) - ;; Is the thing preceding the list an identifier (the - ;; function name), or a macro expansion? - (progn - (goto-char before-lparen) - (eq (c-backward-token-2) 0) - (or (eq (c-on-identifier) (point)) - (and (eq (char-after) ?\)) - (c-go-up-list-backward) - (eq (c-backward-token-2) 0) - (eq (c-on-identifier) (point))))) - - ;; Have we got a non-empty list of comma-separated - ;; identifiers? - (progn - (goto-char before-lparen) - (c-forward-token-2) ; to first token inside parens - (and - (c-on-identifier) - (c-forward-token-2) - (catch 'id-list - (while (eq (char-after) ?\,) - (c-forward-token-2) - (unless (c-on-identifier) (throw 'id-list nil)) - (c-forward-token-2)) - (eq (char-after) ?\)))))) - - ;; ...Yes. We've identified the function's argument list. - (throw 'knr - (progn (goto-char after-rparen) - (c-forward-syntactic-ws) - (point))) - - ;; ...No. The current parens aren't the function's arg list. - (goto-char before-lparen)) + ;; Is the thing preceding the list an identifier (the + ;; function name), or a macro expansion? + (progn + (goto-char before-lparen) + (eq (c-backward-token-2) 0) + (or (eq (c-on-identifier) (point)) + (and (eq (char-after) ?\)) + (c-go-up-list-backward) + (eq (c-backward-token-2) 0) + (eq (c-on-identifier) (point))))) + + ;; Have we got a non-empty list of comma-separated + ;; identifiers? + (progn + (goto-char before-lparen) + (c-forward-token-2) ; to first token inside parens + (and + (c-on-identifier) + (c-forward-token-2) + (catch 'id-list + (while (eq (char-after) ?\,) + (c-forward-token-2) + (unless (c-on-identifier) (throw 'id-list nil)) + (c-forward-token-2)) + (eq (char-after) ?\)))))) + + ;; ...Yes. We've identified the function's argument list. + (throw 'knr + (progn (goto-char after-rparen) + (c-forward-syntactic-ws) + (point))) + + ;; ...No. The current parens aren't the function's arg list. + (goto-char before-lparen)) (or (c-go-list-backward) ; backwards over [ .... ] (throw 'knr nil))))))))) @@ -8238,7 +8300,7 @@ comment at the start of cc-engine.el for more info." (and (progn (while ; keep going back to "[;={"s until we either find - ; no more, or get to one which isn't an "operator =" + ; no more, or get to one which isn't an "operator =" (and (c-syntactic-re-search-forward "[;={]" start t t t) (eq (char-before) ?=) c-overloadable-operators-regexp @@ -8561,86 +8623,86 @@ comment at the start of cc-engine.el for more info." (while (and (not bufpos) containing-sexp) (when paren-state - (if (consp (car paren-state)) - (setq lim (cdr (car paren-state)) - paren-state (cdr paren-state)) - (setq lim (car paren-state))) - (when paren-state - (setq next-containing (car paren-state) - paren-state (cdr paren-state)))) - (goto-char containing-sexp) - (if (c-looking-at-inexpr-block next-containing next-containing) - ;; We're in an in-expression block of some kind. Do not - ;; check nesting. We deliberately set the limit to the - ;; containing sexp, so that c-looking-at-inexpr-block - ;; doesn't check for an identifier before it. - (setq containing-sexp nil) - ;; see if the open brace is preceded by = or [...] in - ;; this statement, but watch out for operator= - (setq braceassignp 'dontknow) - (c-backward-token-2 1 t lim) - ;; Checks to do only on the first sexp before the brace. - (when (and c-opt-inexpr-brace-list-key - (eq (char-after) ?\[)) - ;; In Java, an initialization brace list may follow - ;; directly after "new Foo[]", so check for a "new" - ;; earlier. - (while (eq braceassignp 'dontknow) - (setq braceassignp - (cond ((/= (c-backward-token-2 1 t lim) 0) nil) - ((looking-at c-opt-inexpr-brace-list-key) t) - ((looking-at "\\sw\\|\\s_\\|[.[]") - ;; Carry on looking if this is an - ;; identifier (may contain "." in Java) - ;; or another "[]" sexp. - 'dontknow) - (t nil))))) - ;; Checks to do on all sexps before the brace, up to the - ;; beginning of the statement. + (if (consp (car paren-state)) + (setq lim (cdr (car paren-state)) + paren-state (cdr paren-state)) + (setq lim (car paren-state))) + (when paren-state + (setq next-containing (car paren-state) + paren-state (cdr paren-state)))) + (goto-char containing-sexp) + (if (c-looking-at-inexpr-block next-containing next-containing) + ;; We're in an in-expression block of some kind. Do not + ;; check nesting. We deliberately set the limit to the + ;; containing sexp, so that c-looking-at-inexpr-block + ;; doesn't check for an identifier before it. + (setq containing-sexp nil) + ;; see if the open brace is preceded by = or [...] in + ;; this statement, but watch out for operator= + (setq braceassignp 'dontknow) + (c-backward-token-2 1 t lim) + ;; Checks to do only on the first sexp before the brace. + (when (and c-opt-inexpr-brace-list-key + (eq (char-after) ?\[)) + ;; In Java, an initialization brace list may follow + ;; directly after "new Foo[]", so check for a "new" + ;; earlier. (while (eq braceassignp 'dontknow) - (cond ((eq (char-after) ?\;) - (setq braceassignp nil)) - ((and class-key - (looking-at class-key)) - (setq braceassignp nil)) - ((eq (char-after) ?=) - ;; We've seen a =, but must check earlier tokens so - ;; that it isn't something that should be ignored. - (setq braceassignp 'maybe) - (while (and (eq braceassignp 'maybe) - (zerop (c-backward-token-2 1 t lim))) - (setq braceassignp - (cond - ;; Check for operator = - ((and c-opt-op-identifier-prefix - (looking-at c-opt-op-identifier-prefix)) - nil) - ;; Check for `<opchar>= in Pike. - ((and (c-major-mode-is 'pike-mode) - (or (eq (char-after) ?`) - ;; Special case for Pikes - ;; `[]=, since '[' is not in - ;; the punctuation class. - (and (eq (char-after) ?\[) - (eq (char-before) ?`)))) - nil) - ((looking-at "\\s.") 'maybe) - ;; make sure we're not in a C++ template - ;; argument assignment - ((and - (c-major-mode-is 'c++-mode) - (save-excursion - (let ((here (point)) - (pos< (progn - (skip-chars-backward "^<>") - (point)))) - (and (eq (char-before) ?<) - (not (c-crosses-statement-barrier-p - pos< here)) - (not (c-in-literal)) - )))) - nil) - (t t)))))) + (setq braceassignp + (cond ((/= (c-backward-token-2 1 t lim) 0) nil) + ((looking-at c-opt-inexpr-brace-list-key) t) + ((looking-at "\\sw\\|\\s_\\|[.[]") + ;; Carry on looking if this is an + ;; identifier (may contain "." in Java) + ;; or another "[]" sexp. + 'dontknow) + (t nil))))) + ;; Checks to do on all sexps before the brace, up to the + ;; beginning of the statement. + (while (eq braceassignp 'dontknow) + (cond ((eq (char-after) ?\;) + (setq braceassignp nil)) + ((and class-key + (looking-at class-key)) + (setq braceassignp nil)) + ((eq (char-after) ?=) + ;; We've seen a =, but must check earlier tokens so + ;; that it isn't something that should be ignored. + (setq braceassignp 'maybe) + (while (and (eq braceassignp 'maybe) + (zerop (c-backward-token-2 1 t lim))) + (setq braceassignp + (cond + ;; Check for operator = + ((and c-opt-op-identifier-prefix + (looking-at c-opt-op-identifier-prefix)) + nil) + ;; Check for `<opchar>= in Pike. + ((and (c-major-mode-is 'pike-mode) + (or (eq (char-after) ?`) + ;; Special case for Pikes + ;; `[]=, since '[' is not in + ;; the punctuation class. + (and (eq (char-after) ?\[) + (eq (char-before) ?`)))) + nil) + ((looking-at "\\s.") 'maybe) + ;; make sure we're not in a C++ template + ;; argument assignment + ((and + (c-major-mode-is 'c++-mode) + (save-excursion + (let ((here (point)) + (pos< (progn + (skip-chars-backward "^<>") + (point)))) + (and (eq (char-before) ?<) + (not (c-crosses-statement-barrier-p + pos< here)) + (not (c-in-literal)) + )))) + nil) + (t t)))))) (if (and (eq braceassignp 'dontknow) (/= (c-backward-token-2 1 t lim) 0)) (setq braceassignp nil))) @@ -9163,7 +9225,7 @@ comment at the start of cc-engine.el for more info." (max (c-point 'boi paren-pos) (point)))) (t (c-add-syntax 'defun-block-intro nil)))) - (c-add-syntax 'statement-block-intro nil))) + (c-add-syntax 'statement-block-intro nil))) (if (= paren-pos boi) ;; Always done if the open brace was at boi. The @@ -10276,7 +10338,6 @@ comment at the start of cc-engine.el for more info." (c-add-syntax 'topmost-intro-cont (c-point 'boi))) )) - ;; (CASE 6 has been removed.) ;; CASE 7: line is an expression, not a statement. Most diff --git a/lisp/progmodes/cc-fonts.el b/lisp/progmodes/cc-fonts.el index a107ef01250..1c389bc3665 100644 --- a/lisp/progmodes/cc-fonts.el +++ b/lisp/progmodes/cc-fonts.el @@ -366,39 +366,7 @@ (parse-sexp-lookup-properties (cc-eval-when-compile (boundp 'parse-sexp-lookup-properties)))) - - ;; (while (re-search-forward ,regexp limit t) - ;; (unless (progn - ;; (goto-char (match-beginning 0)) - ;; (c-skip-comments-and-strings limit)) - ;; (goto-char (match-end 0)) - ;; ,@(mapcar - ;; (lambda (highlight) - ;; (if (integerp (car highlight)) - ;; (progn - ;; (unless (eq (nth 2 highlight) t) - ;; (error - ;; "The override flag must currently be t in %s" - ;; highlight)) - ;; (when (nth 3 highlight) - ;; (error - ;; "The laxmatch flag may currently not be set in %s" - ;; highlight)) - ;; `(save-match-data - ;; (c-put-font-lock-face - ;; (match-beginning ,(car highlight)) - ;; (match-end ,(car highlight)) - ;; ,(elt highlight 1)))) - ;; (when (nth 3 highlight) - ;; (error "Match highlights currently not supported in %s" - ;; highlight)) - ;; `(progn - ;; ,(nth 1 highlight) - ;; (save-match-data ,(car highlight)) - ;; ,(nth 2 highlight)))) - ;; highlights))) ,(c-make-font-lock-search-form regexp highlights)) - nil))) (defun c-make-font-lock-BO-decl-search-function (regexp &rest highlights) @@ -716,7 +684,11 @@ stuff. Used on level 1 and higher." (let ((start (1- (point)))) (save-excursion (and (eq (elt (parse-partial-sexp start (c-point 'eol)) 8) start) - (if (integerp c-multiline-string-start-char) + (if (if (eval-when-compile (integerp ?c)) + ;; Emacs + (integerp c-multiline-string-start-char) + ;; XEmacs + (characterp c-multiline-string-start-char)) ;; There's no multiline string start char before the ;; string, so newlines aren't allowed. (not (eq (char-before start) c-multiline-string-start-char)) @@ -1116,14 +1088,11 @@ casts and declarations are fontified. Used on level 2 and higher." ;; initializing brace lists. (let (found) (while - (and (setq found - (c-syntactic-re-search-forward - "[;,]\\|\\s)\\|\\'\\|\\(=\\|\\s(\\)" limit t t)) - (eq (char-before) ?\[)) - (backward-char) - (c-safe (c-forward-sexp 1)) - (setq found nil) - (setq brackets-after-id t)) + (and (setq found (c-syntactic-re-search-forward + "[;,]\\|\\s)\\|\\'\\|\\(=\\|\\s(\\)" limit t t)) + (eq (char-before) ?\[) + (c-go-up-list-forward)) + (setq brackets-after-id t)) found)) (setq next-pos (match-beginning 0) @@ -1154,7 +1123,6 @@ casts and declarations are fontified. Used on level 2 and higher." (when list ;; Jump past any initializer or function prototype to see if ;; there's a ',' to continue at. - (cond ((eq id-face 'font-lock-function-name-face) ;; Skip a parenthesized initializer (C++) or a function ;; prototype. @@ -1222,8 +1190,8 @@ casts and declarations are fontified. Used on level 2 and higher." ;; o - nil, if not in an arglist at all. This includes the ;; parenthesized condition which follows "if", "while", etc. context - ;; The position of the next token after the closing paren of - ;; the last detected cast. + ;; A list of starting positions of possible type declarations, or of + ;; the typedef preceding one, if any. last-cast-end ;; The result from `c-forward-decl-or-cast-1'. decl-or-cast @@ -1309,14 +1277,15 @@ casts and declarations are fontified. Used on level 2 and higher." (cond ((not (memq (char-before match-pos) '(?\( ?, ?\[ ?<))) (setq context nil c-restricted-<>-arglists nil)) - ;; A control flow expression + ;; A control flow expression or a decltype ((and (eq (char-before match-pos) ?\() (save-excursion (goto-char match-pos) (backward-char) (c-backward-token-2) (or (looking-at c-block-stmt-2-key) - (looking-at c-block-stmt-1-2-key)))) + (looking-at c-block-stmt-1-2-key) + (looking-at c-typeof-key)))) (setq context nil c-restricted-<>-arglists t)) ;; Near BOB. @@ -1516,7 +1485,7 @@ casts and declarations are fontified. Used on level 2 and higher." (goto-char (match-end 0)) (c-forward-syntactic-ws)) ;; At a real declaration? - (if (memq (c-forward-type t) '(t known found)) + (if (memq (c-forward-type t) '(t known found decltype)) (progn (c-font-lock-declarators limit t is-typedef) nil) @@ -1566,9 +1535,7 @@ casts and declarations are fontified. Used on level 2 and higher." ;; Note that this function won't attempt to fontify beyond the end of the ;; current enum block, if any. (let* ((paren-state (c-parse-state)) - (encl-pos (c-most-enclosing-brace paren-state)) - (start (point)) - ) + (encl-pos (c-most-enclosing-brace paren-state))) (when (and encl-pos (eq (char-after encl-pos) ?\{) @@ -2133,7 +2100,7 @@ need for `c-font-lock-extra-types'.") ;; Got two parenthesized expressions, so we have to look ;; closer at them to decide which is the type. No need to ;; handle `c-record-ref-identifiers' since all references - ;; has already been handled by other fontification rules. + ;; have already been handled by other fontification rules. (let (expr1-res expr2-res) (goto-char expr1-pos) @@ -2168,6 +2135,9 @@ need for `c-font-lock-extra-types'.") ;; unusual than an initializer. (cond ((memq expr1-res '(t known prefix))) ((memq expr2-res '(t known prefix))) + ;; Presumably 'decltype's will be fontified elsewhere. + ((eq expr1-res 'decltype)) + ((eq expr2-res 'decltype)) ((eq expr1-res 'found) (let ((c-promote-possible-types t)) (goto-char expr1-pos) diff --git a/lisp/progmodes/cc-guess.el b/lisp/progmodes/cc-guess.el index 5424e8d4a61..f46ae0ff426 100644 --- a/lisp/progmodes/cc-guess.el +++ b/lisp/progmodes/cc-guess.el @@ -519,7 +519,8 @@ is called with one argument, the guessed style." (goto-char (point-min)) (when (search-forward (concat "(" (symbol-name (car needs-markers)) - " ") nil t) + " ") + nil t) (move-end-of-line 1) (comment-dwim nil) (insert " Guessed value")) diff --git a/lisp/progmodes/cc-langs.el b/lisp/progmodes/cc-langs.el index 42b6f5964c2..bab928ac5dd 100644 --- a/lisp/progmodes/cc-langs.el +++ b/lisp/progmodes/cc-langs.el @@ -130,9 +130,7 @@ ;; This file is not always loaded. See note above. -;; Except it is always loaded - see bug#17463. -;;;(cc-external-require 'cl) -(require 'cl-lib) +(cc-external-require 'cl) ;;; Setup for the `c-lang-defvar' system. @@ -253,14 +251,14 @@ the evaluated constant value at compile time." (unless xlate (setq xlate 'identity)) (c-with-syntax-table (c-lang-const c-mode-syntax-table) - (cl-delete-duplicates - (cl-mapcan (lambda (opgroup) + (delete-duplicates + (mapcan (lambda (opgroup) (when (if (symbolp (car opgroup)) (when (funcall opgroup-filter (car opgroup)) (setq opgroup (cdr opgroup)) t) t) - (cl-mapcan (lambda (op) + (mapcan (lambda (op) (when (funcall op-filter op) (let ((res (funcall xlate op))) (if (listp res) res (list res))))) @@ -301,7 +299,8 @@ the evaluated constant value at compile time." ["Set Style..." c-set-style t] ["Show Current Style Name" (message "Style Name: %s" - c-indentation-style) t] + c-indentation-style) + t] ["Guess Style from this Buffer" c-guess-buffer-no-install t] ["Install the Last Guessed Style..." c-guess-install (and c-guess-guessed-offsets-alist @@ -406,7 +405,7 @@ The syntax tables aren't stored directly since they're quite large." (and (c-lang-const c++-make-template-syntax-table) (funcall (c-lang-const c++-make-template-syntax-table)))) -(c-lang-defconst c-no-parens-syntax-table +(c-lang-defconst c-make-no-parens-syntax-table ;; A variant of the standard syntax table which is used to find matching ;; "<"s and ">"s which have been marked as parens using syntax table ;; properties. The other paren characters (e.g. "{", ")" "]") are given a @@ -414,18 +413,20 @@ The syntax tables aren't stored directly since they're quite large." ;; even when there's unbalanced other parens inside them. ;; ;; This variable is nil for languages which don't have template stuff. - t `(lambda () - (if (c-lang-const c-recognize-<>-arglists) - (let ((table (funcall ,(c-lang-const c-make-mode-syntax-table)))) - (modify-syntax-entry ?\( "." table) - (modify-syntax-entry ?\) "." table) - (modify-syntax-entry ?\[ "." table) - (modify-syntax-entry ?\] "." table) - (modify-syntax-entry ?\{ "." table) - (modify-syntax-entry ?\} "." table) - table)))) + t (if (c-lang-const c-recognize-<>-arglists) + `(lambda () + ;(if (c-lang-const c-recognize-<>-arglists) + (let ((table (funcall ,(c-lang-const c-make-mode-syntax-table)))) + (modify-syntax-entry ?\( "." table) + (modify-syntax-entry ?\) "." table) + (modify-syntax-entry ?\[ "." table) + (modify-syntax-entry ?\] "." table) + (modify-syntax-entry ?\{ "." table) + (modify-syntax-entry ?\} "." table) + table)))) (c-lang-defvar c-no-parens-syntax-table - (funcall (c-lang-const c-no-parens-syntax-table))) + (and (c-lang-const c-make-no-parens-syntax-table) + (funcall (c-lang-const c-make-no-parens-syntax-table)))) (c-lang-defconst c-identifier-syntax-modifications "A list that describes the modifications that should be done to the @@ -940,10 +941,13 @@ Note that operators like \".\" and \"->\" which in language references often are described as postfix operators are considered binary here, since CC Mode treats every identifier as an expression." - ;; There's currently no code in CC Mode that exploit all the info + ;; There's currently no code in CC Mode that exploits all the info ;; in this variable; precedence, associativity etc are present as a ;; preparation for future work. + ;; FIXME!!! C++11's "auto" operators "=" and "->" need to go in here + ;; somewhere. 2012-03-24. + t `(;; Preprocessor. ,@(when (c-lang-const c-opt-cpp-prefix) `((prefix "#" @@ -1150,7 +1154,7 @@ operators." (c-lang-defconst c-all-op-syntax-tokens ;; List of all tokens in the punctuation and parenthesis syntax ;; classes. - t (cl-delete-duplicates (append (c-lang-const c-other-op-syntax-tokens) + t (delete-duplicates (append (c-lang-const c-other-op-syntax-tokens) (c-lang-const c-operator-list)) :test 'string-equal)) @@ -1217,22 +1221,41 @@ operators." (c-lang-defvar c-<-op-cont-regexp (c-lang-const c-<-op-cont-regexp)) +(c-lang-defconst c->-op-cont-tokens + ;; A list of second and subsequent characters of all multicharacter tokens + ;; that begin with ">". + t (c-filter-ops (c-lang-const c-all-op-syntax-tokens) + t + "\\`>." + (lambda (op) (substring op 1))) + java (c-filter-ops (c-lang-const c-all-op-syntax-tokens) + t + "\\`>[^>]\\|\\`>>[^>]" + (lambda (op) (substring op 1)))) + (c-lang-defconst c->-op-cont-regexp ;; Regexp matching the second and subsequent characters of all ;; multicharacter tokens that begin with ">". - t (c-make-keywords-re nil - (c-filter-ops (c-lang-const c-all-op-syntax-tokens) - t - "\\`>." - (lambda (op) (substring op 1)))) - java (c-make-keywords-re nil - (c-filter-ops (c-lang-const c-all-op-syntax-tokens) - t - "\\`>[^>]\\|\\`>>[^>]" - (lambda (op) (substring op 1))))) + t (c-make-keywords-re nil (c-lang-const c->-op-cont-tokens))) (c-lang-defvar c->-op-cont-regexp (c-lang-const c->-op-cont-regexp)) +(c-lang-defconst c->-op-without->-cont-regexp + ;; Regexp matching the second and subsequent characters of all + ;; multicharacter tokens that begin with ">" except for those beginning with + ;; ">>". + t (c-make-keywords-re nil + (set-difference + (c-lang-const c->-op-cont-tokens) + (c-filter-ops (c-lang-const c-all-op-syntax-tokens) + t + "\\`>>" + (lambda (op) (substring op 1))) + :test 'string-equal))) + +(c-lang-defvar c->-op-without->-cont-regexp + (c-lang-const c->-op-without->-cont-regexp)) + (c-lang-defconst c-stmt-delim-chars ;; The characters that should be considered to bound statements. To ;; optimize `c-crosses-statement-barrier-p' somewhat, it's assumed to @@ -1247,6 +1270,21 @@ operators." (c-lang-defvar c-stmt-delim-chars-with-comma (c-lang-const c-stmt-delim-chars-with-comma)) +(c-lang-defconst c-auto-ops + ;; Ops which signal C++11's new auto uses. + t nil + c++ '("=" "->")) +(c-lang-defconst c-auto-ops-re + t (c-make-keywords-re nil (c-lang-const c-auto-ops))) +(c-lang-defvar c-auto-ops-re (c-lang-const c-auto-ops-re)) + +(c-lang-defconst c-haskell-op + ;; Op used in the new C++11 auto function definition, indicating type. + t nil + c++ '("->")) +(c-lang-defconst c-haskell-op-re + t (c-make-keywords-re nil (c-lang-const c-haskell-op))) +(c-lang-defvar c-haskell-op-re (c-lang-const c-haskell-op-re)) ;;; Syntactic whitespace. @@ -1548,13 +1586,14 @@ properly." (c-lang-defvar c-syntactic-eol (c-lang-const c-syntactic-eol)) -;;; Defun functions - -;; The Emacs variables beginning-of-defun-function and -;; end-of-defun-function will be set so that commands like -;; `mark-defun' and `narrow-to-defun' work right. The key sequences -;; C-M-a and C-M-e are, however, bound directly to the CC Mode -;; functions, allowing optimization for large n. +;;; Defun handling. + +;; The Emacs variables beginning-of-defun-function and end-of-defun-function +;; will be set so that commands like `mark-defun' and `narrow-to-defun' work +;; right. In older Emacsen, the key sequences C-M-a and C-M-e are, however, +;; bound directly to the CC Mode functions, allowing optimization for large n. +;; From Emacs 23, this isn't necessary any more, since n is passed to the two +;; functions. (c-lang-defconst beginning-of-defun-function "Function to which beginning-of-defun-function will be set." t 'c-beginning-of-defun @@ -1654,6 +1693,18 @@ of a variable declaration." t (c-make-keywords-re t (c-lang-const c-typedef-kwds))) (c-lang-defvar c-typedef-key (c-lang-const c-typedef-key)) +(c-lang-defconst c-typeof-kwds + "Keywords followed by a parenthesized expression, which stands for +the type of that expression." + t nil + c '("typeof") ; longstanding GNU C(++) extension. + c++ '("decltype" "typeof")) + +(c-lang-defconst c-typeof-key + ;; Adorned regexp matching `c-typeof-kwds'. + t (c-make-keywords-re t (c-lang-const c-typeof-kwds))) +(c-lang-defvar c-typeof-key (c-lang-const c-typeof-key)) + (c-lang-defconst c-type-prefix-kwds "Keywords where the following name - if any - is a type name, and where the keyword together with the symbol works as a type in @@ -1703,7 +1754,7 @@ not the type face." (c-lang-defconst c-type-start-kwds ;; All keywords that can start a type (i.e. are either a type prefix ;; or a complete type). - t (cl-delete-duplicates (append (c-lang-const c-primitive-type-kwds) + t (delete-duplicates (append (c-lang-const c-primitive-type-kwds) (c-lang-const c-type-prefix-kwds) (c-lang-const c-type-modifier-kwds)) :test 'string-equal)) @@ -1837,6 +1888,7 @@ will be handled." ;; {...}"). t (append (c-lang-const c-class-decl-kwds) (c-lang-const c-brace-list-decl-kwds)) + c++ (append (c-lang-const c-typeless-decl-kwds) '("auto")) ; C++11. ;; Note: "manages" for CORBA CIDL clashes with its presence on ;; `c-type-list-kwds' for IDL. idl (append (c-lang-const c-typeless-decl-kwds) @@ -1946,7 +1998,7 @@ one of `c-type-list-kwds', `c-ref-list-kwds', ;; something is a type or just some sort of macro in front of the ;; declaration. They might be ambiguous with types or type ;; prefixes. - t (cl-delete-duplicates (append (c-lang-const c-class-decl-kwds) + t (delete-duplicates (append (c-lang-const c-class-decl-kwds) (c-lang-const c-brace-list-decl-kwds) (c-lang-const c-other-block-decl-kwds) (c-lang-const c-typedef-decl-kwds) @@ -1986,7 +2038,8 @@ one of `c-type-list-kwds', `c-ref-list-kwds', t (c-make-keywords-re t (set-difference (c-lang-const c-keywords) (append (c-lang-const c-type-start-kwds) - (c-lang-const c-prefix-spec-kwds)) + (c-lang-const c-prefix-spec-kwds) + (c-lang-const c-typeof-kwds)) :test 'string-equal))) (c-lang-defvar c-not-decl-init-keywords (c-lang-const c-not-decl-init-keywords)) @@ -2139,7 +2192,7 @@ type identifiers separated by arbitrary tokens." pike '("array" "function" "int" "mapping" "multiset" "object" "program")) (c-lang-defconst c-paren-any-kwds - t (cl-delete-duplicates (append (c-lang-const c-paren-nontype-kwds) + t (delete-duplicates (append (c-lang-const c-paren-nontype-kwds) (c-lang-const c-paren-type-kwds)) :test 'string-equal)) @@ -2165,7 +2218,7 @@ assumed to be set if this isn't nil." (c-lang-defconst c-<>-sexp-kwds ;; All keywords that can be followed by an angle bracket sexp. - t (cl-delete-duplicates (append (c-lang-const c-<>-type-kwds) + t (delete-duplicates (append (c-lang-const c-<>-type-kwds) (c-lang-const c-<>-arglist-kwds)) :test 'string-equal)) @@ -2225,7 +2278,7 @@ Keywords here should also be in `c-block-stmt-1-kwds'." (c-lang-defconst c-block-stmt-kwds ;; Union of `c-block-stmt-1-kwds' and `c-block-stmt-2-kwds'. - t (cl-delete-duplicates (append (c-lang-const c-block-stmt-1-kwds) + t (delete-duplicates (append (c-lang-const c-block-stmt-1-kwds) (c-lang-const c-block-stmt-2-kwds)) :test 'string-equal)) @@ -2329,7 +2382,7 @@ This construct is \"<keyword> <expression> :\"." (c-lang-defconst c-expr-kwds ;; Keywords that can occur anywhere in expressions. Built from ;; `c-primary-expr-kwds' and all keyword operators in `c-operators'. - t (cl-delete-duplicates + t (delete-duplicates (append (c-lang-const c-primary-expr-kwds) (c-filter-ops (c-lang-const c-operator-list) t @@ -2433,7 +2486,7 @@ Note that Java specific rules are currently applied to tell this from (c-lang-defconst c-keywords ;; All keywords as a list. - t (cl-delete-duplicates + t (delete-duplicates (c-lang-defconst-eval-immediately `(append ,@(mapcar (lambda (kwds-lang-const) `(c-lang-const ,kwds-lang-const)) @@ -2773,7 +2826,7 @@ possible for good performance." (c-lang-defvar c-block-prefix-charset (c-lang-const c-block-prefix-charset)) (c-lang-defconst c-type-decl-prefix-key - "Regexp matching the declarator operators that might precede the + "Regexp matching any declarator operator that might precede the identifier in a declaration, e.g. the \"*\" in \"char *argv\". This regexp should match \"(\" if parentheses are valid in declarators. The end of the first submatch is taken as the end of the operator. @@ -2972,7 +3025,8 @@ identifier or one of the keywords on `c-<>-type-kwds' or expression is considered to be a type." t (or (consp (c-lang-const c-<>-type-kwds)) (consp (c-lang-const c-<>-arglist-kwds))) - java t) + java t) ; 2008-10-19. This is crude. The syntax for java + ; generics is not yet coded in CC Mode. (c-lang-defvar c-recognize-<>-arglists (c-lang-const c-recognize-<>-arglists)) (c-lang-defconst c-enums-contain-decls @@ -3196,7 +3250,7 @@ accomplish that conveniently." ;; `c-lang-const' will expand to the evaluated ;; constant immediately in `macroexpand-all' ;; below. - (cl-mapcan + (mapcan (lambda (init) `(current-var ',(car init) ,(car init) ,(macroexpand-all diff --git a/lisp/progmodes/cc-menus.el b/lisp/progmodes/cc-menus.el index 67425a0c82c..735c2cbf1ed 100644 --- a/lisp/progmodes/cc-menus.el +++ b/lisp/progmodes/cc-menus.el @@ -361,7 +361,7 @@ Example: p (1+ p)) (cond ;; Is CHAR part of a objc token? - ((and (not inargvar) ; Ignore if CHAR is part of an argument variable. + ((and (not inargvar) ; Ignore if CHAR is part of an argument variable. (eq 0 betweenparen) ; Ignore if CHAR is in parentheses. (or (and (<= ?a char) (<= char ?z)) (and (<= ?A char) (<= char ?Z)) diff --git a/lisp/progmodes/cc-mode.el b/lisp/progmodes/cc-mode.el index 1ce076734ff..cb138d5f8b6 100644 --- a/lisp/progmodes/cc-mode.el +++ b/lisp/progmodes/cc-mode.el @@ -185,8 +185,7 @@ control). See \"cc-mode.el\" for more info." (run-hooks 'c-initialization-hook) ;; Fix obsolete variables. (if (boundp 'c-comment-continuation-stars) - (setq c-block-comment-prefix - (symbol-value 'c-comment-continuation-stars))) + (setq c-block-comment-prefix c-comment-continuation-stars)) (add-hook 'change-major-mode-hook 'c-leave-cc-mode-mode) (setq c-initialization-ok t) ;; Connect up with Emacs's electric-indent-mode, for >= Emacs 24.4 @@ -1322,6 +1321,7 @@ This function is called from `c-common-init', once per mode initialization." ;;;###autoload (add-to-list 'auto-mode-alist '("\\.i\\'" . c-mode)) ;;;###autoload (add-to-list 'auto-mode-alist '("\\.ii\\'" . c++-mode)) +(unless (fboundp 'prog-mode) (defalias 'prog-mode 'fundamental-mode)) ;;;###autoload (define-derived-mode c-mode prog-mode "C" diff --git a/lisp/progmodes/cc-vars.el b/lisp/progmodes/cc-vars.el index a8d627f94d4..ac8dbfc4c45 100644 --- a/lisp/progmodes/cc-vars.el +++ b/lisp/progmodes/cc-vars.el @@ -275,13 +275,18 @@ nil." "*Controls the operation of the TAB key. If t, hitting TAB always just indents the current line. If nil, hitting TAB indents the current line if point is at the left margin or in the -line's indentation, otherwise it calls `c-insert-tab-function' to -insert a `real' tab character. If some other value (neither nil nor t), -then inserts a tab only within literals (comments and strings), but -always reindents the line. - -Note: the variable `c-comment-only-line-offset' also controls the -indentation of lines containing only comments." +line's indentation, otherwise it inserts a `real' tab character \(see +note\). If some other value (not nil or t), then tab is inserted only +within literals \(comments and strings), but the line is always +reindented. + +Note: The value of `indent-tabs-mode' will determine whether a real +tab character will be inserted, or the equivalent number of spaces. +When inserting a tab, actually the function stored in the variable +`c-insert-tab-function' is called. + +Note: indentation of lines containing only comments is also controlled +by the `c-comment-only-line-offset' variable." :type '(radio (const :tag "TAB key always indents, never inserts TAB" t) (const :tag "TAB key indents in left margin, otherwise inserts TAB" nil) @@ -920,7 +925,7 @@ Only currently supported behavior is `alignleft'." (defcustom c-special-indent-hook nil "*Hook for user defined special indentation adjustments. This hook gets called after each line is indented by the mode. It is only -called if `c-syntactic-indentation' is non-nil." +called when `c-syntactic-indentation' is non-nil." :type 'hook :group 'c) @@ -1689,7 +1694,8 @@ as designated in the variable `c-file-style'.") ;; It isn't possible to specify a doc-string without specifying an ;; initial value with `defvar', so the following two variables have been ;; given doc-strings by setting the property `variable-documentation' -;; directly. It's really good not to have an initial value for +;; directly. C-h v will read this documentation only for versions of GNU +;; Emacs from 22.1. It's really good not to have an initial value for ;; variables like these that always should be dynamically bound, so it's ;; worth the inconvenience. diff --git a/lisp/progmodes/cfengine.el b/lisp/progmodes/cfengine.el index 7d4f6dc25b9..8e43c812470 100644 --- a/lisp/progmodes/cfengine.el +++ b/lisp/progmodes/cfengine.el @@ -27,9 +27,6 @@ ;; Provides support for editing GNU Cfengine files, including ;; font-locking, Imenu and indentation, but with no special keybindings. -;; The CFEngine 3.x support doesn't have Imenu support but patches are -;; welcome. - ;; By default, CFEngine 3.x syntax is used. ;; You can set it up so either `cfengine2-mode' (2.x and earlier) or @@ -56,7 +53,6 @@ ;;; Code: (autoload 'json-read "json") -(autoload 'regexp-opt "regexp-opt") (defgroup cfengine () "Editing CFEngine files." @@ -815,24 +811,18 @@ bundle agent rcfiles "List of the action keywords supported by Cfengine. This includes those for cfservd as well as cfagent.") - (defconst cfengine3-defuns - (mapcar - 'symbol-name - '(bundle body)) + (defconst cfengine3-defuns '("bundle" "body") "List of the CFEngine 3.x defun headings.") - (defconst cfengine3-defuns-regex - (regexp-opt cfengine3-defuns t) + (defconst cfengine3-defuns-regex (regexp-opt cfengine3-defuns t) "Regex to match the CFEngine 3.x defuns.") (defconst cfengine3-class-selector-regex "\\([[:alnum:]_().&|!:]+\\)::") (defconst cfengine3-category-regex "\\([[:alnum:]_]+\\):") - (defconst cfengine3-vartypes - (mapcar - 'symbol-name - '(string int real slist ilist rlist irange rrange counter data)) + (defconst cfengine3-vartypes '("string" "int" "real" "slist" "ilist" "rlist" + "irange" "rrange" "counter" "data") "List of the CFEngine 3.x variable types.")) (defvar cfengine2-font-lock-keywords @@ -1231,29 +1221,32 @@ Should not be necessary unless you reinstall CFEngine." (setq cfengine-mode-syntax-cache nil)) (defun cfengine3-make-syntax-cache () - "Build the CFEngine 3 syntax cache. -Calls `cfengine-cf-promises' with \"-s json\"" - (let ((syntax (cddr (assoc cfengine-cf-promises cfengine-mode-syntax-cache)))) - (if cfengine-cf-promises - (or syntax - (with-demoted-errors - (with-temp-buffer - (call-process-shell-command cfengine-cf-promises - nil ; no input - t ; current buffer - nil ; no redisplay - "-s" "json") - (goto-char (point-min)) - (setq syntax (json-read)) - (setq cfengine-mode-syntax-cache - (cons (cons cfengine-cf-promises syntax) - cfengine-mode-syntax-cache)) - (setq cfengine-mode-syntax-functions-regex - (regexp-opt (mapcar (lambda (def) - (format "%s" (car def))) - (cdr (assq 'functions syntax))) - 'symbols)))))) - cfengine3-fallback-syntax)) + "Build the CFEngine 3 syntax cache and return the syntax. +Calls `cfengine-cf-promises' with \"-s json\"." + (or (cdr (assoc cfengine-cf-promises cfengine-mode-syntax-cache)) + (let ((syntax (or (when cfengine-cf-promises + (with-demoted-errors "cfengine3-make-syntax-cache: %S" + (with-temp-buffer + (or (zerop (process-file cfengine-cf-promises + nil ; no input + t ; output + nil ; no redisplay + "-s" "json")) + (error "%s" (buffer-substring + (point-min) + (progn (goto-char (point-min)) + (line-end-position))))) + (goto-char (point-min)) + (json-read)))) + cfengine3-fallback-syntax))) + (push (cons cfengine-cf-promises syntax) + cfengine-mode-syntax-cache) + (setq cfengine-mode-syntax-functions-regex + (regexp-opt (mapcar (lambda (def) + (format "%s" (car def))) + (cdr (assq 'functions syntax))) + 'symbols)) + syntax))) (defun cfengine3-documentation-function () "Document CFengine 3 functions around point. @@ -1265,7 +1258,6 @@ Use it by enabling `eldoc-mode'." (defun cfengine3-completion-function () "Return completions for function name around or before point." - (cfengine3-make-syntax-cache) (let* ((bounds (save-excursion (let ((p (point))) (skip-syntax-backward "w_" (point-at-bol)) @@ -1306,6 +1298,20 @@ Use it by enabling `eldoc-mode'." ("=>" . ?⇒) ("::" . ?∷))) +(defun cfengine3-create-imenu-index () + "A function for `imenu-create-index-function'." + (goto-char (point-min)) + (let ((re (concat "^\\s-*" cfengine3-defuns-regex + "\\s-+\\(\\(?:\\w\\|\\s_\\)+\\)" ;type + "\\s-+\\(\\(?:\\w\\|\\s_\\)+\\)" ;id + )) + (defuns ())) + (while (re-search-forward re nil t) + (push (cons (mapconcat #'match-string '(1 2 3) ".") + (copy-marker (match-beginning 3))) + defuns)) + (nreverse defuns))) + ;;;###autoload (define-derived-mode cfengine3-mode prog-mode "CFE3" "Major mode for editing CFEngine3 input. @@ -1332,17 +1338,16 @@ to the action header." (when buffer-file-name (shell-quote-argument buffer-file-name))))) - (set (make-local-variable 'eldoc-documentation-function) - #'cfengine3-documentation-function) + (setq-local eldoc-documentation-function #'cfengine3-documentation-function) (add-hook 'completion-at-point-functions #'cfengine3-completion-function nil t) ;; Use defuns as the essential syntax block. - (set (make-local-variable 'beginning-of-defun-function) - #'cfengine3-beginning-of-defun) - (set (make-local-variable 'end-of-defun-function) - #'cfengine3-end-of-defun)) + (setq-local beginning-of-defun-function #'cfengine3-beginning-of-defun) + (setq-local end-of-defun-function #'cfengine3-end-of-defun) + + (setq-local imenu-create-index-function #'cfengine3-create-imenu-index)) ;;;###autoload (define-derived-mode cfengine2-mode prog-mode "CFE2" @@ -1376,15 +1381,18 @@ to the action header." ;;;###autoload (defun cfengine-auto-mode () - "Choose between `cfengine2-mode' and `cfengine3-mode' depending -on the buffer contents" - (let ((v3 nil)) - (save-restriction - (goto-char (point-min)) - (while (not (or (eobp) v3)) - (setq v3 (looking-at (concat cfengine3-defuns-regex "\\_>"))) - (forward-line))) - (if v3 (cfengine3-mode) (cfengine2-mode)))) + "Choose `cfengine2-mode' or `cfengine3-mode' by buffer contents." + (interactive) + (if (save-excursion + (save-restriction + (widen) + (goto-char (point-min)) + (forward-comment (point-max)) + (or (eobp) + (re-search-forward + (concat "^\\s-*" cfengine3-defuns-regex "\\_>") nil t)))) + (cfengine3-mode) + (cfengine2-mode))) (defalias 'cfengine-mode 'cfengine3-mode) diff --git a/lisp/progmodes/elisp-mode.el b/lisp/progmodes/elisp-mode.el new file mode 100644 index 00000000000..f3143bd76ee --- /dev/null +++ b/lisp/progmodes/elisp-mode.el @@ -0,0 +1,1288 @@ +;;; elisp-mode.el --- Emacs Lisp mode -*- lexical-binding:t -*- + +;; Copyright (C) 1985-1986, 1999-2014 Free Software Foundation, Inc. + +;; Maintainer: emacs-devel@gnu.org +;; Keywords: lisp, languages +;; Package: emacs + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software: you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. + +;;; Commentary: + +;; The major mode for editing Emacs Lisp code. +;; This mode is documented in the Emacs manual. + +;;; Code: + +(require 'lisp-mode) + +(defvar emacs-lisp-mode-abbrev-table nil) +(define-abbrev-table 'emacs-lisp-mode-abbrev-table () + "Abbrev table for Emacs Lisp mode. +It has `lisp-mode-abbrev-table' as its parent." + :parents (list lisp-mode-abbrev-table)) + +(defvar emacs-lisp-mode-syntax-table + (let ((table (make-syntax-table lisp--mode-syntax-table))) + (modify-syntax-entry ?\[ "(] " table) + (modify-syntax-entry ?\] ")[ " table) + table) + "Syntax table used in `emacs-lisp-mode'.") + +(defvar emacs-lisp-mode-map + (let ((map (make-sparse-keymap "Emacs-Lisp")) + (menu-map (make-sparse-keymap "Emacs-Lisp")) + (lint-map (make-sparse-keymap)) + (prof-map (make-sparse-keymap)) + (tracing-map (make-sparse-keymap))) + (set-keymap-parent map lisp-mode-shared-map) + (define-key map "\e\t" 'completion-at-point) + (define-key map "\e\C-x" 'eval-defun) + (define-key map "\e\C-q" 'indent-pp-sexp) + (bindings--define-key map [menu-bar emacs-lisp] + (cons "Emacs-Lisp" menu-map)) + (bindings--define-key menu-map [eldoc] + '(menu-item "Auto-Display Documentation Strings" eldoc-mode + :button (:toggle . (bound-and-true-p eldoc-mode)) + :help "Display the documentation string for the item under cursor")) + (bindings--define-key menu-map [checkdoc] + '(menu-item "Check Documentation Strings" checkdoc + :help "Check documentation strings for style requirements")) + (bindings--define-key menu-map [re-builder] + '(menu-item "Construct Regexp" re-builder + :help "Construct a regexp interactively")) + (bindings--define-key menu-map [tracing] (cons "Tracing" tracing-map)) + (bindings--define-key tracing-map [tr-a] + '(menu-item "Untrace All" untrace-all + :help "Untrace all currently traced functions")) + (bindings--define-key tracing-map [tr-uf] + '(menu-item "Untrace Function..." untrace-function + :help "Untrace function, and possibly activate all remaining advice")) + (bindings--define-key tracing-map [tr-sep] menu-bar-separator) + (bindings--define-key tracing-map [tr-q] + '(menu-item "Trace Function Quietly..." trace-function-background + :help "Trace the function with trace output going quietly to a buffer")) + (bindings--define-key tracing-map [tr-f] + '(menu-item "Trace Function..." trace-function + :help "Trace the function given as an argument")) + (bindings--define-key menu-map [profiling] (cons "Profiling" prof-map)) + (bindings--define-key prof-map [prof-restall] + '(menu-item "Remove Instrumentation for All Functions" elp-restore-all + :help "Restore the original definitions of all functions being profiled")) + (bindings--define-key prof-map [prof-restfunc] + '(menu-item "Remove Instrumentation for Function..." elp-restore-function + :help "Restore an instrumented function to its original definition")) + + (bindings--define-key prof-map [sep-rem] menu-bar-separator) + (bindings--define-key prof-map [prof-resall] + '(menu-item "Reset Counters for All Functions" elp-reset-all + :help "Reset the profiling information for all functions being profiled")) + (bindings--define-key prof-map [prof-resfunc] + '(menu-item "Reset Counters for Function..." elp-reset-function + :help "Reset the profiling information for a function")) + (bindings--define-key prof-map [prof-res] + '(menu-item "Show Profiling Results" elp-results + :help "Display current profiling results")) + (bindings--define-key prof-map [prof-pack] + '(menu-item "Instrument Package..." elp-instrument-package + :help "Instrument for profiling all function that start with a prefix")) + (bindings--define-key prof-map [prof-func] + '(menu-item "Instrument Function..." elp-instrument-function + :help "Instrument a function for profiling")) + ;; Maybe this should be in a separate submenu from the ELP stuff? + (bindings--define-key prof-map [sep-natprof] menu-bar-separator) + (bindings--define-key prof-map [prof-natprof-stop] + '(menu-item "Stop Native Profiler" profiler-stop + :help "Stop recording profiling information" + :enable (and (featurep 'profiler) + (profiler-running-p)))) + (bindings--define-key prof-map [prof-natprof-report] + '(menu-item "Show Profiler Report" profiler-report + :help "Show the current profiler report" + :enable (and (featurep 'profiler) + (profiler-running-p)))) + (bindings--define-key prof-map [prof-natprof-start] + '(menu-item "Start Native Profiler..." profiler-start + :help "Start recording profiling information")) + + (bindings--define-key menu-map [lint] (cons "Linting" lint-map)) + (bindings--define-key lint-map [lint-di] + '(menu-item "Lint Directory..." elint-directory + :help "Lint a directory")) + (bindings--define-key lint-map [lint-f] + '(menu-item "Lint File..." elint-file + :help "Lint a file")) + (bindings--define-key lint-map [lint-b] + '(menu-item "Lint Buffer" elint-current-buffer + :help "Lint the current buffer")) + (bindings--define-key lint-map [lint-d] + '(menu-item "Lint Defun" elint-defun + :help "Lint the function at point")) + (bindings--define-key menu-map [edebug-defun] + '(menu-item "Instrument Function for Debugging" edebug-defun + :help "Evaluate the top level form point is in, stepping through with Edebug" + :keys "C-u C-M-x")) + (bindings--define-key menu-map [separator-byte] menu-bar-separator) + (bindings--define-key menu-map [disas] + '(menu-item "Disassemble Byte Compiled Object..." disassemble + :help "Print disassembled code for OBJECT in a buffer")) + (bindings--define-key menu-map [byte-recompile] + '(menu-item "Byte-recompile Directory..." byte-recompile-directory + :help "Recompile every `.el' file in DIRECTORY that needs recompilation")) + (bindings--define-key menu-map [emacs-byte-compile-and-load] + '(menu-item "Byte-compile and Load" emacs-lisp-byte-compile-and-load + :help "Byte-compile the current file (if it has changed), then load compiled code")) + (bindings--define-key menu-map [byte-compile] + '(menu-item "Byte-compile This File" emacs-lisp-byte-compile + :help "Byte compile the file containing the current buffer")) + (bindings--define-key menu-map [separator-eval] menu-bar-separator) + (bindings--define-key menu-map [ielm] + '(menu-item "Interactive Expression Evaluation" ielm + :help "Interactively evaluate Emacs Lisp expressions")) + (bindings--define-key menu-map [eval-buffer] + '(menu-item "Evaluate Buffer" eval-buffer + :help "Execute the current buffer as Lisp code")) + (bindings--define-key menu-map [eval-region] + '(menu-item "Evaluate Region" eval-region + :help "Execute the region as Lisp code" + :enable mark-active)) + (bindings--define-key menu-map [eval-sexp] + '(menu-item "Evaluate Last S-expression" eval-last-sexp + :help "Evaluate sexp before point; print value in echo area")) + (bindings--define-key menu-map [separator-format] menu-bar-separator) + (bindings--define-key menu-map [comment-region] + '(menu-item "Comment Out Region" comment-region + :help "Comment or uncomment each line in the region" + :enable mark-active)) + (bindings--define-key menu-map [indent-region] + '(menu-item "Indent Region" indent-region + :help "Indent each nonblank line in the region" + :enable mark-active)) + (bindings--define-key menu-map [indent-line] + '(menu-item "Indent Line" lisp-indent-line)) + map) + "Keymap for Emacs Lisp mode. +All commands in `lisp-mode-shared-map' are inherited by this map.") + +(defun emacs-lisp-byte-compile () + "Byte compile the file containing the current buffer." + (interactive) + (if buffer-file-name + (byte-compile-file buffer-file-name) + (error "The buffer must be saved in a file first"))) + +(defun emacs-lisp-byte-compile-and-load () + "Byte-compile the current file (if it has changed), then load compiled code." + (interactive) + (or buffer-file-name + (error "The buffer must be saved in a file first")) + (require 'bytecomp) + ;; Recompile if file or buffer has changed since last compilation. + (if (and (buffer-modified-p) + (y-or-n-p (format "Save buffer %s first? " (buffer-name)))) + (save-buffer)) + (byte-recompile-file buffer-file-name nil 0 t)) + +(defun emacs-lisp-macroexpand () + "Macroexpand the form after point. +Comments in the form will be lost." + (interactive) + (let* ((start (point)) + (exp (read (current-buffer))) + ;; Compute it before, since it may signal errors. + (new (macroexpand exp))) + (if (equal exp new) + (message "Not a macro call, nothing to expand") + (delete-region start (point)) + (pp new (current-buffer)) + (if (bolp) (delete-char -1)) + (indent-region start (point))))) + +(defcustom emacs-lisp-mode-hook nil + "Hook run when entering Emacs Lisp mode." + :options '(eldoc-mode imenu-add-menubar-index checkdoc-minor-mode) + :type 'hook + :group 'lisp) + +;;;###autoload +(define-derived-mode emacs-lisp-mode prog-mode "Emacs-Lisp" + "Major mode for editing Lisp code to run in Emacs. +Commands: +Delete converts tabs to spaces as it moves back. +Blank lines separate paragraphs. Semicolons start comments. + +\\{emacs-lisp-mode-map}" + :group 'lisp + (lisp-mode-variables nil nil 'elisp) + (setq imenu-case-fold-search nil) + (setq-local eldoc-documentation-function + #'elisp-eldoc-documentation-function) + (add-hook 'completion-at-point-functions + #'elisp-completion-at-point nil 'local)) + +;;; Completion at point for Elisp + +(defun elisp--local-variables-1 (vars sexp) + "Return the vars locally bound around the witness, or nil if not found." + (let (res) + (while + (unless + (setq res + (pcase sexp + (`(,(or `let `let*) ,bindings) + (let ((vars vars)) + (when (eq 'let* (car sexp)) + (dolist (binding (cdr (reverse bindings))) + (push (or (car-safe binding) binding) vars))) + (elisp--local-variables-1 + vars (car (cdr-safe (car (last bindings))))))) + (`(,(or `let `let*) ,bindings . ,body) + (let ((vars vars)) + (dolist (binding bindings) + (push (or (car-safe binding) binding) vars)) + (elisp--local-variables-1 vars (car (last body))))) + (`(lambda ,_) (setq sexp nil)) + (`(lambda ,args . ,body) + (elisp--local-variables-1 + (append args vars) (car (last body)))) + (`(condition-case ,_ ,e) (elisp--local-variables-1 vars e)) + (`(condition-case ,v ,_ . ,catches) + (elisp--local-variables-1 + (cons v vars) (cdr (car (last catches))))) + (`(,_ . ,_) + (elisp--local-variables-1 vars (car (last sexp)))) + (`elisp--witness--lisp (or vars '(nil))) + (_ nil))) + (setq sexp (ignore-errors (butlast sexp))))) + res)) + +(defun elisp--local-variables () + "Return a list of locally let-bound variables at point." + (save-excursion + (skip-syntax-backward "w_") + (let* ((ppss (syntax-ppss)) + (txt (buffer-substring-no-properties (or (car (nth 9 ppss)) (point)) + (or (nth 8 ppss) (point)))) + (closer ())) + (dolist (p (nth 9 ppss)) + (push (cdr (syntax-after p)) closer)) + (setq closer (apply #'string closer)) + (let* ((sexp (condition-case nil + (car (read-from-string + (concat txt "elisp--witness--lisp" closer))) + (end-of-file nil))) + (macroexpand-advice (lambda (expander form &rest args) + (condition-case nil + (apply expander form args) + (error form)))) + (sexp + (unwind-protect + (progn + (advice-add 'macroexpand :around macroexpand-advice) + (macroexpand-all sexp)) + (advice-remove 'macroexpand macroexpand-advice))) + (vars (elisp--local-variables-1 nil sexp))) + (delq nil + (mapcar (lambda (var) + (and (symbolp var) + (not (string-match (symbol-name var) "\\`[&_]")) + ;; Eliminate uninterned vars. + (intern-soft var) + var)) + vars)))))) + +(defvar elisp--local-variables-completion-table + ;; Use `defvar' rather than `defconst' since defconst would purecopy this + ;; value, which would doubly fail: it would fail because purecopy can't + ;; handle the recursive bytecode object, and it would fail because it would + ;; move `lastpos' and `lastvars' to pure space where they'd be immutable! + (let ((lastpos nil) (lastvars nil)) + (letrec ((hookfun (lambda () + (setq lastpos nil) + (remove-hook 'post-command-hook hookfun)))) + (completion-table-dynamic + (lambda (_string) + (save-excursion + (skip-syntax-backward "_w") + (let ((newpos (cons (point) (current-buffer)))) + (unless (equal lastpos newpos) + (add-hook 'post-command-hook hookfun) + (setq lastpos newpos) + (setq lastvars + (mapcar #'symbol-name (elisp--local-variables)))))) + lastvars))))) + +(defun elisp--expect-function-p (pos) + "Return non-nil if the symbol at point is expected to be a function." + (or + (and (eq (char-before pos) ?') + (eq (char-before (1- pos)) ?#)) + (save-excursion + (let ((parent (nth 1 (syntax-ppss pos)))) + (when parent + (goto-char parent) + (and + (looking-at (concat "(\\(cl-\\)?" + (regexp-opt '("declare-function" + "function" "defadvice" + "callf" "callf2" + "defsetf")) + "[ \t\r\n]+")) + (eq (match-end 0) pos))))))) + +(defun elisp--form-quoted-p (pos) + "Return non-nil if the form at POS is not evaluated. +It can be quoted, or be inside a quoted form." + ;; FIXME: Do some macro expansion maybe. + (save-excursion + (let ((state (syntax-ppss pos))) + (or (nth 8 state) ; Code inside strings usually isn't evaluated. + ;; FIXME: The 9th element is undocumented. + (let ((nesting (cons (point) (reverse (nth 9 state)))) + res) + (while (and nesting (not res)) + (goto-char (pop nesting)) + (cond + ((or (eq (char-after) ?\[) + (progn + (skip-chars-backward " ") + (memq (char-before) '(?' ?`)))) + (setq res t)) + ((eq (char-before) ?,) + (setq nesting nil)))) + res))))) + +;; FIXME: Support for Company brings in features which straddle eldoc. +;; We should consolidate this, so that major modes can provide all that +;; data all at once: +;; - a function to extract "the reference at point" (may be more complex +;; than a mere string, to distinguish various namespaces). +;; - a function to jump to such a reference. +;; - a function to show the signature/interface of such a reference. +;; - a function to build a help-buffer about that reference. +;; FIXME: Those functions should also be used by the normal completion code in +;; the *Completions* buffer. + +(defun elisp--company-doc-buffer (str) + (let ((symbol (intern-soft str))) + ;; FIXME: we really don't want to "display-buffer and then undo it". + (save-window-excursion + ;; Make sure we don't display it in another frame, otherwise + ;; save-window-excursion won't be able to undo it. + (let ((display-buffer-overriding-action + '(nil . ((inhibit-switch-frame . t))))) + (ignore-errors + (cond + ((fboundp symbol) (describe-function symbol)) + ((boundp symbol) (describe-variable symbol)) + ((featurep symbol) (describe-package symbol)) + ((facep symbol) (describe-face symbol)) + (t (signal 'user-error nil))) + (help-buffer)))))) + +(defun elisp--company-doc-string (str) + (let* ((symbol (intern-soft str)) + (doc (if (fboundp symbol) + (documentation symbol t) + (documentation-property symbol 'variable-documentation t)))) + (and (stringp doc) + (string-match ".*$" doc) + (match-string 0 doc)))) + +(declare-function find-library-name "find-func" (library)) + +(defun elisp--company-location (str) + (let ((sym (intern-soft str))) + (cond + ((fboundp sym) (find-definition-noselect sym nil)) + ((boundp sym) (find-definition-noselect sym 'defvar)) + ((featurep sym) + (require 'find-func) + (cons (find-file-noselect (find-library-name + (symbol-name sym))) + 0)) + ((facep sym) (find-definition-noselect sym 'defface))))) + +(defun elisp-completion-at-point () + "Function used for `completion-at-point-functions' in `emacs-lisp-mode'." + (with-syntax-table emacs-lisp-mode-syntax-table + (let* ((pos (point)) + (beg (condition-case nil + (save-excursion + (backward-sexp 1) + (skip-syntax-forward "'") + (point)) + (scan-error pos))) + (end + (unless (or (eq beg (point-max)) + (member (char-syntax (char-after beg)) + '(?\s ?\" ?\( ?\)))) + (condition-case nil + (save-excursion + (goto-char beg) + (forward-sexp 1) + (skip-chars-backward "'") + (when (>= (point) pos) + (point))) + (scan-error pos)))) + ;; t if in function position. + (funpos (eq (char-before beg) ?\())) + (when (and end (or (not (nth 8 (syntax-ppss))) + (eq (char-before beg) ?`))) + (let ((table-etc + (if (not funpos) + ;; FIXME: We could look at the first element of the list and + ;; use it to provide a more specific completion table in some + ;; cases. E.g. filter out keywords that are not understood by + ;; the macro/function being called. + (cond + ((elisp--expect-function-p beg) + (list nil obarray + :predicate #'fboundp + :company-doc-buffer #'elisp--company-doc-buffer + :company-docsig #'elisp--company-doc-string + :company-location #'elisp--company-location)) + ((elisp--form-quoted-p beg) + (list nil obarray + ;; Don't include all symbols + ;; (bug#16646). + :predicate (lambda (sym) + (or (boundp sym) + (fboundp sym) + (symbol-plist sym))) + :annotation-function + (lambda (str) (if (fboundp (intern-soft str)) " <f>")) + :company-doc-buffer #'elisp--company-doc-buffer + :company-docsig #'elisp--company-doc-string + :company-location #'elisp--company-location)) + (t + (list nil (completion-table-merge + elisp--local-variables-completion-table + (apply-partially #'completion-table-with-predicate + obarray + #'boundp + 'strict)) + :company-doc-buffer #'elisp--company-doc-buffer + :company-docsig #'elisp--company-doc-string + :company-location #'elisp--company-location))) + ;; Looks like a funcall position. Let's double check. + (save-excursion + (goto-char (1- beg)) + (let ((parent + (condition-case nil + (progn (up-list -1) (forward-char 1) + (let ((c (char-after))) + (if (eq c ?\() ?\( + (if (memq (char-syntax c) '(?w ?_)) + (read (current-buffer)))))) + (error nil)))) + (pcase parent + ;; FIXME: Rather than hardcode special cases here, + ;; we should use something like a symbol-property. + (`declare + (list t (mapcar (lambda (x) (symbol-name (car x))) + (delete-dups + ;; FIXME: We should include some + ;; docstring with each entry. + (append + macro-declarations-alist + defun-declarations-alist))))) + ((and (or `condition-case `condition-case-unless-debug) + (guard (save-excursion + (ignore-errors + (forward-sexp 2) + (< (point) beg))))) + (list t obarray + :predicate (lambda (sym) (get sym 'error-conditions)))) + ((and ?\( + (guard (save-excursion + (goto-char (1- beg)) + (up-list -1) + (forward-symbol -1) + (looking-at "\\_<let\\*?\\_>")))) + (list t obarray + :predicate #'boundp + :company-doc-buffer #'elisp--company-doc-buffer + :company-docsig #'elisp--company-doc-string + :company-location #'elisp--company-location)) + (_ (list nil obarray + :predicate #'fboundp + :company-doc-buffer #'elisp--company-doc-buffer + :company-docsig #'elisp--company-doc-string + :company-location #'elisp--company-location + )))))))) + (nconc (list beg end) + (if (null (car table-etc)) + (cdr table-etc) + (cons + (if (memq (char-syntax (or (char-after end) ?\s)) + '(?\s ?>)) + (cadr table-etc) + (apply-partially 'completion-table-with-terminator + " " (cadr table-etc))) + (cddr table-etc))))))))) + +(define-obsolete-function-alias + 'lisp-completion-at-point 'elisp-completion-at-point "25.1") + +;;; Elisp Interaction mode + +(defvar lisp-interaction-mode-map + (let ((map (make-sparse-keymap)) + (menu-map (make-sparse-keymap "Lisp-Interaction"))) + (set-keymap-parent map lisp-mode-shared-map) + (define-key map "\e\C-x" 'eval-defun) + (define-key map "\e\C-q" 'indent-pp-sexp) + (define-key map "\e\t" 'completion-at-point) + (define-key map "\n" 'eval-print-last-sexp) + (bindings--define-key map [menu-bar lisp-interaction] + (cons "Lisp-Interaction" menu-map)) + (bindings--define-key menu-map [eval-defun] + '(menu-item "Evaluate Defun" eval-defun + :help "Evaluate the top-level form containing point, or after point")) + (bindings--define-key menu-map [eval-print-last-sexp] + '(menu-item "Evaluate and Print" eval-print-last-sexp + :help "Evaluate sexp before point; print value into current buffer")) + (bindings--define-key menu-map [edebug-defun-lisp-interaction] + '(menu-item "Instrument Function for Debugging" edebug-defun + :help "Evaluate the top level form point is in, stepping through with Edebug" + :keys "C-u C-M-x")) + (bindings--define-key menu-map [indent-pp-sexp] + '(menu-item "Indent or Pretty-Print" indent-pp-sexp + :help "Indent each line of the list starting just after point, or prettyprint it")) + (bindings--define-key menu-map [complete-symbol] + '(menu-item "Complete Lisp Symbol" completion-at-point + :help "Perform completion on Lisp symbol preceding point")) + map) + "Keymap for Lisp Interaction mode. +All commands in `lisp-mode-shared-map' are inherited by this map.") + +(define-derived-mode lisp-interaction-mode emacs-lisp-mode "Lisp Interaction" + "Major mode for typing and evaluating Lisp forms. +Like Lisp mode except that \\[eval-print-last-sexp] evals the Lisp expression +before point, and prints its value into the buffer, advancing point. +Note that printing is controlled by `eval-expression-print-length' +and `eval-expression-print-level'. + +Commands: +Delete converts tabs to spaces as it moves back. +Paragraphs are separated only by blank lines. +Semicolons start comments. + +\\{lisp-interaction-mode-map}" + :abbrev-table nil) + +;;; Emacs Lisp Byte-Code mode + +(eval-and-compile + (defconst emacs-list-byte-code-comment-re + (concat "\\(#\\)@\\([0-9]+\\) " + ;; Make sure it's a docstring and not a lazy-loaded byte-code. + "\\(?:[^(]\\|([^\"]\\)"))) + +(defun elisp--byte-code-comment (end &optional _point) + "Try to syntactically mark the #@NNN ....^_ docstrings in byte-code files." + (let ((ppss (syntax-ppss))) + (when (and (nth 4 ppss) + (eq (char-after (nth 8 ppss)) ?#)) + (let* ((n (save-excursion + (goto-char (nth 8 ppss)) + (when (looking-at emacs-list-byte-code-comment-re) + (string-to-number (match-string 2))))) + ;; `maxdiff' tries to make sure the loop below terminates. + (maxdiff n)) + (when n + (let* ((bchar (match-end 2)) + (b (position-bytes bchar))) + (goto-char (+ b n)) + (while (let ((diff (- (position-bytes (point)) b n))) + (unless (zerop diff) + (when (> diff maxdiff) (setq diff maxdiff)) + (forward-char (- diff)) + (setq maxdiff (if (> diff 0) diff + (max (1- maxdiff) 1))) + t)))) + (if (<= (point) end) + (put-text-property (1- (point)) (point) + 'syntax-table + (string-to-syntax "> b")) + (goto-char end))))))) + +(defun elisp-byte-code-syntax-propertize (start end) + (elisp--byte-code-comment end (point)) + (funcall + (syntax-propertize-rules + (emacs-list-byte-code-comment-re + (1 (prog1 "< b" (elisp--byte-code-comment end (point)))))) + start end)) + +;;;###autoload +(add-to-list 'auto-mode-alist '("\\.elc\\'" . elisp-byte-code-mode)) +;;;###autoload +(define-derived-mode elisp-byte-code-mode emacs-lisp-mode + "Elisp-Byte-Code" + "Major mode for *.elc files." + ;; TODO: Add way to disassemble byte-code under point. + (setq-local open-paren-in-column-0-is-defun-start nil) + (setq-local syntax-propertize-function + #'elisp-byte-code-syntax-propertize)) + + +;;; Globally accessible functionality + +(defun eval-print-last-sexp (&optional eval-last-sexp-arg-internal) + "Evaluate sexp before point; print value into current buffer. + +Normally, this function truncates long output according to the value +of the variables `eval-expression-print-length' and +`eval-expression-print-level'. With a prefix argument of zero, +however, there is no such truncation. Such a prefix argument +also causes integers to be printed in several additional formats +\(octal, hexadecimal, and character). + +If `eval-expression-debug-on-error' is non-nil, which is the default, +this command arranges for all errors to enter the debugger." + (interactive "P") + (let ((standard-output (current-buffer))) + (terpri) + (eval-last-sexp (or eval-last-sexp-arg-internal t)) + (terpri))) + + +(defun last-sexp-setup-props (beg end value alt1 alt2) + "Set up text properties for the output of `elisp--eval-last-sexp'. +BEG and END are the start and end of the output in current-buffer. +VALUE is the Lisp value printed, ALT1 and ALT2 are strings for the +alternative printed representations that can be displayed." + (let ((map (make-sparse-keymap))) + (define-key map "\C-m" 'elisp-last-sexp-toggle-display) + (define-key map [down-mouse-2] 'mouse-set-point) + (define-key map [mouse-2] 'elisp-last-sexp-toggle-display) + (add-text-properties + beg end + `(printed-value (,value ,alt1 ,alt2) + mouse-face highlight + keymap ,map + help-echo "RET, mouse-2: toggle abbreviated display" + rear-nonsticky (mouse-face keymap help-echo + printed-value))))) + + +(defun elisp-last-sexp-toggle-display (&optional _arg) + "Toggle between abbreviated and unabbreviated printed representations." + (interactive "P") + (save-restriction + (widen) + (let ((value (get-text-property (point) 'printed-value))) + (when value + (let ((beg (or (previous-single-property-change (min (point-max) (1+ (point))) + 'printed-value) + (point))) + (end (or (next-single-char-property-change (point) 'printed-value) (point))) + (standard-output (current-buffer)) + (point (point))) + (delete-region beg end) + (insert (nth 1 value)) + (or (= beg point) + (setq point (1- (point)))) + (last-sexp-setup-props beg (point) + (nth 0 value) + (nth 2 value) + (nth 1 value)) + (goto-char (min (point-max) point))))))) + +(defun prin1-char (char) ;FIXME: Move it, e.g. to simple.el. + "Return a string representing CHAR as a character rather than as an integer. +If CHAR is not a character, return nil." + (and (integerp char) + (eventp char) + (let ((c (event-basic-type char)) + (mods (event-modifiers char)) + string) + ;; Prevent ?A from turning into ?\S-a. + (if (and (memq 'shift mods) + (zerop (logand char ?\S-\^@)) + (not (let ((case-fold-search nil)) + (char-equal c (upcase c))))) + (setq c (upcase c) mods nil)) + ;; What string are we considering using? + (condition-case nil + (setq string + (concat + "?" + (mapconcat + (lambda (modif) + (cond ((eq modif 'super) "\\s-") + (t (string ?\\ (upcase (aref (symbol-name modif) 0)) ?-)))) + mods "") + (cond + ((memq c '(?\; ?\( ?\) ?\{ ?\} ?\[ ?\] ?\" ?\' ?\\)) (string ?\\ c)) + ((eq c 127) "\\C-?") + (t + (string c))))) + (error nil)) + ;; Verify the string reads a CHAR, not to some other character. + ;; If it doesn't, return nil instead. + (and string + (= (car (read-from-string string)) char) + string)))) + +(defun elisp--preceding-sexp () + "Return sexp before the point." + (let ((opoint (point)) + ignore-quotes + expr) + (save-excursion + (with-syntax-table emacs-lisp-mode-syntax-table + ;; If this sexp appears to be enclosed in `...' + ;; then ignore the surrounding quotes. + (setq ignore-quotes + (or (eq (following-char) ?\') + (eq (preceding-char) ?\'))) + (forward-sexp -1) + ;; If we were after `?\e' (or similar case), + ;; use the whole thing, not just the `e'. + (when (eq (preceding-char) ?\\) + (forward-char -1) + (when (eq (preceding-char) ??) + (forward-char -1))) + + ;; Skip over hash table read syntax. + (and (> (point) (1+ (point-min))) + (looking-back "#s" (- (point) 2)) + (forward-char -2)) + + ;; Skip over `#N='s. + (when (eq (preceding-char) ?=) + (let (labeled-p) + (save-excursion + (skip-chars-backward "0-9#=") + (setq labeled-p (looking-at "\\(#[0-9]+=\\)+"))) + (when labeled-p + (forward-sexp -1)))) + + (save-restriction + (if (and ignore-quotes (eq (following-char) ?`)) + ;; vladimir@cs.ualberta.ca 30-Jul-1997: Skip ` in `variable' so + ;; that the value is returned, not the name. + (forward-char)) + (when (looking-at ",@?") (goto-char (match-end 0))) + (narrow-to-region (point-min) opoint) + (setq expr (read (current-buffer))) + ;; If it's an (interactive ...) form, it's more useful to show how an + ;; interactive call would use it. + ;; FIXME: Is it really the right place for this? + (when (eq (car-safe expr) 'interactive) + (setq expr + `(call-interactively + (lambda (&rest args) ,expr args)))) + expr))))) +(define-obsolete-function-alias 'preceding-sexp 'elisp--preceding-sexp "25.1") + +(defun elisp--eval-last-sexp (eval-last-sexp-arg-internal) + "Evaluate sexp before point; print value in the echo area. +With argument, print output into current buffer. +With a zero prefix arg, print output with no limit on the length +and level of lists, and include additional formats for integers +\(octal, hexadecimal, and character)." + (let ((standard-output (if eval-last-sexp-arg-internal (current-buffer) t))) + ;; Setup the lexical environment if lexical-binding is enabled. + (elisp--eval-last-sexp-print-value + (eval (eval-sexp-add-defvars (elisp--preceding-sexp)) lexical-binding) + eval-last-sexp-arg-internal))) + + +(defun elisp--eval-last-sexp-print-value (value &optional eval-last-sexp-arg-internal) + (let ((unabbreviated (let ((print-length nil) (print-level nil)) + (prin1-to-string value))) + (print-length (and (not (zerop (prefix-numeric-value + eval-last-sexp-arg-internal))) + eval-expression-print-length)) + (print-level (and (not (zerop (prefix-numeric-value + eval-last-sexp-arg-internal))) + eval-expression-print-level)) + (beg (point)) + end) + (prog1 + (prin1 value) + (let ((str (eval-expression-print-format value))) + (if str (princ str))) + (setq end (point)) + (when (and (bufferp standard-output) + (or (not (null print-length)) + (not (null print-level))) + (not (string= unabbreviated + (buffer-substring-no-properties beg end)))) + (last-sexp-setup-props beg end value + unabbreviated + (buffer-substring-no-properties beg end)) + )))) + + +(defvar elisp--eval-last-sexp-fake-value (make-symbol "t")) + +(defun eval-sexp-add-defvars (exp &optional pos) + "Prepend EXP with all the `defvar's that precede it in the buffer. +POS specifies the starting position where EXP was found and defaults to point." + (setq exp (macroexpand-all exp)) ;Eager macro-expansion. + (if (not lexical-binding) + exp + (save-excursion + (unless pos (setq pos (point))) + (let ((vars ())) + (goto-char (point-min)) + (while (re-search-forward + "(def\\(?:var\\|const\\|custom\\)[ \t\n]+\\([^; '()\n\t]+\\)" + pos t) + (let ((var (intern (match-string 1)))) + (and (not (special-variable-p var)) + (save-excursion + (zerop (car (syntax-ppss (match-beginning 0))))) + (push var vars)))) + `(progn ,@(mapcar (lambda (v) `(defvar ,v)) vars) ,exp))))) + +(defun eval-last-sexp (eval-last-sexp-arg-internal) + "Evaluate sexp before point; print value in the echo area. +Interactively, with prefix argument, print output into current buffer. + +Normally, this function truncates long output according to the value +of the variables `eval-expression-print-length' and +`eval-expression-print-level'. With a prefix argument of zero, +however, there is no such truncation. Such a prefix argument +also causes integers to be printed in several additional formats +\(octal, hexadecimal, and character). + +If `eval-expression-debug-on-error' is non-nil, which is the default, +this command arranges for all errors to enter the debugger." + (interactive "P") + (if (null eval-expression-debug-on-error) + (elisp--eval-last-sexp eval-last-sexp-arg-internal) + (let ((value + (let ((debug-on-error elisp--eval-last-sexp-fake-value)) + (cons (elisp--eval-last-sexp eval-last-sexp-arg-internal) + debug-on-error)))) + (unless (eq (cdr value) elisp--eval-last-sexp-fake-value) + (setq debug-on-error (cdr value))) + (car value)))) + +(defun elisp--eval-defun-1 (form) + "Treat some expressions specially. +Reset the `defvar' and `defcustom' variables to the initial value. +\(For `defcustom', use the :set function if there is one.) +Reinitialize the face according to the `defface' specification." + ;; The code in edebug-defun should be consistent with this, but not + ;; the same, since this gets a macroexpanded form. + (cond ((not (listp form)) + form) + ((and (eq (car form) 'defvar) + (cdr-safe (cdr-safe form)) + (boundp (cadr form))) + ;; Force variable to be re-set. + `(progn (defvar ,(nth 1 form) nil ,@(nthcdr 3 form)) + (setq-default ,(nth 1 form) ,(nth 2 form)))) + ;; `defcustom' is now macroexpanded to + ;; `custom-declare-variable' with a quoted value arg. + ((and (eq (car form) 'custom-declare-variable) + (default-boundp (eval (nth 1 form) lexical-binding))) + ;; Force variable to be bound, using :set function if specified. + (let ((setfunc (memq :set form))) + (when setfunc + (setq setfunc (car-safe (cdr-safe setfunc))) + (or (functionp setfunc) (setq setfunc nil))) + (funcall (or setfunc 'set-default) + (eval (nth 1 form) lexical-binding) + ;; The second arg is an expression that evaluates to + ;; an expression. The second evaluation is the one + ;; normally performed not by normal execution but by + ;; custom-initialize-set (for example), which does not + ;; use lexical-binding. + (eval (eval (nth 2 form) lexical-binding)))) + form) + ;; `defface' is macroexpanded to `custom-declare-face'. + ((eq (car form) 'custom-declare-face) + ;; Reset the face. + (let ((face-symbol (eval (nth 1 form) lexical-binding))) + (setq face-new-frame-defaults + (assq-delete-all face-symbol face-new-frame-defaults)) + (put face-symbol 'face-defface-spec nil) + (put face-symbol 'face-override-spec nil)) + form) + ((eq (car form) 'progn) + (cons 'progn (mapcar #'elisp--eval-defun-1 (cdr form)))) + (t form))) + +(defun elisp--eval-defun () + "Evaluate defun that point is in or before. +The value is displayed in the echo area. +If the current defun is actually a call to `defvar', +then reset the variable using the initial value expression +even if the variable already has some other value. +\(Normally `defvar' does not change the variable's value +if it already has a value.\) + +Return the result of evaluation." + ;; FIXME: the print-length/level bindings should only be applied while + ;; printing, not while evaluating. + (let ((debug-on-error eval-expression-debug-on-error) + (print-length eval-expression-print-length) + (print-level eval-expression-print-level)) + (save-excursion + ;; Arrange for eval-region to "read" the (possibly) altered form. + ;; eval-region handles recording which file defines a function or + ;; variable. + (let ((standard-output t) + beg end form) + ;; Read the form from the buffer, and record where it ends. + (save-excursion + (end-of-defun) + (beginning-of-defun) + (setq beg (point)) + (setq form (read (current-buffer))) + (setq end (point))) + ;; Alter the form if necessary. + (let ((form (eval-sexp-add-defvars + (elisp--eval-defun-1 (macroexpand form))))) + (eval-region beg end standard-output + (lambda (_ignore) + ;; Skipping to the end of the specified region + ;; will make eval-region return. + (goto-char end) + form)))))) + (let ((str (eval-expression-print-format (car values)))) + (if str (princ str))) + ;; The result of evaluation has been put onto VALUES. So return it. + (car values)) + +(defun eval-defun (edebug-it) + "Evaluate the top-level form containing point, or after point. + +If the current defun is actually a call to `defvar' or `defcustom', +evaluating it this way resets the variable using its initial value +expression (using the defcustom's :set function if there is one), even +if the variable already has some other value. \(Normally `defvar' and +`defcustom' do not alter the value if there already is one.) In an +analogous way, evaluating a `defface' overrides any customizations of +the face, so that it becomes defined exactly as the `defface' expression +says. + +If `eval-expression-debug-on-error' is non-nil, which is the default, +this command arranges for all errors to enter the debugger. + +With a prefix argument, instrument the code for Edebug. + +If acting on a `defun' for FUNCTION, and the function was +instrumented, `Edebug: FUNCTION' is printed in the echo area. If not +instrumented, just FUNCTION is printed. + +If not acting on a `defun', the result of evaluation is displayed in +the echo area. This display is controlled by the variables +`eval-expression-print-length' and `eval-expression-print-level', +which see." + (interactive "P") + (cond (edebug-it + (require 'edebug) + (eval-defun (not edebug-all-defs))) + (t + (if (null eval-expression-debug-on-error) + (elisp--eval-defun) + (let (new-value value) + (let ((debug-on-error elisp--eval-last-sexp-fake-value)) + (setq value (elisp--eval-defun)) + (setq new-value debug-on-error)) + (unless (eq elisp--eval-last-sexp-fake-value new-value) + (setq debug-on-error new-value)) + value))))) + +;;; ElDoc Support + +(defvar elisp--eldoc-last-data (make-vector 3 nil) + "Bookkeeping; elements are as follows: + 0 - contains the last symbol read from the buffer. + 1 - contains the string last displayed in the echo area for variables, + or argument string for functions. + 2 - 'function if function args, 'variable if variable documentation.") + +(defun elisp-eldoc-documentation-function () + "`eldoc-documentation-function' (which see) for Emacs Lisp." + (let ((current-symbol (elisp--current-symbol)) + (current-fnsym (elisp--fnsym-in-current-sexp))) + (cond ((null current-fnsym) + nil) + ((eq current-symbol (car current-fnsym)) + (or (apply #'elisp--get-fnsym-args-string current-fnsym) + (elisp--get-var-docstring current-symbol))) + (t + (or (elisp--get-var-docstring current-symbol) + (apply #'elisp--get-fnsym-args-string current-fnsym)))))) + +(defun elisp--get-fnsym-args-string (sym &optional index) + "Return a string containing the parameter list of the function SYM. +If SYM is a subr and no arglist is obtainable from the docstring +or elsewhere, return a 1-line docstring." + (let ((argstring + (cond + ((not (and sym (symbolp sym) (fboundp sym))) nil) + ((and (eq sym (aref elisp--eldoc-last-data 0)) + (eq 'function (aref elisp--eldoc-last-data 2))) + (aref elisp--eldoc-last-data 1)) + (t + (let* ((advertised (gethash (indirect-function sym) + advertised-signature-table t)) + doc + (args + (cond + ((listp advertised) advertised) + ((setq doc (help-split-fundoc (documentation sym t) sym)) + (car doc)) + (t (help-function-arglist sym))))) + ;; Stringify, and store before highlighting, downcasing, etc. + ;; FIXME should truncate before storing. + (elisp--last-data-store sym (elisp--function-argstring args) + 'function)))))) + ;; Highlight, truncate. + (if argstring + (elisp--highlight-function-argument sym argstring index)))) + +(defun elisp--highlight-function-argument (sym args index) + "Highlight argument INDEX in ARGS list for function SYM. +In the absence of INDEX, just call `elisp--docstring-format-sym-doc'." + ;; FIXME: This should probably work on the list representation of `args' + ;; rather than its string representation. + ;; FIXME: This function is much too long, we need to split it up! + (let ((start nil) + (end 0) + (argument-face 'eldoc-highlight-function-argument) + (args-lst (mapcar (lambda (x) + (replace-regexp-in-string + "\\`[(]\\|[)]\\'" "" x)) + (split-string args)))) + ;; Find the current argument in the argument string. We need to + ;; handle `&rest' and informal `...' properly. + ;; + ;; FIXME: What to do with optional arguments, like in + ;; (defun NAME ARGLIST [DOCSTRING] BODY...) case? + ;; The problem is there is no robust way to determine if + ;; the current argument is indeed a docstring. + + ;; When `&key' is used finding position based on `index' + ;; would be wrong, so find the arg at point and determine + ;; position in ARGS based on this current arg. + (when (string-match "&key" args) + (let* (case-fold-search + key-have-value + (sym-name (symbol-name sym)) + (cur-w (current-word)) + (args-lst-ak (cdr (member "&key" args-lst))) + (limit (save-excursion + (when (re-search-backward sym-name nil t) + (match-end 0)))) + (cur-a (if (and cur-w (string-match ":\\([^ ()]*\\)" cur-w)) + (substring cur-w 1) + (save-excursion + (let (split) + (when (re-search-backward ":\\([^()\n]*\\)" limit t) + (setq split (split-string (match-string 1) " " t)) + (prog1 (car split) + (when (cdr split) + (setq key-have-value t)))))))) + ;; If `cur-a' is not one of `args-lst-ak' + ;; assume user is entering an unknown key + ;; referenced in last position in signature. + (other-key-arg (and (stringp cur-a) + args-lst-ak + (not (member (upcase cur-a) args-lst-ak)) + (upcase (car (last args-lst-ak)))))) + (unless (string= cur-w sym-name) + ;; The last keyword have already a value + ;; i.e :foo a b and cursor is at b. + ;; If signature have also `&rest' + ;; (assume it is after the `&key' section) + ;; go to the arg after `&rest'. + (if (and key-have-value + (save-excursion + (not (re-search-forward ":.*" (point-at-eol) t))) + (string-match "&rest \\([^ ()]*\\)" args)) + (setq index nil ; Skip next block based on positional args. + start (match-beginning 1) + end (match-end 1)) + ;; If `cur-a' is nil probably cursor is on a positional arg + ;; before `&key', in this case, exit this block and determine + ;; position with `index'. + (when (and cur-a ; A keyword arg (dot removed) or nil. + (or (string-match + (concat "\\_<" (upcase cur-a) "\\_>") args) + (string-match + (concat "\\_<" other-key-arg "\\_>") args))) + (setq index nil ; Skip next block based on positional args. + start (match-beginning 0) + end (match-end 0))))))) + ;; Handle now positional arguments. + (while (and index (>= index 1)) + (if (string-match "[^ ()]+" args end) + (progn + (setq start (match-beginning 0) + end (match-end 0)) + (let ((argument (match-string 0 args))) + (cond ((string= argument "&rest") + ;; All the rest arguments are the same. + (setq index 1)) + ((string= argument "&optional")) ; Skip. + ((string= argument "&allow-other-keys")) ; Skip. + ;; Back to index 0 in ARG1 ARG2 ARG2 ARG3 etc... + ;; like in `setq'. + ((or (and (string-match-p "\\.\\.\\.$" argument) + (string= argument (car (last args-lst)))) + (and (string-match-p "\\.\\.\\.$" + (substring args 1 (1- (length args)))) + (= (length (remove "..." args-lst)) 2) + (> index 1) (eq (logand index 1) 1))) + (setq index 0)) + (t + (setq index (1- index)))))) + (setq end (length args) + start (1- end) + argument-face 'font-lock-warning-face + index 0))) + (let ((doc args)) + (when start + (setq doc (copy-sequence args)) + (add-text-properties start end (list 'face argument-face) doc)) + (setq doc (elisp--docstring-format-sym-doc + sym doc (if (functionp sym) 'font-lock-function-name-face + 'font-lock-keyword-face))) + doc))) + +;; Return a string containing a brief (one-line) documentation string for +;; the variable. +(defun elisp--get-var-docstring (sym) + (cond ((not sym) nil) + ((and (eq sym (aref elisp--eldoc-last-data 0)) + (eq 'variable (aref elisp--eldoc-last-data 2))) + (aref elisp--eldoc-last-data 1)) + (t + (let ((doc (documentation-property sym 'variable-documentation t))) + (when doc + (let ((doc (elisp--docstring-format-sym-doc + sym (elisp--docstring-first-line doc) + 'font-lock-variable-name-face))) + (elisp--last-data-store sym doc 'variable))))))) + +(defun elisp--last-data-store (symbol doc type) + (aset elisp--eldoc-last-data 0 symbol) + (aset elisp--eldoc-last-data 1 doc) + (aset elisp--eldoc-last-data 2 type) + doc) + +;; Note that any leading `*' in the docstring (which indicates the variable +;; is a user option) is removed. +(defun elisp--docstring-first-line (doc) + (and (stringp doc) + (substitute-command-keys + (save-match-data + ;; Don't use "^" in the regexp below since it may match + ;; anywhere in the doc-string. + (let ((start (if (string-match "\\`\\*" doc) (match-end 0) 0))) + (cond ((string-match "\n" doc) + (substring doc start (match-beginning 0))) + ((zerop start) doc) + (t (substring doc start)))))))) + +(defvar eldoc-echo-area-use-multiline-p) + +;; If the entire line cannot fit in the echo area, the symbol name may be +;; truncated or eliminated entirely from the output to make room for the +;; description. +(defun elisp--docstring-format-sym-doc (sym doc face) + (save-match-data + (let* ((name (symbol-name sym)) + (ea-multi eldoc-echo-area-use-multiline-p) + ;; Subtract 1 from window width since emacs will not write + ;; any chars to the last column, or in later versions, will + ;; cause a wraparound and resize of the echo area. + (ea-width (1- (window-width (minibuffer-window)))) + (strip (- (+ (length name) (length ": ") (length doc)) ea-width))) + (cond ((or (<= strip 0) + (eq ea-multi t) + (and ea-multi (> (length doc) ea-width))) + (format "%s: %s" (propertize name 'face face) doc)) + ((> (length doc) ea-width) + (substring (format "%s" doc) 0 ea-width)) + ((>= strip (length name)) + (format "%s" doc)) + (t + ;; Show the end of the partial symbol name, rather + ;; than the beginning, since the former is more likely + ;; to be unique given package namespace conventions. + (setq name (substring name strip)) + (format "%s: %s" (propertize name 'face face) doc)))))) + + +;; Return a list of current function name and argument index. +(defun elisp--fnsym-in-current-sexp () + (save-excursion + (let ((argument-index (1- (elisp--beginning-of-sexp)))) + ;; If we are at the beginning of function name, this will be -1. + (when (< argument-index 0) + (setq argument-index 0)) + ;; Don't do anything if current word is inside a string. + (if (= (or (char-after (1- (point))) 0) ?\") + nil + (list (elisp--current-symbol) argument-index))))) + +;; Move to the beginning of current sexp. Return the number of nested +;; sexp the point was over or after. +(defun elisp--beginning-of-sexp () + (let ((parse-sexp-ignore-comments t) + (num-skipped-sexps 0)) + (condition-case _ + (progn + ;; First account for the case the point is directly over a + ;; beginning of a nested sexp. + (condition-case _ + (let ((p (point))) + (forward-sexp -1) + (forward-sexp 1) + (when (< (point) p) + (setq num-skipped-sexps 1))) + (error)) + (while + (let ((p (point))) + (forward-sexp -1) + (when (< (point) p) + (setq num-skipped-sexps (1+ num-skipped-sexps)))))) + (error)) + num-skipped-sexps)) + +;; returns nil unless current word is an interned symbol. +(defun elisp--current-symbol () + (let ((c (char-after (point)))) + (and c + (memq (char-syntax c) '(?w ?_)) + (intern-soft (current-word))))) + +(defun elisp--function-argstring (arglist) + "Return ARGLIST as a string enclosed by (). +ARGLIST is either a string, or a list of strings or symbols." + (let ((str (cond ((stringp arglist) arglist) + ((not (listp arglist)) nil) + (t (format "%S" (help-make-usage 'toto arglist)))))) + (if (and str (string-match "\\`([^ )]+ ?" str)) + (replace-match "(" t t str) + str))) + +(provide 'elisp-mode) +;;; elisp-mode.el ends here diff --git a/lisp/progmodes/grep.el b/lisp/progmodes/grep.el index d60534074b9..fd48adc70c6 100644 --- a/lisp/progmodes/grep.el +++ b/lisp/progmodes/grep.el @@ -76,11 +76,10 @@ in grep buffers, so if you have globally disabled font-lock-mode, you will not get highlighting. This option sets the environment variable GREP_COLORS to specify -markers for highlighting and GREP_OPTIONS to add the --color -option in front of any explicit grep options before starting -the grep. +markers for highlighting and adds the --color option in front of +any explicit grep options before starting the grep. -When this option is `auto', grep uses `--color=auto' to highlight +When this option is `auto', grep uses `--color' to highlight matches only when it outputs to a terminal (when `grep' is the last command in the pipe), thus avoiding the use of any potentially-harmful escape sequences when standard output goes to a file or pipe. @@ -96,7 +95,7 @@ To change the default value, use Customize or call the function :type '(choice (const :tag "Do not highlight matches with grep markers" nil) (const :tag "Highlight matches with grep markers" t) (const :tag "Use --color=always" always) - (const :tag "Use --color=auto" auto) + (const :tag "Use --color" auto) (other :tag "Not Set" auto-detect)) :set 'grep-apply-setting :version "22.1" @@ -344,16 +343,11 @@ Notice that using \\[next-error] or \\[compile-goto-error] modifies ;;;###autoload (defconst grep-regexp-alist '( - ;; Rule to match column numbers is commented out since no known grep - ;; produces them - ;; ("^\\(.+?\\)\\(:[ \t]*\\)\\([1-9][0-9]*\\)\\2\\(?:\\([1-9][0-9]*\\)\\(?:-\\([1-9][0-9]*\\)\\)?\\2\\)?" - ;; 1 3 (4 . 5)) - ;; Note that we want to use as tight a regexp as we can to try and - ;; handle weird file names (with colons in them) as well as possible. - ;; E.g. we use [1-9][0-9]* rather than [0-9]+ so as to accept ":034:" - ;; in file names. - ("^\\(.+?\\)\\(:[ \t]*\\)\\([1-9][0-9]*\\)\\2" - 1 3 + ;; Use a tight regexp to handle weird file names (with colons + ;; in them) as well as possible. E.g., use [1-9][0-9]* rather + ;; than [0-9]+ so as to accept ":034:" in file names. + ("^\\(.*?[^/\n]\\):[ \t]*\\([1-9][0-9]*\\)[ \t]*:" + 1 2 ;; Calculate column positions (col . end-col) of first grep match on a line ((lambda () (when grep-highlight-matches @@ -466,10 +460,6 @@ Set up `compilation-exit-message-function' and run `grep-setup-hook'." ;; `setenv' modifies `process-environment' let-bound in `compilation-start' ;; Any TERM except "dumb" allows GNU grep to use `--color=auto' (setenv "TERM" "emacs-grep") - (setenv "GREP_OPTIONS" - (concat (getenv "GREP_OPTIONS") - " --color=" (if (eq grep-highlight-matches 'always) - "always" "auto"))) ;; GREP_COLOR is used in GNU grep 2.5.1, but deprecated in later versions (setenv "GREP_COLOR" "01;31") ;; GREP_COLORS is used in GNU grep 2.5.2 and later versions @@ -569,7 +559,13 @@ This function is called from `compilation-filter-hook'." (unless (and grep-command grep-find-command grep-template grep-find-template) (let ((grep-options - (concat (if grep-use-null-device "-n" "-nH") + (concat (and grep-highlight-matches + (grep-probe grep-program + `(nil nil nil "--color" "x" ,null-device) + nil 1) + (if (eq grep-highlight-matches 'always) + "--color=always " "--color ")) + (if grep-use-null-device "-n" "-nH") (if (grep-probe grep-program `(nil nil nil "-e" "foo" ,null-device) nil 1) diff --git a/lisp/progmodes/gud.el b/lisp/progmodes/gud.el index 09085f71d62..24d5469adc3 100644 --- a/lisp/progmodes/gud.el +++ b/lisp/progmodes/gud.el @@ -256,9 +256,8 @@ Used to gray out relevant toolbar icons.") ([menu-bar file] . undefined)))) "Map used in visited files.") -(let ((m (assq 'gud-minor-mode minor-mode-map-alist))) - (if m (setcdr m gud-minor-mode-map) - (push (cons 'gud-minor-mode gud-minor-mode-map) minor-mode-map-alist))) +(setf (alist-get 'gud-minor-mode minor-mode-map-alist) + gud-minor-mode-map) (defvar gud-mode-map ;; Will inherit from comint-mode via define-derived-mode. @@ -810,18 +809,6 @@ CONTEXT is the text before COMMAND on the line." (current-buffer) ;; From string-match above. (length context)))) - ;; `gud-gdb-run-command-fetch-lines' has some nasty side-effects on the - ;; buffer (via `gud-delete-prompt-marker'): it removes the prompt and then - ;; re-adds it later, thus messing up markers and overlays along the way. - ;; This is a problem for completion-in-region which uses an overlay to - ;; create a field. - ;; So we restore completion-in-region's field if needed. - ;; FIXME: change gud-gdb-run-command-fetch-lines so it doesn't modify the - ;; buffer at all. - (when (/= start (- (point) (field-beginning))) - (dolist (ol (overlays-at (1- (point)))) - (when (eq (overlay-get ol 'field) 'completion) - (move-overlay ol (- (point) start) (overlay-end ol))))) ;; Protect against old versions of GDB. (and complete-list (string-match "^Undefined command: \"complete\"" (car complete-list)) @@ -860,7 +847,14 @@ CONTEXT is the text before COMMAND on the line." (save-excursion (skip-chars-backward "^ " (comint-line-beginning-position)) (point)))) - (list start end + ;; FIXME: `gud-gdb-run-command-fetch-lines' has some nasty side-effects on + ;; the buffer (via `gud-delete-prompt-marker'): it removes the prompt and + ;; then re-adds it later, thus messing up markers and overlays along the + ;; way (bug#18282). + ;; We use an "insert-before" marker for `start', since it's typically right + ;; after the prompt, which works around the problem, but is a hack (and + ;; comes with other downsides, e.g. if completion adds text at `start'). + (list (copy-marker start t) end (completion-table-dynamic (apply-partially gud-gdb-completion-function (buffer-substring (comint-line-beginning-position) diff --git a/lisp/progmodes/hideif.el b/lisp/progmodes/hideif.el index b1eaa6ad66c..cda421fbc86 100644 --- a/lisp/progmodes/hideif.el +++ b/lisp/progmodes/hideif.el @@ -139,7 +139,7 @@ (defcustom hide-ifdef-exclude-define-regexp nil "Ignore #define names if those names match this exclusion pattern." :type 'string - :version "24.5") + :version "25.1") (defcustom hide-ifdef-expand-reinclusion-protection t "Non-nil means don't hide an entire header file enclosed by #ifndef...#endif. @@ -161,7 +161,7 @@ be hidden. This behavior is generally undesirable. If this option is non-nil, the outermost #if is always visible." :type 'boolean - :version "24.5") + :version "25.1") (defcustom hide-ifdef-header-regexp "\\.h\\(h\\|xx\\|pp\\)?\\'" @@ -169,7 +169,7 @@ This behavior is generally undesirable. If this option is non-nil, the outermos Effective only if `hide-ifdef-expand-reinclusion-protection' is t." :type 'string :group 'hide-ifdef - :version "24.5") + :version "25.1") (defvar hide-ifdef-mode-submap ;; Set up the submap that goes after the prefix key. @@ -653,7 +653,7 @@ that form should be displayed.") (stringp id)))) (defun hif-define-operator (tokens) - "`Upgrade' hif-define xxx to '(hif-define xxx)' so it won't be subsitituted." + "`Upgrade' hif-define xxx to '(hif-define xxx)' so it won't be substituted." (let ((result nil) (tok nil)) (while (setq tok (pop tokens)) @@ -975,7 +975,7 @@ factor : '!' factor | '~' factor | '(' expr ')' | 'defined(' id ')' | (defun hif-define-macro (_parmlist _token-body) "A marker for defined macro with arguments. -This macro cannot be evaluated alone without parameters inputed." +This macro cannot be evaluated alone without parameters input." ;;TODO: input arguments at run time, use minibuffer to query all arguments (error "Argumented macro cannot be evaluated without passing any parameter")) @@ -1144,14 +1144,14 @@ preprocessing token" actual-count (length actual-parms)) (if (> formal-count actual-count) - (error "Too few parmameter for macro %S" macro-name) + (error "Too few parameters for macro %S" macro-name) (if (< formal-count actual-count) (or etc (error "Too many parameters for macro %S" macro-name)))) ;; Perform token replacement on the MACRO-BODY with the parameters (while (setq formal (pop formal-parms)) - ;; Prevent repetitive substitutation, thus cannot use `subst' + ;; Prevent repetitive substitution, thus cannot use `subst' ;; for example: ;; #define mac(a,b) (a+b) ;; #define testmac mac(b,y) @@ -1734,7 +1734,7 @@ first arg will be `hif-etc'." (or (setcdr SA expr) t) ;; Lazy evaluation, eval only if hif-lookup find it. ;; Define it anyway, even if nil it's still in list - ;; and therefore considerred defined + ;; and therefore considered defined. (push (cons (intern name) expr) hide-ifdef-env))))) ;; #undef (and name @@ -1912,7 +1912,7 @@ Return as (TOP . BOTTOM) the extent of ifdef block." (defun hide-ifdef-block (&optional arg start end) "Hide the ifdef block (true or false part) enclosing or before the cursor. -With optional prefix agument ARG, also hide the #ifdefs themselves." +With optional prefix argument ARG, also hide the #ifdefs themselves." (interactive "P\nr") (let ((hide-ifdef-lines arg)) (if mark-active diff --git a/lisp/progmodes/js.el b/lisp/progmodes/js.el index a8f0d556ec4..d7017e9eed1 100644 --- a/lisp/progmodes/js.el +++ b/lisp/progmodes/js.el @@ -3479,6 +3479,10 @@ If one hasn't been set, or if it's stale, prompt for a new one." '(when (fboundp 'folding-add-to-marks-list) (folding-add-to-marks-list 'js-mode "// {{{" "// }}}" ))) +;;;###autoload +(dolist (name (list "node" "nodejs" "gjs" "rhino")) + (add-to-list 'interpreter-mode-alist (cons (purecopy name) 'js-mode))) + (provide 'js) ;; js.el ends here diff --git a/lisp/progmodes/perl-mode.el b/lisp/progmodes/perl-mode.el index 476a98926e2..b4a96e741b7 100644 --- a/lisp/progmodes/perl-mode.el +++ b/lisp/progmodes/perl-mode.el @@ -254,7 +254,7 @@ (1 (prog1 "\"" (perl-syntax-propertize-special-constructs end)))) ;; Funny things in `sub' arg-specs like `sub myfun ($)' or `sub ($)'. ;; Be careful not to match "sub { (...) ... }". - ("\\<sub\\(?:[[:space:]]+[^{}[:punct:][:space:]]+\\)?[[:space:]]*(\\([^)]+\\))" + ("\\<sub\\(?:[\s\t\n]+\\(?:\\sw\\|\\s_\\)+\\)?[\s\t\n]*(\\([^)]+\\))" (1 ".")) ;; Turn __DATA__ trailer into a comment. ("^\\(_\\)_\\(?:DATA\\|END\\)__[ \t]*\\(?:\\(\n\\)#.-\\*-.*perl.*-\\*-\\|\n.*\\)" diff --git a/lisp/progmodes/prog-mode.el b/lisp/progmodes/prog-mode.el index 747e63f9237..5037020f94e 100644 --- a/lisp/progmodes/prog-mode.el +++ b/lisp/progmodes/prog-mode.el @@ -36,7 +36,7 @@ :group 'languages) (defcustom prog-mode-hook nil - "Normal hook run when entering Text mode and many related modes." + "Normal hook run when entering programming modes." :type 'hook :options '(flyspell-prog-mode abbrev-mode flymake-mode linum-mode prettify-symbols-mode) diff --git a/lisp/progmodes/prolog.el b/lisp/progmodes/prolog.el index 853f2d0dad2..3f98708e2e3 100644 --- a/lisp/progmodes/prolog.el +++ b/lisp/progmodes/prolog.el @@ -3139,7 +3139,7 @@ the following comma and whitespace, if any." (eq (char-before) ?_) (save-excursion (skip-chars-backward "[:alpha:]_") - (looking-at "\\<_[_[:upper:]][[:alnum:]_]*\\_>"))) + (looking-at "\\_<[_[:upper:]][[:alnum:]_]*\\_>"))) (replace-match "_") (skip-chars-forward ", \t\n"))))) diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el index 4f645ad64c8..b230992fc98 100644 --- a/lisp/progmodes/python.el +++ b/lisp/progmodes/python.el @@ -545,7 +545,7 @@ The type returned can be `comment', `string' or `paren'." (res nil)) (while (and (setq res (re-search-forward re limit t)) (or (python-syntax-context 'paren) - (equal (char-after (point-marker)) ?=)))) + (equal (char-after (point)) ?=)))) res)) (1 font-lock-variable-name-face nil nil)) ;; support for a, b, c = (1, 2, 3) @@ -1042,9 +1042,9 @@ See `python-indent-line' for details." "De-indent current line." (interactive "*") (when (and (not (python-syntax-comment-or-string-p)) - (<= (point-marker) (save-excursion + (<= (point) (save-excursion (back-to-indentation) - (point-marker))) + (point))) (> (current-column) 0)) (python-indent-line t) t)) @@ -1162,9 +1162,15 @@ the line will be re-indented automatically if needed." ((and (eq ?: last-command-event) (memq ?: electric-indent-chars) (not current-prefix-arg) + ;; Trigger electric colon only at end of line (eolp) + ;; Avoid re-indenting on extra colon (not (equal ?: (char-before (1- (point))))) - (not (python-syntax-comment-or-string-p))) + (not (python-syntax-comment-or-string-p)) + ;; Never re-indent at beginning of defun + (not (save-excursion + (python-nav-beginning-of-statement) + (python-info-looking-at-beginning-of-defun)))) (python-indent-line))))) @@ -1795,7 +1801,7 @@ It should not contain a caret (^) at the beginning." :type 'string) (define-obsolete-variable-alias - 'python-shell-enable-font-lock 'python-shell-font-lock-enable "24.5") + 'python-shell-enable-font-lock 'python-shell-font-lock-enable "25.1") (defcustom python-shell-font-lock-enable t "Should syntax highlighting be enabled in the Python shell buffer? @@ -1905,7 +1911,7 @@ detection and just returns nil." (let ((code-file (python-shell--save-temp-file code))) ;; Use `process-file' as it is remote-host friendly. (process-file - (executable-find python-shell-interpreter) + python-shell-interpreter code-file '(t nil) nil @@ -2061,11 +2067,14 @@ uniqueness for different types of configurations." (or python-shell-virtualenv-path "") (mapconcat #'identity python-shell-exec-path ""))))) -(defun python-shell-parse-command () +(defun python-shell-parse-command () ;FIXME: why name it "parse"? "Calculate the string used to execute the inferior Python process." + ;; FIXME: process-environment doesn't seem to be used anywhere within + ;; this let. (let ((process-environment (python-shell-calculate-process-environment)) (exec-path (python-shell-calculate-exec-path))) (format "%s %s" + ;; FIXME: Why executable-find? (executable-find python-shell-interpreter) python-shell-interpreter-args))) @@ -2101,11 +2110,10 @@ uniqueness for different types of configurations." (defun python-shell-calculate-exec-path () "Calculate exec path given `python-shell-virtualenv-path'." (let ((path (append python-shell-exec-path - exec-path nil))) + exec-path nil))) ;FIXME: Why nil? (if (not python-shell-virtualenv-path) path - (cons (format "%s/bin" - (directory-file-name python-shell-virtualenv-path)) + (cons (expand-file-name "bin" python-shell-virtualenv-path) path)))) (defvar python-shell--package-depth 10) @@ -2145,7 +2153,7 @@ This utility is useful in situations where the output may be received in chunks, since `accept-process-output' gives no guarantees they will be grabbed in a single call. An example use case for this would be the CPython shell start-up, where the -banner and the initial prompt are received separetely." +banner and the initial prompt are received separately." (let ((regexp (or regexp comint-prompt-regexp))) (catch 'found (while t @@ -2171,7 +2179,7 @@ banner and the initial prompt are received separetely." (define-obsolete-function-alias 'python-comint-output-filter-function 'ansi-color-filter-apply - "24.5") + "25.1") (defun python-comint-postoutput-scroll-to-bottom (output) "Faster version of `comint-postoutput-scroll-to-bottom'. @@ -2391,12 +2399,8 @@ variable. python-comint-postoutput-scroll-to-bottom)) (set (make-local-variable 'compilation-error-regexp-alist) python-shell-compilation-regexp-alist) - (define-key inferior-python-mode-map [remap complete-symbol] - 'completion-at-point) (add-hook 'completion-at-point-functions - 'python-shell-completion-at-point nil 'local) - (add-to-list (make-local-variable 'comint-dynamic-complete-functions) - 'python-shell-completion-at-point) + #'python-shell-completion-at-point nil 'local) (define-key inferior-python-mode-map "\t" 'python-shell-completion-complete-or-indent) (make-local-variable 'python-pdbtrack-buffers-to-kill) @@ -2873,38 +2877,41 @@ the full statement in the case of imports." (define-obsolete-variable-alias 'python-shell-completion-pdb-string-code 'python-shell-completion-string-code - "24.5" + "25.1" "Completion string code must work for (i)pdb.") (defun python-shell-completion-get-completions (process import input) "Do completion at point using PROCESS for IMPORT or INPUT. When IMPORT is non-nil takes precedence over INPUT for completion." - (let* ((prompt - (with-current-buffer (process-buffer process) - (let ((prompt-boundaries (python-util-comint-last-prompt))) + (with-current-buffer (process-buffer process) + (let* ((prompt + ;; Get last prompt of the inferior process buffer (this + ;; intentionally avoids using `comint-last-prompt' because + ;; of incompatibilities with Emacs 24.x). + (save-excursion (buffer-substring-no-properties - (car prompt-boundaries) (cdr prompt-boundaries))))) - (completion-code - ;; Check whether a prompt matches a pdb string, an import - ;; statement or just the standard prompt and use the - ;; correct python-shell-completion-*-code string - (cond ((and (string-match - (concat "^" python-shell-prompt-pdb-regexp) prompt)) - ;; Since there are no guarantees the user will remain - ;; in the same context where completion code was sent - ;; (e.g. user steps into a function), safeguard - ;; resending completion setup continuously. - (concat python-shell-completion-setup-code - "\nprint (" python-shell-completion-string-code ")")) - ((string-match - python-shell--prompt-calculated-input-regexp prompt) - python-shell-completion-string-code) - (t nil))) - (subject (or import input))) - (and completion-code - (> (length input) 0) - (with-current-buffer (process-buffer process) + (line-beginning-position) ;End of prompt. + (re-search-backward "^")))) + (completion-code + ;; Check whether a prompt matches a pdb string, an import + ;; statement or just the standard prompt and use the + ;; correct python-shell-completion-*-code string + (cond ((and (string-match + (concat "^" python-shell-prompt-pdb-regexp) prompt)) + ;; Since there are no guarantees the user will remain + ;; in the same context where completion code was sent + ;; (e.g. user steps into a function), safeguard + ;; resending completion setup continuously. + (concat python-shell-completion-setup-code + "\nprint (" python-shell-completion-string-code ")")) + ((string-match + python-shell--prompt-calculated-input-regexp prompt) + python-shell-completion-string-code) + (t nil))) + (subject (or import input))) + (and completion-code + (> (length input) 0) (let ((completions (python-util-strip-string (python-shell-send-string-no-output @@ -2944,7 +2951,7 @@ using that one instead of current buffer's process." (define-obsolete-function-alias 'python-shell-completion-complete-at-point 'python-shell-completion-at-point - "24.5") + "25.1") (defun python-shell-completion-complete-or-indent () "Complete or indent depending on the context. @@ -2953,7 +2960,7 @@ If not try to complete." (interactive) (if (string-match "^[[:space:]]*$" (buffer-substring (comint-line-beginning-position) - (point-marker))) + (point))) (indent-for-tab-command) (completion-at-point))) @@ -3064,7 +3071,7 @@ inferior Python process is updated properly." (define-obsolete-function-alias 'python-completion-complete-at-point 'python-completion-at-point - "24.5") + "25.1") ;;; Fill paragraph @@ -3284,17 +3291,17 @@ JUSTIFY should be used (if applicable) as in `fill-paragraph'." (save-restriction (narrow-to-region (progn (while (python-syntax-context 'paren) - (goto-char (1- (point-marker)))) - (point-marker) + (goto-char (1- (point)))) (line-beginning-position)) (progn (when (not (python-syntax-context 'paren)) (end-of-line) (when (not (python-syntax-context 'paren)) (skip-syntax-backward "^)"))) - (while (python-syntax-context 'paren) - (goto-char (1+ (point-marker)))) - (point-marker))) + (while (and (python-syntax-context 'paren) + (not (eobp))) + (goto-char (1+ (point)))) + (point))) (let ((paragraph-start "\f\\|[ \t]*$") (paragraph-separate ",") (fill-paragraph-function)) @@ -3303,7 +3310,8 @@ JUSTIFY should be used (if applicable) as in `fill-paragraph'." (while (not (eobp)) (forward-line 1) (python-indent-line) - (goto-char (line-end-position)))) t) + (goto-char (line-end-position)))) + t) ;;; Skeletons @@ -4102,7 +4110,7 @@ to \"^python-\"." (cdr pair)))) (buffer-local-variables from-buffer))) -(defvar comint-last-prompt-overlay) ; Shut up, bytecompiler +(defvar comint-last-prompt-overlay) ; Shut up, byte compiler. (defun python-util-comint-last-prompt () "Return comint last prompt overlay start and end. @@ -4314,7 +4322,8 @@ Arguments START and END narrow the buffer region to work on." (add-to-list 'hs-special-modes-alist `(python-mode "^\\s-*\\(?:def\\|class\\)\\>" nil "#" ,(lambda (_arg) - (python-nav-end-of-defun)) nil)) + (python-nav-end-of-defun)) + nil)) (set (make-local-variable 'outline-regexp) (python-rx (* space) block-start)) diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el index 3b0550dccca..5631358b472 100644 --- a/lisp/progmodes/sh-script.el +++ b/lisp/progmodes/sh-script.el @@ -1051,13 +1051,11 @@ Point is at the beginning of the next line." "Search for a subshell embedded in a string. Find all the unescaped \" characters within said subshell, remembering that subshells can nest." - ;; FIXME: This can (and often does) match multiple lines, yet it makes no - ;; effort to handle multiline cases correctly, so it ends up being - ;; rather flaky. (when (eq ?\" (nth 3 (syntax-ppss))) ; Check we matched an opening quote. ;; bingo we have a $( or a ` inside a "" (let (;; `state' can be: double-quote, backquote, code. (state (if (eq (char-before) ?`) 'backquote 'code)) + (startpos (point)) ;; Stacked states in the context. (states '(double-quote))) (while (and state (progn (skip-chars-forward "^'\\\\\"`$()" limit) @@ -1088,7 +1086,12 @@ subshells can nest." (`double-quote nil) (_ (setq state (pop states))))) (_ (error "Internal error in sh-font-lock-quoted-subshell"))) - (forward-char 1))))) + (forward-char 1)) + (when (< startpos (line-beginning-position)) + (put-text-property startpos (point) 'syntax-multiline t) + (add-hook 'syntax-propertize-extend-region-functions + 'syntax-propertize-multiline nil t)) + ))) (defun sh-is-quoted-p (pos) diff --git a/lisp/progmodes/sql.el b/lisp/progmodes/sql.el index 13d4178116e..af7cb0dc2f5 100644 --- a/lisp/progmodes/sql.el +++ b/lisp/progmodes/sql.el @@ -212,11 +212,11 @@ ;; Michael Mauger <michael@mauger.com> -- improved product support ;; Drew Adams <drew.adams@oracle.com> -- Emacs 20 support ;; Harald Maier <maierh@myself.com> -- sql-send-string -;; Stefan Monnier <monnier@iro.umontreal.ca> -- font-lock corrections; +;; Stefan Monnier <monnier@iro.umontreal.ca> -- font-lock corrections; ;; code polish ;; Paul Sleigh <bat@flurf.net> -- MySQL keyword enhancement ;; Andrew Schein <andrew@andrewschein.com> -- sql-port bug -;; Ian Bjorhovde <idbjorh@dataproxy.com> -- db2 escape newlines +;; Ian Bjorhovde <idbjorh@dataproxy.com> -- db2 escape newlines ;; incorrectly enabled by default ;; Roman Scherer <roman.scherer@nugg.ad> -- Connection documentation ;; Mark Wilkinson <wilkinsonmr@gmail.com> -- file-local variables ignored @@ -282,6 +282,13 @@ file. Since that is a plaintext file, this could be dangerous." :group 'SQL :safe 'numberp) +(defcustom sql-default-directory nil + "Default directory for SQL processes." + :version "25.1" + :type '(choice (const nil) string) + :group 'SQL + :safe 'stringp) + ;; Login parameter type (define-widget 'sql-login-params 'lazy @@ -498,6 +505,18 @@ file. Since that is a plaintext file, this could be dangerous." :prompt-length 5 :syntax-alist ((?@ . "_")) :terminator ("^go" . "go")) + + (vertica + :name "Vertica" + :sqli-program sql-vertica-program + :sqli-options sql-vertica-options + :sqli-login sql-vertica-login-params + :sqli-comint-func sql-comint-vertica + :list-all ("\\d" . "\\dS") + :list-table "\\d %s" + :prompt-regexp "^\\w*=[#>] " + :prompt-length 5 + :prompt-cont-regexp "^\\w*[-(][#>] ") ) "An alist of product specific configuration settings. @@ -1221,7 +1240,9 @@ Based on `comint-mode-map'.") (define-key map (kbd "C-c C-r") 'sql-send-region) (define-key map (kbd "C-c C-s") 'sql-send-string) (define-key map (kbd "C-c C-b") 'sql-send-buffer) + (define-key map (kbd "C-c C-n") 'sql-send-line-and-next) (define-key map (kbd "C-c C-i") 'sql-product-interactive) + (define-key map (kbd "C-c C-z") 'sql-show-sqli-buffer) (define-key map (kbd "C-c C-l a") 'sql-list-all) (define-key map (kbd "C-c C-l t") 'sql-list-table) (define-key map [remap beginning-of-defun] 'sql-beginning-of-statement) @@ -3050,7 +3071,7 @@ If you call it from anywhere else, it sets the global copy of (interactive) (let ((default-buffer (sql-find-sqli-buffer))) (if (null default-buffer) - (user-error "There is no suitable SQLi buffer") + (sql-product-interactive) (let ((new-buffer (read-buffer "New SQLi buffer: " default-buffer t))) (if (null (sql-buffer-live-p new-buffer)) (user-error "Buffer %s is not a working SQLi buffer" new-buffer) @@ -3059,21 +3080,20 @@ If you call it from anywhere else, it sets the global copy of (run-hooks 'sql-set-sqli-hook))))))) (defun sql-show-sqli-buffer () - "Show the name of current SQLi buffer. + "Display the current SQLi buffer. -This is the buffer SQL strings are sent to. It is stored in the -variable `sql-buffer'. See `sql-help' on how to create such a buffer." +This is the buffer SQL strings are sent to. +It is stored in the variable `sql-buffer'. +I +See also `sql-help' on how to create such a buffer." (interactive) - (if (or (null sql-buffer) - (null (buffer-live-p (get-buffer sql-buffer)))) - (user-error "%s has no SQLi buffer set" (buffer-name (current-buffer))) - (if (null (get-buffer-process sql-buffer)) - (user-error "Buffer %s has no process" sql-buffer) - (user-error "Current SQLi buffer is %s" sql-buffer)))) + (unless (and sql-buffer (buffer-live-p (get-buffer sql-buffer)) + (get-buffer-process sql-buffer)) + (sql-set-sqli-buffer)) + (display-buffer sql-buffer)) (defun sql-make-alternate-buffer-name () "Return a string that can be used to rename a SQLi buffer. - This is used to set `sql-alternate-buffer-name' within `sql-interactive-mode'. @@ -3323,7 +3343,7 @@ to avoid deleting non-prompt output." (setq oline (replace-match "" nil nil oline) sql-output-newline-count (1- sql-output-newline-count) prompt-found t))) - + ;; If we've found all the expected prompts, stop looking (if (= sql-output-newline-count 0) (setq sql-output-newline-count nil @@ -3403,6 +3423,13 @@ to avoid deleting non-prompt output." (interactive) (sql-send-region (point-min) (point-max))) +(defun sql-send-line-and-next () + "Send the current line to the SQL process and go to the next line." + (interactive) + (sql-send-region (line-beginning-position 1) (line-beginning-position 2)) + (beginning-of-line 2) + (while (forward-comment 1))) ; skip all comments and whitespace + (defun sql-send-magic-terminator (buf str terminator) "Send TERMINATOR to buffer BUF if its not present in STR." (let (comint-input-sender-no-newline pat term) @@ -3589,7 +3616,7 @@ buffer is popped into a view window." (apply c sqlbuf outbuf enhanced arg nil)) (t (error "Unknown sql-execute item %s" c)))) (if (consp command) command (cons command nil))) - + (setq outbuf (get-buffer outbuf)) (if (zerop (buffer-size outbuf)) (kill-buffer outbuf) @@ -3597,7 +3624,11 @@ buffer is popped into a view window." (get-lru-window)))) (with-current-buffer outbuf (set-buffer-modified-p nil) - (read-only-mode +1)) + (setq-local revert-buffer-function + (lambda (_ignore-auto _noconfirm) + (sql-execute sqlbuf (buffer-name outbuf) + command enhanced arg))) + (special-mode)) (pop-to-buffer outbuf) (when one-win (shrink-window-if-larger-than-buffer))))) @@ -4164,7 +4195,9 @@ the call to \\[sql-product-interactive] with (sql-password (default-value 'sql-password)) (sql-server (default-value 'sql-server)) (sql-database (default-value 'sql-database)) - (sql-port (default-value 'sql-port))) + (sql-port (default-value 'sql-port)) + (default-directory (or sql-default-directory + default-directory))) (funcall (sql-get-product-feature product :sqli-comint-func) product (sql-get-product-feature product :sqli-options))) @@ -5039,6 +5072,46 @@ buffer. +(defcustom sql-vertica-program "vsql" + "Command to start the Vertica client." + :version "25.1" + :type 'file + :group 'SQL) + +(defcustom sql-vertica-options '("-P" "pager=off") + "List of additional options for `sql-vertica-program'. +The default value disables the internal pager." + :version "25.1" + :type '(repeat string) + :group 'SQL) + +(defcustom sql-vertica-login-params '(user password database server) + "List of login parameters needed to connect to Vertica." + :version "25.1" + :type 'sql-login-params + :group 'SQL) + +(defun sql-comint-vertica (product options) + "Create comint buffer and connect to Vertica." + (sql-comint product + (nconc + (and (not (string= "" sql-server)) + (list "-h" sql-server)) + (and (not (string= "" sql-database)) + (list "-d" sql-database)) + (and (not (string= "" sql-password)) + (list "-w" sql-password)) + (and (not (string= "" sql-user)) + (list "-U" sql-user)) + options))) + +;;;###autoload +(defun sql-vertica (&optional buffer) + "Run vsql as an inferior process." + (interactive "P") + (sql-product-interactive 'vertica buffer)) + + (provide 'sql) ;;; sql.el ends here diff --git a/lisp/progmodes/subword.el b/lisp/progmodes/subword.el index a8455c50064..e49037e41e7 100644 --- a/lisp/progmodes/subword.el +++ b/lisp/progmodes/subword.el @@ -88,7 +88,7 @@ ;;;###autoload (define-obsolete-function-alias - 'capitalized-words-mode 'subword-mode "24.5") + 'capitalized-words-mode 'subword-mode "25.1") ;;;###autoload (define-minor-mode subword-mode @@ -113,7 +113,7 @@ called a `subword'. Here are some examples: NSGraphicsContext => \"NS\", \"Graphics\" and \"Context\" This mode changes the definition of a word so that word commands -treat nomenclature boundaries as word bounaries. +treat nomenclature boundaries as word boundaries. \\{subword-mode-map}" :lighter " ," @@ -130,7 +130,7 @@ treat nomenclature boundaries as word bounaries. ;; N.B. These commands aren't used unless explicitly invoked; they're ;; here for compatibility. Today, subword-mode leaves motion commands ;; alone and uses `find-word-boundary-function-table' to change how -;; `forward-word' and other low-level commands detect word bounaries. +;; `forward-word' and other low-level commands detect word boundaries. ;; This way, all word-related activities, not just the images we ;; imagine here, get subword treatment. @@ -334,7 +334,7 @@ as parts of words: e.g., in `superword-mode', tab) "Assigned to `find-word-boundary-function-table' in `subword-mode' and `superword-mode'; defers to -`subword-find-word-bounary'.") +`subword-find-word-boundary'.") (defconst subword-empty-char-table (make-char-table nil) diff --git a/lisp/progmodes/vera-mode.el b/lisp/progmodes/vera-mode.el index 7cb8f457e3f..6a88c6ff0ab 100644 --- a/lisp/progmodes/vera-mode.el +++ b/lisp/progmodes/vera-mode.el @@ -684,7 +684,7 @@ Adapted from `font-lock-match-c-style-declaration-item-and-skip-to-next'." :group 'font-lock-highlighting-faces) (define-obsolete-function-alias 'vera-fontify-buffer - 'font-lock-fontify-buffer "24.5") + 'font-lock-fontify-buffer "25.1") ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; Indentation diff --git a/lisp/progmodes/verilog-mode.el b/lisp/progmodes/verilog-mode.el index b649959bae3..71af582578d 100644 --- a/lisp/progmodes/verilog-mode.el +++ b/lisp/progmodes/verilog-mode.el @@ -123,7 +123,7 @@ ;;; Code: ;; This variable will always hold the version number of the mode -(defconst verilog-mode-version "2014-05-31-3cd8144-vpo" +(defconst verilog-mode-version "2014-10-03-c075a49-vpo" "Version of this Verilog mode.") (defconst verilog-mode-release-emacs t "If non-nil, this version of Verilog mode was released with Emacs itself.") @@ -1027,7 +1027,7 @@ If 'packed', then as many inputs and outputs that fit within If 'single', then a single input or output will be put onto each line." - :version "24.5" + :version "25.1" :type '(radio (const :tag "Line up Assignments and Declarations" packed) (const :tag "Line up Assignment statements" single)) :group 'verilog-mode-auto) @@ -1474,6 +1474,8 @@ If set will become buffer local.") :help "Help on AUTOINPUT - adding inputs from cells"] ["AUTOINSERTLISP" (describe-function 'verilog-auto-insert-lisp) :help "Help on AUTOINSERTLISP - insert text from a lisp function"] + ["AUTOINSERTLAST" (describe-function 'verilog-auto-insert-last) + :help "Help on AUTOINSERTLISPLAST - insert text from a lisp function"] ["AUTOINST" (describe-function 'verilog-auto-inst) :help "Help on AUTOINST - adding pins for cells"] ["AUTOINST (.*)" (describe-function 'verilog-auto-star) @@ -2265,7 +2267,10 @@ find the errors." ;; "\\(assert\\|assume\\|cover\\)\\s-+property\\>" (defconst verilog-no-indent-begin-re - "\\<\\(if\\|else\\|while\\|for\\|repeat\\|always\\|always_comb\\|always_ff\\|always_latch\\)\\>") + (eval-when-compile + (verilog-regexp-words + '( "if" "else" "while" "for" "repeat" "always" "always_comb" "always_ff" "always_latch" + "initial" "final")))) (defconst verilog-ends-re ;; Parenthesis indicate type of keyword found @@ -2719,9 +2724,9 @@ find the errors." (defconst verilog-disable-fork-re "\\(disable\\|wait\\)\\s-+fork\\>") (defconst verilog-extended-case-re "\\(\\(unique0?\\s-+\\|priority\\s-+\\)?case[xz]?\\)") (defconst verilog-extended-complete-re - (concat "\\(\\(\\<extern\\s-+\\|\\<\\(\\<pure\\>\\s-+\\)?virtual\\s-+\\|\\<protected\\s-+\\)*\\(\\<function\\>\\|\\<task\\>\\)\\)" + (concat "\\(\\(\\<extern\\s-+\\|\\<\\(\\<\\(pure\\|context\\)\\>\\s-+\\)?virtual\\s-+\\|\\<protected\\s-+\\)*\\(\\<function\\>\\|\\<task\\>\\)\\)" "\\|\\(\\(\\<typedef\\>\\s-+\\)*\\(\\<struct\\>\\|\\<union\\>\\|\\<class\\>\\)\\)" - "\\|\\(\\(\\<import\\>\\s-+\\)?\\(\"DPI-C\"\\s-+\\)?\\(\\<pure\\>\\s-+\\)?\\(function\\>\\|task\\>\\)\\)" + "\\|\\(\\(\\<import\\>\\s-+\\)?\\(\"DPI-C\"\\s-+\\)?\\(\\<\\(pure\\|context\\)\\>\\s-+\\)?\\([A-Za-z_][A-Za-z0-9_]*\\s-+=\\s-+\\)?\\(function\\>\\|task\\>\\)\\)" "\\|" verilog-extended-case-re )) (defconst verilog-basic-complete-re (eval-when-compile @@ -8258,7 +8263,8 @@ Return an array of [outputs inouts inputs wire reg assign const]." (setq typedefed (if typedefed (concat typedefed " " keywd) keywd))) (t (setq vec nil enum nil rvalue nil signed nil - typedefed nil multidim nil sig-paren paren + typedefed keywd ; Have a type + multidim nil sig-paren paren expect-signal 'sigs-var modport nil)))) ;; Interface with optional modport in v2k arglist? ;; Skip over parsing modport, and take the interface name as the type @@ -10650,6 +10656,7 @@ Takes SIGS list, adds MESSAGE to front and inserts each at INDENT-PT." (indent-to indent-pt) (while sigs (cond ((equal verilog-auto-arg-format 'single) + (insert space) (indent-to indent-pt) (setq space "\n")) ;; verilog-auto-arg-format 'packed @@ -11816,10 +11823,18 @@ Typing \\[verilog-auto] will make this into: wire tempa = i; wire tempb = tempa; wire o = tempb; - endmodule" + endmodule + +You may also provide an optional regular expression, in which case only +signals matching the regular expression will be included. For example the +same expansion will result from only extracting outputs starting with ov: + + /*AUTOOUTPUTEVERY(\"^ov\")*/" (save-excursion ;;Point must be at insertion point (let* ((indent-pt (current-indentation)) + (params (verilog-read-auto-params 0 1)) + (regexp (nth 0 params)) (v2k (verilog-in-paren-quick)) (modi (verilog-modi-current)) (moddecls (verilog-modi-get-decls modi)) @@ -11827,6 +11842,11 @@ Typing \\[verilog-auto] will make this into: (verilog-signals-not-in (verilog-decls-get-signals moddecls) (verilog-decls-get-ports moddecls))))) + (when regexp + (setq sig-list (verilog-signals-matching-regexp + sig-list regexp))) + (setq sig-list (verilog-signals-not-matching-regexp + sig-list verilog-auto-output-ignore-regexp)) (verilog-forward-or-insert-line) (when v2k (verilog-repair-open-comma)) (when sig-list @@ -12417,9 +12437,13 @@ driver/monitor using AUTOINST in the testbench." (defun verilog-auto-insert-lisp () "Expand AUTOINSERTLISP statements, as part of \\[verilog-auto]. -The Lisp code provided is called, and the Lisp code calls -`insert` to insert text into the current file beginning on the -line after the AUTOINSERTLISP. +The Lisp code provided is called before other AUTOS are expanded, +and the Lisp code generally will call `insert` to insert text +into the current file beginning on the line after the +AUTOINSERTLISP. + +See also AUTOINSERTLAST and `verilog-auto-insert-last' which +executes after (as opposed to before) other AUTOs. See also AUTO_LISP, which takes a Lisp expression and evaluates it during `verilog-auto-inst' but does not insert any text. @@ -12476,6 +12500,20 @@ text: (setq verilog-scan-cache-tick nil) ;; Clear cache; inserted unknown text (verilog-delete-empty-auto-pair)))) +(defun verilog-auto-insert-last () + "Expand AUTOINSERTLAST statements, as part of \\[verilog-auto]. +The Lisp code provided is called after all other AUTOS have been +expanded, and the Lisp code generally will call `insert` to +insert text into the current file beginning on the line after the +AUTOINSERTLAST. + +Other than when called (after AUTOs are expanded), the functionality +is otherwise identical to AUTOINSERTLISP and `verilog-auto-insert-lisp' which +executes before (as opposed to after) other AUTOs. + +See `verilog-auto-insert-lisp' for examples." + (verilog-auto-insert-lisp)) + (defun verilog-auto-sense-sigs (moddecls presense-sigs) "Return list of signals for current AUTOSENSE block." (let* ((sigss (verilog-read-always-signals)) @@ -13202,6 +13240,7 @@ Using \\[describe-function], see also: `verilog-auto-inout-param' for AUTOINOUTPARAM copying params from elsewhere `verilog-auto-input' for AUTOINPUT making hierarchy inputs `verilog-auto-insert-lisp' for AUTOINSERTLISP insert code from lisp function + `verilog-auto-insert-last' for AUTOINSERTLAST insert code from lisp function `verilog-auto-inst' for AUTOINST instantiation pins `verilog-auto-star' for AUTOINST .* SystemVerilog pins `verilog-auto-inst-param' for AUTOINSTPARAM instantiation params @@ -13278,7 +13317,6 @@ Wilson Snyder (wsnyder@wsnyder.org)." (verilog-inject-arg)) ;; ;; Do user inserts first, so their code can insert AUTOs - ;; We may provide an AUTOINSERTLISPLAST if another cleanup pass is needed (verilog-auto-re-search-do "/\\*AUTOINSERTLISP(.*?)\\*/" 'verilog-auto-insert-lisp) ;; Expand instances before need the signals the instances input/output @@ -13312,11 +13350,13 @@ Wilson Snyder (wsnyder@wsnyder.org)." (verilog-auto-re-search-do "/\\*AUTOREG\\*/" 'verilog-auto-reg) (verilog-auto-re-search-do "/\\*AUTOREGINPUT\\*/" 'verilog-auto-reg-input) ;; outputevery needs AUTOOUTPUTs done first - (verilog-auto-re-search-do "/\\*AUTOOUTPUTEVERY\\*/" 'verilog-auto-output-every) + (verilog-auto-re-search-do "/\\*AUTOOUTPUTEVERY\\((.*?)\\)?\\*/" 'verilog-auto-output-every) ;; After we've created all new variables (verilog-auto-re-search-do "/\\*AUTOUNUSED\\*/" 'verilog-auto-unused) ;; Must be after all inputs outputs are generated (verilog-auto-re-search-do "/\\*AUTOARG\\*/" 'verilog-auto-arg) + ;; User inserts + (verilog-auto-re-search-do "/\\*AUTOINSERTLAST(.*?)\\*/" 'verilog-auto-insert-last) ;; Fix line numbers (comments only) (when verilog-auto-inst-template-numbers (verilog-auto-templated-rel)) @@ -13485,7 +13525,7 @@ See also `verilog-header' for an alternative format." > "`ovm_object_utils_begin(" name ")" \n > (- verilog-indent-level) " `ovm_object_utils_end" \n > _ \n - > "function new(name=\"" name "\");" \n + > "function new(string name=\"" name "\");" \n > "super.new(name);" \n > (- verilog-indent-level) "endfunction" \n > _ \n @@ -13499,7 +13539,7 @@ See also `verilog-header' for an alternative format." > "`uvm_object_utils_begin(" name ")" \n > (- verilog-indent-level) "`uvm_object_utils_end" \n > _ \n - > "function new(name=\"" name "\");" \n + > "function new(string name=\"" name "\");" \n > "super.new(name);" \n > (- verilog-indent-level) "endfunction" \n > _ \n @@ -13513,7 +13553,7 @@ See also `verilog-header' for an alternative format." > "`uvm_component_utils_begin(" name ")" \n > (- verilog-indent-level) "`uvm_component_utils_end" \n > _ \n - > "function new(name=\"\", uvm_component parent);" \n + > "function new(string name=\"\", uvm_component parent);" \n > "super.new(name, parent);" \n > (- verilog-indent-level) "endfunction" \n > _ \n diff --git a/lisp/progmodes/which-func.el b/lisp/progmodes/which-func.el index aa68f9fcc1a..e62ad271089 100644 --- a/lisp/progmodes/which-func.el +++ b/lisp/progmodes/which-func.el @@ -187,21 +187,20 @@ and you want to simplify them for the mode line which-func-unknown)))) ;;;###autoload (put 'which-func-current 'risky-local-variable t) -(defvar which-func-mode nil +(defvar-local which-func-mode nil "Non-nil means display current function name in mode line. This makes a difference only if `which-function-mode' is non-nil.") -(make-variable-buffer-local 'which-func-mode) -;;(put 'which-func-mode 'permanent-local t) (add-hook 'find-file-hook 'which-func-ff-hook t) (defun which-func-ff-hook () "File find hook for Which Function mode. It creates the Imenu index for the buffer, if necessary." - (setq which-func-mode - (and which-function-mode - (or (eq which-func-modes t) - (member major-mode which-func-modes)))) + (unless (local-variable-p 'which-func-mode) + (setq which-func-mode + (and which-function-mode + (or (eq which-func-modes t) + (member major-mode which-func-modes))))) (condition-case err (if (and which-func-mode @@ -259,15 +258,13 @@ in certain major modes." ;;Turn it on (progn (setq which-func-update-timer - (run-with-idle-timer idle-update-delay t 'which-func-update)) + (run-with-idle-timer idle-update-delay t #'which-func-update)) (dolist (buf (buffer-list)) (with-current-buffer buf - (setq which-func-mode - (or (eq which-func-modes t) - (member major-mode which-func-modes)))))) - ;; Turn it off - (dolist (buf (buffer-list)) - (with-current-buffer buf (setq which-func-mode nil))))) + (unless (local-variable-p 'which-func-mode) + (setq which-func-mode + (or (eq which-func-modes t) + (member major-mode which-func-modes))))))))) (defvar which-function-imenu-failed nil "Locally t in a buffer if `imenu--make-index-alist' found nothing there.") @@ -347,10 +344,11 @@ If no function name is found, return nil." (defvar ediff-window-B) (defvar ediff-window-C) +;; FIXME: Why does ediff require special support? (defun which-func-update-ediff-windows () "Update Which-Function mode display for Ediff windows. This function is meant to be called from `ediff-select-hook'." - (when (eq major-mode 'ediff-mode) + (when (and (derived-mode-p 'ediff-mode) which-function-mode) (when ediff-window-A (which-func-update-1 ediff-window-A)) (when ediff-window-B diff --git a/lisp/ps-print.el b/lisp/ps-print.el index 83f2cde4010..28682f52b0e 100644 --- a/lisp/ps-print.el +++ b/lisp/ps-print.el @@ -3822,6 +3822,7 @@ If `ps-prefix-quote' is nil, it's set to t after generating string." (defun ps-get (alist-sym key) "Return element from association list ALIST-SYM which car is `eq' to KEY." + (declare (obsolete alist-get "25.1")) (assq key (symbol-value alist-sym))) @@ -3829,6 +3830,7 @@ If `ps-prefix-quote' is nil, it's set to t after generating string." "Store element (KEY . VALUE) into association list ALIST-SYM. If KEY already exists in ALIST-SYM, modify cdr to VALUE. It can be retrieved with `(ps-get ALIST-SYM KEY)'." + (declare (obsolete "use (setf (alist-get ..) ..) instead" "25.1")) (let ((elt: (assq key (symbol-value alist-sym)))) ; to avoid name conflict (if elt: (setcdr elt: value) @@ -3839,6 +3841,7 @@ It can be retrieved with `(ps-get ALIST-SYM KEY)'." (defun ps-del (alist-sym key) "Delete by side effect element KEY from association list ALIST-SYM." + (declare (obsolete "use (setf (alist-get k alist nil t) nil) instead" "25.1")) (let ((a:list: (symbol-value alist-sym)) ; to avoid name conflict old) (while a:list: diff --git a/lisp/rect.el b/lisp/rect.el index 0350ed6b22b..90c8f94f0ab 100644 --- a/lisp/rect.el +++ b/lisp/rect.el @@ -35,7 +35,7 @@ (defgroup rectangle nil "Operations on rectangles." - :version "24.5" + :version "25.1" :group 'editing) ;; FIXME: this function should be replaced by `apply-on-rectangle' @@ -113,7 +113,7 @@ Point is at the end of the segment of this line within the rectangle." (if (window-parameter nil 'rectangle--point-crutches) (setf (window-parameter nil 'rectangle--point-crutches) nil)) (if rectangle--mark-crutches (setq rectangle--mark-crutches nil))) - ;; If move-to-column over-shooted, move back one char so we're + ;; If move-to-column overshot, move back one char so we're ;; at the position where rectangle--highlight-for-redisplay ;; will add the overlay (so that the cursor can be drawn at the ;; right place). diff --git a/lisp/register.el b/lisp/register.el index eb3c71afece..24146065384 100644 --- a/lisp/register.el +++ b/lisp/register.el @@ -33,6 +33,8 @@ ;;; Code: +;; FIXME: Clean up namespace usage! + (cl-defstruct (registerv (:constructor nil) (:constructor registerv--make (&optional data print-func @@ -98,16 +100,12 @@ If nil, do not show register previews, unless `help-char' (or a member of (defun get-register (register) "Return contents of Emacs register named REGISTER, or nil if none." - (cdr (assq register register-alist))) + (alist-get register register-alist)) (defun set-register (register value) "Set contents of Emacs register named REGISTER to VALUE. Returns VALUE. See the documentation of the variable `register-alist' for possible VALUEs." - (let ((aelt (assq register register-alist))) - (if aelt - (setcdr aelt value) - (push (cons register value) register-alist)) - value)) + (setf (alist-get register register-alist) value)) (defun register-describe-oneline (c) "One-line description of register C." @@ -425,13 +423,14 @@ Interactively, reads the register using `register-read-with-preview'." "Insert contents of register REGISTER. (REGISTER is a character.) Normally puts point before and mark after the inserted text. If optional second arg is non-nil, puts mark before and point after. -Interactively, second arg is non-nil if prefix arg is supplied. +Interactively, second arg is nil if prefix arg is supplied and t +otherwise. Interactively, reads the register using `register-read-with-preview'." (interactive (progn (barf-if-buffer-read-only) (list (register-read-with-preview "Insert register: ") - current-prefix-arg))) + (not current-prefix-arg)))) (push-mark) (let ((val (get-register register))) (cond diff --git a/lisp/replace.el b/lisp/replace.el index cf88cb57b89..32cf89b3255 100644 --- a/lisp/replace.el +++ b/lisp/replace.el @@ -266,7 +266,7 @@ replace backward. Fourth and fifth arg START and END specify the region to operate on. -To customize possible responses, change the \"bindings\" in `query-replace-map'." +To customize possible responses, change the bindings in `query-replace-map'." (interactive (let ((common (query-replace-read-args diff --git a/lisp/scroll-bar.el b/lisp/scroll-bar.el index f803eb7f928..6de5ee3228e 100644 --- a/lisp/scroll-bar.el +++ b/lisp/scroll-bar.el @@ -79,7 +79,7 @@ SIDE must be the symbol `left' or `right'." (htype lines) ((frame-parameter nil 'horizontal-scroll-bars) ;; nil means it's a non-toolkit scroll bar (which is currently - ;; impossible), and its width in columns is 14 pixels rounded up. + ;; impossible), and its height in lines is 14 pixels rounded up. (ceiling (or (frame-parameter nil 'scroll-bar-height) 14) (frame-char-width))) (0)))) @@ -90,16 +90,11 @@ SIDE must be the symbol `left' or `right'." (defvar scroll-bar-mode) (defvar horizontal-scroll-bar-mode) (defvar previous-scroll-bar-mode nil) -(defvar previous-horizontal-scroll-bar-mode nil) (defvar scroll-bar-mode-explicit nil "Non-nil means `set-scroll-bar-mode' should really do something. This is nil while loading `scroll-bar.el', and t afterward.") -(defvar horizontal-scroll-bar-mode-explicit nil - "Non-nil means `set-horizontal-scroll-bar-mode' should really do something. -This is nil while loading `scroll-bar.el', and t afterward.") - (defun set-scroll-bar-mode (value) "Set the scroll bar mode to VALUE and put the new value into effect. See the `scroll-bar-mode' variable for possible values to use." @@ -112,18 +107,6 @@ See the `scroll-bar-mode' variable for possible values to use." (modify-all-frames-parameters (list (cons 'vertical-scroll-bars scroll-bar-mode))))) -(defun set-horizontal-scroll-bar-mode (value) - "Set the horizontal scroll bar mode to VALUE and put the new value into effect. -See the `horizontal-scroll-bar-mode' variable for possible values to use." - (if horizontal-scroll-bar-mode - (setq previous-horizontal-scroll-bar-mode horizontal-scroll-bar-mode)) - - (setq horizontal-scroll-bar-mode value) - - (when horizontal-scroll-bar-mode-explicit - (modify-all-frames-parameters (list (cons 'horizontal-scroll-bars - horizontal-scroll-bar-mode))))) - (defcustom scroll-bar-mode default-frame-scroll-bars "Specify whether to have vertical scroll bars, and on which side. Possible values are nil (no scroll bars), `left' (scroll bars on left) @@ -140,32 +123,14 @@ Setting the variable with a customization buffer also takes effect." :initialize 'custom-initialize-default :set (lambda (_sym val) (set-scroll-bar-mode val))) -(defcustom horizontal-scroll-bar-mode default-frame-horizontal-scroll-bars - "Specify whether to have horizontal scroll bars, and on which side. -To set this variable in a Lisp program, use `set-horizontal-scroll-bar-mode' -to make it take real effect. -Setting the variable with a customization buffer also takes effect." - :type '(choice (const :tag "none (nil)" nil) - (const t)) - :group 'frames - ;; The default value for :initialize would try to use :set - ;; when processing the file in cus-dep.el. - :initialize 'custom-initialize-default - :set (lambda (_sym val) (set-horizontal-scroll-bar-mode val))) - ;; We just set scroll-bar-mode, but that was the default. ;; If it is set again, that is for real. (setq scroll-bar-mode-explicit t) -(setq horizontal-scroll-bar-mode-explicit t) (defun get-scroll-bar-mode () (declare (gv-setter set-scroll-bar-mode)) scroll-bar-mode) -(defun get-horizontal-scroll-bar-mode () - (declare (gv-setter set-horizontal-scroll-bar-mode)) - horizontal-scroll-bar-mode) - (define-minor-mode scroll-bar-mode "Toggle vertical scroll bars on all frames (Scroll Bar mode). With a prefix argument ARG, enable Scroll Bar mode if ARG is @@ -179,6 +144,13 @@ created in the future." (if v (or previous-scroll-bar-mode default-frame-scroll-bars)))))) +(defun horizontal-scroll-bars-available-p () + "Return non-nil when horizontal scroll bars are available on this system." + (and (display-graphic-p) + (boundp 'x-toolkit-scroll-bars) + x-toolkit-scroll-bars + (not (eq (window-system) 'ns)))) + (define-minor-mode horizontal-scroll-bar-mode "Toggle horizontal scroll bars on all frames (Horizontal Scroll Bar mode). With a prefix argument ARG, enable Horizontal Scroll Bar mode if @@ -187,14 +159,26 @@ enable the mode if ARG is omitted or nil. This command applies to all frames that exist and frames to be created in the future." - :variable ((get-horizontal-scroll-bar-mode) - . (lambda (v) (set-horizontal-scroll-bar-mode - (if v (or previous-scroll-bar-mode - default-frame-horizontal-scroll-bars)))))) + :init-value nil + :global t + :group 'frames + (if (and horizontal-scroll-bar-mode + (not (horizontal-scroll-bars-available-p))) + (progn + (setq horizontal-scroll-bar-mode nil) + (message "Horizontal scroll bars are not implemented on this system")) + (dolist (frame (frame-list)) + (set-frame-parameter + frame 'horizontal-scroll-bars horizontal-scroll-bar-mode)) + ;; Handle `default-frame-alist' entry. + (setq default-frame-alist + (cons (cons 'horizontal-scroll-bars horizontal-scroll-bar-mode) + (assq-delete-all 'horizontal-scroll-bars + default-frame-alist))))) (defun toggle-scroll-bar (arg) "Toggle whether or not the selected frame has vertical scroll bars. -With arg, turn vertical scroll bars on if and only if arg is positive. +With ARG, turn vertical scroll bars on if and only if ARG is positive. The variable `scroll-bar-mode' controls which side the scroll bars are on when they are turned on; if it is nil, they go on the left." (interactive "P") @@ -212,7 +196,7 @@ when they are turned on; if it is nil, they go on the left." (defun toggle-horizontal-scroll-bar (arg) "Toggle whether or not the selected frame has horizontal scroll bars. -With arg, turn horizontal scroll bars on if and only if arg is positive." +With ARG, turn vertical scroll bars on if and only if ARG is positive." (interactive "P") (if (null arg) (setq arg @@ -223,8 +207,7 @@ With arg, turn horizontal scroll bars on if and only if arg is positive." (modify-frame-parameters (selected-frame) (list (cons 'horizontal-scroll-bars - (if (> arg 0) - (or horizontal-scroll-bar-mode default-frame-horizontal-scroll-bars)))))) + (when (> arg 0) 'bottom))))) ;;;; Buffer navigation using the scroll bar. @@ -330,9 +313,11 @@ If you click outside the slider, the window scrolls to bring the slider there." (if (eq (current-bidi-paragraph-direction (window-buffer window)) 'left-to-right) (set-window-hscroll - window (/ (1- (+ (car portion-whole) unit)) unit)) + window (/ (+ (car portion-whole) (1- unit)) unit)) (set-window-hscroll - window (/ (1- (+ (cdr portion-whole) unit)) unit))))) + window (/ (+ (- (cdr portion-whole) (car portion-whole)) + (1- unit)) + unit))))) (defun scroll-bar-horizontal-drag (event) "Scroll the window horizontally by dragging the scroll bar slider. @@ -410,6 +395,7 @@ EVENT should be a scroll bar click." ;;; Tookit scroll bars. (defun scroll-bar-toolkit-scroll (event) + "Handle event EVENT on vertical scroll bar." (interactive "e") (let* ((end-position (event-end event)) (window (nth 0 end-position)) @@ -451,6 +437,7 @@ EVENT should be a scroll bar click." (setq point-before-scroll before-scroll)))))) (defun scroll-bar-toolkit-horizontal-scroll (event) + "Handle event EVENT on horizontal scroll bar." (interactive "e") (let* ((end-position (event-end event)) (window (nth 0 end-position)) diff --git a/lisp/select.el b/lisp/select.el index c4d020343af..397b98736c6 100644 --- a/lisp/select.el +++ b/lisp/select.el @@ -24,6 +24,31 @@ ;; Based partially on earlier release by Lucid. +;; The functionality here is pretty messy, because there are different +;; functions that claim to get or set the "selection", with no clear +;; distinction between them. Here's my best understanding of it: +;; - gui-select-text and gui-selection-value go together to access the general +;; notion of "GUI selection" for interoperation with other applications. +;; This can use either the clipboard or the primary selection, or both or +;; none according to gui-select-enable-clipboard and x-select-enable-primary. +;; These are the default values of interprogram-cut/paste-function. +;; - gui-get-primary-selection is used to get the PRIMARY selection, +;; specifically for mouse-yank-primary. +;; - gui-get-selection and gui-set-selection are lower-level functions meant to +;; access various kinds of selections (CLIPBOARD, PRIMARY, SECONDARY). + +;; Currently gui-select-text and gui-selection-value provide gui-methods so the +;; actual backend can do it whichever way it wants. This means for example +;; that gui-select-enable-clipboard is defined here but implemented in each and +;; every backend. +;; Maybe a better structure would be to make gui-select-text and +;; gui-selection-value have no associated gui-method, and implement +;; gui-select-enable-clipboard (and x-select-enable-clipboard) themselves. +;; This would instead rely on gui-get/set-selection being implemented well +;; (e.g. currently w32's implementation thereof sucks, for example, +;; since it doesn't access the system's clipboard when setting/getting the +;; CLIPBOARD selection). + ;;; Code: (defcustom selection-coding-system nil @@ -71,13 +96,74 @@ other programs (X Windows clients or MS Windows programs). But, if this variable is set, it is used for the next communication only. After the communication, this variable is set to nil.") -(declare-function x-get-selection-internal "xselect.c" - (selection-symbol target-type &optional time-stamp terminal)) - ;; Only declared obsolete in 23.3. (define-obsolete-function-alias 'x-selection 'x-get-selection "at least 19.34") -(defun x-get-selection (&optional type data-type) +(defcustom gui-select-enable-clipboard t + "Non-nil means cutting and pasting uses the clipboard. +This can be in addition to, but in preference to, the primary selection, +if applicable (i.e. under X11)." + :type 'boolean + :group 'killing + ;; The GNU/Linux version changed in 24.1, the MS-Windows version did not. + :version "24.1") +(define-obsolete-variable-alias 'x-select-enable-clipboard + 'gui-select-enable-clipboard "25.1") + +(gui-method-declare gui-select-text #'ignore + "Method used to pass the current selection to the system. +Called with one argument (the text selected). +Should obey `gui-select-enable-clipboard' where applicable.") + +(gui-method-declare gui-get-selection #'ignore + "Return selected text. +Called with 2 arguments: (SELECTION-SYMBOL TARGET-TYPE) +SELECTION-SYMBOL is typically `PRIMARY', `SECONDARY', or `CLIPBOARD'. +\(Those are literal upper-case symbol names, since that's what X expects.) +TARGET-TYPE is the type of data desired, typically `STRING'.") + +(defvar gui-last-selected-text nil + ;; We keep track of the last text selected here, so we can check the + ;; current selection against it, and avoid passing back our own text + ;; from gui-selection-value. + "Last text passed to `gui-select-text'.") + +(defun gui-select-text (text) + "Select TEXT, a string, according to the window system. +if `gui-select-enable-clipboard' is non-nil, copy TEXT to the system's clipboard. + +On X, if `x-select-enable-primary' is non-nil, put TEXT in +the primary selection. + +On MS-Windows, make TEXT the current selection." + ;; FIXME: We should test gui-select-enable-clipboard here! + ;; But that would break the independence between x-select-enable-primary + ;; and x-select-enable-clipboard! + ;;(when gui-select-enable-clipboard + (gui-call gui-select-text text) ;;) + (setq gui-last-selected-text text)) +(define-obsolete-function-alias 'x-select-text 'gui-select-text "25.1") + +(gui-method-declare gui-selection-value #'ignore + "Method to return the GUI's selection. +Takes no argument, and returns a string. +Should obey `gui-select-enable-clipboard'.") + +(defun gui-selection-value () + (let ((text (gui-call gui-selection-value))) + (if (string= text "") (setq text nil)) + (cond + ((not text) nil) + ((eq text gui-last-selected-text) nil) + ((string= text gui-last-selected-text) + ;; Record the newer string, so subsequent calls can use the `eq' test. + (setq gui-last-selected-text text) + nil) + (t + (setq gui-last-selected-text text))))) +(define-obsolete-function-alias 'x-selection-value 'gui-selection-value "25.1") + +(defun gui-get-selection (&optional type data-type) "Return the value of an X Windows selection. The argument TYPE (default `PRIMARY') says which selection, and the argument DATA-TYPE (default `STRING') says @@ -91,39 +177,74 @@ all upper-case names. The most often used ones, in addition to DATA-TYPE is usually `STRING', but can also be one of the symbols in `selection-converter-alist', which see. This argument is ignored on MS-Windows and MS-DOS." - (let ((data (x-get-selection-internal (or type 'PRIMARY) - (or data-type 'STRING))) - coding) + (let ((data (gui-call gui-get-selection (or type 'PRIMARY) + (or data-type 'STRING)))) (when (and (stringp data) (setq data-type (get-text-property 0 'foreign-selection data))) - (setq coding (or next-selection-coding-system - selection-coding-system - (cond ((eq data-type 'UTF8_STRING) - 'utf-8) - ((eq data-type 'COMPOUND_TEXT) - 'compound-text-with-extensions) - ((eq data-type 'C_STRING) - nil) - ((eq data-type 'STRING) - 'iso-8859-1) - (t - (error "Unknown selection data type: %S" type)))) - data (if coding (decode-coding-string data coding) - (string-to-multibyte data))) + (let ((coding (or next-selection-coding-system + selection-coding-system + (pcase data-type + ('UTF8_STRING 'utf-8) + ('COMPOUND_TEXT 'compound-text-with-extensions) + ('C_STRING nil) + ('STRING 'iso-8859-1) + (_ (error "Unknown selection data type: %S" + type)))))) + (setq data (if coding (decode-coding-string data coding) + (string-to-multibyte data)))) (setq next-selection-coding-system nil) (put-text-property 0 (length data) 'foreign-selection data-type data)) data)) +(define-obsolete-function-alias 'x-get-selection 'gui-get-selection "25.1") (defun x-get-clipboard () "Return text pasted to the clipboard." - (x-get-selection-internal 'CLIPBOARD 'STRING)) - -(declare-function x-own-selection-internal "xselect.c" - (selection-name selection-value &optional frame)) -(declare-function x-disown-selection-internal "xselect.c" - (selection &optional time terminal)) - -(defun x-set-selection (type data) + (declare (obsolete gui-get-selection "25.1")) + (gui-call gui-get-selection 'CLIPBOARD 'STRING)) + +(defun gui-get-primary-selection () + "Return the PRIMARY selection, or the best emulation thereof." + (or (gui-get-selection 'PRIMARY) + (and (fboundp 'w32-get-selection-value) + (eq (framep (selected-frame)) 'w32) + ;; MS-Windows emulates PRIMARY in x-get-selection, but only + ;; within the Emacs session, so consult the clipboard if + ;; primary is not found. + (w32-get-selection-value)) + (error "No selection is available"))) +(define-obsolete-function-alias 'x-get-selection-value + 'gui-get-primary-selection "25.1") + +(gui-method-declare gui-own-selection nil + "Method to assert a selection of type SELECTION and value VALUE. +SELECTION is a symbol, typically `PRIMARY', `SECONDARY', or `CLIPBOARD'. +(Those are literal upper-case symbol names, since that's what X expects.) +VALUE is typically a string, or a cons of two markers, but may be +anything that the functions on `selection-converter-alist' know about. + +Called with 2 args: (SELECTION VALUE).") + +(gui-method-declare gui-disown-selection nil + "If we own the selection SELECTION, disown it. +Disowning it means there is no such selection. + +Called with one argument: (SELECTION)") + +(gui-method-declare gui-selection-owner-p #'ignore + "Whether the current Emacs process owns the given X Selection. +Called with one argument: (SELECTION). +The arg should be the name of the selection in question, typically one of +the symbols `PRIMARY', `SECONDARY', or `CLIPBOARD'. +(Those are literal upper-case symbol names, since that's what X expects.)") + +(gui-method-declare gui-selection-exists-p #'ignore + "Whether there is an owner for the given X Selection. +Called with one argument: (SELECTION). +The arg should be the name of the selection in question, typically one of +the symbols `PRIMARY', `SECONDARY', or `CLIPBOARD'. +(Those are literal upper-case symbol names, since that's what X expects.)") + +(defun gui-set-selection (type data) "Make an X selection of type TYPE and value DATA. The argument TYPE (nil means `PRIMARY') says which selection, and DATA specifies the contents. TYPE must be a symbol. \(It can also @@ -151,23 +272,24 @@ are not available to other programs." (list 'PRIMARY (read-string "Set text for pasting: ")) (list 'PRIMARY (buffer-substring (region-beginning) (region-end))))) (if (stringp type) (setq type (intern type))) - (or (x-valid-simple-selection-p data) + (or (gui--valid-simple-selection-p data) (and (vectorp data) (let ((valid t) (i (1- (length data)))) (while (>= i 0) - (or (x-valid-simple-selection-p (aref data i)) + (or (gui--valid-simple-selection-p (aref data i)) (setq valid nil)) (setq i (1- i))) valid)) (signal 'error (list "invalid selection" data))) (or type (setq type 'PRIMARY)) (if data - (x-own-selection-internal type data) - (x-disown-selection-internal type)) + (gui-call gui-own-selection type data) + (gui-call gui-disown-selection type)) data) +(define-obsolete-function-alias 'x-set-selection 'gui-set-selection "25.1") -(defun x-valid-simple-selection-p (data) +(defun gui--valid-simple-selection-p (data) (or (bufferp data) (and (consp data) (markerp (car data)) @@ -323,7 +445,7 @@ two markers or an overlay. Otherwise, it is nil." (apply 'vector all))) (defun xselect-convert-to-delete (selection _type _value) - (x-disown-selection-internal selection) + (gui-call gui-disown-selection selection) ;; A return value of nil means that we do not know how to do this conversion, ;; and replies with an "error". A return value of NULL means that we have ;; done the conversion (and any side-effects) but have no value to return. diff --git a/lisp/ses.el b/lisp/ses.el index bfe021f5300..541c1e19769 100644 --- a/lisp/ses.el +++ b/lisp/ses.el @@ -301,7 +301,7 @@ default printer and then modify its output.") (defmacro ses--metaprogramming (exp) (declare (debug t)) (eval exp t)) (ses--metaprogramming `(progn ,@(mapcar (lambda (x) `(defvar ,(or (car-safe x) x))) ses-localvars))) - + (defun ses-set-localvars () "Set buffer-local and initialize some SES variables." (dolist (x ses-localvars) @@ -426,38 +426,11 @@ functions refer to its value." (ses-get-cell (car rowcol) (cdr rowcol))))))) -(defun ses--alist-get (key alist &optional remove) - "Get the value associated to KEY in ALIST." - (declare - (gv-expander - (lambda (do) - (macroexp-let2 macroexp-copyable-p k key - (gv-letplace (getter setter) alist - (macroexp-let2 nil p `(assq ,k ,getter) - (funcall do `(cdr ,p) - (lambda (v) - (let ((set-exp - `(if ,p (setcdr ,p ,v) - ,(funcall setter - `(cons (setq ,p (cons ,k ,v)) - ,getter))))) - (cond - ((null remove) set-exp) - ((null v) - `(if ,p ,(funcall setter `(delq ,p ,getter)))) - (t - `(cond - (,v ,set-exp) - (,p ,(funcall setter - `(delq ,p ,getter))))))))))))))) - (ignore remove) ;;Silence byte-compiler. - (cdr (assoc key alist))) - (defmacro ses--letref (vars place &rest body) (declare (indent 2) (debug (sexp form &rest body))) (gv-letplace (getter setter) place `(cl-macrolet ((,(nth 0 vars) () ',getter) - (,(nth 1 vars) (v) (funcall ,setter v))) + (,(nth 1 vars) (v) (funcall ',setter v))) ,@body))) (defmacro ses-cell-property (property-name row &optional col) @@ -467,18 +440,18 @@ When COL is omitted, CELL=ROW is a cell object. When COL is present ROW and COL are the integer coordinates of the cell of interest." (declare (debug t)) - `(ses--alist-get ,property-name - (ses-cell--properties - ,(if col `(ses-get-cell ,row ,col) row)))) + `(alist-get ,property-name + (ses-cell--properties + ,(if col `(ses-get-cell ,row ,col) row)))) (defmacro ses-cell-property-pop (property-name row &optional col) "From a CELL or a pair (ROW,COL), get and remove the property value of the corresponding cell with name PROPERTY-NAME." `(ses--letref (pget pset) - (ses--alist-get ,property-name - (ses-cell--properties - ,(if col `(ses-get-cell ,row ,col) row)) - t) + (alist-get ,property-name + (ses-cell--properties + ,(if col `(ses-get-cell ,row ,col) row)) + nil t) (prog1 (pget) (pset nil)))) (defmacro ses-cell-value (row &optional col) @@ -561,7 +534,7 @@ macro to prevent propagate-on-load viruses." ;;To save time later, we also calculate the total width of each line in the ;;print area (excluding the terminating newline) (setq ses--col-widths widths - ses--linewidth (apply '+ -1 (mapcar '1+ widths)) + ses--linewidth (apply #'+ -1 (mapcar #'1+ widths)) ses--blank-line (concat (make-string ses--linewidth ?\s) "\n")) t) @@ -573,7 +546,7 @@ them for safety. This is a macro to prevent propagate-on-load viruses." (dotimes (x ses--numcols) (aset printers x (ses-safe-printer (aref printers x)))) (setq ses--col-printers printers) - (mapc 'ses-printer-record printers) + (mapc #'ses-printer-record printers) t) (defmacro ses-default-printer (def) @@ -607,15 +580,14 @@ variables `minrow', `maxrow', `mincol', and `maxcol'." (let ((minrow (car ,min)) (maxrow (car ,max)) (mincol (cdr ,min)) - (maxcol (cdr ,max)) - row col) + (maxcol (cdr ,max))) (if (or (> minrow maxrow) (> mincol maxcol)) (error "Empty range")) (dotimes (,r (- maxrow minrow -1)) - (setq row (+ ,r minrow)) - (dotimes (,c (- maxcol mincol -1)) - (setq col (+ ,c mincol)) - ,@body)))))) + (let ((row (+ ,r minrow))) + (dotimes (,c (- maxcol mincol -1)) + (let ((col (+ ,c mincol))) + ,@body)))))))) ;;Support for coverage testing. (defmacro 1value (form) @@ -780,13 +752,12 @@ updated again." (setq ses--header-hscroll -1)) ;;Split this code off into a function to avoid coverage-testing difficulties -(defun ses-time-check (format arg) +(defmacro ses--time-check (format &rest args) "If `ses-start-time' is more than a second ago, call `message' with FORMAT -and (eval ARG) and reset `ses-start-time' to the current time." - (when (> (- (float-time) ses-start-time) 1.0) - (message format (eval arg)) - (setq ses-start-time (float-time))) - nil) +and ARGS and reset `ses-start-time' to the current time." + `(when (> (- (float-time) ses-start-time) 1.0) + (message ,format ,@args) + (setq ses-start-time (float-time)))) ;;---------------------------------------------------------------------------- @@ -802,7 +773,8 @@ cell (ROW,COL). This is undoable. The cell's data will be updated through (val ,val)) (let* ((cell (ses-get-cell row col)) (change - ,(let ((field (eval field t))) + ,(let ((field (progn (cl-assert (eq (car field) 'quote)) + (cadr field)))) (if (eq field 'value) `(ses-set-with-undo (ses-cell-symbol cell) val) ;; (let* ((slots (get 'ses-cell 'cl-struct-slots)) @@ -939,7 +911,7 @@ the old and FORCE is nil." (setq formula (ses-safe-formula (cadr formula))) (ses-set-cell row col 'formula formula)) (condition-case sig - (setq newval (eval formula)) + (setq newval (eval formula t)) (error ;; Variable `sig' can't be nil. (nconc sig (list (ses-cell-symbol cell))) @@ -1131,6 +1103,9 @@ A single cell is appropriate unless some argument is 'needrange." ((memq 'needrange args) (error "Need a range")))) +(defvar ses--row) +(defvar ses--col) + (defun ses-print-cell (row col) "Format and print the value of cell (ROW,COL) to the print area. Use the cell's printer function. If the cell's new print form is too wide, @@ -1158,10 +1133,13 @@ preceding cell has spilled over." (ses-set-cell row col 'printer (setq printer (ses-safe-printer (cadr printer))))) ;; Print the value. - (setq text (ses-call-printer (or printer - (ses-col-printer col) - ses--default-printer) - value)) + (setq text + (let ((ses--row row) + (ses--col col)) + (ses-call-printer (or printer + (ses-col-printer col) + ses--default-printer) + value))) (if (consp ses-call-printer-return) ;; Printer returned an error. (setq sig ses-call-printer-return)))) @@ -1270,13 +1248,15 @@ printer signaled one (and \"%s\" is used as the default printer), else nil." (format (car printer) value) "")) (t - (setq value (funcall - (or (and (symbolp printer) - (let ((locprn (gethash printer ses--local-printer-hashmap))) - (and locprn - (ses--locprn-compiled locprn)))) - printer) - (or value ""))) + (setq value + (funcall + (or (and (symbolp printer) + (let ((locprn (gethash printer + ses--local-printer-hashmap))) + (and locprn + (ses--locprn-compiled locprn)))) + printer) + (or value ""))) (if (stringp value) value (or (stringp (car-safe value)) @@ -1349,11 +1329,11 @@ ses--default-printer, ses--numrows, or ses--numcols." (goto-char ses--params-marker) (forward-line def)))) -(defun ses-file-format-extend-paramter-list (new-file-format) +(defun ses-file-format-extend-parameter-list (new-file-format) "Extend the global parameters list when file format is updated from 2 to 3. This happens when local printer function are added to a sheet that was created with SES version 2. This is not -undoable. Return nil when there was no change, and non nil otherwise." +undoable. Return nil when there was no change, and non nil otherwise." (save-excursion (cond ((and (= ses--file-format 2) (= 3 new-file-format)) @@ -1402,8 +1382,8 @@ Newlines in the data are escaped." (with-temp-message " " (save-excursion (while ses--deferred-write - (ses-time-check "Writing... (%d cells left)" - '(length ses--deferred-write)) + (ses--time-check "Writing... (%d cells left)" + (length ses--deferred-write)) (setq rowcol (pop ses--deferred-write) row (car rowcol) col (cdr rowcol) @@ -1693,7 +1673,7 @@ to each symbol." (let (row col) (setq ses-start-time (float-time)) (while reform - (ses-time-check "Fixing ses-ranges... (%d left)" '(length reform)) + (ses--time-check "Fixing ses-ranges... (%d left)" (length reform)) (setq row (caar reform) col (cdar reform) reform (cdr reform)) @@ -1759,7 +1739,7 @@ Does not execute cell formulas or print functions." (numberp (nth 2 params)) (> (nth 2 params) 0) (or (<= params-len 3) - (let ((numlocprn (nth 3 params))) + (let ((numlocprn (nth 3 params))) (and (integerp numlocprn) (>= numlocprn 0))))) (error "Invalid SES file")) (setq ses--file-format (car params) @@ -1790,11 +1770,11 @@ Does not execute cell formulas or print functions." (setq ses--data-marker (point-marker)) (forward-char (1- (length ses-print-data-boundary))) ;; Initialize printer and symbol lists. - (mapc 'ses-printer-record ses-standard-printer-functions) + (mapc #'ses-printer-record ses-standard-printer-functions) (setq ses--symbolic-formulas nil) - ;; Load local printer definitions. - ;; This must be loaded *BEFORE* cells and column printers because the latters + ;; Load local printer definitions. + ;; This must be loaded *BEFORE* cells and column printers because the latter ;; may call them. (save-excursion (forward-line (* ses--numrows (1+ ses--numcols))) @@ -1839,10 +1819,10 @@ Does not execute cell formulas or print functions." (eq (car-safe head-row) 'ses-header-row) (= n4 ?\n)) (error "Invalid SES global parameters")) - (1value (eval widths)) - (1value (eval def-printer)) - (1value (eval printers)) - (1value (eval head-row))) + (1value (eval widths t)) + (1value (eval def-printer t)) + (1value (eval printers t)) + (1value (eval head-row t))) ;; Should be back at global-params. (forward-char 1) (or (looking-at-p ses-initial-global-parameters-re) @@ -1861,45 +1841,42 @@ Narrows the buffer to show only the print area. Gives it `read-only' and `intangible' properties. Sets up highlighting for current cell." (interactive) (let ((end (point-min)) - (inhibit-read-only t) (inhibit-point-motion-hooks t) - (was-modified (buffer-modified-p)) pos sym) - (ses-goto-data 0 0) ; Include marker between print-area and data-area. - (set-text-properties (point) (point-max) nil) ; Delete garbage props. - (mapc 'delete-overlay (overlays-in (point-min) (point-max))) - ;; The print area is read-only (except for our special commands) and uses a - ;; special keymap. - (put-text-property (point-min) (1- (point)) 'read-only 'ses) - (put-text-property (point-min) (1- (point)) 'keymap 'ses-mode-print-map) - ;; For the beginning of the buffer, we want the read-only and keymap - ;; attributes to be inherited from the first character. - (put-text-property (point-min) (1+ (point-min)) 'front-sticky t) - ;; Create intangible properties, which also indicate which cell the text - ;; came from. - (dotimes-with-progress-reporter (row ses--numrows) "Finding cells..." - (dotimes (col ses--numcols) - (setq pos end - sym (ses-cell-symbol row col)) - ;; Include skipped cells following this one. - (while (and (< col (1- ses--numcols)) - (eq (ses-cell-value row (1+ col)) '*skip*)) - (setq end (+ end (ses-col-width col) 1) - col (1+ col))) - (setq end (save-excursion - (goto-char pos) - (move-to-column (+ (current-column) (- end pos) - (ses-col-width col))) - (if (eolp) - (+ end (ses-col-width col) 1) - (forward-char) - (point)))) - (put-text-property pos end 'intangible sym))) - ;; Adding these properties did not actually alter the text. - (unless was-modified - (restore-buffer-modified-p nil) - (buffer-disable-undo) - (buffer-enable-undo))) + (with-silent-modifications + (ses-goto-data 0 0) ; Include marker between print-area and data-area. + (set-text-properties (point) (point-max) nil) ; Delete garbage props. + (mapc #'delete-overlay (overlays-in (point-min) (point-max))) + ;; The print area is read-only (except for our special commands) and + ;; uses a special keymap. + (put-text-property (point-min) (1- (point)) 'read-only 'ses) + (put-text-property (point-min) (1- (point)) 'keymap 'ses-mode-print-map) + ;; For the beginning of the buffer, we want the read-only and keymap + ;; attributes to be inherited from the first character. + (put-text-property (point-min) (1+ (point-min)) 'front-sticky t) + ;; Create intangible properties, which also indicate which cell the text + ;; came from. + (dotimes-with-progress-reporter (row ses--numrows) "Finding cells..." + (dotimes (col ses--numcols) + (setq pos end + sym (ses-cell-symbol row col)) + (unless (eq (symbol-value sym) '*skip*) + ;; Include skipped cells following this one. + (while (and (< col (1- ses--numcols)) + (eq (ses-cell-value row (1+ col)) '*skip*)) + (setq end (+ end (ses-col-width col) 1) + ;; Beware: Modifying the iteration variable of `dotimes' + ;; may or may not affect the iteration! + col (1+ col))) + (setq end (save-excursion + (goto-char pos) + (move-to-column (+ (current-column) (- end pos) + (ses-col-width col))) + (if (eolp) + (+ end (ses-col-width col) 1) + (forward-char) + (point)))) + (put-text-property pos end 'intangible sym)))))) ;; Create the underlining overlay. It's impossible for (point) to be 2, ;; because column A must be at least 1 column wide. (setq ses--curcell-overlay (make-overlay (1+ (point-min)) (1+ (point-min)))) @@ -1919,7 +1896,7 @@ Delete overlays, remove special text properties." ;; Delete read-only, keymap, and intangible properties. (set-text-properties (point-min) (point-max) nil) ;; Delete overlay. - (mapc 'delete-overlay (overlays-in (point-min) (point-max))) + (mapc #'delete-overlay (overlays-in (point-min) (point-max))) (unless was-modified (restore-buffer-modified-p nil)))) @@ -2125,7 +2102,7 @@ Based on the current set of columns and `window-hscroll' position." (push (propertize (format " [row %d]" ses--header-row) 'display '((height (- 1)))) result)) - (setq ses--header-string (apply 'concat (nreverse result))))) + (setq ses--header-string (apply #'concat (nreverse result))))) ;;---------------------------------------------------------------------------- @@ -2177,6 +2154,14 @@ print area if NONARROW is nil." (setq ses--Dijkstra-attempt-nb (1+ ses--Dijkstra-attempt-nb) ses--Dijkstra-weight-bound (* ses--numrows ses--numcols))) +;; These functions use the variables 'row' and 'col' that are dynamically bound +;; by ses-print-cell. We define these variables at compile-time to make the +;; compiler happy. +;; (defvar row) +;; (defvar col) +;; (defvar maxrow) +;; (defvar maxcol) + (defun ses-recalculate-cell () "Recalculate and reprint the current cell or range. @@ -2204,7 +2189,7 @@ to are recalculated first." ;; First, recalculate all cells that don't refer to other cells and ;; produce a list of cells with references. (ses-dorange ses--curcell - (ses-time-check "Recalculating... %s" '(ses-cell-symbol row col)) + (ses--time-check "Recalculating... %s" (ses-cell-symbol row col)) (condition-case nil (progn ;; The t causes an error if the cell has references. If no @@ -2825,7 +2810,7 @@ SES attributes recording the contents of the cell as of the time of copying." ;;Avoid overflow situation (setq end (1- ses--data-marker))) (let* ((inhibit-point-motion-hooks t) - (x (mapconcat 'ses-copy-region-helper + (x (mapconcat #'ses-copy-region-helper (extract-rectangle beg (1- end)) "\n"))) (remove-text-properties 0 (length x) '(read-only t @@ -3130,7 +3115,7 @@ is non-nil. Newlines and tabs in the export text are escaped." (push "\t" result)) ((< row maxrow) (push "\n" result)))) - (setq result (apply 'concat (nreverse result))) + (setq result (apply #'concat (nreverse result))) (kill-new result))) @@ -3398,7 +3383,7 @@ highlighted range in the spreadsheet." (symbol-name new-name))) (force-mode-line-update))) -(defun ses-refresh-local-printer (name compiled-value) +(defun ses-refresh-local-printer (name _compiled-value) ;FIXME: unused arg? "Refresh printout for all cells which use printer NAME. NAME should be the name of a locally defined printer. Uses the value COMPILED-VALUE for this printer." @@ -3462,7 +3447,7 @@ Uses the value COMPILED-VALUE for this printer." (backward-char)) (insert printer-def-text) (when (= create-printer 1) - (ses-file-format-extend-paramter-list 3) + (ses-file-format-extend-parameter-list 3) (ses-set-parameter 'ses--numlocprn (+ ses--numlocprn create-printer)))))))))) @@ -3603,7 +3588,7 @@ Use `math-format-value' as a printer for Calc objects." (setcdr (last result 2) nil) (setq result (cdr (nreverse result)))) (unless reorient-x - (setq result (mapcar 'nreverse result))) + (setq result (mapcar #'nreverse result))) (when transpose (let ((ret (mapcar (lambda (x) (list x)) (pop result))) iter) (while result @@ -3615,7 +3600,7 @@ Use `math-format-value' as a printer for Calc objects." (cl-flet ((vectorize-*1 (clean result) - (cons clean (cons (quote 'vec) (apply 'append result)))) + (cons clean (cons (quote 'vec) (apply #'append result)))) (vectorize-*2 (clean result) (cons clean (cons (quote 'vec) @@ -3623,7 +3608,7 @@ Use `math-format-value' as a printer for Calc objects." (cons clean (cons (quote 'vec) x))) result))))) (pcase vectorize - (`nil (cons clean (apply 'append result))) + (`nil (cons clean (apply #'append result))) (`*1 (vectorize-*1 clean result)) (`*2 (vectorize-*2 clean result)) (`* (funcall (if (cdr result) @@ -3641,13 +3626,13 @@ Use `math-format-value' as a printer for Calc objects." (defun ses+ (&rest args) "Compute the sum of the arguments, ignoring blanks." - (apply '+ (apply 'ses-delete-blanks args))) + (apply #'+ (apply #'ses-delete-blanks args))) (defun ses-average (list) "Computes the sum of the numbers in LIST, divided by their length. Blanks are ignored. Result is always floating-point, even if all args are integers." - (setq list (apply 'ses-delete-blanks list)) - (/ (float (apply '+ list)) (length list))) + (setq list (apply #'ses-delete-blanks list)) + (/ (float (apply #'+ list)) (length list))) (defmacro ses-select (fromrange test torange) "Select cells in FROMRANGE that are `equal' to TEST. @@ -3656,7 +3641,7 @@ The ranges are macroexpanded but not evaluated so they should be either (ses-range BEG END) or (list ...). The TEST is evaluated." (setq fromrange (cdr (macroexpand fromrange)) torange (cdr (macroexpand torange)) - test (eval test)) + test (eval test t)) (or (= (length fromrange) (length torange)) (error "ses-select: Ranges not same length")) (let (result) @@ -3676,25 +3661,19 @@ either (ses-range BEG END) or (list ...). The TEST is evaluated." ;; Standard print functions ;;---------------------------------------------------------------------------- -;; These functions use the variables 'row' and 'col' that are dynamically bound -;; by ses-print-cell. We define these variables at compile-time to make the -;; compiler happy. -(defvar row) -(defvar col) - (defun ses-center (value &optional span fill) "Print VALUE, centered within column. FILL is the fill character for centering (default = space). SPAN indicates how many additional rightward columns to include in width (default = 0)." - (let ((printer (or (ses-col-printer col) ses--default-printer)) - (width (ses-col-width col)) + (let ((printer (or (ses-col-printer ses--col) ses--default-printer)) + (width (ses-col-width ses--col)) half) (or fill (setq fill ?\s)) (or span (setq span 0)) (setq value (ses-call-printer printer value)) (dotimes (x span) - (setq width (+ width 1 (ses-col-width (+ col span (- x)))))) + (setq width (+ width 1 (ses-col-width (+ ses--col span (- x)))))) ;; Set column width. (setq width (- width (string-width value))) (if (<= width 0) @@ -3707,11 +3686,11 @@ in width (default = 0)." "Print VALUE, centered within the span that starts in the current column and continues until the next nonblank column. FILL specifies the fill character (default = space)." - (let ((end (1+ col))) + (let ((end (1+ ses--col))) (while (and (< end ses--numcols) - (memq (ses-cell-value row end) '(nil *skip*))) + (memq (ses-cell-value ses--row end) '(nil *skip*))) (setq end (1+ end))) - (ses-center value (- end col 1) fill))) + (ses-center value (- end ses--col 1) fill))) (defun ses-dashfill (value &optional span) "Print VALUE centered using dashes. diff --git a/lisp/simple.el b/lisp/simple.el index c62a91fec10..21e0cf14c80 100644 --- a/lisp/simple.el +++ b/lisp/simple.el @@ -374,6 +374,13 @@ Other major modes are defined by comparison with this one." ;; Making and deleting lines. +(defvar self-insert-uses-region-functions nil + "Special hook to tell if `self-insert-command' will use the region. +It must be called via `run-hook-with-args-until-success' with no arguments. +Any `post-self-insert-command' which consumes the region should +register a function on this hook so that things like `delete-selection-mode' +can refrain from consuming the region.") + (defvar hard-newline (propertize "\n" 'hard t 'rear-nonsticky '(hard)) "Propertized string representing a hard newline character.") @@ -1393,8 +1400,11 @@ display the result of expression evaluation." (let ((minibuffer-completing-symbol t)) (minibuffer-with-setup-hook (lambda () + ;; FIXME: call emacs-lisp-mode? + (setq-local eldoc-documentation-function + #'elisp-eldoc-documentation-function) (add-hook 'completion-at-point-functions - #'lisp-completion-at-point nil t) + #'elisp-completion-at-point nil t) (run-hooks 'eval-expression-minibuffer-setup-hook)) (read-from-minibuffer prompt initial-contents read-expression-map t @@ -2511,6 +2521,7 @@ marker adjustment's corresponding (TEXT . POS) element." "Test whether UNDO-ELT crosses one edge of that region START ... END. This assumes we have already decided that UNDO-ELT is not *inside* the region START...END." + (declare (obsolete nil "25.1")) (cond ((atom undo-elt) nil) ((null (car undo-elt)) ;; (nil PROPERTY VALUE BEG . END) @@ -2521,7 +2532,6 @@ is not *inside* the region START...END." ;; (BEGIN . END) (and (< (car undo-elt) end) (> (cdr undo-elt) start))))) -(make-obsolete 'undo-elt-crosses-region nil "24.5") (defun undo-adjust-elt (elt deltas) "Return adjustment of undo element ELT by the undo DELTAS @@ -3625,7 +3635,7 @@ No filtering is done unless a hook says to." ;;;; Window system cut and paste hooks. -(defvar interprogram-cut-function nil +(defvar interprogram-cut-function #'gui-select-text "Function to call to make a killed region available to other programs. Most window systems provide a facility for cutting and pasting text between different programs, such as the clipboard on X and @@ -3636,7 +3646,7 @@ put in the kill ring, to make the new kill available to other programs. The function takes one argument, TEXT, which is a string containing the text which should be made available.") -(defvar interprogram-paste-function nil +(defvar interprogram-paste-function #'gui-selection-value "Function to call to get text cut from other programs. Most window systems provide a facility for cutting and pasting text between different programs, such as the clipboard on X and @@ -3754,7 +3764,7 @@ argument should still be a \"useful\" string for such uses." "Whether appending to kill ring also makes \\[undo] restore both pieces of text simultaneously." :type 'boolean :group 'killing - :version "24.5") + :version "25.1") (defun kill-append (string before-p) "Append STRING to the end of the latest kill in the kill ring. @@ -4493,10 +4503,6 @@ a mistake; see the documentation of `set-mark'." (signal 'mark-inactive nil))) ;; Behind display-selections-p. -(declare-function x-selection-owner-p "xselect.c" - (&optional selection terminal)) -(declare-function x-selection-exists-p "xselect.c" - (&optional selection terminal)) (defun deactivate-mark (&optional force) "Deactivate the mark. @@ -4521,15 +4527,15 @@ run `deactivate-mark-hook'." ;; the region prior to the last command modifying the buffer. ;; Set the selection to that, or to the current region. (cond (saved-region-selection - (x-set-selection 'PRIMARY saved-region-selection) + (gui-set-selection 'PRIMARY saved-region-selection) (setq saved-region-selection nil)) ;; If another program has acquired the selection, region ;; deactivation should not clobber it (Bug#11772). ((and (/= (region-beginning) (region-end)) - (or (x-selection-owner-p 'PRIMARY) - (null (x-selection-exists-p 'PRIMARY)))) - (x-set-selection 'PRIMARY - (funcall region-extract-function nil))))) + (or (gui-call gui-selection-owner-p 'PRIMARY) + (null (gui-call gui-selection-exists-p 'PRIMARY)))) + (gui-set-selection 'PRIMARY + (funcall region-extract-function nil))))) (when mark-active (force-mode-line-update)) ;Refresh toolbar (bug#16382). (cond ((eq (car-safe transient-mark-mode) 'only) @@ -7576,7 +7582,9 @@ DISPLAY-FLAG non-nil means show the new buffer with `pop-to-buffer'. This is always done when called interactively. Optional third arg NORECORD non-nil means do not put this buffer at the -front of the list of recently selected ones." +front of the list of recently selected ones. + +Returns the newly created indirect buffer." (interactive (progn (if (get major-mode 'no-clone-indirect) diff --git a/lisp/startup.el b/lisp/startup.el index 144d732272f..1f524dc119e 100644 --- a/lisp/startup.el +++ b/lisp/startup.el @@ -421,21 +421,6 @@ Warning Warning!!! Pure space overflow !!!Warning Warning :type 'directory :initialize 'custom-initialize-delay) -(defvar package--builtin-versions - ;; Mostly populated by loaddefs.el via autoload-builtin-package-versions. - (purecopy `((emacs . ,(version-to-list emacs-version)))) - "Alist giving the version of each versioned builtin package. -I.e. each element of the list is of the form (NAME . VERSION) where -NAME is the package name as a symbol, and VERSION is its version -as a list.") - -(defun package--description-file (dir) - (concat (let ((subdir (file-name-nondirectory - (directory-file-name dir)))) - (if (string-match "\\([^.].*?\\)-\\([0-9]+\\(?:[.][0-9]+\\|\\(?:pre\\|beta\\|alpha\\)[0-9]+\\)*\\)" subdir) - (match-string 1 subdir) subdir)) - "-pkg.el")) - (defun normal-top-level-add-subdirs-to-load-path () "Add all subdirectories of `default-directory' to `load-path'. More precisely, this uses only the subdirectories whose names @@ -497,7 +482,7 @@ It sets `command-line-processed', processes the command-line, reads the initialization files, etc. It is the default value of the variable `top-level'." (if command-line-processed - (message "Back to top level.") + (message internal--top-level-message) (setq command-line-processed t) ;; Look in each dir in load-path for a subdirs.el file. If we @@ -719,17 +704,17 @@ It is the default value of the variable `top-level'." (defconst tool-bar-images-pixel-height 24 "Height in pixels of images in the tool-bar.") -(defvar handle-args-function-alist '((nil . tty-handle-args)) - "Functions for processing window-system dependent command-line arguments. +(gui-method-declare handle-args-function #'tty-handle-args + "Method for processing window-system dependent command-line arguments. Window system startup files should add their own function to this -alist, which should parse the command line arguments. Those +method, which should parse the command line arguments. Those pertaining to the window system should be processed and removed from the returned command line.") -(defvar window-system-initialization-alist '((nil . ignore)) - "Alist of window-system initialization functions. -Window-system startup files should add their own initialization -function to this list. The function should take no arguments, +(gui-method-declare window-system-initialization #'ignore + "Method for window-system initialization. +Window-system startup files should add their own implementation +to this method. The function should take no arguments, and initialize the window system environment to prepare for opening the first frame (e.g. open a connection to an X server).") @@ -965,13 +950,11 @@ please check its value") ;; Process window-system specific command line parameters. (setq command-line-args (funcall - (or (cdr (assq initial-window-system handle-args-function-alist)) - (error "Unsupported window system `%s'" initial-window-system)) + (gui-method handle-args-function (or initial-window-system t)) command-line-args)) ;; Initialize the window system. (Open connection, etc.) (funcall - (or (cdr (assq initial-window-system window-system-initialization-alist)) - (error "Unsupported window system `%s'" initial-window-system))) + (gui-method window-system-initialization (or initial-window-system t))) (put initial-window-system 'window-system-initialized t)) ;; If there was an error, print the error message and exit. (error @@ -1303,7 +1286,11 @@ the `--debug-init' option to view a complete error backtrace." (let (warned) (dolist (dir load-path) (and (not warned) - (string-match-p "/[._]emacs\\.d/?\\'" dir) + (string-match-p + (format "/%s/?\\'" + (regexp-quote + (file-name-nondirectory + (directory-file-name user-emacs-directory)))) dir) (string-equal (file-name-as-directory (expand-file-name dir)) (expand-file-name user-emacs-directory)) (setq warned t) @@ -1311,9 +1298,10 @@ the `--debug-init' option to view a complete error backtrace." (format "Your `load-path' seems to contain your `.emacs.d' directory: %s\n\ This is likely to cause problems...\n\ -Consider using a subdirectory instead, e.g.: %s" dir -(expand-file-name "lisp" user-emacs-directory)) - :warning)))) +Consider using a subdirectory instead, e.g.: %s" + dir (expand-file-name + "lisp" user-emacs-directory)) + :warning)))) ;; If -batch, terminate after processing the command options. (if noninteractive (kill-emacs t)) @@ -1797,7 +1785,7 @@ we put it on this frame." (let (chosen-frame) ;; MS-Windows needs this to have a chance to make the initial ;; frame visible. - (if (eq system-type 'windows-nt) + (if (eq (window-system) 'w32) (sit-for 0 t)) (dolist (frame (append (frame-list) (list (selected-frame)))) (if (and (frame-visible-p frame) diff --git a/lisp/subr.el b/lisp/subr.el index c168cf5fdb2..585f9368c53 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -555,6 +555,15 @@ Elements of ALIST that are not conses are ignored." (setq tail tail-cdr)))) alist) +(defun alist-get (key alist &optional default remove) + "Get the value associated to KEY in ALIST. +DEFAULT is the value to return if KEY is not found in ALIST. +REMOVE, if non-nil, means that when setting this element, we should +remove the entry if the new value is `eql' to DEFAULT." + (ignore remove) ;;Silence byte-compiler. + (let ((x (assq key alist))) + (if x (cdr x) default))) + (defun remove (elt seq) "Return a copy of SEQ with all occurrences of ELT removed. SEQ must be a list, vector, or string. The comparison is done with `equal'." @@ -1156,18 +1165,20 @@ and `event-end' functions." ((null spacing) (setq spacing 0))) (cons (/ (car pair) (frame-char-width frame)) - (- (/ (cdr pair) (+ (frame-char-height frame) spacing)) - (if (null (with-current-buffer (window-buffer window) - header-line-format)) - 0 1)))))))) + (/ (cdr pair) (+ (frame-char-height frame) spacing)))))))) (defun posn-actual-col-row (position) - "Return the actual column and row in POSITION, measured in characters. -These are the actual row number in the window and character number in that row. + "Return the window row number in POSITION and character number in that row. + Return nil if POSITION does not contain the actual position; in that case -`posn-col-row' can be used to get approximate values. +\`posn-col-row' can be used to get approximate values. POSITION should be a list of the form returned by the `event-start' -and `event-end' functions." +and `event-end' functions. + +This function does not account for the width on display, like the +number of visual columns taken by a TAB or image. If you need +the coordinates of POSITION in character units, you should use +\`posn-col-row', not this function." (nth 6 position)) (defsubst posn-timestamp (position) @@ -2880,23 +2891,21 @@ COMMAND is the shell command to run. An old calling convention accepted any number of arguments after COMMAND, which were just concatenated to COMMAND. This is still supported but strongly discouraged." - ;; We used to use `exec' to replace the shell with the command, - ;; but that failed to handle (...) and semicolon, etc. + (declare (advertised-calling-convention (name buffer command) "23.1")) + ;; We used to use `exec' to replace the shell with the command, + ;; but that failed to handle (...) and semicolon, etc. (start-process name buffer shell-file-name shell-command-switch (mapconcat 'identity args " "))) -(set-advertised-calling-convention 'start-process-shell-command - '(name buffer command) "23.1") (defun start-file-process-shell-command (name buffer &rest args) "Start a program in a subprocess. Return the process object for it. Similar to `start-process-shell-command', but calls `start-file-process'." + (declare (advertised-calling-convention (name buffer command) "23.1")) (start-file-process name buffer (if (file-remote-p default-directory) "/bin/sh" shell-file-name) (if (file-remote-p default-directory) "-c" shell-command-switch) (mapconcat 'identity args " "))) -(set-advertised-calling-convention 'start-file-process-shell-command - '(name buffer command) "23.1") (defun call-process-shell-command (command &optional infile buffer display &rest args) @@ -2912,13 +2921,18 @@ STDERR-FILE may be nil (discard standard error output), t (mix it with ordinary output), or a file name string. Fourth arg DISPLAY non-nil means redisplay buffer as output is inserted. -Remaining arguments are strings passed as additional arguments for COMMAND. Wildcards and redirection are handled as usual in the shell. If BUFFER is 0, `call-process-shell-command' returns immediately with value nil. Otherwise it waits for COMMAND to terminate and returns a numeric exit status or a signal description string. -If you quit, the process is killed with SIGINT, or SIGKILL if you quit again." +If you quit, the process is killed with SIGINT, or SIGKILL if you quit again. + +An old calling convention accepted any number of arguments after DISPLAY, +which were just concatenated to COMMAND. This is still supported but strongly +discouraged." + (declare (advertised-calling-convention + (command &optional infile buffer display) "24.5")) ;; We used to use `exec' to replace the shell with the command, ;; but that failed to handle (...) and semicolon, etc. (call-process shell-file-name @@ -2930,6 +2944,8 @@ If you quit, the process is killed with SIGINT, or SIGKILL if you quit again." &rest args) "Process files synchronously in a separate process. Similar to `call-process-shell-command', but calls `process-file'." + (declare (advertised-calling-convention + (command &optional infile buffer display) "24.5")) (process-file (if (file-remote-p default-directory) "/bin/sh" shell-file-name) infile buffer display @@ -2938,6 +2954,14 @@ Similar to `call-process-shell-command', but calls `process-file'." ;;;; Lisp macros to do various things temporarily. +(defmacro track-mouse (&rest body) + "Evaluate BODY with mouse movement events enabled. +Within a `track-mouse' form, mouse motion generates input events that + you can read with `read-event'. +Normally, mouse motion is ignored." + (declare (debug t) (indent 0)) + `(internal--track-mouse (lambda () ,@body))) + (defmacro with-current-buffer (buffer-or-name &rest body) "Execute the forms in BODY with BUFFER-OR-NAME temporarily current. BUFFER-OR-NAME must be a buffer or the name of an existing buffer. @@ -3855,7 +3879,9 @@ This function is called directly from the C code." ;; discard the file name regexp (mapc #'funcall (cdr a-l-element)))) ;; Complain when the user uses obsolete files. - (when (string-match-p "/obsolete/[^/]*\\'" abs-file) + (when (save-match-data + (and (string-match "/obsolete/\\([^/]*\\)\\'" abs-file) + (not (equal "loaddefs.el" (match-string 1 abs-file))))) ;; Maybe we should just use display-warning? This seems yucky... (let* ((file (file-name-nondirectory abs-file)) (msg (format "Package %s is obsolete!" @@ -4776,6 +4802,21 @@ which is higher than \"1alpha\", which is higher than \"1snapshot\". Also, \"-GIT\", \"-CVS\" and \"-NNN\" are treated as snapshot versions." (version-list-= (version-to-list v1) (version-to-list v2))) +(defvar package--builtin-versions + ;; Mostly populated by loaddefs.el via autoload-builtin-package-versions. + (purecopy `((emacs . ,(version-to-list emacs-version)))) + "Alist giving the version of each versioned builtin package. +I.e. each element of the list is of the form (NAME . VERSION) where +NAME is the package name as a symbol, and VERSION is its version +as a list.") + +(defun package--description-file (dir) + (concat (let ((subdir (file-name-nondirectory + (directory-file-name dir)))) + (if (string-match "\\([^.].*?\\)-\\([0-9]+\\(?:[.][0-9]+\\|\\(?:pre\\|beta\\|alpha\\)[0-9]+\\)*\\)" subdir) + (match-string 1 subdir) subdir)) + "-pkg.el")) + ;;; Misc. (defconst menu-bar-separator '("--") diff --git a/lisp/tar-mode.el b/lisp/tar-mode.el index 66118d3e288..129314cbcee 100644 --- a/lisp/tar-mode.el +++ b/lisp/tar-mode.el @@ -800,8 +800,6 @@ tar-file's buffer." tarname ")")) (buffer (generate-new-buffer bufname))) - (with-current-buffer buffer - (setq buffer-undo-list t)) (with-current-buffer tar-data-buffer (let (coding) (narrow-to-region start end) @@ -829,7 +827,11 @@ tar-file's buffer." (with-current-buffer buffer (set-buffer-multibyte nil))) (widen) - (decode-coding-region start end coding buffer))) + (with-current-buffer buffer + (setq buffer-undo-list t)) + (decode-coding-region start end coding buffer) + (with-current-buffer buffer + (setq buffer-undo-list nil)))) buffer)) (defun tar-extract (&optional other-window-p) @@ -869,7 +871,6 @@ tar-file's buffer." (with-current-buffer tar-buffer default-directory)) (set-buffer-modified-p nil) - (setq buffer-undo-list t) (normal-mode) ; pick a mode. (set (make-local-variable 'tar-superior-buffer) tar-buffer) (set (make-local-variable 'tar-superior-descriptor) descriptor) diff --git a/lisp/tempo.el b/lisp/tempo.el index 9b6cd75b313..15be01dcdf9 100644 --- a/lisp/tempo.el +++ b/lisp/tempo.el @@ -611,11 +611,7 @@ function or string that is used by `\\[tempo-complete-tag]' to find a string to match the tag against. It has the same definition as the variable `tempo-match-finder'. In this version, supplying a COMPLETION-FUNCTION just sets `tempo-match-finder' locally." - (let ((old (assq tag-list tempo-local-tags))) - (if old - (setcdr old completion-function) - (setq tempo-local-tags (cons (cons tag-list completion-function) - tempo-local-tags)))) + (setf (alist-get tag-list tempo-local-tags) completion-function) (if completion-function (setq tempo-match-finder completion-function)) (tempo-invalidate-collection)) diff --git a/lisp/term.el b/lisp/term.el index 825a202c046..282dfe2ea80 100644 --- a/lisp/term.el +++ b/lisp/term.el @@ -972,6 +972,9 @@ is buffer-local." (if (and (not (featurep 'xemacs)) (display-graphic-p) overflow-newline-into-fringe + ;; Subtract 1 from the width when any fringe has zero width, + ;; not just the right fringe. Bug#18601. + (/= (frame-parameter nil 'left-fringe) 0) (/= (frame-parameter nil 'right-fringe) 0)) (window-body-width) (1- (window-body-width)))) @@ -1249,16 +1252,7 @@ without any interpretation." (run-hooks 'mouse-leave-buffer-hook) (setq this-command 'yank) (mouse-set-point click) - (term-send-raw-string - ;; From `mouse-yank-primary': - (or (if (fboundp 'x-get-selection-value) - (if (eq system-type 'windows-nt) - (or (x-get-selection 'PRIMARY) - (x-get-selection-value)) - (or (x-get-selection-value) - (x-get-selection 'PRIMARY))) - (x-get-selection 'PRIMARY)) - (error "No selection is available"))))) + (term-send-raw-string (gui-get-primary-selection)))) (defun term-paste () "Insert the last stretch of killed text at point." diff --git a/lisp/term/common-win.el b/lisp/term/common-win.el index ba59c75c4ec..d026ee8eabe 100644 --- a/lisp/term/common-win.el +++ b/lisp/term/common-win.el @@ -24,67 +24,6 @@ ;;; Code: -(defcustom x-select-enable-clipboard t - "Non-nil means cutting and pasting uses the clipboard. -This is in addition to, but in preference to, the primary selection. - -Note that MS-Windows does not support selection types other than the -clipboard. (The primary selection that is set by Emacs is not -accessible to other programs on MS-Windows.) - -This variable is not used by the Nextstep port." - :type 'boolean - :group 'killing - ;; The GNU/Linux version changed in 24.1, the MS-Windows version did not. - :version "24.1") - -(defvar x-last-selected-text) ; w32-fns.el -(declare-function w32-set-clipboard-data "w32select.c" - (string &optional ignored)) -(defvar ns-last-selected-text) ; ns-win.el -(declare-function ns-set-pasteboard "ns-win" (string)) - -(defvar x-select-enable-primary) ; x-win.el -(defvar x-last-selected-text-primary) -(defvar x-last-selected-text-clipboard) -(defvar saved-region-selection) ; simple.el - -(defun x-select-text (text) - "Select TEXT, a string, according to the window system. - -On X, if `x-select-enable-clipboard' is non-nil, copy TEXT to the -clipboard. If `x-select-enable-primary' is non-nil, put TEXT in -the primary selection. - -On MS-Windows, make TEXT the current selection. If -`x-select-enable-clipboard' is non-nil, copy the text to the -clipboard as well. - -On Nextstep, put TEXT in the pasteboard (`x-select-enable-clipboard' -is not used)." - (cond ((eq (framep (selected-frame)) 'w32) - (if x-select-enable-clipboard - (w32-set-clipboard-data text)) - (setq x-last-selected-text text)) - ((featurep 'ns) - ;; Don't send the pasteboard too much text. - ;; It becomes slow, and if really big it causes errors. - (ns-set-pasteboard text) - (setq ns-last-selected-text text)) - (t - ;; With multi-tty, this function may be called from a tty frame. - (when (eq (framep (selected-frame)) 'x) - (when x-select-enable-primary - (x-set-selection 'PRIMARY text) - (setq x-last-selected-text-primary text)) - (when x-select-enable-clipboard - ;; When cutting, the selection is cleared and PRIMARY set to - ;; the empty string. Prevent that, PRIMARY should not be reset - ;; by cut (Bug#16382). - (setq saved-region-selection text) - (x-set-selection 'CLIPBOARD text) - (setq x-last-selected-text-clipboard text)))))) - ;;;; Function keys (defvar x-alternatives-map @@ -117,9 +56,7 @@ is not used)." (set-keymap-parent map (keymap-parent local-function-key-map)) (set-keymap-parent local-function-key-map map)) (when (featurep 'ns) - (setq interprogram-cut-function 'x-select-text - interprogram-paste-function 'x-selection-value - system-key-alist + (setq system-key-alist (list ;; These are special "keys" used to pass events from C to lisp. (cons (logior (lsh 0 16) 1) 'ns-power-off) diff --git a/lisp/term/ns-win.el b/lisp/term/ns-win.el index 47d953aebfb..1b7e0751492 100644 --- a/lisp/term/ns-win.el +++ b/lisp/term/ns-win.el @@ -736,28 +736,14 @@ See the documentation of `create-fontset-from-fontset-spec' for the format.") (if (not (stringp string)) (error "Nonstring given to pasteboard")) (ns-store-selection-internal 'CLIPBOARD string)) -;; We keep track of the last text selected here, so we can check the -;; current selection against it, and avoid passing back our own text -;; from x-selection-value. -(defvar ns-last-selected-text nil) - ;; Return the value of the current Nextstep selection. For ;; compatibility with older Nextstep applications, this checks cut ;; buffer 0 before retrieving the value of the primary selection. -(defun x-selection-value () - (let (text) - ;; Consult the selection. Treat empty strings as if they were unset. - (or text (setq text (ns-get-pasteboard))) - (if (string= text "") (setq text nil)) - (cond - ((not text) nil) - ((eq text ns-last-selected-text) nil) - ((string= text ns-last-selected-text) - ;; Record the newer string, so subsequent calls can use the `eq' test. - (setq ns-last-selected-text text) - nil) - (t - (setq ns-last-selected-text text))))) +(gui-method-define gui-selection-value ns #'ns-selection-value) +(defun ns-selection-value () + ;; Consult the selection. Treat empty strings as if they were unset. + (if gui-select-enable-clipboard + (ns-get-pasteboard))) (defun ns-copy-including-secondary () (interactive) @@ -959,10 +945,24 @@ See the documentation of `create-fontset-from-fontset-spec' for the format.") ;; Any display name is OK. (add-to-list 'display-format-alist '(".*" . ns)) -(add-to-list 'handle-args-function-alist '(ns . x-handle-args)) -(add-to-list 'frame-creation-function-alist '(ns . x-create-frame-with-faces)) -(add-to-list 'window-system-initialization-alist '(ns . ns-initialize-window-system)) - +(gui-method-define handle-args-function ns #'x-handle-args) +(gui-method-define frame-creation-function ns #'x-create-frame-with-faces) +(gui-method-define window-system-initialization ns + #'ns-initialize-window-system) + +(declare-function ns-set-pasteboard "ns-win" (string)) +(gui-method-define gui-select-text ns + (lambda (text) + ;; Don't send the pasteboard too much text. + ;; It becomes slow, and if really big it causes errors. + (when gui-select-enable-clipboard + (ns-set-pasteboard text)))) + +(gui-method-define gui-own-selection ns #'ns-own-selection-internal) +(gui-method-define gui-disown-selection ns #'ns-disown-selection-internal) +(gui-method-define gui-selection-owner-p ns #'ns-selection-owner-p) +(gui-method-define gui-selection-exists-p ns #'x-selection-exists-p) +(gui-method-define gui-get-selection ns #'x-get-selection-internal) ;FIXME:name! (provide 'ns-win) diff --git a/lisp/term/pc-win.el b/lisp/term/pc-win.el index f24a54fbe28..7c2b8d6dff0 100644 --- a/lisp/term/pc-win.el +++ b/lisp/term/pc-win.el @@ -219,146 +219,53 @@ the operating system.") ; ;;;; Selections ; -;;; We keep track of the last text selected here, so we can check the -;;; current selection against it, and avoid passing back our own text -;;; from x-selection-value. -(defvar x-last-selected-text nil) - -(defcustom x-select-enable-clipboard t - "Non-nil means cutting and pasting uses the clipboard. -This is in addition to, but in preference to, the primary selection. - -Note that MS-Windows does not support selection types other than the -clipboard. (The primary selection that is set by Emacs is not -accessible to other programs on MS-Windows.) - -This variable is not used by the Nextstep port." - :type 'boolean - :group 'killing) - -(defun x-select-text (text) - "Select TEXT, a string, according to the window system. - -On X, if `x-select-enable-clipboard' is non-nil, copy TEXT to the -clipboard. If `x-select-enable-primary' is non-nil, put TEXT in -the primary selection. - -On MS-Windows, make TEXT the current selection. If -`x-select-enable-clipboard' is non-nil, copy the text to the -clipboard as well. - -On Nextstep, put TEXT in the pasteboard (`x-select-enable-clipboard' -is not used)." - (if x-select-enable-clipboard - (w16-set-clipboard-data text)) - (setq x-last-selected-text text)) - -(defun x-get-selection-value () +(defun w16-get-selection-value () "Return the value of the current selection. Consult the selection. Treat empty strings as if they were unset." - (if x-select-enable-clipboard - (let (text) - ;; Don't die if x-get-selection signals an error. - (with-demoted-errors "w16-get-clipboard-data:%s" - (setq text (w16-get-clipboard-data))) - (if (string= text "") (setq text nil)) - (cond - ((not text) nil) - ((eq text x-last-selected-text) nil) - ((string= text x-last-selected-text) - ;; Record the newer string, so subsequent calls can use the 'eq' test. - (setq x-last-selected-text text) - nil) - (t - (setq x-last-selected-text text)))))) - -;; x-selection-owner-p is used in simple.el. -(defun x-selection-owner-p (&optional _selection _terminal) - "Whether the current Emacs process owns the given X Selection. -The arg should be the name of the selection in question, typically one of -the symbols `PRIMARY', `SECONDARY', or `CLIPBOARD'. -\(Those are literal upper-case symbol names, since that's what X expects.) -For convenience, the symbol nil is the same as `PRIMARY', -and t is the same as `SECONDARY'. - -TERMINAL should be a terminal object or a frame specifying the X -server to query. If omitted or nil, that stands for the selected -frame's display, or the first available X display. - -On Nextstep, TERMINAL is unused. - -\(fn &optional SELECTION TERMINAL)" - (if x-select-enable-clipboard - (let (text) - ;; Don't die if w16-get-clipboard-data signals an error. - (ignore-errors - (setq text (w16-get-clipboard-data))) - ;; We consider ourselves the owner of the selection if it does - ;; not exist, or exists and compares equal with the last text - ;; we've put into the Windows clipboard. - (cond - ((not text) t) - ((or (eq text x-last-selected-text) - (string= text x-last-selected-text)) - text) - (t nil))))) - -;; x-own-selection-internal and x-disown-selection-internal are used -;; in select.el:x-set-selection. -(defun x-own-selection-internal (_selection value &optional _frame) - "Assert an X selection of the type SELECTION with and value VALUE. -SELECTION is a symbol, typically `PRIMARY', `SECONDARY', or `CLIPBOARD'. -\(Those are literal upper-case symbol names, since that's what X expects.) -VALUE is typically a string, or a cons of two markers, but may be -anything that the functions on `selection-converter-alist' know about. - -FRAME should be a frame that should own the selection. If omitted or -nil, it defaults to the selected frame. - -On Nextstep, FRAME is unused. - -\(fn SELECTION VALUE &optional FRAME)" - (ignore-errors - (x-select-text value)) - value) - -(defun x-disown-selection-internal (selection &optional _time-object _terminal) - "If we own the selection SELECTION, disown it. -Disowning it means there is no such selection. - -Sets the last-change time for the selection to TIME-OBJECT (by default -the time of the last event). - -TERMINAL should be a terminal object or a frame specifying the X -server to query. If omitted or nil, that stands for the selected -frame's display, or the first available X display. - -On Nextstep, the TIME-OBJECT and TERMINAL arguments are unused. -On MS-DOS, all this does is return non-nil if we own the selection. - -\(fn SELECTION &optional TIME-OBJECT TERMINAL)" - (if (x-selection-owner-p selection) - t)) - -;; x-get-selection-internal is used in select.el -(defun x-get-selection-internal (_selection-symbol _target-type - &optional _time-stamp _terminal) - "Return text selected from some X window. -SELECTION-SYMBOL is typically `PRIMARY', `SECONDARY', or `CLIPBOARD'. -\(Those are literal upper-case symbol names, since that's what X expects.) -TARGET-TYPE is the type of data desired, typically `STRING'. - -TIME-STAMP is the time to use in the XConvertSelection call for foreign -selections. If omitted, defaults to the time for the last event. - -TERMINAL should be a terminal object or a frame specifying the X -server to query. If omitted or nil, that stands for the selected -frame's display, or the first available X display. - -On Nextstep, TIME-STAMP and TERMINAL are unused. - -\(fn SELECTION-SYMBOL TARGET-TYPE &optional TIME-STAMP TERMINAL)" - (x-get-selection-value)) + (if gui-select-enable-clipboard + ;; Don't die if x-get-selection signals an error. + (with-demoted-errors "w16-get-clipboard-data:%s" + (w16-get-clipboard-data)))) + +;; gui-selection-owner-p is used in simple.el. +(gui-method-define gui-selection-exists-p pc #'x-selection-exists-p) +(gui-method-define gui-selection-owner-p pc #'w16-selection-owner-p) +(defun w16-selection-owner-p (_selection) + ;; FIXME: Other systems don't obey gui-select-enable-clipboard here. + (if gui-select-enable-clipboard + (let ((text + ;; Don't die if w16-get-clipboard-data signals an error. + (ignore-errors + (w16-get-clipboard-data)))) + ;; We consider ourselves the owner of the selection + ;; if it does not exist, or exists and compares + ;; equal with the last text we've put into the + ;; Windows clipboard. + (cond + ((not text) t) + ((or (eq text gui-last-selected-text) + (string= text gui-last-selected-text)) + text) + (t nil))))) + +;; gui-own-selection and gui-disown-selection are used in gui-set-selection. +(gui-method-define gui-own-selection pc + (lambda (_selection value) + ;; FIXME: Other systems don't obey + ;; gui-select-enable-clipboard here. + (ignore-errors + (w16--select-text value)) + value)) + +(gui-method-define gui-disown-selection pc + (lambda (selection &optional _time-object _terminal) + (if (w16-selection-owner-p selection) + t))) + +;; gui-get-selection is used in select.el +(gui-method-define gui-get-selection pc + (lambda (selection-symbol target-type) + (w16-get-selection-value))) ;; From src/fontset.c: (fset 'query-fontset 'ignore) @@ -463,20 +370,27 @@ Errors out because it is not supposed to be called, ever." (setq split-window-keep-point t) ;; Arrange for the kill and yank functions to set and check the ;; clipboard. - (setq interprogram-cut-function 'x-select-text) - (setq interprogram-paste-function 'x-get-selection-value) (menu-bar-enable-clipboard) (run-hooks 'terminal-init-msdos-hook)) ;; frame-creation-function-alist is examined by frame.el:make-frame. -(add-to-list 'frame-creation-function-alist - '(pc . msdos-create-frame-with-faces)) +(gui-method-define frame-creation-function + pc #'msdos-create-frame-with-faces) ;; window-system-initialization-alist is examined by startup.el:command-line. -(add-to-list 'window-system-initialization-alist - '(pc . msdos-initialize-window-system)) +(gui-method-define window-system-initialization + pc #'msdos-initialize-window-system) ;; We don't need anything beyond tty-handle-args for handling ;; command-line argument; see startup.el. -(add-to-list 'handle-args-function-alist '(pc . tty-handle-args)) +(gui-method-define handle-args-function pc #'tty-handle-args) + + +(declare-function w16-set-clipboard-data "w16select.c" + (string &optional ignored)) +(gui-method-define gui-select-text pc #'w16--select-text) +(gui-method-define gui-selection-value pc #'w16-get-selection-value) +(defun w16--select-text (text) + (when gui-select-enable-clipboard + (w16-set-clipboard-data text))) ;; --------------------------------------------------------------------------- diff --git a/lisp/term/w32-win.el b/lisp/term/w32-win.el index e103562ba7a..5266a45eba7 100644 --- a/lisp/term/w32-win.el +++ b/lisp/term/w32-win.el @@ -205,9 +205,8 @@ European languages which are distributed with Windows as See the documentation of `create-fontset-from-fontset-spec' for the format.") -(defun x-win-suspend-error () - "Report an error when a suspend is attempted. -This returns an error if any Emacs frames are X frames, or always under W32." +(defun w32-win-suspend-error () + "Report an error when a suspend is attempted." (error "Suspending an Emacs running under W32 makes no sense")) (defvar dynamic-library-alist) @@ -353,7 +352,7 @@ This returns an error if any Emacs frames are X frames, or always under W32." (cons '(reverse . t) default-frame-alist))))) ;; Don't let Emacs suspend under Windows. - (add-hook 'suspend-hook 'x-win-suspend-error) + (add-hook 'suspend-hook #'w32-win-suspend-error) ;; Turn off window-splitting optimization; w32 is usually fast enough ;; that this is only annoying. @@ -371,9 +370,76 @@ This returns an error if any Emacs frames are X frames, or always under W32." (setq w32-initialized t)) (add-to-list 'display-format-alist '("\\`w32\\'" . w32)) -(add-to-list 'handle-args-function-alist '(w32 . x-handle-args)) -(add-to-list 'frame-creation-function-alist '(w32 . x-create-frame-with-faces)) -(add-to-list 'window-system-initialization-alist '(w32 . w32-initialize-window-system)) +(gui-method-define handle-args-function w32 #'x-handle-args) +(gui-method-define frame-creation-function w32 + #'x-create-frame-with-faces) +(gui-method-define window-system-initialization w32 + #'w32-initialize-window-system) + +;;;; Selections + +(declare-function w32-set-clipboard-data "w32select.c" + (string &optional ignored)) +(declare-function w32-get-clipboard-data "w32select.c") + +(defun w32--select-text (text) + (if gui-select-enable-clipboard (w32-set-clipboard-data text))) + +(defun w32--get-selection-value () + "Return the value of the current selection. +Consult the selection. Treat empty strings as if they were unset." + (if gui-select-enable-clipboard + ;; Don't die if x-get-selection signals an error. + (with-demoted-errors "w32-get-clipboard-data:%S" + (w32-get-clipboard-data)))) + +;; Arrange for the kill and yank functions to set and check the clipboard. +(gui-method-define gui-select-text w32 #'w32--select-text) +(gui-method-define gui-selection-value w32 #'w32--get-selection-value) + +(when (eq system-type 'windows-nt) + ;; Make copy&pasting in w32's console interact with the system's clipboard! + (gui-method-define gui-select-text t #'w32--select-text) + (gui-method-define gui-selection-value t #'w32--get-selection-value)) + +;;; Fix interface to (X-specific) mouse.el +(gui-method-define gui-own-selection w32 + (lambda (type value) + (put 'x-selections (or type 'PRIMARY) data))) + +(gui-method-define gui-disown-selection w32 + (lambda (type) + (put 'x-selections (or type 'PRIMARY) nil))) + +(gui-method-define gui-get-selection w32 + (lambda (&optional type _data-type) + (get 'x-selections (or type 'PRIMARY)))) + +;; gui-selection-owner-p is used in simple.el +(gui-method-define gui-selection-owner-p w32 + (lambda (selection) + (and (memq selection '(nil PRIMARY SECONDARY)) + (get 'x-selections (or selection 'PRIMARY))))) +(gui-method-define gui-selection-exists-p w32 #'x-selection-exists-p) + +;; The "Windows" keys on newer keyboards bring up the Start menu +;; whether you want it or not - make Emacs ignore these keystrokes +;; rather than beep. +(global-set-key [lwindow] 'ignore) +(global-set-key [rwindow] 'ignore) + +(declare-function x-server-version "w32fns.c" (&optional terminal)) + +(defun w32-version () + "Return the MS-Windows version numbers. +The value is a list of three integers: the major and minor version +numbers, and the build number." + (x-server-version)) + +(defun w32-using-nt () + "Return non-nil if running on a Windows NT descendant. +That includes all Windows systems except for 9X/Me." + (getenv "SystemRoot")) (provide 'w32-win) diff --git a/lisp/term/x-win.el b/lisp/term/x-win.el index 964b9112553..4cbcf767c03 100644 --- a/lisp/term/x-win.el +++ b/lisp/term/x-win.el @@ -1156,7 +1156,7 @@ as returned by `x-server-vendor'." ;; We keep track of the last text selected here, so we can check the ;; current selection against it, and avoid passing back our own text -;; from x-selection-value. We track both +;; from x--selection-value. We track both ;; separately in case another X application only sets one of them ;; we aren't fooled by the PRIMARY or CLIPBOARD selection staying the same. (defvar x-last-selected-text-clipboard nil @@ -1217,91 +1217,81 @@ The value nil is the same as the list (UTF8_STRING COMPOUND_TEXT STRING)." (remove-text-properties 0 (length text) '(foreign-selection nil) text)) text)) -(defvar x-select-enable-clipboard) ; common-win - ;; Return the value of the current X selection. ;; Consult the selection. Treat empty strings as if they were unset. ;; If this function is called twice and finds the same text, ;; it returns nil the second time. This is so that a single ;; selection won't be added to the kill ring over and over. -(defun x-selection-value () +(gui-method-define gui-selection-value x #'x--selection-value) +(defun x--selection-value () ;; With multi-tty, this function may be called from a tty frame. - (when (eq (framep (selected-frame)) 'x) - (let (clip-text primary-text) - (when x-select-enable-clipboard - (setq clip-text (x-selection-value-internal 'CLIPBOARD)) - (if (string= clip-text "") (setq clip-text nil)) - - ;; Check the CLIPBOARD selection for 'newness', is it different - ;; from what we remembered them to be last time we did a - ;; cut/paste operation. - (setq clip-text - (cond ;; check clipboard - ((or (not clip-text) (string= clip-text "")) - (setq x-last-selected-text-clipboard nil)) - ((eq clip-text x-last-selected-text-clipboard) nil) - ((string= clip-text x-last-selected-text-clipboard) - ;; Record the newer string, - ;; so subsequent calls can use the `eq' test. - (setq x-last-selected-text-clipboard clip-text) - nil) - (t (setq x-last-selected-text-clipboard clip-text))))) - - (when x-select-enable-primary - (setq primary-text (x-selection-value-internal 'PRIMARY)) - ;; Check the PRIMARY selection for 'newness', is it different - ;; from what we remembered them to be last time we did a - ;; cut/paste operation. - (setq primary-text - (cond ;; check primary selection - ((or (not primary-text) (string= primary-text "")) - (setq x-last-selected-text-primary nil)) - ((eq primary-text x-last-selected-text-primary) nil) - ((string= primary-text x-last-selected-text-primary) - ;; Record the newer string, - ;; so subsequent calls can use the `eq' test. - (setq x-last-selected-text-primary primary-text) - nil) - (t - (setq x-last-selected-text-primary primary-text))))) - - ;; As we have done one selection, clear this now. - (setq next-selection-coding-system nil) - - ;; At this point we have recorded the current values for the - ;; selection from clipboard (if we are supposed to) and primary. - ;; So return the first one that has changed - ;; (which is the first non-null one). - ;; - ;; NOTE: There will be cases where more than one of these has - ;; changed and the new values differ. This indicates that - ;; something like the following has happened since the last time - ;; we looked at the selections: Application X set all the - ;; selections, then Application Y set only one of them. - ;; In this case since we don't have - ;; timestamps there is no way to know what the 'correct' value to - ;; return is. The nice thing to do would be to tell the user we - ;; saw multiple possible selections and ask the user which was the - ;; one they wanted. - (or clip-text primary-text) - ))) + (let (clip-text primary-text) + (when x-select-enable-clipboard + (setq clip-text (x-selection-value-internal 'CLIPBOARD)) + (if (string= clip-text "") (setq clip-text nil)) + + ;; Check the CLIPBOARD selection for 'newness', is it different + ;; from what we remembered them to be last time we did a + ;; cut/paste operation. + (setq clip-text + (cond ;; check clipboard + ((or (not clip-text) (string= clip-text "")) + (setq x-last-selected-text-clipboard nil)) + ((eq clip-text x-last-selected-text-clipboard) nil) + ((string= clip-text x-last-selected-text-clipboard) + ;; Record the newer string, + ;; so subsequent calls can use the `eq' test. + (setq x-last-selected-text-clipboard clip-text) + nil) + (t (setq x-last-selected-text-clipboard clip-text))))) + + (when x-select-enable-primary + (setq primary-text (x-selection-value-internal 'PRIMARY)) + ;; Check the PRIMARY selection for 'newness', is it different + ;; from what we remembered them to be last time we did a + ;; cut/paste operation. + (setq primary-text + (cond ;; check primary selection + ((or (not primary-text) (string= primary-text "")) + (setq x-last-selected-text-primary nil)) + ((eq primary-text x-last-selected-text-primary) nil) + ((string= primary-text x-last-selected-text-primary) + ;; Record the newer string, + ;; so subsequent calls can use the `eq' test. + (setq x-last-selected-text-primary primary-text) + nil) + (t + (setq x-last-selected-text-primary primary-text))))) + + ;; As we have done one selection, clear this now. + (setq next-selection-coding-system nil) + + ;; At this point we have recorded the current values for the + ;; selection from clipboard (if we are supposed to) and primary. + ;; So return the first one that has changed + ;; (which is the first non-null one). + ;; + ;; NOTE: There will be cases where more than one of these has + ;; changed and the new values differ. This indicates that + ;; something like the following has happened since the last time + ;; we looked at the selections: Application X set all the + ;; selections, then Application Y set only one of them. + ;; In this case since we don't have + ;; timestamps there is no way to know what the 'correct' value to + ;; return is. The nice thing to do would be to tell the user we + ;; saw multiple possible selections and ask the user which was the + ;; one they wanted. + (or clip-text primary-text) + )) (define-obsolete-function-alias 'x-cut-buffer-or-selection-value 'x-selection-value "24.1") ;; Arrange for the kill and yank functions to set and check the clipboard. -(setq interprogram-cut-function 'x-select-text) -(setq interprogram-paste-function 'x-selection-value) - -;; Make paste from other applications use the decoding in x-select-request-type -;; and not just STRING. -(defun x-get-selection-value () - "Get the current value of the PRIMARY selection. -Request data types in the order specified by `x-select-request-type'." - (x-selection-value-internal 'PRIMARY)) (defun x-clipboard-yank () "Insert the clipboard contents, or the last stretch of killed text." + (declare (obsolete clipboard-yank "25.1")) (interactive "*") (let ((clipboard-text (x-selection-value-internal 'CLIPBOARD)) (x-select-enable-clipboard t)) @@ -1327,9 +1317,9 @@ Request data types in the order specified by `x-select-request-type'." (defun x-win-suspend-error () "Report an error when a suspend is attempted. -This returns an error if any Emacs frames are X frames, or always under W32." +This returns an error if any Emacs frames are X frames." ;; Don't allow suspending if any of the frames are X frames. - (if (memq 'x (mapcar 'window-system (frame-list))) + (if (memq 'x (mapcar #'window-system (frame-list))) (error "Cannot suspend Emacs while running under X"))) (defvar x-initialized nil @@ -1463,9 +1453,28 @@ This returns an error if any Emacs frames are X frames, or always under W32." (setq x-initialized t)) (add-to-list 'display-format-alist '("\\`[^:]*:[0-9]+\\(\\.[0-9]+\\)?\\'" . x)) -(add-to-list 'handle-args-function-alist '(x . x-handle-args)) -(add-to-list 'frame-creation-function-alist '(x . x-create-frame-with-faces)) -(add-to-list 'window-system-initialization-alist '(x . x-initialize-window-system)) +(gui-method-define handle-args-function x #'x-handle-args) +(gui-method-define frame-creation-function x #'x-create-frame-with-faces) +(gui-method-define window-system-initialization x #'x-initialize-window-system) + +(defvar x-select-enable-primary) ; x-win.el +(gui-method-define gui-select-text x + (lambda (text) + (when x-select-enable-primary + (gui-set-selection 'PRIMARY text) + (setq x-last-selected-text-primary text)) + (when x-select-enable-clipboard + ;; When cutting, the selection is cleared and PRIMARY + ;; set to the empty string. Prevent that, PRIMARY + ;; should not be reset by cut (Bug#16382). + (setq saved-region-selection text) + (gui-set-selection 'CLIPBOARD text) + (setq x-last-selected-text-clipboard text)))) +(gui-method-define gui-own-selection x #'x-own-selection-internal) +(gui-method-define gui-disown-selection x #'x-disown-selection-internal) +(gui-method-define gui-selection-owner-p x #'x-selection-owner-p) +(gui-method-define gui-selection-exists-p x #'x-selection-exists-p) +(gui-method-define gui-get-selection x #'x-get-selection-internal) ;; Initiate drag and drop (add-hook 'after-make-frame-functions 'x-dnd-init-frame) diff --git a/lisp/textmodes/reftex-sel.el b/lisp/textmodes/reftex-sel.el index a993a883b0f..e1fc8bf908e 100644 --- a/lisp/textmodes/reftex-sel.el +++ b/lisp/textmodes/reftex-sel.el @@ -103,7 +103,7 @@ This keymap can be used to configure the label selection process which is started with the command \\[reftex-reference].") ;;;###autoload -(define-derived-mode reftex-select-label-mode fundamental-mode "LSelect" +(define-derived-mode reftex-select-label-mode special-mode "LSelect" "Major mode for selecting a label in a LaTeX document. This buffer was created with RefTeX. It only has a meaningful keymap when you are in the middle of a @@ -149,7 +149,7 @@ This keymap can be used to configure the BibTeX selection process which is started with the command \\[reftex-citation].") ;;;###autoload -(define-derived-mode reftex-select-bib-mode fundamental-mode "BSelect" +(define-derived-mode reftex-select-bib-mode special-mode "BSelect" "Major mode for selecting a citation key in a LaTeX document. This buffer was created with RefTeX. It only has a meaningful keymap when you are in the middle of a @@ -296,7 +296,7 @@ During a selection process, these are the local bindings. (setq to (point)) (when font (put-text-property from to - 'face reftex-file-boundary-face)) + 'font-lock-face reftex-file-boundary-face)) (when toc-buffer (if mouse-face (put-text-property from (1- to) @@ -314,7 +314,7 @@ During a selection process, these are the local bindings. (setq to (point)) (when font (put-text-property from to - 'face reftex-section-heading-face)) + 'font-lock-face reftex-section-heading-face)) (when toc-buffer (if mouse-face (put-text-property from (1- to) @@ -353,7 +353,7 @@ During a selection process, these are the local bindings. (setq to (point)) (put-text-property (- (point) (length label)) to - 'face (if comment + 'font-lock-face (if comment 'font-lock-comment-face label-face)) (goto-char to)) @@ -383,14 +383,14 @@ During a selection process, these are the local bindings. (setq index-tag (format "<%s>" (nth 1 cell))) (and font (put-text-property 0 (length index-tag) - 'face reftex-index-tag-face index-tag)) + 'font-lock-face reftex-index-tag-face index-tag)) (insert label-indent index-tag " " (nth 7 cell)) (when font (setq to (point)) (put-text-property (- (point) (length (nth 7 cell))) to - 'face index-face) + 'font-lock-face index-face) (goto-char to)) (insert "\n") (setq to (point)) @@ -690,7 +690,7 @@ Cycle in reverse order if optional argument REVERSE is non-nil." eoe (or (next-single-property-change (point) :data) (point-max))) (setq ovl (reftex-make-overlay boe eoe)) (push (list data ovl separator) reftex-select-marked) - (reftex-overlay-put ovl 'face reftex-select-mark-face) + (reftex-overlay-put ovl 'font-lock-face reftex-select-mark-face) (reftex-overlay-put ovl 'before-string (if separator (format "*%c%d* " separator diff --git a/lisp/textmodes/reftex-toc.el b/lisp/textmodes/reftex-toc.el index e164770fa0c..fab558ff2fb 100644 --- a/lisp/textmodes/reftex-toc.el +++ b/lisp/textmodes/reftex-toc.el @@ -129,7 +129,7 @@ (defvar reftex-toc-include-index-indicator nil) (defvar reftex-toc-max-level-indicator nil) -(define-derived-mode reftex-toc-mode fundamental-mode "TOC" +(define-derived-mode reftex-toc-mode special-mode "TOC" "Major mode for managing Table of Contents for LaTeX files. This buffer was created with RefTeX. Press `?' for a summary of important key bindings. @@ -279,7 +279,7 @@ SPC=view TAB=goto RET=goto+hide [q]uit [r]escan [l]abels [f]ollow [x]r [?]Help " (abbreviate-file-name reftex-last-toc-master))) (if (reftex-use-fonts) - (put-text-property (point-min) (point) 'face reftex-toc-header-face)) + (put-text-property (point-min) (point) 'font-lock-face reftex-toc-header-face)) (put-text-property (point-min) (point) 'intangible t) (put-text-property (point-min) (1+ (point-min)) 'xr-alist xr-alist) diff --git a/lisp/textmodes/reftex.el b/lisp/textmodes/reftex.el index ccbdc9595c4..31670a91860 100644 --- a/lisp/textmodes/reftex.el +++ b/lisp/textmodes/reftex.el @@ -2997,7 +2997,7 @@ Optional prefix argument OTHER-WINDOW goes to the label in another window. ;;;*** -;;;### (autoloads nil "reftex-sel" "reftex-sel.el" "086c2dd94aedc95620c5e972ad4c741a") +;;;### (autoloads nil "reftex-sel" "reftex-sel.el" "4ffdcf92acf13e0e93cfac51b6e0607c") ;;; Generated autoloads from reftex-sel.el (autoload 'reftex-select-label-mode "reftex-sel" "\ @@ -3050,7 +3050,7 @@ During a selection process, these are the local bindings. ;;;*** -;;;### (autoloads nil "reftex-toc" "reftex-toc.el" "0364fac43b02eee087ee4cbe37f7f76c") +;;;### (autoloads nil "reftex-toc" "reftex-toc.el" "30e611bd9b33af3e6a5a22cf7497de78") ;;; Generated autoloads from reftex-toc.el (autoload 'reftex-toc "reftex-toc" "\ diff --git a/lisp/textmodes/remember.el b/lisp/textmodes/remember.el index 089f5b2d889..95b947481b5 100644 --- a/lisp/textmodes/remember.el +++ b/lisp/textmodes/remember.el @@ -499,6 +499,8 @@ If this is nil, then `diary-file' will be used instead." :type '(choice (const :tag "diary-file" nil) file) :group 'remember) +(defvar calendar-date-style) ; calendar.el + (defun remember-diary-convert-entry (entry) "Translate MSG to an entry readable by diary." (save-match-data @@ -511,23 +513,17 @@ If this is nil, then `diary-file' will be used instead." ;; which requires calendar. (require 'calendar) (replace-match - (let ((style (if (boundp 'calendar-date-style) - calendar-date-style - ;; Don't complain about obsolescence. - (if (with-no-warnings european-calendar-style) - 'european - 'american)))) - (cond ((eq style 'european) - (concat (match-string 3 entry) "/" - (match-string 2 entry) "/" - (match-string 1 entry))) - ((eq style 'iso) - (concat (match-string 1 entry) "-" + (cond ((eq calendar-date-style 'european) + (concat (match-string 3 entry) "/" + (match-string 2 entry) "/" + (match-string 1 entry))) + ((eq calendar-date-style 'iso) + (concat (match-string 1 entry) "-" (match-string 2 entry) "-" (match-string 3 entry))) - (t (concat (match-string 2 entry) "/" - (match-string 3 entry) "/" - (match-string 1 entry))))) + (t (concat (match-string 2 entry) "/" + (match-string 3 entry) "/" + (match-string 1 entry)))) t t entry)) entry))) diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el index 18843bcd15a..bc10eab0498 100644 --- a/lisp/textmodes/tex-mode.el +++ b/lisp/textmodes/tex-mode.el @@ -2573,18 +2573,28 @@ line LINE of the window, or centered if LINE is nil." (prefix-numeric-value linenum) (/ (window-height) 2))))))) +(defcustom tex-print-file-extension ".dvi" + "The TeX-compiled file extension for viewing and printing. +If you use pdflatex instead of latex, set this to \".pdf\" and modify + `tex-dvi-view-command' and `tex-dvi-print-command' appropriately." + :type 'string + :group 'tex-view + :version "25.1") + (defun tex-print (&optional alt) "Print the .dvi file made by \\[tex-region], \\[tex-buffer] or \\[tex-file]. Runs the shell command defined by `tex-dvi-print-command'. If prefix argument is provided, use the alternative command, `tex-alt-dvi-print-command'." (interactive "P") - (let ((print-file-name-dvi (tex-append tex-print-file ".dvi")) + (let ((print-file-name-dvi (tex-append tex-print-file + tex-print-file-extension)) test-name) (if (and (not (equal (current-buffer) tex-last-buffer-texed)) (buffer-file-name) ;; Check that this buffer's printed file is up to date. (file-newer-than-file-p - (setq test-name (tex-append (buffer-file-name) ".dvi")) + (setq test-name (tex-append (buffer-file-name) + tex-print-file-extension)) (buffer-file-name))) (setq print-file-name-dvi test-name)) (if (not (file-exists-p print-file-name-dvi)) diff --git a/lisp/tooltip.el b/lisp/tooltip.el index 9d0954fc5dc..26cce418e45 100644 --- a/lisp/tooltip.el +++ b/lisp/tooltip.el @@ -215,11 +215,9 @@ This might return nil if the event did not occur over a buffer." "Change the value of KEY in alist ALIST to VALUE. If there's no association for KEY in ALIST, add one, otherwise change the existing association. Value is the resulting alist." - (let ((param (assq key alist))) - (if (consp param) - (setcdr param value) - (push (cons key value) alist)) - alist)) + (declare (obsolete "use (setf (alist-get ..) ..) instead" "25.1")) + (setf (alist-get key alist) value) + alist) (declare-function x-show-tip "xfns.c" (string &optional frame parms timeout dx dy)) @@ -244,10 +242,10 @@ in echo area." (fg (face-attribute 'tooltip :foreground)) (bg (face-attribute 'tooltip :background))) (when (stringp fg) - (setq params (tooltip-set-param params 'foreground-color fg)) - (setq params (tooltip-set-param params 'border-color fg))) + (setf (alist-get 'foreground-color params) fg) + (setf (alist-get 'border-color params) fg)) (when (stringp bg) - (setq params (tooltip-set-param params 'background-color bg))) + (setf (alist-get 'background-color params) bg)) (x-show-tip (propertize text 'face 'tooltip) (selected-frame) params diff --git a/lisp/tutorial.el b/lisp/tutorial.el index f6d4cb053ec..fcb840fcfed 100644 --- a/lisp/tutorial.el +++ b/lisp/tutorial.el @@ -209,10 +209,10 @@ LEFT and RIGHT are the elements to compare." (symbol-name cx))))))) (defconst tutorial--default-keys - ;; On window system, `suspend-emacs' is replaced in the default - ;; keymap + ;; On window system, `suspend-emacs' is replaced in the default keymap. (let* ((suspend-emacs 'suspend-frame) (default-keys + ;; The first few are not mentioned but are basic: `((ESC-prefix [27]) (Control-X-prefix [?\C-x]) (mode-specific-command-prefix [?\C-c]) @@ -552,7 +552,7 @@ with some explanatory links." ;; binding because the Hebrew tutorial uses directional ;; controls and Hebrew character maqaf, the Hebrew hyphen, ;; immediately before the binding string. - (concat "\\([[:space:]]\\|[[:punct:]]\\)\\(" + (concat "\\(?:[[:space:]]\\|[[:punct:]]\\)\\(" (mapconcat (lambda (kdf) (regexp-quote (tutorial--key-description (nth 1 kdf)))) diff --git a/lisp/url/ChangeLog b/lisp/url/ChangeLog index 9554c6e519c..21a779f85b3 100644 --- a/lisp/url/ChangeLog +++ b/lisp/url/ChangeLog @@ -1,3 +1,28 @@ +2014-10-07 Eli Zaretskii <eliz@gnu.org> + + * url-http.el (url-http-create-request): Recheck zlib availability + on windows-nt each time it might be required. (Bug#18650) + +2014-09-28 Ulf Jasper <ulf.jasper@web.de> + + * url-gw.el (url-open-stream): New optional parameter + `gateway-method'. If non-nil use it instead of global variable + `url-gateway-method'. + + * url/url-http.el (url-http): New optional parameter + `gateway-method', pass it to `url-http-find-free-connection'. + (url-http-find-free-connection): New optional parameter + gateway-method, pass it to `url-open-stream'. + (url-https-create-secure-wrapper): Do not modify + `url-gateway-method' but explicitly provide 'tls as gateway-method + parameter to `url-https'. + +2014-09-22 Dmitry Gutov <dgutov@yandex.ru> + + * url.el (url-retrieve-internal): Clarify the docstring. + + * url-http.el (url-http): Same. (Bug#18116) + 2014-08-07 Reuben Thomas <rrt@sc3d.org> * url-handlers.el: Remove a comment about VMS, which we no longer diff --git a/lisp/url/url-gw.el b/lisp/url/url-gw.el index b1cc8a29e3b..4a6189dcfea 100644 --- a/lisp/url/url-gw.el +++ b/lisp/url/url-gw.el @@ -203,20 +203,24 @@ linked Emacs under SunOS 4.x." proc))) ;;;###autoload -(defun url-open-stream (name buffer host service) +(defun url-open-stream (name buffer host service &optional gateway-method) "Open a stream to HOST, possibly via a gateway. Args per `open-network-stream'. Will not make a connection if `url-gateway-unplugged' is non-nil. -Might do a non-blocking connection; use `process-status' to check." +Might do a non-blocking connection; use `process-status' to check. + +Optional arg GATEWAY-METHOD specifies the gateway to be used, +overriding the value of `url-gateway-method'." (unless url-gateway-unplugged - (let ((gw-method (if (and url-gateway-local-host-regexp - (not (eq 'tls url-gateway-method)) - (not (eq 'ssl url-gateway-method)) - (string-match - url-gateway-local-host-regexp - host)) - 'native - url-gateway-method)) + (let* ((gwm (or gateway-method url-gateway-method)) + (gw-method (if (and url-gateway-local-host-regexp + (not (eq 'tls gwm)) + (not (eq 'ssl gwm)) + (string-match + url-gateway-local-host-regexp + host)) + 'native + gwm)) ;; An attempt to deal with denied connections, and attempt ;; to reconnect (cur-retries 0) diff --git a/lisp/url/url-handlers.el b/lisp/url/url-handlers.el index 6b7ab8c9ce6..56a0986b41c 100644 --- a/lisp/url/url-handlers.el +++ b/lisp/url/url-handlers.el @@ -122,7 +122,7 @@ regular expression avoids conflicts with local files that look like URLs \(Gnus is particularly bad at this\)." :group 'url :type 'regexp - :version "24.5" + :version "25.1" :set (lambda (symbol value) (let ((enable url-handler-mode)) (url-handler-mode 0) diff --git a/lisp/url/url-http.el b/lisp/url/url-http.el index 608a865be7b..f9fbea1ba74 100644 --- a/lisp/url/url-http.el +++ b/lisp/url/url-http.el @@ -171,7 +171,7 @@ request.") url-http-open-connections)) nil) -(defun url-http-find-free-connection (host port) +(defun url-http-find-free-connection (host port &optional gateway-method) (let ((conns (gethash (cons host port) url-http-open-connections)) (connection nil)) (while (and conns (not connection)) @@ -193,7 +193,7 @@ request.") ;; `url-open-stream' needs a buffer in which to do things ;; like authentication. But we use another buffer afterwards. (unwind-protect - (let ((proc (url-open-stream host buf host port))) + (let ((proc (url-open-stream host buf host port gateway-method))) ;; url-open-stream might return nil. (when (processp proc) ;; Drop the temp buffer link before killing the buffer. @@ -313,7 +313,14 @@ request.") (concat "From: " url-personal-mail-address "\r\n")) ;; Encodings we understand - (if url-mime-encoding-string + (if (or url-mime-encoding-string + ;; MS-Windows loads zlib dynamically, so recheck + ;; in case they made it available since + ;; initialization in url-vars.el. + (and (eq 'system-type 'windows-nt) + (fboundp 'zlib-available-p) + (zlib-available-p) + (setq url-mime-encoding-string "gzip"))) (concat "Accept-encoding: " url-mime-encoding-string "\r\n")) (if url-mime-charset-string @@ -1167,22 +1174,25 @@ the end of the document." (when (eq process-buffer (current-buffer)) (goto-char (point-max))))) -(defun url-http (url callback cbargs &optional retry-buffer) +(defun url-http (url callback cbargs &optional retry-buffer gateway-method) "Retrieve URL via HTTP asynchronously. URL must be a parsed URL. See `url-generic-parse-url' for details. -When retrieval is completed, execute the function CALLBACK, using -the arguments listed in CBARGS. The first element in CBARGS +When retrieval is completed, execute the function CALLBACK, passing it +an updated value of CBARGS as arguments. The first element in CBARGS should be a plist describing what has happened so far during the request, as described in the docstring of `url-retrieve' (if in doubt, specify nil). Optional arg RETRY-BUFFER, if non-nil, specifies the buffer of a -previous `url-http' call, which is being re-attempted." +previous `url-http' call, which is being re-attempted. + +Optional arg GATEWAY-METHOD specifies the gateway to be used, +overriding the value of `url-gateway-method'." (cl-check-type url vector "Need a pre-parsed URL.") (let* ((host (url-host (or url-using-proxy url))) (port (url-port (or url-using-proxy url))) - (connection (url-http-find-free-connection host port)) + (connection (url-http-find-free-connection host port gateway-method)) (buffer (or retry-buffer (generate-new-buffer (format " *http %s:%d*" host port))))) @@ -1440,9 +1450,8 @@ p3p (defmacro url-https-create-secure-wrapper (method args) `(defun ,(intern (format (if method "url-https-%s" "url-https") method)) ,args ,(format "HTTPS wrapper around `%s' call." (or method "url-http")) - (let ((url-gateway-method 'tls)) - (,(intern (format (if method "url-http-%s" "url-http") method)) - ,@(remove '&rest (remove '&optional args)))))) + (,(intern (format (if method "url-http-%s" "url-http") method)) + ,@(remove '&rest (remove '&optional (append args (if method nil '(nil 'tls)))))))) ;;;###autoload (autoload 'url-https "url-http") (url-https-create-secure-wrapper nil (url callback cbargs)) diff --git a/lisp/url/url-tramp.el b/lisp/url/url-tramp.el index 83cedd1d62c..9cc17a35346 100644 --- a/lisp/url/url-tramp.el +++ b/lisp/url/url-tramp.el @@ -33,7 +33,7 @@ "List of URL protocols the work is handled by Tramp. They must also be covered by `url-handler-regexp'." :group 'url - :version "24.5" + :version "25.1" :type '(list string)) (defun url-tramp-convert-url-to-tramp (url) diff --git a/lisp/url/url.el b/lisp/url/url.el index 620593a9a81..4594ab6a7f7 100644 --- a/lisp/url/url.el +++ b/lisp/url/url.el @@ -170,8 +170,8 @@ URL-encoded before it's used." (defun url-retrieve-internal (url callback cbargs &optional silent inhibit-cookies) "Internal function; external interface is `url-retrieve'. -CBARGS is the list of arguments that the callback function will -receive; its first element should be a plist specifying what has +The callback function will receive an updated value of CBARGS as +arguments; its first element should be a plist specifying what has happened so far during the request, as described in the docstring of `url-retrieve' (if in doubt, specify nil). diff --git a/lisp/vc/add-log.el b/lisp/vc/add-log.el index 8e44c024dc4..cd6fcaec28e 100644 --- a/lisp/vc/add-log.el +++ b/lisp/vc/add-log.el @@ -1097,12 +1097,17 @@ file were isearch was started." (ignore-errors (version< (substring b (length name)) (substring a (length name)))))))) - (files (if isearch-forward files (reverse files)))) - (find-file-noselect - (if wrap - (car files) - (cadr (member (file-name-nondirectory (buffer-file-name buffer)) - files)))))) + (files (if isearch-forward files (reverse files))) + (file (if wrap + (car files) + (cadr (member (file-name-nondirectory (buffer-file-name buffer)) + files))))) + ;; If there are no files that match the default pattern ChangeLog.[0-9], + ;; return the current buffer to force isearch wrapping to its beginning. + ;; If file is nil, multi-isearch-search-fun will signal "end of multi". + (if (file-exists-p file) + (find-file-noselect file) + (current-buffer)))) (defun change-log-fill-forward-paragraph (n) "Cut paragraphs so filling preserves open parentheses at beginning of lines." diff --git a/lisp/vc/diff-mode.el b/lisp/vc/diff-mode.el index d4e973956c8..9afb9f47e91 100644 --- a/lisp/vc/diff-mode.el +++ b/lisp/vc/diff-mode.el @@ -304,7 +304,7 @@ well." (defface diff-changed '((t nil)) "`diff-mode' face used to highlight changed lines." - :version "24.5" + :version "25.1" :group 'diff-mode) (define-obsolete-face-alias 'diff-changed-face 'diff-changed "22.1") (defvar diff-changed-face 'diff-changed) @@ -343,7 +343,7 @@ well." (((class color grayscale) (min-colors 88) (background dark)) :foreground "#dddddd")) "`diff-mode' face used to highlight context and other side-information." - :version "24.5" + :version "25.1" :group 'diff-mode) (define-obsolete-face-alias 'diff-context-face 'diff-context "22.1") (defvar diff-context-face 'diff-context) diff --git a/lisp/vc/vc-annotate.el b/lisp/vc/vc-annotate.el index d0887fe3531..580e7727a06 100644 --- a/lisp/vc/vc-annotate.el +++ b/lisp/vc/vc-annotate.el @@ -60,7 +60,7 @@ is applied to the background." (with-demoted-errors ;; Update the value of the dependent variable. (custom-reevaluate-setting 'vc-annotate-color-map)))) - :version "24.5" + :version "25.1" :group 'vc) (defcustom vc-annotate-color-map diff --git a/lisp/vc/vc-dir.el b/lisp/vc/vc-dir.el index 5e074191577..be3b1fa94b5 100644 --- a/lisp/vc/vc-dir.el +++ b/lisp/vc/vc-dir.el @@ -433,7 +433,8 @@ If NOINSERT, ignore elements on ENTRIES which are not in the ewoc." ;; previous node was in a different directory. (let* ((rd (file-relative-name entrydir)) (prev-node (ewoc-prev vc-ewoc node)) - (prev-dir (vc-dir-node-directory prev-node))) + (prev-dir (if prev-node + (vc-dir-node-directory prev-node)))) (unless (string-equal entrydir prev-dir) (ewoc-enter-before vc-ewoc node (vc-dir-create-fileinfo rd nil nil nil entrydir)))) diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el index 27a2f8b3d4d..afcfd666082 100644 --- a/lisp/vc/vc-git.el +++ b/lisp/vc/vc-git.el @@ -774,7 +774,7 @@ This prompts for a branch to merge from." "Return the list of files with conflicts in DIRECTORY." (let* ((status (vc-git--run-command-string directory "status" "--porcelain" "--")) - (lines (split-string status "\n" 'omit-nulls)) + (lines (when status (split-string status "\n" 'omit-nulls))) files) (dolist (line lines files) (when (string-match "\\([ MADRCU?!][ MADRCU?!]\\) \\(.+\\)\\(?: -> \\(.+\\)\\)?" @@ -798,6 +798,10 @@ This prompts for a branch to merge from." (defun vc-git-find-file-hook () "Activate `smerge-mode' if there is a conflict." (when (and buffer-file-name + ;; FIXME + ;; 1) the net result is to call git twice per file. + ;; 2) v-g-c-f is documented to take a directory. + ;; http://lists.gnu.org/archive/html/emacs-devel/2014-01/msg01126.html (vc-git-conflicted-files buffer-file-name) (save-excursion (goto-char (point-min)) diff --git a/lisp/vc/vc-svn.el b/lisp/vc/vc-svn.el index 85976db78bd..c7568e456f5 100644 --- a/lisp/vc/vc-svn.el +++ b/lisp/vc/vc-svn.el @@ -195,7 +195,7 @@ If you want to force an empty list of arguments, use t." (?~ . edited))) (re (if remote "^\\(.\\)\\(.\\).....? \\([ *]\\) +\\(?:[-0-9]+\\)? \\(.*\\)$" ;; Subexp 3 is a dummy in this case, so the numbers match. - "^\\(.\\)\\(.\\)...\\(.\\) \\(.*\\)$")) + "^\\(.\\)\\(.\\)...\\(.\\).? \\(.*\\)$")) result) (goto-char (point-min)) (while (re-search-forward re nil t) @@ -354,14 +354,23 @@ This is only possible if SVN is responsible for FILE's directory.") (concat "-r" rev)) (vc-switches 'SVN 'checkout)))) -(defun vc-svn-ignore (file &optional _directory _remove) +(defun vc-svn-ignore (file &optional directory remove) "Ignore FILE under Subversion. FILE is a file wildcard, relative to the root directory of DIRECTORY." - (vc-svn-command t 0 file "propedit" "svn:ignore")) - -(defun vc-svn-ignore-completion-table (_file) - "Return the list of ignored files." - ) + (let* ((ignores (vc-svn-ignore-completion-table directory)) + (file (file-relative-name file directory)) + (ignores (if remove + (delete file ignores) + (push file ignores)))) + (vc-svn-command nil 0 nil nil "propset" "svn:ignore" + (mapconcat #'identity ignores "\n") + (expand-file-name directory)))) + +(defun vc-svn-ignore-completion-table (directory) + "Return the list of ignored files in DIRECTORY." + (with-temp-buffer + (vc-svn-command t t nil "propget" "svn:ignore" (expand-file-name directory)) + (split-string (buffer-string)))) (defun vc-svn-find-admin-dir (file) "Return the administrative directory of FILE." diff --git a/lisp/w32-common-fns.el b/lisp/w32-common-fns.el deleted file mode 100644 index d149500c327..00000000000 --- a/lisp/w32-common-fns.el +++ /dev/null @@ -1,134 +0,0 @@ -;;; w32-common-fns.el --- Lisp routines for Windows and Cygwin-w32 - -;; Copyright (C) 1994, 2001-2014 Free Software Foundation, Inc. - -;; This file is part of GNU Emacs. - -;; GNU Emacs is free software: you can redistribute it and/or modify -;; it under the terms of the GNU General Public License as published by -;; the Free Software Foundation, either version 3 of the License, or -;; (at your option) any later version. - -;; GNU Emacs is distributed in the hope that it will be useful, -;; but WITHOUT ANY WARRANTY; without even the implied warranty of -;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;; GNU General Public License for more details. - -;; You should have received a copy of the GNU General Public License -;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. - -;;; Commentary: -;;; -;;; This file contains functions that are used by both native NT Emacs -;;; and Cygwin Emacs compiled to use the native Windows widget -;;; library. - -(declare-function x-server-version "w32fns.c" (&optional terminal)) - -(defun w32-version () - "Return the MS-Windows version numbers. -The value is a list of three integers: the major and minor version -numbers, and the build number." - (x-server-version)) - -(defun w32-using-nt () - "Return non-nil if running on a Windows NT descendant. -That includes all Windows systems except for 9X/Me." - (getenv "SystemRoot")) - -(declare-function w32-get-clipboard-data "w32select.c") -(declare-function w32-set-clipboard-data "w32select.c") -(declare-function x-server-version "w32fns.c" (&optional display)) - -;;; Fix interface to (X-specific) mouse.el -(defun x-set-selection (type data) - "Make an X selection of type TYPE and value DATA. -The argument TYPE (nil means `PRIMARY') says which selection, and -DATA specifies the contents. TYPE must be a symbol. \(It can also -be a string, which stands for the symbol with that name, but this -is considered obsolete.) DATA may be a string, a symbol, an -integer (or a cons of two integers or list of two integers). - -The selection may also be a cons of two markers pointing to the same buffer, -or an overlay. In these cases, the selection is considered to be the text -between the markers *at whatever time the selection is examined*. -Thus, editing done in the buffer after you specify the selection -can alter the effective value of the selection. - -The data may also be a vector of valid non-vector selection values. - -The return value is DATA. - -Interactively, this command sets the primary selection. Without -prefix argument, it reads the selection in the minibuffer. With -prefix argument, it uses the text of the region as the selection value. - -Note that on MS-Windows, primary and secondary selections set by Emacs -are not available to other programs." - (put 'x-selections (or type 'PRIMARY) data)) - -(defun x-get-selection (&optional type _data-type) - "Return the value of an X Windows selection. -The argument TYPE (default `PRIMARY') says which selection, -and the argument DATA-TYPE (default `STRING') says -how to convert the data. - -TYPE may be any symbol \(but nil stands for `PRIMARY'). However, -only a few symbols are commonly used. They conventionally have -all upper-case names. The most often used ones, in addition to -`PRIMARY', are `SECONDARY' and `CLIPBOARD'. - -DATA-TYPE is usually `STRING', but can also be one of the symbols -in `selection-converter-alist', which see. This argument is -ignored on MS-Windows and MS-DOS." - (get 'x-selections (or type 'PRIMARY))) - -;; x-selection-owner-p is used in simple.el -(defun x-selection-owner-p (&optional selection _terminal) - "" ; placeholder for doc.c - (and (memq selection '(nil PRIMARY SECONDARY)) - (get 'x-selections (or selection 'PRIMARY)))) - -;; The "Windows" keys on newer keyboards bring up the Start menu -;; whether you want it or not - make Emacs ignore these keystrokes -;; rather than beep. -(global-set-key [lwindow] 'ignore) -(global-set-key [rwindow] 'ignore) - -(defvar w32-charset-info-alist) ; w32font.c - - -;;;; Selections - -;; We keep track of the last text selected here, so we can check the -;; current selection against it, and avoid passing back our own text -;; from x-selection-value. -(defvar x-last-selected-text nil) -(defvar x-select-enable-clipboard) - -(defun x-get-selection-value () - "Return the value of the current selection. -Consult the selection. Treat empty strings as if they were unset." - (if x-select-enable-clipboard - (let (text) - ;; Don't die if x-get-selection signals an error. - (with-demoted-errors "w32-get-clipboard-data:%s" - (setq text (w32-get-clipboard-data))) - (if (string= text "") (setq text nil)) - (cond - ((not text) nil) - ((eq text x-last-selected-text) nil) - ((string= text x-last-selected-text) - ;; Record the newer string, so subsequent calls can use the 'eq' test. - (setq x-last-selected-text text) - nil) - (t - (setq x-last-selected-text text)))))) - -(defalias 'x-selection-value 'x-get-selection-value) - -;; Arrange for the kill and yank functions to set and check the clipboard. -(setq interprogram-cut-function 'x-select-text) -(setq interprogram-paste-function 'x-get-selection-value) - -(provide 'w32-common-fns) diff --git a/lisp/w32-fns.el b/lisp/w32-fns.el index fda51b1532b..2cbeb49d543 100644 --- a/lisp/w32-fns.el +++ b/lisp/w32-fns.el @@ -26,7 +26,6 @@ ;;; Code: (require 'w32-vars) -(require 'w32-common-fns) (defvar explicit-shell-file-name) diff --git a/lisp/window.el b/lisp/window.el index e159bd967f1..91a0e159a84 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -108,7 +108,7 @@ Return the buffer." ;; Return the buffer. buffer))) -(defun temp-buffer-window-show (&optional buffer action) +(defun temp-buffer-window-show (buffer &optional action) "Show temporary buffer BUFFER in a window. Return the window showing BUFFER. Pass ACTION as action argument to `display-buffer'." @@ -1745,9 +1745,6 @@ doc-string of `window-resizable'." (defalias 'window-height 'window-total-height) (defalias 'window-width 'window-body-width) -;; Eventually the following two should work pixelwise. - -;; See discussion in bug#4543. (defun window-full-height-p (&optional window) "Return t if WINDOW is as high as its containing frame. More precisely, return t if and only if the total height of @@ -1755,8 +1752,10 @@ WINDOW equals the total height of the root window of WINDOW's frame. WINDOW must be a valid window and defaults to the selected one." (setq window (window-normalize-window window)) - (= (window-pixel-height window) - (window-pixel-height (frame-root-window window)))) + (if (window-minibuffer-p window) + (eq window (frame-root-window (window-frame window))) + (= (window-pixel-height window) + (window-pixel-height (frame-root-window window))))) (defun window-full-width-p (&optional window) "Return t if WINDOW is as wide as its containing frame. @@ -1780,28 +1779,26 @@ optional argument PIXELWISE is passed to the functions." (window-body-height window pixelwise))) (defun window-current-scroll-bars (&optional window) - "Return the current scroll bar settings for WINDOW. + "Return the current scroll bar types for WINDOW. WINDOW must be a live window and defaults to the selected one. The return value is a cons cell (VERTICAL . HORIZONTAL) where VERTICAL specifies the current location of the vertical scroll -bars (`left', `right', or nil), and HORIZONTAL specifies the -current location of the horizontal scroll bars (`top', `bottom', -or nil). +bar (`left', `right' or nil), and HORIZONTAL specifies the +current location of the horizontal scroll bar (`bottom' or nil). Unlike `window-scroll-bars', this function reports the scroll bar type actually used, once frame defaults and `scroll-bar-mode' are taken into account." (setq window (window-normalize-window window t)) - (let ((vert (nth 2 (window-scroll-bars window))) - (hor nil)) - (when (or (eq vert t) (eq hor t)) - (let ((fcsb (frame-current-scroll-bars (window-frame window)))) - (if (eq vert t) - (setq vert (car fcsb))) - (if (eq hor t) - (setq hor (cdr fcsb))))) - (cons vert hor))) + (let ((vertical (nth 2 (window-scroll-bars window))) + (horizontal (nth 5 (window-scroll-bars window))) + (inherited (frame-current-scroll-bars (window-frame window)))) + (when (eq vertical t) + (setq vertical (car inherited))) + (when (eq horizontal t) + (setq horizontal (cdr inherited))) + (cons vertical (and horizontal 'bottom)))) (defun walk-windows (fun &optional minibuf all-frames) "Cycle through all live windows, calling FUN for each one. @@ -3026,12 +3023,12 @@ routines." If necessary and possible, make sure that every window on frame FRAME has its minimum height. Optional argument HORIZONTAL non-nil means to make sure that every window on frame FRAME has -its minimum width. The minimumm height/width of a window is the +its minimum width. The minimum height/width of a window is the respective value returned by `window-min-size' for that window. Return t if all windows were resized appropriately. Return nil if at least one window could not be resized as requested, which -may happen when the FRAME is not large enough to accomodate it." +may happen when the FRAME is not large enough to accommodate it." (let ((value t)) (walk-window-tree (lambda (window) @@ -6469,13 +6466,26 @@ the selected one." (defun display-buffer-at-bottom (buffer alist) "Try displaying BUFFER in a window at the bottom of the selected frame. -This either splits the window at the bottom of the frame or the -frame's root window, or reuses an existing window at the bottom -of the selected frame." - (let (bottom-window window) +This either reuses such a window provided it shows BUFFER +already, splits a window at the bottom of the frame or the +frame's root window, or reuses some window at the bottom of the +selected frame." + (let (bottom-window bottom-window-shows-buffer window) (walk-window-tree - (lambda (window) (setq bottom-window window)) nil nil 'nomini) - (or (and (not (frame-parameter nil 'unsplittable)) + (lambda (window) + (cond + ((window-in-direction 'below window)) + ((and (not bottom-window-shows-buffer) + (eq buffer (window-buffer window))) + (setq bottom-window-shows-buffer t) + (setq bottom-window window)) + ((not bottom-window) + (setq bottom-window window))) + nil nil 'nomini)) + (or (and bottom-window-shows-buffer + (window--display-buffer + buffer bottom-window 'reuse alist display-buffer-mark-dedicated)) + (and (not (frame-parameter nil 'unsplittable)) (let (split-width-threshold) (setq window (window--try-to-split-window bottom-window alist))) (window--display-buffer @@ -7163,7 +7173,7 @@ FRAME." (height (+ (cdr value) (window-bottom-divider-width) - (nth 3 (window-scroll-bars))))) + (window-scroll-bar-height)))) ;; Don't change height or width when the window's size is fixed ;; in either direction or ONLY forbids it. (cond @@ -7247,7 +7257,7 @@ and header line and a bottom divider, if any. If WINDOW is part of a horizontal combination and the value of the option `fit-window-to-buffer-horizontally' is non-nil, adjust -WINDOW's height. The new width of WINDOW is calculated from the +WINDOW's width. The new width of WINDOW is calculated from the maximum length of its buffer's lines that follow the current start position of WINDOW. The optional argument MAX-WIDTH specifies a maximum width and defaults to the width of WINDOW's @@ -7322,7 +7332,7 @@ accessible position." ;; height. Its width remains fixed. (setq height (+ (cdr (window-text-pixel-size nil nil t nil (frame-pixel-height) t)) - (nth 3 (window-scroll-bars window)) + (window-scroll-bar-height window) (window-bottom-divider-width))) ;; Round height. (unless pixelwise @@ -7364,10 +7374,10 @@ accessible position." max-width)) (+ total-width (window-max-delta nil t nil nil nil nil pixelwise)))) - ;; When fitting vertically, assume that WINDOW's start - ;; position remains unaltered. WINDOW can't get wider - ;; than its frame's pixel width, its height remains - ;; unaltered. + ;; When fitting horizontally, assume that WINDOW's + ;; start position remains unaltered. WINDOW can't get + ;; wider than its frame's pixel width, its height + ;; remains unaltered. (width (+ (car (window-text-pixel-size nil (window-start) (point-max) (frame-pixel-width) @@ -7376,7 +7386,7 @@ accessible position." ;; overshoots when the first line below ;; the bottom is wider than the window. (* body-height - (if pixelwise char-height 1)))) + (if pixelwise 1 char-height)))) (window-right-divider-width)))) (unless pixelwise (setq width (/ (+ width char-width -1) char-width))) diff --git a/lisp/winner.el b/lisp/winner.el index 1e32a7f4085..c202402a6e9 100644 --- a/lisp/winner.el +++ b/lisp/winner.el @@ -112,10 +112,7 @@ You may want to include buffer names such as *Help*, *Apropos*, ;; Save current configuration. ;; (Called below by `winner-save-old-configurations'). (defun winner-remember () - (let ((entry (assq (selected-frame) winner-currents))) - (if entry (setcdr entry (winner-conf)) - (push (cons (selected-frame) (winner-conf)) - winner-currents)))) + (setf (alist-get (selected-frame) winner-currents) (winner-conf))) ;; Consult `winner-currents'. (defun winner-configuration (&optional frame) |