aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorKaroly Lorentey <[email protected]>2006-07-14 05:56:32 +0000
committerKaroly Lorentey <[email protected]>2006-07-14 05:56:32 +0000
commit99715bbc447eb633e45ffa23b87284771ce3ac74 (patch)
tree3a8a53dfe3dbdd9f8e36965e9f043eae522d3c0e /lisp
parent556b89447234f15d1784a23dadbfe429464463a8 (diff)
parent763bb2d43615bc3ae816422f965d76d5e1ae4bdd (diff)
Merged from [email protected].
Patches applied: * [email protected]/emacs--devo--0--patch-331 Update from CVS * [email protected]/emacs--devo--0--patch-332 Update from CVS * [email protected]/emacs--devo--0--patch-333 Merge from gnus--rel--5.10 * [email protected]/emacs--devo--0--patch-334 Update from CVS * [email protected]/emacs--devo--0--patch-335 Add note about "link" button-class to etc/TODO * [email protected]/emacs--devo--0--patch-336 Update from CVS * [email protected]/emacs--devo--0--patch-337 Update from CVS * [email protected]/emacs--devo--0--patch-338 Update from CVS * [email protected]/emacs--devo--0--patch-339 Update from CVS * [email protected]/emacs--devo--0--patch-340 Update from CVS * [email protected]/emacs--devo--0--patch-341 Update from CVS * [email protected]/emacs--devo--0--patch-342 Update from CVS * [email protected]/emacs--devo--0--patch-343 Update from CVS * [email protected]/emacs--devo--0--patch-344 Update from CVS * [email protected]/emacs--devo--0--patch-345 Update from CVS * [email protected]/emacs--devo--0--patch-346 Update from CVS * [email protected]/emacs--devo--0--patch-347 Update from CVS * [email protected]/emacs--devo--0--patch-348 Update for ERC 5.1.3. * [email protected]/emacs--devo--0--patch-349 Update from CVS * [email protected]/emacs--devo--0--patch-350 Merge from gnus--rel--5.10 * [email protected]/gnus--rel--5.10--patch-111 Update from CVS: texi/gnus.texi (Summary Buffer Lines): Fix typo. * [email protected]/gnus--rel--5.10--patch-112 Update from CVS * [email protected]/gnus--rel--5.10--patch-113 Merge from emacs--devo--0 * [email protected]/gnus--rel--5.10--patch-114 Update from CVS git-archimport-id: [email protected]/emacs--multi-tty--0--patch-572
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog469
-rw-r--r--lisp/allout.el4
-rw-r--r--lisp/buff-menu.el2
-rw-r--r--lisp/calendar/calendar.el6
-rw-r--r--lisp/complete.el4
-rw-r--r--lisp/cus-edit.el9
-rw-r--r--lisp/diff-mode.el54
-rw-r--r--lisp/dirtrack.el198
-rw-r--r--lisp/emacs-lisp/authors.el3
-rw-r--r--lisp/emacs-lisp/autoload.el12
-rw-r--r--lisp/emacs-lisp/bytecomp.el2
-rw-r--r--lisp/emacs-lisp/easy-mmode.el6
-rw-r--r--lisp/emacs-lisp/edebug.el9
-rw-r--r--lisp/emacs-lisp/find-func.el13
-rw-r--r--lisp/emacs-lisp/helper.el2
-rw-r--r--lisp/emacs-lisp/lisp-mode.el2
-rw-r--r--lisp/emulation/viper-init.el14
-rw-r--r--lisp/erc/ChangeLog194
-rw-r--r--lisp/erc/erc-autoaway.el128
-rw-r--r--lisp/erc/erc-backend.el12
-rw-r--r--lisp/erc/erc-identd.el31
-rw-r--r--lisp/erc/erc-imenu.el5
-rw-r--r--lisp/erc/erc-log.el80
-rw-r--r--lisp/erc/erc-match.el7
-rw-r--r--lisp/erc/erc-pcomplete.el27
-rw-r--r--lisp/erc/erc-track.el2
-rw-r--r--lisp/erc/erc.el232
-rw-r--r--lisp/facemenu.el71
-rw-r--r--lisp/faces.el9
-rw-r--r--lisp/files.el130
-rw-r--r--lisp/gnus/ChangeLog66
-rw-r--r--lisp/gnus/gnus-diary.el2
-rw-r--r--lisp/gnus/gnus-group.el5
-rw-r--r--lisp/gnus/gnus-start.el4
-rw-r--r--lisp/help-fns.el3
-rw-r--r--lisp/help-mode.el17
-rw-r--r--lisp/help.el6
-rw-r--r--lisp/hexl.el5
-rw-r--r--lisp/ibuffer.el5
-rw-r--r--lisp/ido.el3
-rw-r--r--lisp/imenu.el5
-rw-r--r--lisp/info.el5
-rw-r--r--lisp/international/mule-cmds.el188
-rw-r--r--lisp/international/mule.el22
-rw-r--r--lisp/isearch.el3
-rw-r--r--lisp/ldefs-boot.el1257
-rw-r--r--lisp/locate.el40
-rw-r--r--lisp/longlines.el15
-rw-r--r--lisp/mh-e/ChangeLog39
-rw-r--r--lisp/mh-e/mh-e.el10
-rw-r--r--lisp/mh-e/mh-mime.el4
-rw-r--r--lisp/mh-e/mh-search.el9
-rw-r--r--lisp/mh-e/mh-tool-bar.el51
-rw-r--r--lisp/net/goto-addr.el1
-rw-r--r--lisp/net/tramp.el4
-rw-r--r--lisp/pcvs-defs.el5
-rw-r--r--lisp/play/dunnet.el4
-rw-r--r--lisp/play/hanoi.el5
-rw-r--r--lisp/play/landmark.el2
-rw-r--r--lisp/progmodes/ada-mode.el20
-rw-r--r--lisp/progmodes/cc-awk.el95
-rw-r--r--lisp/progmodes/cc-defs.el72
-rw-r--r--lisp/progmodes/cc-fonts.el114
-rw-r--r--lisp/progmodes/cc-langs.el7
-rw-r--r--lisp/progmodes/cc-mode.el5
-rw-r--r--lisp/progmodes/compile.el116
-rw-r--r--lisp/progmodes/ebrowse.el34
-rw-r--r--lisp/progmodes/gdb-ui.el25
-rw-r--r--lisp/progmodes/grep.el3
-rw-r--r--lisp/progmodes/gud.el14
-rw-r--r--lisp/progmodes/make-mode.el22
-rw-r--r--lisp/progmodes/octave-inf.el40
-rw-r--r--lisp/shell.el3
-rw-r--r--lisp/simple.el4
-rw-r--r--lisp/subr.el44
-rw-r--r--lisp/term/mac-win.el26
-rw-r--r--lisp/term/x-win.el6
-rw-r--r--lisp/textmodes/fill.el39
-rw-r--r--lisp/textmodes/org.el338
-rw-r--r--lisp/textmodes/texinfmt.el19
-rw-r--r--lisp/thingatpt.el95
-rw-r--r--lisp/thumbs.el2
-rw-r--r--lisp/tooltip.el6
-rw-r--r--lisp/tumme.el68
-rw-r--r--lisp/url/ChangeLog17
-rw-r--r--lisp/url/url-cookie.el21
-rw-r--r--lisp/url/url-irc.el4
-rw-r--r--lisp/vc.el19
-rw-r--r--lisp/window.el6
89 files changed, 3075 insertions, 1731 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index dea9cbc97a..54e81f850e 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,416 @@
+2006-07-14 Nick Roberts <[email protected]>
+
+ * progmodes/gdb-ui.el (gdb-display-buffer): Check for
+ gdb-source-window. Add dedicated argument.
+ (gdb-display-separate-io-buffer, gdb-append-to-inferior-io)
+ (gdb-display-breakpoints-buffer, gdb-display-stack-buffer)
+ (gdb-display-threads-buffer, gdb-display-memory-buffer)
+ (gdb-display-locals-buffer): Use it.
+
+ * progmodes/gud.el (gud-display-line): Use gdb-display-buffer.
+ Set gdb-source-window.
+
+2006-07-13 Stefan Monnier <[email protected]>
+
+ * emacs-lisp/autoload.el (make-autoload): Remove special handling of
+ minor modes, redundant with the custom-autoload line above.
+
+2006-07-12 Chong Yidong <[email protected]>
+
+ * longlines.el (longlines-post-command-function): Handle open-line too.
+
+2006-07-12 Richard Stallman <[email protected]>
+
+ * progmodes/grep.el (grep-last-buffer): Doc fix.
+
+ * info.el (Info-try-follow-nearest-node): Doc fix.
+
+ * emacs-lisp/edebug.el (edebug-instrument-function):
+ Err if find-function-noselect gives no position.
+
+ * emacs-lisp/find-func.el (find-function-search-for-symbol):
+ If can't find definition, return nil for position.
+ (find-function-do-it): Handle new return value
+ of find-definition-noselect.
+ (find-definition-noselect, find-variable-noselect): Doc fix.
+ (find-function-noselect): Doc fix.
+
+ * help-mode.el (help-variable-def): Handle find-variable-noselect
+ returning no position.
+ (help-function-def): Likewise for find-function-search-for-symbol.
+ (help-face-def): Likewise.
+
+ * help-fns.el (describe-variable): Handle find-variable-noselect
+ returning no position.
+
+ * files.el (locate-file-completion): Avoid duplicates in result.
+
+ * cus-edit.el (custom-no-edit): New command.
+ (custom-mode-map): Remap to custom-no-edit instead of
+ using suppress-keymap.
+
+2006-07-12 Nick Roberts <[email protected]>
+
+ * tumme.el (tumme-create-thumb)
+ (tumme-thumbnail-display-external, tumme-display-image)
+ (tumme-rotate-thumbnail, tumme-rotate-original)
+ (tumme-set-exif-data, tumme-get-exif-data): Use shell-command-switch.
+
+ * thumbs.el (thumbs-call-convert): Use shell-command-switch.
+
+2006-07-11 Kim F. Storm <[email protected]>
+
+ * ido.el (ido-copy-current-file-name): Use buffer-name if
+ buffer-file-name is nil.
+
+2006-07-11 Chong Yidong <[email protected]>
+
+ * simple.el (undo-ask-before-discard): Set to nil.
+
+ * vc.el (vc-exec-after): Don't delete process manually.
+ (vc-print-log): Run log-view-mode in process sentinel inside
+ inhibit-read-only. Don't shrink window due to timing issues.
+
+ * progmodes/ebrowse.el (ebrowse-display-member-buffer):
+ Avoid using with-output-to-temp-buffer, which clobbers local vars.
+
+2006-07-11 Stefan Monnier <[email protected]>
+
+ * progmodes/compile.el (compilation-error-regexp-alist-alist):
+ Fix ambiguity introduced by last change.
+ (compilation-find-file): Move save-excursion to where it may
+ make sense. Fix a left over `find-file'.
+
+2006-07-11 Robert J. Chassell <[email protected]>
+
+ * textmodes/texinfmt.el (texinfo-format-separate-node):
+ Insert a string before point, which fits documentation, not after.
+ (texinfo-multitable-item): In a multitable row, insert any
+ additional needed @tabs and spaces.
+
+2006-07-11 Nick Roberts <[email protected]>
+
+ * tumme.el (tumme-create-thumb)
+ (tumme-thumbnail-display-external, tumme-display-image)
+ (tumme-rotate-thumbnail, tumme-rotate-original)
+ (tumme-set-exif-data, tumme-get-exif-data): Use call-process
+ instead of shell-command.
+ (tumme-create-thumbnail-buffer)
+ (tumme-create-display-image-buffer, tumme-display-thumbs)
+ (tumme-modify-mark-on-thumb-original-file, tumme-display-image)
+ (tumme-get-exif-data): Use with-current-buffer.
+ (tumme-display-properties-format)
+ (tumme-dired-insert-marked-thumbs, tumme-rotate-original)
+ (tumme-get-exif-file-name)
+ (tumme-thumbnail-set-image-description, tumme-gallery-generate):
+ Fit to 80 columns.
+
+2006-07-11 Kim F. Storm <[email protected]>
+
+ * subr.el (sit-for): Doc fix. Specify normal arg list using fn-form.
+ Remove special case for seconds < 0. Use (redisplay t) instead.
+
+2006-07-10 Chong Yidong <[email protected]>
+
+ * progmodes/cc-awk.el (defconst): Use eval-and-compile to avoid
+ compilation error.
+
+ * subr.el (sit-for): New function.
+
+ * play/hanoi.el (hanoi-sit-for): Check sit-for return value.
+
+2006-07-10 Richard Stallman <[email protected]>
+
+ * ldefs-boot.el (edebug): Update page.
+
+2006-07-10 Kim F. Storm <[email protected]>
+
+ * emacs-lisp/authors.el (authors-ignored-files): Ignore changes
+ to FOR-RELEASE and TODO.
+
+2006-07-10 Romain Francoise <[email protected]>
+
+ * emacs-lisp/authors.el (authors-aliases): Update.
+
+2006-07-10 Alan Mackenzie <[email protected]>
+
+ * progmodes/cc-awk.el, cc-defs.el, cc-fonts.el, cc-langs.el:
+ * cc-mode.el: Changes to eradicate eval-after-load.
+
+2006-07-09 Chong Yidong <[email protected]>
+
+ * emacs-lisp/helper.el (Helper-help-scroller): Don't signal error
+ on non-char events.
+
+2006-07-09 Romain Francoise <[email protected]>
+
+ * progmodes/compile.el (compilation-mode-font-lock-keywords):
+ Don't highlight start/end markers as compilation messages.
+
+ * isearch.el (isearch-yank-line): Let-bind `inhibit-field-text-motion'
+ to t.
+
+2006-07-09 Stefan Monnier <[email protected]>
+
+ * textmodes/fill.el (fill-region-as-paragraph): Refine last change.
+
+2006-07-08 Richard Stallman <[email protected]>
+
+ * term/x-win.el (x-handle-display): Add doc string.
+
+ * emacs-lisp/easy-mmode.el (define-minor-mode): Doc fix.
+
+ * subr.el (def-edebug-spec): Move here.
+ * emacs-lisp/edebug.el (def-edebug-spec): Move to subr.el.
+
+ * imenu.el (imenu-choose-buffer-index): Doc fix.
+
+2006-07-08 Romain Francoise <[email protected]>
+
+ * term/x-win.el (x-display-name): Fix typo.
+
+2006-07-08 Eli Zaretskii <[email protected]>
+
+ * hexl.el (hexl-find-file): Doc fix.
+
+ * emacs-lisp/easy-mmode.el (define-minor-mode): Doc fix.
+
+2006-07-07 Chong Yidong <[email protected]>
+
+ * term/x-win.el (x-display-name): Doc fix.
+
+2006-07-07 Stefan Monnier <[email protected]>
+
+ * textmodes/fill.el (fill-delete-prefix): Don't ignore excessively
+ long prefixes.
+ (fill-region-as-paragraph): Don't round up to a whole line.
+ (fill-comment-paragraph): Don't include the code-before-the-comment
+ when calling fill-region-as-paragraph.
+
+ * international/mule.el (make-char): Remove redundancy.
+
+ * emacs-lisp/bytecomp.el (byte-compile-form): The `byte-compile'
+ property may contain an anonymous function rather than a symbol.
+
+ * pcvs-defs.el (cvs-temp-buffer-name): Fix non-hiddenness.
+
+ * progmodes/compile.el (compilation-error-regexp-alist-alist) <gnu>:
+ Use shy regexp. Fix incorrect backref to potentially unmatched group.
+
+ * dirtrack.el (dirtrack-default-directory-function): Remove.
+ (dirtrack-directory-function): Use file-name-as-directory.
+ (dirtrack-windows-directory-function): Simplify.
+ (dirtrack-forward-slash, dirtrack-backward-slash)
+ (dirtrack-replace-slash): Remove.
+ (dirtrack-toggle): Adjust comint-preoutput-filter-functions as well.
+ (dirtrack): Fix wrong parenthesizing; use match-string.
+
+ * progmodes/octave-inf.el: Remove spurious * in docstrings.
+ (inferior-octave-mode): Only change the buffer-local value of
+ comint-dynamic-complete-functions.
+ (inferior-octave-mode-map, inferior-octave-mode-syntax-table):
+ Move the initialization to the declaration.
+ (inferior-octave-complete): Remove unused var `filter'.
+
+ * shell.el (shell-mode): Only change the buffer-local value of
+ comint-dynamic-complete-functions.
+
+2006-07-07 Carsten Dominik <[email protected]>
+
+ * textmodes/org.el (org-agenda-get-todos): Skip subtree also if
+ entry is skipped because it has been scheduled.
+ (org-prepare-agenda-buffers): Don't mark buffers as modified when
+ changing `:org-archived' and `:org-comment' properties.
+
+2006-07-06 Chong Yidong <[email protected]>
+
+ * server.el (server-select-display): Don't make the temp frame
+ minibuffer-only, in case it's not a temp frame.
+ (server-process-filter): Don't delete the temp frame if it's the
+ only one we have on that display.
+
+ * files.el (find-alternate-file): Doc fix.
+
+2006-07-05 Richard Stallman <[email protected]>
+
+ * files.el (abbreviate-file-name): Add save-match-data.
+
+2006-07-03 Richard Stallman <[email protected]>
+
+ * faces.el (read-face-name): Doc fix.
+
+2006-07-05 Chong Yidong <[email protected]>
+
+ * net/goto-addr.el (goto-address): Mark as safe for local evals.
+
+2006-07-05 Andre Spiegel <[email protected]>
+
+ * vc.el (vc-diff-internal): Fix prev change.
+
+2006-07-05 Thien-Thi Nguyen <[email protected]>
+
+ * emacs-lisp/lisp-mode.el (emacs-lisp-mode-map): Use eval-buffer.
+ * play/dunnet.el (dun-load-d, dun-eval): Likewise.
+
+2006-07-04 Stefan Monnier <[email protected]>
+
+ * thingatpt.el (symbol-at-point): Don't use `form-at-point' which
+ fails if the symbol contains chars like ( or '.
+ (bounds-of-thing-at-point): Remove unused vars `end' and `beg'.
+ (thing-at-point-bounds-of-url-at-point): Remove unused vars `url' and
+ `short'.
+
+2006-07-04 Kenichi Handa <[email protected]>
+
+ * international/mule-cmds.el (set-language-info): If LANG-ENV is
+ the current one, don't call set-language-environment, but call one
+ of set-language-environment-XXX to make INFO effective now.
+ (set-language-environment): Call set-language-environment-XXX
+ functions instead of doing the various setups directly.
+ (set-language-environment-coding-systems): Delete argument eol-type.
+ (set-language-environment-input-method)
+ (set-language-environment-nonascii-translation)
+ (set-language-environment-charset)
+ (set-language-environment-fontset)
+ (set-language-environment-unibyte): New functions.
+
+2006-07-03 Luc Teirlinck <[email protected]>
+
+ * locate.el (locate-update-when-revert): New option.
+ (locate-update-path): New option (suggested by Michael Albinus).
+ (locate-prompt-for-command): Whitespace change.
+ (locate-update): No longer offer to update the locate database by
+ default. Implement the two new options.
+
+2006-07-04 Nick Roberts <[email protected]>
+
+ * tooltip.el: Move comment about track-mouse...
+
+ * progmodes/gud.el: ...to here.
+
+2006-07-03 Chong Yidong <[email protected]>
+
+ * facemenu.el (facemenu-listed-faces): New var.
+ (facemenu-unlisted-faces): Variable deleted.
+ (facemenu-add-new-face): Use facemenu-listed-faces.
+
+ * emulation/viper-init.el, calendar/calendar.el:
+ * progmodes/make-mode.el: Delete calls to facemenu-unlisted-faces.
+
+2006-07-03 Carsten Dominik <[email protected]>
+
+ * textmodes/org.el (org-mode): Remove no invalid settings for
+ calc embedded mode.
+ (org-mode-p): New defsubst.
+ (org-save-all-org-buffers): New function.
+ (org-first-headline-recenter): Enclose outline-regexp in group
+ delimiters.
+ (org-set-tags): Keep single space after stars.
+
+2006-07-02 Stefan Monnier <[email protected]>
+
+ * window.el (set-window-text-height): Only set window-min-height to
+ 1 if that's the requested size.
+
+ * diff-mode.el (diff-find-file-name): Obey cvs-pcl-cvs-dirchange-re.
+ (diff-unified->context, diff-context->unified)
+ (diff-reverse-direction): Make sure the end marker stays at the end.
+ (diff-mode): Add the keymap table at the end of docstring.
+ Use lexical-let rather than constructing a closure manually.
+
+ * files.el (find-file-noselect-1): Remove unused var assignment.
+ (hack-local-variables-confirm): Print lists of strings as lists of
+ strings rather than lists of symbols.
+ (abbreviate-file-name, hack-local-variables-prop-line):
+ Use match-string.
+ (hack-one-local-variable): Move `make-local-variable' nearer its use.
+ (recover-session-finish): Use line-end-position.
+
+2006-07-02 Michael Albinus <[email protected]>
+
+ * net/tramp.el (tramp-handle-shell-command): Preserve current-buffer.
+
+2006-07-02 Daniel Pfeiffer <[email protected]>
+
+ * progmodes/make-mode.el (makefile-macroassign-regex):
+ Accept preceding keyword.
+ (makefile-gmake-statements): Reorganize, now that makepp has
+ "override" and also handle forgotten "override define".
+ (makefile-makepp-statements): Add new "global", "override export"
+ and "override global".
+
+2006-06-30 Juanma Barranquero <[email protected]>
+
+ * progmodes/ada-mode.el (ada-which-compiler, ada-mode-menu)
+ (ada-compile-mouse-goto-error, ada-deactivate-properties)
+ (ada-no-auto-case): Fix typos in docstrings.
+
+2006-06-30 Nick Roberts <[email protected]>
+
+ * info.el (Info-find-node-2): Search for makeinfo version more
+ carefully.
+
+2006-06-29 Carsten Dominik <[email protected]>
+
+ * textmodes/org.el (org-prepare-agenda-buffers):
+ Use `invisible-OK' argument for `org-end-of-subtree'.
+ (org-export-cleanup-toc-line): Rename from `org-html-cleanup-toc-line'.
+ (org-beginning-of-item): Fix bug in regular expression for white line.
+ (org-export-as-html): Enforce space after bullet in plain list items.
+ (org-set-autofill-regexps): Require space after plain list bullet
+ for paragraph-start.
+ (org-ts-regexp3): New constant.
+ (org-at-timestamp-p): New optional argument ALSO-INACTIVE.
+ (org-timestamp-up-day, org-timestamp-down-day)
+ (org-timestamp-change): Work with inactive timestamps.
+ (org-ts-regexp1): Don't allow brackets in time stamps.
+
+2006-06-29 Nick Roberts <[email protected]>
+
+ * help-mode.el (help-xref-symbol-regexp): Add property as a keyword
+ for ignoring links.
+
+ * faces.el (read-face-name): Use it.
+
+2006-06-28 Juri Linkov <[email protected]>
+
+ * buff-menu.el (list-buffers-noselect): Compare Info file
+ with the string "dir" to detect Info directory.
+
+ * complete.el (partial-completion-mode): In lambda for
+ `choose-completion-string-functions' use full function signature
+ with 4 args, and move point to the end of the minibuffer only if arg
+ `mini-p' is non-nil.
+
+2006-06-28 John Paul Wallington <[email protected]>
+
+ * ibuffer.el (ibuffer-mode): Doc fix.
+
+2006-06-28 Carsten Dominik <[email protected]>
+
+ * textmodes/org.el (org-context): New contexts :item-bullet,
+ :latex-fragment, :latex-preview.
+ (org-overlays-at, org-overlay-start, org-overlay-end):
+ New compatibility functions.
+ (org-inside-LaTeX-fragment-p): More accurate matching, using the
+ exact regexp that will be used during export.
+ (org-latex-regexps): New variable.
+ (org-cdlatex-mode): Improve advice for `texmathp'.
+ (turn-on-org-cdlatex): New function.
+
+2006-06-28 YAMAMOTO Mitsuharu <[email protected]>
+
+ * term/mac-win.el (mac-handle-font-selection): Change keys of
+ mac-atsu-font-table from strings to numbers.
+ (mac-ts-caret-position): Use also when cursor-type is nil.
+ (mac-ts-update-active-input-area): Add Mac OS Classic support.
+ Relax condition for using overlay strings.
+ Use mac-ts-caret-position face when cursor-type is nil.
+
+2006-06-26 Kim F. Storm <[email protected]>
+
+ * help.el (view-emacs-news): Declare `res' in the right let* form.
+
2006-06-25 Michael Albinus <[email protected]>
* net/rcompile.el (remote-compile): Replace ange-ftp based
@@ -11,7 +424,7 @@
* international/fontset.el (setup-default-fontset): Fix a typo in
the "Oriya-Akruti" registry name.
-2006-06-23 Lars Hansen <[email protected]>
+2006-06-23 Lars Hansen <[email protected]>
* desktop.el (desktop-full-file-name): New function.
(desktop-kill, desktop-save, desktop-remove, desktop-read)
@@ -30,13 +443,13 @@
(org-inside-LaTeX-fragment-p, org-try-cdlatex-tab): New functions.
(org-cdlatex-underscore-caret, org-cdlatex-math-modify): New commands.
(org-export-with-archived-trees): New option.
- (org-open-file): Removed the call to `convert-standard-filename'.
+ (org-open-file): Remove the call to `convert-standard-filename'.
(org-archive-tag, org-agenda-skip-archived-trees)
(org-cycle-open-archived-trees)
(org-sparse-tree-open-archived-trees): New options.
(org-cycle-hide-archived-subtrees, org-hide-archived-subtrees)
- (org-toggle-tag, org-prepare-agenda-buffers, org-agenda-skip): New
- functions.
+ (org-toggle-tag, org-prepare-agenda-buffers, org-agenda-skip):
+ New functions.
(org-agenda-toggle-archive-tag, org-toggle-archive-tag): New commands.
(org-agenda-mode-map): Add binding of `org-agenda-toggle-archive-tag'.
(org-mode-map): Add binding for `org-toggle-archive-tag'.
@@ -152,14 +565,14 @@
(org-update-all-dblocks, org-find-dblock): New functions.
(org-collect-clock-time-entries): New function.
(org-html-handle-time-stamps): Never export CLOCK timeranges.
- (org-fixup-indentation): Modified to deadl correctly with lines
+ (org-fixup-indentation): Modify to deal correctly with lines
starting with TAB. Only one argument DIFF now.
(org-demote, org-promote): Call `org-fixup-indentation' with just
one argument, DIFF.
(org-mode): Don't mark buffer as modified when aligning tables.
(org-clock-sum): Don't mark buffer modified when adding time sum
properties.
- (org-export-as-html): Added support for a link validation function.
+ (org-export-as-html): Add support for a link validation function.
(org-archive-all-done): New function.
(org-archive-subtree): New prefix argument. When set, archive all
done subtrees in this buffer.
@@ -210,9 +623,9 @@
2006-06-18 Ralf Angeli <[email protected]>
- * textmodes/tex-mode.el (tex-font-lock-match-suscript): Remove
- superfluous part of regexp for brace matching which is handled by
- `scan-lists' call.
+ * textmodes/tex-mode.el (tex-font-lock-match-suscript):
+ Remove superfluous part of regexp for brace matching which is handled
+ by `scan-lists' call.
2006-06-16 Richard Stallman <[email protected]>
@@ -285,7 +698,7 @@
2006-06-10 Carsten Dominik <[email protected]>
- * textmodes/org.el: (org-agenda-mode-map): Add bindings for
+ * textmodes/org.el (org-agenda-mode-map): Add bindings for
clocking functions.
(org-agenda-clock-in, org-check-running-clock)
@@ -362,7 +775,7 @@
2006-06-06 Chong Yidong <[email protected]>
* diff-mode.el (diff-mode): Set buffer-read-only to t when
- diff-default-read-only is non-nill.
+ diff-default-read-only is non-nil.
(diff-hunk-kill, diff-file-kill, diff-split-hunk)
(diff-refine-hunk): Set inhibit-read-only to t.
@@ -373,7 +786,7 @@
2006-06-06 Carsten Dominik <[email protected]>
- * textmodes/org.el: (org-archive-subtree): Use end-of-subtree as
+ * textmodes/org.el (org-archive-subtree): Use end-of-subtree as
insertion point and control the number of empty lines.
(org-paste-subtree): Limit the number of empty lines at the end of
the inserted tree.
@@ -439,9 +852,9 @@
(authors-canonical-file-name): Don't report error for wildcards.
* help.el (view-emacs-news): Rewrite to support new NEWS,
- NEWS.major, and NEWS.1-17 file naming. Add more intelligense,
+ NEWS.major, and NEWS.1-17 file naming. Add more intelligence,
e.g. version 10 matches 1.10, and don't be confused by version 1.1
- begin a prefix of 1.12 (etc). A numeric prefix arg also works.
+ being a prefix of 1.12 (etc). A numeric prefix arg also works.
2006-06-03 Vivek Dasmohapatra <[email protected]>
@@ -515,7 +928,7 @@
2006-06-02 Masatake YAMATO <[email protected]>
* progmodes/compile.el (compilation-error-regexp-alist-alist::gcov-*):
- Almost rewrite. Underlines over all lines of gcov output are too
+ Almost rewrite. Underlines over all lines of gcov output are too
uncomfortable to read. Suggested by Dan Nicolaescu.
2006-06-01 Luc Teirlinck <[email protected]>
@@ -559,7 +972,7 @@
2006-05-31 Nick Roberts <[email protected]>
* progmodes/gud.el (gud-query-cmdline, gud-common-init):
- Revert inadvertant changes made with last commit.
+ Revert inadvertent changes made with last commit.
2006-05-30 Reiner Steib <[email protected]>
@@ -570,7 +983,7 @@
2006-05-30 Carsten Dominik <[email protected]>
- * textmodes/org.el: (org-agenda-highlight-todo): Make sure regexp
+ * textmodes/org.el (org-agenda-highlight-todo): Make sure regexp
only matches in the right place.
(org-upcoming-deadline): New face.
(org-agenda-get-deadlines): Use new face `org-upcoming-deadline'.
@@ -580,9 +993,10 @@
(org-export-as-html): Many changes to emit valid XHTML.
(org-par-open): New variable.
(org-open-par, org-close-par-maybe, org-close-li-maybe): New functions.
- (org-html-do-expand, org-section-number): Fixedcase in `replace-match'.
+ (org-html-do-expand, org-section-number): Fix case in `replace-match'.
(org-timeline): Pass `org-timeline-show-empty-dates' to
- `org-get-all-dates'. Interpret empty dates returned by `org-get-all-dates'.
+ `org-get-all-dates'. Interpret empty dates returned by
+ `org-get-all-dates'.
(org-get-all-dates): New argument EMPTY. Add dates without
entries to the list, mark large ranges of empty dates.
(org-point-in-group, org-context): New functions.
@@ -808,7 +1222,7 @@
2006-05-26 Carsten Dominik <[email protected]>
- * textmodes/org.el: (org-next-item, org-previous-item): Emit more
+ * textmodes/org.el (org-next-item, org-previous-item): Emit more
compact error message.
(org-tags-view): Refresh category table in each file.
(org-table-justify-field-maybe): Remove superfluous arguments to
@@ -930,7 +1344,7 @@
2006-05-24 Carsten Dominik <[email protected]>
- * textmodes/org.el: (org-open-at-point): Use renamed variable
+ * textmodes/org.el (org-open-at-point): Use renamed variable
`org-confirm-shell-link-function'.
(org-confirm-shell-link-function): Rename from
`org-confirm-shell-links'.
@@ -1006,7 +1420,6 @@
make command.
(org-shiftup, org-shiftdown): Accommodate the item-navigation commands.
-
2006-05-23 Thien-Thi Nguyen <[email protected]>
* emacs-lisp/ewoc.el (ewoc-delete): New function.
@@ -1333,7 +1746,7 @@
2006-05-12 Ken Manheimer <[email protected]>
- * allout.el: (allout-view-change-hook): Mark as being deprecated,
+ * allout.el (allout-view-change-hook): Mark as being deprecated,
to be replaced by `allout-exposure-change-hook'.
(allout-exposure-change-hook): New, replacing
`allout-view-change-hook'.
@@ -1609,7 +2022,7 @@
2006-05-06 YAMAMOTO Mitsuharu <[email protected]>
- * term/mac-win.el: (mac-utxt-to-string): Don't make adjustment for
+ * term/mac-win.el (mac-utxt-to-string): Don't make adjustment for
MacJapanese if text is ASCII-only.
2006-05-06 Nick Roberts <[email protected]>
@@ -1696,7 +2109,7 @@
* cus-start.el (all): Add mac-dnd-known-types.
- * term/mac-win.el: (mac-utxt-to-string, mac-string-to-utxt)
+ * term/mac-win.el (mac-utxt-to-string, mac-string-to-utxt)
(mac-TEXT-to-string, mac-string-to-TEXT, mac-furl-to-string)
(mac-TIFF-to-string): New functions.
(x-get-selection, x-selection-value)
@@ -1741,7 +2154,7 @@
2006-05-03 Dan Nicolaescu <[email protected]>
* isearch.el (isearch-update-ring): Take history-delete-duplicates
- into consideration. Replace one arm ifs with whens.
+ into consideration. Replace one arm ifs with whens.
2006-05-03 Nick Roberts <[email protected]>
@@ -1754,7 +2167,7 @@
2006-05-02 Jay Belanger <[email protected]>
- * calc/calc-embed.el: (calc-override-minor-modes-map)
+ * calc/calc-embed.el (calc-override-minor-modes-map)
(calc-override-minor-modes): New variables.
(calc-do-embedded): Make sure that Calc keystrokes aren't
overwritten by minor modes.
@@ -2737,7 +3150,7 @@
(Man-abstract-xref-man-page): If Man-target-string is a function,
call it.
(Man-highlight-references): Use Man-default-man-entry to get the
- target. Deal with xrefs too.
+ target. Deal with xrefs too.
(Man-highlight-references0): Don't call the target function.
* woman.el (WoMan-xref-man-page): Strip the section number, woman
diff --git a/lisp/allout.el b/lisp/allout.el
index d6955c52cd..2fbef5b2cd 100644
--- a/lisp/allout.el
+++ b/lisp/allout.el
@@ -37,7 +37,7 @@
;; - Incremental search with dynamic exposure and reconcealment of text
;; - Customizable bullet format - enables programming-language specific
;; outlining, for code-folding editing. (Allout code itself is to try it;
-;; formatted as an outline - do ESC-x eval-current-buffer in allout.el; but
+;; formatted as an outline - do ESC-x eval-buffer in allout.el; but
;; emacs local file variables need to be enabled when the
;; file was visited - see `enable-local-variables'.)
;; - Configurable per-file initial exposure settings
@@ -72,7 +72,7 @@
;; 3.x, for those of you that depend on the old method.)
;;
;; Note - the lines beginning with `;;;_' are outline topic headers.
-;; Just `ESC-x eval-current-buffer' to give it a whirl.
+;; Just `ESC-x eval-buffer' to give it a whirl.
;; ken manheimer (ken dot manheimer at gmail dot com)
diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el
index 4998c1edf0..e9e7e9a2bb 100644
--- a/lisp/buff-menu.el
+++ b/lisp/buff-menu.el
@@ -777,7 +777,7 @@ For more information, see the function `buffer-menu'."
((eq major-mode 'Info-mode)
(setq file Info-current-file)
(cond
- ((eq file t)
+ ((equal file "dir")
(setq file "*Info Directory*"))
((eq file 'apropos)
(setq file "*Info Apropos*"))
diff --git a/lisp/calendar/calendar.el b/lisp/calendar/calendar.el
index 6abcb74a3e..38bcc887ec 100644
--- a/lisp/calendar/calendar.el
+++ b/lisp/calendar/calendar.el
@@ -213,12 +213,6 @@ If nil, make an icon of the frame. If non-nil, delete the frame."
;; backward-compatibility alias
(put 'holiday-face 'face-alias 'holiday)
-(eval-after-load "facemenu"
- '(progn
- (add-to-list 'facemenu-unlisted-faces 'diary)
- (add-to-list 'facemenu-unlisted-faces 'calendar-today)
- (add-to-list 'facemenu-unlisted-faces 'holiday)))
-
(defcustom diary-entry-marker
(if (not (display-color-p))
"+"
diff --git a/lisp/complete.el b/lisp/complete.el
index df1bc2bfd8..ca6231893c 100644
--- a/lisp/complete.el
+++ b/lisp/complete.el
@@ -234,7 +234,9 @@ second TAB brings up the `*Completions*' buffer."
(funcall
(if partial-completion-mode 'add-hook 'remove-hook)
'choose-completion-string-functions
- (lambda (&rest x) (goto-char (point-max)) nil))
+ (lambda (choice buffer mini-p base-size)
+ (if mini-p (goto-char (point-max)))
+ nil))
;; Build the env-completion and mapping table.
(when (and partial-completion-mode (null PC-env-vars-alist))
(setq PC-env-vars-alist
diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el
index d7ffab4bc5..15efbc5ab9 100644
--- a/lisp/cus-edit.el
+++ b/lisp/cus-edit.el
@@ -4419,7 +4419,9 @@ The format is suitable for use with `easy-menu-define'."
;; Actually, this misfeature of dense keymaps was fixed on 2001-11-26.
(let ((map (make-keymap)))
(set-keymap-parent map widget-keymap)
- (suppress-keymap map)
+ (define-key map [remap self-insert-command]
+ 'custom-no-edit)
+ (define-key map "\^m" 'custom-no-edit)
(define-key map " " 'scroll-up)
(define-key map "\177" 'scroll-down)
(define-key map "\C-c\C-c" 'Custom-set)
@@ -4431,6 +4433,11 @@ The format is suitable for use with `easy-menu-define'."
map)
"Keymap for `custom-mode'.")
+(defun custom-no-edit ()
+ "Refuse to allow editing of Custom buffer."
+ (interactive)
+ (error "You can't edit this part of the Custom buffer"))
+
(easy-menu-define Custom-mode-menu
custom-mode-map
"Menu used in customization buffers."
diff --git a/lisp/diff-mode.el b/lisp/diff-mode.el
index 7ea02352b0..16bdaf152f 100644
--- a/lisp/diff-mode.el
+++ b/lisp/diff-mode.el
@@ -46,13 +46,15 @@
;; of a hunk. Show then the changes between <file> and <hunk> and make it
;; possible to apply them to <file>, <hunk-src>, or <hunk-dst>.
;; Or maybe just make it into a ".rej to diff3-markers converter".
+;; Maybe just use `wiggle' (by Neil Brown) to do it for us.
;;
;; - Refine hunk on a word-by-word basis.
-;;
+;;
+;; - in diff-apply-hunk, strip context in replace-match to better
+;; preserve markers and spacing.
;; - Handle `diff -b' output in context->unified.
;;; Code:
-
(eval-when-compile (require 'cl))
(defvar add-log-buffer-file-name-function)
@@ -128,14 +130,14 @@ when editing big diffs)."
;;("h" . diff-show-header)
;;("j" . diff-show-difference) ;jump to Nth diff
;;("q" . diff-quit)
-;; Not useful if you have to metafy them.
-;; (" " . scroll-up)
-;; ("\177" . scroll-down)
-;; Standard M-a is useful, so don't change M-A.
-;; ("A" . diff-ediff-patch)
-;; Standard M-r is useful, so don't change M-r or M-R.
-;; ("r" . diff-restrict-view)
-;; ("R" . diff-reverse-direction)
+ ;; Not useful if you have to metafy them.
+ ;;(" " . scroll-up)
+ ;;("\177" . scroll-down)
+ ;; Standard M-a is useful, so don't change M-A.
+ ;;("A" . diff-ediff-patch)
+ ;; Standard M-r is useful, so don't change M-r or M-R.
+ ;;("r" . diff-restrict-view)
+ ;;("R" . diff-reverse-direction)
("q" . quit-window))
"Basic keymap for `diff-mode', bound to various prefix keys.")
@@ -581,14 +583,16 @@ If the OLD prefix arg is passed, tell the file NAME of the old file."
(list (if old (match-string 2) (match-string 4))
(if old (match-string 4) (match-string 2)))))))))
-(defun diff-find-file-name (&optional old)
+(defun diff-find-file-name (&optional old prefix)
"Return the file corresponding to the current patch.
-Non-nil OLD means that we want the old file."
+Non-nil OLD means that we want the old file.
+PREFIX is only used internally: don't use it."
(save-excursion
(unless (looking-at diff-file-header-re)
(or (ignore-errors (diff-beginning-of-file))
(re-search-forward diff-file-header-re nil t)))
(let ((fs (diff-hunk-file-names old)))
+ (if prefix (setq fs (mapcar (lambda (f) (concat prefix f)) fs)))
(or
;; use any previously used preference
(cdr (assoc fs diff-remembered-files-alist))
@@ -610,6 +614,13 @@ Non-nil OLD means that we want the old file."
(and (string-match "\\.rej\\'" (or buffer-file-name ""))
(let ((file (substring buffer-file-name 0 (match-beginning 0))))
(when (file-exists-p file) file)))
+ ;; If we haven't found the file, maybe it's because we haven't paid
+ ;; attention to the PCL-CVS hint.
+ (and (not prefix)
+ (boundp 'cvs-pcl-cvs-dirchange-re)
+ (save-excursion
+ (re-search-backward cvs-pcl-cvs-dirchange-re nil t))
+ (diff-find-file-name old (match-string 1)))
;; if all else fails, ask the user
(let ((file (read-file-name (format "Use file %s: " (or (first fs) ""))
nil (first fs) t (first fs))))
@@ -639,7 +650,7 @@ else cover the whole bufer."
(interactive (if (or current-prefix-arg (and transient-mark-mode mark-active))
(list (region-beginning) (region-end))
(list (point-min) (point-max))))
- (unless (markerp end) (setq end (copy-marker end)))
+ (unless (markerp end) (setq end (copy-marker end t)))
(let (;;(diff-inhibit-after-change t)
(inhibit-read-only t))
(save-excursion
@@ -729,7 +740,7 @@ With a prefix argument, convert unified format to context format."
(list (point-min) (point-max) current-prefix-arg)))
(if to-context
(diff-unified->context start end)
- (unless (markerp end) (setq end (copy-marker end)))
+ (unless (markerp end) (setq end (copy-marker end t)))
(let ( ;;(diff-inhibit-after-change t)
(inhibit-read-only t))
(save-excursion
@@ -801,7 +812,7 @@ else cover the whole bufer."
(interactive (if (or current-prefix-arg (and transient-mark-mode mark-active))
(list (region-beginning) (region-end))
(list (point-min) (point-max))))
- (unless (markerp end) (setq end (copy-marker end)))
+ (unless (markerp end) (setq end (copy-marker end t)))
(let (;;(diff-inhibit-after-change t)
(inhibit-read-only t))
(save-excursion
@@ -979,7 +990,8 @@ headers for you on-the-fly.
You can also switch between context diff and unified diff with \\[diff-context->unified],
or vice versa with \\[diff-unified->context] and you can also reverse the direction of
-a diff with \\[diff-reverse-direction]."
+a diff with \\[diff-reverse-direction].
+\\{diff-mode-map}"
(set (make-local-variable 'font-lock-defaults) diff-font-lock-defaults)
(set (make-local-variable 'outline-regexp) diff-outline-regexp)
(set (make-local-variable 'imenu-generic-expression)
@@ -1004,13 +1016,13 @@ a diff with \\[diff-reverse-direction]."
(add-hook 'after-change-functions 'diff-after-change-function nil t)
(add-hook 'post-command-hook 'diff-post-command-hook nil t))
;; Neat trick from Dave Love to add more bindings in read-only mode:
- (let ((ro-bind (cons 'buffer-read-only diff-mode-shared-map)))
+ (lexical-let ((ro-bind (cons 'buffer-read-only diff-mode-shared-map)))
(add-to-list 'minor-mode-overriding-map-alist ro-bind)
;; Turn off this little trick in case the buffer is put in view-mode.
(add-hook 'view-mode-hook
- `(lambda ()
- (setq minor-mode-overriding-map-alist
- (delq ',ro-bind minor-mode-overriding-map-alist)))
+ (lambda ()
+ (setq minor-mode-overriding-map-alist
+ (delq ro-bind minor-mode-overriding-map-alist)))
nil t))
;; add-log support
(set (make-local-variable 'add-log-current-defun-function)
@@ -1031,7 +1043,7 @@ a diff with \\[diff-reverse-direction]."
(add-hook 'after-change-functions 'diff-after-change-function nil t)
(add-hook 'post-command-hook 'diff-post-command-hook nil t)))
-;;; Handy hook functions ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;; Handy hook functions ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun diff-delete-if-empty ()
;; An empty diff file means there's no more diffs to integrate, so we
diff --git a/lisp/dirtrack.el b/lisp/dirtrack.el
index 30ef3570ad..0744cc5296 100644
--- a/lisp/dirtrack.el
+++ b/lisp/dirtrack.el
@@ -29,12 +29,12 @@
;; Shell directory tracking by watching the prompt.
;;
;; This is yet another attempt at a directory-tracking package for
-;; Emacs shell-mode. However, this package makes one strong assumption:
+;; Emacs shell-mode. However, this package makes one strong assumption:
;; that you can customize your shell's prompt to contain the
-;; current working directory. Most shells do support this, including
+;; current working directory. Most shells do support this, including
;; almost every type of Bourne and C shell on Unix, the native shells on
;; Windows95 (COMMAND.COM) and Windows NT (CMD.EXE), and most 3rd party
-;; Windows shells. If you cannot do this, or do not wish to, this package
+;; Windows shells. If you cannot do this, or do not wish to, this package
;; will be useless to you.
;;
;; Installation:
@@ -45,30 +45,27 @@
;;
;; Note that directory tracking is done by matching regular expressions,
;; therefore it is *VERY IMPORTANT* for your prompt to be easily
-;; distinguishable from other output. If your prompt regexp is too general,
+;; distinguishable from other output. If your prompt regexp is too general,
;; you will see error messages from the dirtrack filter as it attempts to cd
;; to non-existent directories.
;;
-;; 2) Set the variable `dirtrack-list' to an appropriate value. This
+;; 2) Set the variable `dirtrack-list' to an appropriate value. This
;; should be a list of two elements: the first is a regular expression
;; which matches your prompt up to and including the pathname part.
;; The second is a number which tells which regular expression group to
-;; match to extract only the pathname. If you use a multi-line prompt,
-;; add 't' as a third element. Note that some of the functions in
+;; match to extract only the pathname. If you use a multi-line prompt,
+;; add 't' as a third element. Note that some of the functions in
;; 'comint.el' assume a single-line prompt (eg, comint-bol).
;;
-;; Determining this information may take some experimentation. Setting
+;; Determining this information may take some experimentation. Setting
;; the variable `dirtrack-debug' may help; it causes the directory-tracking
-;; filter to log messages to the buffer `dirtrack-debug-buffer'. You can easily
+;; filter to log messages to the buffer `dirtrack-debug-buffer'. You can easily
;; toggle this setting with the `dirtrack-debug-toggle' function.
;;
;; 3) Add a hook to shell-mode to enable the directory tracking:
;;
;; (add-hook 'shell-mode-hook
-;; (function (lambda ()
-;; (setq comint-preoutput-filter-functions
-;; (append (list 'dirtrack)
-;; comint-preoutput-filter-functions)))))
+;; (lambda () (add-hook 'comint-preoutput-filter-functions 'dirtrack nil t)))
;;
;; You may wish to turn ordinary shell tracking off by calling
;; `shell-dirtrack-toggle' or setting `shell-dirtrackp'.
@@ -107,13 +104,13 @@
;; (eg, when logged in as myself, I'll run a root shell in the same Emacs).
;; If you do this, and the shell prompt contains a ~, Emacs will interpret
;; this relative to the user which owns the Emacs process, not the user
-;; who owns the shell buffer. This may cause dirtrack to behave strangely
+;; who owns the shell buffer. This may cause dirtrack to behave strangely
;; (typically it reports that it is unable to cd to a directory
;; with a ~ in it).
;;
;; The same behavior can occur if you use dirtrack with remote filesystems
;; (using telnet, rlogin, etc) as Emacs will be checking the local
-;; filesystem, not the remote one. This problem is not specific to dirtrack,
+;; filesystem, not the remote one. This problem is not specific to dirtrack,
;; but also affects file completion, etc.
;;; Code:
@@ -132,7 +129,7 @@
:group 'shell)
(defcustom dirtrack-list (list "^emacs \\([a-zA-Z]:.*\\)>" 1)
- "*List for directory tracking.
+ "List for directory tracking.
First item is a regexp that describes where to find the path in a prompt.
Second is a number, the regexp group to match. Optional third item is
whether the prompt is multi-line. If nil or omitted, prompt is assumed to
@@ -140,77 +137,58 @@ be on a single line."
:group 'dirtrack
:type '(sexp (regexp :tag "Prompt Expression")
(integer :tag "Regexp Group")
- (boolean :tag "Multiline Prompt")
- )
- )
+ (boolean :tag "Multiline Prompt")))
(make-variable-buffer-local 'dirtrack-list)
(defcustom dirtrack-debug nil
- "*If non-nil, the function `dirtrack' will report debugging info."
+ "If non-nil, the function `dirtrack' will report debugging info."
:group 'dirtrack
- :type 'boolean
- )
+ :type 'boolean)
(defcustom dirtrack-debug-buffer "*Directory Tracking Log*"
"Buffer to write directory tracking debug information."
:group 'dirtrack
- :type 'string
- )
+ :type 'string)
(defcustom dirtrackp t
- "*If non-nil, directory tracking via `dirtrack' is enabled."
+ "If non-nil, directory tracking via `dirtrack' is enabled."
:group 'dirtrack
- :type 'boolean
- )
+ :type 'boolean)
(make-variable-buffer-local 'dirtrackp)
(defcustom dirtrack-directory-function
(if (memq system-type (list 'ms-dos 'windows-nt 'cygwin))
'dirtrack-windows-directory-function
- 'dirtrack-default-directory-function)
- "*Function to apply to the prompt directory for comparison purposes."
+ 'file-name-as-directory)
+ "Function to apply to the prompt directory for comparison purposes."
:group 'dirtrack
- :type 'function
- )
+ :type 'function)
(defcustom dirtrack-canonicalize-function
(if (memq system-type (list 'ms-dos 'windows-nt 'cygwin))
'downcase 'identity)
- "*Function to apply to the default directory for comparison purposes."
+ "Function to apply to the default directory for comparison purposes."
:group 'dirtrack
- :type 'function
- )
+ :type 'function)
(defcustom dirtrack-directory-change-hook nil
"Hook that is called when a directory change is made."
:group 'dirtrack
- :type 'hook
- )
+ :type 'hook)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Functions
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-(defun dirtrack-default-directory-function (dir)
- "Return a canonical directory for comparison purposes.
-Such a directory ends with a forward slash."
- (let ((directory dir))
- (if (not (char-equal ?/ (string-to-char (substring directory -1))))
- (concat directory "/")
- directory)))
(defun dirtrack-windows-directory-function (dir)
"Return a canonical directory for comparison purposes.
Such a directory is all lowercase, has forward-slashes as delimiters,
and ends with a forward slash."
- (let ((directory dir))
- (setq directory (downcase (dirtrack-replace-slash directory t)))
- (if (not (char-equal ?/ (string-to-char (substring directory -1))))
- (concat directory "/")
- directory)))
+ (file-name-as-directory (downcase (subst-char-in-string ?\\ ?/ dir))))
(defun dirtrack-cygwin-directory-function (dir)
"Return a canonical directory taken from a Cygwin path for comparison purposes."
@@ -218,30 +196,13 @@ and ends with a forward slash."
(concat (match-string 1 dir) ":" (match-string 2 dir))
dir))
-(defconst dirtrack-forward-slash (regexp-quote "/"))
-(defconst dirtrack-backward-slash (regexp-quote "\\"))
-
-(defun dirtrack-replace-slash (string &optional opposite)
- "Replace forward slashes with backwards ones.
-If additional argument is non-nil, replace backwards slashes with
-forward ones."
- (let ((orig (if opposite
- dirtrack-backward-slash
- dirtrack-forward-slash))
- (replace (if opposite
- dirtrack-forward-slash
- dirtrack-backward-slash))
- (newstring string)
- )
- (while (string-match orig newstring)
- (setq newstring (replace-match replace nil t newstring)))
- newstring))
-
;; Copied from shell.el
(defun dirtrack-toggle ()
"Enable or disable Dirtrack directory tracking in a shell buffer."
(interactive)
- (setq dirtrackp (not dirtrackp))
+ (if (setq dirtrackp (not dirtrackp))
+ (add-hook 'comint-preoutput-filter-functions 'dirtrack nil t)
+ (remove-hook 'comint-preoutput-filter-functions 'dirtrack t))
(message "Directory tracking %s" (if dirtrackp "ON" "OFF")))
(defun dirtrack-debug-toggle ()
@@ -273,67 +234,60 @@ If directory tracking does not seem to be working, you can use the
function `dirtrack-debug-toggle' to turn on debugging output.
You can enable directory tracking by adding this function to
-`comint-output-filter-functions'.
-"
- (if (null dirtrackp)
+`comint-output-filter-functions'."
+ (if (or (null dirtrackp)
+ ;; No output?
+ (eq (point) (point-min)))
nil
(let (prompt-path
- matched
(current-dir default-directory)
(dirtrack-regexp (nth 0 dirtrack-list))
(match-num (nth 1 dirtrack-list))
- (multi-line (nth 2 dirtrack-list))
- )
- ;; No output?
- (if (eq (point) (point-min))
- nil
- (save-excursion
- (setq matched (string-match dirtrack-regexp input)))
- ;; No match
- (if (null matched)
- (and dirtrack-debug
- (dirtrack-debug-message
- (format
- "Input `%s' failed to match regexp: %s"
- input dirtrack-regexp)))
- (setq prompt-path
- (substring input
- (match-beginning match-num) (match-end match-num)))
- ;; Empty string
- (if (not (> (length prompt-path) 0))
- (and dirtrack-debug
- (dirtrack-debug-message "Match is empty string"))
- ;; Transform prompts into canonical forms
- (setq prompt-path (funcall dirtrack-directory-function
- prompt-path))
- (setq current-dir (funcall dirtrack-canonicalize-function
- current-dir))
- (and dirtrack-debug
- (dirtrack-debug-message
- (format
- "Prompt is %s\nCurrent directory is %s"
- prompt-path current-dir)))
- ;; Compare them
- (if (or (string= current-dir prompt-path)
- (string= current-dir
- (abbreviate-file-name prompt-path)))
- (and dirtrack-debug
- (dirtrack-debug-message
- (format "Not changing directory")))
- ;; It's possible that Emacs will think the directory
- ;; won't exist (eg, rlogin buffers)
- (if (file-accessible-directory-p prompt-path)
- ;; Change directory
- (and (shell-process-cd prompt-path)
- (run-hooks 'dirtrack-directory-change-hook)
- dirtrack-debug
- (dirtrack-debug-message
- (format "Changing directory to %s" prompt-path)))
- (error "Directory %s does not exist" prompt-path)))
- )))))
+ ;; Currently unimplemented, it seems. --Stef
+ (multi-line (nth 2 dirtrack-list)))
+ (save-excursion
+ ;; No match
+ (if (null (string-match dirtrack-regexp input))
+ (and dirtrack-debug
+ (dirtrack-debug-message
+ (format
+ "Input `%s' failed to match `dirtrack-regexp'" input)))
+ (setq prompt-path (match-string match-num input))
+ ;; Empty string
+ (if (not (> (length prompt-path) 0))
+ (and dirtrack-debug
+ (dirtrack-debug-message "Match is empty string"))
+ ;; Transform prompts into canonical forms
+ (setq prompt-path (funcall dirtrack-directory-function
+ prompt-path))
+ (setq current-dir (funcall dirtrack-canonicalize-function
+ current-dir))
+ (and dirtrack-debug
+ (dirtrack-debug-message
+ (format
+ "Prompt is %s\nCurrent directory is %s"
+ prompt-path current-dir)))
+ ;; Compare them
+ (if (or (string= current-dir prompt-path)
+ (string= current-dir
+ (abbreviate-file-name prompt-path)))
+ (and dirtrack-debug
+ (dirtrack-debug-message
+ (format "Not changing directory")))
+ ;; It's possible that Emacs will think the directory
+ ;; won't exist (eg, rlogin buffers)
+ (if (file-accessible-directory-p prompt-path)
+ ;; Change directory
+ (and (shell-process-cd prompt-path)
+ (run-hooks 'dirtrack-directory-change-hook)
+ dirtrack-debug
+ (dirtrack-debug-message
+ (format "Changing directory to %s" prompt-path)))
+ (error "Directory %s does not exist" prompt-path)))
+ )))))
input)
(provide 'dirtrack)
-;;; arch-tag: 168de071-be88-4937-aff6-2aba9f328d5a
+;; arch-tag: 168de071-be88-4937-aff6-2aba9f328d5a
;;; dirtrack.el ends here
diff --git a/lisp/emacs-lisp/authors.el b/lisp/emacs-lisp/authors.el
index 7ab0101b2a..912f6b2d77 100644
--- a/lisp/emacs-lisp/authors.el
+++ b/lisp/emacs-lisp/authors.el
@@ -118,6 +118,7 @@ files.")
("Robert J. Chassell" "Bob Chassell")
("Roland B. Roberts" "Roland B Roberts" "Roland Roberts")
("Rui-Tao Dong" "Rui-Tao Dong ~{6-Hpln~}")
+ ("Sacha Chua" "Sandra Jean Chua")
("Sam Steingold" "Sam Shteingold")
("Satyaki Das" "Indexed search by Satyaki Das")
("Stefan Monnier" "Stefan")
@@ -168,7 +169,7 @@ listed.")
'("external-lisp"
"lock" "share-lib" "local-lisp"
"noleim-Makefile.in"
- "NEWS" "PROBLEMS" "FAQ" "AUTHORS")
+ "NEWS" "PROBLEMS" "FAQ" "AUTHORS" "FOR-RELEASE" "TODO")
"List of files and directories to ignore.
Changes to files in this list are not listed.")
diff --git a/lisp/emacs-lisp/autoload.el b/lisp/emacs-lisp/autoload.el
index 76699f10df..4000b4da28 100644
--- a/lisp/emacs-lisp/autoload.el
+++ b/lisp/emacs-lisp/autoload.el
@@ -124,17 +124,7 @@ or macro definition or a defcustom)."
)
`(progn
(defvar ,varname ,init ,doc)
- (custom-autoload ',varname ,file)
- ;; The use of :require in a defcustom can be annoying, especially
- ;; when defcustoms are moved from one file to another between
- ;; releases because the :require arg gets placed in the user's
- ;; .emacs. In order for autoloaded minor modes not to need the
- ;; use of :require, we arrange to store their :setter.
- ,(let ((setter (condition-case nil
- (cadr (memq :set form))
- (error nil))))
- (if (equal setter ''custom-set-minor-mode)
- `(put ',varname 'custom-set 'custom-set-minor-mode))))))
+ (custom-autoload ',varname ,file))))
((eq car 'defgroup)
;; In Emacs this is normally handled separately by cus-dep.el, but for
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index ebb2f11764..02a88c1397 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -2791,7 +2791,7 @@ That command is designed for interactive use only" fn))
;; `cl-byte-compile-compiler-macro' but if CL isn't
;; loaded, this function doesn't exist.
(or (not (memq handler '(cl-byte-compile-compiler-macro)))
- (fboundp handler))
+ (functionp handler))
(not (and (byte-compile-version-cond
byte-compile-compatibility)
(get (get fn 'byte-opcode) 'emacs19-opcode))))
diff --git a/lisp/emacs-lisp/easy-mmode.el b/lisp/emacs-lisp/easy-mmode.el
index 5475ed530d..d4ba8d3062 100644
--- a/lisp/emacs-lisp/easy-mmode.el
+++ b/lisp/emacs-lisp/easy-mmode.el
@@ -101,9 +101,9 @@ Optional KEYMAP is the default (defvar) keymap bound to the mode keymap.
The above three arguments can be skipped if keyword arguments are
used (see below).
-BODY contains code that will be executed each time the mode is (dis)activated.
- It will be executed after any toggling but before running the hook variable
- `mode-HOOK'.
+BODY contains code to execute each time the mode is activated or deactivated.
+ It is executed after toggling the mode,
+ and before running the hook variable `mode-HOOK'.
Before the actual body code, you can write keyword arguments (alternating
keywords and values). These following keyword arguments are supported (other
keywords will be passed to `defcustom' if the minor mode is global):
diff --git a/lisp/emacs-lisp/edebug.el b/lisp/emacs-lisp/edebug.el
index d0be3a02f6..8645ec5a6e 100644
--- a/lisp/emacs-lisp/edebug.el
+++ b/lisp/emacs-lisp/edebug.el
@@ -235,13 +235,6 @@ If the result is non-nil, then break. Errors are ignored."
;;; Form spec utilities.
-;;;###autoload
-(defmacro def-edebug-spec (symbol spec)
- "Set the `edebug-form-spec' property of SYMBOL according to SPEC.
-Both SYMBOL and SPEC are unevaluated. The SPEC can be 0, t, a symbol
-\(naming a function), or a list."
- `(put (quote ,symbol) 'edebug-form-spec (quote ,spec)))
-
(defmacro def-edebug-form-spec (symbol spec-form)
"For compatibility with old version."
(def-edebug-spec symbol (eval spec-form)))
@@ -3426,6 +3419,8 @@ go to the end of the last sexp, or if that is the same point, then step."
func)
(t
(let ((loc (find-function-noselect func)))
+ (unless (cdr loc)
+ (error "Could not find the definition in its file"))
(with-current-buffer (car loc)
(goto-char (cdr loc))
(edebug-eval-top-level-form)
diff --git a/lisp/emacs-lisp/find-func.el b/lisp/emacs-lisp/find-func.el
index 5d50458632..41c940f1ce 100644
--- a/lisp/emacs-lisp/find-func.el
+++ b/lisp/emacs-lisp/find-func.el
@@ -205,6 +205,9 @@ TYPE should be nil to find a function, or `defvar' to find a variable."
;;;###autoload
(defun find-function-search-for-symbol (symbol type library)
"Search for SYMBOL's definition of type TYPE in LIBRARY.
+Visit the library in a buffer, and return a cons cell (BUFFER . POSITION),
+or just (BUFFER . nil) if the definition can't be found in the file.
+
If TYPE is nil, look for a function definition.
Otherwise, TYPE specifies the kind of definition,
and it is interpreted via `find-function-regexp-alist'.
@@ -244,8 +247,7 @@ The search is done in the source for library LIBRARY."
(progn
(beginning-of-line)
(cons (current-buffer) (point)))
- (error "Cannot find definition of `%s' in library `%s'"
- symbol library))))))))
+ (cons (current-buffer) nil))))))))
;;;###autoload
(defun find-function-noselect (function)
@@ -253,7 +255,8 @@ The search is done in the source for library LIBRARY."
Finds the source file containing the definition of FUNCTION
in a buffer and the point of the definition. The buffer is
-not selected.
+not selected. If the function definition can't be found in
+the buffer, returns (BUFFER).
If the file where FUNCTION is defined is not known, then it is
searched for in `find-function-source-path' if non nil, otherwise
@@ -335,7 +338,7 @@ Set mark before moving, if the buffer already existed."
(when (memq new-buf orig-buffers)
(push-mark orig-point))
(funcall switch-fn new-buf)
- (goto-char new-point)
+ (when new-point (goto-char new-point))
(recenter find-function-recenter-line)
(run-hooks 'find-function-after-hook))))
@@ -376,6 +379,7 @@ See `find-function' for more details."
Finds the library containing the definition of VARIABLE in a buffer and
the point of the definition. The buffer is not selected.
+If the variable's definition can't be found in the buffer, return (BUFFER).
The library where VARIABLE is defined is searched for in FILE or
`find-function-source-path', if non nil, otherwise in `load-path'."
@@ -421,6 +425,7 @@ See `find-variable' for more details."
;;;###autoload
(defun find-definition-noselect (symbol type &optional file)
"Return a pair `(BUFFER . POINT)' pointing to the definition of SYMBOL.
+If the definition can't be found in the buffer, return (BUFFER).
TYPE says what type of definition: nil for a function, `defvar' for a
variable, `defface' for a face. This function does not switch to the
buffer nor display it.
diff --git a/lisp/emacs-lisp/helper.el b/lisp/emacs-lisp/helper.el
index 3b614be26f..92eb86ce67 100644
--- a/lisp/emacs-lisp/helper.el
+++ b/lisp/emacs-lisp/helper.el
@@ -77,7 +77,7 @@
"Delete scrolls back. Other keys %s"
"Type anything to %s"))
blurb)
- (setq continue (read-char))
+ (setq continue (read-event))
(cond ((and (memq continue '(?\s ?\C-v)) (< state 2))
(scroll-up))
((= continue ?\C-l)
diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el
index d5588f3811..a58ecb256a 100644
--- a/lisp/emacs-lisp/lisp-mode.el
+++ b/lisp/emacs-lisp/lisp-mode.el
@@ -291,7 +291,7 @@ All commands in `lisp-mode-shared-map' are inherited by this map.")
(define-key map [byte-compile]
'("Byte-compile This File" . emacs-lisp-byte-compile))
(define-key map [separator-eval] '("--"))
- (define-key map [eval-buffer] '("Evaluate Buffer" . eval-current-buffer))
+ (define-key map [eval-buffer] '("Evaluate Buffer" . eval-buffer))
(define-key map [eval-region] '("Evaluate Region" . eval-region))
(define-key map [eval-sexp] '("Evaluate Last S-expression" . eval-last-sexp))
(define-key map [separator-format] '("--"))
diff --git a/lisp/emulation/viper-init.el b/lisp/emulation/viper-init.el
index 661fc6ede7..80938b0282 100644
--- a/lisp/emulation/viper-init.el
+++ b/lisp/emulation/viper-init.el
@@ -854,11 +854,6 @@ Related buffers can be cycled through via :R and :P commands."
;;; Face-saving tricks
-(defun viper-hide-face (face)
- (if (and (viper-has-face-support-p) viper-emacs-p)
- (add-to-list 'facemenu-unlisted-faces face)))
-
-
(defgroup viper-highlighting nil
"Hilighting of replace region, search pattern, minibuffer, etc."
:prefix "viper-"
@@ -876,8 +871,6 @@ Related buffers can be cycled through via :R and :P commands."
DO NOT CHANGE this variable. Instead, use the customization widget
to customize the actual face object `viper-search'
this variable represents.")
-(viper-hide-face viper-search-face)
-
(defface viper-replace-overlay
'((((class color)) (:foreground "Black" :background "darkseagreen2"))
@@ -890,8 +883,6 @@ this variable represents.")
DO NOT CHANGE this variable. Instead, use the customization widget
to customize the actual face object `viper-replace-overlay'
this variable represents.")
-(viper-hide-face viper-replace-overlay-face)
-
(defface viper-minibuffer-emacs
'((((class color)) (:foreground "Black" :background "darkseagreen2"))
@@ -904,8 +895,6 @@ this variable represents.")
DO NOT CHANGE this variable. Instead, use the customization widget
to customize the actual face object `viper-minibuffer-emacs'
this variable represents.")
-(viper-hide-face viper-minibuffer-emacs-face)
-
(defface viper-minibuffer-insert
'((((class color)) (:foreground "Black" :background "pink"))
@@ -918,8 +907,6 @@ this variable represents.")
DO NOT CHANGE this variable. Instead, use the customization widget
to customize the actual face object `viper-minibuffer-insert'
this variable represents.")
-(viper-hide-face viper-minibuffer-insert-face)
-
(defface viper-minibuffer-vi
'((((class color)) (:foreground "DarkGreen" :background "grey"))
@@ -932,7 +919,6 @@ this variable represents.")
DO NOT CHANGE this variable. Instead, use the customization widget
to customize the actual face object `viper-minibuffer-vi'
this variable represents.")
-(viper-hide-face viper-minibuffer-vi-face)
;; the current face to be used in the minibuffer
(viper-deflocalvar
diff --git a/lisp/erc/ChangeLog b/lisp/erc/ChangeLog
index 49b274b514..216d14d0aa 100644
--- a/lisp/erc/ChangeLog
+++ b/lisp/erc/ChangeLog
@@ -1,3 +1,197 @@
+2006-07-12 Michael Olson <[email protected]>
+
+ * erc-match.el (erc-log-matches): Bind inhibit-read-only rather
+ than call toggle-read-only.
+
+ * erc.el (erc-handle-irc-url): Move here from erc-goodies.el and
+ add autoload cookie.
+
+2006-07-09 Michael Olson <[email protected]>
+
+ * erc.el (erc-version-string): Release ERC 5.1.3.
+
+ * erc.texi: Update for the 5.1.3 release.
+
+ * erc-autoaway.el (erc-autoaway-set-back): Fix bug after returning
+ from being set automatically away and current buffer is not an ERC
+ buffer.
+
+ * erc-identd.el: Fix compiler error.
+
+ * erc.texi (Development): Use @subheading instead of @subsection.
+ (Advanced Usage): Add menu.
+ (Connecting): Fully document how to connect to an IRC server.
+ (Options, Tips and Tricks, Sample Configuration): New unwritten
+ sections.
+
+ * erc.el (erc-server, erc-port, erc-nick, erc-nick-uniquifier)
+ (erc-user-full-name, erc-password): Docfixes and customization
+ interface tweaks.
+ (erc-try-new-nick-p): Rename from
+ `erc-manual-set-nick-on-bad-nick-p' and invert meaning.
+ (erc-nickname-in-use): Use `erc-try-new-nick-p'. Check the length
+ of `erc-nick-uniquifier', in case someone wants multiple
+ characters.
+ (erc-compute-server, erc-compute-nick, erc-compute-full-name)
+ (erc-compute-port): Docfixes.
+
+ * erc-log.el (log): Move all add-hook calls here, rather than
+ executing them immediately, and also cause them to be un-hooked
+ when the module is removed.
+ (erc-save-buffer-on-part): Move next to
+ `erc-save-queries-on-quit'.
+ (erc-save-buffer-on-quit, erc-save-queries-on-quit): Default to t.
+ (erc-log-write-after-send, erc-log-write-after-insert): Default to
+ nil. This makes things fast, but reasonably failsafe, by default.
+
+2006-07-08 Michael Olson <[email protected]>
+
+ * erc-log.el (erc-log-insert-log-on-open): Make this nil by
+ default, since most IRC clients don't do this.
+ (erc-log-write-after-send): New option that determines whether the
+ log file will be written to after every sent message.
+ (erc-log-write-after-insert): New option that determines whether
+ the log file will be written to when new text is added to a logged
+ ERC buffer.
+ (log): Use the aforementioned options.
+
+ * erc.texi (Modules): Document the "completion" module.
+
+ * erc-pcomplete.el (pcomplete-erc-nicks): Make sure that we don't
+ have a nil element in the list when ignore-self is non-nil.
+
+2006-07-05 Michael Olson <[email protected]>
+
+ * erc.el (erc-modules): Add the `page' module to the list.
+
+ * erc.texi (Modules): Add entries for `list' and `page' modules.
+ Change "spell" to "spelling".
+ (History): Use past tense throughout.
+
+2006-07-02 Michael Olson <[email protected]>
+
+ * erc-backend.el (erc-call-hooks): Fix (stringp nil) error that
+ can happen when doing /PART.
+
+ * erc.el (erc-quit-reason-various-alist)
+ (erc-part-reason-various-alist): In the example, use "^$" as an
+ example, since "" matches anything.
+ (erc-quit-reason-various, erc-part-reason-various): If no argument
+ is given, and no matches are found, use our default reason instead
+ of "nil".
+
+2006-06-30 Michael Olson <[email protected]>
+
+ * erc.texi (Modules): Mention identd.
+ (Releases): Update mailing list address and download location.
+ (Development): Refactor. Provide updated directions for Arch.
+ Make URLs clickable.
+ (Keystroke Summary): Typo fix. Use more Texinfo syntax.
+ (Getting Started): Give simpler example. We do not need to
+ explicitly load every module.
+ (History): Update.
+
+ * erc.el (erc-version-modules): Remove, since we do not use this
+ function anymore.
+ (erc-latest-version, erc-ediff-latest-version): Remove, since this
+ was only useful back when ERC consisted of one file.
+ (erc-modules): Add line for identd.
+ (erc-get-channel-mode-from-keypress): Typo fix.
+
+ * erc-imenu.el: Remove unnecessary lines in header.
+
+ * erc-goodies.el (erc-handle-irc-url): Docfix.
+
+ * erc-identd.el: Define an ERC module for this.
+ (erc-identd-start): Don't create a process buffer if possible.
+ Otherwise, use conventional hidden names for process buffers.
+
+2006-06-29 Michael Olson <[email protected]>
+
+ * erc-backend.el (erc-coding-system-for-target): Match
+ case-insensitively. Use a pattern match instead of `assoc', as
+ per the documentation for `erc-encoding-coding-alist'.
+
+ * erc-track.el (erc-track-shorten-aggressively): Fix typo.
+
+2006-06-27 Michael Olson <[email protected]>
+
+ * erc.el: Update maintainer information and URLs.
+
+2006-06-14 Michael Olson <[email protected]>
+
+ * erc.el (erc-active-buffer): If the active buffer has been
+ deleted, default to the server buffer.
+ (erc-toggle-flood-control): When the user hits C-c C-f, make flood
+ control really toggle, not unconditionally turn off.
+
+2006-06-12 Michael Olson <[email protected]>
+
+ * NEWS: Add items since the 5.1.2 release.
+
+ * erc-autoaway.el (erc-autoaway-caused-away): New variable that
+ indicates whether the current away status was caused by this
+ module.
+ (erc-autoaway-set-back): Only set back if this module set the user
+ away.
+ (erc-autoaway-set-away): Update `erc-autoaway-caused-away'.
+ (erc-autoaway-reset-indicators): New function that resets some
+ indicators when the user is no longer away.
+ (autoaway): Add the above function to the 305 hook.
+
+2006-06-05 Romain Francoise <[email protected]>
+
+ * erc.texi (History): Fix various typos.
+
+2006-06-04 Michael Olson <[email protected]>
+
+ * erc-autoaway.el (erc-autoaway-idle-method): Move after the
+ definition of the autoaway module.
+ (autoaway): Don't do anything if erc-autoaway-idle-method is
+ unbound. This prevents an error on startup.
+
+2006-06-03 Michael Olson <[email protected]>
+
+ * erc-autoaway.el: Thanks to Mark Plaksin for the ideas and patch.
+ (erc-autoaway-idle-method): Renamed from
+ `erc-autoaway-use-emacs-idle'. We have more than two choices for
+ how to do this, so it's best to make this take symbol values.
+ Improve documentation. Remove warning against Emacs idle-time;
+ the point is moot now that we get user idle time via a different
+ method. Make sure we disable and re-enable the module when
+ changing this value.
+ (autoaway): Conditionalize on the above option. If using the idle
+ timer or user idle methods, don't add anything to the
+ send-completed or server-001 hooks, since it is unnecessary.
+ (erc-autoaway-reestablish-idletimer, erc-autoaway-message):
+ Docfix.
+ (erc-autoaway-idle-seconds): Use erc-autoaway-idle-method.
+ (erc-autoaway-reset-idle-irc): Renamed from
+ `erc-autoaway-reset-idle'. Don't pass line to
+ `erc-autoaway-set-away', since it is not used.
+ (erc-autoaway-reset-idle-user): New function that resets the idle
+ state for user idle time.
+ (erc-autoaway-set-back): Remove line argument, since it is not
+ used.
+
+2006-06-01 Michael Olson <[email protected]>
+
+ * erc.el (erc-buffer-filter): Make sure all buffers returned from
+ this are live.
+
+2006-05-01 Edward O'Connor <[email protected]>
+
+ * erc-goodies.el: (erc-handle-irc-url): New function, suitable as
+ a value for `url-irc-function'.
+
+2006-04-18 Diane Murray <[email protected]>
+
+ * erc-pcomplete.el (pcomplete-erc-nicks): Added new optional
+ argument IGNORE-SELF. If this is non-nil, don't return the user's
+ current nickname. Doc fix.
+ (pcomplete/erc-mode/complete-command): Don't complete the current
+ nickname.
+
2006-04-05 Diane Murray <[email protected]>
* erc.el (erc-cmd-SV): Removed the exclamation point. Show the
diff --git a/lisp/erc/erc-autoaway.el b/lisp/erc/erc-autoaway.el
index 56713cba8b..4614bd70e2 100644
--- a/lisp/erc/erc-autoaway.el
+++ b/lisp/erc/erc-autoaway.el
@@ -40,19 +40,6 @@ yourself back when you type something."
"The Emacs idletimer.
This is only used when `erc-autoaway-use-emacs-idle' is non-nil.")
-(defcustom erc-autoaway-use-emacs-idle nil
- "*If non-nil, the idle time refers to idletime in Emacs.
-If nil, the idle time refers to idletime on IRC only.
-The time itself is specified by `erc-autoaway-idle-seconds'.
-See `erc-autoaway-mode' for more information on the various
-definitions of being idle.
-
-Note that using Emacs idletime is currently broken for most versions,
-since process activity (as happens all the time on IRC) makes Emacs
-non-idle. Emacs idle-time and user idle-time are just not the same."
- :group 'erc-autoaway
- :type 'boolean)
-
;;;###autoload (autoload 'erc-autoaway-mode "erc-autoaway")
(define-erc-module autoaway nil
"In ERC autoaway mode, you can be set away automatically.
@@ -61,35 +48,65 @@ the number of seconds specified in `erc-autoaway-idle-seconds'.
There are several kinds of being idle:
-IRC idle time measures how long since you last sent something (see
-`erc-autoaway-last-sent-time'). This is the default.
+User idle time measures how long you have not been sending any
+commands to Emacs. This is the default.
Emacs idle time measures how long Emacs has been idle. This is
currently not useful, since Emacs is non-idle when it handles
-ping-pong with IRC servers. See `erc-autoaway-use-emacs-idle' for
-more information.
+ping-pong with IRC servers. See `erc-autoaway-idle-method'
+for more information.
-User idle time measures how long you have not been sending any
-commands to Emacs, or to your system. Emacs currently provides no way
-to measure user idle time.
+IRC idle time measures how long since you last sent something (see
+`erc-autoaway-last-sent-time').
If `erc-auto-discard-away' is set, then typing anything, will
set you no longer away.
Related variables: `erc-public-away-p' and `erc-away-nickname'."
;; Enable:
- ((add-hook 'erc-send-completed-hook 'erc-autoaway-reset-idletime)
- (add-hook 'erc-server-001-functions 'erc-autoaway-reset-idletime)
- (add-hook 'erc-timer-hook 'erc-autoaway-possibly-set-away)
- (when erc-autoaway-use-emacs-idle
- (erc-autoaway-reestablish-idletimer)))
+ ((when (boundp 'erc-autoaway-idle-method)
+ (cond
+ ((eq erc-autoaway-idle-method 'irc)
+ (add-hook 'erc-send-completed-hook 'erc-autoaway-reset-idle-irc)
+ (add-hook 'erc-server-001-functions 'erc-autoaway-reset-idle-irc))
+ ((eq erc-autoaway-idle-method 'user)
+ (add-hook 'post-command-hook 'erc-autoaway-reset-idle-user))
+ ((eq erc-autoaway-idle-method 'emacs)
+ (erc-autoaway-reestablish-idletimer)))
+ (add-hook 'erc-timer-hook 'erc-autoaway-possibly-set-away)
+ (add-hook 'erc-server-305-functions 'erc-autoaway-reset-indicators)))
;; Disable:
- ((remove-hook 'erc-send-completed-hook 'erc-autoaway-reset-idletime)
- (remove-hook 'erc-server-001-functions 'erc-autoaway-reset-idletime)
- (remove-hook 'erc-timer-hook 'erc-autoaway-possibly-set-away)
- (when erc-autoaway-idletimer
- (erc-cancel-timer erc-autoaway-idletimer)
- (setq erc-autoaway-idletimer nil))))
+ ((when (boundp 'erc-autoaway-idle-method)
+ (cond
+ ((eq erc-autoaway-idle-method 'irc)
+ (remove-hook 'erc-send-completed-hook 'erc-autoaway-reset-idle-irc)
+ (remove-hook 'erc-server-001-functions 'erc-autoaway-reset-idle-irc))
+ ((eq erc-autoaway-idle-method 'user)
+ (remove-hook 'post-command-hook 'erc-autoaway-reset-idle-user))
+ ((eq erc-autoaway-idle-method 'emacs)
+ (erc-cancel-timer erc-autoaway-idletimer)
+ (setq erc-autoaway-idletimer nil)))
+ (remove-hook 'erc-timer-hook 'erc-autoaway-possibly-set-away)
+ (remove-hook 'erc-server-305-functions 'erc-autoaway-reset-indicators))))
+
+(defcustom erc-autoaway-idle-method 'user
+ "*The method used to determine how long you have been idle.
+If 'user, the time of the last command sent to Emacs is used.
+If 'emacs, the idle time in Emacs is used.
+If 'irc, the time of the last IRC command is used.
+
+The time itself is specified by `erc-autoaway-idle-seconds'.
+
+See `erc-autoaway-mode' for more information on the various
+definitions of being idle."
+ :group 'erc-autoaway
+ :type '(choice (const :tag "User idle time" user)
+ (const :tag "Emacs idle time" emacs)
+ (const :tag "Last IRC action" irc))
+ :set (lambda (sym val)
+ (erc-autoaway-disable)
+ (set-default sym val)
+ (erc-autoaway-enable)))
(defcustom erc-auto-set-away t
"*If non-nil, set away after `erc-autoaway-idle-seconds' seconds of idling.
@@ -120,8 +137,8 @@ See `erc-auto-discard-away'."
(defun erc-autoaway-reestablish-idletimer ()
"Reestablish the emacs idletimer.
-You have to call this function each time you change
-`erc-autoaway-idle-seconds', if `erc-autoaway-use-emacs-idle' is set."
+If `erc-autoaway-idle-method' is 'emacs, you must call this
+function each time you change `erc-autoaway-idle-seconds'."
(interactive)
(when erc-autoaway-idletimer
(erc-cancel-timer erc-autoaway-idletimer))
@@ -138,36 +155,49 @@ you have to run `erc-autoaway-reestablish-idletimer' afterwards."
:group 'erc-autoaway
:set (lambda (sym val)
(set-default sym val)
- (when erc-autoaway-use-emacs-idle
+ (when (eq erc-autoaway-idle-method 'emacs)
(erc-autoaway-reestablish-idletimer)))
:type 'number)
(defcustom erc-autoaway-message
"I'm gone (autoaway after %i seconds of idletime)"
- "*Message ERC will use when he sets you automatically away.
-It is used as a `format' string with the argument of the idletime in
-seconds."
+ "*Message ERC will use when setting you automatically away.
+It is used as a `format' string with the argument of the idletime
+in seconds."
:group 'erc-autoaway
:type 'string)
(defvar erc-autoaway-last-sent-time (erc-current-time)
"The last time the user sent something.")
-(defun erc-autoaway-reset-idletime (line &rest stuff)
- "Reset the stored idletime for the user.
-This is one global variable since a user talking on one net can talk
-on another net too."
+(defvar erc-autoaway-caused-away nil
+ "Indicates whether this module was responsible for setting the
+user's away status.")
+
+(defun erc-autoaway-reset-idle-user (&rest stuff)
+ "Reset the stored user idle time.
+This is one global variable since a user talking on one net can
+talk on another net too."
+ (when erc-auto-discard-away
+ (erc-autoaway-set-back))
+ (setq erc-autoaway-last-sent-time (erc-current-time)))
+
+(defun erc-autoaway-reset-idle-irc (line &rest stuff)
+ "Reset the stored IRC idle time.
+This is one global variable since a user talking on one net can
+talk on another net too."
(when (and erc-auto-discard-away
(stringp line)
(not (string-match erc-autoaway-no-auto-discard-regexp line)))
- (erc-autoaway-set-back line))
+ (erc-autoaway-set-back))
(setq erc-autoaway-last-sent-time (erc-current-time)))
-(defun erc-autoaway-set-back (line)
+(defun erc-autoaway-set-back ()
"Discard the away state globally."
- (when (erc-away-p)
- (setq erc-autoaway-last-sent-time (erc-current-time))
- (erc-cmd-GAWAY "")))
+ (let ((server-buffer (car (erc-buffer-list #'erc-server-buffer-p))))
+ (when (and erc-autoaway-caused-away
+ (with-current-buffer server-buffer (erc-away-p)))
+ (erc-cmd-GAWAY ""))))
(defun erc-autoaway-possibly-set-away (current-time)
"Set autoaway when `erc-auto-set-away' is true and the idletime is
@@ -193,8 +223,14 @@ exceeds `erc-autoaway-idle-seconds'."
;; existing process.
(when (and (erc-server-process-alive)
(not (erc-away-p)))
+ (setq erc-autoaway-caused-away t)
(erc-cmd-GAWAY (format erc-autoaway-message idle-time))))
+(defun erc-autoaway-reset-indicators (&rest stuff)
+ "Reset indicators used by the erc-autoaway module."
+ (setq erc-autoaway-last-sent-time (erc-current-time))
+ (setq erc-autoaway-caused-away nil))
+
(provide 'erc-autoaway)
;;; erc-autoaway.el ends here
diff --git a/lisp/erc/erc-backend.el b/lisp/erc/erc-backend.el
index 3ea0f74eed..7dce9e4bf0 100644
--- a/lisp/erc/erc-backend.el
+++ b/lisp/erc/erc-backend.el
@@ -563,7 +563,11 @@ action."
"Return the coding system or cons cell appropriate for TARGET.
This is determined via `erc-encoding-coding-alist' or
`erc-server-coding-system'."
- (or (cdr (assoc target erc-encoding-coding-alist))
+ (or (let ((case-fold-search t))
+ (catch 'match
+ (dolist (pat erc-encoding-coding-alist)
+ (when (string-match (car pat) target)
+ (throw 'match (cdr pat))))))
(and (functionp erc-server-coding-system)
(funcall erc-server-coding-system))
erc-server-coding-system))
@@ -849,8 +853,10 @@ Finds hooks by looking in the `erc-server-responses' hashtable."
(let ((hook (or (erc-get-hook (erc-response.command message))
'erc-default-server-functions)))
(run-hook-with-args-until-success hook process message)
- (with-current-buffer (erc-server-buffer)
- (run-hook-with-args 'erc-timer-hook (erc-current-time)))))
+ (let ((server-buffer (erc-server-buffer)))
+ (when (buffer-live-p server-buffer)
+ (with-current-buffer server-buffer
+ (run-hook-with-args 'erc-timer-hook (erc-current-time)))))))
(add-hook 'erc-default-server-functions 'erc-handle-unknown-server-response)
diff --git a/lisp/erc/erc-identd.el b/lisp/erc/erc-identd.el
index 0f70aab0fb..f30c40d479 100644
--- a/lisp/erc/erc-identd.el
+++ b/lisp/erc/erc-identd.el
@@ -24,16 +24,32 @@
;;; Commentary:
-;; You can have a local identd server (running on port 8113; I use DNAT
-;; to bind 113->8113) if you add this to .emacs.el:
+;; This module allows you to run a local identd server on port 8113.
+;; You will need to set up DNAT to bind 113->8113, or use a proxy.
-;; (add-hook 'erc-connect-pre-hook 'erc-identd-start)
-;; (add-hook 'erc-disconnected-hook 'erc-identd-stop)
+;; To use this module, add identd to `erc-modules' and run
+;; `erc-update-modules'.
+
+;; Here is an example /etc/inetd.conf rule that forwards identd
+;; traffic to port 8113. You will need simpleproxy installed for it
+;; to work.
+
+;; 113 stream tcp nowait nobody /usr/sbin/tcpd /usr/bin/simpleproxy simpleproxy -i -R 127.0.0.1:8113
;;; Code:
+(require 'erc)
+
(defvar erc-identd-process nil)
+;;;###autoload (autoload 'erc-identd-mode "erc-identd")
+(define-erc-module identd nil
+ "This mode launches an identd server on port 8113."
+ ((add-hook 'erc-connect-pre-hook 'erc-identd-start)
+ (add-hook 'erc-disconnected-hook 'erc-identd-stop))
+ ((remove-hook 'erc-connect-pre-hook 'erc-identd-start)
+ (remove-hook 'erc-disconnected-hook 'erc-identd-stop)))
+
(defun erc-identd-filter (proc string)
"This filter implements RFC1413 (identd authentication protocol)."
(let ((erc-identd-process proc))
@@ -63,10 +79,11 @@ system."
(delete-process erc-identd-process))
(setq erc-identd-process
(make-network-process :name "identd"
- :buffer (generate-new-buffer "identd")
+ :buffer nil
:host 'local :service port
- :server t :noquery t
- :filter 'erc-identd-filter)))
+ :server t :noquery t :nowait t
+ :filter 'erc-identd-filter))
+ (set-process-query-on-exit-flag erc-identd-process nil))
;;;###autoload
(defun erc-identd-stop (&rest ignore)
diff --git a/lisp/erc/erc-imenu.el b/lisp/erc/erc-imenu.el
index 88de1cedf6..e897a9d8a0 100644
--- a/lisp/erc/erc-imenu.el
+++ b/lisp/erc/erc-imenu.el
@@ -31,11 +31,6 @@
;;; Code:
-
-;; Author: Mario Lang <[email protected]>
-
-;; This file is not part of GNU Emacs. But the same license applies.
-
;;; Commentary:
;; This package defines the function `erc-create-imenu-index'. ERC
diff --git a/lisp/erc/erc-log.el b/lisp/erc/erc-log.el
index db60e5629b..b316a8588b 100644
--- a/lisp/erc/erc-log.el
+++ b/lisp/erc/erc-log.el
@@ -115,11 +115,6 @@ SERVER and PORT are the parameters used to connect BUFFERs
(const erc-generate-log-file-name-with-date)
(symbol)))
-(defcustom erc-save-buffer-on-part nil
- "*Save the channel buffer content using `erc-save-buffer-in-logs' on PART."
- :group 'erc-log
- :type 'boolean)
-
(defcustom erc-truncate-buffer-on-save nil
"Truncate any ERC (channel, query, server) buffer when it is saved."
:group 'erc-log
@@ -150,14 +145,41 @@ directory should not end with a trailing slash."
:type '(choice directory
(const nil)))
-(defcustom erc-log-insert-log-on-open t
+(defcustom erc-log-insert-log-on-open nil
"*Insert log file contents into the buffer if a log file exists."
:group 'erc-log
:type 'boolean)
-(defcustom erc-save-queries-on-quit nil
- "Save all query (also channel) buffers of the server on QUIT.
-See the variable `erc-save-buffer-on-part' for details."
+(defcustom erc-save-buffer-on-part t
+ "*Save the channel buffer content using `erc-save-buffer-in-logs' on PART.
+
+If you set this to nil, you may want to enable both
+`erc-log-write-after-send' and `erc-log-write-after-insert'."
+ :group 'erc-log
+ :type 'boolean)
+
+(defcustom erc-save-queries-on-quit t
+ "*Save all query (also channel) buffers of the server on QUIT.
+
+If you set this to nil, you may want to enable both
+`erc-log-write-after-send' and `erc-log-write-after-insert'."
+ :group 'erc-log
+ :type 'boolean)
+
+(defcustom erc-log-write-after-send nil
+ "*If non-nil, write to log file after every message you send.
+
+If you set this to nil, you may want to enable both
+`erc-save-buffer-on-part' and `erc-save-queries-on-quit'."
+ :group 'erc-log
+ :type 'boolean)
+
+(defcustom erc-log-write-after-insert nil
+ "*If non-nil, write to log file when new text is added to a
+logged ERC buffer.
+
+If you set this to nil, you may want to enable both
+`erc-save-buffer-on-part' and `erc-save-queries-on-quit'."
:group 'erc-log
:type 'boolean)
@@ -187,29 +209,28 @@ also be a predicate function. To only log when you are not set away, use:
(with-current-buffer buffer
(not erc-away))))"
;; enable
- ((add-hook 'erc-insert-post-hook
- 'erc-save-buffer-in-logs)
- (add-hook 'erc-send-post-hook
- 'erc-save-buffer-in-logs))
+ ((when erc-log-write-after-insert
+ (add-hook 'erc-insert-post-hook 'erc-save-buffer-in-logs))
+ (when erc-log-write-after-send
+ (add-hook 'erc-send-post-hook 'erc-save-buffer-in-logs))
+ (add-hook 'erc-kill-buffer-hook 'erc-save-buffer-in-logs)
+ (add-hook 'erc-kill-channel-hook 'erc-save-buffer-in-logs)
+ (add-hook 'erc-quit-hook 'erc-conditional-save-queries)
+ (add-hook 'erc-part-hook 'erc-conditional-save-buffer)
+ ;; append, so that 'erc-initialize-log-marker runs first
+ (add-hook 'erc-connect-pre-hook 'erc-log-setup-logging 'append))
;; disable
- ((remove-hook 'erc-insert-post-hook
- 'erc-save-buffer-in-logs)
- (remove-hook 'erc-send-post-hook
- 'erc-save-buffer-in-logs)))
-
-(when erc-enable-logging
- (add-hook 'erc-kill-buffer-hook
- 'erc-save-buffer-in-logs)
- (add-hook 'erc-kill-channel-hook
- 'erc-save-buffer-in-logs)
- (add-hook 'erc-quit-hook
- 'erc-conditional-save-queries)
- (add-hook 'erc-part-hook
- 'erc-conditional-save-buffer))
+ ((remove-hook 'erc-insert-post-hook 'erc-save-buffer-in-logs)
+ (remove-hook 'erc-send-post-hook 'erc-save-buffer-in-logs)
+ (remove-hook 'erc-kill-buffer-hook 'erc-save-buffer-in-logs)
+ (remove-hook 'erc-kill-channel-hook 'erc-save-buffer-in-logs)
+ (remove-hook 'erc-quit-hook 'erc-conditional-save-queries)
+ (remove-hook 'erc-part-hook 'erc-conditional-save-buffer)
+ (remove-hook 'erc-connect-pre-hook 'erc-log-setup-logging)))
(define-key erc-mode-map "\C-c\C-l" 'erc-save-buffer-in-logs)
-;;;functionality referenced from erc.el
+;;; functionality referenced from erc.el
(defun erc-log-setup-logging ()
"Setup the buffer-local logging variables in the current buffer.
This function is destined to be run from `erc-connect-pre-hook'."
@@ -224,9 +245,6 @@ This function is destined to be run from `erc-connect-pre-hook'."
(move-marker erc-last-saved-position
(1- (point-max)))))))
-;;; Append, so that 'erc-initialize-log-marker keeps running first.
-(add-hook 'erc-connect-pre-hook 'erc-log-setup-logging 'append)
-
(defun erc-log-all-but-server-buffers (buffer)
"Returns t if logging should be enabled in BUFFER.
Returns nil iff `erc-server-buffer-p' returns t."
diff --git a/lisp/erc/erc-match.el b/lisp/erc/erc-match.el
index 88c6d4c425..ffbc7482aa 100644
--- a/lisp/erc/erc-match.el
+++ b/lisp/erc/erc-match.el
@@ -553,10 +553,9 @@ deactivate/activate match logging in the latter. See
?m message
?u nickuserhost))))
(with-current-buffer (erc-log-matches-make-buffer match-buffer-name)
- (toggle-read-only -1)
- (point-max)
- (insert line)
- (toggle-read-only 1))))))
+ (let ((inhibit-read-only t))
+ (goto-char (point-max))
+ (insert line)))))))
(defun erc-log-matches-make-buffer (name)
"Create or get a log-matches buffer named NAME and return it."
diff --git a/lisp/erc/erc-pcomplete.el b/lisp/erc/erc-pcomplete.el
index d6d4dfdd3b..33231ee259 100644
--- a/lisp/erc/erc-pcomplete.el
+++ b/lisp/erc/erc-pcomplete.el
@@ -106,7 +106,7 @@ the most recent speakers are listed first."
(pcomplete-here
(append
(pcomplete-erc-commands)
- (pcomplete-erc-nicks erc-pcomplete-nick-postfix))))
+ (pcomplete-erc-nicks erc-pcomplete-nick-postfix t))))
(defvar erc-pcomplete-ctcp-commands
'("ACTION" "CLIENTINFO" "ECHO" "FINGER" "PING" "TIME" "USERINFO" "VERSION"))
@@ -212,14 +212,23 @@ the most recent speakers are listed first."
not-ops))
-(defun pcomplete-erc-nicks (&optional postfix)
- "Returns a list of nicks in the current channel."
- (let ((users (erc-get-channel-user-list)))
- (if erc-pcomplete-order-nickname-completions
- (setq users (erc-sort-channel-users-by-activity users)))
- (mapcar (lambda (x)
- (concat (erc-server-user-nickname (car x)) postfix))
- users)))
+(defun pcomplete-erc-nicks (&optional postfix ignore-self)
+ "Returns a list of nicks in the current channel.
+Optional argument POSTFIX is something to append to the nickname.
+If optional argument IGNORE-SELF is non-nil, don't return the current nick."
+ (let ((users (if erc-pcomplete-order-nickname-completions
+ (erc-sort-channel-users-by-activity
+ (erc-get-channel-user-list))
+ (erc-get-channel-user-list)))
+ (nicks nil))
+ (dolist (user users)
+ (unless (and ignore-self
+ (string= (erc-server-user-nickname (car user))
+ (erc-current-nick)))
+ (setq nicks (cons (concat (erc-server-user-nickname (car user))
+ postfix)
+ nicks))))
+ (nreverse nicks)))
(defun pcomplete-erc-all-nicks (&optional postfix)
"Returns a list of all nicks on the current server."
diff --git a/lisp/erc/erc-track.el b/lisp/erc/erc-track.el
index 6300567861..b045fb2499 100644
--- a/lisp/erc/erc-track.el
+++ b/lisp/erc/erc-track.el
@@ -108,7 +108,7 @@ If this variable is set to `max', then channel names will be shortened
to the max. Usually, shortened channel names will remain unique for a
given set of existing channels. When shortening to the max, the shortened
channel names will be unique for the set of active channels only.
-Example: If there are tow active channels #emacs and #vi, and two inactive
+Example: If there are two active channels #emacs and #vi, and two inactive
channels #electronica and #folk, then usually the active channels are
shortened to #em and #v. When shortening to the max, however, #emacs is
not compared to #electronica -- only to #vi, therefore it can be shortened
diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el
index 1baede0125..fd5a49eae4 100644
--- a/lisp/erc/erc.el
+++ b/lisp/erc/erc.el
@@ -11,7 +11,7 @@
;; Andreas Fuchs ([email protected])
;; Gergely Nagy ([email protected])
;; David Edmondson ([email protected])
-;; Maintainer: Mario Lang ([email protected])
+;; Maintainer: Michael Olson ([email protected])
;; Keywords: IRC, chat, client, Internet
;; This file is part of GNU Emacs.
@@ -36,12 +36,13 @@
;; ERC is an IRC client for Emacs.
;; For more information, see the following URLs:
-;; * http://sf.net/projects/erc/
+;; * http://sv.gnu.org/projects/erc/
;; * http://www.emacswiki.org/cgi-bin/wiki.pl?EmacsIRCClient
-;; Jul-26-2001. erc.el is now in CVS on SourceForge. I invite everyone
-;; who wants to hack it to contact me <[email protected]> in order to
-;; get write access on the CVS.
+;; As of 2006-06-13, ERC development is now hosted on Savannah
+;; (http://sv.gnu.org/projects/erc). I invite everyone who wants to
+;; hack on it to contact me <[email protected]> in order to get write
+;; access to the shared Arch archive.
;; Installation:
@@ -66,7 +67,7 @@
;;; Code:
-(defconst erc-version-string "Version 5.1.2"
+(defconst erc-version-string "Version 5.1.3"
"ERC version. This is used by function `erc-version'.")
(eval-when-compile (require 'cl))
@@ -77,12 +78,12 @@
(require 'erc-menu)
(defvar erc-official-location
- "http://erc.sf.net (comments mailto://[email protected])"
+ "http://emacswiki.org/cgi-bin/wiki/ERC (mailing list: [email protected])"
"Location of the ERC client on the Internet.")
(defgroup erc nil
"Emacs Internet Relay Chat client."
- :link '(url-link "http://www.emacswiki.org/cgi-bin/wiki.pl?EmacsIRCClient")
+ :link '(url-link "http://www.emacswiki.org/cgi-bin/wiki/ERC")
:prefix "erc-"
:group 'applications)
@@ -143,57 +144,69 @@
;; tunable connection and authentication parameters
(defcustom erc-server nil
- "IRC server to use.
+ "IRC server to use if one is not provided.
See function `erc-compute-server' for more details on connection
parameters and authentication."
:group 'erc
- :type '(choice (const nil) string))
+ :type '(choice (const :tag "None" nil)
+ (string :tag "Server")))
(defcustom erc-port nil
- "IRC port to use."
+ "IRC port to use if not specified.
+
+This can be either a string or a number."
:group 'erc
- :type '(choice (const nil) number string))
+ :type '(choice (const :tag "None" nil)
+ (const :tag "Port number" number)
+ (const :tag "Port string" string)))
(defcustom erc-nick nil
- "Nickname to use.
+ "Nickname to use if one is not provided.
-Can be either a string, or a list of strings.
+This can be either a string, or a list of strings.
In the latter case, if the first nick in the list is already in use,
other nicks are tried in the list order.
See function `erc-compute-nick' for more details on connection
parameters and authentication."
:group 'erc
- :type '(choice (const nil)
+ :type '(choice (const :tag "None" nil)
(string :tag "Nickname")
- (repeat string)))
+ (repeat (string :tag "Nickname"))))
(defcustom erc-nick-uniquifier "`"
- "The character to append to the nick if it is already in use."
+ "The string to append to the nick if it is already in use."
:group 'erc
:type 'string)
-(defcustom erc-manual-set-nick-on-bad-nick-p nil
- "If the nickname you chose isn't available, ERC should not automatically
-attempt to set another nickname. You can manually set another nickname with
-the /NICK command."
+(defcustom erc-try-new-nick-p t
+ "If the nickname you chose isn't available, and this option is non-nil,
+ERC should automatically attempt to connect with another nickname.
+
+You can manually set another nickname with the /NICK command."
:group 'erc
:type 'boolean)
(defcustom erc-user-full-name nil
"User full name.
+This can be either a string or a function to call.
+
See function `erc-compute-full-name' for more details on connection
parameters and authentication."
:group 'erc
- :type '(choice (const nil) string function)
+ :type '(choice (const :tag "No name" nil)
+ (string :tag "Name")
+ (function :tag "Get from function"))
:set (lambda (sym val)
(if (functionp val)
(set sym (funcall val))
(set sym val))))
(defvar erc-password nil
- "ERC password to use in authentication (not necessary).")
+ "Password to use when authenticating to an IRC server.
+It is not strictly necessary to provide this, since ERC will
+prompt you for it.")
(defcustom erc-user-mode nil
"Initial user modes to be set after a connection is established."
@@ -871,7 +884,7 @@ As an example:
(\"xmms\" dme:now-playing)
(\"version\" erc-quit-reason-normal)
(\"home\" \"Gone home !\")
- (\"\" \"Default Reason\")))
+ (\"^$\" \"Default Reason\")))
If the user types \"/quit zippy\", then a Zippy the Pinhead quotation
will be used as the quit message."
:group 'erc-quit-and-part
@@ -895,7 +908,7 @@ As an example:
(\"xmms\" dme:now-playing)
(\"version\" erc-part-reason-normal)
(\"home\" \"Gone home !\")
- (\"\" \"Default Reason\")))
+ (\"^$\" \"Default Reason\")))
If the user types \"/part zippy\", then a Zippy the Pinhead quotation
will be used as the part message."
:group 'erc-quit-and-part
@@ -1373,7 +1386,10 @@ server buffer")
(defun erc-active-buffer ()
"Return the value of `erc-active-buffer' for the current server.
Defaults to the server buffer."
- (with-current-buffer (erc-server-buffer) erc-active-buffer))
+ (with-current-buffer (erc-server-buffer)
+ (if (buffer-live-p erc-active-buffer)
+ erc-active-buffer)
+ (setq erc-active-buffer (current-buffer))))
(defun erc-set-active-buffer (buffer)
"Set the value of `erc-active-buffer' to BUFFER."
@@ -1595,12 +1611,13 @@ server connection, or nil which means all open connections."
(delq
nil
(mapcar (lambda (buf)
- (with-current-buffer buf
- (and (eq major-mode 'erc-mode)
- (or (not proc)
- (eq proc erc-server-process))
- (funcall predicate)
- buf)))
+ (when (buffer-live-p buf)
+ (with-current-buffer buf
+ (and (eq major-mode 'erc-mode)
+ (or (not proc)
+ (eq proc erc-server-process))
+ (funcall predicate)
+ buf))))
(buffer-list)))))
(defun erc-buffer-list (&optional predicate proc)
@@ -1760,11 +1777,12 @@ removed from the list will be disabled."
:greedy t
(const :tag "Set away status automatically" autoaway)
(const :tag "Join channels automatically" autojoin)
- (const :tag "Integrate with Big Brother Database" bbdb)
(const :tag "Buttonize URLs, nicknames, and other text" button)
(const :tag "Wrap long lines" fill)
+ (const :tag "Launch an identd server on port 8113" identd)
(const :tag "Highlight or remove IRC control characters"
irccontrols)
+ (const :tag "List channels in a separate buffer" list)
(const :tag "Save buffers in logs" log)
(const :tag "Highlight pals, fools, and other keywords" match)
(const :tag "Detect netsplits" netsplit)
@@ -1776,6 +1794,7 @@ removed from the list will be disabled."
(const :tag "Complete nicknames and commands (programmable)"
completion)
(const :tag "Complete nicknames and commands (old)" hecomplete)
+ (const :tag "Process CTCP PAGE requests from IRC" page)
(const :tag "Make displayed lines read-only" readonly)
(const :tag "Replace text in messages" replace)
(const :tag "Enable an input history" ring)
@@ -2063,10 +2082,12 @@ Non-interactively, it takes keyword arguments
(full-name (erc-compute-full-name)))
That is, if called with
+
(erc-select :server \"irc.freenode.net\" :full-name \"Harry S Truman\")
+
server and full-name will be set to those values, whereas
-erc-compute-port, erc-compute-nick and erc-compute-full-name will
-be invoked for those parameters' values"
+`erc-compute-port', `erc-compute-nick' and `erc-compute-full-name' will
+be invoked for the values of the other parameters."
(interactive (erc-select-read-args))
(run-hook-with-args 'erc-before-connect server port nick)
@@ -3047,8 +3068,8 @@ If S is non-nil, it will be used as the quit reason."
(cond
((functionp res) (funcall res))
((stringp res) res)
- ;; hopefully never reached
- (s))))
+ (s s)
+ (t (erc-quit-reason-normal)))))
(defun erc-part-reason-normal (&optional s)
"Normal part message.
@@ -3074,7 +3095,8 @@ If S is non-nil, it will be used as the quit reason."
(cond
((functionp res) (funcall res))
((stringp res) res)
- (s))))
+ (s s)
+ (t (erc-part-reason-normal)))))
(defun erc-cmd-QUIT (reason)
"Disconnect from the current server.
@@ -3713,7 +3735,7 @@ E.g. \"Read error to Nick [[email protected]]: 110\" would be shortened to
"If NICK is unavailable, tell the user the REASON.
See also `erc-display-error-notice'."
- (if (or erc-manual-set-nick-on-bad-nick-p
+ (if (or (not erc-try-new-nick-p)
;; how many default-nicks are left + one more try...
(eq erc-nick-change-attempt-count
(if (consp erc-nick)
@@ -3735,12 +3757,13 @@ See also `erc-display-error-notice'."
(setq newnick (concat (truncate-string-to-width
nick
(if (and erc-server-connected nicklen)
- (- (string-to-number nicklen) 1)
+ (- (string-to-number nicklen)
+ (length erc-nick-uniquifier))
;; rfc2812 max nick length = 9
;; we must assume this is the
;; server's setting if we haven't
;; established a connection yet
- 8))
+ (- 9 (length erc-nick-uniquifier))))
erc-nick-uniquifier)))
(erc-cmd-NICK newnick)
(erc-display-error-notice
@@ -5098,13 +5121,16 @@ If ARG is non-nil and not positive, turns CTCP replies off."
(defun erc-toggle-flood-control (&optional arg)
"Toggle use of flood control on sent messages.
-If ARG is non-nil, use flood control.
-If ARG is nil, do not use flood control.
+If ARG is positive, use flood control.
+If ARG is non-nil and not positive, do not use flood control.
See `erc-server-flood-margin' for an explanation of the available
flood control parameters."
(interactive "P")
- (setq erc-flood-protect arg)
+ (cond ((and (numberp arg) (> arg 0))
+ (setq erc-flood-protect t))
+ (arg (setq erc-flood-protect nil))
+ (t (setq erc-flood-protect (not erc-flood-protect))))
(message "ERC flood control is %s"
(cond (erc-flood-protect "ON")
(t "OFF"))))
@@ -5130,10 +5156,10 @@ This command is sent even if excess flood is detected."
(defun erc-get-channel-mode-from-keypress (key)
"Read a key sequence and call the corresponding channel mode function.
-After doing C-c C-o type in a channel mode letter.
+After doing C-c C-o, type in a channel mode letter.
C-g means quit.
-RET let's you type more than one mode at a time.
+RET lets you type more than one mode at a time.
If \"l\" is pressed, `erc-set-channel-limit' gets called.
If \"k\" is pressed, `erc-set-channel-key' gets called.
Anything else will be sent to `erc-toggle-channel-mode'."
@@ -5384,28 +5410,28 @@ Sets the buffer local variables:
(defun erc-compute-server (&optional server)
"Return an IRC server name.
-Tries a number of increasingly more default methods until a non-nil value is
-found:
+This tries a number of increasingly more default methods until a
+non-nil value is found.
-- SERVER
-- `erc-server'
+- SERVER (the argument passwd to this function)
+- The `erc-server' option
- The value of the IRCSERVER environment variable
-- `erc-default-server'."
+- The `erc-default-server' variable"
(or server
erc-server
(getenv "IRCSERVER")
erc-default-server))
(defun erc-compute-nick (&optional nick)
- "Return user's NICK.
+ "Return user's IRC nick.
-Tries a number of increasingly more default methods until a non-nil value is
-found:
+This tries a number of increasingly more default methods until a
+non-nil value is found.
-- NICK
-- `erc-nick'
+- NICK (the argument passed to this function)
+- The `erc-nick' option
- The value of the IRCNICK environment variable
-- via the function `user-login-name'."
+- The result from the `user-login-name' function"
(or nick
(if (consp erc-nick) (car erc-nick) erc-nick)
(getenv "IRCNICK")
@@ -5413,15 +5439,15 @@ found:
(defun erc-compute-full-name (&optional full-name)
- "Return user's FULL-NAME.
+ "Return user's full name.
-Tries a number of increasingly more default methods until a non-nil value is
-found:
+This tries a number of increasingly more default methods until a
+non-nil value is found.
-- FULL-NAME
-- `erc-user-full-name'
+- FULL-NAME (the argument passed to this function)
+- The `erc-user-full-name' option
- The value of the IRCNAME environment variable
-- via the function `user-full-name'."
+- The result from the `user-full-name' function"
(or full-name
erc-user-full-name
(getenv "IRCNAME")
@@ -5431,12 +5457,13 @@ found:
(defun erc-compute-port (&optional port)
"Return a port for an IRC server.
-Tries a number of increasingly more default methods until a non-nil
-value is found:
+This tries a number of increasingly more default methods until a
+non-nil value is found.
-- PORT
-- \"ircd\"."
- (or port erc-port "ircd"))
+- PORT (the argument passed to this function)
+- The `erc-port' option
+- The `erc-default-port' variable"
+ (or port erc-port erc-default-port))
;; time routines
@@ -5818,26 +5845,6 @@ If optional argument HERE is non-nil, insert version number at point."
(message "%s" version-string)
version-string))))
-(defun erc-version-modules (&optional here)
- "Show the version numbers of all loaded ERC modules in the minibuffer.
-If optional argument HERE is non-nil, insert version number at point."
- (interactive "P")
- (let ((version-string
- (mapconcat 'identity
- (let (versions (case-fold-search nil))
- (dolist (var (apropos-internal "^erc-.*version$"))
- (when (and (boundp var)
- (stringp (symbol-value var)))
- (setq versions (cons (format "%S: %s"
- var (symbol-value var))
- versions))))
- versions) ", ")))
- (if here
- (insert version-string)
- (if (interactive-p)
- (message "%s" version-string)
- version-string))))
-
(defun erc-modes (&optional here)
"Show the active ERC modes in the minibuffer.
If optional argument HERE is non-nil, insert version number at point."
@@ -5858,32 +5865,6 @@ If optional argument HERE is non-nil, insert version number at point."
(message "%s" string)
string))))
-(defun erc-latest-version ()
- "Retrieve the latest erc.el version from CVS."
- (interactive)
- (if (ignore-errors (require 'url))
- (progn
- (switch-to-buffer (get-buffer-create "*erc.el latest version*"))
- (delete-region (point-min) (point-max))
- (kill-all-local-variables)
- (url-insert-file-contents (concat
- "http://cvs.sourceforge.net/viewcvs.py/"
- "*checkout*/erc/erc/erc.el?content-type"
- "=text%2Fplain&rev=HEAD"))
- (emacs-lisp-mode)
- (current-buffer))
- (error "URL needs to be installed")))
-
-(defun erc-ediff-latest-version ()
- "Ediff your installed erc.el with the latest CVS version.
-See also `erc-latest-version'."
- (interactive)
- (let ((current (locate-library "erc.el")))
- (if current
- (ediff-buffers (find-file current)
- (erc-latest-version))
- (error "You do not appear to have the uncompiled erc.el file"))))
-
(defun erc-trim-string (s)
"Trim leading and trailing spaces off S."
(cond
@@ -6184,6 +6165,29 @@ This function should be on `erc-kill-channel-hook'."
(and vect
(erc-response.command vect)))
+;; Teach url.el how to open irc:// URLs with ERC.
+;; To activate, customize `url-irc-function' to `url-irc-erc'.
+
+;;;###autoload
+(defun erc-handle-irc-url (host port channel user password)
+ "Use ERC to IRC on HOST:PORT in CHANNEL as USER with PASSWORD.
+If ERC is already connected to HOST:PORT, simply /join CHANNEL.
+Otherwise, connect to HOST:PORT as USER and /join CHANNEL."
+ (let ((server-buffer
+ (car (erc-buffer-filter
+ (lambda ()
+ (and (string-equal erc-session-server host)
+ (= erc-session-port port)
+ erc-server-connected
+ (eq (erc-server-buffer) (current-buffer))))))))
+ (with-current-buffer (or server-buffer (current-buffer))
+ (if (and server-buffer channel)
+ (erc-cmd-JOIN channel)
+ (erc host port (or user (erc-compute-nick)) (erc-compute-full-name)
+ (not server-buffer) password nil channel
+ (when server-buffer
+ (get-buffer-process server-buffer)))))))
+
(provide 'erc)
;;; Deprecated. We might eventually stop requiring the goodies automatically.
diff --git a/lisp/facemenu.el b/lisp/facemenu.el
index 5478cf12b8..a8d8ea9a4b 100644
--- a/lisp/facemenu.el
+++ b/lisp/facemenu.el
@@ -67,8 +67,8 @@
;;
;; The order of the faces that appear in the menu and their keybindings can be
;; controlled by setting the variables `facemenu-keybindings' and
-;; `facemenu-new-faces-at-end'. List faces that you don't use in documents
-;; (eg, `region') in `facemenu-unlisted-faces'.
+;; `facemenu-new-faces-at-end'. List faces that you want to use in documents
+;; in `facemenu-listed-faces'.
;;; Known Problems:
;; Bold and Italic do not combine to create bold-italic if you select them
@@ -116,9 +116,9 @@ the next element is the key to use as a keyboard equivalent of the menu item;
the binding is made in `facemenu-keymap'.
The faces specifically mentioned in this list are put at the top of
-the menu, in the order specified. All other faces which are defined,
-except for those in `facemenu-unlisted-faces', are listed after them,
-but get no keyboard equivalents.
+the menu, in the order specified. All other faces which are defined
+in `facemenu-listed-faces' are listed after them, but get no
+keyboard equivalents.
If you change this variable after loading facemenu.el, you will need to call
`facemenu-update' to make it take effect."
@@ -132,28 +132,25 @@ just before \"Other\" at the end."
:type 'boolean
:group 'facemenu)
-(defcustom facemenu-unlisted-faces
- `(modeline region secondary-selection highlight scratch-face
- ,(purecopy "^font-lock-") ,(purecopy "^gnus-") ,(purecopy "^message-")
- ,(purecopy "^ediff-") ,(purecopy "^term-") ,(purecopy "^vc-")
- ,(purecopy "^widget-") ,(purecopy "^custom-") ,(purecopy "^vm-"))
- "*List of faces not to include in the Face menu.
-Each element may be either a symbol, which is the name of a face, or a string,
-which is a regular expression to be matched against face names. Matching
-faces will not be added to the menu.
+(defcustom facemenu-listed-faces nil
+ "*List of faces to include in the Face menu.
+Each element should be a symbol, which is the name of a face.
+The \"basic \" faces in `facemenu-keybindings' are automatically
+added to the Face menu, and are not included in this list.
You can set this list before loading facemenu.el, or add a face to it before
-creating that face if you do not want it to be listed. If you change the
+creating that face if you want it to be listed. If you change the
variable so as to eliminate faces that have already been added to the menu,
call `facemenu-update' to recalculate the menu contents.
-If this variable is t, no faces will be added to the menu. This is useful for
-temporarily turning off the feature that automatically adds faces to the menu
-when they are created."
- :type '(choice (const :tag "Don't add faces" t)
- (const :tag "None (do add any face)" nil)
- (repeat (choice symbol regexp)))
- :group 'facemenu)
+If this variable is t, all faces will be added to the menu. This
+is useful for setting temporarily if you want to add faces to the
+menu when they are created."
+ :type '(choice (const :tag "List all faces" t)
+ (const :tag "None" nil)
+ (repeat symbol))
+ :group 'facemenu
+ :version "22.1")
;;;###autoload
(defvar facemenu-face-menu
@@ -675,18 +672,13 @@ This is called whenever you create a new face."
(setq docstring
(format "Select face `%s' for subsequent insertion."
name))
- (cond ((eq t facemenu-unlisted-faces))
- ((memq symbol facemenu-unlisted-faces))
- ;; test against regexps in facemenu-unlisted-faces
- ((let ((unlisted facemenu-unlisted-faces)
- (matched nil))
- (while (and unlisted (not matched))
- (if (and (stringp (car unlisted))
- (string-match (car unlisted) name))
- (setq matched t)
- (setq unlisted (cdr unlisted))))
- matched))
- (key ; has a keyboard equivalent. These go at the front.
+ (cond ((facemenu-iterate ; check if equivalent face is already in the menu
+ (lambda (m) (and (listp m)
+ (symbolp (car m))
+ (face-equal (car m) symbol)))
+ (cdr (symbol-function menu))))
+ ;; Faces with a keyboard equivalent. These go at the front.
+ (key
(setq function (intern (concat "facemenu-set-" name)))
(fset function
`(lambda ()
@@ -700,17 +692,14 @@ This is called whenever you create a new face."
(region-end)))))
(define-key 'facemenu-keymap key (cons name function))
(define-key menu key (cons name function)))
- ((facemenu-iterate ; check if equivalent face is already in the menu
- (lambda (m) (and (listp m)
- (symbolp (car m))
- (face-equal (car m) symbol)))
- (cdr (symbol-function menu))))
- (t ; No keyboard equivalent. Figure out where to put it:
+ ;; Faces with no keyboard equivalent. Figure out where to put it:
+ ((or (eq t facemenu-listed-faces)
+ (memq symbol facemenu-listed-faces))
(setq key (vector symbol)
function 'facemenu-set-face-from-menu
menu-val (symbol-function menu))
(if (and facemenu-new-faces-at-end
- (> (length menu-val) 3))
+ (> (length menu-val) 3))
(define-key-after menu-val key (cons name function)
(car (nth (- (length menu-val) 3) menu-val)))
(define-key menu key (cons name function))))))
diff --git a/lisp/faces.el b/lisp/faces.el
index 9c6cff294b..f501e0054d 100644
--- a/lisp/faces.el
+++ b/lisp/faces.el
@@ -859,10 +859,11 @@ of the default face. Value is FACE."
(defun read-face-name (prompt &optional string-describing-default multiple)
"Read a face, defaulting to the face or faces on the char after point.
-If it has a `read-face-name' property, that overrides the `face' property.
-PROMPT describes what you will do with the face (don't end in a space).
-STRING-DESCRIBING-DEFAULT describes what default you will use
-if this function returns nil.
+If it has the property `read-face-name', that overrides the `face' property.
+PROMPT should be a string that describes what the caller will do with the face;
+it should not end in a space.
+STRING-DESCRIBING-DEFAULT should describe what default the caller will use if
+the user just types RET; you can omit it.
If MULTIPLE is non-nil, return a list of faces (possibly only one).
Otherwise, return a single face."
(let ((faceprop (or (get-char-property (point) 'read-face-name)
diff --git a/lisp/files.el b/lisp/files.el
index 8940b68724..315c11de52 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -488,7 +488,7 @@ This variable does not affect the use of major modes
specified in a -*- line.")
(defcustom enable-local-eval 'maybe
- "*Control processing of the \"variable\" `eval' in a file's local variables.
+ "Control processing of the \"variable\" `eval' in a file's local variables.
The value can be t, nil or something else.
A value of t means obey `eval' variables;
nil means ignore them; anything else means query."
@@ -691,7 +691,7 @@ PATH-AND-SUFFIXES is a pair of lists, (DIRECTORIES . SUFFIXES)."
(when (file-directory-p dir)
(dolist (file (file-name-all-completions
(file-name-nondirectory string) dir))
- (push (if string-dir (concat string-dir file) file) names)
+ (add-to-list 'names (if string-dir (concat string-dir file) file))
(when (string-match suffix file)
(setq file (substring file 0 (match-beginning 0)))
(push (if string-dir (concat string-dir file) file) names)))))
@@ -1192,7 +1192,11 @@ If the current buffer now contains an empty file that you just visited
\(presumably by mistake), use this command to visit the file you really want.
Interactively, or if WILDCARDS is non-nil in a call from Lisp,
-expand wildcards (if any) and replace the file with multiple files."
+expand wildcards (if any) and replace the file with multiple files.
+
+If the current buffer is an indirect buffer, or the base buffer
+for one or more indirect buffers, the other buffer(s) are not
+killed."
(interactive
(let ((file buffer-file-name)
(file-name nil)
@@ -1275,48 +1279,49 @@ Choose the buffer's name using `generate-new-buffer-name'."
This also substitutes \"~\" for the user's home directory and
removes automounter prefixes (see the variable `automount-dir-prefix')."
;; Get rid of the prefixes added by the automounter.
- (if (and automount-dir-prefix
- (string-match automount-dir-prefix filename)
- (file-exists-p (file-name-directory
- (substring filename (1- (match-end 0))))))
- (setq filename (substring filename (1- (match-end 0)))))
- (let ((tail directory-abbrev-alist))
- ;; If any elt of directory-abbrev-alist matches this name,
- ;; abbreviate accordingly.
- (while tail
- (if (string-match (car (car tail)) filename)
+ (save-match-data
+ (if (and automount-dir-prefix
+ (string-match automount-dir-prefix filename)
+ (file-exists-p (file-name-directory
+ (substring filename (1- (match-end 0))))))
+ (setq filename (substring filename (1- (match-end 0)))))
+ (let ((tail directory-abbrev-alist))
+ ;; If any elt of directory-abbrev-alist matches this name,
+ ;; abbreviate accordingly.
+ (while tail
+ (if (string-match (car (car tail)) filename)
+ (setq filename
+ (concat (cdr (car tail)) (substring filename (match-end 0)))))
+ (setq tail (cdr tail)))
+ ;; Compute and save the abbreviated homedir name.
+ ;; We defer computing this until the first time it's needed, to
+ ;; give time for directory-abbrev-alist to be set properly.
+ ;; We include a slash at the end, to avoid spurious matches
+ ;; such as `/usr/foobar' when the home dir is `/usr/foo'.
+ (or abbreviated-home-dir
+ (setq abbreviated-home-dir
+ (let ((abbreviated-home-dir "$foo"))
+ (concat "^" (abbreviate-file-name (expand-file-name "~"))
+ "\\(/\\|$\\)"))))
+
+ ;; If FILENAME starts with the abbreviated homedir,
+ ;; make it start with `~' instead.
+ (if (and (string-match abbreviated-home-dir filename)
+ ;; If the home dir is just /, don't change it.
+ (not (and (= (match-end 0) 1)
+ (= (aref filename 0) ?/)))
+ ;; MS-DOS root directories can come with a drive letter;
+ ;; Novell Netware allows drive letters beyond `Z:'.
+ (not (and (or (eq system-type 'ms-dos)
+ (eq system-type 'cygwin)
+ (eq system-type 'windows-nt))
+ (save-match-data
+ (string-match "^[a-zA-`]:/$" filename)))))
(setq filename
- (concat (cdr (car tail)) (substring filename (match-end 0)))))
- (setq tail (cdr tail)))
- ;; Compute and save the abbreviated homedir name.
- ;; We defer computing this until the first time it's needed, to
- ;; give time for directory-abbrev-alist to be set properly.
- ;; We include a slash at the end, to avoid spurious matches
- ;; such as `/usr/foobar' when the home dir is `/usr/foo'.
- (or abbreviated-home-dir
- (setq abbreviated-home-dir
- (let ((abbreviated-home-dir "$foo"))
- (concat "^" (abbreviate-file-name (expand-file-name "~"))
- "\\(/\\|$\\)"))))
-
- ;; If FILENAME starts with the abbreviated homedir,
- ;; make it start with `~' instead.
- (if (and (string-match abbreviated-home-dir filename)
- ;; If the home dir is just /, don't change it.
- (not (and (= (match-end 0) 1)
- (= (aref filename 0) ?/)))
- ;; MS-DOS root directories can come with a drive letter;
- ;; Novell Netware allows drive letters beyond `Z:'.
- (not (and (or (eq system-type 'ms-dos)
- (eq system-type 'cygwin)
- (eq system-type 'windows-nt))
- (save-match-data
- (string-match "^[a-zA-`]:/$" filename)))))
- (setq filename
- (concat "~"
- (substring filename (match-beginning 1) (match-end 1))
- (substring filename (match-end 0)))))
- filename))
+ (concat "~"
+ (match-string 1 filename)
+ (substring filename (match-end 0)))))
+ filename)))
(defcustom find-file-not-true-dirname-list nil
"*List of logical names for which visiting shouldn't save the true dirname.
@@ -1627,9 +1632,7 @@ Do you want to revisit the file normally now? ")
(not (member logical find-file-not-true-dirname-list)))
(setq buffer-file-name buffer-file-truename))
(if find-file-visit-truename
- (setq buffer-file-name
- (setq filename
- (expand-file-name buffer-file-truename))))
+ (setq buffer-file-name (expand-file-name buffer-file-truename)))
;; Set buffer's default directory to that of the file.
(setq default-directory (file-name-directory buffer-file-name))
;; Turn off backup files for certain file names. Since
@@ -2437,11 +2440,9 @@ n -- to ignore the local variables list.")
(insert " ")))
(princ (car elt) buf)
(insert " : ")
- (if (stringp (cdr elt))
- ;; Make strings with embedded whitespace easier to read.
- (let ((print-escape-newlines t))
- (prin1 (cdr elt) buf))
- (princ (cdr elt) buf))
+ ;; Make strings with embedded whitespace easier to read.
+ (let ((print-escape-newlines t))
+ (prin1 (cdr elt) buf))
(insert "\n"))
(setq prompt
(format "Please type %s%s: "
@@ -2512,9 +2513,7 @@ and VAL is the specified value."
;; There used to be a downcase here,
;; but the manual didn't say so,
;; and people want to set var names that aren't all lc.
- (let ((key (intern (buffer-substring
- (match-beginning 1)
- (match-end 1))))
+ (let ((key (intern (match-string 1)))
(val (save-restriction
(narrow-to-region (point) end)
(read (current-buffer)))))
@@ -2753,17 +2752,16 @@ It is dangerous if either of these conditions are met:
(defun hack-one-local-variable (var val)
"Set local variable VAR with value VAL."
(cond ((eq var 'mode)
- (funcall (intern (concat (downcase (symbol-name val))
- "-mode"))))
+ (funcall (intern (concat (downcase (symbol-name val)) "-mode"))))
((eq var 'eval)
(save-excursion (eval val)))
- (t (make-local-variable var)
- ;; Make sure the string has no text properties.
- ;; Some text properties can get evaluated in various ways,
- ;; so it is risky to put them on with a local variable list.
- (if (stringp val)
- (set-text-properties 0 (length val) nil val))
- (set var val))))
+ (t
+ ;; Make sure the string has no text properties.
+ ;; Some text properties can get evaluated in various ways,
+ ;; so it is risky to put them on with a local variable list.
+ (if (stringp val)
+ (set-text-properties 0 (length val) nil val))
+ (set (make-local-variable var) val))))
(defcustom change-major-mode-with-file-name t
@@ -4221,9 +4219,7 @@ This command is used in the special Dired buffer created by
(setq autofile
(buffer-substring-no-properties
(point)
- (save-excursion
- (end-of-line)
- (point))))
+ (line-end-position)))
(setq thisfile
(expand-file-name
(substring
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index 1eec8b26fd..825a8bce00 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,17 @@
+2006-07-14 Andreas Seltenreich <[email protected]>
+
+ * gnus-start.el (gnus-subscribe-options-newsgroup-method): Doc fix.
+
+2006-06-26 Reiner Steib <[email protected]>
+
+ * gnus-diary.el (gnus-user-format-function-d)
+ (gnus-user-format-function-D): Autoload.
+
+2006-06-26 Lars Magne Ingebrigtsen <[email protected]>
+
+ * gnus-group.el (gnus-group-select-group): Doc fix.
+ [ See 2004-05-19 change on the trunk. ]
+
2006-06-20 Katsumi Yamaoka <[email protected]>
* rfc2231.el (rfc2231-parse-string): Allow `*'s in parameter values.
@@ -165,8 +179,8 @@
* mml.el (mml-mode, mml-dnd-protocol-alist)
(mml-dnd-attach-options, mml-dnd-attach-file)
- (mml-attach-file, mml-attach-buffer, mml-attach-external): Sync
- DND support and use of message-in-body-p from the trunk.
+ (mml-attach-file, mml-attach-buffer, mml-attach-external):
+ Sync DND support and use of message-in-body-p from the trunk.
2006-04-26 Katsumi Yamaoka <[email protected]>
@@ -182,8 +196,7 @@
2006-04-25 Andreas Seltenreich <[email protected]>
- * nnweb.el (nnweb-google-wash-article): Sync up to new Google
- HTML.
+ * nnweb.el (nnweb-google-wash-article): Sync up to new Google HTML.
2006-04-25 Katsumi Yamaoka <[email protected]>
@@ -295,16 +308,14 @@
* rfc2047.el (rfc2047-decode-encoded-words): Don't message about
unknown charset.
- * message.el (message-header-synonyms): Add Original-To to the
- default.
+ * message.el (message-header-synonyms): Add Original-To to the default.
- * gnus-sum.el (gnus-get-newsgroup-headers-xover): group is an
+ * gnus-sum.el (gnus-get-newsgroup-headers-xover): Group is an
optional parameter.
2006-04-07 Reiner Steib <[email protected]>
- * pgg-gpg.el: Revert to revision 7.15 to allow the use of
- gpg-agent.
+ * pgg-gpg.el: Revert to revision 7.15 to allow the use of gpg-agent.
2006-04-06 Reiner Steib <[email protected]>
@@ -312,14 +323,13 @@
2006-04-04 Andreas Seltenreich <[email protected]>
- * nnweb.el (nnweb-google-create-mapping): Update regexp. Some
- whitespace was matched into the url, which broke browsing hits
+ * nnweb.el (nnweb-google-create-mapping): Update regexp.
+ Some whitespace was matched into the url, which broke browsing hits
> 100 when mm-url-use-external was nil.
2006-03-31 Reiner Steib <[email protected]>
- * gnus-group.el (gnus-group-update-tool-bar): Add :initialize and
- :set.
+ * gnus-group.el (gnus-group-update-tool-bar): Add :initialize and :set.
2006-03-23 Katsumi Yamaoka <[email protected]>
@@ -390,8 +400,8 @@
2006-03-15 Andreas Seltenreich <[email protected]>
- * gnus-art.el (gnus-article-only-boring-p): Bind
- inhibit-point-motion-hooks to avoid infinite loop when entering
+ * gnus-art.el (gnus-article-only-boring-p):
+ Bind inhibit-point-motion-hooks to avoid infinite loop when entering
intangible text. Reported by Ralf Wachinger
@@ -462,8 +472,7 @@
2006-03-03 Katsumi Yamaoka <[email protected]>
- * mm-decode.el (mm-get-part): Don't use
- mm-with-unibyte-current-buffer.
+ * mm-decode.el (mm-get-part): Don't use mm-with-unibyte-current-buffer.
* gnus-sum.el (gnus-summary-set-display-table): Don't nix out
characters 160 through 255 in Emacs 23.
@@ -483,8 +492,8 @@
2006-02-28 Reiner Steib <[email protected]>
- * nnweb.el (nnweb-type-definition, nnweb-gmane-search): Use new
- nov.php.
+ * nnweb.el (nnweb-type-definition, nnweb-gmane-search):
+ Use new nov.php.
2006-02-28 Andreas Seltenreich <[email protected]>
@@ -676,8 +685,8 @@
2006-02-06 Reiner Steib <[email protected]>
- * spam-report.el (spam-report-gmane-use-article-number): Improve
- doc string.
+ * spam-report.el (spam-report-gmane-use-article-number):
+ Improve doc string.
(spam-report-gmane-internal): Check if a suitable header was found
in the article.
@@ -716,12 +725,10 @@
* nnweb.el (nnweb-group-alist): Use defvar instead of defvoo,
there's only one active file for all servers.
(nnweb-request-scan): Make sure nnweb-articles is initialized on
- solid groups. Gnus might have used a FAST request to select the
- group.
+ solid groups. Gnus might have used a FAST request to select the group.
(nnweb-request-group, nnweb-google-parse-1): Don't keep nnweb-type
and nnweb-search redundantly in the active file.
- (nnweb-request-list): Don't list bogus groups. There can only be
- one.
+ (nnweb-request-list): Don't list bogus groups. There can only be one.
(nnweb-request-create-group): Don't use ARGS.
(nnweb-possibly-change-server, nnweb-request-group): Remove some
initialisations. Let nnoo do the work.
@@ -732,14 +739,13 @@
(message-setup-1): Call `message-use-alternative-email-as-from'
after `message-setup-hook' to give it precedence over posting
styles, etc.
- (message-use-alternative-email-as-from): Add docstring. Remove
- the original From header if present.
+ (message-use-alternative-email-as-from): Add docstring.
+ Remove the original From header if present.
2006-01-31 Katsumi Yamaoka <[email protected]>
- * mm-uu.el (mm-uu-emacs-sources-extract): Say the part has been
- decoded.
- (mm-uu-diff-extract): Ditto.
+ * mm-uu.el (mm-uu-emacs-sources-extract, mm-uu-diff-extract):
+ Say the part has been decoded.
2006-01-31 Kevin Ryde <[email protected]>
diff --git a/lisp/gnus/gnus-diary.el b/lisp/gnus/gnus-diary.el
index 5dfbd56af2..e4834131aa 100644
--- a/lisp/gnus/gnus-diary.el
+++ b/lisp/gnus/gnus-diary.el
@@ -213,6 +213,7 @@ There are currently two built-in format functions:
;; #### NOTE: Gnus sometimes gives me a HEADER not corresponding to any
;; message, with all fields set to nil here. I don't know what it is for, and
;; I just ignore it.
+;;;###autoload
(defun gnus-user-format-function-d (header)
;; Returns an aproximative delay string for the next occurence of this
;; message. The delay is given only in the first non zero unit.
@@ -249,6 +250,7 @@ There are currently two built-in format functions:
;; #### NOTE: Gnus sometimes gives me a HEADER not corresponding to any
;; message, with all fields set to nil here. I don't know what it is for, and
;; I just ignore it.
+;;;###autoload
(defun gnus-user-format-function-D (header)
;; Returns a formatted time string for the next occurence of this message.
(let* ((extras (mail-header-extra header))
diff --git a/lisp/gnus/gnus-group.el b/lisp/gnus/gnus-group.el
index f3ca624881..c34e339c5b 100644
--- a/lisp/gnus/gnus-group.el
+++ b/lisp/gnus/gnus-group.el
@@ -2039,7 +2039,10 @@ group."
No article is selected automatically.
If the group is opened, just switch the summary buffer.
If ALL is non-nil, already read articles become readable.
-If ALL is a number, fetch this number of articles."
+If ALL is a positive number, fetch this number of the latest
+articles in the group.
+If ALL is a negative number, fetch this number of the earliest
+articles in the group."
(interactive "P")
(when (and (eobp) (not (gnus-group-group-name)))
(forward-line -1))
diff --git a/lisp/gnus/gnus-start.el b/lisp/gnus/gnus-start.el
index 00defe5894..134078638c 100644
--- a/lisp/gnus/gnus-start.el
+++ b/lisp/gnus/gnus-start.el
@@ -313,8 +313,8 @@ If, for instance, you want to subscribe to all newsgroups in the
options -n no.all alt.all
-Gnus will the subscribe all new newsgroups in these hierarchies with
-the subscription method in this variable."
+Gnus will then subscribe all new newsgroups in these hierarchies
+with the subscription method in this variable."
:group 'gnus-group-new
:type '(radio (function-item gnus-subscribe-randomly)
(function-item gnus-subscribe-alphabetically)
diff --git a/lisp/help-fns.el b/lisp/help-fns.el
index 857157b75f..d4146b19d6 100644
--- a/lisp/help-fns.el
+++ b/lisp/help-fns.el
@@ -540,7 +540,8 @@ it is displayed along with the global value."
(error nil))))
(when location
(with-current-buffer (car location)
- (goto-char (cdr location))
+ (when (cdr location)
+ (goto-char (cdr location)))
(when (re-search-backward
"^;;; Generated autoloads from \\(.*\\)" nil t)
(setq file-name (match-string 1)))))))
diff --git a/lisp/help-mode.el b/lisp/help-mode.el
index 0c6e0f4745..7cdf78fbe1 100644
--- a/lisp/help-mode.el
+++ b/lisp/help-mode.el
@@ -157,7 +157,8 @@ The format is (FUNCTION ARGS...).")
(let ((location
(find-function-search-for-symbol fun nil file)))
(pop-to-buffer (car location))
- (goto-char (cdr location))))
+ (when (cdr location)
+ (goto-char (cdr location)))))
'help-echo (purecopy "mouse-2, RET: find function's definition"))
(define-button-type 'help-variable-def
@@ -167,8 +168,9 @@ The format is (FUNCTION ARGS...).")
(setq file (help-C-file-name var 'var)))
(let ((location (find-variable-noselect var file)))
(pop-to-buffer (car location))
- (goto-char (cdr location))))
- 'help-echo (purecopy"mouse-2, RET: find variable's definition"))
+ (when (cdr location)
+ (goto-char (cdr location)))))
+ 'help-echo (purecopy "mouse-2, RET: find variable's definition"))
(define-button-type 'help-face-def
:supertype 'help-xref
@@ -179,7 +181,8 @@ The format is (FUNCTION ARGS...).")
(let ((location
(find-function-search-for-symbol fun 'defface file)))
(pop-to-buffer (car location))
- (goto-char (cdr location))))
+ (when (cdr location)
+ (goto-char (cdr location)))))
'help-echo (purecopy "mouse-2, RET: find face's definition"))
@@ -238,9 +241,9 @@ Commands:
(defconst help-xref-symbol-regexp
(purecopy (concat "\\(\\<\\(\\(variable\\|option\\)\\|" ; Link to var
- "\\(function\\|command\\)\\|" ; Link to function
- "\\(face\\)\\|" ; Link to face
- "\\(symbol\\|program\\)\\|" ; Don't link
+ "\\(function\\|command\\)\\|" ; Link to function
+ "\\(face\\)\\|" ; Link to face
+ "\\(symbol\\|program\\|property\\)\\|" ; Don't link
"\\(source \\(?:code \\)?\\(?:of\\|for\\)\\)\\)"
"[ \t\n]+\\)?"
;; Note starting with word-syntax character:
diff --git a/lisp/help.el b/lisp/help.el
index 0caf018c2e..4d92f69ceb 100644
--- a/lisp/help.el
+++ b/lisp/help.el
@@ -346,8 +346,7 @@ With argument, display info only for the selected version."
(directory-files data-directory nil
"^NEWS\\.[0-9][-0-9]*$" nil)))
(sort (delete-dups res) (lambda (a b) (string< b a)))))
- (current (car all-versions))
- res)
+ (current (car all-versions)))
(setq version (completing-read
(format "Read NEWS for the version (default %s): " current)
all-versions nil nil nil nil current))
@@ -369,7 +368,8 @@ With argument, display info only for the selected version."
(file (cond
((>= vn emacs-major-version) "NEWS")
((< vn 18) "NEWS.1-17")
- (t (format "NEWS.%d" vn)))))
+ (t (format "NEWS.%d" vn))))
+ res)
(view-file (expand-file-name file data-directory))
(widen)
(goto-char (point-min))
diff --git a/lisp/hexl.el b/lisp/hexl.el
index e2078fceec..d753fc8301 100644
--- a/lisp/hexl.el
+++ b/lisp/hexl.el
@@ -351,8 +351,9 @@ You can use \\[hexl-find-file] to visit a file in Hexl mode.
;;;###autoload
(defun hexl-find-file (filename)
- "Edit file FILENAME in `hexl-mode'.
-Switch to a buffer visiting file FILENAME, creating one in none exists."
+ "Edit file FILENAME as a binary file in hex dump format.
+Switch to a buffer visiting file FILENAME, creating one if none exists,
+and edit the file in `hexl-mode'."
(interactive
(list
(let ((completion-ignored-extensions nil))
diff --git a/lisp/ibuffer.el b/lisp/ibuffer.el
index 6264d2e56b..b5f9c4f1bc 100644
--- a/lisp/ibuffer.el
+++ b/lisp/ibuffer.el
@@ -2457,10 +2457,13 @@ Sorting commands:
Other commands:
+ '\\[ibuffer-update]' - Regenerate the list of all buffers.
+ Prefix arg means to toggle whether buffers that match
+ `ibuffer-maybe-show-predicates' should be displayed.
+
'\\[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-update]' - As above, but add new buffers to the list.
'\\[ibuffer-quit]' - Bury the Ibuffer buffer.
'\\[describe-mode]' - This help.
'\\[ibuffer-diff-with-file]' - View the differences between this buffer
diff --git a/lisp/ido.el b/lisp/ido.el
index a4c26b52c9..be1cba62f2 100644
--- a/lisp/ido.el
+++ b/lisp/ido.el
@@ -2895,7 +2895,8 @@ With \\[universal-argument], pop all element."
"Insert file name of current buffer.
If repeated, insert text from buffer instead."
(interactive "P")
- (let* ((bfname (buffer-file-name ido-entry-buffer))
+ (let* ((bfname (or (buffer-file-name ido-entry-buffer)
+ (buffer-name ido-entry-buffer)))
(name (and bfname (file-name-nondirectory bfname))))
(when name
(setq ido-text-init
diff --git a/lisp/imenu.el b/lisp/imenu.el
index a609bcbadf..d9c75c5fdd 100644
--- a/lisp/imenu.el
+++ b/lisp/imenu.el
@@ -910,9 +910,8 @@ select from ALIST.
With no index alist ALIST, it calls `imenu--make-index-alist' to
create the index alist.
-If `imenu-use-popup-menu' is non-nil, then the
-completion buffer is always used, no matter if the mouse was used or
-not.
+If `imenu-use-popup-menu' is nil, then the completion buffer
+is always used, no matter if the mouse was used or not.
The returned value is of the form (INDEX-NAME . INDEX-POSITION)."
(let (index-alist
diff --git a/lisp/info.el b/lisp/info.el
index 2669b70931..87327d8656 100644
--- a/lisp/info.el
+++ b/lisp/info.el
@@ -844,7 +844,7 @@ a case-insensitive match is tried."
(goto-char (point-min))
(condition-case ()
(if (and (re-search-forward
- "makeinfo version \\([0-9]+.[0-9]+\\)"
+ "makeinfo[ \n]version[ \n]\\([0-9]+.[0-9]+\\)"
(line-beginning-position 3) t)
(not (version< (match-string 1) "4.7")))
(setq found t))
@@ -3077,7 +3077,8 @@ If FORK is a string, it is the name to use for the new buffer."
;; Common subroutine.
(defun Info-try-follow-nearest-node (&optional fork)
- "Follow a node reference near point. Return non-nil if successful."
+ "Follow a node reference near point. Return non-nil if successful.
+If FORK is non-nil, it i spassed to `Info-goto-node'."
(let (node)
(cond
((Info-get-token (point) "[hf]t?tp://" "[hf]t?tp://\\([^ \t\n\"`({<>})']+\\)")
diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds.el
index c50afd2de7..1cd077413c 100644
--- a/lisp/international/mule-cmds.el
+++ b/lisp/international/mule-cmds.el
@@ -1128,7 +1128,19 @@ see `language-info-alist'."
(setq lang-env (symbol-name lang-env)))
(set-language-info-internal lang-env key info)
(if (equal lang-env current-language-environment)
- (set-language-environment lang-env)))
+ (cond ((eq key 'coding-priority)
+ (set-language-environment-coding-systems lang-env))
+ ((eq key 'input-method)
+ (set-language-environment-input-method lang-env))
+ ((eq key 'nonascii-translation)
+ (set-language-environment-nonascii-translation lang-env))
+ ((eq key 'charset)
+ (set-language-environment-charset lang-env))
+ ((eq key 'overriding-fontspec)
+ (set-language-environment-fontset lang-env))
+ ((and (not default-enable-multibyte-characters)
+ (or (eq key 'unibyte-syntax) (eq key 'unibyte-display)))
+ (set-language-environment-unibyte lang-env)))))
(defun set-language-info-internal (lang-env key info)
"Internal use only.
@@ -1835,92 +1847,29 @@ specifies the character set for the major languages of Western Europe."
'exit-function)))
(run-hooks 'exit-language-environment-hook)
(if (functionp func) (funcall func))))
- (let ((default-eol-type (coding-system-eol-type
- default-buffer-file-coding-system)))
- (reset-language-environment)
-
- ;; The features might set up coding systems.
- (let ((required-features (get-language-info language-name 'features)))
- (while required-features
- (require (car required-features))
- (setq required-features (cdr required-features))))
-
- (setq current-language-environment language-name)
- (set-language-environment-coding-systems language-name default-eol-type))
- (let ((input-method (get-language-info language-name 'input-method)))
- (when input-method
- (setq default-input-method input-method)
- (if input-method-history
- (setq input-method-history
- (cons input-method
- (delete input-method input-method-history))))))
- (let ((nonascii (get-language-info language-name 'nonascii-translation))
- (dos-table
- (if (eq window-system 'pc)
- (intern
- (format "cp%d-nonascii-translation-table" dos-codepage)))))
- (cond
- ((char-table-p nonascii)
- (setq nonascii-translation-table nonascii))
- ((and (eq window-system 'pc) (boundp dos-table))
- ;; DOS terminals' default is to use a special non-ASCII translation
- ;; table as appropriate for the installed codepage.
- (setq nonascii-translation-table (symbol-value dos-table)))
- ((charsetp nonascii)
- (setq nonascii-insert-offset (- (make-char nonascii) 128)))))
-
- ;; Unibyte setups if necessary.
- (unless default-enable-multibyte-characters
- ;; Syntax and case table.
- (let ((syntax (get-language-info language-name 'unibyte-syntax)))
- (if syntax
- (let ((set-case-syntax-set-multibyte nil))
- (load syntax nil t))
- ;; No information for syntax and case. Reset to the defaults.
- (let ((syntax-table (standard-syntax-table))
- (standard-table (standard-case-table))
- (case-table (make-char-table 'case-table))
- (ch (if (eq window-system 'pc) 128 160)))
- (while (< ch 256)
- (modify-syntax-entry ch " " syntax-table)
- (setq ch (1+ ch)))
- (dotimes (i 128)
- (aset case-table i (aref standard-table i)))
- (set-char-table-extra-slot case-table 0 nil)
- (set-char-table-extra-slot case-table 1 nil)
- (set-char-table-extra-slot case-table 2 nil)
- (set-standard-case-table case-table))
- (let ((list (buffer-list)))
- (while list
- (with-current-buffer (car list)
- (set-case-table (standard-case-table)))
- (setq list (cdr list))))))
- (set-display-table-and-terminal-coding-system language-name))
+ (reset-language-environment)
+ ;; The features might set up coding systems.
(let ((required-features (get-language-info language-name 'features)))
(while required-features
(require (car required-features))
(setq required-features (cdr required-features))))
- ;; Don't invoke fontset-related functions if fontsets aren't
- ;; supported in this build of Emacs.
- (when (fboundp 'fontset-list)
- (let ((overriding-fontspec (get-language-info language-name
- 'overriding-fontspec)))
- (if overriding-fontspec
- (set-overriding-fontspec-internal overriding-fontspec))))
+ (setq current-language-environment language-name)
+
+ (set-language-environment-coding-systems language-name)
+ (set-language-environment-input-method language-name)
+ (set-language-environment-nonascii-translation language-name)
+ (set-language-environment-charset language-name)
+ (set-language-environment-fontset language-name)
+ ;; Unibyte setups if necessary.
+ (unless default-enable-multibyte-characters
+ (set-language-environment-unibyte language-name))
(let ((func (get-language-info language-name 'setup-function)))
(if (functionp func)
(funcall func)))
- (if (and utf-translate-cjk-mode
- (not (eq utf-translate-cjk-lang-env language-name))
- (catch 'tag
- (dolist (charset (get-language-info language-name 'charset))
- (if (memq charset utf-translate-cjk-charsets)
- (throw 'tag t)))
- nil))
- (utf-translate-cjk-load-tables))
+
(run-hooks 'set-language-environment-hook)
(force-mode-line-update t))
@@ -1949,14 +1898,11 @@ specifies the character set for the major languages of Western Europe."
;; proper windows-1252 coding system. --fx]
(aset standard-display-table 146 [39]))))
-(defun set-language-environment-coding-systems (language-name
- &optional eol-type)
- "Do various coding system setups for language environment LANGUAGE-NAME.
-
-The optional arg EOL-TYPE specifies the eol-type of the default value
-of `buffer-file-coding-system' set by this function."
+(defun set-language-environment-coding-systems (language-name)
+ "Do various coding system setups for language environment LANGUAGE-NAME."
(let* ((priority (get-language-info language-name 'coding-priority))
- (default-coding (car priority)))
+ (default-coding (car priority))
+ (eol-type (coding-system-eol-type default-buffer-file-coding-system)))
(if priority
(let ((categories (mapcar 'coding-system-category priority)))
(set-default-coding-systems
@@ -1971,6 +1917,80 @@ of `buffer-file-coding-system' set by this function."
;; Changing the binding of a coding category requires this call.
(update-coding-systems-internal)))))
+(defun set-language-environment-input-method (language-name)
+ "Do various input method setups for language environment LANGUAGE-NAME."
+ (let ((input-method (get-language-info language-name 'input-method)))
+ (when input-method
+ (setq default-input-method input-method)
+ (if input-method-history
+ (setq input-method-history
+ (cons input-method
+ (delete input-method input-method-history)))))))
+
+(defun set-language-environment-nonascii-translation (language-name)
+ "Do unibyte/multibyte translation setup for language environment LANGUAGE-NAME."
+ (let ((nonascii (get-language-info language-name 'nonascii-translation))
+ (dos-table
+ (if (eq window-system 'pc)
+ (intern
+ (format "cp%d-nonascii-translation-table" dos-codepage)))))
+ (cond
+ ((char-table-p nonascii)
+ (setq nonascii-translation-table nonascii))
+ ((and (eq window-system 'pc) (boundp dos-table))
+ ;; DOS terminals' default is to use a special non-ASCII translation
+ ;; table as appropriate for the installed codepage.
+ (setq nonascii-translation-table (symbol-value dos-table)))
+ ((charsetp nonascii)
+ (setq nonascii-insert-offset (- (make-char nonascii) 128))))))
+
+(defun set-language-environment-charset (language-name)
+ "Do various charset setups for language environment LANGUAGE-NAME."
+ (if (and utf-translate-cjk-mode
+ (not (eq utf-translate-cjk-lang-env language-name))
+ (catch 'tag
+ (dolist (charset (get-language-info language-name 'charset))
+ (if (memq charset utf-translate-cjk-charsets)
+ (throw 'tag t)))
+ nil))
+ (utf-translate-cjk-load-tables)))
+
+(defun set-language-environment-fontset (language-name)
+ "Do various fontset setups for language environment LANGUAGE-NAME."
+ ;; Don't invoke fontset-related functions if fontsets aren't
+ ;; supported in this build of Emacs.
+ (if (fboundp 'fontset-list)
+ (set-overriding-fontspec-internal
+ (get-language-info language-name 'overriding-fontspec))))
+
+(defun set-language-environment-unibyte (language-name)
+ "Do various unibyte-mode setups for language environment LANGUAGE-NAME."
+ ;; Syntax and case table.
+ (let ((syntax (get-language-info language-name 'unibyte-syntax)))
+ (if syntax
+ (let ((set-case-syntax-set-multibyte nil))
+ (load syntax nil t))
+ ;; No information for syntax and case. Reset to the defaults.
+ (let ((syntax-table (standard-syntax-table))
+ (standard-table (standard-case-table))
+ (case-table (make-char-table 'case-table))
+ (ch (if (eq window-system 'pc) 128 160)))
+ (while (< ch 256)
+ (modify-syntax-entry ch " " syntax-table)
+ (setq ch (1+ ch)))
+ (dotimes (i 128)
+ (aset case-table i (aref standard-table i)))
+ (set-char-table-extra-slot case-table 0 nil)
+ (set-char-table-extra-slot case-table 1 nil)
+ (set-char-table-extra-slot case-table 2 nil)
+ (set-standard-case-table case-table))
+ (let ((list (buffer-list)))
+ (while list
+ (with-current-buffer (car list)
+ (set-case-table (standard-case-table)))
+ (setq list (cdr list))))))
+ (set-display-table-and-terminal-coding-system language-name))
+
(defsubst princ-list (&rest args)
"Print all arguments with `princ', then print \"\n\"."
(while args (princ (car args)) (setq args (cdr args)))
diff --git a/lisp/international/mule.el b/lisp/international/mule.el
index 4d2d22c51c..1cce13c76a 100644
--- a/lisp/international/mule.el
+++ b/lisp/international/mule.el
@@ -1,6 +1,6 @@
;;; mule.el --- basic commands for mulitilingual environment
-;; Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+;; Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006
;; Free Software Foundation, Inc.
;; Copyright (C) 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
;; National Institute of Advanced Industrial Science and Technology (AIST)
@@ -283,16 +283,14 @@ would need to index the corresponding Emacs charset."
(make-char-internal (charset-id charset) code1 code2))
(put 'make-char 'byte-compile
- (function
- (lambda (form)
- (let ((charset (nth 1 form)))
- (if (charset-quoted-standard-p charset)
- (byte-compile-normal-call
- (cons 'make-char-internal
- (cons (charset-id (nth 1 charset)) (nthcdr 2 form))))
- (byte-compile-normal-call
- (cons 'make-char-internal
- (cons (list 'charset-id charset) (nthcdr 2 form)))))))))
+ (lambda (form)
+ (let ((charset (nth 1 form)))
+ (byte-compile-normal-call
+ (cons 'make-char-internal
+ (cons (if (charset-quoted-standard-p charset)
+ (charset-id (nth 1 charset))
+ (list 'charset-id charset))
+ (nthcdr 2 form)))))))
(defun charset-list ()
"Return list of charsets ever defined.
@@ -2308,5 +2306,5 @@ This function is intended to be added to `auto-coding-functions'."
;;;
(provide 'mule)
-;;; arch-tag: 9aebaa6e-0e8a-40a9-b857-cb5d04a39e7c
+;; arch-tag: 9aebaa6e-0e8a-40a9-b857-cb5d04a39e7c
;;; mule.el ends here
diff --git a/lisp/isearch.el b/lisp/isearch.el
index 840af2a9b8..7039dbd681 100644
--- a/lisp/isearch.el
+++ b/lisp/isearch.el
@@ -1357,7 +1357,8 @@ might return the position of the end of the line."
"Pull rest of line from buffer into search string."
(interactive)
(isearch-yank-internal
- (lambda () (line-end-position (if (eolp) 2 1)))))
+ (lambda () (let ((inhibit-field-text-motion t))
+ (line-end-position (if (eolp) 2 1))))))
(defun isearch-search-and-update ()
;; Do the search and update the display.
diff --git a/lisp/ldefs-boot.el b/lisp/ldefs-boot.el
index 6d6c03823d..bdd87c0c13 100644
--- a/lisp/ldefs-boot.el
+++ b/lisp/ldefs-boot.el
@@ -63,6 +63,12 @@ should return a grid vector array that is the new solution.
;;;***
+;;;### (autoloads nil "abbrev" "abbrev.el" (17496 38721))
+;;; Generated autoloads from abbrev.el
+(put 'abbrev-mode 'safe-local-variable 'booleanp)
+
+;;;***
+
;;;### (autoloads (list-one-abbrev-table) "abbrevlist" "abbrevlist.el"
;;;;;; (17405 10313))
;;; Generated autoloads from abbrevlist.el
@@ -75,7 +81,7 @@ Display alphabetical listing of ABBREV-TABLE in buffer OUTPUT-BUFFER.
;;;***
;;;### (autoloads (ada-mode ada-add-extensions) "ada-mode" "progmodes/ada-mode.el"
-;;;;;; (17390 27404))
+;;;;;; (17591 9287))
;;; Generated autoloads from progmodes/ada-mode.el
(autoload (quote ada-add-extensions) "ada-mode" "\
@@ -162,7 +168,7 @@ Completion is available.
;;;;;; change-log-mode add-change-log-entry-other-window add-change-log-entry
;;;;;; find-change-log prompt-for-change-log-name add-log-mailing-address
;;;;;; add-log-full-name add-log-current-defun-function) "add-log"
-;;;;;; "add-log.el" (17356 16192))
+;;;;;; "add-log.el" (17505 62421))
;;; Generated autoloads from add-log.el
(defvar add-log-current-defun-function nil "\
@@ -179,7 +185,7 @@ This defaults to the value returned by the function `user-full-name'.")
(custom-autoload (quote add-log-full-name) "add-log")
(defvar add-log-mailing-address nil "\
-*Email addresses of user, for inclusion in ChangeLog headers.
+Email addresses of user, for inclusion in ChangeLog headers.
This defaults to the value of `user-mail-address'. In addition to
being a simple string, this value can also be a list. All elements
will be recognized as referring to the same user; when creating a new
@@ -232,7 +238,7 @@ The change log file can start with a copyright notice and a copying
permission notice. The first blank line indicates the end of these
notices.
-Today's date is calculated according to `change-log-time-zone-rule' if
+Today's date is calculated according to `add-log-time-zone-rule' if
non-nil, otherwise in local time.
\(fn &optional WHOAMI FILE-NAME OTHER-WINDOW NEW-ENTRY)" t nil)
@@ -298,9 +304,9 @@ Fix any old-style date entries in the current log file to default format.
;;;***
-;;;### (autoloads (defadvice ad-add-advice ad-default-compilation-action
-;;;;;; ad-redefinition-action) "advice" "emacs-lisp/advice.el" (17390
-;;;;;; 26937))
+;;;### (autoloads (defadvice ad-activate ad-add-advice ad-disable-advice
+;;;;;; ad-enable-advice ad-default-compilation-action ad-redefinition-action)
+;;;;;; "advice" "emacs-lisp/advice.el" (17549 4607))
;;; Generated autoloads from emacs-lisp/advice.el
(defvar ad-redefinition-action (quote warn) "\
@@ -327,6 +333,16 @@ COMPILE argument of `ad-activate' was supplied as nil.")
(custom-autoload (quote ad-default-compilation-action) "advice")
+(autoload (quote ad-enable-advice) "advice" "\
+Enables the advice of FUNCTION with CLASS and NAME.
+
+\(fn FUNCTION CLASS NAME)" t nil)
+
+(autoload (quote ad-disable-advice) "advice" "\
+Disable the advice of FUNCTION with CLASS and NAME.
+
+\(fn FUNCTION CLASS NAME)" t nil)
+
(autoload (quote ad-add-advice) "advice" "\
Add a piece of ADVICE to FUNCTION's list of advices in CLASS.
If FUNCTION already has one or more pieces of advice of the specified
@@ -342,6 +358,25 @@ will clear the cache.
\(fn FUNCTION ADVICE CLASS POSITION)" nil nil)
+(autoload (quote ad-activate) "advice" "\
+Activate all the advice information of an advised FUNCTION.
+If FUNCTION has a proper original definition then an advised
+definition will be generated from FUNCTION's advice info and the
+definition of FUNCTION will be replaced with it. If a previously
+cached advised definition was available, it will be used.
+The optional COMPILE argument determines whether the resulting function
+or a compilable cached definition will be compiled. If it is negative
+no compilation will be performed, if it is positive or otherwise non-nil
+the resulting function will be compiled, if it is nil the behavior depends
+on the value of `ad-default-compilation-action' (which see).
+Activation of an advised function that has an advice info but no actual
+pieces of advice is equivalent to a call to `ad-unadvise'. Activation of
+an advised function that has actual pieces of advice but none of them are
+enabled is equivalent to a call to `ad-deactivate'. The current advised
+definition will always be cached for later usage.
+
+\(fn FUNCTION &optional COMPILE)" t nil)
+
(autoload (quote defadvice) "advice" "\
Define a piece of advice for FUNCTION (a symbol).
The syntax of `defadvice' is as follows:
@@ -489,9 +524,41 @@ A replacement function for `newline-and-indent', aligning as it goes.
;;;***
;;;### (autoloads (outlineify-sticky allout-mode) "allout" "allout.el"
-;;;;;; (17432 19375))
+;;;;;; (17591 9444))
;;; Generated autoloads from allout.el
+(put (quote allout-show-bodies) (quote safe-local-variable) (if (fboundp (quote booleanp)) (quote booleanp) (quote (lambda (x) (member x (quote (t nil)))))))
+
+(put (quote allout-header-prefix) (quote safe-local-variable) (quote stringp))
+
+(put (quote allout-primary-bullet) (quote safe-local-variable) (quote stringp))
+
+(put (quote allout-plain-bullets-string) (quote safe-local-variable) (quote stringp))
+
+(put (quote allout-distinctive-bullets-string) (quote safe-local-variable) (quote stringp))
+
+(put (quote allout-use-mode-specific-leader) (quote safe-local-variable) (quote (lambda (x) (or (memq x (quote (t nil allout-mode-leaders comment-start))) (stringp x)))))
+
+(put (quote allout-old-style-prefixes) (quote safe-local-variable) (if (fboundp (quote booleanp)) (quote booleanp) (quote (lambda (x) (member x (quote (t nil)))))))
+
+(put (quote allout-stylish-prefixes) (quote safe-local-variable) (if (fboundp (quote booleanp)) (quote booleanp) (quote (lambda (x) (member x (quote (t nil)))))))
+
+(put (quote allout-numbered-bullet) (quote safe-local-variable) (if (fboundp (quote string-or-null-p)) (quote string-or-null-p) (quote (lambda (x) (or (stringp x) (null x))))))
+
+(put (quote allout-file-xref-bullet) (quote safe-local-variable) (if (fboundp (quote string-or-null-p)) (quote string-or-null-p) (quote (lambda (x) (or (stringp x) (null x))))))
+
+(put (quote allout-presentation-padding) (quote safe-local-variable) (quote integerp))
+
+(put (quote allout-use-hanging-indents) (quote safe-local-variable) (if (fboundp (quote booleanp)) (quote booleanp) (quote (lambda (x) (member x (quote (t nil)))))))
+
+(put (quote allout-reindent-bodies) (quote safe-local-variable) (quote (lambda (x) (memq x (quote (nil t text force))))))
+
+(put (quote allout-layout) (quote safe-local-variable) (quote (lambda (x) (or (numberp x) (listp x) (memq x (quote (: * + -)))))))
+
+(put (quote allout-passphrase-verifier-string) (quote safe-local-variable) (quote stringp))
+
+(put (quote allout-passphrase-hint-string) (quote safe-local-variable) (quote stringp))
+
(autoload (quote allout-mode) "allout" "\
Toggle minor mode for controlling exposure and editing of text outlines.
\\<allout-mode-map>
@@ -787,7 +854,7 @@ This is a good function to put in `comint-output-filter-functions'.
;;;***
;;;### (autoloads (antlr-set-tabs antlr-mode antlr-show-makefile-rules)
-;;;;;; "antlr-mode" "progmodes/antlr-mode.el" (17390 27404))
+;;;;;; "antlr-mode" "progmodes/antlr-mode.el" (17490 7905))
;;; Generated autoloads from progmodes/antlr-mode.el
(autoload (quote antlr-show-makefile-rules) "antlr-mode" "\
@@ -826,7 +893,7 @@ Used in `antlr-mode'. Also a useful function in `java-mode-hook'.
;;;### (autoloads (appt-activate appt-make-list appt-delete appt-add
;;;;;; appt-display-diary appt-display-duration appt-display-mode-line
;;;;;; appt-msg-window appt-visible appt-audible appt-message-warning-time
-;;;;;; appt-issue-message) "appt" "calendar/appt.el" (17405 10313))
+;;;;;; appt-issue-message) "appt" "calendar/appt.el" (17569 17797))
;;; Generated autoloads from calendar/appt.el
(defvar appt-issue-message t "\
@@ -892,7 +959,7 @@ Update the appointments list from today's diary buffer.
The time must be at the beginning of a line for it to be
put in the appointments list (see examples in documentation of
the function `appt-check'). We assume that the variables DATE and
-NUMBER hold the arguments that `list-diary-entries' received.
+NUMBER hold the arguments that `diary-list-entries' received.
They specify the range of dates that the diary is being processed for.
Any appointments made with `appt-add' are not affected by this
@@ -914,7 +981,7 @@ ARG is positive, otherwise off.
;;;### (autoloads (apropos-documentation apropos-value apropos apropos-documentation-property
;;;;;; apropos-command apropos-variable apropos-read-pattern) "apropos"
-;;;;;; "apropos.el" (17454 30835))
+;;;;;; "apropos.el" (17478 25206))
;;; Generated autoloads from apropos.el
(autoload (quote apropos-read-pattern) "apropos" "\
@@ -1010,8 +1077,8 @@ Returns list of symbols and documentation found.
;;;***
-;;;### (autoloads (archive-mode) "arc-mode" "arc-mode.el" (17425
-;;;;;; 24466))
+;;;### (autoloads (archive-mode) "arc-mode" "arc-mode.el" (17549
+;;;;;; 4606))
;;; Generated autoloads from arc-mode.el
(autoload (quote archive-mode) "arc-mode" "\
@@ -1102,8 +1169,8 @@ Entering array mode calls the function `array-mode-hook'.
;;;***
-;;;### (autoloads (artist-mode) "artist" "textmodes/artist.el" (17390
-;;;;;; 26946))
+;;;### (autoloads (artist-mode) "artist" "textmodes/artist.el" (17524
+;;;;;; 8598))
;;; Generated autoloads from textmodes/artist.el
(autoload (quote artist-mode) "artist" "\
@@ -1308,8 +1375,8 @@ Keymap summary
;;;***
-;;;### (autoloads (asm-mode) "asm-mode" "progmodes/asm-mode.el" (17390
-;;;;;; 27404))
+;;;### (autoloads (asm-mode) "asm-mode" "progmodes/asm-mode.el" (17490
+;;;;;; 7930))
;;; Generated autoloads from progmodes/asm-mode.el
(autoload (quote asm-mode) "asm-mode" "\
@@ -1461,7 +1528,7 @@ insert a template for the file depending on the mode of the buffer.
;;;### (autoloads (batch-update-autoloads update-directory-autoloads
;;;;;; update-file-autoloads) "autoload" "emacs-lisp/autoload.el"
-;;;;;; (17411 12435))
+;;;;;; (17591 9874))
;;; Generated autoloads from emacs-lisp/autoload.el
(autoload (quote update-file-autoloads) "autoload" "\
@@ -1496,7 +1563,7 @@ Calls `update-directory-autoloads' on the command line arguments.
;;;### (autoloads (global-auto-revert-mode turn-on-auto-revert-tail-mode
;;;;;; auto-revert-tail-mode turn-on-auto-revert-mode auto-revert-mode)
-;;;;;; "autorevert" "autorevert.el" (17390 26935))
+;;;;;; "autorevert" "autorevert.el" (17505 62410))
;;; Generated autoloads from autorevert.el
(autoload (quote auto-revert-mode) "autorevert" "\
@@ -1552,8 +1619,6 @@ use either \\[customize] or the function `global-auto-revert-mode'.")
(custom-autoload (quote global-auto-revert-mode) "autorevert")
-(put (quote global-auto-revert-mode) (quote custom-set) (quote custom-set-minor-mode))
-
(autoload (quote global-auto-revert-mode) "autorevert" "\
Revert any buffer when file on disk changes.
@@ -1566,7 +1631,7 @@ Use `auto-revert-mode' to revert a particular buffer.
;;;***
;;;### (autoloads (mouse-avoidance-mode mouse-avoidance-mode) "avoid"
-;;;;;; "avoid.el" (17390 26935))
+;;;;;; "avoid.el" (17505 62395))
;;; Generated autoloads from avoid.el
(defvar mouse-avoidance-mode nil "\
@@ -1632,7 +1697,7 @@ Vectors work just like lists. Nested backquotes are permitted.
;;;***
;;;### (autoloads (display-battery-mode battery) "battery" "battery.el"
-;;;;;; (17427 42815))
+;;;;;; (17505 62422))
;;; Generated autoloads from battery.el
(put 'battery-mode-line-string 'risky-local-variable t)
@@ -1651,8 +1716,6 @@ use either \\[customize] or the function `display-battery-mode'.")
(custom-autoload (quote display-battery-mode) "battery")
-(put (quote display-battery-mode) (quote custom-set) (quote custom-set-minor-mode))
-
(autoload (quote display-battery-mode) "battery" "\
Display battery status information in the mode line.
The text being displayed in the mode line is controlled by the variables
@@ -1697,8 +1760,8 @@ non-interactive use see also `benchmark-run' and
;;;***
-;;;### (autoloads (bibtex-mode) "bibtex" "textmodes/bibtex.el" (17441
-;;;;;; 26667))
+;;;### (autoloads (bibtex-mode) "bibtex" "textmodes/bibtex.el" (17549
+;;;;;; 4608))
;;; Generated autoloads from textmodes/bibtex.el
(autoload (quote bibtex-mode) "bibtex" "\
@@ -2096,7 +2159,7 @@ deletion, or > if it is flagged for displaying.
;;;;;; browse-url browse-url-of-region browse-url-of-dired-file
;;;;;; browse-url-of-buffer browse-url-of-file browse-url-url-at-point
;;;;;; browse-url-galeon-program browse-url-firefox-program browse-url-browser-function)
-;;;;;; "browse-url" "net/browse-url.el" (17390 26944))
+;;;;;; "browse-url" "net/browse-url.el" (17524 8597))
;;; Generated autoloads from net/browse-url.el
(defvar browse-url-browser-function (cond ((memq system-type (quote (windows-nt ms-dos cygwin))) (quote browse-url-default-windows-browser)) ((memq system-type (quote (darwin))) (quote browse-url-default-macosx-browser)) (t (quote browse-url-default-browser))) "\
@@ -2573,9 +2636,16 @@ Also see `make-text-button'.
;;;### (autoloads (batch-byte-recompile-directory batch-byte-compile
;;;;;; batch-byte-compile-if-not-done display-call-tree byte-compile
;;;;;; compile-defun byte-compile-file byte-recompile-directory
-;;;;;; byte-force-recompile) "bytecomp" "emacs-lisp/bytecomp.el"
-;;;;;; (17356 16192))
+;;;;;; byte-force-recompile byte-compile-warnings-safe-p) "bytecomp"
+;;;;;; "emacs-lisp/bytecomp.el" (17591 9570))
;;; Generated autoloads from emacs-lisp/bytecomp.el
+(put 'byte-compile-dynamic 'safe-local-variable 'booleanp)
+(put 'byte-compile-dynamic-docstrings 'safe-local-variable 'booleanp)
+
+(autoload (quote byte-compile-warnings-safe-p) "bytecomp" "\
+Not documented
+
+\(fn X)" nil nil)
(autoload (quote byte-force-recompile) "bytecomp" "\
Recompile every `.el' file in DIRECTORY that already has a `.elc' file.
@@ -2600,6 +2670,7 @@ If the third argument FORCE is non-nil,
recompile every `.el' file that already has a `.elc' file.
\(fn DIRECTORY &optional ARG FORCE)" t nil)
+(put 'no-byte-compile 'safe-local-variable 'booleanp)
(autoload (quote byte-compile-file) "bytecomp" "\
Compile a file of Lisp code named FILENAME into a file of byte code.
@@ -2802,7 +2873,7 @@ See the documentation for `calculator-mode' for more information.
;;;;;; mark-holidays-in-calendar view-calendar-holidays-initially
;;;;;; calendar-remove-frame-by-deleting mark-diary-entries-in-calendar
;;;;;; view-diary-entries-initially calendar-offset) "calendar"
-;;;;;; "calendar/calendar.el" (17427 41284))
+;;;;;; "calendar/calendar.el" (17591 9293))
;;; Generated autoloads from calendar/calendar.el
(defvar calendar-offset 0 "\
@@ -3390,6 +3461,13 @@ it fails.
;;;***
+;;;### (autoloads nil "cc-compat" "progmodes/cc-compat.el" (17515
+;;;;;; 24859))
+;;; Generated autoloads from progmodes/cc-compat.el
+(put 'c-indent-level 'safe-local-variable 'integerp)
+
+;;;***
+
;;;### (autoloads (c-guess-basic-syntax) "cc-engine" "progmodes/cc-engine.el"
;;;;;; (17411 11765))
;;; Generated autoloads from progmodes/cc-engine.el
@@ -3403,7 +3481,7 @@ Return the syntactic context of the current line.
;;;### (autoloads (pike-mode idl-mode java-mode objc-mode c++-mode
;;;;;; c-mode c-initialize-cc-mode) "cc-mode" "progmodes/cc-mode.el"
-;;;;;; (17411 11765))
+;;;;;; (17591 9622))
;;; Generated autoloads from progmodes/cc-mode.el
(autoload (quote c-initialize-cc-mode) "cc-mode" "\
@@ -3561,7 +3639,7 @@ Key bindings:
;;;***
;;;### (autoloads (c-set-offset c-add-style c-set-style) "cc-styles"
-;;;;;; "progmodes/cc-styles.el" (17411 11765))
+;;;;;; "progmodes/cc-styles.el" (17524 8597))
;;; Generated autoloads from progmodes/cc-styles.el
(autoload (quote c-set-style) "cc-styles" "\
@@ -3612,13 +3690,21 @@ and exists only for compatibility reasons.
;;;***
-;;;### (autoloads nil "cc-subword" "progmodes/cc-subword.el" (17390
-;;;;;; 27407))
+;;;### (autoloads nil "cc-subword" "progmodes/cc-subword.el" (17515
+;;;;;; 24933))
;;; Generated autoloads from progmodes/cc-subword.el
(autoload 'c-subword-mode "cc-subword" "Mode enabling subword movement and editing keys." t)
;;;***
+;;;### (autoloads nil "cc-vars" "progmodes/cc-vars.el" (17524 8597))
+;;; Generated autoloads from progmodes/cc-vars.el
+(put 'c-basic-offset 'safe-local-variable 'integerp)
+(put 'c-backslash-column 'safe-local-variable 'integerp)
+(put 'c-file-style 'safe-local-variable 'string-or-null-p)
+
+;;;***
+
;;;### (autoloads (ccl-execute-with-args check-ccl-program define-ccl-program
;;;;;; declare-ccl-program ccl-dump ccl-compile) "ccl" "international/ccl.el"
;;;;;; (17279 27079))
@@ -4222,7 +4308,7 @@ is run).
;;;***
;;;### (autoloads (cp-make-coding-system) "code-pages" "international/code-pages.el"
-;;;;;; (17357 6508))
+;;;;;; (17518 54396))
;;; Generated autoloads from international/code-pages.el
(autoload (quote cp-make-coding-system) "code-pages" "\
@@ -4341,7 +4427,7 @@ read/written by MS-DOS software, or for display on the MS-DOS terminal.
;;;### (autoloads (comint-redirect-results-list-from-process comint-redirect-results-list
;;;;;; comint-redirect-send-command-to-process comint-redirect-send-command
;;;;;; comint-run make-comint make-comint-in-buffer) "comint" "comint.el"
-;;;;;; (17454 30950))
+;;;;;; (17549 4606))
;;; Generated autoloads from comint.el
(defvar comint-output-filter-functions (quote (comint-postoutput-scroll-to-bottom comint-watch-for-password-prompt)) "\
@@ -4469,7 +4555,7 @@ on third call it again advances points to the next difference and so on.
;;;;;; compilation-shell-minor-mode compilation-mode compilation-start
;;;;;; compile compilation-disable-input compile-command compilation-search-path
;;;;;; compilation-ask-about-save compilation-window-height compilation-mode-hook)
-;;;;;; "compile" "progmodes/compile.el" (17390 27407))
+;;;;;; "compile" "progmodes/compile.el" (17591 9719))
;;; Generated autoloads from progmodes/compile.el
(defvar compilation-mode-hook nil "\
@@ -4534,6 +4620,7 @@ You might also use mode hooks to specify it in certain modes, like this:
(file-name-sans-extension buffer-file-name))))))")
(custom-autoload (quote compile-command) "compile")
+(put 'compile-command 'safe-local-variable 'stringp)
(defvar compilation-disable-input nil "\
*If non-nil, send end-of-file as compilation process input.
@@ -4630,7 +4717,7 @@ This is the value of `next-error-function' in Compilation buffers.
;;;***
;;;### (autoloads (partial-completion-mode) "complete" "complete.el"
-;;;;;; (17425 24465))
+;;;;;; (17591 9281))
;;; Generated autoloads from complete.el
(defvar partial-completion-mode nil "\
@@ -4641,8 +4728,6 @@ use either \\[customize] or the function `partial-completion-mode'.")
(custom-autoload (quote partial-completion-mode) "complete")
-(put (quote partial-completion-mode) (quote custom-set) (quote custom-set-minor-mode))
-
(autoload (quote partial-completion-mode) "complete" "\
Toggle Partial Completion mode.
With prefix ARG, turn Partial Completion mode on if ARG is positive.
@@ -4655,7 +4740,7 @@ as much as possible and `*' characters are treated likewise in file names.
For example, M-x p-c-m expands to M-x partial-completion-mode since no other
command begins with that sequence of characters, and
\\[find-file] f_b.c TAB might complete to foo_bar.c if that file existed and no
-other file in that directory begin with that sequence of characters.
+other file in that directory begins with that sequence of characters.
Unless `PC-disable-includes' is non-nil, the `<...>' sequence is interpreted
specially in \\[find-file]. For example,
@@ -5066,7 +5151,7 @@ For details see `conf-mode'. Example:
;;;***
;;;### (autoloads (shuffle-vector cookie-snarf cookie-insert cookie)
-;;;;;; "cookie1" "play/cookie1.el" (17383 38807))
+;;;;;; "cookie1" "play/cookie1.el" (17569 17996))
;;; Generated autoloads from play/cookie1.el
(autoload (quote cookie) "cookie1" "\
@@ -5126,7 +5211,7 @@ Insert a copyright by $ORGANIZATION notice at cursor.
;;;***
;;;### (autoloads (cperl-mode) "cperl-mode" "progmodes/cperl-mode.el"
-;;;;;; (17390 27408))
+;;;;;; (17549 5053))
;;; Generated autoloads from progmodes/cperl-mode.el
(autoload (quote cperl-mode) "cperl-mode" "\
@@ -5342,7 +5427,7 @@ With ARG, turn CRiSP mode on if ARG is positive, off otherwise.
;;;***
;;;### (autoloads (completing-read-multiple) "crm" "emacs-lisp/crm.el"
-;;;;;; (17390 26938))
+;;;;;; (17515 24857))
;;; Generated autoloads from emacs-lisp/crm.el
(autoload (quote completing-read-multiple) "crm" "\
@@ -5378,7 +5463,7 @@ INHERIT-INPUT-METHOD.
;;;***
;;;### (autoloads (cua-selection-mode cua-mode) "cua-base" "emulation/cua-base.el"
-;;;;;; (17454 30835))
+;;;;;; (17524 8597))
;;; Generated autoloads from emulation/cua-base.el
(defvar cua-mode nil "\
@@ -5389,8 +5474,6 @@ use either \\[customize] or the function `cua-mode'.")
(custom-autoload (quote cua-mode) "cua-base")
-(put (quote cua-mode) (quote custom-set) (quote custom-set-minor-mode))
-
(autoload (quote cua-mode) "cua-base" "\
Toggle CUA key-binding mode.
When enabled, using shifted movement keys will activate the
@@ -5427,8 +5510,8 @@ Enable CUA selection mode without the C-z/C-x/C-c/C-v bindings.
\(fn ARG)" t nil)
(eval-after-load 'CUA-mode
'(error (concat "\n\n"
- "CUA-mode is now part of the standard GNU Emacs distribution,\n"
- "so you may now enable and customize CUA via the Options menu.\n\n"
+ "CUA-mode is now part of the standard GNU Emacs distribution, so you may\n"
+ "now enable CUA via the Options menu or by customizing option `cua-mode'.\n\n"
"You have loaded an older version of CUA-mode which does\n"
"not work correctly with this version of GNU Emacs.\n\n"
(if user-init-file (concat
@@ -5445,7 +5528,7 @@ Enable CUA selection mode without the C-z/C-x/C-c/C-v bindings.
;;;;;; customize-face customize-changed-options customize-option-other-window
;;;;;; customize-option customize-group-other-window customize-group
;;;;;; customize-mode customize customize-save-variable customize-set-variable
-;;;;;; customize-set-value) "cus-edit" "cus-edit.el" (17441 26677))
+;;;;;; customize-set-value) "cus-edit" "cus-edit.el" (17591 9719))
;;; Generated autoloads from cus-edit.el
(add-hook 'same-window-regexps "\\`\\*Customiz.*\\*\\'")
@@ -5542,6 +5625,31 @@ Show the buffer in another window, but don't select it.
\(fn SYMBOL)" t nil)
+(defvar customize-package-emacs-version-alist nil "\
+Alist mapping versions of Emacs to versions of a package.
+These package versions are listed in the :package-version
+keyword used in `defcustom', `defgroup', and `defface'. Its
+elements look like this:
+
+ (PACKAGE (PVERSION . EVERSION)...)
+
+For each PACKAGE, which is a symbol, there are one or more
+elements that contain a package version PVERSION with an
+associated Emacs version EVERSION. These versions are strings.
+For example, the MH-E package updates this alist with the
+following:
+
+ (add-to-list 'customize-package-emacs-version-alist
+ '(MH-E (\"6.0\" . \"22.1\") (\"6.1\" . \"22.1\")
+ (\"7.0\" . \"22.1\") (\"7.1\" . \"22.1\")
+ (\"7.2\" . \"22.1\") (\"7.3\" . \"22.1\")
+ (\"7.4\" . \"22.1\") (\"8.0\" . \"22.1\")))
+
+The value of PACKAGE needs to be unique and it needs to match the
+PACKAGE value appearing in the :package-version keyword. Since
+the user might see the value in a error message, a good choice is
+the official name of the package, such as MH-E or Gnus.")
+
(defalias (quote customize-changed) (quote customize-changed-options))
(autoload (quote customize-changed-options) "cus-edit" "\
@@ -5784,7 +5892,7 @@ Create a custom theme.
;;;***
;;;### (autoloads (cvs-status-mode) "cvs-status" "cvs-status.el"
-;;;;;; (17390 26936))
+;;;;;; (17496 38723))
;;; Generated autoloads from cvs-status.el
(autoload (quote cvs-status-mode) "cvs-status" "\
@@ -6309,8 +6417,9 @@ as well as widgets, buttons, overlays, and text properties.
;;;***
;;;### (autoloads (desktop-revert desktop-save-in-desktop-dir desktop-change-dir
-;;;;;; desktop-load-default desktop-read desktop-locals-to-save
-;;;;;; desktop-save-mode) "desktop" "desktop.el" (17390 27404))
+;;;;;; desktop-load-default desktop-read desktop-remove desktop-save
+;;;;;; desktop-clear desktop-locals-to-save desktop-save-mode) "desktop"
+;;;;;; "desktop.el" (17569 18001))
;;; Generated autoloads from desktop.el
(defvar desktop-save-mode nil "\
@@ -6319,17 +6428,16 @@ See the command `desktop-save-mode' for a description of this minor-mode.")
(custom-autoload (quote desktop-save-mode) "desktop")
-(put (quote desktop-save-mode) (quote custom-set) (quote custom-set-minor-mode))
-
(autoload (quote desktop-save-mode) "desktop" "\
Toggle desktop saving mode.
With numeric ARG, turn desktop saving on if ARG is positive, off
-otherwise. See variable `desktop-save' for a description of when the
-desktop is saved.
+otherwise. If desktop saving is turned on, the state of Emacs is
+saved from one session to another. See variable `desktop-save'
+and function `desktop-read' for details.
\(fn &optional ARG)" t nil)
-(defvar desktop-locals-to-save (quote (desktop-locals-to-save truncate-lines case-fold-search case-replace fill-column overwrite-mode change-log-default-name line-number-mode column-number-mode size-indication-mode buffer-file-coding-system indent-tabs-mode indicate-buffer-boundaries indicate-empty-lines show-trailing-whitespace)) "\
+(defvar desktop-locals-to-save (quote (desktop-locals-to-save truncate-lines case-fold-search case-replace fill-column overwrite-mode change-log-default-name line-number-mode column-number-mode size-indication-mode buffer-file-coding-system indent-tabs-mode tab-width indicate-buffer-boundaries indicate-empty-lines show-trailing-whitespace)) "\
List of local variables to save for each buffer.
The variables are saved only when they really are local. Conventional minor
modes are restored automatically; they should not be listed here.")
@@ -6434,6 +6542,27 @@ See also `desktop-minor-mode-table'.")
(put (quote desktop-minor-mode-handlers) (quote risky-local-variable) t)
+(autoload (quote desktop-clear) "desktop" "\
+Empty the Desktop.
+This kills all buffers except for internal ones and those with names matched by
+a regular expression in the list `desktop-clear-preserve-buffers'.
+Furthermore, it clears the variables listed in `desktop-globals-to-clear'.
+
+\(fn)" t nil)
+
+(autoload (quote desktop-save) "desktop" "\
+Save the desktop in a desktop file.
+Parameter DIRNAME specifies where to save the desktop file.
+See also `desktop-base-file-name'.
+
+\(fn DIRNAME)" t nil)
+
+(autoload (quote desktop-remove) "desktop" "\
+Delete desktop file in `desktop-dirname'.
+This function also sets `desktop-dirname' to nil.
+
+\(fn)" t nil)
+
(autoload (quote desktop-read) "desktop" "\
Read and process the desktop file in directory DIRNAME.
Look for a desktop file in DIRNAME, or if DIRNAME is omitted, look in
@@ -6472,28 +6601,10 @@ Revert to the last loaded desktop.
;;;***
;;;### (autoloads (gnus-article-outlook-deuglify-article gnus-outlook-deuglify-article
-;;;;;; gnus-article-outlook-repair-attribution gnus-article-outlook-unwrap-lines
-;;;;;; gnus-outlook-display-hook gnus-outlook-deuglify-unwrap-max
-;;;;;; gnus-outlook-deuglify-unwrap-min) "deuglify" "gnus/deuglify.el"
-;;;;;; (17383 38804))
+;;;;;; gnus-article-outlook-repair-attribution gnus-article-outlook-unwrap-lines)
+;;;;;; "deuglify" "gnus/deuglify.el" (17490 7932))
;;; Generated autoloads from gnus/deuglify.el
-(defvar gnus-outlook-deuglify-unwrap-min 45 "\
-Minimum length of the cited line above the (possibly) wrapped line.")
-
-(custom-autoload (quote gnus-outlook-deuglify-unwrap-min) "deuglify")
-
-(defvar gnus-outlook-deuglify-unwrap-max 95 "\
-Maximum length of the cited line after unwrapping.")
-
-(custom-autoload (quote gnus-outlook-deuglify-unwrap-max) "deuglify")
-
-(defvar gnus-outlook-display-hook nil "\
-A hook called after an deuglified article has been prepared.
-It is run after `gnus-article-prepare-hook'.")
-
-(custom-autoload (quote gnus-outlook-display-hook) "deuglify")
-
(autoload (quote gnus-article-outlook-unwrap-lines) "deuglify" "\
Unwrap lines that appear to be wrapped citation lines.
You can control what lines will be unwrapped by frobbing
@@ -6542,7 +6653,7 @@ Not documented
;;;***
;;;### (autoloads (diary-mode diary-mail-entries diary) "diary-lib"
-;;;;;; "calendar/diary-lib.el" (17390 27324))
+;;;;;; "calendar/diary-lib.el" (17518 54393))
;;; Generated autoloads from calendar/diary-lib.el
(autoload (quote diary) "diary-lib" "\
@@ -6588,7 +6699,7 @@ Major mode for editing the diary file.
;;;***
;;;### (autoloads (diff-backup diff diff-command diff-switches) "diff"
-;;;;;; "diff.el" (17390 26936))
+;;;;;; "diff.el" (17549 4607))
;;; Generated autoloads from diff.el
(defvar diff-switches "-c" "\
@@ -6622,7 +6733,7 @@ With prefix arg, prompt for diff switches.
;;;***
;;;### (autoloads (diff-minor-mode diff-mode) "diff-mode" "diff-mode.el"
-;;;;;; (17441 26677))
+;;;;;; (17591 9290))
;;; Generated autoloads from diff-mode.el
(autoload (quote diff-mode) "diff-mode" "\
@@ -6636,6 +6747,7 @@ headers for you on-the-fly.
You can also switch between context diff and unified diff with \\[diff-context->unified],
or vice versa with \\[diff-unified->context] and you can also reverse the direction of
a diff with \\[diff-reverse-direction].
+\\{diff-mode-map}
\(fn)" t nil)
@@ -6651,7 +6763,7 @@ Minor mode for viewing/editing context diffs.
;;;;;; dired dired-copy-preserve-time dired-dwim-target dired-keep-marker-symlink
;;;;;; dired-keep-marker-hardlink dired-keep-marker-copy dired-keep-marker-rename
;;;;;; dired-trivial-filenames dired-ls-F-marks-symlinks dired-listing-switches)
-;;;;;; "dired" "dired.el" (17396 42158))
+;;;;;; "dired" "dired.el" (17549 4607))
;;; Generated autoloads from dired.el
(defvar dired-listing-switches "-al" "\
@@ -6856,7 +6968,7 @@ Keybindings:
;;;;;; dired-run-shell-command dired-do-shell-command dired-clean-directory
;;;;;; dired-do-print dired-do-touch dired-do-chown dired-do-chgrp
;;;;;; dired-do-chmod dired-compare-directories dired-backup-diff
-;;;;;; dired-diff) "dired-aux" "dired-aux.el" (17390 26936))
+;;;;;; dired-diff) "dired-aux" "dired-aux.el" (17524 8597))
;;; Generated autoloads from dired-aux.el
(autoload (quote dired-diff) "dired-aux" "\
@@ -6978,7 +7090,8 @@ the Dired buffer, so output files usually are created there instead of
in a subdir.
In a noninteractive call (from Lisp code), you must specify
-the list of file names explicitly with the FILE-LIST argument.
+the list of file names explicitly with the FILE-LIST argument, which
+can be produced by `dired-get-marked-files', for example.
\(fn COMMAND &optional ARG FILE-LIST)" t nil)
@@ -7264,7 +7377,7 @@ true then the type of the file linked to by FILE is printed instead.
;;;***
-;;;### (autoloads (dired-jump) "dired-x" "dired-x.el" (17390 27370))
+;;;### (autoloads (dired-jump) "dired-x" "dired-x.el" (17524 8597))
;;; Generated autoloads from dired-x.el
(autoload (quote dired-jump) "dired-x" "\
@@ -7278,7 +7391,7 @@ buffer and try again.
;;;***
-;;;### (autoloads (dirtrack) "dirtrack" "dirtrack.el" (17390 26937))
+;;;### (autoloads (dirtrack) "dirtrack" "dirtrack.el" (17591 9569))
;;; Generated autoloads from dirtrack.el
(autoload (quote dirtrack) "dirtrack" "\
@@ -7433,7 +7546,7 @@ Default is 2.
;;;***
-;;;### (autoloads (dnd-protocol-alist) "dnd" "dnd.el" (17390 26937))
+;;;### (autoloads (dnd-protocol-alist) "dnd" "dnd.el" (17524 8597))
;;; Generated autoloads from dnd.el
(defvar dnd-protocol-alist (quote (("^file:///" . dnd-open-local-file) ("^file://" . dnd-open-file) ("^file:" . dnd-open-local-file))) "\
@@ -7509,7 +7622,7 @@ when pressed twice. See variable `double-map' for details.
;;;***
-;;;### (autoloads (dunnet) "dunnet" "play/dunnet.el" (17383 38807))
+;;;### (autoloads (dunnet) "dunnet" "play/dunnet.el" (17591 9445))
;;; Generated autoloads from play/dunnet.el
(autoload (quote dunnet) "dunnet" "\
@@ -7532,7 +7645,7 @@ Play sounds in message buffers.
;;;### (autoloads (easy-mmode-defsyntax easy-mmode-defmap easy-mmode-define-keymap
;;;;;; define-global-minor-mode define-minor-mode) "easy-mmode"
-;;;;;; "emacs-lisp/easy-mmode.el" (17390 26938))
+;;;;;; "emacs-lisp/easy-mmode.el" (17591 9619))
;;; Generated autoloads from emacs-lisp/easy-mmode.el
(defalias (quote easy-mmode-define-minor-mode) (quote define-minor-mode))
@@ -7552,9 +7665,9 @@ Optional KEYMAP is the default (defvar) keymap bound to the mode keymap.
The above three arguments can be skipped if keyword arguments are
used (see below).
-BODY contains code that will be executed each time the mode is (dis)activated.
- It will be executed after any toggling but before running the hook variable
- `mode-HOOK'.
+BODY contains code to execute each time the mode is activated or deactivated.
+ It is executed after toggling the mode,
+ and before running the hook variable `mode-HOOK'.
Before the actual body code, you can write keyword arguments (alternating
keywords and values). These following keyword arguments are supported (other
keywords will be passed to `defcustom' if the minor mode is global):
@@ -8029,8 +8142,8 @@ See `ebnf-style-database' documentation.
;;;;;; ebrowse-tags-find-declaration-other-window ebrowse-tags-find-definition
;;;;;; ebrowse-tags-view-definition ebrowse-tags-find-declaration
;;;;;; ebrowse-tags-view-declaration ebrowse-member-mode ebrowse-electric-choose-tree
-;;;;;; ebrowse-tree-mode) "ebrowse" "progmodes/ebrowse.el" (17396
-;;;;;; 42159))
+;;;;;; ebrowse-tree-mode) "ebrowse" "progmodes/ebrowse.el" (17591
+;;;;;; 9719))
;;; Generated autoloads from progmodes/ebrowse.el
(autoload (quote ebrowse-tree-mode) "ebrowse" "\
@@ -8218,8 +8331,8 @@ With prefix arg NOCONFIRM, execute current line as-is without editing.
;;;***
;;;### (autoloads (edebug-all-forms edebug-all-defs edebug-eval-top-level-form
-;;;;;; def-edebug-spec edebug-all-forms edebug-all-defs) "edebug"
-;;;;;; "emacs-lisp/edebug.el" (17418 6751))
+;;;;;; edebug-basic-spec edebug-all-forms edebug-all-defs) "edebug"
+;;;;;; "emacs-lisp/edebug.el" (17591 11774))
;;; Generated autoloads from emacs-lisp/edebug.el
(defvar edebug-all-defs nil "\
@@ -8242,12 +8355,12 @@ Use the command `edebug-all-forms' to toggle the value of this option.")
(custom-autoload (quote edebug-all-forms) "edebug")
-(autoload (quote def-edebug-spec) "edebug" "\
-Set the `edebug-form-spec' property of SYMBOL according to SPEC.
-Both SYMBOL and SPEC are unevaluated. The SPEC can be 0, t, a symbol
-\(naming a function), or a list.
+(autoload (quote edebug-basic-spec) "edebug" "\
+Return t if SPEC uses only extant spec symbols.
+An extant spec symbol is a symbol that is not a function and has a
+`edebug-form-spec' property.
-\(fn SYMBOL SPEC)" nil (quote macro))
+\(fn SPEC)" nil nil)
(defalias (quote edebug-defun) (quote edebug-eval-top-level-form))
@@ -8292,7 +8405,7 @@ Toggle edebugging of all forms.
;;;;;; ediff-merge-directory-revisions ediff-merge-directories-with-ancestor
;;;;;; ediff-merge-directories ediff-directories3 ediff-directory-revisions
;;;;;; ediff-directories ediff-buffers3 ediff-buffers ediff-backup
-;;;;;; ediff-files3 ediff-files) "ediff" "ediff.el" (17401 60343))
+;;;;;; ediff-files3 ediff-files) "ediff" "ediff.el" (17569 17781))
;;; Generated autoloads from ediff.el
(autoload (quote ediff-files) "ediff" "\
@@ -8553,7 +8666,7 @@ Not documented
;;;***
;;;### (autoloads (ediff-show-registry) "ediff-mult" "ediff-mult.el"
-;;;;;; (17401 60342))
+;;;;;; (17569 17781))
;;; Generated autoloads from ediff-mult.el
(autoload (quote ediff-show-registry) "ediff-mult" "\
@@ -8933,8 +9046,8 @@ Not documented
;;;***
-;;;### (autoloads (erc-select erc-select-read-args) "erc" "erc/erc.el"
-;;;;;; (17454 30949))
+;;;### (autoloads (erc-handle-irc-url erc-select erc-select-read-args)
+;;;;;; "erc" "erc/erc.el" (17591 9873))
;;; Generated autoloads from erc/erc.el
(autoload (quote erc-select-read-args) "erc" "\
@@ -8952,17 +9065,26 @@ Non-interactively, it takes keyword arguments
(full-name (erc-compute-full-name)))
That is, if called with
+
(erc-select :server \"irc.freenode.net\" :full-name \"Harry S Truman\")
+
server and full-name will be set to those values, whereas
-erc-compute-port, erc-compute-nick and erc-compute-full-name will
-be invoked for those parameters' values
+`erc-compute-port', `erc-compute-nick' and `erc-compute-full-name' will
+be invoked for the values of the other parameters.
\(fn &key (SERVER (erc-compute-server)) (PORT (erc-compute-port)) (NICK (erc-compute-nick)) PASSWORD (FULL-NAME (erc-compute-full-name)))" t nil)
+(autoload (quote erc-handle-irc-url) "erc" "\
+Use ERC to IRC on HOST:PORT in CHANNEL as USER with PASSWORD.
+If ERC is already connected to HOST:PORT, simply /join CHANNEL.
+Otherwise, connect to HOST:PORT as USER and /join CHANNEL.
+
+\(fn HOST PORT CHANNEL USER PASSWORD)" nil nil)
+
;;;***
-;;;### (autoloads nil "erc-autoaway" "erc/erc-autoaway.el" (17396
-;;;;;; 42158))
+;;;### (autoloads nil "erc-autoaway" "erc/erc-autoaway.el" (17591
+;;;;;; 9873))
;;; Generated autoloads from erc/erc-autoaway.el
(autoload 'erc-autoaway-mode "erc-autoaway")
@@ -9013,7 +9135,7 @@ that subcommand.
;;;;;; erc-ezb-add-session erc-ezb-end-of-session-list erc-ezb-init-session-list
;;;;;; erc-ezb-identify erc-ezb-notice-autodetect erc-ezb-lookup-action
;;;;;; erc-ezb-get-login erc-cmd-ezb) "erc-ezbounce" "erc/erc-ezbounce.el"
-;;;;;; (17396 42158))
+;;;;;; (17469 12056))
;;; Generated autoloads from erc/erc-ezbounce.el
(autoload (quote erc-cmd-ezb) "erc-ezbounce" "\
@@ -9096,8 +9218,9 @@ You can put this on `erc-insert-modify-hook' and/or `erc-send-modify-hook'.
;;;***
;;;### (autoloads (erc-identd-stop erc-identd-start) "erc-identd"
-;;;;;; "erc/erc-identd.el" (17454 30949))
+;;;;;; "erc/erc-identd.el" (17591 9873))
;;; Generated autoloads from erc/erc-identd.el
+ (autoload 'erc-identd-mode "erc-identd")
(autoload (quote erc-identd-start) "erc-identd" "\
Start an identd server listening to port 8113.
@@ -9117,7 +9240,7 @@ Not documented
;;;***
;;;### (autoloads (erc-create-imenu-index) "erc-imenu" "erc/erc-imenu.el"
-;;;;;; (17396 42158))
+;;;;;; (17591 9873))
;;; Generated autoloads from erc/erc-imenu.el
(autoload (quote erc-create-imenu-index) "erc-imenu" "\
@@ -9127,7 +9250,7 @@ Not documented
;;;***
-;;;### (autoloads nil "erc-join" "erc/erc-join.el" (17396 42158))
+;;;### (autoloads nil "erc-join" "erc/erc-join.el" (17469 12056))
;;; Generated autoloads from erc/erc-join.el
(autoload 'erc-autojoin-mode "erc-join" nil t)
@@ -9155,7 +9278,7 @@ to RFC and send the LIST header (#321) at start of list transmission.
;;;***
;;;### (autoloads (erc-save-buffer-in-logs erc-logging-enabled) "erc-log"
-;;;;;; "erc/erc-log.el" (17396 42158))
+;;;;;; "erc/erc-log.el" (17591 9873))
;;; Generated autoloads from erc/erc-log.el
(autoload 'erc-log-mode "erc-log" nil t)
@@ -9187,7 +9310,7 @@ You can save every individual message by putting this function on
;;;### (autoloads (erc-delete-dangerous-host erc-add-dangerous-host
;;;;;; erc-delete-keyword erc-add-keyword erc-delete-fool erc-add-fool
;;;;;; erc-delete-pal erc-add-pal) "erc-match" "erc/erc-match.el"
-;;;;;; (17396 42158))
+;;;;;; (17591 9873))
;;; Generated autoloads from erc/erc-match.el
(autoload 'erc-match-mode "erc-match")
@@ -9234,7 +9357,7 @@ Delete dangerous-host interactively to `erc-dangerous-hosts'.
;;;***
;;;### (autoloads (erc-cmd-WHOLEFT) "erc-netsplit" "erc/erc-netsplit.el"
-;;;;;; (17396 42158))
+;;;;;; (17469 12056))
;;; Generated autoloads from erc/erc-netsplit.el
(autoload 'erc-netsplit-mode "erc-netsplit")
@@ -9288,8 +9411,8 @@ Not documented
;;;***
-;;;### (autoloads nil "erc-pcomplete" "erc/erc-pcomplete.el" (17396
-;;;;;; 42158))
+;;;### (autoloads nil "erc-pcomplete" "erc/erc-pcomplete.el" (17591
+;;;;;; 9873))
;;; Generated autoloads from erc/erc-pcomplete.el
(autoload 'erc-completion-mode "erc-pcomplete" nil t)
@@ -9356,7 +9479,7 @@ This will add a speedbar major display mode.
;;;***
-;;;### (autoloads nil "erc-track" "erc/erc-track.el" (17396 42158))
+;;;### (autoloads nil "erc-track" "erc/erc-track.el" (17591 9873))
;;; Generated autoloads from erc/erc-track.el
(autoload 'erc-track-mode "erc-track" nil t)
(autoload 'erc-track-when-inactive-mode "erc-track" nil t)
@@ -9767,7 +9890,7 @@ for \\[find-tag] (which see).
;;;;;; ethio-fidel-to-sera-buffer ethio-fidel-to-sera-region ethio-sera-to-fidel-marker
;;;;;; ethio-sera-to-fidel-mail ethio-sera-to-fidel-mail-or-marker
;;;;;; ethio-sera-to-fidel-buffer ethio-sera-to-fidel-region setup-ethiopic-environment-internal)
-;;;;;; "ethio-util" "language/ethio-util.el" (17327 23539))
+;;;;;; "ethio-util" "language/ethio-util.el" (17549 5052))
;;; Generated autoloads from language/ethio-util.el
(autoload (quote setup-ethiopic-environment-internal) "ethio-util" "\
@@ -9935,7 +10058,7 @@ Convert fidel-tex commands in the current buffer into fidel chars.
(autoload (quote ethio-fidel-to-java-buffer) "ethio-util" "\
Convert Ethiopic characters into the Java escape sequences.
-Each escape sequence is of the form uXXXX, where XXXX is the
+Each escape sequence is of the form \\uXXXX, where XXXX is the
character's codepoint (in hex) in Unicode.
If `ethio-java-save-lowercase' is non-nil, use [0-9a-f].
@@ -10081,6 +10204,33 @@ Edit the hotlist of directory servers in a specialized buffer.
;;;***
+;;;### (autoloads (ewoc-create) "ewoc" "emacs-lisp/ewoc.el" (17549
+;;;;;; 4607))
+;;; Generated autoloads from emacs-lisp/ewoc.el
+
+(autoload (quote ewoc-create) "ewoc" "\
+Create an empty ewoc.
+
+The ewoc will be inserted in the current buffer at the current position.
+
+PRETTY-PRINTER should be a function that takes one argument, an
+element, and inserts a string representing it in the buffer (at
+point). The string PRETTY-PRINTER inserts may be empty or span
+several lines. The PRETTY-PRINTER should use `insert', and not
+`insert-before-markers'.
+
+Optional second and third arguments HEADER and FOOTER are strings,
+possibly empty, that will always be present at the top and bottom,
+respectively, of the ewoc.
+
+Normally, a newline is automatically inserted after the header,
+the footer and every node's printed representation. Optional
+fourth arg NOSEP non-nil inhibits this.
+
+\(fn PRETTY-PRINTER &optional HEADER FOOTER NOSEP)" nil nil)
+
+;;;***
+
;;;### (autoloads (executable-make-buffer-file-executable-if-script-p
;;;;;; executable-self-display executable-set-magic executable-interpret
;;;;;; executable-command-find-posix-p) "executable" "progmodes/executable.el"
@@ -10236,7 +10386,7 @@ with no args, if that value is non-nil.
;;;;;; facemenu-remove-all facemenu-remove-face-props facemenu-set-read-only
;;;;;; facemenu-set-intangible facemenu-set-invisible facemenu-set-face-from-menu
;;;;;; facemenu-set-background facemenu-set-foreground facemenu-set-face)
-;;;;;; "facemenu" "facemenu.el" (17390 26939))
+;;;;;; "facemenu" "facemenu.el" (17591 9293))
;;; Generated autoloads from facemenu.el
(define-key global-map "\M-o" 'facemenu-keymap)
(autoload 'facemenu-keymap "facemenu" "Keymap for face-changing commands." t 'keymap)
@@ -10581,6 +10731,12 @@ Set up hooks, load the cache file -- if existing -- and build the menu.
;;;***
+;;;### (autoloads nil "fill" "textmodes/fill.el" (17591 9619))
+;;; Generated autoloads from textmodes/fill.el
+(put 'colon-double-space 'safe-local-variable 'booleanp)
+
+;;;***
+
;;;### (autoloads (find-grep-dired find-name-dired find-dired find-grep-options
;;;;;; find-ls-subdir-switches find-ls-option) "find-dired" "find-dired.el"
;;;;;; (17390 26939))
@@ -10736,7 +10892,7 @@ Visit the file you click on in another window.
;;;;;; find-variable find-variable-noselect find-function-other-frame
;;;;;; find-function-other-window find-function find-function-noselect
;;;;;; find-function-search-for-symbol find-library) "find-func"
-;;;;;; "emacs-lisp/find-func.el" (17411 12435))
+;;;;;; "emacs-lisp/find-func.el" (17591 9719))
;;; Generated autoloads from emacs-lisp/find-func.el
(autoload (quote find-library) "find-func" "\
@@ -10746,6 +10902,9 @@ Find the elisp source of LIBRARY.
(autoload (quote find-function-search-for-symbol) "find-func" "\
Search for SYMBOL's definition of type TYPE in LIBRARY.
+Visit the library in a buffer, and return a cons cell (BUFFER . POSITION),
+or just (BUFFER . nil) if the definition can't be found in the file.
+
If TYPE is nil, look for a function definition.
Otherwise, TYPE specifies the kind of definition,
and it is interpreted via `find-function-regexp-alist'.
@@ -10758,7 +10917,8 @@ Return a pair (BUFFER . POINT) pointing to the definition of FUNCTION.
Finds the source file containing the definition of FUNCTION
in a buffer and the point of the definition. The buffer is
-not selected.
+not selected. If the function definition can't be found in
+the buffer, returns (BUFFER).
If the file where FUNCTION is defined is not known, then it is
searched for in `find-function-source-path' if non nil, otherwise
@@ -10799,6 +10959,7 @@ Return a pair `(BUFFER . POINT)' pointing to the definition of VARIABLE.
Finds the library containing the definition of VARIABLE in a buffer and
the point of the definition. The buffer is not selected.
+If the variable's definition can't be found in the buffer, return (BUFFER).
The library where VARIABLE is defined is searched for in FILE or
`find-function-source-path', if non nil, otherwise in `load-path'.
@@ -10836,6 +10997,7 @@ See `find-variable' for more details.
(autoload (quote find-definition-noselect) "find-func" "\
Return a pair `(BUFFER . POINT)' pointing to the definition of SYMBOL.
+If the definition can't be found in the buffer, return (BUFFER).
TYPE says what type of definition: nil for a function, `defvar' for a
variable, `defface' for a face. This function does not switch to the
buffer nor display it.
@@ -10905,7 +11067,7 @@ Change the filter on a find-lisp-find-dired buffer to REGEXP.
;;;***
;;;### (autoloads (finder-by-keyword finder-commentary finder-list-keywords)
-;;;;;; "finder" "finder.el" (17390 26939))
+;;;;;; "finder" "finder.el" (17469 12047))
;;; Generated autoloads from finder.el
(autoload (quote finder-list-keywords) "finder" "\
@@ -10949,7 +11111,7 @@ to get the effect of a C-q.
;;;***
;;;### (autoloads (fill-flowed fill-flowed-encode) "flow-fill" "gnus/flow-fill.el"
-;;;;;; (17412 30474))
+;;;;;; (17478 25198))
;;; Generated autoloads from gnus/flow-fill.el
(autoload (quote fill-flowed-encode) "flow-fill" "\
@@ -10988,8 +11150,8 @@ Turn flymake mode off.
;;;***
;;;### (autoloads (flyspell-buffer flyspell-region flyspell-mode-off
-;;;;;; flyspell-mode flyspell-prog-mode) "flyspell" "textmodes/flyspell.el"
-;;;;;; (17427 42815))
+;;;;;; turn-off-flyspell turn-on-flyspell flyspell-mode flyspell-prog-mode)
+;;;;;; "flyspell" "textmodes/flyspell.el" (17549 4608))
;;; Generated autoloads from textmodes/flyspell.el
(autoload (quote flyspell-prog-mode) "flyspell" "\
@@ -11029,6 +11191,16 @@ in your .emacs file.
\(fn &optional ARG)" t nil)
+(autoload (quote turn-on-flyspell) "flyspell" "\
+Unconditionally turn on Flyspell mode.
+
+\(fn)" nil nil)
+
+(autoload (quote turn-off-flyspell) "flyspell" "\
+Unconditionally turn off Flyspell mode.
+
+\(fn)" nil nil)
+
(autoload (quote flyspell-mode-off) "flyspell" "\
Turn Flyspell mode off.
@@ -11048,16 +11220,16 @@ Flyspell whole buffer.
;;;### (autoloads (follow-delete-other-windows-and-split follow-mode
;;;;;; turn-off-follow-mode turn-on-follow-mode) "follow" "follow.el"
-;;;;;; (17390 26939))
+;;;;;; (17490 7930))
;;; Generated autoloads from follow.el
(autoload (quote turn-on-follow-mode) "follow" "\
-Turn on Follow mode. Please see the function `follow-mode'.
+Turn on Follow mode. Please see the function `follow-mode'.
\(fn)" t nil)
(autoload (quote turn-off-follow-mode) "follow" "\
-Turn off Follow mode. Please see the function `follow-mode'.
+Turn off Follow mode. Please see the function `follow-mode'.
\(fn)" t nil)
@@ -11098,7 +11270,7 @@ is called. When turned off, `follow-mode-off-hook' is called.
Keys specific to Follow mode:
\\{follow-mode-map}
-\(fn ARG)" t nil)
+\(fn &optional ARG)" t nil)
(autoload (quote follow-delete-other-windows-and-split) "follow" "\
Create two side by side windows and enter Follow Mode.
@@ -11317,7 +11489,7 @@ and choose the directory as the fortune-file.
;;;***
;;;### (autoloads (gdb-enable-debug gdba) "gdb-ui" "progmodes/gdb-ui.el"
-;;;;;; (17454 30835))
+;;;;;; (17591 9876))
;;; Generated autoloads from progmodes/gdb-ui.el
(autoload (quote gdba) "gdb-ui" "\
@@ -11468,6 +11640,53 @@ at places they belong to.
;;;***
+;;;### (autoloads (gmm-tool-bar-from-list gmm-widget-p gmm-error
+;;;;;; gmm-message) "gmm-utils" "gnus/gmm-utils.el" (17518 54377))
+;;; Generated autoloads from gnus/gmm-utils.el
+
+(autoload (quote gmm-message) "gmm-utils" "\
+If LEVEL is lower than `gmm-verbose' print ARGS using `message'.
+
+Guideline for numbers:
+1 - error messages, 3 - non-serious error messages, 5 - messages for things
+that take a long time, 7 - not very important messages on stuff, 9 - messages
+inside loops.
+
+\(fn LEVEL &rest ARGS)" nil nil)
+
+(autoload (quote gmm-error) "gmm-utils" "\
+Beep an error if LEVEL is equal to or less than `gmm-verbose'.
+ARGS are passed to `message'.
+
+\(fn LEVEL &rest ARGS)" nil nil)
+
+(autoload (quote gmm-widget-p) "gmm-utils" "\
+Non-nil iff SYMBOL is a widget.
+
+\(fn SYMBOL)" nil nil)
+
+(autoload (quote gmm-tool-bar-from-list) "gmm-utils" "\
+Make a tool bar from ICON-LIST.
+
+Within each entry of ICON-LIST, the first element is a menu
+command, the second element is an icon file name and the third
+element is a test function. You can use \\[describe-key]
+<menu-entry> to find out the name of a menu command. The fourth
+and all following elements are passed a the PROPS argument to the
+function `tool-bar-local-item'.
+
+If ZAP-LIST is a list, remove those item from the default
+`tool-bar-map'. If it is t, start with a new sparse map. You
+can use \\[describe-key] <icon> to find out the name of an icon
+item. When \\[describe-key] <icon> shows \"<tool-bar> <new-file>
+runs the command find-file\", then use `new-file' in ZAP-LIST.
+
+DEFAULT-MAP specifies the default key map for ICON-LIST.
+
+\(fn ICON-LIST ZAP-LIST DEFAULT-MAP)" nil nil)
+
+;;;***
+
;;;### (autoloads (gnus gnus-other-frame gnus-slave gnus-no-server
;;;;;; gnus-slave-no-server) "gnus" "gnus/gnus.el" (17427 41288))
;;; Generated autoloads from gnus/gnus.el
@@ -11520,7 +11739,7 @@ prompt the user for the name of an NNTP server to use.
;;;;;; gnus-agent-get-undownloaded-list gnus-agent-delete-group
;;;;;; gnus-agent-rename-group gnus-agent-possibly-save-gcc gnus-agentize
;;;;;; gnus-slave-unplugged gnus-plugged gnus-unplugged) "gnus-agent"
-;;;;;; "gnus/gnus-agent.el" (17441 26811))
+;;;;;; "gnus/gnus-agent.el" (17549 5046))
;;; Generated autoloads from gnus/gnus-agent.el
(autoload (quote gnus-unplugged) "gnus-agent" "\
@@ -11611,7 +11830,7 @@ If CLEAN, obsolete (ignore).
;;;***
;;;### (autoloads (gnus-article-prepare-display) "gnus-art" "gnus/gnus-art.el"
-;;;;;; (17441 26663))
+;;;;;; (17569 17778))
;;; Generated autoloads from gnus/gnus-art.el
(autoload (quote gnus-article-prepare-display) "gnus-art" "\
@@ -11712,6 +11931,22 @@ Checking delayed messages is skipped if optional arg NO-CHECK is non-nil.
;;;***
+;;;### (autoloads (gnus-user-format-function-D gnus-user-format-function-d)
+;;;;;; "gnus-diary" "gnus/gnus-diary.el" (17591 9282))
+;;; Generated autoloads from gnus/gnus-diary.el
+
+(autoload (quote gnus-user-format-function-d) "gnus-diary" "\
+Not documented
+
+\(fn HEADER)" nil nil)
+
+(autoload (quote gnus-user-format-function-D) "gnus-diary" "\
+Not documented
+
+\(fn HEADER)" nil nil)
+
+;;;***
+
;;;### (autoloads (turn-on-gnus-dired-mode) "gnus-dired" "gnus/gnus-dired.el"
;;;;;; (17383 38805))
;;; Generated autoloads from gnus/gnus-dired.el
@@ -11736,8 +11971,8 @@ Reminder user if there are unsent drafts.
;;;### (autoloads (gnus-convert-png-to-face gnus-convert-face-to-png
;;;;;; gnus-face-from-file gnus-x-face-from-file gnus-insert-random-x-face-header
-;;;;;; gnus-random-x-face) "gnus-fun" "gnus/gnus-fun.el" (17383
-;;;;;; 38805))
+;;;;;; gnus-random-x-face) "gnus-fun" "gnus/gnus-fun.el" (17466
+;;;;;; 28574))
;;; Generated autoloads from gnus/gnus-fun.el
(autoload (quote gnus-random-x-face) "gnus-fun" "\
@@ -11776,7 +12011,7 @@ FILE should be a PNG file that's 48x48 and smaller than or equal to
;;;***
;;;### (autoloads (gnus-fetch-group-other-frame gnus-fetch-group)
-;;;;;; "gnus-group" "gnus/gnus-group.el" (17427 41288))
+;;;;;; "gnus-group" "gnus/gnus-group.el" (17591 9282))
;;; Generated autoloads from gnus/gnus-group.el
(autoload (quote gnus-fetch-group) "gnus-group" "\
@@ -11808,7 +12043,7 @@ Usage: emacs -batch -l ~/.emacs -l gnus -f gnus-batch-score
;;;### (autoloads (gnus-mailing-list-mode gnus-mailing-list-insinuate
;;;;;; turn-on-gnus-mailing-list-mode) "gnus-ml" "gnus/gnus-ml.el"
-;;;;;; (17383 38805))
+;;;;;; (17549 5046))
;;; Generated autoloads from gnus/gnus-ml.el
(autoload (quote turn-on-gnus-mailing-list-mode) "gnus-ml" "\
@@ -12099,8 +12334,8 @@ Install the registry hooks.
;;;***
;;;### (autoloads (gnus-sieve-article-add-rule gnus-sieve-generate
-;;;;;; gnus-sieve-update) "gnus-sieve" "gnus/gnus-sieve.el" (17383
-;;;;;; 38805))
+;;;;;; gnus-sieve-update) "gnus-sieve" "gnus/gnus-sieve.el" (17469
+;;;;;; 13458))
;;; Generated autoloads from gnus/gnus-sieve.el
(autoload (quote gnus-sieve-update) "gnus-sieve" "\
@@ -12159,8 +12394,8 @@ Update the format specification near point.
;;;***
;;;### (autoloads (gnus-fixup-nnimap-unread-after-getting-new-news
-;;;;;; gnus-declare-backend) "gnus-start" "gnus/gnus-start.el" (17427
-;;;;;; 41288))
+;;;;;; gnus-declare-backend) "gnus-start" "gnus/gnus-start.el" (17591
+;;;;;; 9890))
;;; Generated autoloads from gnus/gnus-start.el
(autoload (quote gnus-declare-backend) "gnus-start" "\
@@ -12213,7 +12448,7 @@ Use \\[describe-mode] for more info.
;;;***
;;;### (autoloads (goto-address goto-address-at-point) "goto-addr"
-;;;;;; "net/goto-addr.el" (17390 26944))
+;;;;;; "net/goto-addr.el" (17591 9445))
;;; Generated autoloads from net/goto-addr.el
(define-obsolete-function-alias (quote goto-address-at-mouse) (quote goto-address-at-point) "22.1")
@@ -12237,12 +12472,13 @@ Also fontifies the buffer appropriately (see `goto-address-fontify-p' and
`goto-address-highlight-p' for more information).
\(fn)" t nil)
+(put 'goto-address 'safe-local-eval-function t)
;;;***
-;;;### (autoloads (grep-tree grep-find grep-mode grep grep-compute-defaults
+;;;### (autoloads (rgrep lgrep grep-find grep grep-mode grep-compute-defaults
;;;;;; grep-process-setup grep-setup-hook grep-find-command grep-command
-;;;;;; grep-window-height) "grep" "progmodes/grep.el" (17441 26652))
+;;;;;; grep-window-height) "grep" "progmodes/grep.el" (17591 9719))
;;; Generated autoloads from progmodes/grep.el
(defvar grep-window-height nil "\
@@ -12307,6 +12543,11 @@ Not documented
\(fn)" nil nil)
+(autoload (quote grep-mode) "grep" "\
+Sets `grep-last-buffer' and `compilation-window-height'.
+
+\(fn)" nil nil)
+
(autoload (quote grep) "grep" "\
Run grep, with user-specified args, and collect output in a buffer.
While grep runs asynchronously, you can use \\[next-error] (M-x next-error),
@@ -12321,15 +12562,7 @@ tag the cursor is over, substituting it into the last grep command
in the grep command history (or into `grep-command'
if that history list is empty).
-If specified, optional second arg HIGHLIGHT-REGEXP is the regexp to
-temporarily highlight in visited source lines.
-
-\(fn COMMAND-ARGS &optional HIGHLIGHT-REGEXP)" t nil)
-
-(autoload (quote grep-mode) "grep" "\
-Sets `grep-last-buffer' and `compilation-window-height'.
-
-\(fn)" nil nil)
+\(fn COMMAND-ARGS)" t nil)
(autoload (quote grep-find) "grep" "\
Run grep via find, with user-specified args COMMAND-ARGS.
@@ -12344,25 +12577,41 @@ easily repeat a find command.
(defalias (quote find-grep) (quote grep-find))
-(autoload (quote grep-tree) "grep" "\
-Grep for REGEXP in FILES in directory tree rooted at DIR.
-Collect output in a buffer.
-Interactively, prompt separately for each search parameter.
-With prefix arg, reuse previous REGEXP.
+(autoload (quote lgrep) "grep" "\
+Run grep, searching for REGEXP in FILES in current directory.
The search is limited to file names matching shell pattern FILES.
-FILES may use abbreviations defined in `grep-tree-files-aliases', e.g.
+FILES may use abbreviations defined in `grep-files-aliases', e.g.
entering `ch' is equivalent to `*.[ch]'.
-While find runs asynchronously, you can use the \\[next-error] command
-to find the text that grep hits refer to.
+With \\[universal-argument] prefix, you can edit the constructed shell command line
+before it is executed.
+With two \\[universal-argument] prefixes, directly edit and run `grep-command'.
-This command uses a special history list for its arguments, so you can
-easily repeat a find command.
+Collect output in a buffer. While grep runs asynchronously, you
+can use \\[next-error] (M-x next-error), or \\<grep-mode-map>\\[compile-goto-error]
+in the grep output buffer, to go to the lines where grep found matches.
+
+This command shares argument histories with \\[rgrep] and \\[grep].
+
+\(fn REGEXP &optional FILES)" t nil)
+
+(autoload (quote rgrep) "grep" "\
+Recursively grep for REGEXP in FILES in directory tree rooted at DIR.
+The search is limited to file names matching shell pattern FILES.
+FILES may use abbreviations defined in `grep-files-aliases', e.g.
+entering `ch' is equivalent to `*.[ch]'.
+
+With \\[universal-argument] prefix, you can edit the constructed shell command line
+before it is executed.
+With two \\[universal-argument] prefixes, directly edit and run `grep-find-command'.
-When used non-interactively, optional arg SUBDIRS limits the search to
-those sub directories of DIR.
+Collect output in a buffer. While find runs asynchronously, you
+can use \\[next-error] (M-x next-error), or \\<grep-mode-map>\\[compile-goto-error]
+in the grep output buffer, to go to the lines where grep found matches.
-\(fn REGEXP FILES DIR &optional SUBDIRS)" t nil)
+This command shares argument histories with \\[lgrep] and \\[grep-find].
+
+\(fn REGEXP &optional FILES DIR)" t nil)
;;;***
@@ -12380,7 +12629,7 @@ the form \"WINDOW-ID PIXMAP-ID\". Value is non-nil if successful.
;;;***
;;;### (autoloads (gdb-script-mode bashdb jdb pdb perldb xdb dbx
-;;;;;; sdb gdb) "gud" "progmodes/gud.el" (17454 30835))
+;;;;;; sdb gdb) "gud" "progmodes/gud.el" (17591 9876))
;;; Generated autoloads from progmodes/gud.el
(autoload (quote gdb) "gud" "\
@@ -12485,7 +12734,7 @@ Variables: handwrite-linespace (default 12)
;;;***
;;;### (autoloads (hanoi-unix-64 hanoi-unix hanoi) "hanoi" "play/hanoi.el"
-;;;;;; (17279 27079))
+;;;;;; (17591 9622))
;;; Generated autoloads from play/hanoi.el
(autoload (quote hanoi) "hanoi" "\
@@ -12645,7 +12894,7 @@ different regions. With numeric argument ARG, behaves like
;;;### (autoloads (describe-categories describe-syntax describe-variable
;;;;;; variable-at-point describe-function-1 describe-simplify-lib-file-name
;;;;;; help-C-file-name describe-function help-with-tutorial) "help-fns"
-;;;;;; "help-fns.el" (17401 60341))
+;;;;;; "help-fns.el" (17591 9719))
;;; Generated autoloads from help-fns.el
(autoload (quote help-with-tutorial) "help-fns" "\
@@ -12728,7 +12977,7 @@ A value of nil means skip the middle step, so that
;;;### (autoloads (help-xref-on-pp help-insert-xref-button help-xref-button
;;;;;; help-make-xrefs help-setup-xref help-mode-finish help-mode-setup
-;;;;;; help-mode) "help-mode" "help-mode.el" (17441 26668))
+;;;;;; help-mode) "help-mode" "help-mode.el" (17591 9719))
;;; Generated autoloads from help-mode.el
(autoload (quote help-mode) "help-mode" "\
@@ -12811,7 +13060,7 @@ Add xrefs for symbols in `pp's output between FROM and TO.
;;;***
;;;### (autoloads (Helper-help Helper-describe-bindings) "helper"
-;;;;;; "emacs-lisp/helper.el" (17390 26938))
+;;;;;; "emacs-lisp/helper.el" (17591 9619))
;;; Generated autoloads from emacs-lisp/helper.el
(autoload (quote Helper-describe-bindings) "helper" "\
@@ -12827,7 +13076,7 @@ Provide help for current mode.
;;;***
;;;### (autoloads (hexlify-buffer hexl-find-file hexl-mode) "hexl"
-;;;;;; "hexl.el" (17390 26939))
+;;;;;; "hexl.el" (17591 9619))
;;; Generated autoloads from hexl.el
(autoload (quote hexl-mode) "hexl" "\
@@ -12907,8 +13156,9 @@ You can use \\[hexl-find-file] to visit a file in Hexl mode.
\(fn &optional ARG)" t nil)
(autoload (quote hexl-find-file) "hexl" "\
-Edit file FILENAME in hexl-mode.
-Switch to a buffer visiting file FILENAME, creating one in none exists.
+Edit file FILENAME as a binary file in hex dump format.
+Switch to a buffer visiting file FILENAME, creating one if none exists,
+and edit the file in `hexl-mode'.
\(fn FILENAME)" t nil)
@@ -13049,7 +13299,7 @@ be found in variable `hi-lock-interactive-patterns'.
;;;***
;;;### (autoloads (hide-ifdef-lines hide-ifdef-read-only hide-ifdef-initially
-;;;;;; hide-ifdef-mode) "hideif" "progmodes/hideif.el" (17390 27408))
+;;;;;; hide-ifdef-mode) "hideif" "progmodes/hideif.el" (17524 8597))
;;; Generated autoloads from progmodes/hideif.el
(autoload (quote hide-ifdef-mode) "hideif" "\
@@ -13869,8 +14119,8 @@ defaults to one.
;;;***
;;;### (autoloads (define-ibuffer-filter define-ibuffer-op define-ibuffer-sorter
-;;;;;; define-ibuffer-column) "ibuf-macs" "ibuf-macs.el" (17390
-;;;;;; 26939))
+;;;;;; define-ibuffer-column) "ibuf-macs" "ibuf-macs.el" (17466
+;;;;;; 28164))
;;; Generated autoloads from ibuf-macs.el
(autoload (quote define-ibuffer-column) "ibuf-macs" "\
@@ -13887,6 +14137,9 @@ the text, such as `mouse-face'. And SUMMARIZER, if given, is a
function which will be passed a list of all the strings in its column;
it should return a string to display at the bottom.
+If HEADER-MOUSE-MAP is given, it will be used as a keymap for the
+title of the column.
+
Note that this macro expands into a `defun' for a function named
ibuffer-make-column-NAME. If INLINE is non-nil, then the form will be
inlined into the compiled format versions. This means that if you
@@ -13956,7 +14209,7 @@ bound to the current value of the filter.
;;;***
;;;### (autoloads (ibuffer ibuffer-other-window ibuffer-list-buffers)
-;;;;;; "ibuffer" "ibuffer.el" (17379 30025))
+;;;;;; "ibuffer" "ibuffer.el" (17591 9281))
;;; Generated autoloads from ibuffer.el
(autoload (quote ibuffer-list-buffers) "ibuffer" "\
@@ -14112,7 +14365,7 @@ with no args, if that value is non-nil.
;;;***
;;;### (autoloads (idlwave-shell) "idlw-shell" "progmodes/idlw-shell.el"
-;;;;;; (17390 27408))
+;;;;;; (17515 24857))
;;; Generated autoloads from progmodes/idlw-shell.el
(autoload (quote idlwave-shell) "idlw-shell" "\
@@ -14138,11 +14391,11 @@ See also the variable `idlwave-shell-prompt-pattern'.
;;;***
;;;### (autoloads (idlwave-mode) "idlwave" "progmodes/idlwave.el"
-;;;;;; (17390 27408))
+;;;;;; (17515 24857))
;;; Generated autoloads from progmodes/idlwave.el
(autoload (quote idlwave-mode) "idlwave" "\
-Major mode for editing IDL source files (version 5.7_22).
+Major mode for editing IDL source files (version 6.0_em22).
The main features of this mode are
@@ -14191,11 +14444,10 @@ The main features of this mode are
3. Online IDL Help
---------------
+
\\[idlwave-context-help] displays the IDL documentation relevant
- for the system variable, keyword, or routine at point. A single
- key stroke gets you directly to the right place in the docs. The
- HTML help files package must be installed for this to work -- check
- the IDLWAVE webpage for the correct package for your version. See
+ for the system variable, keyword, or routines at point. A single
+ key stroke gets you directly to the right place in the docs. See
the manual to configure where and how the HTML help is displayed.
4. Completion
@@ -14222,7 +14474,7 @@ The main features of this mode are
\\i IF statement template
\\elif IF-ELSE statement template
\\b BEGIN
-
+
For a full list, use \\[idlwave-list-abbrevs]. Some templates also
have direct keybindings - see the list of keybindings below.
@@ -14263,7 +14515,7 @@ The main features of this mode are
\\{idlwave-mode-map}
\(fn)" t nil)
-(add-to-list 'auto-mode-alist '("\\.[Pp][Rr][Oo]\\'" . idlwave-mode))
+ (add-to-list 'auto-mode-alist '("\\.[Pp][Rr][Oo]\\'" . idlwave-mode))
;;;***
@@ -14274,8 +14526,8 @@ The main features of this mode are
;;;;;; ido-find-alternate-file ido-find-file-other-window ido-find-file
;;;;;; ido-find-file-in-dir ido-switch-buffer-other-frame ido-insert-buffer
;;;;;; ido-kill-buffer ido-display-buffer ido-switch-buffer-other-window
-;;;;;; ido-switch-buffer ido-mode ido-mode) "ido" "ido.el" (17441
-;;;;;; 26659))
+;;;;;; ido-switch-buffer ido-mode ido-mode) "ido" "ido.el" (17591
+;;;;;; 9719))
;;; Generated autoloads from ido.el
(defvar ido-mode nil "\
@@ -14311,7 +14563,7 @@ default is to show it in the same window, unless it is already visible
in another frame.
As you type in a string, all of the buffers matching the string are
-displayed if substring-matching is used (default). Look at
+displayed if substring-matching is used (default). Look at
`ido-enable-prefix' and `ido-toggle-prefix'. When you have found the
buffer you want, it can then be selected. As you type, most keys have
their normal keybindings, except for the following: \\<ido-buffer-completion-map>
@@ -14334,7 +14586,7 @@ in a separate window.
\\[ido-toggle-prefix] Toggle between substring and prefix matching.
\\[ido-toggle-case] Toggle case-sensitive searching of buffer names.
\\[ido-completion-help] Show list of matching buffers in separate window.
-\\[ido-enter-find-file] Drop into ido-find-file.
+\\[ido-enter-find-file] Drop into `ido-find-file'.
\\[ido-kill-buffer-at-head] Kill buffer at head of buffer list.
\\[ido-toggle-ignore] Toggle ignoring buffers listed in `ido-ignore-buffers'.
@@ -14566,8 +14818,9 @@ Toggle inline image minor mode.
;;;### (autoloads (defimage find-image remove-images insert-sliced-image
;;;;;; insert-image put-image create-image image-type-available-p
-;;;;;; image-type-from-file-name image-type-from-file-header image-type-from-buffer
-;;;;;; image-type-from-data) "image" "image.el" (17441 26666))
+;;;;;; image-type image-type-from-file-name image-type-from-file-header
+;;;;;; image-type-from-buffer image-type-from-data) "image" "image.el"
+;;;;;; (17490 7905))
;;; Generated autoloads from image.el
(autoload (quote image-type-from-data) "image" "\
@@ -14598,6 +14851,17 @@ be determined.
\(fn FILE)" nil nil)
+(autoload (quote image-type) "image" "\
+Determine and return image type.
+FILE-OR-DATA is an image file name or image data.
+Optional TYPE is a symbol describing the image type. If TYPE is omitted
+or nil, try to determine the image type from its first few bytes
+of image data. If that doesn't work, and FILE-OR-DATA is a file name,
+use its file extension as image type.
+Optional DATA-P non-nil means FILE-OR-DATA is a string containing image data.
+
+\(fn FILE-OR-DATA &optional TYPE DATA-P)" nil nil)
+
(autoload (quote image-type-available-p) "image" "\
Return non-nil if image type TYPE is available.
Image types are symbols like `xbm' or `jpeg'.
@@ -14781,7 +15045,7 @@ Image files are those whose name has an extension in
;;;***
;;;### (autoloads (image-mode-maybe image-minor-mode image-mode)
-;;;;;; "image-mode" "image-mode.el" (17390 27370))
+;;;;;; "image-mode" "image-mode.el" (17549 4607))
;;; Generated autoloads from image-mode.el
(push '("\\.jpe?g\\'" . image-mode) auto-mode-alist)
(push '("\\.png\\'" . image-mode) auto-mode-alist)
@@ -14819,7 +15083,7 @@ information on these modes.
;;;***
;;;### (autoloads (imenu imenu-add-menubar-index imenu-add-to-menubar
-;;;;;; imenu-sort-function) "imenu" "imenu.el" (17390 26940))
+;;;;;; imenu-sort-function) "imenu" "imenu.el" (17591 9619))
;;; Generated autoloads from imenu.el
(defvar imenu-sort-function nil "\
@@ -14854,18 +15118,13 @@ during matching.")
(make-variable-buffer-local (quote imenu-generic-expression))
(defvar imenu-create-index-function (quote imenu-default-create-index-function) "\
-The function to use for creating a buffer index.
+The function to use for creating an index alist of the current buffer.
-It should be a function that takes no arguments and returns an index
-of the current buffer as an alist.
+It should be a function that takes no arguments and returns
+an index alist of the current buffer. The function is
+called within a `save-excursion'.
-Simple elements in the alist look like (INDEX-NAME . INDEX-POSITION).
-Special elements look like (INDEX-NAME INDEX-POSITION FUNCTION ARGUMENTS...).
-A nested sub-alist element looks like (INDEX-NAME SUB-ALIST).
-The function `imenu--subalist-p' tests an element and returns t
-if it is a sub-alist.
-
-This function is called within a `save-excursion'.")
+See `imenu--index-alist' for the format of the buffer index alist.")
(make-variable-buffer-local (quote imenu-create-index-function))
@@ -14982,7 +15241,7 @@ See also the function `indian-glyph-char'.
;;;### (autoloads (inferior-lisp inferior-lisp-prompt inferior-lisp-load-command
;;;;;; inferior-lisp-program inferior-lisp-filter-regexp) "inf-lisp"
-;;;;;; "progmodes/inf-lisp.el" (17390 27408))
+;;;;;; "progmodes/inf-lisp.el" (17549 4607))
;;; Generated autoloads from progmodes/inf-lisp.el
(defvar inferior-lisp-filter-regexp "\\`\\s *\\(:\\(\\w\\|\\s_\\)\\)?\\s *\\'" "\
@@ -15049,7 +15308,7 @@ of `inferior-lisp-program'). Runs the hooks from
;;;### (autoloads (Info-speedbar-browser Info-goto-emacs-key-command-node
;;;;;; Info-goto-emacs-command-node Info-mode info-apropos Info-index
;;;;;; Info-directory Info-on-current-buffer info-standalone info-emacs-manual
-;;;;;; info info-other-window) "info" "info.el" (17427 42815))
+;;;;;; info info-other-window) "info" "info.el" (17591 9719))
;;; Generated autoloads from info.el
(autoload (quote info-other-window) "info" "\
@@ -15263,7 +15522,7 @@ Perform completion on file preceding point.
;;;***
;;;### (autoloads (info-xref-check-all-custom info-xref-check-all
-;;;;;; info-xref-check) "info-xref" "info-xref.el" (17390 26940))
+;;;;;; info-xref-check) "info-xref" "info-xref.el" (17524 8597))
;;; Generated autoloads from info-xref.el
(autoload (quote info-xref-check) "info-xref" "\
@@ -15496,8 +15755,9 @@ Add submenus to the File menu, to convert to and from various formats.
;;;;;; ispell-region ispell-change-dictionary ispell-kill-ispell
;;;;;; ispell-help ispell-pdict-save ispell-word ispell-local-dictionary-alist
;;;;;; ispell-personal-dictionary) "ispell" "textmodes/ispell.el"
-;;;;;; (17441 26660))
+;;;;;; (17549 5052))
;;; Generated autoloads from textmodes/ispell.el
+(put 'ispell-check-comments 'safe-local-variable (lambda (a) (memq a '(nil t exclusive))))
(defvar ispell-personal-dictionary nil "\
*File name of your personal spelling dictionary, or nil.
@@ -15505,6 +15765,7 @@ If nil, the default personal dictionary, \"~/.ispell_DICTNAME\" is used,
where DICTNAME is the name of your default dictionary.")
(custom-autoload (quote ispell-personal-dictionary) "ispell")
+(put 'ispell-local-dictionary 'safe-local-variable 'string-or-null-p)
(defvar ispell-local-dictionary-alist nil "\
*List of local or customized dictionary definitions.
@@ -16015,7 +16276,7 @@ and the return value is the length of the conversion.
;;;### (autoloads (kmacro-end-call-mouse kmacro-end-and-call-macro
;;;;;; kmacro-end-or-call-macro kmacro-start-macro-or-insert-counter
;;;;;; kmacro-call-macro kmacro-end-macro kmacro-start-macro) "kmacro"
-;;;;;; "kmacro.el" (17390 26941))
+;;;;;; "kmacro.el" (17505 62414))
;;; Generated autoloads from kmacro.el
(global-set-key "\C-x(" 'kmacro-start-macro)
(global-set-key "\C-x)" 'kmacro-end-macro)
@@ -16160,7 +16421,7 @@ Not documented
;;;***
;;;### (autoloads (lm lm-test-run) "landmark" "play/landmark.el"
-;;;;;; (17396 42165))
+;;;;;; (17591 9445))
;;; Generated autoloads from play/landmark.el
(defalias (quote landmark-repeat) (quote lm-test-run))
@@ -16450,8 +16711,8 @@ generations (this defaults to 1).
;;;***
-;;;### (autoloads (unload-feature) "loadhist" "loadhist.el" (17411
-;;;;;; 12435))
+;;;### (autoloads (unload-feature) "loadhist" "loadhist.el" (17469
+;;;;;; 12066))
;;; Generated autoloads from loadhist.el
(autoload (quote unload-feature) "loadhist" "\
@@ -16474,7 +16735,7 @@ such as redefining an Emacs function.
;;;***
;;;### (autoloads (locate-with-filter locate locate-ls-subdir-switches)
-;;;;;; "locate" "locate.el" (17441 26651))
+;;;;;; "locate" "locate.el" (17591 9293))
;;; Generated autoloads from locate.el
(defvar locate-ls-subdir-switches "-al" "\
@@ -16521,7 +16782,7 @@ except that FILTER is not optional.
;;;***
-;;;### (autoloads (log-edit) "log-edit" "log-edit.el" (17390 26942))
+;;;### (autoloads (log-edit) "log-edit" "log-edit.el" (17496 38723))
;;; Generated autoloads from log-edit.el
(autoload (quote log-edit) "log-edit" "\
@@ -16542,8 +16803,8 @@ If BUFFER is non-nil `log-edit' will jump to that buffer, use it to edit the
;;;***
-;;;### (autoloads (log-view-mode) "log-view" "log-view.el" (17390
-;;;;;; 26942))
+;;;### (autoloads (log-view-mode) "log-view" "log-view.el" (17496
+;;;;;; 38723))
;;; Generated autoloads from log-view.el
(autoload (quote log-view-mode) "log-view" "\
@@ -16553,8 +16814,8 @@ Major mode for browsing CVS log output.
;;;***
-;;;### (autoloads (longlines-mode) "longlines" "longlines.el" (17390
-;;;;;; 26942))
+;;;### (autoloads (longlines-mode) "longlines" "longlines.el" (17591
+;;;;;; 9876))
;;; Generated autoloads from longlines.el
(autoload (quote longlines-mode) "longlines" "\
@@ -17011,7 +17272,7 @@ The mail client is taken to be the handler of mailto URLs.
;;;### (autoloads (makefile-imake-mode makefile-bsdmake-mode makefile-makepp-mode
;;;;;; makefile-gmake-mode makefile-automake-mode makefile-mode)
-;;;;;; "make-mode" "progmodes/make-mode.el" (17390 27408))
+;;;;;; "make-mode" "progmodes/make-mode.el" (17591 9293))
;;; Generated autoloads from progmodes/make-mode.el
(autoload (quote makefile-mode) "make-mode" "\
@@ -17019,11 +17280,10 @@ Major mode for editing standard Makefiles.
If you are editing a file for a different make, try one of the
variants `makefile-automake-mode', `makefile-gmake-mode',
-`makefile-makepp-mode', `makefile-bsdmake-mode' or,
-`makefile-imake-mode'All but the
-last should be correctly chosen based on the file name, except if
-it is *.mk. This function ends by invoking the function(s)
-`makefile-mode-hook'.
+`makefile-makepp-mode', `makefile-bsdmake-mode' or,
+`makefile-imake-mode'. All but the last should be correctly
+chosen based on the file name, except if it is *.mk. This
+function ends by invoking the function(s) `makefile-mode-hook'.
It is strongly recommended to use `font-lock-mode', because that
provides additional parsing information. This is used for
@@ -17141,7 +17401,7 @@ Previous contents of that buffer are killed first.
;;;***
-;;;### (autoloads (man-follow man) "man" "man.el" (17390 26943))
+;;;### (autoloads (man-follow man) "man" "man.el" (17466 28474))
;;; Generated autoloads from man.el
(defalias (quote manual-entry) (quote man))
@@ -17190,8 +17450,8 @@ yourself the value of `master-of' by calling `master-show-slave'.
;;;***
-;;;### (autoloads (menu-bar-mode) "menu-bar" "menu-bar.el" (17446
-;;;;;; 41075))
+;;;### (autoloads (menu-bar-mode) "menu-bar" "menu-bar.el" (17549
+;;;;;; 4607))
;;; Generated autoloads from menu-bar.el
(put (quote menu-bar-mode) (quote standard-value) (quote (t)))
@@ -17204,8 +17464,6 @@ use either \\[customize] or the function `menu-bar-mode'.")
(custom-autoload (quote menu-bar-mode) "menu-bar")
-(put (quote menu-bar-mode) (quote custom-set) (quote custom-set-minor-mode))
-
(autoload (quote menu-bar-mode) "menu-bar" "\
Toggle display of a menu bar on each frame.
This command applies to all frames that exist and frames to be
@@ -17227,7 +17485,7 @@ turn on menu bars; otherwise, turn off menu bars.
;;;;;; message-cite-function message-yank-prefix message-citation-line-function
;;;;;; message-send-mail-function message-user-organization-file
;;;;;; message-signature-separator message-from-style) "message"
-;;;;;; "gnus/message.el" (17441 26663))
+;;;;;; "gnus/message.el" (17569 17789))
;;; Generated autoloads from gnus/message.el
(defvar message-from-style (quote default) "\
@@ -17553,7 +17811,7 @@ redisplayed as output is inserted.
;;;### (autoloads (mh-fully-kill-draft mh-send-letter mh-user-agent-compose
;;;;;; mh-smail-batch mh-smail-other-window mh-smail) "mh-comp"
-;;;;;; "mh-e/mh-comp.el" (17441 26667))
+;;;;;; "mh-e/mh-comp.el" (17569 17774))
;;; Generated autoloads from mh-e/mh-comp.el
(autoload (quote mh-smail) "mh-comp" "\
@@ -17640,8 +17898,7 @@ delete the draft message.
;;;***
-;;;### (autoloads (mh-strip-package-version mh-version) "mh-e" "mh-e/mh-e.el"
-;;;;;; (17454 45382))
+;;;### (autoloads (mh-version) "mh-e" "mh-e/mh-e.el" (17591 9293))
;;; Generated autoloads from mh-e/mh-e.el
(put (quote mh-progs) (quote risky-local-variable) t)
@@ -17655,17 +17912,10 @@ Display version information about MH-E and the MH mail handling system.
\(fn)" t nil)
-(autoload (quote mh-strip-package-version) "mh-e" "\
-Strip :package-version keyword and its value from ARGS.
-In Emacs versions that support the :package-version keyword,
-ARGS is returned unchanged.
-
-\(fn ARGS)" nil nil)
-
;;;***
;;;### (autoloads (mh-folder-mode mh-nmail mh-rmail) "mh-folder"
-;;;;;; "mh-e/mh-folder.el" (17454 30993))
+;;;;;; "mh-e/mh-folder.el" (17490 7902))
;;; Generated autoloads from mh-e/mh-folder.el
(autoload (quote mh-rmail) "mh-folder" "\
@@ -17841,7 +18091,7 @@ PATTERN regexp.
;;;***
;;;### (autoloads (mm-inline-external-body mm-extern-cache-contents)
-;;;;;; "mm-extern" "gnus/mm-extern.el" (17441 26663))
+;;;;;; "mm-extern" "gnus/mm-extern.el" (17469 13462))
;;; Generated autoloads from gnus/mm-extern.el
(autoload (quote mm-extern-cache-contents) "mm-extern" "\
@@ -17891,7 +18141,7 @@ Insert file contents of URL using `mm-url-program'.
;;;***
;;;### (autoloads (mm-uu-dissect-text-parts mm-uu-dissect) "mm-uu"
-;;;;;; "gnus/mm-uu.el" (17441 26664))
+;;;;;; "gnus/mm-uu.el" (17496 39167))
;;; Generated autoloads from gnus/mm-uu.el
(autoload (quote mm-uu-dissect) "mm-uu" "\
@@ -17911,7 +18161,7 @@ Assume text has been decoded if DECODED is non-nil.
;;;***
;;;### (autoloads (mml1991-sign mml1991-encrypt) "mml1991" "gnus/mml1991.el"
-;;;;;; (17390 27386))
+;;;;;; (17496 38719))
;;; Generated autoloads from gnus/mml1991.el
(autoload (quote mml1991-encrypt) "mml1991" "\
@@ -17928,7 +18178,7 @@ Not documented
;;;### (autoloads (mml2015-self-encrypt mml2015-sign mml2015-encrypt
;;;;;; mml2015-verify-test mml2015-verify mml2015-decrypt-test mml2015-decrypt)
-;;;;;; "mml2015" "gnus/mml2015.el" (17390 27386))
+;;;;;; "mml2015" "gnus/mml2015.el" (17496 39167))
;;; Generated autoloads from gnus/mml2015.el
(autoload (quote mml2015-decrypt) "mml2015" "\
@@ -18080,7 +18330,7 @@ Multiplication puzzle with GNU Emacs.
;;;***
-;;;### (autoloads (msb-mode) "msb" "msb.el" (17390 26943))
+;;;### (autoloads (msb-mode) "msb" "msb.el" (17569 17797))
;;; Generated autoloads from msb.el
(defvar msb-mode nil "\
@@ -18091,8 +18341,6 @@ use either \\[customize] or the function `msb-mode'.")
(custom-autoload (quote msb-mode) "msb")
-(put (quote msb-mode) (quote custom-set) (quote custom-set-minor-mode))
-
(autoload (quote msb-mode) "msb" "\
Toggle Msb mode.
With arg, turn Msb mode on if and only if arg is positive.
@@ -18410,7 +18658,7 @@ basis, this may not be accurate.
;;;***
;;;### (autoloads (mwheel-install mouse-wheel-mode) "mwheel" "mwheel.el"
-;;;;;; (17396 42167))
+;;;;;; (17505 62425))
;;; Generated autoloads from mwheel.el
(defvar mouse-wheel-mode nil "\
@@ -18421,8 +18669,6 @@ use either \\[customize] or the function `mouse-wheel-mode'.")
(custom-autoload (quote mouse-wheel-mode) "mwheel")
-(put (quote mouse-wheel-mode) (quote custom-set) (quote custom-set-minor-mode))
-
(autoload (quote mouse-wheel-mode) "mwheel" "\
Toggle mouse wheel support.
With prefix argument ARG, turn on if positive, otherwise off.
@@ -18536,7 +18782,7 @@ Open a network connection to HOST on PORT.
;;;;;; comment-kill comment-set-column comment-indent comment-indent-default
;;;;;; comment-normalize-vars comment-multi-line comment-padding
;;;;;; comment-style comment-column) "newcomment" "newcomment.el"
-;;;;;; (17383 37889))
+;;;;;; (17515 24859))
;;; Generated autoloads from newcomment.el
(defalias (quote indent-for-comment) (quote comment-indent))
@@ -18562,21 +18808,26 @@ Comments might be indented to a value smaller than this in order
not to go beyond `comment-fill-column'.")
(custom-autoload (quote comment-column) "newcomment")
+(put 'comment-column 'safe-local-variable 'integerp)
(defvar comment-start nil "\
*String to insert to start a new comment, or nil if no comment syntax.")
+(put 'comment-start 'safe-local-variable 'string-or-null-p)
(defvar comment-start-skip nil "\
*Regexp to match the start of a comment plus everything up to its body.
If there are any \\(...\\) pairs, the comment delimiter text is held to begin
at the place matched by the close of the first pair.")
+(put 'comment-start-skip 'safe-local-variable 'string-or-null-p)
(defvar comment-end-skip nil "\
Regexp to match the end of a comment plus everything up to its body.")
+(put 'comment-end-skip 'safe-local-variable 'string-or-null-p)
(defvar comment-end "" "\
*String to insert to end a new comment.
Should be an empty string if comments are terminated by end-of-line.")
+(put 'comment-end 'safe-local-variable 'string-or-null-p)
(defvar comment-indent-function (quote comment-indent-default) "\
Function to compute desired indentation for a comment.
@@ -18906,7 +19157,7 @@ If KEY is not a string, prompt for it with completion.
;;;***
;;;### (autoloads (inferior-octave) "octave-inf" "progmodes/octave-inf.el"
-;;;;;; (17390 27409))
+;;;;;; (17591 9570))
;;; Generated autoloads from progmodes/octave-inf.el
(autoload (quote inferior-octave) "octave-inf" "\
@@ -19028,7 +19279,7 @@ including a reproducible test case and send the message.
;;;***
;;;### (autoloads (edit-options list-options) "options" "obsolete/options.el"
-;;;;;; (17383 38807))
+;;;;;; (17569 17776))
;;; Generated autoloads from obsolete/options.el
(autoload (quote list-options) "options" "\
@@ -19050,10 +19301,11 @@ The Custom feature is intended to make this obsolete.
;;;***
;;;### (autoloads (org-export-icalendar-combine-agenda-files org-export-icalendar-all-agenda-files
-;;;;;; orgtbl-mode turn-on-orgtbl org-remember-handler org-remember-annotation
+;;;;;; org-export-icalendar-this-file orgtbl-mode turn-on-orgtbl
+;;;;;; org-remember-handler org-remember-apply-template org-remember-annotation
;;;;;; org-store-link org-tags-view org-diary org-todo-list org-agenda-list
-;;;;;; org-agenda org-agenda-mode org-mode) "org" "textmodes/org.el"
-;;;;;; (17454 30950))
+;;;;;; org-agenda org-global-cycle org-cycle org-mode) "org" "textmodes/org.el"
+;;;;;; (17591 9570))
;;; Generated autoloads from textmodes/org.el
(autoload (quote org-mode) "org" "\
@@ -19077,14 +19329,40 @@ The following commands are available:
\(fn)" t nil)
-(autoload (quote org-agenda-mode) "org" "\
-Mode for time-sorted view on action items in Org-mode files.
+(autoload (quote org-cycle) "org" "\
+Visibility cycling for Org-mode.
-The following commands are available:
+- When this function is called with a prefix argument, rotate the entire
+ buffer through 3 states (global cycling)
+ 1. OVERVIEW: Show only top-level headlines.
+ 2. CONTENTS: Show all headlines of all levels, but no body text.
+ 3. SHOW ALL: Show everything.
-\\{org-agenda-mode-map}
+- When point is at the beginning of a headline, rotate the subtree started
+ by this line through 3 different states (local cycling)
+ 1. FOLDED: Only the main headline is shown.
+ 2. CHILDREN: The main headline and the direct children are shown.
+ From this state, you can move to one of the children
+ and zoom in further.
+ 3. SUBTREE: Show the entire subtree, including body text.
-\(fn)" t nil)
+- When there is a numeric prefix, go up to a heading with level ARG, do
+ a `show-subtree' and return to the previous cursor position. If ARG
+ is negative, go up that many levels.
+
+- When point is not at the beginning of a headline, execute
+ `indent-relative', like TAB normally does. See the option
+ `org-cycle-emulate-tab' for details.
+
+- Special case: if point is the the beginning of the buffer and there is
+ no headline in line 1, this function will act as if called with prefix arg.
+
+\(fn &optional ARG)" t nil)
+
+(autoload (quote org-global-cycle) "org" "\
+Cycle the global visibility. For details see `org-cycle'.
+
+\(fn &optional ARG)" t nil)
(autoload (quote org-agenda) "org" "\
Dispatch agenda commands to collect entries to the agenda buffer.
@@ -19203,6 +19481,13 @@ conventions in Org-mode. This function returns such a link.
\(fn)" nil nil)
+(autoload (quote org-remember-apply-template) "org" "\
+Initialize *remember* buffer with template, invoke `org-mode'.
+This function should be placed into `remember-mode-hook' and in fact requires
+to be run from that hook to fucntion properly.
+
+\(fn)" nil nil)
+
(autoload (quote org-remember-handler) "org" "\
Store stuff from remember.el into an org file.
First prompts for an org file. If the user just presses return, the value
@@ -19249,6 +19534,13 @@ The `org-mode' table editor as a minor mode for use in other modes.
\(fn &optional ARG)" t nil)
+(autoload (quote org-export-icalendar-this-file) "org" "\
+Export current file as an iCalendar file.
+The iCalendar file will be located in the same directory as the Org-mode
+file, but with extension `.ics'.
+
+\(fn)" t nil)
+
(autoload (quote org-export-icalendar-all-agenda-files) "org" "\
Export all files in `org-agenda-files' to iCalendar .ics files.
Each iCalendar file will be located in the same directory as the Org-mode
@@ -19265,8 +19557,9 @@ The file is stored under the name `org-combined-agenda-icalendar-file'.
;;;***
;;;### (autoloads (outline-minor-mode outline-mode) "outline" "outline.el"
-;;;;;; (17425 24463))
+;;;;;; (17515 24859))
;;; Generated autoloads from outline.el
+(put 'outline-regexp 'safe-local-variable 'string-or-null-p)
(autoload (quote outline-mode) "outline" "\
Set major mode for editing outlines with selective display.
@@ -19320,6 +19613,21 @@ See the command `outline-mode' for more information on this mode.
;;;***
+;;;### (autoloads nil "paragraphs" "textmodes/paragraphs.el" (17496
+;;;;;; 38721))
+;;; Generated autoloads from textmodes/paragraphs.el
+(put 'paragraph-start 'safe-local-variable 'stringp)
+(put 'paragraph-separate 'safe-local-variable 'stringp)
+(put 'sentence-end-double-space 'safe-local-variable 'booleanp)
+(put 'sentence-end-without-period 'safe-local-variable 'booleanp)
+(put 'sentence-end-without-space 'safe-local-variable 'stringp)
+(put 'sentence-end 'safe-local-variable 'string-or-null-p)
+(put 'sentence-end-base 'safe-local-variable 'stringp)
+(put 'page-delimiter 'safe-local-variable 'stringp)
+(put 'paragraph-ignore-fill-prefix 'safe-local-variable 'booleanp)
+
+;;;***
+
;;;### (autoloads (show-paren-mode) "paren" "paren.el" (17390 26944))
;;; Generated autoloads from paren.el
@@ -19630,8 +19938,8 @@ Completion for the `chgrp' command.
;;;### (autoloads (pcomplete-shell-setup pcomplete-comint-setup pcomplete-list
;;;;;; pcomplete-help pcomplete-expand pcomplete-continue pcomplete-expand-and-complete
-;;;;;; pcomplete-reverse pcomplete) "pcomplete" "pcomplete.el" (17390
-;;;;;; 26944))
+;;;;;; pcomplete-reverse pcomplete) "pcomplete" "pcomplete.el" (17466
+;;;;;; 27845))
;;; Generated autoloads from pcomplete.el
(autoload (quote pcomplete) "pcomplete" "\
@@ -19690,7 +19998,7 @@ Setup shell-mode to use pcomplete.
;;;### (autoloads (cvs-dired-use-hook cvs-dired-action cvs-status
;;;;;; cvs-update cvs-examine cvs-quickdir cvs-checkout) "pcvs"
-;;;;;; "pcvs.el" (17390 26944))
+;;;;;; "pcvs.el" (17569 17772))
;;; Generated autoloads from pcvs.el
(autoload (quote cvs-checkout) "pcvs" "\
@@ -19767,7 +20075,7 @@ The exact behavior is determined also by `cvs-dired-use-hook'." (when (stringp d
;;;***
-;;;### (autoloads nil "pcvs-defs" "pcvs-defs.el" (17390 26944))
+;;;### (autoloads nil "pcvs-defs" "pcvs-defs.el" (17591 9570))
;;; Generated autoloads from pcvs-defs.el
(defvar cvs-global-menu (let ((m (make-sparse-keymap "PCL-CVS"))) (define-key m [status] (quote (menu-item "Directory Status" cvs-status :help "A more verbose status of a workarea"))) (define-key m [checkout] (quote (menu-item "Checkout Module" cvs-checkout :help "Check out a module from the repository"))) (define-key m [update] (quote (menu-item "Update Directory" cvs-update :help "Fetch updates from the repository"))) (define-key m [examine] (quote (menu-item "Examine Directory" cvs-examine :help "Examine the current state of a workarea"))) (fset (quote cvs-global-menu) m)))
@@ -19775,7 +20083,7 @@ The exact behavior is determined also by `cvs-dired-use-hook'." (when (stringp d
;;;***
;;;### (autoloads (perl-mode) "perl-mode" "progmodes/perl-mode.el"
-;;;;;; (17390 27409))
+;;;;;; (17499 10453))
;;; Generated autoloads from progmodes/perl-mode.el
(autoload (quote perl-mode) "perl-mode" "\
@@ -19966,8 +20274,19 @@ Import public keys in the current buffer.
;;;***
+;;;### (autoloads (pgg-gpg-symmetric-key-p) "pgg-gpg" "pgg-gpg.el"
+;;;;;; (17466 28572))
+;;; Generated autoloads from pgg-gpg.el
+
+(autoload (quote pgg-gpg-symmetric-key-p) "pgg-gpg" "\
+True if decoded armor MESSAGE-KEYS has symmetric encryption indicator.
+
+\(fn MESSAGE-KEYS)" nil nil)
+
+;;;***
+
;;;### (autoloads (picture-mode) "picture" "textmodes/picture.el"
-;;;;;; (17390 26946))
+;;;;;; (17466 28579))
;;; Generated autoloads from textmodes/picture.el
(autoload (quote picture-mode) "picture" "\
@@ -20048,7 +20367,7 @@ they are not defaultly assigned to keys.
;;;***
;;;### (autoloads (po-find-file-coding-system) "po" "textmodes/po.el"
-;;;;;; (17390 26946))
+;;;;;; (17549 4608))
;;; Generated autoloads from textmodes/po.el
(autoload (quote po-find-file-coding-system) "po" "\
@@ -20059,7 +20378,7 @@ Called through `file-coding-system-alist', before the file is visited for real.
;;;***
-;;;### (autoloads (pong) "pong" "play/pong.el" (17383 38807))
+;;;### (autoloads (pong) "pong" "play/pong.el" (17549 5052))
;;; Generated autoloads from play/pong.el
(autoload (quote pong) "pong" "\
@@ -21120,7 +21439,7 @@ If EXTENSION is any other symbol, it is ignored.
;;;***
;;;### (autoloads (jython-mode python-mode run-python) "python" "progmodes/python.el"
-;;;;;; (17390 27409))
+;;;;;; (17490 7930))
;;; Generated autoloads from progmodes/python.el
(add-to-list (quote interpreter-mode-alist) (quote ("jython" . jython-mode)))
@@ -21511,7 +21830,7 @@ Display `quickurl-list' as a formatted list using `quickurl-list-mode'.
;;;***
;;;### (autoloads (rcirc-track-minor-mode rcirc-connect rcirc) "rcirc"
-;;;;;; "net/rcirc.el" (17454 30953))
+;;;;;; "net/rcirc.el" (17569 18000))
;;; Generated autoloads from net/rcirc.el
(autoload (quote rcirc) "rcirc" "\
@@ -21535,8 +21854,6 @@ use either \\[customize] or the function `rcirc-track-minor-mode'.")
(custom-autoload (quote rcirc-track-minor-mode) "rcirc")
-(put (quote rcirc-track-minor-mode) (quote custom-set) (quote custom-set-minor-mode))
-
(autoload (quote rcirc-track-minor-mode) "rcirc" "\
Global minor mode for tracking activity in rcirc buffers.
@@ -21544,8 +21861,8 @@ Global minor mode for tracking activity in rcirc buffers.
;;;***
-;;;### (autoloads (remote-compile) "rcompile" "net/rcompile.el" (17390
-;;;;;; 26944))
+;;;### (autoloads (remote-compile) "rcompile" "net/rcompile.el" (17569
+;;;;;; 18006))
;;; Generated autoloads from net/rcompile.el
(autoload (quote remote-compile) "rcompile" "\
@@ -21557,7 +21874,7 @@ See \\[compile].
;;;***
;;;### (autoloads (re-builder) "re-builder" "emacs-lisp/re-builder.el"
-;;;;;; (17390 26938))
+;;;;;; (17505 62391))
;;; Generated autoloads from emacs-lisp/re-builder.el
(defalias (quote regexp-builder) (quote re-builder))
@@ -21569,7 +21886,7 @@ Construct a regexp interactively.
;;;***
-;;;### (autoloads (recentf-mode) "recentf" "recentf.el" (17390 26945))
+;;;### (autoloads (recentf-mode) "recentf" "recentf.el" (17466 28165))
;;; Generated autoloads from recentf.el
(defvar recentf-mode nil "\
@@ -21580,8 +21897,6 @@ use either \\[customize] or the function `recentf-mode'.")
(custom-autoload (quote recentf-mode) "recentf")
-(put (quote recentf-mode) (quote custom-set) (quote custom-set-minor-mode))
-
(autoload (quote recentf-mode) "recentf" "\
Toggle recentf mode.
With prefix argument ARG, turn on if positive, otherwise off.
@@ -21599,8 +21914,8 @@ that were operated on recently.
;;;### (autoloads (clear-rectangle string-insert-rectangle string-rectangle
;;;;;; delete-whitespace-rectangle open-rectangle insert-rectangle
;;;;;; yank-rectangle kill-rectangle extract-rectangle delete-extract-rectangle
-;;;;;; delete-rectangle move-to-column-force) "rect" "rect.el" (17390
-;;;;;; 26945))
+;;;;;; delete-rectangle move-to-column-force) "rect" "rect.el" (17466
+;;;;;; 28573))
;;; Generated autoloads from rect.el
(autoload (quote move-to-column-force) "rect" "\
@@ -21649,6 +21964,12 @@ You might prefer to use `delete-extract-rectangle' from a program.
With a prefix (or a FILL) argument, also fill lines where nothing has to be
deleted.
+If the buffer is read-only, Emacs will beep and refrain from deleting
+the rectangle, but put it in the kill ring anyway. This means that
+you can use this command to copy text from a read-only buffer.
+\(If the variable `kill-read-only-ok' is non-nil, then this won't
+even beep.)
+
\(fn START END &optional FILL)" t nil)
(autoload (quote yank-rectangle) "rect" "\
@@ -21881,6 +22202,16 @@ of master file.
;;;***
+;;;### (autoloads nil "reftex-vars" "textmodes/reftex-vars.el" (17496
+;;;;;; 38721))
+;;; Generated autoloads from textmodes/reftex-vars.el
+(put 'reftex-vref-is-default 'safe-local-variable (lambda (x) (or (stringp x) (symbolp x))))
+(put 'reftex-fref-is-default 'safe-local-variable (lambda (x) (or (stringp x) (symbolp x))))
+(put 'reftex-level-indent 'safe-local-variable 'integerp)
+(put 'reftex-guess-label-type 'safe-local-variable (lambda (x) (memq x '(nil t))))
+
+;;;***
+
;;;### (autoloads (regexp-opt-depth regexp-opt) "regexp-opt" "emacs-lisp/regexp-opt.el"
;;;;;; (17390 26938))
;;; Generated autoloads from emacs-lisp/regexp-opt.el
@@ -21998,7 +22329,7 @@ Clear out the file used for transmitting args when Emacs resumes.
;;;***
;;;### (autoloads (global-reveal-mode reveal-mode) "reveal" "reveal.el"
-;;;;;; (17356 16046))
+;;;;;; (17496 38723))
;;; Generated autoloads from reveal.el
(autoload (quote reveal-mode) "reveal" "\
@@ -22019,8 +22350,6 @@ use either \\[customize] or the function `global-reveal-mode'.")
(custom-autoload (quote global-reveal-mode) "reveal")
-(put (quote global-reveal-mode) (quote custom-set) (quote custom-set-minor-mode))
-
(autoload (quote global-reveal-mode) "reveal" "\
Toggle Reveal mode in all buffers on or off.
Reveal mode renders invisible text around point visible again.
@@ -22100,8 +22429,8 @@ variable.
;;;;;; rmail-mail-new-frame rmail-primary-inbox-list rmail-delete-after-output
;;;;;; rmail-highlight-face rmail-highlighted-headers rmail-retry-ignored-headers
;;;;;; rmail-displayed-headers rmail-ignored-headers rmail-dont-reply-to-names
-;;;;;; rmail-movemail-variant-p) "rmail" "mail/rmail.el" (17454
-;;;;;; 30835))
+;;;;;; rmail-movemail-variant-p) "rmail" "mail/rmail.el" (17524
+;;;;;; 8597))
;;; Generated autoloads from mail/rmail.el
(autoload (quote rmail-movemail-variant-p) "rmail" "\
@@ -22282,7 +22611,7 @@ If the variable `rmail-enable-mime' is non-nil, this variables is
ignored, and all the decoding work is done by a feature specified by
the variable `rmail-mime-feature'.")
-(defvar rmail-mime-charset-pattern "^content-type:[ ]*text/plain;[ \n]*charset=\"?\\([^ \n\";]+\\)\"?" "\
+(defvar rmail-mime-charset-pattern (concat "^content-type:[ ]*text/plain;" "\\(?:[ \n]*\\(?:format\\|delsp\\)=\"?[-a-z0-9]+\"?;\\)*" "[ \n]*charset=\"?\\([^ \n\";]+\\)\"?") "\
Regexp to match MIME-charset specification in a header of message.
The first parenthesized expression should match the MIME-charset name.")
@@ -23047,7 +23376,7 @@ enclosed in `(and ...)'.
;;;***
;;;### (autoloads (savehist-mode savehist-mode) "savehist" "savehist.el"
-;;;;;; (17390 26945))
+;;;;;; (17466 28165))
;;; Generated autoloads from savehist.el
(defvar savehist-mode nil "\
@@ -23200,7 +23529,7 @@ during scrolling.
;;;;;; mail-alias-file mail-default-reply-to mail-archive-file-name
;;;;;; mail-header-separator send-mail-function mail-interactive
;;;;;; mail-self-blind mail-specify-envelope-from mail-from-style)
-;;;;;; "sendmail" "mail/sendmail.el" (17390 26943))
+;;;;;; "sendmail" "mail/sendmail.el" (17569 17773))
;;; Generated autoloads from mail/sendmail.el
(defvar mail-from-style (quote angles) "\
@@ -23501,7 +23830,7 @@ Like `mail' command, but display mail buffer in another frame.
;;;***
;;;### (autoloads (server-save-buffers-kill-terminal server-mode
-;;;;;; server-start) "server" "server.el" (17446 49713))
+;;;;;; server-start) "server" "server.el" (17591 9480))
;;; Generated autoloads from server.el
(autoload (quote server-start) "server" "\
@@ -23524,8 +23853,6 @@ use either \\[customize] or the function `server-mode'.")
(custom-autoload (quote server-mode) "server")
-(put (quote server-mode) (quote custom-set) (quote custom-set-minor-mode))
-
(autoload (quote server-mode) "server" "\
Toggle Server mode.
With ARG, turn Server mode on if ARG is positive, off otherwise.
@@ -23546,7 +23873,7 @@ only these files will be asked to be saved.
;;;***
-;;;### (autoloads (ses-mode) "ses" "ses.el" (17374 21531))
+;;;### (autoloads (ses-mode) "ses" "ses.el" (17549 4607))
;;; Generated autoloads from ses.el
(autoload (quote ses-mode) "ses" "\
@@ -23565,7 +23892,7 @@ These are active only in the minibuffer, when entering or editing a formula:
;;;***
;;;### (autoloads (html-mode sgml-mode) "sgml-mode" "textmodes/sgml-mode.el"
-;;;;;; (17390 26946))
+;;;;;; (17524 8650))
;;; Generated autoloads from textmodes/sgml-mode.el
(autoload (quote sgml-mode) "sgml-mode" "\
@@ -23578,8 +23905,8 @@ An argument of N to a tag-inserting command means to wrap it around
the next N words. In Transient Mark mode, when the mark is active,
N defaults to -1, which means to wrap it around the current region.
-If you like upcased tags, put (setq sgml-transformation 'upcase) in
-your `.emacs' file.
+If you like upcased tags, put (setq sgml-transformation-function 'upcase)
+in your `.emacs' file.
Use \\[sgml-validate] to validate your document with an SGML parser.
@@ -23633,8 +23960,9 @@ To work around that, do:
;;;***
;;;### (autoloads (sh-mode) "sh-script" "progmodes/sh-script.el"
-;;;;;; (17411 11766))
+;;;;;; (17549 4607))
;;; Generated autoloads from progmodes/sh-script.el
+(put 'sh-shell 'safe-local-variable 'symbolp)
(autoload (quote sh-mode) "sh-script" "\
Major mode for editing shell scripts.
@@ -23798,7 +24126,7 @@ Set up file shadowing.
;;;***
;;;### (autoloads (shell shell-dumb-shell-regexp) "shell" "shell.el"
-;;;;;; (17390 26945))
+;;;;;; (17591 9570))
;;; Generated autoloads from shell.el
(defvar shell-dumb-shell-regexp "cmd\\(proxy\\)?\\.exe" "\
@@ -23881,6 +24209,12 @@ Turning on Sieve mode runs `sieve-mode-hook'.
;;;***
+;;;### (autoloads nil "simple" "simple.el" (17591 9719))
+;;; Generated autoloads from simple.el
+(put 'fill-prefix 'safe-local-variable 'string-or-null-p)
+
+;;;***
+
;;;### (autoloads (simula-mode) "simula" "progmodes/simula.el" (17390
;;;;;; 27409))
;;; Generated autoloads from progmodes/simula.el
@@ -23931,10 +24265,10 @@ with no arguments, if that value is non-nil.
;;;***
;;;### (autoloads (skeleton-pair-insert-maybe skeleton-insert skeleton-proxy-new
-;;;;;; define-skeleton) "skeleton" "skeleton.el" (17390 26945))
+;;;;;; define-skeleton) "skeleton" "skeleton.el" (17524 8650))
;;; Generated autoloads from skeleton.el
-(defvar skeleton-filter (quote identity) "\
+(defvar skeleton-filter-function (quote identity) "\
Function for transforming a skeleton proxy's aliases' variable value.")
(autoload (quote define-skeleton) "skeleton" "\
@@ -23978,7 +24312,7 @@ SKELETON is made up as (INTERACTOR ELEMENT ...). INTERACTOR may be nil if
not needed, a prompt-string or an expression for complex read functions.
If ELEMENT is a string or a character it gets inserted (see also
-`skeleton-transformation'). Other possibilities are:
+`skeleton-transformation-function'). Other possibilities are:
\\n go to next line and indent according to mode
_ interesting point, interregion here
@@ -24028,7 +24362,7 @@ Insert the character you type ARG times.
With no ARG, if `skeleton-pair' is non-nil, pairing can occur. If the region
is visible the pair is wrapped around it depending on `skeleton-autowrap'.
Else, if `skeleton-pair-on-word' is non-nil or we are not before or inside a
-word, and if `skeleton-pair-filter' returns nil, pairing is performed.
+word, and if `skeleton-pair-filter-function' returns nil, pairing is performed.
Pairing is also prohibited if we are right after a quoting character
such as backslash.
@@ -24041,7 +24375,7 @@ symmetrical ones, and the same character twice for the others.
;;;***
;;;### (autoloads (smerge-mode smerge-ediff) "smerge-mode" "smerge-mode.el"
-;;;;;; (17390 26945))
+;;;;;; (17496 38723))
;;; Generated autoloads from smerge-mode.el
(autoload (quote smerge-ediff) "smerge-mode" "\
@@ -24297,7 +24631,7 @@ Pick your favourite shortcuts:
;;;### (autoloads (reverse-region sort-columns sort-regexp-fields
;;;;;; sort-fields sort-numeric-fields sort-pages sort-paragraphs
-;;;;;; sort-lines sort-subr) "sort" "sort.el" (17441 26655))
+;;;;;; sort-lines sort-subr) "sort" "sort.el" (17466 28166))
;;; Generated autoloads from sort.el
(autoload (quote sort-subr) "sort" "\
@@ -24495,7 +24829,7 @@ Spam reports will be queued with the method used when
;;;***
;;;### (autoloads (speedbar-get-focus speedbar-frame-mode) "speedbar"
-;;;;;; "speedbar.el" (17418 6739))
+;;;;;; "speedbar.el" (17549 4607))
;;; Generated autoloads from speedbar.el
(defalias (quote speedbar) (quote speedbar-frame-mode))
@@ -25139,7 +25473,7 @@ Studlify-case the current buffer.
;;;***
-;;;### (autoloads (locate-library) "subr" "subr.el" (17427 36476))
+;;;### (autoloads (locate-library) "subr" "subr.el" (17591 9622))
;;; Generated autoloads from subr.el
(autoload (quote locate-library) "subr" "\
@@ -25251,7 +25585,7 @@ The variable `tab-width' controls the spacing of tab stops.
;;;;;; table-recognize table-insert-row-column table-insert-column
;;;;;; table-insert-row table-insert table-point-left-cell-hook
;;;;;; table-point-entered-cell-hook table-load-hook table-cell-map-hook)
-;;;;;; "table" "textmodes/table.el" (17379 30025))
+;;;;;; "table" "textmodes/table.el" (17549 4608))
;;; Generated autoloads from textmodes/table.el
(defvar table-cell-map-hook nil "\
@@ -25854,7 +26188,7 @@ Connect to the Emacs talk group from the current X display or tty frame.
;;;***
-;;;### (autoloads (tar-mode) "tar-mode" "tar-mode.el" (17390 26945))
+;;;### (autoloads (tar-mode) "tar-mode" "tar-mode.el" (17549 4608))
;;; Generated autoloads from tar-mode.el
(autoload (quote tar-mode) "tar-mode" "\
@@ -25878,7 +26212,7 @@ See also: variables `tar-update-datestamp' and `tar-anal-blocksize'.
;;;***
;;;### (autoloads (tcl-help-on-word inferior-tcl tcl-mode) "tcl"
-;;;;;; "progmodes/tcl.el" (17350 14840))
+;;;;;; "progmodes/tcl.el" (17478 25206))
;;; Generated autoloads from progmodes/tcl.el
(autoload (quote tcl-mode) "tcl" "\
@@ -25956,8 +26290,8 @@ Normally input is edited in Emacs and sent a line at a time.
;;;***
-;;;### (autoloads (ansi-term term make-term) "term" "term.el" (17356
-;;;;;; 16193))
+;;;### (autoloads (ansi-term term make-term) "term" "term.el" (17569
+;;;;;; 17797))
;;; Generated autoloads from term.el
(autoload (quote make-term) "term" "\
@@ -26064,7 +26398,7 @@ tetris-mode keybindings:
;;;;;; tex-start-commands tex-start-options slitex-run-command latex-run-command
;;;;;; tex-run-command tex-offer-save tex-main-file tex-first-line-header-regexp
;;;;;; tex-directory tex-shell-file-name) "tex-mode" "textmodes/tex-mode.el"
-;;;;;; (17390 26946))
+;;;;;; (17569 17779))
;;; Generated autoloads from textmodes/tex-mode.el
(defvar tex-shell-file-name nil "\
@@ -26366,7 +26700,7 @@ Major mode to edit DocTeX files.
;;;***
;;;### (autoloads (texi2info texinfo-format-region texinfo-format-buffer)
-;;;;;; "texinfmt" "textmodes/texinfmt.el" (17390 26946))
+;;;;;; "texinfmt" "textmodes/texinfmt.el" (17591 9719))
;;; Generated autoloads from textmodes/texinfmt.el
(autoload (quote texinfo-format-buffer) "texinfmt" "\
@@ -26537,11 +26871,11 @@ Minor mode for automatically correct Thai character composition.
;;;### (autoloads (list-at-point number-at-point symbol-at-point
;;;;;; sexp-at-point thing-at-point bounds-of-thing-at-point forward-thing)
-;;;;;; "thingatpt" "thingatpt.el" (17390 26946))
+;;;;;; "thingatpt" "thingatpt.el" (17591 9294))
;;; Generated autoloads from thingatpt.el
(autoload (quote forward-thing) "thingatpt" "\
-Move forward to the end of the next THING.
+Move forward to the end of the Nth next THING.
\(fn THING &optional N)" nil nil)
@@ -26594,7 +26928,7 @@ Not documented
;;;### (autoloads (thumbs-dired-setroot thumbs-dired-show thumbs-dired-show-marked
;;;;;; thumbs-show-from-dir thumbs-find-thumb) "thumbs" "thumbs.el"
-;;;;;; (17390 26946))
+;;;;;; (17591 9719))
;;; Generated autoloads from thumbs.el
(autoload (quote thumbs-find-thumb) "thumbs" "\
@@ -26866,8 +27200,15 @@ If DATE is malformed, return a time value of zeros.
;;;***
;;;### (autoloads (time-stamp-toggle-active time-stamp) "time-stamp"
-;;;;;; "time-stamp.el" (17390 26947))
+;;;;;; "time-stamp.el" (17490 7930))
;;; Generated autoloads from time-stamp.el
+(put 'time-stamp-format 'safe-local-variable 'stringp)
+(put 'time-stamp-line-limit 'safe-local-variable 'integerp)
+(put 'time-stamp-start 'safe-local-variable 'stringp)
+(put 'time-stamp-end 'safe-local-variable 'stringp)
+(put 'time-stamp-inserts-lines 'safe-local-variable 'symbolp)
+(put 'time-stamp-count 'safe-local-variable 'integerp)
+(put 'time-stamp-pattern 'safe-local-variable 'stringp)
(autoload (quote time-stamp) "time-stamp" "\
Update the time stamp string(s) in the buffer.
@@ -27223,7 +27564,7 @@ Show TODO list.
;;;### (autoloads (tool-bar-local-item-from-menu tool-bar-add-item-from-menu
;;;;;; tool-bar-local-item tool-bar-add-item toggle-tool-bar-mode-from-frame)
-;;;;;; "tool-bar" "tool-bar.el" (17446 40492))
+;;;;;; "tool-bar" "tool-bar.el" (17496 38966))
;;; Generated autoloads from tool-bar.el
(autoload (quote toggle-tool-bar-mode-from-frame) "tool-bar" "\
@@ -27344,7 +27685,7 @@ Constrain the cursor to the flow of the text.
;;;***
-;;;### (autoloads (tq-create) "tq" "emacs-lisp/tq.el" (17390 26938))
+;;;### (autoloads (tq-create) "tq" "emacs-lisp/tq.el" (17478 25158))
;;; Generated autoloads from emacs-lisp/tq.el
(autoload (quote tq-create) "tq" "\
@@ -27389,10 +27730,10 @@ the window or buffer configuration at all.
;;;***
-;;;### (autoloads (tramp-unload-tramp tramp-unload-file-name-handler-alist
-;;;;;; tramp-completion-file-name-handler tramp-file-name-handler
-;;;;;; tramp-completion-file-name-regexp tramp-file-name-regexp)
-;;;;;; "tramp" "net/tramp.el" (17396 42158))
+;;;### (autoloads (tramp-unload-tramp tramp-completion-handle-file-name-completion
+;;;;;; tramp-completion-handle-file-name-all-completions tramp-unload-file-name-handlers
+;;;;;; tramp-file-name-handler tramp-completion-file-name-regexp
+;;;;;; tramp-file-name-regexp) "tramp" "net/tramp.el" (17591 9291))
;;; Generated autoloads from net/tramp.el
(defvar tramp-unified-filenames (not (featurep (quote xemacs))) "\
@@ -27450,29 +27791,55 @@ Also see `tramp-file-name-structure'.")
(custom-autoload (quote tramp-completion-file-name-regexp) "tramp")
+(defconst tramp-completion-file-name-handler-alist (quote ((file-name-all-completions . tramp-completion-handle-file-name-all-completions) (file-name-completion . tramp-completion-handle-file-name-completion))) "\
+Alist of completion handler functions.
+Used for file names matching `tramp-file-name-regexp'. Operations not
+mentioned here will be handled by `tramp-file-name-handler-alist' or the
+normal Emacs functions.")
+
+(defun tramp-run-real-handler (operation args) "\
+Invoke normal file name handler for OPERATION.
+First arg specifies the OPERATION, second arg is a list of arguments to
+pass to the OPERATION." (let* ((inhibit-file-name-handlers (\` (tramp-file-name-handler tramp-completion-file-name-handler cygwin-mount-name-hook-function cygwin-mount-map-drive-hook-function \, (and (eq inhibit-file-name-operation operation) inhibit-file-name-handlers)))) (inhibit-file-name-operation operation)) (apply operation args)))
+
+(defun tramp-completion-run-real-handler (operation args) "\
+Invoke `tramp-file-name-handler' for OPERATION.
+First arg specifies the OPERATION, second arg is a list of arguments to
+pass to the OPERATION." (let* ((inhibit-file-name-handlers (\` (tramp-completion-file-name-handler cygwin-mount-name-hook-function cygwin-mount-map-drive-hook-function \, (and (eq inhibit-file-name-operation operation) inhibit-file-name-handlers)))) (inhibit-file-name-operation operation)) (apply operation args)))
+
(autoload (quote tramp-file-name-handler) "tramp" "\
Invoke Tramp file name handler.
Falls back to normal file name handler if no tramp file name handler exists.
\(fn OPERATION &rest ARGS)" nil nil)
-(autoload (quote tramp-completion-file-name-handler) "tramp" "\
+(defun tramp-completion-file-name-handler (operation &rest args) "\
Invoke tramp file name completion handler.
-Falls back to normal file name handler if no tramp file name handler exists.
-
-\(fn OPERATION &rest ARGS)" nil nil)
-
-(put (quote tramp-completion-file-name-handler) (quote safe-magic) t)
+Falls back to normal file name handler if no tramp file name handler exists." (let ((fn (assoc operation tramp-completion-file-name-handler-alist))) (if fn (save-match-data (apply (cdr fn) args)) (tramp-completion-run-real-handler operation args))))
-(add-to-list (quote file-name-handler-alist) (cons tramp-file-name-regexp (quote tramp-file-name-handler)))
+(defsubst tramp-register-file-name-handlers nil "\
+Add tramp file name handlers to `file-name-handler-alist'." (add-to-list (quote file-name-handler-alist) (cons tramp-file-name-regexp (quote tramp-file-name-handler))) (when (or partial-completion-mode (featurep (quote ido))) (add-to-list (quote file-name-handler-alist) (cons tramp-completion-file-name-regexp (quote tramp-completion-file-name-handler))) (put (quote tramp-completion-file-name-handler) (quote safe-magic) t)) (let ((jka (rassoc (quote jka-compr-handler) file-name-handler-alist))) (when jka (setq file-name-handler-alist (cons jka (delete jka file-name-handler-alist))))))
+(add-hook
+ 'after-init-hook
+ '(lambda () (tramp-register-file-name-handlers)))
-(autoload (quote tramp-unload-file-name-handler-alist) "tramp" "\
+(autoload (quote tramp-unload-file-name-handlers) "tramp" "\
Not documented
\(fn)" nil nil)
+(autoload (quote tramp-completion-handle-file-name-all-completions) "tramp" "\
+Like `file-name-all-completions' for partial tramp files.
+
+\(fn FILENAME DIRECTORY)" nil nil)
+
+(autoload (quote tramp-completion-handle-file-name-completion) "tramp" "\
+Like `file-name-completion' for tramp files.
+
+\(fn FILENAME DIRECTORY)" nil nil)
+
(autoload (quote tramp-unload-tramp) "tramp" "\
-Not documented
+Discard Tramp from loading remote files.
\(fn)" t nil)
@@ -27490,12 +27857,12 @@ Not documented
;;;***
;;;### (autoloads (tumme-mark-tagged-files tumme-dired-comment-files
-;;;;;; tumme-display-dired-image tumme-dired-display-external tumme-display-thumb
+;;;;;; tumme-dired-display-image tumme-dired-display-external tumme-display-thumb
;;;;;; tumme-display-thumbs-append tumme-setup-dired-keybindings
-;;;;;; tumme-jump-thumbnail-buffer tumme-tag-remove tumme-tag-files
-;;;;;; tumme-display-thumbs tumme-dired-with-window-configuration
-;;;;;; tumme-dired-insert-marked-thumbs) "tumme" "tumme.el" (17425
-;;;;;; 24462))
+;;;;;; tumme-jump-thumbnail-buffer tumme-delete-tag tumme-tag-files
+;;;;;; tumme-show-all-from-dir tumme-display-thumbs tumme-dired-with-window-configuration
+;;;;;; tumme-dired-insert-marked-thumbs) "tumme" "tumme.el" (17591
+;;;;;; 9719))
;;; Generated autoloads from tumme.el
(autoload (quote tumme-dired-insert-marked-thumbs) "tumme" "\
@@ -27537,7 +27904,22 @@ you have the dired buffer in the left window and the
With optional argument APPEND, append thumbnail to thumbnail buffer
instead of erasing it first.
-\(fn &optional ARG APPEND)" t nil)
+Option argument DO-NOT-POP controls if `pop-to-buffer' should be
+used or not. If non-nil, use `display-buffer' instead of
+`pop-to-buffer'. This is used from functions like
+`tumme-next-line-and-display' and
+`tumme-previous-line-and-display' where we do not want the
+thumbnail buffer to be selected.
+
+\(fn &optional ARG APPEND DO-NOT-POP)" t nil)
+
+(autoload (quote tumme-show-all-from-dir) "tumme" "\
+Make a preview buffer for all images in DIR and display it.
+If the number of files in DIR matching `image-file-name-regexp'
+exceeds `tumme-show-all-from-dir-max-files', a warning will be
+displayed.
+
+\(fn DIR)" t nil)
(defalias (quote tumme) (quote tumme-show-all-from-dir))
@@ -27546,7 +27928,7 @@ Tag marked file(s) in dired. With prefix ARG, tag file at point.
\(fn ARG)" t nil)
-(autoload (quote tumme-tag-remove) "tumme" "\
+(autoload (quote tumme-delete-tag) "tumme" "\
Remove tag for selected file(s).
With prefix argument ARG, remove tag from file at point.
@@ -27579,7 +27961,7 @@ Display file at point using an external viewer.
\(fn)" t nil)
-(autoload (quote tumme-display-dired-image) "tumme" "\
+(autoload (quote tumme-dired-display-image) "tumme" "\
Display current image file.
See documentation for `tumme-display-image' for more information.
With prefix argument ARG, display image in its original size.
@@ -28047,7 +28429,7 @@ Handle file: and ftp: URLs.
;;;***
;;;### (autoloads (url-open-stream url-gateway-nslookup-host) "url-gw"
-;;;;;; "url/url-gw.el" (17383 38807))
+;;;;;; "url/url-gw.el" (17490 7930))
;;; Generated autoloads from url/url-gw.el
(autoload (quote url-gateway-nslookup-host) "url-gw" "\
@@ -28065,8 +28447,8 @@ Will not make a connection if `url-gateway-unplugged' is non-nil.
;;;***
;;;### (autoloads (url-insert-file-contents url-file-local-copy url-copy-file
-;;;;;; url-handler-mode) "url-handlers" "url/url-handlers.el" (17454
-;;;;;; 30994))
+;;;;;; url-handler-mode) "url-handlers" "url/url-handlers.el" (17490
+;;;;;; 7930))
;;; Generated autoloads from url/url-handlers.el
(defvar url-handler-mode nil "\
@@ -28077,8 +28459,6 @@ use either \\[customize] or the function `url-handler-mode'.")
(custom-autoload (quote url-handler-mode) "url-handlers")
-(put (quote url-handler-mode) (quote custom-set) (quote custom-set-minor-mode))
-
(autoload (quote url-handler-mode) "url-handlers" "\
Use URL to handle URL-like file names.
@@ -28111,7 +28491,7 @@ Not documented
;;;***
;;;### (autoloads (url-http-options url-http-file-attributes url-http-file-exists-p
-;;;;;; url-http) "url-http" "url/url-http.el" (17425 24466))
+;;;;;; url-http) "url-http" "url/url-http.el" (17515 24863))
;;; Generated autoloads from url/url-http.el
(autoload (quote url-http) "url-http" "\
@@ -28164,7 +28544,7 @@ p3p
;;;***
-;;;### (autoloads (url-irc) "url-irc" "url/url-irc.el" (17454 30953))
+;;;### (autoloads (url-irc) "url-irc" "url/url-irc.el" (17591 9873))
;;; Generated autoloads from url/url-irc.el
(autoload (quote url-irc) "url-irc" "\
@@ -28490,7 +28870,7 @@ The buffer in question is current when this function is called.
;;;### (autoloads (uudecode-decode-region uudecode-decode-region-internal
;;;;;; uudecode-decode-region-external) "uudecode" "gnus/uudecode.el"
-;;;;;; (17383 38805))
+;;;;;; (17549 5046))
;;; Generated autoloads from gnus/uudecode.el
(autoload (quote uudecode-decode-region-external) "uudecode" "\
@@ -28520,7 +28900,7 @@ If FILE-NAME is non-nil, save the result to FILE-NAME.
;;;;;; vc-directory vc-merge vc-insert-headers vc-version-other-window
;;;;;; vc-diff vc-register vc-next-action vc-do-command edit-vc-file
;;;;;; with-vc-file vc-branch-part vc-trunk-p vc-before-checkin-hook
-;;;;;; vc-checkin-hook vc-checkout-hook) "vc" "vc.el" (17390 27226))
+;;;;;; vc-checkin-hook vc-checkout-hook) "vc" "vc.el" (17591 9719))
;;; Generated autoloads from vc.el
(defvar vc-checkout-hook nil "\
@@ -28882,7 +29262,7 @@ find any project directory." (let ((project-dir (getenv "PROJECTDIR")) dirs dir)
;;;***
;;;### (autoloads (vhdl-mode) "vhdl-mode" "progmodes/vhdl-mode.el"
-;;;;;; (17390 27409))
+;;;;;; (17505 62397))
;;; Generated autoloads from progmodes/vhdl-mode.el
(autoload (quote vhdl-mode) "vhdl-mode" "\
@@ -29751,7 +30131,7 @@ Turn on VIP emulation of VI.
;;;***
;;;### (autoloads (viper-mode toggle-viper-mode) "viper" "emulation/viper.el"
-;;;;;; (17401 60343))
+;;;;;; (17569 17781))
;;; Generated autoloads from emulation/viper.el
(autoload (quote toggle-viper-mode) "viper" "\
@@ -29768,7 +30148,7 @@ Turn on Viper emulation of Vi in Emacs. See Info node `(viper)Viper'.
;;;***
;;;### (autoloads (warn lwarn display-warning) "warnings" "emacs-lisp/warnings.el"
-;;;;;; (17390 26938))
+;;;;;; (17496 38727))
;;; Generated autoloads from emacs-lisp/warnings.el
(defvar warning-prefix-function nil "\
@@ -29806,6 +30186,7 @@ only, and you can use whatever symbols you like.)
LEVEL should be either :debug, :warning, :error, or :emergency
\(but see `warning-minimum-level' and `warning-minimum-log-level').
+Default is :warning.
:emergency -- a problem that will seriously impair Emacs operation soon
if you do not attend to it promptly.
@@ -29829,7 +30210,7 @@ Display a warning message made from (format MESSAGE ARGS...).
Aside from generating the message with `format',
this is equivalent to `display-warning'.
-TYPE is the warning type: either a custom group name (a symbol).
+TYPE is the warning type: either a custom group name (a symbol),
or a list of symbols whose first element is a custom group name.
\(The rest of the symbols represent subcategories and
can be whatever you like.)
@@ -29923,7 +30304,7 @@ and off otherwise.
;;;;;; whitespace-buffer whitespace-toggle-ateol-check whitespace-toggle-spacetab-check
;;;;;; whitespace-toggle-indent-check whitespace-toggle-trailing-check
;;;;;; whitespace-toggle-leading-check) "whitespace" "whitespace.el"
-;;;;;; (17390 26950))
+;;;;;; (17549 4608))
;;; Generated autoloads from whitespace.el
(autoload (quote whitespace-toggle-leading-check) "whitespace" "\
@@ -29993,8 +30374,6 @@ use either \\[customize] or the function `whitespace-global-mode'.")
(custom-autoload (quote whitespace-global-mode) "whitespace")
-(put (quote whitespace-global-mode) (quote custom-set) (quote custom-set-minor-mode))
-
(autoload (quote whitespace-global-mode) "whitespace" "\
Toggle using Whitespace mode in new buffers.
With ARG, turn the mode on iff ARG is positive.
@@ -30158,7 +30537,7 @@ With arg, turn Winner mode on if and only if arg is positive.
;;;***
;;;### (autoloads (woman-find-file woman-dired-find-file woman) "woman"
-;;;;;; "woman.el" (17390 26950))
+;;;;;; "woman.el" (17466 28571))
;;; Generated autoloads from woman.el
(autoload (quote woman) "woman" "\
@@ -30437,66 +30816,64 @@ Zone-mode does two things:
;;;***
-;;;### (autoloads nil nil ("abbrev.el" "bindings.el" "buff-menu.el"
-;;;;;; "calc/calc-aent.el" "calc/calc-alg.el" "calc/calc-arith.el"
-;;;;;; "calc/calc-bin.el" "calc/calc-comb.el" "calc/calc-cplx.el"
-;;;;;; "calc/calc-embed.el" "calc/calc-ext.el" "calc/calc-fin.el"
-;;;;;; "calc/calc-forms.el" "calc/calc-frac.el" "calc/calc-funcs.el"
-;;;;;; "calc/calc-graph.el" "calc/calc-help.el" "calc/calc-incom.el"
-;;;;;; "calc/calc-keypd.el" "calc/calc-lang.el" "calc/calc-macs.el"
-;;;;;; "calc/calc-map.el" "calc/calc-math.el" "calc/calc-misc.el"
-;;;;;; "calc/calc-mode.el" "calc/calc-mtx.el" "calc/calc-poly.el"
-;;;;;; "calc/calc-prog.el" "calc/calc-rewr.el" "calc/calc-rules.el"
-;;;;;; "calc/calc-sel.el" "calc/calc-stat.el" "calc/calc-store.el"
-;;;;;; "calc/calc-stuff.el" "calc/calc-trail.el" "calc/calc-undo.el"
-;;;;;; "calc/calc-units.el" "calc/calc-vec.el" "calc/calc-yank.el"
-;;;;;; "calc/calcalg2.el" "calc/calcalg3.el" "calc/calccomp.el"
-;;;;;; "calc/calcsel2.el" "calendar/cal-bahai.el" "calendar/cal-china.el"
-;;;;;; "calendar/cal-coptic.el" "calendar/cal-french.el" "calendar/cal-islam.el"
-;;;;;; "calendar/cal-iso.el" "calendar/cal-julian.el" "calendar/cal-mayan.el"
-;;;;;; "calendar/cal-menu.el" "calendar/cal-move.el" "calendar/cal-persia.el"
-;;;;;; "calendar/cal-tex.el" "calendar/cal-x.el" "case-table.el"
-;;;;;; "cdl.el" "cus-dep.el" "cus-load.el" "cus-start.el" "custom.el"
-;;;;;; "dframe.el" "dos-fns.el" "dos-vars.el" "dos-w32.el" "ediff-diff.el"
-;;;;;; "ediff-init.el" "ediff-merg.el" "ediff-ptch.el" "ediff-vers.el"
-;;;;;; "ediff-wind.el" "electric.el" "emacs-lisp/assoc.el" "emacs-lisp/authors.el"
+;;;### (autoloads nil nil ("bindings.el" "buff-menu.el" "calc/calc-aent.el"
+;;;;;; "calc/calc-alg.el" "calc/calc-arith.el" "calc/calc-bin.el"
+;;;;;; "calc/calc-comb.el" "calc/calc-cplx.el" "calc/calc-embed.el"
+;;;;;; "calc/calc-ext.el" "calc/calc-fin.el" "calc/calc-forms.el"
+;;;;;; "calc/calc-frac.el" "calc/calc-funcs.el" "calc/calc-graph.el"
+;;;;;; "calc/calc-help.el" "calc/calc-incom.el" "calc/calc-keypd.el"
+;;;;;; "calc/calc-lang.el" "calc/calc-macs.el" "calc/calc-map.el"
+;;;;;; "calc/calc-math.el" "calc/calc-misc.el" "calc/calc-mode.el"
+;;;;;; "calc/calc-mtx.el" "calc/calc-poly.el" "calc/calc-prog.el"
+;;;;;; "calc/calc-rewr.el" "calc/calc-rules.el" "calc/calc-sel.el"
+;;;;;; "calc/calc-stat.el" "calc/calc-store.el" "calc/calc-stuff.el"
+;;;;;; "calc/calc-trail.el" "calc/calc-undo.el" "calc/calc-units.el"
+;;;;;; "calc/calc-vec.el" "calc/calc-yank.el" "calc/calcalg2.el"
+;;;;;; "calc/calcalg3.el" "calc/calccomp.el" "calc/calcsel2.el"
+;;;;;; "calendar/cal-bahai.el" "calendar/cal-china.el" "calendar/cal-coptic.el"
+;;;;;; "calendar/cal-french.el" "calendar/cal-islam.el" "calendar/cal-iso.el"
+;;;;;; "calendar/cal-julian.el" "calendar/cal-mayan.el" "calendar/cal-menu.el"
+;;;;;; "calendar/cal-move.el" "calendar/cal-persia.el" "calendar/cal-tex.el"
+;;;;;; "calendar/cal-x.el" "case-table.el" "cdl.el" "cus-dep.el"
+;;;;;; "cus-load.el" "cus-start.el" "custom.el" "dframe.el" "dos-fns.el"
+;;;;;; "dos-vars.el" "dos-w32.el" "ediff-diff.el" "ediff-init.el"
+;;;;;; "ediff-merg.el" "ediff-ptch.el" "ediff-vers.el" "ediff-wind.el"
+;;;;;; "electric.el" "emacs-lisp/assoc.el" "emacs-lisp/authors.el"
;;;;;; "emacs-lisp/bindat.el" "emacs-lisp/byte-opt.el" "emacs-lisp/byte-run.el"
;;;;;; "emacs-lisp/cl-compat.el" "emacs-lisp/cl-extra.el" "emacs-lisp/cl-macs.el"
;;;;;; "emacs-lisp/cl-seq.el" "emacs-lisp/cl-specs.el" "emacs-lisp/cust-print.el"
-;;;;;; "emacs-lisp/ewoc.el" "emacs-lisp/find-gc.el" "emacs-lisp/float-sup.el"
-;;;;;; "emacs-lisp/gulp.el" "emacs-lisp/levents.el" "emacs-lisp/lisp-mnt.el"
-;;;;;; "emacs-lisp/lisp-mode.el" "emacs-lisp/lisp.el" "emacs-lisp/lmenu.el"
-;;;;;; "emacs-lisp/lselect.el" "emacs-lisp/lucid.el" "emacs-lisp/map-ynp.el"
-;;;;;; "emacs-lisp/regi.el" "emacs-lisp/sregex.el" "emacs-lisp/syntax.el"
-;;;;;; "emacs-lisp/tcover-ses.el" "emacs-lisp/tcover-unsafep.el"
-;;;;;; "emacs-lock.el" "emulation/cua-gmrk.el" "emulation/cua-rect.el"
-;;;;;; "emulation/edt-lk201.el" "emulation/edt-mapper.el" "emulation/edt-pc.el"
-;;;;;; "emulation/edt-vt100.el" "emulation/tpu-mapper.el" "emulation/viper-cmd.el"
-;;;;;; "emulation/viper-ex.el" "emulation/viper-init.el" "emulation/viper-keym.el"
-;;;;;; "emulation/viper-macs.el" "emulation/viper-mous.el" "emulation/viper-util.el"
-;;;;;; "env.el" "erc/erc-backend.el" "erc/erc-goodies.el" "erc/erc-ibuffer.el"
-;;;;;; "erc/erc-lang.el" "erc/erc-menu.el" "erc/erc-nicklist.el"
-;;;;;; "eshell/em-alias.el" "eshell/em-banner.el" "eshell/em-basic.el"
-;;;;;; "eshell/em-cmpl.el" "eshell/em-dirs.el" "eshell/em-glob.el"
-;;;;;; "eshell/em-hist.el" "eshell/em-ls.el" "eshell/em-pred.el"
-;;;;;; "eshell/em-prompt.el" "eshell/em-rebind.el" "eshell/em-script.el"
-;;;;;; "eshell/em-smart.el" "eshell/em-term.el" "eshell/em-unix.el"
-;;;;;; "eshell/em-xtra.el" "eshell/esh-arg.el" "eshell/esh-cmd.el"
-;;;;;; "eshell/esh-ext.el" "eshell/esh-groups.el" "eshell/esh-io.el"
-;;;;;; "eshell/esh-maint.el" "eshell/esh-module.el" "eshell/esh-opt.el"
-;;;;;; "eshell/esh-proc.el" "eshell/esh-util.el" "eshell/esh-var.el"
-;;;;;; "ezimage.el" "faces.el" "files.el" "finder-inf.el" "foldout.el"
-;;;;;; "font-core.el" "font-lock.el" "format.el" "forms-d2.el" "forms-pass.el"
-;;;;;; "frame.el" "fringe.el" "generic-x.el" "gnus/compface.el"
+;;;;;; "emacs-lisp/find-gc.el" "emacs-lisp/float-sup.el" "emacs-lisp/gulp.el"
+;;;;;; "emacs-lisp/levents.el" "emacs-lisp/lisp-mnt.el" "emacs-lisp/lisp-mode.el"
+;;;;;; "emacs-lisp/lisp.el" "emacs-lisp/lmenu.el" "emacs-lisp/lselect.el"
+;;;;;; "emacs-lisp/lucid.el" "emacs-lisp/map-ynp.el" "emacs-lisp/regi.el"
+;;;;;; "emacs-lisp/sregex.el" "emacs-lisp/syntax.el" "emacs-lisp/tcover-ses.el"
+;;;;;; "emacs-lisp/tcover-unsafep.el" "emacs-lock.el" "emulation/cua-gmrk.el"
+;;;;;; "emulation/cua-rect.el" "emulation/edt-lk201.el" "emulation/edt-mapper.el"
+;;;;;; "emulation/edt-pc.el" "emulation/edt-vt100.el" "emulation/tpu-mapper.el"
+;;;;;; "emulation/viper-cmd.el" "emulation/viper-ex.el" "emulation/viper-init.el"
+;;;;;; "emulation/viper-keym.el" "emulation/viper-macs.el" "emulation/viper-mous.el"
+;;;;;; "emulation/viper-util.el" "env.el" "erc/erc-backend.el" "erc/erc-goodies.el"
+;;;;;; "erc/erc-ibuffer.el" "erc/erc-lang.el" "erc/erc-menu.el"
+;;;;;; "erc/erc-nicklist.el" "eshell/em-alias.el" "eshell/em-banner.el"
+;;;;;; "eshell/em-basic.el" "eshell/em-cmpl.el" "eshell/em-dirs.el"
+;;;;;; "eshell/em-glob.el" "eshell/em-hist.el" "eshell/em-ls.el"
+;;;;;; "eshell/em-pred.el" "eshell/em-prompt.el" "eshell/em-rebind.el"
+;;;;;; "eshell/em-script.el" "eshell/em-smart.el" "eshell/em-term.el"
+;;;;;; "eshell/em-unix.el" "eshell/em-xtra.el" "eshell/esh-arg.el"
+;;;;;; "eshell/esh-cmd.el" "eshell/esh-ext.el" "eshell/esh-groups.el"
+;;;;;; "eshell/esh-io.el" "eshell/esh-maint.el" "eshell/esh-module.el"
+;;;;;; "eshell/esh-opt.el" "eshell/esh-proc.el" "eshell/esh-util.el"
+;;;;;; "eshell/esh-var.el" "ezimage.el" "faces.el" "files.el" "finder-inf.el"
+;;;;;; "foldout.el" "font-core.el" "font-lock.el" "format.el" "forms-d2.el"
+;;;;;; "forms-pass.el" "frame.el" "fringe.el" "generic-x.el" "gnus/compface.el"
;;;;;; "gnus/dig.el" "gnus/dns.el" "gnus/format-spec.el" "gnus/gnus-async.el"
;;;;;; "gnus/gnus-bcklg.el" "gnus/gnus-cite.el" "gnus/gnus-cus.el"
-;;;;;; "gnus/gnus-demon.el" "gnus/gnus-diary.el" "gnus/gnus-dup.el"
-;;;;;; "gnus/gnus-eform.el" "gnus/gnus-ems.el" "gnus/gnus-gl.el"
-;;;;;; "gnus/gnus-int.el" "gnus/gnus-logic.el" "gnus/gnus-mh.el"
-;;;;;; "gnus/gnus-salt.el" "gnus/gnus-score.el" "gnus/gnus-setup.el"
-;;;;;; "gnus/gnus-srvr.el" "gnus/gnus-sum.el" "gnus/gnus-topic.el"
-;;;;;; "gnus/gnus-undo.el" "gnus/gnus-util.el" "gnus/gnus-uu.el"
-;;;;;; "gnus/gnus-vm.el" "gnus/hex-util.el" "gnus/ietf-drums.el"
+;;;;;; "gnus/gnus-demon.el" "gnus/gnus-dup.el" "gnus/gnus-eform.el"
+;;;;;; "gnus/gnus-ems.el" "gnus/gnus-gl.el" "gnus/gnus-int.el" "gnus/gnus-logic.el"
+;;;;;; "gnus/gnus-mh.el" "gnus/gnus-salt.el" "gnus/gnus-score.el"
+;;;;;; "gnus/gnus-setup.el" "gnus/gnus-srvr.el" "gnus/gnus-sum.el"
+;;;;;; "gnus/gnus-topic.el" "gnus/gnus-undo.el" "gnus/gnus-util.el"
+;;;;;; "gnus/gnus-uu.el" "gnus/gnus-vm.el" "gnus/hex-util.el" "gnus/ietf-drums.el"
;;;;;; "gnus/imap.el" "gnus/legacy-gnus-agent.el" "gnus/mail-parse.el"
;;;;;; "gnus/mail-prsvr.el" "gnus/mail-source.el" "gnus/mailcap.el"
;;;;;; "gnus/messcompat.el" "gnus/mm-bodies.el" "gnus/mm-decode.el"
@@ -30552,32 +30929,30 @@ Zone-mode does two things:
;;;;;; "obsolete/sun-fns.el" "obsolete/swedish.el" "obsolete/uncompress.el"
;;;;;; "obsolete/x-apollo.el" "obsolete/x-menu.el" "patcomp.el"
;;;;;; "paths.el" "pcvs-info.el" "pcvs-parse.el" "pcvs-util.el"
-;;;;;; "pgg-def.el" "pgg-gpg.el" "pgg-parse.el" "pgg-pgp.el" "pgg-pgp5.el"
-;;;;;; "play/gamegrid.el" "play/gametree.el" "play/meese.el" "progmodes/ada-prj.el"
+;;;;;; "pgg-def.el" "pgg-parse.el" "pgg-pgp.el" "pgg-pgp5.el" "play/gamegrid.el"
+;;;;;; "play/gametree.el" "play/meese.el" "progmodes/ada-prj.el"
;;;;;; "progmodes/cc-align.el" "progmodes/cc-awk.el" "progmodes/cc-bytecomp.el"
-;;;;;; "progmodes/cc-cmds.el" "progmodes/cc-compat.el" "progmodes/cc-defs.el"
-;;;;;; "progmodes/cc-fonts.el" "progmodes/cc-langs.el" "progmodes/cc-menus.el"
-;;;;;; "progmodes/cc-vars.el" "progmodes/ebnf-abn.el" "progmodes/ebnf-bnf.el"
-;;;;;; "progmodes/ebnf-dtd.el" "progmodes/ebnf-ebx.el" "progmodes/ebnf-iso.el"
-;;;;;; "progmodes/ebnf-otz.el" "progmodes/ebnf-yac.el" "progmodes/idlw-complete-structtag.el"
-;;;;;; "progmodes/idlw-help.el" "progmodes/idlw-rinfo.el" "progmodes/idlw-toolbar.el"
-;;;;;; "progmodes/mantemp.el" "progmodes/xscheme.el" "register.el"
-;;;;;; "replace.el" "rfn-eshadow.el" "s-region.el" "saveplace.el"
-;;;;;; "sb-image.el" "scroll-bar.el" "select.el" "simple.el" "soundex.el"
-;;;;;; "startup.el" "subdirs.el" "tempo.el" "term/AT386.el" "term/apollo.el"
-;;;;;; "term/bobcat.el" "term/cygwin.el" "term/internal.el" "term/iris-ansi.el"
-;;;;;; "term/linux.el" "term/lk201.el" "term/mac-win.el" "term/news.el"
-;;;;;; "term/pc-win.el" "term/rxvt.el" "term/sun-mouse.el" "term/sun.el"
-;;;;;; "term/sup-mouse.el" "term/tty-colors.el" "term/tvi970.el"
+;;;;;; "progmodes/cc-cmds.el" "progmodes/cc-defs.el" "progmodes/cc-fonts.el"
+;;;;;; "progmodes/cc-langs.el" "progmodes/cc-menus.el" "progmodes/ebnf-abn.el"
+;;;;;; "progmodes/ebnf-bnf.el" "progmodes/ebnf-dtd.el" "progmodes/ebnf-ebx.el"
+;;;;;; "progmodes/ebnf-iso.el" "progmodes/ebnf-otz.el" "progmodes/ebnf-yac.el"
+;;;;;; "progmodes/idlw-complete-structtag.el" "progmodes/idlw-help.el"
+;;;;;; "progmodes/idlw-toolbar.el" "progmodes/mantemp.el" "progmodes/xscheme.el"
+;;;;;; "register.el" "replace.el" "rfn-eshadow.el" "s-region.el"
+;;;;;; "saveplace.el" "sb-image.el" "scroll-bar.el" "select.el"
+;;;;;; "soundex.el" "startup.el" "subdirs.el" "tempo.el" "term/AT386.el"
+;;;;;; "term/apollo.el" "term/bobcat.el" "term/cygwin.el" "term/internal.el"
+;;;;;; "term/iris-ansi.el" "term/linux.el" "term/lk201.el" "term/mac-win.el"
+;;;;;; "term/news.el" "term/pc-win.el" "term/rxvt.el" "term/sun-mouse.el"
+;;;;;; "term/sun.el" "term/sup-mouse.el" "term/tty-colors.el" "term/tvi970.el"
;;;;;; "term/vt100.el" "term/vt102.el" "term/vt125.el" "term/vt200.el"
;;;;;; "term/vt201.el" "term/vt220.el" "term/vt240.el" "term/vt300.el"
;;;;;; "term/vt320.el" "term/vt400.el" "term/vt420.el" "term/w32-win.el"
;;;;;; "term/wyse50.el" "term/x-win.el" "term/xterm.el" "termdev.el"
-;;;;;; "textmodes/bib-mode.el" "textmodes/fill.el" "textmodes/makeinfo.el"
-;;;;;; "textmodes/page-ext.el" "textmodes/page.el" "textmodes/paragraphs.el"
-;;;;;; "textmodes/refbib.el" "textmodes/refer.el" "textmodes/reftex-auc.el"
-;;;;;; "textmodes/reftex-dcr.el" "textmodes/reftex-ref.el" "textmodes/reftex-sel.el"
-;;;;;; "textmodes/reftex-toc.el" "textmodes/reftex-vars.el" "textmodes/texnfo-upd.el"
+;;;;;; "textmodes/bib-mode.el" "textmodes/makeinfo.el" "textmodes/page-ext.el"
+;;;;;; "textmodes/page.el" "textmodes/refbib.el" "textmodes/refer.el"
+;;;;;; "textmodes/reftex-auc.el" "textmodes/reftex-dcr.el" "textmodes/reftex-ref.el"
+;;;;;; "textmodes/reftex-sel.el" "textmodes/reftex-toc.el" "textmodes/texnfo-upd.el"
;;;;;; "textmodes/text-mode.el" "timezone.el" "tooltip.el" "tree-widget.el"
;;;;;; "uniquify.el" "url/url-about.el" "url/url-cookie.el" "url/url-dired.el"
;;;;;; "url/url-expand.el" "url/url-ftp.el" "url/url-history.el"
@@ -30585,7 +30960,7 @@ Zone-mode does two things:
;;;;;; "url/url-nfs.el" "url/url-proxy.el" "url/url-vars.el" "url/vc-dav.el"
;;;;;; "vc-hooks.el" "vcursor.el" "version.el" "vms-patch.el" "vmsproc.el"
;;;;;; "vt-control.el" "vt100-led.el" "w32-fns.el" "w32-vars.el"
-;;;;;; "widget.el" "window.el" "x-dnd.el") (17454 45486 164469))
+;;;;;; "widget.el" "window.el" "x-dnd.el") (17591 11825 253467))
;;;***
diff --git a/lisp/locate.el b/lisp/locate.el
index 702ae98ecd..5df695d59b 100644
--- a/lisp/locate.el
+++ b/lisp/locate.el
@@ -191,17 +191,37 @@ This should contain the \"-l\" switch, but not the \"-F\" or \"-b\" switches."
:group 'locate
:version "22.1")
+(defcustom locate-update-when-revert nil
+ "This option affects how the *Locate* buffer gets reverted.
+If non-nil, offer to update the locate database when reverting that buffer.
+\(Normally, you need to have root privileges for this to work. See the
+option `locate-update-path'.)
+If nil, reverting does not update the locate database."
+ :type 'boolean
+ :group 'locate
+ :version "22.1")
+
(defcustom locate-update-command "updatedb"
"The executable program used to update the locate database."
:type 'string
:group 'locate)
+(defcustom locate-update-path "/"
+ "The default directory from where `locate-update-command' is called.
+Usually, root permissions are required to run that command. This
+can be achieved by setting this option to \"/su::\" or \"/sudo::\"
+\(if you have the appropriate authority). If your current user
+permissions are sufficient to run the command, you can set this
+option to \"/\"."
+ :type 'string
+ :group 'locate
+ :version "22.1")
+
(defcustom locate-prompt-for-command nil
"If non-nil, the `locate' command prompts for a command to run.
Otherwise, that behavior is invoked via a prefix argument."
:group 'locate
- :type 'boolean
- )
+ :type 'boolean)
;; Functions
@@ -557,12 +577,18 @@ do not work in subdirectories.
;; From Stephen Eglen <[email protected]>
(defun locate-update (ignore1 ignore2)
- "Update the locate database.
-Database is updated using the shell command in `locate-update-command'."
+ "Revert the *Locate* buffer.
+If `locate-update-when-revert' is non-nil, offer to update the
+locate database using the shell command in `locate-update-command'."
(let ((str (car locate-history-list)))
- (cond ((yes-or-no-p "Update locate database (may take a few seconds)? ")
- (shell-command locate-update-command)
- (locate str)))))
+ (and locate-update-when-revert
+ (yes-or-no-p "Update locate database (may take a few seconds)? ")
+ ;; `expand-file-name' is used in order to autoload Tramp if
+ ;; necessary. It cannot be loaded when `default-directory'
+ ;; is remote.
+ (let ((default-directory (expand-file-name locate-update-path)))
+ (shell-command locate-update-command)))
+ (locate str)))
;;; Modified three functions from `dired.el':
;;; dired-find-directory,
diff --git a/lisp/longlines.el b/lisp/longlines.el
index b11d4e6fab..9da3de217a 100644
--- a/lisp/longlines.el
+++ b/lisp/longlines.el
@@ -396,16 +396,11 @@ that has changed."
"Perform line wrapping on the parts of the buffer that have changed.
This is called by `post-command-hook' after each command."
(when longlines-wrap-beg
- (cond ((or (eq this-command 'yank)
- (eq this-command 'yank-pop))
- (longlines-decode-region (point) (mark t))
- (if longlines-showing
- (longlines-show-region (point) (mark t))))
- ((and (eq this-command 'newline) longlines-showing)
- (save-excursion
- (if (search-backward "\n" nil t)
- (longlines-show-region
- (match-beginning 0) (match-end 0))))))
+ (if (or (eq this-command 'yank)
+ (eq this-command 'yank-pop))
+ (longlines-decode-region (point) (mark t)))
+ (if longlines-showing
+ (longlines-show-region longlines-wrap-beg longlines-wrap-end))
(unless (or (eq this-command 'fill-paragraph)
(eq this-command 'fill-region))
(longlines-wrap-region longlines-wrap-beg longlines-wrap-end))
diff --git a/lisp/mh-e/ChangeLog b/lisp/mh-e/ChangeLog
index a390589dd0..a49e3b2a4a 100644
--- a/lisp/mh-e/ChangeLog
+++ b/lisp/mh-e/ChangeLog
@@ -1,3 +1,42 @@
+2006-07-03 Bill Wohler <[email protected]>
+
+ Release MH-E version 8.0.2.
+
+ * mh-e.el (Version, mh-version): Update for release 8.0.2.
+
+2006-07-03 Ted Phelps <[email protected]> (tiny change)
+
+ * mh-tool-bar.el (mh-tool-bar-define): Fix XEmacs' vector-list so
+ it refers to the icons in mh-xemacs-icon-map instead of trying to
+ declare the icons in situ. This allows mh-tool-bar.el to be
+ compiled under XEmacs. Remove initial value for
+ mh-tool-bar-folder-buttons, mh-tool-bar-show-buttons,
+ mh-tool-bar-letter-buttons. The MH-E icons now appear in XEmacs.
+ In mh-tool-bar-init, check for mh-xemacs-use-tool-bar-flag sooner.
+ This allows MH-E to be used in XEmacs in a tty (closes SF
+ #1506846).
+
+2006-07-03 Bill Wohler <[email protected]>
+
+ * mh-e.el: Require mh-buffers and mh-compat before mh-xemacs now
+ that mh-xemacs needs functions in mh-compat.
+
+2006-06-29 Bill Wohler <[email protected]>
+
+ * mh-search.el (mh-search, mh-index-group-by-folder): Add "the" in
+ loop construct to be consistent with other loops, and because
+ edebug doesn't work without it.
+
+2006-06-29 Ted Phelps <[email protected]> (tiny change)
+
+ * mh-search.el (mh-folder-exists-p): Strip + from folder to avoid
+ redundant +s in regexp (closes SF #1514424).
+
+2006-06-29 Sergey Poznyakoff <[email protected]> (tiny change)
+
+ * mh-mime.el (mh-mime-save-parts): Add -store option to
+ mhn (closes SF #1513140).
+
2006-06-20 Bill Wohler <[email protected]>
Release MH-E version 8.0.1.
diff --git a/lisp/mh-e/mh-e.el b/lisp/mh-e/mh-e.el
index 80f0fedeb6..ba48a84ad9 100644
--- a/lisp/mh-e/mh-e.el
+++ b/lisp/mh-e/mh-e.el
@@ -6,7 +6,7 @@
;; Author: Bill Wohler <[email protected]>
;; Maintainer: Bill Wohler <[email protected]>
-;; Version: 8.0.1
+;; Version: 8.0.2
;; Keywords: mail
;; This file is part of GNU Emacs.
@@ -96,6 +96,9 @@
(mh-require-cl)
+(require 'mh-buffers)
+(require 'mh-compat)
+
(eval-and-compile
(defvar mh-xemacs-flag (featurep 'xemacs)
"Non-nil means the current Emacs is XEmacs."))
@@ -103,9 +106,6 @@
(mh-do-in-xemacs
(require 'mh-xemacs))
-(require 'mh-buffers)
-(require 'mh-compat)
-
(mh-font-lock-add-keywords
'emacs-lisp-mode
(eval-when-compile
@@ -133,7 +133,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.0.1" "Version number of MH-E.")
+(defconst mh-version "8.0.2" "Version number of MH-E.")
;; Variants
diff --git a/lisp/mh-e/mh-mime.el b/lisp/mh-e/mh-mime.el
index c05e867a2b..a66db002b6 100644
--- a/lisp/mh-e/mh-mime.el
+++ b/lisp/mh-e/mh-mime.el
@@ -415,7 +415,9 @@ do the work."
(let ((initial-size (mh-truncate-log-buffer)))
(apply 'call-process
(expand-file-name command mh-progs) nil t nil
- (mh-list-to-string (list folder msg "-auto")))
+ (mh-list-to-string (list folder msg "-auto"
+ (if (not (mh-variant-p 'nmh))
+ "-store"))))
(if (> (buffer-size) initial-size)
(save-window-excursion
(switch-to-buffer-other-window mh-log-buffer)
diff --git a/lisp/mh-e/mh-search.el b/lisp/mh-e/mh-search.el
index 62c130bb90..191e42f734 100644
--- a/lisp/mh-e/mh-search.el
+++ b/lisp/mh-e/mh-search.el
@@ -318,9 +318,9 @@ folder containing the index search results."
(message "%s found %s matches in %s folders"
(upcase-initials (symbol-name mh-searcher))
- (loop for msg-hash being hash-values of mh-index-data
+ (loop for msg-hash being the hash-values of mh-index-data
sum (hash-table-count msg-hash))
- (loop for msg-hash being hash-values of mh-index-data
+ (loop for msg-hash being the hash-values of mh-index-data
count (> (hash-table-count msg-hash) 0)))))))
;; Shush compiler.
@@ -1362,7 +1362,7 @@ being the list of messages originally from that folder."
(save-excursion
(goto-char (point-min))
(let ((result-table (make-hash-table :test #'equal)))
- (loop for msg being hash-keys of mh-index-msg-checksum-map
+ (loop for msg being the hash-keys of mh-index-msg-checksum-map
do (push msg (gethash (car (gethash
(gethash msg mh-index-msg-checksum-map)
mh-index-checksum-origin-map))
@@ -1524,7 +1524,8 @@ construct the base name."
(with-temp-buffer
(mh-exec-cmd-output "folder" nil "-fast" "-nocreate" folder)
(goto-char (point-min))
- (looking-at (format "+?%s" folder))))))
+ ;; Strip + from folder; use optional + in regexp.
+ (looking-at (format "+?%s" (substring folder 1)))))))
(defun mh-msg-exists-p (msg folder)
"Check if MSG exists in FOLDER."
diff --git a/lisp/mh-e/mh-tool-bar.el b/lisp/mh-e/mh-tool-bar.el
index 9b18848bd1..a513142075 100644
--- a/lisp/mh-e/mh-tool-bar.el
+++ b/lisp/mh-e/mh-tool-bar.el
@@ -149,7 +149,7 @@ where,
(name-str (symbol-name name))
(icon (nth 2 button))
(xemacs-icon (mh-do-in-xemacs
- (cdr (assoc (intern icon) mh-xemacs-icon-map))))
+ `(cdr (assoc (quote ,(intern icon)) mh-xemacs-icon-map))))
(full-doc (nth 3 button))
(doc (if (string-match "\\(.*\\)\n" full-doc)
(match-string 1 full-doc)
@@ -189,7 +189,7 @@ where,
(t 'folder-buttons)))
(docs (cond ((eq mbuttons 'letter-buttons) 'letter-docs)
((eq mbuttons 'folder-buttons) 'folder-docs))))
- (add-to-list vector-list `[,xemacs-icon ,function t ,full-doc])
+ (add-to-list vector-list `(vector ,xemacs-icon ',function t ,full-doc))
(add-to-list
setter `(when (member ',name ,list)
(mh-funcall-if-exists
@@ -288,27 +288,28 @@ Use SEQUENCE-MAP if display is limited; DEFAULT-MAP otherwise."
;; XEmacs specific code
(mh-do-in-xemacs
(defvar mh-tool-bar-folder-vector-map
- ',(loop for button in folder-buttons
- for vector in folder-vectors
- collect (cons button vector)))
+ (list ,@(loop for button in folder-buttons
+ for vector in folder-vectors
+ collect `(cons ',button ,vector))))
(defvar mh-tool-bar-show-vector-map
- ',(loop for button in show-buttons
- for vector in show-vectors
- collect (cons button vector)))
+ (list ,@(loop for button in show-buttons
+ for vector in show-vectors
+ collect `(cons ',button ,vector))))
(defvar mh-tool-bar-letter-vector-map
- ',(loop for button in letter-buttons
- for vector in letter-vectors
- collect (cons button vector)))
- (defvar mh-tool-bar-folder-buttons nil)
- (defvar mh-tool-bar-show-buttons nil)
- (defvar mh-tool-bar-letter-buttons nil)
+ (list ,@(loop for button in letter-buttons
+ for vector in letter-vectors
+ collect `(cons ',button ,vector))))
+ (defvar mh-tool-bar-folder-buttons)
+ (defvar mh-tool-bar-show-buttons)
+ (defvar mh-tool-bar-letter-buttons)
;; Custom setter functions
(defun mh-tool-bar-letter-buttons-set (symbol value)
(set-default symbol value)
(when mh-xemacs-has-tool-bar-flag
(setq mh-tool-bar-letter-buttons
(loop for b in value
- collect (cdr (assoc b mh-tool-bar-letter-vector-map))))))
+ collect (cdr
+ (assoc b mh-tool-bar-letter-vector-map))))))
(defun mh-tool-bar-folder-buttons-set (symbol value)
(set-default symbol value)
(when mh-xemacs-has-tool-bar-flag
@@ -320,13 +321,16 @@ Use SEQUENCE-MAP if display is limited; DEFAULT-MAP otherwise."
collect (cdr (assoc b mh-tool-bar-show-vector-map))))))
(defun mh-tool-bar-init (mode)
"Install tool bar in MODE."
- (let ((tool-bar (cond ((eq mode :folder) mh-tool-bar-folder-buttons)
- ((eq mode :letter) mh-tool-bar-letter-buttons)
- ((eq mode :show) mh-tool-bar-show-buttons)))
- (height 37)
- (width 40)
- (buffer (current-buffer)))
- (when mh-xemacs-use-tool-bar-flag
+ (when mh-xemacs-use-tool-bar-flag
+ (let ((tool-bar (cond ((eq mode :folder)
+ mh-tool-bar-folder-buttons)
+ ((eq mode :letter)
+ mh-tool-bar-letter-buttons)
+ ((eq mode :show)
+ mh-tool-bar-show-buttons)))
+ (height 37)
+ (width 40)
+ (buffer (current-buffer)))
(cond
((eq mh-xemacs-tool-bar-position 'top)
(set-specifier top-toolbar tool-bar buffer)
@@ -367,8 +371,9 @@ Use SEQUENCE-MAP if display is limited; DEFAULT-MAP otherwise."
for y in letter-docs
collect `(const :tag ,y ,x)))
;;:package-version '(MH-E "7.1")
- ))))
+ ))))
+;; The icon names are duplicated in the Makefile and mh-xemacs.el.
(mh-tool-bar-define
((:folder mh-inc-folder mh-mime-save-parts
mh-previous-undeleted-msg mh-page-msg
diff --git a/lisp/net/goto-addr.el b/lisp/net/goto-addr.el
index 89695b61b3..44970f7aaf 100644
--- a/lisp/net/goto-addr.el
+++ b/lisp/net/goto-addr.el
@@ -250,6 +250,7 @@ Also fontifies the buffer appropriately (see `goto-address-fontify-p' and
(interactive)
(if goto-address-highlight-p
(goto-address-fontify)))
+;;;###autoload(put 'goto-address 'safe-local-eval-function t)
(provide 'goto-addr)
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el
index c94ec48b76..cb5a6d7533 100644
--- a/lisp/net/tramp.el
+++ b/lisp/net/tramp.el
@@ -3572,7 +3572,8 @@ This will break if COMMAND prints a newline, followed by the value of
;; for `find-grep-dired' and `find-name-dired' in Emacs 22.
(if (tramp-tramp-file-p default-directory)
(with-parsed-tramp-file-name default-directory nil
- (let ((asynchronous (string-match "[ \t]*&[ \t]*\\'" command))
+ (let ((curbuf (current-buffer))
+ (asynchronous (string-match "[ \t]*&[ \t]*\\'" command))
status)
(unless output-buffer
(setq output-buffer
@@ -3674,6 +3675,7 @@ This will break if COMMAND prints a newline, followed by the value of
(unless (zerop (buffer-size))
(when tramp-display-shell-command-buffer
(display-buffer output-buffer)))
+ (set-buffer curbuf)
status))
;; The following is only executed if something strange was
;; happening. Emit a helpful message and do it anyway.
diff --git a/lisp/pcvs-defs.el b/lisp/pcvs-defs.el
index 127a550b28..e2c6396bdb 100644
--- a/lisp/pcvs-defs.el
+++ b/lisp/pcvs-defs.el
@@ -239,7 +239,10 @@ The CMD used for `cvs-mode-commit' is \"message\". For that special
This expression will be evaluated in an environment where DIR is set to
the directory name of the cvs buffer.")
-(defvar cvs-temp-buffer-name '(expand-file-name " *cvs-tmp*" dir)
+(defvar cvs-temp-buffer-name
+ ;; Was '(expand-file-name " *cvs-tmp*" dir), but that causes them to
+ ;; become non-hidden if uniquification is done `forward'.
+ " *cvs-tmp*"
"*Name of the cvs temporary buffer.
Output from cvs is placed here for asynchronous commands.")
diff --git a/lisp/play/dunnet.el b/lisp/play/dunnet.el
index 2c6a75da03..ae8a62c48f 100644
--- a/lisp/play/dunnet.el
+++ b/lisp/play/dunnet.el
@@ -1304,7 +1304,7 @@ for a moment, then straighten yourself up.
(condition-case nil
(dun-rot13)
(error (yank)))
- (eval-current-buffer)
+ (eval-buffer)
(kill-buffer (current-buffer)))
(switch-to-buffer old-buffer)
result))
@@ -2576,7 +2576,7 @@ treasures for points?" "4" "four")
(insert ")")
(setq eval-error nil)
(condition-case nil
- (eval-current-buffer)
+ (eval-buffer)
(error (setq eval-error t)))
(kill-buffer (current-buffer))
(switch-to-buffer "*dungeon*")
diff --git a/lisp/play/hanoi.el b/lisp/play/hanoi.el
index 296ca82b64..40a96f4e6c 100644
--- a/lisp/play/hanoi.el
+++ b/lisp/play/hanoi.el
@@ -399,9 +399,8 @@ BITS must be of length nrings. Start at START-TIME."
;; update display and pause, quitting with a pithy comment if the user
;; hits a key.
(defun hanoi-sit-for (seconds)
- (sit-for seconds)
- (if (input-pending-p)
- (signal 'quit '("I can tell you've had enough"))))
+ (unless (sit-for seconds)
+ (signal 'quit '("I can tell you've had enough"))))
;; move ring to a given buffer position and update ring's car.
(defun hanoi-ring-to-pos (ring pos)
diff --git a/lisp/play/landmark.el b/lisp/play/landmark.el
index 7ec6f9bb18..1bd1c7ec48 100644
--- a/lisp/play/landmark.el
+++ b/lisp/play/landmark.el
@@ -9,7 +9,7 @@
;;;_* Usage
;;; Just type
-;;; M-x eval-current-buffer
+;;; M-x eval-buffer
;;; M-x lm-test-run
diff --git a/lisp/progmodes/ada-mode.el b/lisp/progmodes/ada-mode.el
index d7e1ecb67e..9dc74264da 100644
--- a/lisp/progmodes/ada-mode.el
+++ b/lisp/progmodes/ada-mode.el
@@ -438,7 +438,7 @@ An example is:
(defcustom ada-which-compiler 'gnat
"*Name of the compiler to use.
-This will determine what features are made available through the ada-mode.
+This will determine what features are made available through the Ada mode.
The possible choices are :
`gnat': Use Ada Core Technologies' Gnat compiler. Add some cross-referencing
features
@@ -460,7 +460,7 @@ The extensions should include a `.' if needed.")
The extensions should include a `.' if needed.")
(defvar ada-mode-menu (make-sparse-keymap "Ada")
- "Menu for ada-mode.")
+ "Menu for Ada mode.")
(defvar ada-mode-map (make-sparse-keymap)
"Local keymap used for Ada mode.")
@@ -728,7 +728,7 @@ each type of entity that can be found in an Ada file.")
;;------------------------------------------------------------
(defun ada-compile-mouse-goto-error ()
- "Mouse interface for ada-compile-goto-error."
+ "Mouse interface for `ada-compile-goto-error'."
(interactive)
(mouse-set-point last-input-event)
(ada-compile-goto-error (point))
@@ -906,7 +906,7 @@ declares it as a word constituent."
(setq change (cdr change)))))))
(defun ada-deactivate-properties ()
- "Deactivate ada-mode's properties handling.
+ "Deactivate Ada mode's properties handling.
This would be a duplicate of font-lock if both are used at the same time."
(remove-hook 'after-change-functions 'ada-after-change-function t))
@@ -977,7 +977,7 @@ If parse-result is non-nil, use is instead of calling `parse-partial-sexp'."
;;------------------------------------------------------------------
;; Contextual menus
-;; The Ada-mode comes with contextual menus, bound by default to the right
+;; The Ada mode comes with contextual menus, bound by default to the right
;; mouse button.
;; Add items to this menu by modifying `ada-contextual-menu'. Note that the
;; variable `ada-contextual-menu-on-identifier' is set automatically to t
@@ -1419,7 +1419,7 @@ If you use ada-xref.el:
;;-----------------------------------------------------------------
;; auto-casing
-;; Since Ada is case-insensitive, the Ada-mode provides an extensive set of
+;; Since Ada is case-insensitive, the Ada mode provides an extensive set of
;; functions to auto-case identifiers, keywords, ...
;; The basic rules for autocasing are defined through the variables
;; `ada-case-attribute', `ada-case-keyword' and `ada-case-identifier'. These
@@ -1766,7 +1766,7 @@ ARG is ignored, and is there for compatibility with `capitalize-word' only."
(defun ada-no-auto-case (&optional arg)
"Do nothing.
-This function can be used for the auto-casing variables in the ada-mode, to
+This function can be used for the auto-casing variables in the Ada mode, to
adapt to unusal auto-casing schemes. Since it does nothing, you can for
instance use it for `ada-case-identifier' if you don't want any special
auto-casing for identifiers, whereas keywords have to be lower-cased.
@@ -2122,7 +2122,7 @@ Return the equivalent internal parameter list."
;; that are evaluated)
;; Thus the total indentation for a line is the column number of the reference
;; position plus whatever value the evaluation of the second element provides.
-;; This mechanism is used so that the ada-mode can "explain" how the
+;; This mechanism is used so that the Ada mode can "explain" how the
;; indentation was calculated, by showing which variables were used.
;;
;; The indentation itself is done in only one pass: first we try to guess in
@@ -5268,7 +5268,7 @@ Use `M-x widen' to go back to the full visibility for the buffer."
;; ---------------------------------------------------------
;; Automatic generation of code
-;; The Ada-mode has a set of function to automatically generate a subprogram
+;; The Ada mode has a set of function to automatically generate a subprogram
;; or package body from its spec.
;; These function only use a primary and basic algorithm, this could use a
;; lot of improvement.
@@ -5440,7 +5440,7 @@ This function typically is to be hooked into `ff-file-created-hooks'."
;; Read the special cases for exceptions
(ada-case-read-exceptions)
-;; Setup auto-loading of the other ada-mode files.
+;; Setup auto-loading of the other Ada mode files.
(if (equal ada-which-compiler 'gnat)
(progn
(autoload 'ada-change-prj "ada-xref" nil t)
diff --git a/lisp/progmodes/cc-awk.el b/lisp/progmodes/cc-awk.el
index 284a2edbe9..c93843f3f8 100644
--- a/lisp/progmodes/cc-awk.el
+++ b/lisp/progmodes/cc-awk.el
@@ -32,7 +32,7 @@
;; 1. The AWK Mode syntax table.
;; 2. Regular expressions for analysing AWK code.
;; 3. Indentation calculation stuff ("c-awk-NL-prop text-property").
-;; 4. Syntax-table property/font-locking stuff, but not including the
+;; 4. Syntax-table property/font-locking stuff, including the
;; font-lock-keywords setting.
;; 5. The AWK Mode before/after-change-functions.
;; 6. AWK Mode specific versions of commands like beginning-of-defun.
@@ -107,7 +107,8 @@
(eval-and-compile
(defconst c-awk-escaped-nl "\\\\[\n\r]"))
;; Matches an escaped newline.
-(defconst c-awk-escaped-nls* (concat "\\(" c-awk-escaped-nl "\\)*"))
+(eval-and-compile
+ (defconst c-awk-escaped-nls* (concat "\\(" c-awk-escaped-nl "\\)*")))
;; Matches a possibly empty sequence of escaped newlines. Used in
;; awk-font-lock-keywords.
;; (defconst c-awk-escaped-nls*-with-space*
@@ -852,6 +853,96 @@
(c-awk-advise-fl-for-awk-region lazy-lock-defer-rest-after-change)
(c-awk-advise-fl-for-awk-region lazy-lock-defer-line-after-change)
+;; Awk regexps written with help from Peter Galbraith
+;; Take GNU Emacs's 'words out of the following regexp-opts. They dont work
+;; in Xemacs 21.4.4. acm 2002/9/19.
+(defconst awk-font-lock-keywords
+ (eval-when-compile
+ (list
+ ;; Function names.
+ '("^\\s *\\(func\\(tion\\)?\\)\\>\\s *\\(\\sw+\\)?"
+ (1 font-lock-keyword-face) (3 font-lock-function-name-face nil t))
+ ;;
+ ;; Variable names.
+ (cons
+ (concat "\\<"
+ (regexp-opt
+ '("ARGC" "ARGIND" "ARGV" "BINMODE" "CONVFMT" "ENVIRON"
+ "ERRNO" "FIELDWIDTHS" "FILENAME" "FNR" "FS" "IGNORECASE"
+ "LINT" "NF" "NR" "OFMT" "OFS" "ORS" "PROCINFO" "RLENGTH"
+ "RS" "RSTART" "RT" "SUBSEP" "TEXTDOMAIN") t) "\\>")
+ 'font-lock-variable-name-face)
+
+ ;; Special file names. (acm, 2002/7/22)
+ ;; The following regexp was created by first evaluating this in GNU Emacs 21.1:
+ ;; (regexp-opt '("/dev/stdin" "/dev/stdout" "/dev/stderr" "/dev/fd/n" "/dev/pid"
+ ;; "/dev/ppid" "/dev/pgrpid" "/dev/user") 'words)
+ ;; , removing the "?:" from each "\\(?:" (for backward compatibility with older Emacsen)
+ ;; , replacing the "n" in "dev/fd/n" with "[0-9]+"
+ ;; , removing the unwanted \\< at the beginning, and finally filling out the
+ ;; regexp so that a " must come before, and either a " or heuristic stuff after.
+ ;; The surrounding quotes are fontified along with the filename, since, semantically,
+ ;; they are an indivisible unit.
+ '("\\(\"/dev/\\(fd/[0-9]+\\|p\\(\\(\\(gr\\)?p\\)?id\\)\\|\
+std\\(err\\|in\\|out\\)\\|user\\)\\)\\>\
+\\(\\(\"\\)\\|\\([^\"/\n\r][^\"\n\r]*\\)?$\\)"
+ (1 font-lock-variable-name-face t)
+ (8 font-lock-variable-name-face t t))
+ ;; Do the same (almost) with
+ ;; (regexp-opt '("/inet/tcp/lport/rhost/rport" "/inet/udp/lport/rhost/rport"
+ ;; "/inet/raw/lport/rhost/rport") 'words)
+ ;; This cannot be combined with the above pattern, because the match number
+ ;; for the (optional) closing \" would then exceed 9.
+ '("\\(\"/inet/\\(\\(raw\\|\\(tc\\|ud\\)p\\)/lport/rhost/rport\\)\\)\\>\
+\\(\\(\"\\)\\|\\([^\"/\n\r][^\"\n\r]*\\)?$\\)"
+ (1 font-lock-variable-name-face t)
+ (6 font-lock-variable-name-face t t))
+
+ ;; Keywords.
+ (concat "\\<"
+ (regexp-opt
+ '("BEGIN" "END" "break" "continue" "delete" "do" "else"
+ "exit" "for" "getline" "if" "in" "next" "nextfile"
+ "return" "while")
+ t) "\\>")
+
+ ;; Builtins.
+ `(eval . (list
+ ,(concat
+ "\\<"
+ (regexp-opt
+ '("adump" "and" "asort" "atan2" "bindtextdomain" "close"
+ "compl" "cos" "dcgettext" "exp" "extension" "fflush"
+ "gensub" "gsub" "index" "int" "length" "log" "lshift"
+ "match" "mktime" "or" "print" "printf" "rand" "rshift"
+ "sin" "split" "sprintf" "sqrt" "srand" "stopme"
+ "strftime" "strtonum" "sub" "substr" "system"
+ "systime" "tolower" "toupper" "xor") t)
+ "\\>")
+ 0 c-preprocessor-face-name))
+
+ ;; gawk debugging keywords. (acm, 2002/7/21)
+ ;; (Removed, 2003/6/6. These functions are now fontified as built-ins)
+ ;; (list (concat "\\<" (regexp-opt '("adump" "stopme") t) "\\>")
+ ;; 0 'font-lock-warning-face)
+
+ ;; User defined functions with an apparent spurious space before the
+ ;; opening parenthesis. acm, 2002/5/30.
+ `(,(concat "\\(\\w\\|_\\)" c-awk-escaped-nls* "\\s "
+ c-awk-escaped-nls*-with-space* "(")
+ (0 'font-lock-warning-face))
+
+ ;; Space after \ in what looks like an escaped newline. 2002/5/31
+ '("\\\\\\s +$" 0 font-lock-warning-face t)
+
+ ;; Unbalanced string (") or regexp (/) delimiters. 2002/02/16.
+ '("\\s|" 0 font-lock-warning-face t nil)
+ ;; gawk 3.1 localizable strings ( _"translate me!"). 2002/5/21
+ '("\\(_\\)\\s|" 1 font-lock-warning-face)
+ '("\\(_\\)\\s\"" 1 font-lock-string-face) ; FIXME! not for XEmacs. 2002/10/6
+ ))
+ "Default expressions to highlight in AWK mode.")
;; ACM 2002/9/29. Movement functions, e.g. for C-M-a and C-M-e
diff --git a/lisp/progmodes/cc-defs.el b/lisp/progmodes/cc-defs.el
index d39c4880dc..ecad9174e5 100644
--- a/lisp/progmodes/cc-defs.el
+++ b/lisp/progmodes/cc-defs.el
@@ -69,14 +69,15 @@
(not (fboundp 'push)))
(cc-load "cc-fix")))
-(eval-after-load "font-lock"
- '(if (and (not (featurep 'cc-fix)) ; only load the file once.
+; (eval-after-load "font-lock" ; 2006-07-09. font-lock is now preloaded
+; '
+(if (and (not (featurep 'cc-fix)) ; only load the file once.
(featurep 'xemacs) ; There is now (2005/12) code in GNU Emacs CVS
; to make the call to f-l-c-k throw an error.
(let (font-lock-keywords)
(font-lock-compile-keywords '("\\<\\>"))
font-lock-keywords)) ; did the previous call foul this up?
- (load "cc-fix")))
+ (load "cc-fix")) ;)
;; The above takes care of the delayed loading, but this is necessary
;; to ensure correct byte compilation.
@@ -1034,35 +1035,35 @@ MODE is either a mode symbol or a list of mode symbols."
;; Make edebug understand the macros.
-(eval-after-load "edebug"
- '(progn
- (def-edebug-spec cc-eval-when-compile t)
- (def-edebug-spec c-point t)
- (def-edebug-spec c-set-region-active t)
- (def-edebug-spec c-safe t)
- (def-edebug-spec c-save-buffer-state let*)
- (def-edebug-spec c-tentative-buffer-changes t)
- (def-edebug-spec c-forward-syntactic-ws t)
- (def-edebug-spec c-backward-syntactic-ws t)
- (def-edebug-spec c-forward-sexp t)
- (def-edebug-spec c-backward-sexp t)
- (def-edebug-spec c-up-list-forward t)
- (def-edebug-spec c-up-list-backward t)
- (def-edebug-spec c-down-list-forward t)
- (def-edebug-spec c-down-list-backward t)
- (def-edebug-spec c-add-syntax t)
- (def-edebug-spec c-add-class-syntax t)
- (def-edebug-spec c-benign-error t)
- (def-edebug-spec c-with-syntax-table t)
- (def-edebug-spec c-skip-ws-forward t)
- (def-edebug-spec c-skip-ws-backward t)
- (def-edebug-spec c-major-mode-is t)
- (def-edebug-spec c-put-char-property t)
- (def-edebug-spec c-get-char-property t)
- (def-edebug-spec c-clear-char-property t)
- (def-edebug-spec c-clear-char-properties t)
- (def-edebug-spec c-put-overlay t)
- (def-edebug-spec c-delete-overlay t)))
+;(eval-after-load "edebug" ; 2006-07-09: def-edebug-spec is now in subr.el.
+; '(progn
+(def-edebug-spec cc-eval-when-compile t)
+(def-edebug-spec c-point t)
+(def-edebug-spec c-set-region-active t)
+(def-edebug-spec c-safe t)
+(def-edebug-spec c-save-buffer-state let*)
+(def-edebug-spec c-tentative-buffer-changes t)
+(def-edebug-spec c-forward-syntactic-ws t)
+(def-edebug-spec c-backward-syntactic-ws t)
+(def-edebug-spec c-forward-sexp t)
+(def-edebug-spec c-backward-sexp t)
+(def-edebug-spec c-up-list-forward t)
+(def-edebug-spec c-up-list-backward t)
+(def-edebug-spec c-down-list-forward t)
+(def-edebug-spec c-down-list-backward t)
+(def-edebug-spec c-add-syntax t)
+(def-edebug-spec c-add-class-syntax t)
+(def-edebug-spec c-benign-error t)
+(def-edebug-spec c-with-syntax-table t)
+(def-edebug-spec c-skip-ws-forward t)
+(def-edebug-spec c-skip-ws-backward t)
+(def-edebug-spec c-major-mode-is t)
+(def-edebug-spec c-put-char-property t)
+(def-edebug-spec c-get-char-property t)
+(def-edebug-spec c-clear-char-property t)
+(def-edebug-spec c-clear-char-properties t)
+(def-edebug-spec c-put-overlay t)
+(def-edebug-spec c-delete-overlay t) ;))
;;; Functions.
@@ -1738,9 +1739,10 @@ constant. A file is identified by its base name."
,@(and pre-files `(',pre-files))))))
(put 'c-lang-defconst 'lisp-indent-function 1)
-(eval-after-load "edebug"
- '(def-edebug-spec c-lang-defconst
- (&define name [&optional stringp] [&rest sexp def-form])))
+;(eval-after-load "edebug" ; 2006-07-09: def-edebug-spec is now in subr.el.
+; '
+(def-edebug-spec c-lang-defconst
+ (&define name [&optional stringp] [&rest sexp def-form]))
(defun c-define-lang-constant (name bindings &optional pre-files)
;; Used by `c-lang-defconst'.
diff --git a/lisp/progmodes/cc-fonts.el b/lisp/progmodes/cc-fonts.el
index 75d631ac39..9c05150688 100644
--- a/lisp/progmodes/cc-fonts.el
+++ b/lisp/progmodes/cc-fonts.el
@@ -348,15 +348,15 @@
highlights))))
nil)))
- (eval-after-load "edebug"
- '(progn
- (def-edebug-spec c-fontify-types-and-refs let*)
- (def-edebug-spec c-make-syntactic-matcher t)
- ;; If there are literal quoted or backquoted highlight specs in
- ;; the call to `c-make-font-lock-search-function' then let's
- ;; instrument the forms in them.
- (def-edebug-spec c-make-font-lock-search-function
- (form &rest &or ("quote" (&rest form)) ("`" (&rest form)) form)))))
+; (eval-after-load "edebug" ; 2006-07-09: def-edebug-spec is now in subr.el.
+; '(progn
+ (def-edebug-spec c-fontify-types-and-refs let*)
+ (def-edebug-spec c-make-syntactic-matcher t)
+ ;; If there are literal quoted or backquoted highlight specs in
+ ;; the call to `c-make-font-lock-search-function' then let's
+ ;; instrument the forms in them.
+ (def-edebug-spec c-make-font-lock-search-function
+ (form &rest &or ("quote" (&rest form)) ("`" (&rest form)) form)));))
(defun c-fontify-recorded-types-and-refs ()
;; Convert the ranges recorded on `c-record-type-identifiers' and
@@ -2268,101 +2268,7 @@ need for `pike-font-lock-extra-types'.")
autodoc-font-lock-doc-comments)))))
-;; AWK.
-
-;; Awk regexps written with help from Peter Galbraith
-;; Take GNU Emacs's 'words out of the following regexp-opts. They dont work
-;; in Xemacs 21.4.4. acm 2002/9/19.
-(eval-after-load "cc-awk" ; Evaluate while loading cc-fonts
- `(defconst awk-font-lock-keywords ; Evaluate after loading cc-awk
- ',(eval-when-compile ; Evaluate while compiling cc-fonts
- (list
- ;; Function names.
- '("^\\s *\\(func\\(tion\\)?\\)\\>\\s *\\(\\sw+\\)?"
- (1 font-lock-keyword-face) (3 font-lock-function-name-face nil t))
- ;;
- ;; Variable names.
- (cons
- (concat "\\<"
- (regexp-opt
- '("ARGC" "ARGIND" "ARGV" "BINMODE" "CONVFMT" "ENVIRON"
- "ERRNO" "FIELDWIDTHS" "FILENAME" "FNR" "FS" "IGNORECASE"
- "LINT" "NF" "NR" "OFMT" "OFS" "ORS" "PROCINFO" "RLENGTH"
- "RS" "RSTART" "RT" "SUBSEP" "TEXTDOMAIN") t) "\\>")
- 'font-lock-variable-name-face)
-
- ;; Special file names. (acm, 2002/7/22)
- ;; The following regexp was created by first evaluating this in GNU Emacs 21.1:
- ;; (regexp-opt '("/dev/stdin" "/dev/stdout" "/dev/stderr" "/dev/fd/n" "/dev/pid"
- ;; "/dev/ppid" "/dev/pgrpid" "/dev/user") 'words)
- ;; , removing the "?:" from each "\\(?:" (for backward compatibility with older Emacsen)
- ;; , replacing the "n" in "dev/fd/n" with "[0-9]+"
- ;; , removing the unwanted \\< at the beginning, and finally filling out the
- ;; regexp so that a " must come before, and either a " or heuristic stuff after.
- ;; The surrounding quotes are fontified along with the filename, since, semantically,
- ;; they are an indivisible unit.
- '("\\(\"/dev/\\(fd/[0-9]+\\|p\\(\\(\\(gr\\)?p\\)?id\\)\\|\
-std\\(err\\|in\\|out\\)\\|user\\)\\)\\>\
-\\(\\(\"\\)\\|\\([^\"/\n\r][^\"\n\r]*\\)?$\\)"
- (1 font-lock-variable-name-face t)
- (8 font-lock-variable-name-face t t))
- ;; Do the same (almost) with
- ;; (regexp-opt '("/inet/tcp/lport/rhost/rport" "/inet/udp/lport/rhost/rport"
- ;; "/inet/raw/lport/rhost/rport") 'words)
- ;; This cannot be combined with the above pattern, because the match number
- ;; for the (optional) closing \" would then exceed 9.
- '("\\(\"/inet/\\(\\(raw\\|\\(tc\\|ud\\)p\\)/lport/rhost/rport\\)\\)\\>\
-\\(\\(\"\\)\\|\\([^\"/\n\r][^\"\n\r]*\\)?$\\)"
- (1 font-lock-variable-name-face t)
- (6 font-lock-variable-name-face t t))
-
- ;; Keywords.
- (concat "\\<"
- (regexp-opt
- '("BEGIN" "END" "break" "continue" "delete" "do" "else"
- "exit" "for" "getline" "if" "in" "next" "nextfile"
- "return" "while")
- t) "\\>")
-
- ;; Builtins.
- `(eval . (list
- ,(concat
- "\\<"
- (regexp-opt
- '("adump" "and" "asort" "atan2" "bindtextdomain" "close"
- "compl" "cos" "dcgettext" "exp" "extension" "fflush"
- "gensub" "gsub" "index" "int" "length" "log" "lshift"
- "match" "mktime" "or" "print" "printf" "rand" "rshift"
- "sin" "split" "sprintf" "sqrt" "srand" "stopme"
- "strftime" "strtonum" "sub" "substr" "system"
- "systime" "tolower" "toupper" "xor") t)
- "\\>")
- 0 c-preprocessor-face-name))
-
- ;; gawk debugging keywords. (acm, 2002/7/21)
- ;; (Removed, 2003/6/6. These functions are now fontified as built-ins)
-;; (list (concat "\\<" (regexp-opt '("adump" "stopme") t) "\\>")
-;; 0 'font-lock-warning-face)
-
- ;; User defined functions with an apparent spurious space before the
- ;; opening parenthesis. acm, 2002/5/30.
- `(,(concat "\\(\\w\\|_\\)" c-awk-escaped-nls* "\\s "
- c-awk-escaped-nls*-with-space* "(")
- (0 'font-lock-warning-face))
-
- ;; Space after \ in what looks like an escaped newline. 2002/5/31
- '("\\\\\\s +$" 0 font-lock-warning-face t)
-
- ;; Unbalanced string (") or regexp (/) delimiters. 2002/02/16.
- '("\\s|" 0 font-lock-warning-face t nil)
- ;; gawk 3.1 localizable strings ( _"translate me!"). 2002/5/21
- '("\\(_\\)\\s|" 1 font-lock-warning-face)
- '("\\(_\\)\\s\"" 1 font-lock-string-face) ; FIXME! not for XEmacs. 2002/10/6
- ))
- "Default expressions to highlight in AWK mode."))
-
-
+;; 2006-07-10: awk-font-lock-keywords has been moved back to cc-awk.el.
(cc-provide 'cc-fonts)
;;; arch-tag: 2f65f405-735f-4da5-8d4b-b957844c5203
diff --git a/lisp/progmodes/cc-langs.el b/lisp/progmodes/cc-langs.el
index 8120094f60..e7a0d03cc5 100644
--- a/lisp/progmodes/cc-langs.el
+++ b/lisp/progmodes/cc-langs.el
@@ -173,9 +173,10 @@ the evaluated constant value at compile time."
`',var)
(put 'c-lang-defvar 'lisp-indent-function 'defun)
-(eval-after-load "edebug"
- '(def-edebug-spec c-lang-defvar
- (&define name def-form &optional stringp)))
+; (eval-after-load "edebug" ; 2006-07-09: def-edebug-spec is now in subr.el.
+; '
+(def-edebug-spec c-lang-defvar
+ (&define name def-form &optional stringp)) ;)
(eval-and-compile
;; Some helper functions used when building the language constants.
diff --git a/lisp/progmodes/cc-mode.el b/lisp/progmodes/cc-mode.el
index 9eebdb2bb7..7343ec735e 100644
--- a/lisp/progmodes/cc-mode.el
+++ b/lisp/progmodes/cc-mode.el
@@ -114,8 +114,9 @@
;; Load cc-fonts first after font-lock is loaded, since it isn't
;; necessary until font locking is requested.
-(eval-after-load "font-lock"
- '(require 'cc-fonts))
+; (eval-after-load "font-lock" ; 2006-07-09: font-lock is now preloaded.
+; '
+(require 'cc-fonts) ;)
;; cc-langs isn't loaded when we're byte compiled, so add autoload
;; directives for the interface functions.
diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el
index 5da86972ec..3c63d5f01b 100644
--- a/lisp/progmodes/compile.el
+++ b/lisp/progmodes/compile.el
@@ -223,10 +223,15 @@ of[ \t]+\"?\\([a-zA-Z]?:?[^\":\n]+\\)\"?:" 3 2 nil (1))
\\(.+\\):\\([0-9]+\\)\\(?:\\(:\\)\\|\\(,\\)\\)?" 1 2 nil (3 . 4))
(gnu
+ ;; I have no idea what this first line is supposed to match, but it
+ ;; makes things ambiguous with output such as "foo:344:50:blabla" since
+ ;; the "foo" part can match this first line (in which case the file
+ ;; name as "344"). To avoid this, we disallow filenames exclusively
+ ;; composed of digits. --Stef
"^\\(?:[[:alpha:]][-[:alnum:].]+: ?\\)?\
-\\([/.]*[a-zA-Z]:?[^ \t\n:]*\\|{standard input}\\): ?\
-\\([0-9]+\\)\\([.:]?\\)\\([0-9]+\\)?\
-\\(?:-\\(?:\\([0-9]+\\)\\3\\)?\\.?\\([0-9]+\\)?\\)?:\
+\\([0-9]*[^0-9\n].*?\\): ?\
+\\([0-9]+\\)\\(?:\\([.:]\\)\\([0-9]+\\)\\)?\
+\\(?:-\\([0-9]+\\)?\\(?:\\3\\([0-9]+\\)\\)?\\)?:\
\\(?: *\\(\\(?:Future\\|Runtime\\)?[Ww]arning\\|W:\\)\\|\
*\\([Ii]nfo\\(?:\\>\\|rmationa?l?\\)\\|I:\\|instantiated from\\)\\)?"
1 (2 . 5) (4 . 6) (7 . 8))
@@ -293,7 +298,7 @@ File = \\(.+\\), Line = \\([0-9]+\\)\\(?:, Column = \\([0-9]+\\)\\)?"
\\(?:: \\(warning:\\)?\\|$\\| ),\\)" 1 2 nil (3))
(gcov-file
- "^ *-: *\\(0\\):Source:\\(.+\\)$"
+ "^ *-: *\\(0\\):Source:\\(.+\\)$"
2 1 nil 0 nil
(1 compilation-line-face prepend) (2 compilation-info-face prepend))
(gcov-header
@@ -312,11 +317,11 @@ File = \\(.+\\), Line = \\([0-9]+\\)\\(?:, Column = \\([0-9]+\\)\\)?"
(1 compilation-line-face prepend))
(gcov-called-line
"^ *\\([0-9]+\\): *\\([0-9]+\\):.*$"
- nil 2 nil 0 nil
+ nil 2 nil 0 nil
(0 'default t)
(1 compilation-info-face prepend) (2 compilation-line-face prepend))
(gcov-never-called
- "^ *\\(#####\\): *\\([0-9]+\\):.*$"
+ "^ *\\(#####\\): *\\([0-9]+\\):.*$"
nil 2 nil 2 nil
(0 'default t)
(1 compilation-error-face prepend) (2 compilation-line-face prepend))
@@ -400,7 +405,10 @@ you may also want to change `compilation-page-delimiter'.")
"Value of `page-delimiter' in Compilation mode.")
(defvar compilation-mode-font-lock-keywords
- '(;; configure output lines.
+ '(;; Don't highlight this as a compilation message.
+ ("^Compilation started at.*"
+ (0 '(face nil message nil help-echo nil mouse-face nil) t))
+ ;; configure output lines.
("^[Cc]hecking \\(?:[Ff]or \\|[Ii]f \\|[Ww]hether \\(?:to \\)?\\)?\\(.+\\)\\.\\.\\. *\\(?:(cached) *\\)?\\(\\(yes\\(?: .+\\)?\\)\\|no\\|\\(.*\\)\\)$"
(1 font-lock-variable-name-face)
(2 (compilation-face '(4 . 3))))
@@ -408,9 +416,11 @@ you may also want to change `compilation-page-delimiter'.")
("^\\([[:alnum:]_/.+-]+\\)\\(\\[\\([0-9]+\\)\\]\\)?[ \t]*:"
(1 font-lock-function-name-face) (3 compilation-line-face nil t))
(" --?o\\(?:utfile\\|utput\\)?[= ]?\\(\\S +\\)" . 1)
- ("^Compilation \\(finished\\)"
+ ("^Compilation \\(finished\\).*"
+ (0 '(face nil message nil help-echo nil mouse-face nil) t)
(1 compilation-info-face))
- ("^Compilation \\(exited abnormally\\|interrupt\\|killed\\|terminated\\)\\(?:.*with code \\([0-9]+\\)\\)?"
+ ("^Compilation \\(exited abnormally\\|interrupt\\|killed\\|terminated\\)\\(?:.*with code \\([0-9]+\\)\\)?.*"
+ (0 '(face nil message nil help-echo nil mouse-face nil) t)
(1 compilation-error-face)
(2 compilation-error-face nil t)))
"Additional things to highlight in Compilation mode.
@@ -1791,49 +1801,51 @@ If DIRECTORY. is nil, that means use `default-directory'.
If FILENAME is not found at all, ask the user where to find it.
Pop up the buffer containing MARKER and scroll to MARKER if we ask the user."
(or formats (setq formats '("%s")))
- (save-excursion
- (let ((dirs compilation-search-path)
- (spec-dir (if directory
- (expand-file-name directory)
- default-directory))
- buffer thisdir fmts name)
- (if (file-name-absolute-p filename)
- ;; The file name is absolute. Use its explicit directory as
- ;; the first in the search path, and strip it from FILENAME.
- (setq filename (abbreviate-file-name (expand-file-name filename))
- dirs (cons (file-name-directory filename) dirs)
- filename (file-name-nondirectory filename)))
- ;; Now search the path.
- (while (and dirs (null buffer))
- (setq thisdir (or (car dirs) spec-dir)
- fmts formats)
- ;; For each directory, try each format string.
- (while (and fmts (null buffer))
- (setq name (expand-file-name (format (car fmts) filename) thisdir)
- buffer (and (file-exists-p name)
- (find-file-noselect name))
- fmts (cdr fmts)))
- (setq dirs (cdr dirs)))
- (or buffer
- ;; The file doesn't exist. Ask the user where to find it.
- (let ((pop-up-windows t))
- (compilation-set-window (display-buffer (marker-buffer marker))
- marker)
- (let ((name (expand-file-name
- (read-file-name
- (format "Find this %s in (default %s): "
- compilation-error filename)
- spec-dir filename t))))
- (if (file-directory-p name)
- (setq name (expand-file-name filename name)))
- (setq buffer (and (file-exists-p name)
- (find-file name))))))
- ;; Make intangible overlays tangible.
- (mapcar (function (lambda (ov)
- (when (overlay-get ov 'intangible)
- (overlay-put ov 'intangible nil))))
- (overlays-in (point-min) (point-max)))
- buffer)))
+ (let ((dirs compilation-search-path)
+ (spec-dir (if directory
+ (expand-file-name directory)
+ default-directory))
+ buffer thisdir fmts name)
+ (if (file-name-absolute-p filename)
+ ;; The file name is absolute. Use its explicit directory as
+ ;; the first in the search path, and strip it from FILENAME.
+ (setq filename (abbreviate-file-name (expand-file-name filename))
+ dirs (cons (file-name-directory filename) dirs)
+ filename (file-name-nondirectory filename)))
+ ;; Now search the path.
+ (while (and dirs (null buffer))
+ (setq thisdir (or (car dirs) spec-dir)
+ fmts formats)
+ ;; For each directory, try each format string.
+ (while (and fmts (null buffer))
+ (setq name (expand-file-name (format (car fmts) filename) thisdir)
+ buffer (and (file-exists-p name)
+ (find-file-noselect name))
+ fmts (cdr fmts)))
+ (setq dirs (cdr dirs)))
+ (or buffer
+ ;; The file doesn't exist. Ask the user where to find it.
+ (save-excursion ;This save-excursion is probably not right.
+ (let ((pop-up-windows t))
+ (compilation-set-window (display-buffer (marker-buffer marker))
+ marker)
+ (let ((name (expand-file-name
+ (read-file-name
+ (format "Find this %s in (default %s): "
+ compilation-error filename)
+ spec-dir filename t))))
+ (if (file-directory-p name)
+ (setq name (expand-file-name filename name)))
+ (setq buffer (and (file-exists-p name)
+ (find-file-noselect name)))))))
+ ;; Make intangible overlays tangible.
+ ;; This is very weird: it's not even clear which is the current buffer,
+ ;; so the code below can't be expected to DTRT here. --Stef
+ (mapcar (function (lambda (ov)
+ (when (overlay-get ov 'intangible)
+ (overlay-put ov 'intangible nil))))
+ (overlays-in (point-min) (point-max)))
+ buffer))
(defun compilation-get-file-structure (file &optional fmt)
"Retrieve FILE's file-structure or create a new one.
diff --git a/lisp/progmodes/ebrowse.el b/lisp/progmodes/ebrowse.el
index 29f1036b1b..f624ac5cf2 100644
--- a/lisp/progmodes/ebrowse.el
+++ b/lisp/progmodes/ebrowse.el
@@ -2734,24 +2734,24 @@ means the member buffer is standalone. CLASS is its class."
;; is on if not specified as an argument.
(unless class
(setq class (ebrowse-tree-at-point)))
- (with-output-to-temp-buffer ebrowse-member-buffer-name
- (save-excursion
- (set-buffer standard-output)
+ (save-selected-window
+ (if temp-buffer
+ (pop-to-buffer temp-buffer)
+ (pop-to-buffer (get-buffer-create ebrowse-member-buffer-name))
;; If new buffer, set the mode and initial values of locals
- (unless temp-buffer
- (ebrowse-member-mode))
- ;; Set local variables
- (setq ebrowse--member-list (funcall list class)
- ebrowse--displayed-class class
- ebrowse--accessor list
- ebrowse--tree-obarray classes
- ebrowse--frozen-flag stand-alone
- ebrowse--tags-file-name tags-file-name
- ebrowse--header header
- ebrowse--tree tree
- buffer-read-only t)
- (ebrowse-redisplay-member-buffer)
- (current-buffer)))))
+ (ebrowse-member-mode))
+ ;; Set local variables
+ (setq ebrowse--member-list (funcall list class)
+ ebrowse--displayed-class class
+ ebrowse--accessor list
+ ebrowse--tree-obarray classes
+ ebrowse--frozen-flag stand-alone
+ ebrowse--tags-file-name tags-file-name
+ ebrowse--header header
+ ebrowse--tree tree
+ buffer-read-only t)
+ (ebrowse-redisplay-member-buffer)
+ (current-buffer))))
(defun ebrowse-member-display-p (member)
diff --git a/lisp/progmodes/gdb-ui.el b/lisp/progmodes/gdb-ui.el
index 684102015c..810a7b3e97 100644
--- a/lisp/progmodes/gdb-ui.el
+++ b/lisp/progmodes/gdb-ui.el
@@ -1019,7 +1019,7 @@ The key should be one of the cars in `gdb-buffer-rules-assoc'."
(interactive)
(if gdb-use-separate-io-buffer
(gdb-display-buffer
- (gdb-get-buffer-create 'gdb-inferior-io))))
+ (gdb-get-buffer-create 'gdb-inferior-io) t)))
(defconst gdb-frame-parameters
'((height . 14) (width . 80)
@@ -1556,7 +1556,7 @@ happens to be appropriate."
(goto-char (point-max))
(insert-before-markers string))
(if (not (string-equal string ""))
- (gdb-display-buffer (gdb-get-buffer-create 'gdb-inferior-io))))
+ (gdb-display-buffer (gdb-get-buffer-create 'gdb-inferior-io) t)))
(defun gdb-clear-inferior-io ()
(with-current-buffer (gdb-get-buffer-create 'gdb-inferior-io)
@@ -1865,7 +1865,7 @@ static char *magick[] = {
"Display status of user-settable breakpoints."
(interactive)
(gdb-display-buffer
- (gdb-get-buffer-create 'gdb-breakpoints-buffer)))
+ (gdb-get-buffer-create 'gdb-breakpoints-buffer) t))
(defun gdb-frame-breakpoints-buffer ()
"Display status of user-settable breakpoints in a new frame."
@@ -2041,7 +2041,7 @@ static char *magick[] = {
"Display backtrace of current stack."
(interactive)
(gdb-display-buffer
- (gdb-get-buffer-create 'gdb-stack-buffer)))
+ (gdb-get-buffer-create 'gdb-stack-buffer) t))
(defun gdb-frame-stack-buffer ()
"Display backtrace of current stack in a new frame."
@@ -2122,7 +2122,7 @@ static char *magick[] = {
"Display IDs of currently known threads."
(interactive)
(gdb-display-buffer
- (gdb-get-buffer-create 'gdb-threads-buffer)))
+ (gdb-get-buffer-create 'gdb-threads-buffer) t))
(defun gdb-frame-threads-buffer ()
"Display IDs of currently known threads in a new frame."
@@ -2256,7 +2256,7 @@ static char *magick[] = {
"Display integer register contents."
(interactive)
(gdb-display-buffer
- (gdb-get-buffer-create 'gdb-registers-buffer)))
+ (gdb-get-buffer-create 'gdb-registers-buffer) t))
(defun gdb-frame-registers-buffer ()
"Display integer register contents in a new frame."
@@ -2580,7 +2580,7 @@ corresponding to the mode line clicked."
"Display memory contents."
(interactive)
(gdb-display-buffer
- (gdb-get-buffer-create 'gdb-memory-buffer)))
+ (gdb-get-buffer-create 'gdb-memory-buffer) t))
(defun gdb-frame-memory-buffer ()
"Display memory contents in a new frame."
@@ -2687,7 +2687,7 @@ corresponding to the mode line clicked."
"Display local variables of current stack and their values."
(interactive)
(gdb-display-buffer
- (gdb-get-buffer-create 'gdb-locals-buffer)))
+ (gdb-get-buffer-create 'gdb-locals-buffer) t))
(defun gdb-frame-locals-buffer ()
"Display local variables of current stack and their values in a new frame."
@@ -2698,7 +2698,7 @@ corresponding to the mode line clicked."
;;;; Window management
-(defun gdb-display-buffer (buf &optional size)
+(defun gdb-display-buffer (buf dedicated &optional size)
(let ((answer (get-buffer-window buf 0))
(must-split nil))
(if answer
@@ -2707,7 +2707,8 @@ corresponding to the mode line clicked."
(pop-to-buffer gud-comint-buffer) ;Select the right frame.
(let ((window (get-lru-window)))
(if (and window
- (not (eq window (get-buffer-window gud-comint-buffer))))
+ (not (memq window `(,(get-buffer-window gud-comint-buffer)
+ ,gdb-source-window))))
(progn
(set-window-buffer window buf)
(setq answer window))
@@ -2718,7 +2719,7 @@ corresponding to the mode line clicked."
(new-size (and size (< size cur-size) (- cur-size size))))
(setq answer (split-window largest new-size))
(set-window-buffer answer buf)
- (set-window-dedicated-p answer t)))
+ (set-window-dedicated-p answer dedicated)))
answer)))
@@ -3162,7 +3163,7 @@ BUFFER nil or omitted means use the current buffer."
(interactive)
(setq gdb-previous-frame nil)
(gdb-display-buffer
- (gdb-get-buffer-create 'gdb-assembler-buffer)))
+ (gdb-get-buffer-create 'gdb-assembler-buffer) t))
(defun gdb-frame-assembler-buffer ()
"Display disassembly view in a new frame."
diff --git a/lisp/progmodes/grep.el b/lisp/progmodes/grep.el
index eb80342202..37d4952058 100644
--- a/lisp/progmodes/grep.el
+++ b/lisp/progmodes/grep.el
@@ -232,8 +232,7 @@ See `compilation-error-screen-columns'"
;; override compilation-last-buffer
(defvar grep-last-buffer nil
"The most recent grep buffer.
-A grep buffer becomes most recent when its process is started
-or when it is used with \\[grep-next-match].
+A grep buffer becomes most recent when you select Grep mode in it.
Notice that using \\[next-error] or \\[compile-goto-error] modifies
`complation-last-buffer' rather than `grep-last-buffer'.")
diff --git a/lisp/progmodes/gud.el b/lisp/progmodes/gud.el
index 1ce5d404a8..97e54135a6 100644
--- a/lisp/progmodes/gud.el
+++ b/lisp/progmodes/gud.el
@@ -2763,7 +2763,8 @@ Obeying it means displaying in another window the specified file and line."
(gud-find-file true-file)))
(window (and buffer (or (get-buffer-window buffer)
(if (memq gud-minor-mode '(gdbmi gdba))
- (gdb-display-source-buffer buffer))
+ (unless (gdb-display-source-buffer buffer)
+ (gdb-display-buffer buffer nil)))
(display-buffer buffer))))
(pos))
(if buffer
@@ -2793,7 +2794,10 @@ Obeying it means displaying in another window the specified file and line."
(cond ((or (< pos (point-min)) (> pos (point-max)))
(widen)
(goto-char pos))))
- (if window (set-window-point window gud-overlay-arrow-position))))))
+ (when window
+ (set-window-point window gud-overlay-arrow-position)
+ (if (memq gud-minor-mode '(gdbmi gdba))
+ (setq gdb-source-window window)))))))
;; The gud-call function must do the right thing whether its invoking
;; keystroke is from the GUD buffer itself (via major-mode binding)
@@ -3366,6 +3370,12 @@ only tooltips in the buffer containing the overlay arrow."
(defvar gud-tooltip-mouse-motions-active nil
"Locally t in a buffer if tooltip processing of mouse motion is enabled.")
+;; We don't set track-mouse globally because this is a big redisplay
+;; problem in buffers having a pre-command-hook or such installed,
+;; which does a set-buffer, like the summary buffer of Gnus. Calling
+;; set-buffer prevents redisplay optimizations, so every mouse motion
+;; would be accompanied by a full redisplay.
+
(defun gud-tooltip-activate-mouse-motions (activatep)
"Activate/deactivate mouse motion events for the current buffer.
ACTIVATEP non-nil means activate mouse motion events."
diff --git a/lisp/progmodes/make-mode.el b/lisp/progmodes/make-mode.el
index a3146df3e4..109455e9e6 100644
--- a/lisp/progmodes/make-mode.el
+++ b/lisp/progmodes/make-mode.el
@@ -294,7 +294,8 @@ not be enclosed in { } or ( )."
;; We used to match not just the varname but also the whole value
;; (spanning potentially several lines).
;; "^ *\\([^ \n\t][^:#= \t\n]*\\)[ \t]*\\(?:!=[ \t]*\\(\\(?:.+\\\\\n\\)*.+\\)\\|[*:+]?[:?]?=[ \t]*\\(\\(?:.*\\\\\n\\)*.*\\)\\)"
- "^ *\\([^ \n\t][^:#= \t\n]*\\)[ \t]*\\(?:!=\\|[*:+]?[:?]?=\\)"
+ ;; What about the define statement? What about differentiating this for makepp?
+ "\\(?:^\\|^export\\|^override\\|:\\|: *override\\) *\\([^ \n\t][^:#= \t\n]*\\)[ \t]*\\(?:!=\\|[*:+]?[:?]?=\\)"
"Regex used to find macro assignment lines in a makefile.")
(defconst makefile-var-use-regex
@@ -305,8 +306,6 @@ not be enclosed in { } or ( )."
"\\(^\\..*\\)\\|\\(.*~$\\)\\|\\(.*,v$\\)\\|\\(\\.[chy]\\)"
"Regex for filenames that will NOT be included in the target list.")
-(if (fboundp 'facemenu-unlisted-faces)
- (add-to-list 'facemenu-unlisted-faces 'makefile-space))
(defvar makefile-space 'makefile-space
"Face to use for highlighting leading spaces in Font-Lock mode.")
@@ -320,9 +319,9 @@ not be enclosed in { } or ( )."
"List of keywords understood by automake.")
(defconst makefile-gmake-statements
- `("-sinclude" "sinclude" "override" "vpath"
+ `("-sinclude" "sinclude" "vpath" ; makefile-makepp-statements takes rest
"ifdef" "ifndef" "ifeq" "ifneq" "-include" "define" "endef" "export"
- "unexport"
+ "override define" "override" "unexport"
,@(cdr makefile-automake-statements))
"List of keywords understood by gmake.")
@@ -331,13 +330,14 @@ not be enclosed in { } or ( )."
`("and ifdef" "and ifndef" "and ifeq" "and ifneq" "and ifperl"
"and ifmakeperl" "and ifsys" "and ifnsys" "build_cache" "build_check"
"else ifdef" "else ifndef" "else ifeq" "else ifneq" "else ifperl"
- "else ifmakeperl" "else ifsys" "else ifnsys" "enddef" "load_makefile"
- "ifperl" "ifmakeperl" "ifsys" "ifnsys" "_include" "makeperl" "makesub"
- "no_implicit_load" "perl" "perl-begin" "perl_begin" "perl-end" "perl_end"
- "prebuild" "or ifdef" "or ifndef" "or ifeq" "or ifneq" "or ifperl"
- "or ifmakeperl" "or ifsys" "or ifnsys" "register_command_parser"
+ "else ifmakeperl" "else ifsys" "else ifnsys" "enddef" "global"
+ "load_makefile" "ifperl" "ifmakeperl" "ifsys" "ifnsys" "_include"
+ "makeperl" "makesub" "no_implicit_load" "perl" "perl-begin" "perl_begin"
+ "perl-end" "perl_end" "prebuild" "or ifdef" "or ifndef" "or ifeq"
+ "or ifneq" "or ifperl" "or ifmakeperl" "or ifsys" "or ifnsys"
+ "override export" "override global" "register_command_parser"
"register_scanner" "repository" "runtime" "signature" "sub"
- ,@(nthcdr 4 makefile-gmake-statements))
+ ,@(nthcdr 3 makefile-gmake-statements))
"List of keywords understood by gmake.")
(defconst makefile-bsdmake-statements
diff --git a/lisp/progmodes/octave-inf.el b/lisp/progmodes/octave-inf.el
index b6e6e4fc45..863f972086 100644
--- a/lisp/progmodes/octave-inf.el
+++ b/lisp/progmodes/octave-inf.el
@@ -37,18 +37,18 @@
:group 'octave)
(defcustom inferior-octave-program "octave"
- "*Program invoked by `inferior-octave'."
+ "Program invoked by `inferior-octave'."
:type 'string
:group 'octave-inferior)
(defcustom inferior-octave-prompt
"\\(^octave\\(\\|.bin\\)\\(-[.0-9]+\\)?\\(:[0-9]+\\)?\\|^debug\\|^\\)>+ "
- "*Regexp to match prompts for the inferior Octave process."
+ "Regexp to match prompts for the inferior Octave process."
:type 'regexp
:group 'octave-inferior)
(defcustom inferior-octave-startup-file nil
- "*Name of the inferior Octave startup file.
+ "Name of the inferior Octave startup file.
The contents of this file are sent to the inferior Octave process on
startup."
:type '(choice (const :tag "None" nil)
@@ -56,34 +56,31 @@ startup."
:group 'octave-inferior)
(defcustom inferior-octave-startup-args nil
- "*List of command line arguments for the inferior Octave process.
+ "List of command line arguments for the inferior Octave process.
For example, for suppressing the startup message and using `traditional'
mode, set this to (\"-q\" \"--traditional\")."
:type '(repeat string)
:group 'octave-inferior)
-(defvar inferior-octave-mode-map nil
- "Keymap used in Inferior Octave mode.")
-(if inferior-octave-mode-map
- ()
- (let ((map (copy-keymap comint-mode-map)))
+(defvar inferior-octave-mode-map
+ (let ((map (make-sparse-keymap)))
+ (set-keymap-parent map comint-mode-map)
(define-key map "\t" 'comint-dynamic-complete)
(define-key map "\M-?" 'comint-dynamic-list-filename-completions)
(define-key map "\C-c\C-l" 'inferior-octave-dynamic-list-input-ring)
(define-key map [menu-bar inout list-history]
'("List Input History" . inferior-octave-dynamic-list-input-ring))
(define-key map "\C-c\C-h" 'octave-help)
- (setq inferior-octave-mode-map map)))
+ map)
+ "Keymap used in Inferior Octave mode.")
-(defvar inferior-octave-mode-syntax-table nil
- "Syntax table in use in inferior-octave-mode buffers.")
-(if inferior-octave-mode-syntax-table
- ()
+(defvar inferior-octave-mode-syntax-table
(let ((table (make-syntax-table)))
(modify-syntax-entry ?\` "w" table)
(modify-syntax-entry ?\# "<" table)
(modify-syntax-entry ?\n ">" table)
- (setq inferior-octave-mode-syntax-table table)))
+ table)
+ "Syntax table in use in inferior-octave-mode buffers.")
(defcustom inferior-octave-mode-hook nil
"*Hook to be run when Inferior Octave mode is started."
@@ -154,9 +151,9 @@ Entry to this mode successively runs the hooks `comint-mode-hook' and
(setq comint-input-ring-file-name
(or (getenv "OCTAVE_HISTFILE") "~/.octave_hist")
comint-input-ring-size (or (getenv "OCTAVE_HISTSIZE") 1024)
- comint-input-filter-functions '(inferior-octave-directory-tracker)
- comint-dynamic-complete-functions
- inferior-octave-dynamic-complete-functions)
+ comint-input-filter-functions '(inferior-octave-directory-tracker))
+ (set (make-local-variable 'comint-dynamic-complete-functions)
+ inferior-octave-dynamic-complete-functions)
(comint-read-input-ring t)
(run-mode-hooks 'inferior-octave-mode-hook))
@@ -272,8 +269,7 @@ is NOT available with versions of Octave prior to 2.0."
(save-excursion
(skip-syntax-backward "w_" (comint-line-beginning-position))
(buffer-substring-no-properties (point) end)))
- (proc (get-buffer-process inferior-octave-buffer))
- (filter (process-filter proc)))
+ (proc (get-buffer-process inferior-octave-buffer)))
(cond (inferior-octave-complete-impossible
(error (concat
"Your Octave does not have `completion_matches'. "
@@ -299,7 +295,7 @@ is NOT available with versions of Octave prior to 2.0."
command inferior-octave-output-list)))))
(defun inferior-octave-dynamic-list-input-ring ()
- "List the buffer's input history in a help buffer"
+ "List the buffer's input history in a help buffer."
;; We cannot use `comint-dynamic-list-input-ring', because it replaces
;; "completion" by "history reference" ...
(interactive)
@@ -394,5 +390,5 @@ directory and makes this the current buffer's default directory."
(provide 'octave-inf)
-;;; arch-tag: bdce0395-24d1-4bb4-bfba-6fb1eeb1a660
+;; arch-tag: bdce0395-24d1-4bb4-bfba-6fb1eeb1a660
;;; octave-inf.el ends here
diff --git a/lisp/shell.el b/lisp/shell.el
index 6b22ac7923..6a145ae156 100644
--- a/lisp/shell.el
+++ b/lisp/shell.el
@@ -423,7 +423,8 @@ buffer."
(setq comint-delimiter-argument-list shell-delimiter-argument-list)
(setq comint-file-name-chars shell-file-name-chars)
(setq comint-file-name-quote-list shell-file-name-quote-list)
- (setq comint-dynamic-complete-functions shell-dynamic-complete-functions)
+ (set (make-local-variable 'comint-dynamic-complete-functions)
+ shell-dynamic-complete-functions)
(set (make-local-variable 'paragraph-separate) "\\'")
(make-local-variable 'paragraph-start)
(setq paragraph-start comint-prompt-regexp)
diff --git a/lisp/simple.el b/lisp/simple.el
index f1c1eb9411..67cd341bf1 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -1031,7 +1031,7 @@ display the result of expression evaluation."
(format " (#o%o, #x%x)" value value)))))
;; We define this, rather than making `eval' interactive,
-;; for the sake of completion of names like eval-region, eval-current-buffer.
+;; for the sake of completion of names like eval-region, eval-buffer.
(defun eval-expression (eval-expression-arg
&optional eval-expression-insert-value)
"Evaluate EVAL-EXPRESSION-ARG and print value in the echo area.
@@ -1657,7 +1657,7 @@ is not *inside* the region START...END."
'(0 . 0)))
'(0 . 0)))
-(defcustom undo-ask-before-discard t
+(defcustom undo-ask-before-discard nil
"If non-nil ask about discarding undo info for the current command.
Normally, Emacs discards the undo info for the current command if
it exceeds `undo-outer-limit'. But if you set this option
diff --git a/lisp/subr.el b/lisp/subr.el
index 313ae8dcee..9b5d5f47ef 100644
--- a/lisp/subr.el
+++ b/lisp/subr.el
@@ -53,6 +53,12 @@ This is the global do-nothing version. There is also `testcover-1value'
that complains if FORM ever does return differing values."
form)
+(defmacro def-edebug-spec (symbol spec)
+ "Set the `edebug-form-spec' property of SYMBOL according to SPEC.
+Both SYMBOL and SPEC are unevaluated. The SPEC can be 0, t, a symbol
+\(naming a function), or a list."
+ `(put (quote ,symbol) 'edebug-form-spec (quote ,spec)))
+
(defmacro lambda (&rest cdr)
"Return a lambda expression.
A call of the form (lambda ARGS DOCSTRING INTERACTIVE BODY) is
@@ -1693,6 +1699,44 @@ by doing (clear-string STRING)."
(sit-for 1)
t)))
n))
+
+(defun sit-for (seconds &optional nodisp obsolete)
+ "Perform redisplay, then wait for SECONDS seconds or until input is available.
+SECONDS may be a floating-point value.
+\(On operating systems that do not support waiting for fractions of a
+second, floating-point values are rounded down to the nearest integer.)
+
+If optional arg NODISP is t, don't redisplay, just wait for input.
+Redisplay does not happen if input is available before it starts.
+
+Value is t if waited the full time with no input arriving, and nil otherwise.
+
+An obsolete, but still supported form is
+\(sit-for SECONDS &optional MILLISECONDS NODISP)
+where the optional arg MILLISECONDS specifies an additional wait period,
+in milliseconds; this was useful when Emacs was built without
+floating point support.
+
+\(fn SECONDS &optional NODISP)"
+ (when (or obsolete (numberp nodisp))
+ (setq seconds (+ seconds (* 1e-3 nodisp)))
+ (setq nodisp obsolete))
+ (unless nodisp
+ (redisplay))
+ (or (<= seconds 0)
+ (let ((timer (timer-create))
+ (echo-keystrokes 0))
+ (if (catch 'sit-for-timeout
+ (timer-set-time timer (timer-relative-time
+ (current-time) seconds))
+ (timer-set-function timer 'with-timeout-handler
+ '(sit-for-timeout))
+ (timer-activate timer)
+ (push (read-event) unread-command-events)
+ nil)
+ t
+ (cancel-timer timer)
+ nil))))
;;; Atomic change groups.
diff --git a/lisp/term/mac-win.el b/lisp/term/mac-win.el
index dd821de3ba..c66c59a088 100644
--- a/lisp/term/mac-win.el
+++ b/lisp/term/mac-win.el
@@ -1784,7 +1784,7 @@ With numeric ARG, display the font panel if and only if ARG is positive."
(interactive "e")
(let* ((ae (mac-event-ae event))
(fm-font-size (mac-ae-number ae "fmsz"))
- (atsu-font-id (cdr (mac-ae-parameter ae "auid")))
+ (atsu-font-id (mac-ae-number ae "auid"))
(attribute-values (gethash atsu-font-id mac-atsu-font-table)))
(if fm-font-size
(setq attribute-values
@@ -1815,8 +1815,8 @@ With numeric ARG, display the font panel if and only if ARG is positive."
(defface mac-ts-caret-position
'((t :inverse-video t))
"Face for caret position in Mac TSM active input area.
-This is used only when the active input area is displayed in the
-echo area."
+This is used when the active input area is displayed either in
+the echo area or in a buffer where the cursor is not displayed."
:group 'mac)
(defface mac-ts-raw-text
@@ -1963,7 +1963,10 @@ into `unread-command-events'. The unconfirmed text is displayed
either in the current buffer or in the echo area."
(interactive "e")
(let* ((ae (mac-event-ae event))
- (text (or (cdr (mac-ae-parameter ae "tstx" "utxt")) ""))
+ (type-text (mac-ae-parameter ae "tstx"))
+ (text (or (cdr type-text) ""))
+ (decode-fun (if (equal (car type-text) "TEXT")
+ 'mac-TEXT-to-string 'mac-utxt-to-string))
(script-language (mac-ae-script-language ae "tssl"))
(coding (or (cdr (assq (car script-language)
mac-script-code-coding-systems))
@@ -1985,22 +1988,27 @@ either in the current buffer or in the echo area."
(or isearch-mode
(and cursor-in-echo-area (current-message))
;; Overlay strings are not shown in some cases.
- (get-char-property (point) 'display)
(get-char-property (point) 'invisible)
- (get-char-property (point) 'composition)))
+ (and (not (bobp))
+ (or (and (get-char-property (point) 'display)
+ (eq (get-char-property (1- (point)) 'display)
+ (get-char-property (point) 'display)))
+ (and (get-char-property (point) 'composition)
+ (eq (get-char-property (1- (point)) 'composition)
+ (get-char-property (point) 'composition)))))))
active-input-string caret-seen)
;; Decode the active input area text with inheriting faces and
;; the caret position.
(setq active-input-string
(mapconcat
(lambda (str)
- (let ((decoded (mac-utxt-to-string str coding)))
+ (let ((decoded (funcall decode-fun str coding)))
(put-text-property 0 (length decoded) 'face
(get-text-property 0 'face str) decoded)
(when (and (not caret-seen)
(get-text-property 0 'cursor str))
(setq caret-seen t)
- (if use-echo-area
+ (if (or use-echo-area (null cursor-type))
(put-text-property 0 1 'face 'mac-ts-caret-position
decoded)
(put-text-property 0 1 'cursor t decoded)))
@@ -2030,7 +2038,7 @@ either in the current buffer or in the echo area."
;; macro being defined.
(apply 'isearch-unread
(append (mac-replace-untranslated-utf-8-chars
- (mac-utxt-to-string confirmed coding)) '())))
+ (funcall decode-fun confirmed coding)) '())))
;; The event is successfully processed. Sync the sequence number.
(setq mac-ts-update-active-input-area-seqno (1+ seqno))))
diff --git a/lisp/term/x-win.el b/lisp/term/x-win.el
index 99e6dede20..1c8058835d 100644
--- a/lisp/term/x-win.el
+++ b/lisp/term/x-win.el
@@ -188,9 +188,13 @@
initial-frame-alist)))
(defvar x-display-name nil
- "The X display name specifying server and X frame.")
+ "The name of the X display on which Emacs was started.
+
+For the X display name of individual frames, see the `display'
+frame parameter.")
(defun x-handle-display (switch)
+ "Handle -display DISPLAY option."
(setq x-display-name (car x-invocation-args)
x-invocation-args (cdr x-invocation-args))
;; Make subshell programs see the same DISPLAY value Emacs really uses.
diff --git a/lisp/textmodes/fill.el b/lisp/textmodes/fill.el
index 9218c565c9..95f73b5695 100644
--- a/lisp/textmodes/fill.el
+++ b/lisp/textmodes/fill.el
@@ -408,18 +408,19 @@ Point is moved to just past the fill prefix on the first line."
"\\)?[ \t]*")
"[ \t]*")))
(goto-char from)
- (if (>= (+ (current-left-margin) (length prefix))
- (current-fill-column))
- (error "fill-prefix too long for specified width"))
+ ;; Why signal an error here? The problem needs to be caught elsewhere.
+ ;; (if (>= (+ (current-left-margin) (length prefix))
+ ;; (current-fill-column))
+ ;; (error "fill-prefix too long for specified width"))
(forward-line 1)
(while (< (point) to)
(if (looking-at fpre)
- (delete-region (point) (match-end 0)))
+ (delete-region (point) (match-end 0)))
(forward-line 1))
(goto-char from)
(if (looking-at fpre)
(goto-char (match-end 0)))
- (setq from (point))))
+ (point)))
;; The `fill-space' property carries the string with which a newline
;; should be replaced when unbreaking a line (in fill-delete-newlines).
@@ -628,7 +629,12 @@ space does not end a sentence, so don't break a line there."
(oneleft nil))
(beginning-of-line)
- (setq from (point))
+ ;; We used to round up to whole line, but that prevents us from
+ ;; correctly handling filling of mixed code-and-comment where we do want
+ ;; to fill the comment but not the code. So only use (point) if it's
+ ;; further than `from', which means that `from' is followed by some
+ ;; number of empty lines.
+ (setq from (max (point) from))
;; Delete all but one soft newline at end of region.
;; And leave TO before that one.
@@ -799,7 +805,7 @@ If `fill-paragraph-function' is nil, return the `fill-prefix' used for filling."
If we're not in a comment, just return nil so that the caller
can take care of filling. JUSTIFY is used as in `fill-paragraph'."
(comment-normalize-vars)
- (let (has-code-and-comment ; Non-nil if it contains code and a comment.
+ (let (has-code-and-comment ; Non-nil if it contains code and a comment.
comin comstart)
;; Figure out what kind of comment we are looking at.
(save-excursion
@@ -857,12 +863,13 @@ can take care of filling. JUSTIFY is used as in `fill-paragraph'."
(or (comment-search-forward (line-end-position) t)
(point)))
(looking-at comment-re))
- 1 2))))
- ;; Find the beginning of the first line past the region to fill.
- (save-excursion
- (while (progn (forward-line 1)
- (looking-at comment-re)))
- (point)))
+ (progn (setq comstart (point)) 1)
+ (progn (setq comstart (point)) 2)))))
+ ;; Find the beginning of the first line past the region to fill.
+ (save-excursion
+ (while (progn (forward-line 1)
+ (looking-at comment-re)))
+ (point)))
;; Obey paragraph starters and boundaries within comments.
(let* ((paragraph-separate
;; Use the default values since they correspond to
@@ -874,7 +881,7 @@ can take care of filling. JUSTIFY is used as in `fill-paragraph'."
(concat paragraph-start "\\|[ \t]*\\(?:"
comment-start-skip "\\)\\(?:"
(default-value 'paragraph-start) "\\)"))
- ;; We used to reply on fill-prefix to break paragraph at
+ ;; We used to rely on fill-prefix to break paragraph at
;; comment-starter changes, but it did not work for the
;; first line (mixed comment&code).
;; We now use comment-re instead to "manually" make sure
@@ -893,7 +900,7 @@ can take care of filling. JUSTIFY is used as in `fill-paragraph'."
;; Find the fill-prefix to use.
(cond
- (fill-prefix) ; Use the user-provided fill prefix.
+ (fill-prefix) ; Use the user-provided fill prefix.
((and adaptive-fill-mode ; Try adaptive fill mode.
(setq fill-prefix (fill-context-prefix beg end))
(string-match comment-start-skip fill-prefix)))
@@ -903,7 +910,7 @@ can take care of filling. JUSTIFY is used as in `fill-paragraph'."
;; Don't fill with narrowing.
(or
(fill-region-as-paragraph
- beg end justify nil
+ (max comstart beg) end justify nil
;; Don't canonicalize spaces within the code just before
;; the comment.
(save-excursion
diff --git a/lisp/textmodes/org.el b/lisp/textmodes/org.el
index b2d79c1acb..4cda0d6b3a 100644
--- a/lisp/textmodes/org.el
+++ b/lisp/textmodes/org.el
@@ -5,7 +5,7 @@
;; Author: Carsten Dominik <dominik at science dot uva dot nl>
;; Keywords: outlines, hypermedia, calendar, wp
;; Homepage: http://www.astro.uva.nl/~dominik/Tools/org/
-;; Version: 4.39
+;; Version: 4.43
;;
;; This file is part of GNU Emacs.
;;
@@ -90,6 +90,22 @@
;;
;; Recent changes
;; --------------
+;; Version 4.43
+;; - Big fixes
+;;
+;; Version 4.42
+;; - Bug fixes
+;; - `s' key in the agenda saves all org-mode buffers.
+;;
+;; Version 4.41
+;; - Shift-curser keys can modify inactive time stamps (inactive time
+;; stamps are the ones in [...] brackets.
+;; - Toggle all checkboxes in a region/below a headline.
+;; - Bug fixes.
+;;
+;; Version 4.40
+;; - Bug fixes.
+;;
;; Version 4.39
;; - Special tag ARCHIVE keeps a subtree closed and away from agenda lists.
;; - LaTeX code in Org-mode files can be converted to images for HTML.
@@ -196,7 +212,7 @@
;;; Customization variables
-(defvar org-version "4.39"
+(defvar org-version "4.43"
"The version number of the file org.el.")
(defun org-version ()
(interactive)
@@ -1779,10 +1795,10 @@ This is a property list with the following properties:
:matchers a list indicating which matchers should be used to
find LaTeX fragments. Valid members of this list are:
\"begin\" find environments
- \"$\" find mathc expressions surrounded by $...$
+ \"$\" find math expressions surrounded by $...$
\"$$\" find math expressions surrounded by $$....$$
- \"\\(\" find math expressions surrounded by \\(...\\)
- \"\\[\" find math expressions surrounded by \\[...\\]"
+ \"\\(\" find math expressions surrounded by \\(...\\)
+ \"\\ [\" find math expressions surrounded by \\ [...\\]"
:group 'org-latex
:type 'plist)
@@ -1902,6 +1918,11 @@ headline Only export the headline, but skip the tree below it."
:group 'org-export
:type 'boolean)
+(defcustom org-export-remove-timestamps-from-toc t
+ "Nil means, remove timestamps from the table of contents entries."
+ :group 'org-export
+ :type 'boolean)
+
(defcustom org-export-with-tags t
"Nil means, do not export tags, just remove them from headlines."
:group 'org-export-general
@@ -2673,9 +2694,13 @@ Also put tags into group 4 if tags are present.")
(remove-text-properties 0 (length s) org-rm-props s)
s)
+(defsubst org-mode-p ()
+ "Check if the current buffer is in Org-mode."
+ (eq major-mode 'org-mode))
+
(defun org-set-regexps-and-options ()
"Precompute regular expressions for current buffer."
- (when (eq major-mode 'org-mode)
+ (when (org-mode-p)
(let ((re (org-make-options-regexp
'("CATEGORY" "SEQ_TODO" "PRI_TODO" "TYP_TODO"
"STARTUP" "ARCHIVE" "TAGS")))
@@ -2853,6 +2878,8 @@ Also put tags into group 4 if tags are present.")
(defvar orgtbl-mode) ; defined later in this file
(defvar Info-current-file) ; from info.el
(defvar Info-current-node) ; from info.el
+(defvar texmathp-why) ; from texmathp.el
+(defvar org-latex-regexps)
;;; Define the mode
@@ -2944,9 +2971,7 @@ The following commands are available:
;; Paragraphs and auto-filling
(org-set-autofill-regexps)
(org-update-radio-target-regexp)
- ;; Settings for Calc embedded mode
- (set (make-local-variable 'calc-embedded-open-formula) "|\\|\n")
- (set (make-local-variable 'calc-embedded-close-formula) "|\\|\n")
+
(if (and org-insert-mode-line-in-empty-file
(interactive-p)
(= (point-min) (point-max)))
@@ -3070,10 +3095,12 @@ that will be added to PLIST. Returns the string that was modified."
"Regular expression for fast time stamp matching.")
(defconst org-ts-regexp-both "[[<]\\([0-9]\\{4\\}-[0-9]\\{2\\}-[0-9]\\{2\\}[^\r\n>]*?\\)[]>]"
"Regular expression for fast time stamp matching.")
-(defconst org-ts-regexp1 "\\(\\([0-9]\\{4\\}\\)-\\([0-9]\\{2\\}\\)-\\([0-9]\\{2\\}\\)\\([^0-9>\r\n]*\\)\\(\\([0-9]\\{2\\}\\):\\([0-9]\\{2\\}\\)\\)?\\)"
+(defconst org-ts-regexp1 "\\(\\([0-9]\\{4\\}\\)-\\([0-9]\\{2\\}\\)-\\([0-9]\\{2\\}\\)\\([^]0-9>\r\n]*\\)\\(\\([0-9]\\{2\\}\\):\\([0-9]\\{2\\}\\)\\)?\\)"
"Regular expression matching time strings for analysis.")
(defconst org-ts-regexp2 (concat "<" org-ts-regexp1 ">")
"Regular expression matching time stamps, with groups.")
+(defconst org-ts-regexp3 (concat "[[<]" org-ts-regexp1 "[]>]")
+ "Regular expression matching time stamps (also [..]), with groups.")
(defconst org-tr-regexp (concat org-ts-regexp "--?-?" org-ts-regexp)
"Regular expression matching a time stamp range.")
(defconst org-tsr-regexp (concat org-ts-regexp "\\(--?-?"
@@ -3574,7 +3601,7 @@ This function is the default value of the hook `org-cycle-hook'."
"Move cursor to the first headline and recenter the headline.
Optional argument N means, put the headline into the Nth line of the window."
(goto-char (point-min))
- (when (re-search-forward (concat "^" outline-regexp) nil t)
+ (when (re-search-forward (concat "^\\(" outline-regexp "\\)") nil t)
(beginning-of-line)
(recenter (prefix-numeric-value N))))
@@ -4152,12 +4179,31 @@ If optional TXT is given, check this string instead of the current kill."
(skip-chars-forward " \t")
(looking-at "\\[[ X]\\]"))))
-(defun org-toggle-checkbox ()
+(defun org-toggle-checkbox (&optional arg)
"Toggle the checkbox in the current line."
- (interactive)
- (save-excursion
- (if (org-at-item-checkbox-p)
- (replace-match (if (equal (match-string 0) "[ ]") "[X]" "[ ]") t t))))
+ (interactive "P")
+ (catch 'exit
+ (let (beg end status (firstnew 'unknown))
+ (cond
+ ((org-region-active-p)
+ (setq beg (region-beginning) end (region-end)))
+ ((org-on-heading-p)
+ (setq beg (point) end (save-excursion (outline-next-heading) (point))))
+ ((org-at-item-checkbox-p)
+ (save-excursion
+ (replace-match (if (equal (match-string 0) "[ ]") "[X]" "[ ]") t t))
+ (throw 'exit t))
+ (t (error "Not at a checkbox or heading, and no active region")))
+ (save-excursion
+ (goto-char beg)
+ (while (< (point) end)
+ (when (org-at-item-checkbox-p)
+ (setq status (equal (match-string 0) "[X]"))
+ (when (eq firstnew 'unknown)
+ (setq firstnew (not status)))
+ (replace-match
+ (if (if arg (not status) firstnew) "[X]" "[ ]") t t))
+ (beginning-of-line 2))))))
(defun org-get-indentation (&optional line)
"Get the indentation of the current line, interpreting tabs.
@@ -4211,7 +4257,7 @@ If the cursor is not in an item, throw an error."
(while t
(beginning-of-line 0)
(if (< (point) limit) (throw 'exit nil))
- (unless (looking-at " \t]*$")
+ (unless (looking-at "[ \t]*$")
(skip-chars-forward " \t")
(setq ind1 (current-column))
(if (< ind1 ind)
@@ -4483,7 +4529,7 @@ this heading. "
(let (this-command) (org-copy-subtree))
(set-buffer buffer)
;; Enforce org-mode for the archive buffer
- (if (not (eq major-mode 'org-mode))
+ (if (not (org-mode-p))
;; Force the mode for future visits.
(let ((org-insert-mode-line-in-empty-file t))
(call-interactively 'org-mode)))
@@ -4570,7 +4616,7 @@ When TAG is non-nil, don't move trees, but mark them with the ARCHIVE tag."
(save-excursion
(goto-char begm)
(while (re-search-forward re1 endm t)
- beg (match-beginning 0)
+ (setq beg (match-beginning 0)
end (save-excursion (org-end-of-subtree t) (point)))
(goto-char beg)
(if (re-search-forward re end t)
@@ -4583,10 +4629,9 @@ When TAG is non-nil, don't move trees, but mark them with the ARCHIVE tag."
(org-toggle-tag org-archive-tag 'on)
(org-archive-subtree))
(setq cntarch (1+ cntarch)))
- (goto-char end))))
+ (goto-char end)))))
(message "%d trees archived" cntarch)))
-
(defun org-cycle-hide-archived-subtrees (state)
"Re-hide all archived subtrees after a visibility state change."
(when (and (not org-cycle-open-archived-trees)
@@ -4653,28 +4698,31 @@ the children that do not contain any open TODO items."
(defun org-prepare-agenda-buffers (files)
"Create buffers for all agenda files, protect archived trees and comments."
+ (interactive)
(let ((pa '(:org-archived t))
(pc '(:org-comment t))
(pall '(:org-archived t :org-comment t))
(rea (concat ":" org-archive-tag ":"))
- file re)
+ bmp file re)
(save-excursion
(while (setq file (pop files))
(org-check-agenda-file file)
(set-buffer (org-get-agenda-file-buffer file))
(widen)
+ (setq bmp (buffer-modified-p))
(save-excursion
(remove-text-properties (point-min) (point-max) pall)
(when org-agenda-skip-archived-trees
(goto-char (point-min))
(while (re-search-forward rea nil t)
(if (org-on-heading-p)
- (add-text-properties (point-at-bol) (org-end-of-subtree) pa))))
+ (add-text-properties (point-at-bol) (org-end-of-subtree t) pa))))
(goto-char (point-min))
(setq re (concat "^\\*+ +" org-comment-string "\\>"))
(while (re-search-forward re nil t)
(add-text-properties
- (match-beginning 0) (org-end-of-subtree) pc)))))))
+ (match-beginning 0) (org-end-of-subtree t) pc)))
+ (set-buffer-modified-p bmp)))))
(defun org-agenda-skip ()
"Throw to `:skip' in places that should be skipped."
@@ -4818,7 +4866,7 @@ Error if there is no scuh block at point."
(defun org-update-all-dblocks ()
"Update all dynamic blocks in the buffer.
This function can be used in a hook."
- (when (eq major-mode 'org-mode)
+ (when (org-mode-p)
(org-map-dblocks 'org-update-dblock)))
@@ -5208,6 +5256,12 @@ that the match should indeed be shown."
(if (featurep 'xemacs)
(set-extent-property ovl prop value)
(overlay-put ovl prop value)))
+(defun org-overlays-at (pos)
+ (if (featurep 'xemacs) (extents-at pos) (overlays-at pos)))
+(defun org-overlay-start (o)
+ (if (featurep 'xemacs) (extent-start-position o) (overlay-start o)))
+(defun org-overlay-end (o)
+ (if (featurep 'xemacs) (extent-end-position o) (overlay-end o)))
(defvar org-occur-highlights nil)
(make-variable-buffer-local 'org-occur-highlights)
@@ -5675,7 +5729,7 @@ With prefix ARG, change by that many units."
"Increase the date in the time stamp by one day.
With prefix ARG, change that many days."
(interactive "p")
- (if (and (not (org-at-timestamp-p))
+ (if (and (not (org-at-timestamp-p t))
(org-on-heading-p))
(org-todo 'up)
(org-timestamp-change (prefix-numeric-value arg) 'day)))
@@ -5684,7 +5738,7 @@ With prefix ARG, change that many days."
"Decrease the date in the time stamp by one day.
With prefix ARG, change that many days."
(interactive "p")
- (if (and (not (org-at-timestamp-p))
+ (if (and (not (org-at-timestamp-p t))
(org-on-heading-p))
(org-todo 'down)
(org-timestamp-change (- (prefix-numeric-value arg)) 'day)))
@@ -5694,14 +5748,14 @@ With prefix ARG, change that many days."
(<= (match-beginning n) pos)
(>= (match-end n) pos)))
-(defun org-at-timestamp-p ()
+(defun org-at-timestamp-p (&optional also-inactive)
"Determine if the cursor is in or at a timestamp."
(interactive)
- (let* ((tsr org-ts-regexp2)
+ (let* ((tsr (if also-inactive org-ts-regexp3 org-ts-regexp2))
(pos (point))
(ans (or (looking-at tsr)
(save-excursion
- (skip-chars-backward "^<\n\r\t")
+ (skip-chars-backward "^[<\n\r\t")
(if (> (point) 1) (backward-char 1))
(and (looking-at tsr)
(> (- (match-end 0) pos) -1))))))
@@ -5726,7 +5780,7 @@ in the timestamp determines what will be changed."
org-ts-what
(pos (point))
ts time time0)
- (if (not (org-at-timestamp-p))
+ (if (not (org-at-timestamp-p t))
(error "Not at a timestamp"))
(setq org-ts-what (or what org-ts-what))
(setq fmt (if (<= (abs (- (cdr org-ts-lengths)
@@ -5734,6 +5788,8 @@ in the timestamp determines what will be changed."
1)
(cdr org-time-stamp-formats)
(car org-time-stamp-formats)))
+ (if (= (char-after (match-beginning 0)) ?\[)
+ (setq fmt (concat "[" (substring fmt 1 -1) "]")))
(setq ts (match-string 0))
(replace-match "")
(setq time0 (org-parse-time-string ts))
@@ -6187,6 +6243,7 @@ The following commands are available:
(define-key org-agenda-mode-map "r" 'org-agenda-redo)
(define-key org-agenda-mode-map "q" 'org-agenda-quit)
(define-key org-agenda-mode-map "x" 'org-agenda-exit)
+(define-key org-agenda-mode-map "s" 'org-save-all-org-buffers)
(define-key org-agenda-mode-map "P" 'org-agenda-show-priority)
(define-key org-agenda-mode-map "T" 'org-agenda-show-tags)
(define-key org-agenda-mode-map "n" 'next-line)
@@ -6203,7 +6260,6 @@ The following commands are available:
(define-key org-agenda-mode-map "C" 'org-agenda-convert-date)
(define-key org-agenda-mode-map "m" 'org-agenda-phases-of-moon)
(define-key org-agenda-mode-map "M" 'org-agenda-phases-of-moon)
-(define-key org-agenda-mode-map "s" 'org-agenda-sunrise-sunset)
(define-key org-agenda-mode-map "S" 'org-agenda-sunrise-sunset)
(define-key org-agenda-mode-map "h" 'org-agenda-holidays)
(define-key org-agenda-mode-map "H" 'org-agenda-holidays)
@@ -6257,6 +6313,7 @@ The following commands are available:
"--"
;; ["New agenda command" org-agenda t]
["Rebuild buffer" org-agenda-redo t]
+ ["Save all Org-mode Buffers" org-save-all-org-buffers t]
"--"
["Goto Today" org-agenda-goto-today (org-agenda-check-type nil 'agenda 'timeline)]
["Next Dates" org-agenda-later (org-agenda-check-type nil 'agenda)]
@@ -6310,7 +6367,7 @@ first press `1' to indicate that the agenda should be temporarily (until the
next use of \\[org-agenda]) restricted to the current file."
(interactive "P")
(catch 'exit
- (let ((restrict-ok (and buffer-file-name (eq major-mode 'org-mode)))
+ (let ((restrict-ok (and buffer-file-name (org-mode-p)))
(bfn buffer-file-name)
(custom org-agenda-custom-commands)
c entry key type string)
@@ -6385,7 +6442,7 @@ C Configure your own agenda commands")
(defun org-check-for-org-mode ()
"Make sure current buffer is in org-mode. Error if not."
- (or (eq major-mode 'org-mode)
+ (or (org-mode-p)
(error "Cannot execute org-mode agenda command on buffer in %s."
major-mode)))
@@ -6828,6 +6885,14 @@ Org-mode buffers visited directly by the user will not be touched."
(setq org-agenda-new-buffers nil)
(org-agenda-quit))
+;; FIXME: move this function.
+(defun org-save-all-org-buffers ()
+ "Save all Org-mode buffers without user confirmation."
+ (interactive)
+ (message "Saving all Org-mode buffers...")
+ (save-some-buffers t 'org-mode-p)
+ (message "Saving all Org-mode buffers... done"))
+
(defun org-agenda-redo ()
"Rebuild Agenda.
When this is the global TODO list, a prefix argument will be interpreted."
@@ -7289,7 +7354,7 @@ the documentation of `org-diary'."
;; If file does not exist, make sure an error message ends up in diary
(list (format "ORG-AGENDA-ERROR: No such org-file %s" file))
(with-current-buffer buffer
- (unless (eq major-mode 'org-mode)
+ (unless (org-mode-p)
(error "Agenda file %s is not in `org-mode'" file))
(setq org-category-table (org-get-category-table))
(let ((case-fold-search nil))
@@ -7372,9 +7437,11 @@ the documentation of `org-diary'."
(goto-char (point-min))
(while (re-search-forward regexp nil t)
(catch :skip
- (and org-agenda-todo-ignore-scheduled
- (looking-at sched-re)
- (throw :skip nil))
+ (when (and org-agenda-todo-ignore-scheduled
+ (looking-at sched-re))
+ ;; FIXME: the following test also happens below, but we need it here
+ (or org-agenda-todo-list-sublevels (org-end-of-subtree 'invisible))
+ (throw :skip nil))
(org-agenda-skip)
(goto-char (match-beginning 1))
(setq marker (org-agenda-new-marker (1+ (match-beginning 0)))
@@ -7961,7 +8028,7 @@ and by additional input from the age of a schedules or deadline entry."
(switch-to-buffer-other-window buffer)
(widen)
(goto-char pos)
- (when (eq major-mode 'org-mode)
+ (when (org-mode-p)
(org-show-hidden-entry)
(save-excursion
(and (outline-next-heading)
@@ -7979,7 +8046,7 @@ and by additional input from the age of a schedules or deadline entry."
(delete-other-windows)
(widen)
(goto-char pos)
- (when (eq major-mode 'org-mode)
+ (when (org-mode-p)
(org-show-hidden-entry)
(save-excursion
(and (outline-next-heading)
@@ -8572,7 +8639,7 @@ The prefix arg TODO-ONLY limits the search to TODO entries."
(format "ORG-AGENDA-ERROR: No such org-file %s" file))
rtnall (append rtnall rtn))
(with-current-buffer buffer
- (unless (eq major-mode 'org-mode)
+ (unless (org-mode-p)
(error "Agenda file %s is not in `org-mode'" file))
(setq org-category-table (org-get-category-table))
(save-excursion
@@ -8636,7 +8703,7 @@ With prefix ARG, realign all tags in headings in the current buffer."
nil nil current 'org-tags-history))))
(while (string-match "[-+&]+" tags)
(setq tags (replace-match ":" t t tags))))
-
+
(unless (setq empty (string-match "\\`[\t ]*\\'" tags))
(unless (string-match ":$" tags) (setq tags (concat tags ":")))
(unless (string-match "^:" tags) (setq tags (concat ":" tags))))
@@ -8653,6 +8720,8 @@ With prefix ARG, realign all tags in headings in the current buffer."
(if (equal tags "")
(save-excursion
(beginning-of-line 1)
+ (skip-chars-forward "*")
+ (if (= (char-after) ?\ ) (forward-char 1))
(and (re-search-forward "[ \t]+$" (point-at-eol) t)
(replace-match "")))
(move-to-column (max (current-column)
@@ -9099,7 +9168,7 @@ in all files."
((string-match "^/\\(.*\\)/$" s)
;; A regular expression
(cond
- ((eq major-mode 'org-mode)
+ ((org-mode-p)
(org-occur (match-string 1 s)))
;;((eq major-mode 'dired-mode)
;; (grep (concat "grep -n -e '" (match-string 1 s) "' *")))
@@ -9155,7 +9224,7 @@ in all files."
(if (search-forward s nil t)
(goto-char (match-beginning 0))
(error "No match"))))
- (and (eq major-mode 'org-mode) (org-show-hierarchy-above))))
+ (and (org-mode-p) (org-show-hierarchy-above))))
(defun org-search-not-link (&rest args)
"Execute `re-search-forward', but only accept matches that are not a link."
@@ -9609,7 +9678,7 @@ If the file does not exist, an error is thrown."
((consp cmd)
(eval cmd))
(t (funcall (cdr (assq 'file org-link-frame-setup)) file)))
- (and (eq major-mode 'org-mode) (eq old-mode 'org-mode)
+ (and (org-mode-p) (eq old-mode 'org-mode)
(or (not (equal old-buffer (current-buffer)))
(not (equal old-pos (point))))
(org-mark-ring-push old-pos old-buffer))))
@@ -9788,7 +9857,7 @@ For file links, arg negates `org-context-in-file-links'."
(abbreviate-file-name buffer-file-name))
link (org-make-link cpltxt)))
- ((eq major-mode 'org-mode)
+ ((org-mode-p)
;; Just link to current headline
(setq cpltxt (concat "file:"
(abbreviate-file-name buffer-file-name)))
@@ -10633,7 +10702,7 @@ This is being used to correctly align a single field after TAB or RET.")
(move-marker org-table-aligned-begin-marker (point))
(insert new)
(move-marker org-table-aligned-end-marker (point))
- (when (and orgtbl-mode (not (eq major-mode 'org-mode)))
+ (when (and orgtbl-mode (not (org-mode-p)))
(goto-char org-table-aligned-begin-marker)
(while (org-hide-wide-columns org-table-aligned-end-marker)))
;; Try to move to the old location (approximately)
@@ -12073,10 +12142,10 @@ not overwrite the stored one."
;; Insert ranges in current column
(while (string-match "\\&[-I0-9]+" form)
(setq form (replace-match
- (save-match-data
- (org-table-get-vertical-vector (match-string 0 form)
- nil n0))
- t t form)))
+ (save-match-data
+ (org-table-get-vertical-vector (match-string 0 form)
+ nil n0))
+ t t form)))
(if lispp
(setq ev (eval (eval (read form)))
ev (if (numberp ev) (number-to-string ev) ev))
@@ -12399,7 +12468,7 @@ table editor in arbitrary modes.")
(defun orgtbl-mode (&optional arg)
"The `org-mode' table editor as a minor mode for use in other modes."
(interactive)
- (if (eq major-mode 'org-mode)
+ (if (org-mode-p)
;; Exit without error, in case some hook functions calls this
;; by accident in org-mode.
(message "Orgtbl-mode is not useful in org-mode, command ignored")
@@ -13173,7 +13242,7 @@ translations. There is currently no way for users to extend this.")
(file-name-nondirectory
org-current-export-file)))
org-current-export-dir nil "Creating LaTeX image %s"))
- (message "Expriting...")
+ (message "Exporting...")
;; Normalize links: Convert angle and plain links into bracket links
(goto-char (point-min))
@@ -13808,7 +13877,7 @@ lang=\"%s\" xml:lang=\"%s\">
level (org-tr-level level)
txt (save-match-data
(org-html-expand
- (org-html-cleanup-toc-line
+ (org-export-cleanup-toc-line
(match-string 3 line))))
todo
(or (and org-export-mark-todo-in-toc
@@ -14044,9 +14113,9 @@ lang=\"%s\" xml:lang=\"%s\">
;; Normal lines
(when (string-match
(cond
- ((eq llt t) "^\\([ \t]*\\)\\(\\([-+*]\\)\\|\\([0-9]+[.)]\\) \\)?\\( *[^ \t\n\r]\\|[ \t]*$\\)")
- ((= llt ?.) "^\\([ \t]*\\)\\(\\([-+*]\\)\\|\\([0-9]+\\.\\) \\)?\\( *[^ \t\n\r]\\|[ \t]*$\\)")
- ((= llt ?\)) "^\\( \t]*\\)\\(\\([-+*]\\)\\|\\([0-9]+)\\) \\)?\\( *[^ \t\n\r]\\|[ \t]*$\\)")
+ ((eq llt t) "^\\([ \t]*\\)\\(\\([-+*] \\)\\|\\([0-9]+[.)]\\) \\)?\\( *[^ \t\n\r]\\|[ \t]*$\\)")
+ ((= llt ?.) "^\\([ \t]*\\)\\(\\([-+*] \\)\\|\\([0-9]+\\.\\) \\)?\\( *[^ \t\n\r]\\|[ \t]*$\\)")
+ ((= llt ?\)) "^\\( \t]*\\)\\(\\([-+*] \\)\\|\\([0-9]+)\\) \\)?\\( *[^ \t\n\r]\\|[ \t]*$\\)")
(t (error "Invalid value of `org-plain-list-ordered-item-terminator'")))
line)
(setq ind (org-get-string-indentation line)
@@ -14334,12 +14403,13 @@ But it has the disadvantage, that Org-mode's HTML conversions cannot be used."
(setq s (replace-match "&gt;" t t s))))
s)
-(defun org-html-cleanup-toc-line (s)
+(defun org-export-cleanup-toc-line (s)
"Remove tags and time staps from lines going into the toc."
(if (string-match " +:[a-zA-Z0-9_@:]+: *$" s)
(setq s (replace-match "" t t s)))
- (while (string-match org-maybe-keyword-time-regexp s)
- (setq s (replace-match "" t t s)))
+ (when org-export-remove-timestamps-from-toc
+ (while (string-match org-maybe-keyword-time-regexp s)
+ (setq s (replace-match "" t t s))))
s)
(defun org-html-expand (string)
@@ -14816,45 +14886,78 @@ a time), or the day by one (if it does not contain a time)."
This mode supports entering LaTeX environment and math in LaTeX fragments
in Org-mode.
\\{org-cdlatex-mode-map}"
- nil " CDLtx" nil
+ nil " OCDL" nil
(when org-cdlatex-mode (require 'cdlatex))
(unless org-cdlatex-texmathp-advice-is-done
(setq org-cdlatex-texmathp-advice-is-done t)
(defadvice texmathp (around org-math-always-on activate)
"Always return t in org-mode buffers.
This is because we want to insert math symbols without dollars even outside
-the LaTeX math segments.
+the LaTeX math segments. If Orgmode thinks that point is actually inside
+en embedded LaTeX fragement, let texmathp do its job.
\\[org-cdlatex-mode-map]"
(interactive)
- (if (or (not (eq major-mode 'org-mode))
- (org-inside-LaTeX-fragment-p))
- ad-do-it
- (if (eq this-command 'cdlatex-math-symbol)
- (setq ad-return-value t))))))
+ (let (p)
+ (cond
+ ((not (org-mode-p)) ad-do-it)
+ ((eq this-command 'cdlatex-math-symbol)
+ (setq ad-return-value t
+ texmathp-why '("cdlatex-math-symbol in org-mode" . 0)))
+ (t
+ (let ((p (org-inside-LaTeX-fragment-p)))
+ (if (and p (member (car p) (plist-get org-format-latex-options :matchers)))
+ (setq ad-return-value t
+ texmathp-why '("Org-mode embedded math" . 0))
+ (if p ad-do-it)))))))))
+
+(defun turn-on-org-cdlatex ()
+ "Unconditionally turn on `org-cdlatex-mode'."
+ (org-cdlatex-mode 1))
(defun org-inside-LaTeX-fragment-p ()
- "Test if point is inside a LaTeX fragment. I.e. after a \\begin, \\(, \\[, $, or $$, withoout the corresponding closing
-sequence appearing also before point."
- (let ((pos (point))
- (lim (progn
- (re-search-backward (concat "^\\(" paragraph-start "\\)") nil t)
- (point)))
- dollar-on p1)
- (goto-char pos)
- (if (re-search-backward "\\(\\\\begin{\\|\\\\(\\|\\\\\\[\\)\\|\\(\\\\end{\\|\\\\)\\|\\\\\\]\\)\\|\\(\\$\\)" lim t)
- (progn
- (goto-char pos)
- (cond
- ((match-beginning 1) (match-beginning 0))
- ((match-beginning 2) nil)
- (t (while (re-search-backward "\\$" lim t)
- (setq dollar-on (not dollar-on))
- (if (= (char-before) ?$) (backward-char 1))
- (setq p1 (or p1 (point))))
- (goto-char pos)
- (if dollar-on p1))))
+ "Test if point is inside a LaTeX fragment.
+I.e. after a \\begin, \\(, \\[, $, or $$, without the corresponding closing
+sequence appearing also before point.
+Even though the matchers for math are configurable, this function assumes
+that \\begin, \\(, \\[, and $$ are always used. Only the single dollar
+delimiters are skipped when they have been removed by customization.
+The return value is nil, or a cons cell with the delimiter and
+and the position of this delimiter.
+
+This function does a reasonably good job, but can locally be fooled by
+for example currency specifications. For example it will assume being in
+inline math after \"$22.34\". The LaTeX fragment formatter will only format
+fragments that are properly closed, but during editing, we have to live
+with the uncertainty caused by missing closing delimiters. This function
+looks only before point, not after."
+ (catch 'exit
+ (let ((pos (point))
+ (dodollar (member "$" (plist-get org-format-latex-options :matchers)))
+ (lim (progn
+ (re-search-backward (concat "^\\(" paragraph-start "\\)") nil t)
+ (point)))
+ dd-on str (start 0) m re)
(goto-char pos)
- nil)))
+ (when dodollar
+ (setq str (concat (buffer-substring lim (point)) "\000 X$.")
+ re (nth 1 (assoc "$" org-latex-regexps)))
+ (while (string-match re str start)
+ (cond
+ ((= (match-end 0) (length str))
+ (throw 'exit (cons "$" (+ lim (match-beginning 0)))))
+ ((= (match-end 0) (- (length str) 5))
+ (throw 'exit nil))
+ (t (setq start (match-end 0))))))
+ (when (setq m (re-search-backward "\\(\\\\begin{[^}]*}\\|\\\\(\\|\\\\\\[\\)\\|\\(\\\\end{[^}]*}\\|\\\\)\\|\\\\\\]\\)\\|\\(\\$\\$\\)" lim t))
+ (goto-char pos)
+ (and (match-beginning 1) (throw 'exit (cons (match-string 1) m)))
+ (and (match-beginning 2) (throw 'exit nil))
+ ;; count $$
+ (while (re-search-backward "\\$\\$" lim t)
+ (setq dd-on (not dd-on)))
+ (goto-char pos)
+ (if dd-on (cons "$$" m))))))
+
(defun org-try-cdlatex-tab ()
"Check if it makes sense to execute `cdlatex-tab', and do it if yes.
@@ -14927,7 +15030,7 @@ The images can be removed again with \\[org-ctrl-c-ctrl-c]."
msg "Creating images for subtree...%s"))
(t
(if (setq at (org-inside-LaTeX-fragment-p))
- (goto-char (max (point-min) (- at 2)))
+ (goto-char (max (point-min) (- (cdr at) 2)))
(org-back-to-heading))
(setq beg (point) end (progn (outline-next-heading) (point))
msg (if at "Creating image...%s"
@@ -14941,6 +15044,16 @@ The images can be removed again with \\[org-ctrl-c-ctrl-c]."
default-directory 'overlays msg at)
(message msg "done. Use `C-c C-c' to remove images.")))))
+(defvar org-latex-regexps
+ '(("begin" "^[ \t]*\\(\\\\begin{\\([a-zA-Z0-9\\*]+\\)[^\000]+?\\\\end{\\2}\\)" 1 t)
+ ;; ("$" "\\([ (]\\|^\\)\\(\\(\\([$]\\)\\([^ \r\n,.$].*?\\(\n.*?\\)\\{0,5\\}[^ \r\n,.$]\\)\\4\\)\\)\\([ .,?;:'\")]\\|$\\)" 2 nil)
+ ;; \000 in the following regex is needed for org-inside-LaTeX-fragment-p
+ ("$" "\\([^$]\\)\\(\\(\\$\\([^ \r\n,;.$][^$\n\r]*?\\(\n[^$\n\r]*?\\)\\{0,2\\}[^ \r\n,.$]\\)\\$\\)\\)\\([ .,?;:'\")\000]\\|$\\)" 2 nil)
+ ("\\(" "\\\\([^\000]*?\\\\)" 0 nil)
+ ("\\[" "\\\\\\[[^\000]*?\\\\\\]" 0 t)
+ ("$$" "\\$\\$[^\000]*?\\$\\$" 0 t))
+ "Regular expressions for matching embedded LaTeX.")
+
(defun org-format-latex (prefix &optional dir overlays msg at)
"Replace LaTeX fragments with links to an image, and produce images."
(if (and overlays (fboundp 'clear-image-cache)) (clear-image-cache))
@@ -14949,12 +15062,7 @@ The images can be removed again with \\[org-ctrl-c-ctrl-c]."
(todir (file-name-directory absprefix))
(opt org-format-latex-options)
(matchers (plist-get opt :matchers))
- (re-list
- '(("begin" "^[ \t]*\\(\\\\begin{\\([a-zA-Z0-9\\*]+\\)[^\000]+?\\\\end{\\2}\\)" 1 t)
- ("$" "\\([ (]\\|^\\)\\(\\(\\([$]\\)\\([^ \r\n,.$].*?\\(\n.*?\\)\\{0,5\\}[^ \r\n,.$]\\)\\4\\)\\)\\([ .,?;:'\")]\\|$\\)" 2 nil)
- ("\\(" "\\\\([^\000]*?\\\\)" 0 nil)
- ("\\[" "\\\\\\[[^\000]*?\\\\\\]" 0 t)
- ("$$" "\\$\\$[^\000]*?\\$\\$" 0 t)))
+ (re-list org-latex-regexps)
(cnt 0) txt link beg end re e oldfiles
m n block linkfile movefile ov)
;; Make sure the directory exists
@@ -14971,7 +15079,7 @@ The images can be removed again with \\[org-ctrl-c-ctrl-c]."
(when (member m matchers)
(goto-char (point-min))
(while (re-search-forward re nil t)
- (when (or (not at) (equal at (match-beginning n)))
+ (when (or (not at) (equal (cdr at) (match-beginning n)))
(setq txt (match-string n)
beg (match-beginning n) end (match-end n)
cnt (1+ cnt)
@@ -15170,6 +15278,7 @@ The images can be removed again with \\[org-ctrl-c-ctrl-c]."
(define-key org-mode-map "\C-c\C-x\C-r" 'org-clock-report)
(define-key org-mode-map "\C-c\C-x\C-u" 'org-dblock-update)
(define-key org-mode-map "\C-c\C-x\C-l" 'org-preview-latex-fragment)
+(define-key org-mode-map "\C-c\C-x\C-b" 'org-toggle-checkbox)
(when (featurep 'xemacs)
(define-key org-mode-map 'button3 'popup-mode-menu))
@@ -15386,7 +15495,7 @@ Calls `org-timestamp-up' or `org-priority-up', depending on context.
See the individual commands for more information."
(interactive "P")
(cond
- ((org-at-timestamp-p) (call-interactively 'org-timestamp-up))
+ ((org-at-timestamp-p t) (call-interactively 'org-timestamp-up))
((org-on-heading-p) (call-interactively 'org-priority-up))
((org-at-item-p) (call-interactively 'org-previous-item))
(t (call-interactively 'org-beginning-of-item) (beginning-of-line 1))))
@@ -15397,7 +15506,7 @@ Calls `org-timestamp-down' or `org-priority-down', depending on context.
See the individual commands for more information."
(interactive "P")
(cond
- ((org-at-timestamp-p) (call-interactively 'org-timestamp-down))
+ ((org-at-timestamp-p t) (call-interactively 'org-timestamp-down))
((org-on-heading-p) (call-interactively 'org-priority-down))
(t (call-interactively 'org-next-item))))
@@ -15405,7 +15514,7 @@ See the individual commands for more information."
"Next TODO keyword or timestamp one day later, depending on context."
(interactive)
(cond
- ((org-at-timestamp-p) (call-interactively 'org-timestamp-up-day))
+ ((org-at-timestamp-p t) (call-interactively 'org-timestamp-up-day))
((org-on-heading-p) (org-call-with-arg 'org-todo 'right))
(t (org-shiftcursor-error))))
@@ -15413,7 +15522,7 @@ See the individual commands for more information."
"Previous TODO keyword or timestamp one day earlier, depending on context."
(interactive)
(cond
- ((org-at-timestamp-p) (call-interactively 'org-timestamp-down-day))
+ ((org-at-timestamp-p t) (call-interactively 'org-timestamp-down-day))
((org-on-heading-p) (org-call-with-arg 'org-todo 'left))
(t (org-shiftcursor-error))))
@@ -15749,8 +15858,8 @@ With optional NODE, go directly to that node."
(save-excursion
(while bl
(set-buffer (pop bl))
- (if (eq major-mode 'org-mode) (setq bl nil)))
- (when (eq major-mode 'org-mode)
+ (if (org-mode-p) (setq bl nil)))
+ (when (org-mode-p)
(easy-menu-change
'("Org") "File List for Agenda"
(append
@@ -15802,6 +15911,7 @@ contexts are:
:tags on the TAGS in a headline
:priority on the priority cookie in a headline
:item on the first line of a plain list item
+:item-bullet on the bullet/number of a plain list item
:checkbox on the checkbox in a plain list item
:table in an org-mode table
:table-special on a special filed in a table
@@ -15810,13 +15920,15 @@ contexts are:
:keyword on a keyword: SCHEDULED, DEADLINE, CLOSE,COMMENT, QUOTE.
:target on a <<target>>
:radio-target on a <<<radio-target>>>
+:latex-fragment on a LaTeX fragment
+:latex-preview on a LaTeX fragment with overlayed preview image
This function expects the position to be visible because it uses font-lock
faces as a help to recognize the following contexts: :table-special, :link,
and :keyword."
(let* ((f (get-text-property (point) 'face))
(faces (if (listp f) f (list f)))
- (p (point)) clist)
+ (p (point)) clist o)
;; First the large context
(cond
((org-on-heading-p)
@@ -15833,6 +15945,7 @@ and :keyword."
(push (org-point-in-group p 0 :priority) clist)))
((org-at-item-p)
+ (push (org-point-in-group p 2 :item-bullet) clist)
(push (list :item (point-at-bol)
(save-excursion (org-end-of-item) (point)))
clist)
@@ -15866,7 +15979,19 @@ and :keyword."
(goto-char (1- (match-beginning 0)))
(if (looking-at org-radio-target-regexp)
(push (org-point-in-group p 0 :radio-target) clist))
- (goto-char p)))
+ (goto-char p))
+ ((setq o (car (delq nil
+ (mapcar
+ (lambda (x)
+ (if (memq x org-latex-fragment-image-overlays) x))
+ (org-overlays-at (point))))))
+ (push (list :latex-fragment
+ (org-overlay-start o) (org-overlay-end o)) clist)
+ (push (list :latex-preview
+ (org-overlay-start o) (org-overlay-end o)) clist))
+ ((org-inside-LaTeX-fragment-p)
+ ;; FIXME: positions wring.
+ (push (list :latex-fragment (point) (point)) clist)))
(setq clist (nreverse (delq nil clist)))
clist))
@@ -15921,7 +16046,7 @@ return nil."
(set (make-local-variable 'paragraph-separate) "\f\\|\\*\\|[ ]*$\\|[ \t]*[:|]")
;; The paragraph starter includes hand-formatted lists.
(set (make-local-variable 'paragraph-start)
- "\f\\|[ ]*$\\|\\([*\f]+\\)\\|[ \t]*\\([-+*]\\|[0-9]+[.)][ \t]+\\)\\|[ \t]*[:|]")
+ "\f\\|[ ]*$\\|\\([*\f]+\\)\\|[ \t]*\\([-+*][ \t]+\\|[0-9]+[.)][ \t]+\\)\\|[ \t]*[:|]")
;; Inhibit auto-fill for headers, tables and fixed-width lines.
;; But only if the user has not turned off tables or fixed-width regions
(set (make-local-variable 'auto-fill-inhibit-regexp)
@@ -16235,7 +16360,7 @@ Show the heading too, if it is currently invisible."
(defun org-bookmark-jump-unhide ()
"Unhide the current position, to show the bookmark location."
- (and (eq major-mode 'org-mode)
+ (and (org-mode-p)
(or (org-invisible-p)
(save-excursion (goto-char (max (point-min) (1- (point))))
(org-invisible-p)))
@@ -16243,6 +16368,7 @@ Show the heading too, if it is currently invisible."
;;; Experimental code
+
;;; Finish up
(provide 'org)
diff --git a/lisp/textmodes/texinfmt.el b/lisp/textmodes/texinfmt.el
index 8794ebddc1..9e0b6b6390 100644
--- a/lisp/textmodes/texinfmt.el
+++ b/lisp/textmodes/texinfmt.el
@@ -37,7 +37,7 @@
(defmacro defcustom (var value doc &rest ignore)
`(defvar ,var ,value ,doc)))
-(defvar texinfmt-version "2.41 of 1 Mar 2005")
+(defvar texinfmt-version "2.42 of 7 Jul 2006")
(defun texinfmt-version (&optional here)
"Show the version of texinfmt.el in the minibuffer.
@@ -1555,7 +1555,9 @@ The node is constructed automatically."
" Node: " node-name "-Footnotes, Up: " node-name "\n")
(setq start (point))
(insert (format "\n(%d) %s\n" texinfo-footnote-number arg))
- (fill-region start (point))))))
+ (narrow-to-region (save-excursion (goto-char start) (point)) (point))
+ (fill-region (point-min) (point-max))
+ (widen)))))
(defun texinfo-format-end-node ()
"Format footnote in the End of node style, with notes at end of node."
@@ -2118,11 +2120,18 @@ This command is executed when texinfmt sees @item inside @multitable."
(insert unformated-row)
(goto-char (point-min))
;; 1. Check for correct number of @tab in line.
- (let ((tab-number 1)) ; one @tab between two columns
+ (let ((tab-number 1)) ; one @tab between two columns
(while (search-forward "@tab" nil t)
(setq tab-number (1+ tab-number)))
- (if (/= tab-number (length table-widths))
- (error "Wrong number of @tab's in a @multitable row")))
+ (let ((needed-tabs (- (length table-widths) tab-number)))
+ (when (> needed-tabs 0)
+ (goto-char (point-min))
+ (end-of-line)
+ (while (> needed-tabs 0)
+ (insert "@w{ }\n@tab")
+ (setq needed-tabs (1- needed-tabs))
+ (message
+ "Added @tabs and empty spaces to a @multitable row")))))
(goto-char (point-min))
;; 2. Format each cell, and copy to a rectangle
;; buffer looks like this: A1 @tab A2 @tab A3
diff --git a/lisp/thingatpt.el b/lisp/thingatpt.el
index 27fecacdd3..c0aa80ef1a 100644
--- a/lisp/thingatpt.el
+++ b/lisp/thingatpt.el
@@ -53,7 +53,7 @@
;;;###autoload
(defun forward-thing (thing &optional n)
- "Move forward to the end of the next THING."
+ "Move forward to the end of the Nth next THING."
(let ((forward-op (or (get thing 'forward-op)
(intern-soft (format "forward-%s" thing)))))
(if (functionp forward-op)
@@ -80,16 +80,13 @@ of the textual entity that was found."
(condition-case nil
(save-excursion
;; Try moving forward, then back.
- (let ((end (progn
- (funcall
- (or (get thing 'end-op)
- (function (lambda () (forward-thing thing 1)))))
- (point)))
- (beg (progn
- (funcall
- (or (get thing 'beginning-op)
- (function (lambda () (forward-thing thing -1)))))
- (point))))
+ (funcall ;; First move to end.
+ (or (get thing 'end-op)
+ (lambda () (forward-thing thing 1))))
+ (funcall ;; Then move to beg.
+ (or (get thing 'beginning-op)
+ (lambda () (forward-thing thing -1))))
+ (let ((beg (point)))
(if (not (and beg (> beg orig)))
;; If that brings us all the way back to ORIG,
;; it worked. But END may not be the real end.
@@ -98,28 +95,25 @@ of the textual entity that was found."
(progn
(funcall
(or (get thing 'end-op)
- (function (lambda () (forward-thing thing 1)))))
+ (lambda () (forward-thing thing 1))))
(point))))
(if (and beg real-end (<= beg orig) (<= orig real-end))
(cons beg real-end)))
(goto-char orig)
;; Try a second time, moving backward first and then forward,
;; so that we can find a thing that ends at ORIG.
- (let ((beg (progn
- (funcall
- (or (get thing 'beginning-op)
- (function (lambda () (forward-thing thing -1)))))
- (point)))
- (end (progn
- (funcall
- (or (get thing 'end-op)
- (function (lambda () (forward-thing thing 1)))))
- (point)))
- (real-beg
+ (funcall ;; First, move to beg.
+ (or (get thing 'beginning-op)
+ (lambda () (forward-thing thing -1))))
+ (funcall ;; Then move to end.
+ (or (get thing 'end-op)
+ (lambda () (forward-thing thing 1))))
+ (let ((end (point))
+ (real-beg
(progn
(funcall
(or (get thing 'beginning-op)
- (function (lambda () (forward-thing thing -1)))))
+ (lambda () (forward-thing thing -1))))
(point))))
(if (and real-beg end (<= real-beg orig) (<= orig end))
(cons real-beg end))))))
@@ -160,7 +154,7 @@ a symbol as a valid THING."
;; and it has no final newline.
(put 'line 'beginning-op
- (function (lambda () (if (bolp) (forward-line -1) (beginning-of-line)))))
+ (lambda () (if (bolp) (forward-line -1) (beginning-of-line))))
;; Sexps
@@ -190,7 +184,7 @@ a symbol as a valid THING."
;; Lists
-(put 'list 'end-op (function (lambda () (up-list 1))))
+(put 'list 'end-op (lambda () (up-list 1)))
(put 'list 'beginning-op 'backward-sexp)
;; Filenames and URLs www.com/foo%32bar
@@ -229,7 +223,7 @@ Hostname matching is stricter in this case than for
"afs:" "tn3270:" "mailserver:"
;; Compatibility
"snews:")
- "Uniform Resource Identifier (URI) Schemes")
+ "Uniform Resource Identifier (URI) Schemes.")
(defvar thing-at-point-url-regexp
(concat "\\<\\(" (mapconcat 'identity thing-at-point-uri-schemes "\\|") "\\)"
@@ -243,18 +237,19 @@ This may contain whitespace (including newlines) .")
(put 'url 'bounds-of-thing-at-point 'thing-at-point-bounds-of-url-at-point)
(defun thing-at-point-bounds-of-url-at-point ()
- (let ((url "") short strip)
- (if (or (setq strip (thing-at-point-looking-at
- thing-at-point-markedup-url-regexp))
- (thing-at-point-looking-at thing-at-point-url-regexp)
+ (let ((strip (thing-at-point-looking-at
+ thing-at-point-markedup-url-regexp))) ;; (url "") short
+ (if (or strip
+` (thing-at-point-looking-at thing-at-point-url-regexp)
;; Access scheme omitted?
- (setq short (thing-at-point-looking-at
- thing-at-point-short-url-regexp)))
+ ;; (setq short (thing-at-point-looking-at
+ ;; thing-at-point-short-url-regexp))
+ )
(let ((beginning (match-beginning 0))
(end (match-end 0)))
- (cond (strip
- (setq beginning (+ beginning 5))
- (setq end (- end 1))))
+ (when strip
+ (setq beginning (+ beginning 5))
+ (setq end (- end 1)))
(cons beginning end)))))
(put 'url 'thing-at-point 'thing-at-point-url-at-point)
@@ -327,17 +322,17 @@ point."
(looking-at regexp)))))
(put 'url 'end-op
- (function (lambda ()
- (let ((bounds (thing-at-point-bounds-of-url-at-point)))
- (if bounds
- (goto-char (cdr bounds))
- (error "No URL here"))))))
+ (lambda ()
+ (let ((bounds (thing-at-point-bounds-of-url-at-point)))
+ (if bounds
+ (goto-char (cdr bounds))
+ (error "No URL here")))))
(put 'url 'beginning-op
- (function (lambda ()
- (let ((bounds (thing-at-point-bounds-of-url-at-point)))
- (if bounds
- (goto-char (car bounds))
- (error "No URL here"))))))
+ (lambda ()
+ (let ((bounds (thing-at-point-bounds-of-url-at-point)))
+ (if bounds
+ (goto-char (car bounds))
+ (error "No URL here")))))
;; Whitespace
@@ -385,7 +380,7 @@ point."
(defun sentence-at-point () (thing-at-point 'sentence))
(defun read-from-whole-string (str)
- "Read a lisp expression from STR.
+ "Read a Lisp expression from STR.
Signal an error if the entire string was not used."
(let* ((read-data (read-from-string str))
(more-left
@@ -407,11 +402,13 @@ Signal an error if the entire string was not used."
;;;###autoload
(defun sexp-at-point () (form-at-point 'sexp))
;;;###autoload
-(defun symbol-at-point () (form-at-point 'sexp 'symbolp))
+(defun symbol-at-point ()
+ (let ((thing (thing-at-point 'symbol)))
+ (if thing (intern thing))))
;;;###autoload
(defun number-at-point () (form-at-point 'sexp 'numberp))
;;;###autoload
(defun list-at-point () (form-at-point 'list 'listp))
-;;; arch-tag: bb65a163-dae2-4055-aedc-fe11f497f698
+;; arch-tag: bb65a163-dae2-4055-aedc-fe11f497f698
;;; thingatpt.el ends here
diff --git a/lisp/thumbs.el b/lisp/thumbs.el
index ff5fcf2b33..e9a640973b 100644
--- a/lisp/thumbs.el
+++ b/lisp/thumbs.el
@@ -256,7 +256,7 @@ ACTION-PREFIX is the symbol to place before the ACTION command
filein
(or output-format "jpeg")
fileout)))
- (call-process shell-file-name nil nil nil "-c" command)))
+ (call-process shell-file-name nil nil nil shell-command-switch command)))
(defun thumbs-new-image-size (s increment)
"New image (a cons of width x height)."
diff --git a/lisp/tooltip.el b/lisp/tooltip.el
index cacd6f5967..596db839e8 100644
--- a/lisp/tooltip.el
+++ b/lisp/tooltip.el
@@ -40,12 +40,6 @@
;;; Switching tooltips on/off
-;; We don't set track-mouse globally because this is a big redisplay
-;; problem in buffers having a pre-command-hook or such installed,
-;; which does a set-buffer, like the summary buffer of Gnus. Calling
-;; set-buffer prevents redisplay optimizations, so every mouse motion
-;; would be accompanied by a full redisplay.
-
(define-minor-mode tooltip-mode
"Toggle Tooltip mode.
With ARG, turn Tooltip mode on if and only if ARG is positive.
diff --git a/lisp/tumme.el b/lisp/tumme.el
index d6420bf33d..26d48e77b2 100644
--- a/lisp/tumme.el
+++ b/lisp/tumme.el
@@ -491,7 +491,8 @@ with the comment."
:group 'tumme)
(defcustom tumme-external-viewer
- ;; TODO: use mailcap, dired-guess-shell-alist-default, dired-view-command-alist
+ ;; TODO: Use mailcap, dired-guess-shell-alist-default,
+ ;; dired-view-command-alist.
(cond ((executable-find "display"))
((executable-find "xli"))
((executable-find "qiv") "qiv -t"))
@@ -627,7 +628,7 @@ according to the Thumbnail Managing Standard."
(setq thumbnail-dir (file-name-directory thumbnail-file))))
(message "Creating thumbnail directory.")
(make-directory thumbnail-dir))
- (shell-command command nil)))
+ (call-process shell-file-name nil nil nil shell-command-switch command)))
;;;###autoload
(defun tumme-dired-insert-marked-thumbs ()
@@ -643,8 +644,10 @@ according to the Thumbnail Managing Standard."
;; Can't use (overlays-at (point)), BUG?
(overlays-in (point) (1+ (point)))))
(put-image thumb-file image-pos)
- (setq overlay (car (delq nil (mapcar (lambda (o) (and (overlay-get o 'put-image) o))
- (overlays-in (point) (1+ (point)))))))
+ (setq
+ overlay
+ (car (delq nil (mapcar (lambda (o) (and (overlay-get o 'put-image) o))
+ (overlays-in (point) (1+ (point)))))))
(overlay-put overlay 'image-file image-file)
(overlay-put overlay 'thumb-file thumb-file)))
nil)
@@ -716,8 +719,7 @@ Otherwise, delete overlays."
(defun tumme-create-thumbnail-buffer ()
"Create thumb buffer and set `tumme-thumbnail-mode'."
(let ((buf (get-buffer-create tumme-thumbnail-buffer)))
- (save-excursion
- (set-buffer buf)
+ (with-current-buffer buf
(setq buffer-read-only t)
(if (not (eq major-mode 'tumme-thumbnail-mode))
(tumme-thumbnail-mode)))
@@ -729,8 +731,7 @@ Otherwise, delete overlays."
(defun tumme-create-display-image-buffer ()
"Create image display buffer and set `tumme-display-image-mode'."
(let ((buf (get-buffer-create tumme-display-image-buffer)))
- (save-excursion
- (set-buffer buf)
+ (with-current-buffer buf
(setq buffer-read-only t)
(if (not (eq major-mode 'tumme-display-image-mode))
(tumme-display-image-mode)))
@@ -812,8 +813,7 @@ thumbnail buffer to be selected."
(setq files (list (dired-get-filename)))
(setq files (dired-get-marked-files)))
(setq dired-buf (current-buffer))
- (save-excursion
- (set-buffer buf)
+ (with-current-buffer buf
(let ((inhibit-read-only t))
(if (not append)
(erase-buffer)
@@ -1170,10 +1170,9 @@ dired."
(dired-buf (tumme-associated-dired-buffer)))
(if (not (and dired-buf file-name))
(message "No image, or image with correct properties, at point.")
- (save-excursion
+ (with-current-buffer dired-buf
(message file-name)
(setq file-name (file-name-nondirectory file-name))
- (set-buffer dired-buf)
(goto-char (point-min))
(if (search-forward file-name nil t)
(cond ((eq command 'mark) (dired-mark 1))
@@ -1294,7 +1293,8 @@ You probably want to use this together with
(define-key tumme-thumbnail-mode-map "L" 'tumme-rotate-original-left)
(define-key tumme-thumbnail-mode-map "R" 'tumme-rotate-original-right)
- (define-key tumme-thumbnail-mode-map "D" 'tumme-thumbnail-set-image-description)
+ (define-key tumme-thumbnail-mode-map "D"
+ 'tumme-thumbnail-set-image-description)
(define-key tumme-thumbnail-mode-map "\C-d" 'tumme-delete-char)
(define-key tumme-thumbnail-mode-map " "
@@ -1686,25 +1686,22 @@ Ask user how many thumbnails should be displayed per row."
(defun tumme-thumbnail-display-external ()
"Display original image for thumbnail at point using external viewer."
-
(interactive)
(let ((file (tumme-original-file-name)))
(if (not (tumme-image-at-point-p))
(message "No thumbnail at point")
(if (not file)
(message "No original file name found")
- (shell-command (format "%s \"%s\""
- tumme-external-viewer
- file))))))
+ (call-process shell-file-name nil nil nil shell-command-switch
+ (format "%s \"%s\"" tumme-external-viewer file))))))
;;;###autoload
(defun tumme-dired-display-external ()
"Display file at point using an external viewer."
(interactive)
(let ((file (dired-get-filename)))
- (shell-command (format "%s \"%s\""
- tumme-external-viewer
- file))))
+ (call-process shell-file-name nil nil nil shell-command-switch
+ (format "%s \"%s\"" tumme-external-viewer file))))
(defun tumme-window-width-pixels (window)
"Calculate WINDOW width in pixels."
@@ -1776,12 +1773,12 @@ original size."
(cons ?h height)
(cons ?f file)
(cons ?t new-file))))
- (setq ret (shell-command command nil))
+ (setq ret (call-process shell-file-name nil nil nil
+ shell-command-switch command))
(if (not (= 0 ret))
(error "Could not resize image")))
(copy-file file new-file t))
- (save-excursion
- (set-buffer (tumme-create-display-image-buffer))
+ (with-current-buffer (tumme-create-display-image-buffer)
(let ((inhibit-read-only t))
(erase-buffer)
(clear-image-cache)
@@ -1829,7 +1826,7 @@ With prefix argument ARG, display image in its original size."
(cons ?p tumme-cmd-rotate-thumbnail-program)
(cons ?d degrees)
(cons ?t (expand-file-name file)))))
- (shell-command command nil)
+ (call-process shell-file-name nil nil nil shell-command-switch command)
;; Clear the cache to refresh image. I wish I could just refresh
;; the current file but I do not know how to do that. Yet...
(clear-image-cache))))
@@ -1874,11 +1871,13 @@ overwritten. This confirmation can be turned off using
(cons ?d degrees)
(cons ?o (expand-file-name file))
(cons ?t tumme-temp-rotate-image-file))))
- (if (not (= 0 (shell-command command nil)))
+ (if (not (= 0 (call-process shell-file-name nil nil nil
+ shell-command-switch command)))
(error "Could not rotate image")
(tumme-display-image tumme-temp-rotate-image-file)
(if (or (and tumme-rotate-original-ask-before-overwrite
- (y-or-n-p "Rotate to temp file OK. Overwrite original image? "))
+ (y-or-n-p
+ "Rotate to temp file OK. Overwrite original image? "))
(not tumme-rotate-original-ask-before-overwrite))
(progn
(copy-file tumme-temp-rotate-image-file file t)
@@ -1910,7 +1909,8 @@ YYYY_MM_DD_HH_MM_DD_ORIG_FILE_NAME.jpg. Used from
(format-time-string
"%Y:%m:%d %H:%M:%S"
(nth 5 (file-attributes (expand-file-name file))))))
- (setq data (tumme-get-exif-data (expand-file-name file) "DateTimeOriginal")))
+ (setq data (tumme-get-exif-data (expand-file-name file)
+ "DateTimeOriginal")))
(while (string-match "[ :]" data)
(setq data (replace-match "_" nil nil data)))
(format "%s%s%s" data
@@ -1930,7 +1930,8 @@ default value at the prompt."
(old-value (tumme-get-exif-data file "ImageDescription")))
(if (eq 0
(tumme-set-exif-data file "ImageDescription"
- (read-string "Value of ImageDescription: " old-value)))
+ (read-string "Value of ImageDescription: "
+ old-value)))
(message "Successfully wrote ImageDescription tag.")
(error "Could not write ImageDescription tag")))))
@@ -1944,7 +1945,7 @@ default value at the prompt."
(cons ?f (expand-file-name file))
(cons ?t tag-name)
(cons ?v tag-value))))
- (shell-command command nil)))
+ (call-process shell-file-name nil nil nil shell-command-switch command)))
(defun tumme-get-exif-data (file tag-name)
"From FILE, return EXIF tag TAG-NAME."
@@ -1956,10 +1957,10 @@ default value at the prompt."
(cons ?p tumme-cmd-read-exif-data-program)
(cons ?f file)
(cons ?t tag-name))))
- (save-excursion
- (set-buffer buf)
+ (with-current-buffer buf
(delete-region (point-min) (point-max))
- (if (not (eq (shell-command command buf) 0))
+ (if (not (eq (call-process shell-file-name nil t nil
+ shell-command-switch command) 0))
(error "Could not get EXIF tag")
(goto-char (point-min))
;; Clean buffer from newlines and carriage returns before
@@ -2377,7 +2378,8 @@ when using per-directory thumbnail file storage"))
;; Insert thumbnail with link to full image
(insert
(format "<a href=\"%s/%s\"><img src=\"%s/%s\"%s></a>\n"
- tumme-gallery-image-root-url (file-name-nondirectory file)
+ tumme-gallery-image-root-url
+ (file-name-nondirectory file)
tumme-gallery-thumb-image-root-url
(file-name-nondirectory (tumme-thumb-name file)) file))
;; Insert comment, if any
diff --git a/lisp/url/ChangeLog b/lisp/url/ChangeLog
index 8eb2cd8471..901fac0120 100644
--- a/lisp/url/ChangeLog
+++ b/lisp/url/ChangeLog
@@ -1,8 +1,23 @@
+2006-07-12 Michael Olson <[email protected]>
+
+ * url-irc.el (url-irc-erc): Call erc-handle-irc-url.
+
+2006-07-11 Stefan Monnier <[email protected]>
+
+ * url-cookie.el: Remove spurious * in docstrings.
+ (url-cookie-write-file): Don't use versioned backups.
+ (url-cookie-host-can-set-p): Remove unused var `tmp'.
+
+2006-07-04 Andreas Seltenreich <[email protected]>
+
+ * url-cookie.el (url-cookie-save-interval): Move to url-cookie group.
+ (url-cookie-write-file): Reset url-cookies-changed-since-last-save.
+
2006-05-12 Reiner Steib <[email protected]>
* url-http.el (url-http-file-exists-p): Test if status is integer.
-2006-05-05 Andreas Seltenreich <[email protected]> (tiny change)
+2006-05-05 Andreas Seltenreich <[email protected]>
* url-http.el (url-http-parse-headers): Don't reuse connection if
"Connection: close" header was seen.
diff --git a/lisp/url/url-cookie.el b/lisp/url/url-cookie.el
index 53ba75f4cb..e74d498911 100644
--- a/lisp/url/url-cookie.el
+++ b/lisp/url/url-cookie.el
@@ -88,18 +88,18 @@ A cookie vector object is a vector of 7 slots:
(defvar url-cookie-storage nil "Where cookies are stored.")
(defvar url-cookie-secure-storage nil "Where secure cookies are stored.")
(defcustom url-cookie-file nil
- "*File where cookies are stored on disk."
+ "File where cookies are stored on disk."
:type '(choice (const :tag "Default" :value nil) file)
:group 'url-file
:group 'url-cookie)
(defcustom url-cookie-confirmation nil
- "*If non-nil, confirmation by the user is required to accept HTTP cookies."
+ "If non-nil, confirmation by the user is required to accept HTTP cookies."
:type 'boolean
:group 'url-cookie)
(defcustom url-cookie-multiple-line nil
- "*If nil, HTTP requests put all cookies for the server on one line.
+ "If nil, HTTP requests put all cookies for the server on one line.
Some web servers, such as http://www.hotmail.com/, only accept cookies
when they are on one line. This is broken behavior, but just try
telling Microsoft that."
@@ -168,7 +168,13 @@ telling Microsoft that."
(insert ")\n(setq url-cookie-secure-storage\n '")
(pp url-cookie-secure-storage (current-buffer))
(insert ")\n")
+ (insert " ;; Local Variables:\n"
+ ";; version-control: never\n"
+ ";; no-byte-compile: t\n"
+ ";; End:\n")
+ (set (make-local-variable 'version-control) t)
(write-file fname)
+ (setq url-cookies-changed-since-last-save nil)
(kill-buffer (current-buffer))))))
(defun url-cookie-store (name value &optional expires domain localpart secure)
@@ -313,18 +319,17 @@ telling Microsoft that."
'.'s in the domain name in order to set a cookie.")
(defcustom url-cookie-trusted-urls nil
- "*A list of regular expressions matching URLs to always accept cookies from."
+ "A list of regular expressions matching URLs to always accept cookies from."
:type '(repeat regexp)
:group 'url-cookie)
(defcustom url-cookie-untrusted-urls nil
- "*A list of regular expressions matching URLs to never accept cookies from."
+ "A list of regular expressions matching URLs to never accept cookies from."
:type '(repeat regexp)
:group 'url-cookie)
(defun url-cookie-host-can-set-p (host domain)
(let ((numdots 0)
- (tmp domain)
(last nil)
(case-fold-search t)
(mindots 3))
@@ -444,7 +449,7 @@ telling Microsoft that."
(defvar url-cookie-timer nil)
(defcustom url-cookie-save-interval 3600
- "*The number of seconds between automatic saves of cookies.
+ "The number of seconds between automatic saves of cookies.
Default is 1 hour. Note that if you change this variable outside of
the `customize' interface after `url-do-setup' has been run, you need
to run the `url-cookie-setup-save-timer' function manually."
@@ -453,7 +458,7 @@ to run the `url-cookie-setup-save-timer' function manually."
(if (bound-and-true-p url-setup-done)
(url-cookie-setup-save-timer)))
:type 'integer
- :group 'url)
+ :group 'url-cookie)
(defun url-cookie-setup-save-timer ()
"Reset the cookie saver timer."
diff --git a/lisp/url/url-irc.el b/lisp/url/url-irc.el
index 6a7a62573e..19eec6f2ef 100644
--- a/lisp/url/url-irc.el
+++ b/lisp/url/url-irc.el
@@ -68,9 +68,7 @@ PASSWORD - What password to use"
(switch-to-buffer (concat chan "@" host)))))
(defun url-irc-erc (host port channel user password)
- (erc-select :server host :port port :nick user :password password)
- (when channel
- (erc-join-channel channel)))
+ (erc-handle-irc-url host port channel user password))
;;;###autoload
(defun url-irc (url)
diff --git a/lisp/vc.el b/lisp/vc.el
index c395a25798..d72ee4c7e4 100644
--- a/lisp/vc.el
+++ b/lisp/vc.el
@@ -934,11 +934,12 @@ Else, add CODE to the process' sentinel."
(let ((proc (get-buffer-process (current-buffer))))
(cond
;; If there's no background process, just execute the code.
- ((null proc) (eval code))
- ;; If the background process has exited, reap it and try again
- ((eq (process-status proc) 'exit)
- (delete-process proc)
- (vc-exec-after code))
+ ;; We used to explicitly call delete-process on exited processes,
+ ;; but this led to timing problems causing process output to be
+ ;; lost. Terminated processes get deleted automatically
+ ;; anyway. -- cyd
+ ((or (null proc) (eq (process-status proc) 'exit))
+ (eval code))
;; If a process is running, add CODE to the sentinel
((eq (process-status proc) 'run)
(let ((sentinel (process-sentinel proc)))
@@ -1846,7 +1847,7 @@ actually call the backend, but performs a local diff."
(if (and file-rev1 file-rev2)
(let ((status
(if (eq vc-diff-knows-L 'no)
- (apply 'vc-do-command "*vc-diff*" 1 "diff"
+ (apply 'vc-do-command "*vc-diff*" 1 "diff" nil
(append (vc-switches nil 'diff)
(list (file-relative-name file-rev1)
(file-relative-name file-rev2))))
@@ -1864,7 +1865,7 @@ actually call the backend, but performs a local diff."
(if (eq status 2)
(if (not vc-diff-knows-L)
(setq vc-diff-knows-L 'no
- status (apply 'vc-do-command "*vc-diff*" 1 "diff"
+ status (apply 'vc-do-command "*vc-diff*" 1 "diff" nil
(append
(vc-switches nil 'diff)
(list (file-relative-name file-rev1)
@@ -2446,9 +2447,9 @@ If FOCUS-REV is non-nil, leave the point at that revision."
(vc-call print-log file)
(set-buffer "*vc*"))))
(pop-to-buffer (current-buffer))
- (log-view-mode)
(vc-exec-after
`(let ((inhibit-read-only t))
+ (log-view-mode)
(goto-char (point-max)) (forward-line -1)
(while (looking-at "=*\n")
(delete-char (- (match-end 0) (match-beginning 0)))
@@ -2456,7 +2457,7 @@ If FOCUS-REV is non-nil, leave the point at that revision."
(goto-char (point-min))
(if (looking-at "[\b\t\n\v\f\r ]+")
(delete-char (- (match-end 0) (match-beginning 0))))
- (shrink-window-if-larger-than-buffer)
+ ;; (shrink-window-if-larger-than-buffer)
;; move point to the log entry for the current version
(vc-call-backend ',(vc-backend file)
'show-log-entry
diff --git a/lisp/window.el b/lisp/window.el
index ef9dd5d896..2ae1a2c9e7 100644
--- a/lisp/window.el
+++ b/lisp/window.el
@@ -532,7 +532,11 @@ the height exactly, but attempts to be conservative, by allocating more
lines than are actually needed in the case where some error may be present."
(let ((delta (- height (window-text-height window))))
(unless (zerop delta)
- (let ((window-min-height 1))
+ ;; Setting window-min-height to a value like 1 can lead to very
+ ;; bizarre displays because it also allows Emacs to make *other*
+ ;; windows 1-line tall, which means that there's no more space for
+ ;; the modeline.
+ (let ((window-min-height (min 2 height))) ;One text line plus a modeline.
(if (and window (not (eq window (selected-window))))
(save-selected-window
(select-window window)