diff options
| -rw-r--r-- | doc/emacs/building.texi | 5 | ||||
| -rw-r--r-- | doc/emacs/custom.texi | 17 | ||||
| -rw-r--r-- | lisp/emacs-lisp/checkdoc.el | 2 | ||||
| -rw-r--r-- | lisp/help-fns.el | 2 | ||||
| -rw-r--r-- | lisp/loadhist.el | 2 | ||||
| -rw-r--r-- | lisp/progmodes/cc-mode.el | 13 | ||||
| -rw-r--r-- | lisp/progmodes/vhdl-mode.el | 2 | ||||
| -rw-r--r-- | lisp/simple.el | 13 | ||||
| -rw-r--r-- | lisp/subr.el | 25 |
9 files changed, 47 insertions, 34 deletions
diff --git a/doc/emacs/building.texi b/doc/emacs/building.texi index 272b08d08e9..38963f225ca 100644 --- a/doc/emacs/building.texi +++ b/doc/emacs/building.texi | |||
| @@ -214,6 +214,7 @@ Select a buffer to be used by next invocation of @code{next-error} and | |||
| 214 | @kindex C-x ` | 214 | @kindex C-x ` |
| 215 | @findex next-error | 215 | @findex next-error |
| 216 | @vindex next-error-highlight | 216 | @vindex next-error-highlight |
| 217 | @vindex next-error-highlight-no-select | ||
| 217 | To visit errors sequentially, type @w{@kbd{C-x `}} | 218 | To visit errors sequentially, type @w{@kbd{C-x `}} |
| 218 | (@code{next-error}), or equivalently @kbd{M-g M-n} or @kbd{M-g n}. | 219 | (@code{next-error}), or equivalently @kbd{M-g M-n} or @kbd{M-g n}. |
| 219 | This command can be invoked from any buffer, not just a Compilation | 220 | This command can be invoked from any buffer, not just a Compilation |
| @@ -258,7 +259,9 @@ to skip any messages. | |||
| 258 | 259 | ||
| 259 | When Emacs visits the locus of an error message, it momentarily | 260 | When Emacs visits the locus of an error message, it momentarily |
| 260 | highlights the relevant source line. The duration of this highlight | 261 | highlights the relevant source line. The duration of this highlight |
| 261 | is determined by the variable @code{next-error-highlight}. | 262 | is determined by the variable @code{next-error-highlight} for the locus |
| 263 | in the selected buffer, and @code{next-error-highlight-no-select} for | ||
| 264 | the locus in non-selected buffers. | ||
| 262 | 265 | ||
| 263 | @vindex compilation-context-lines | 266 | @vindex compilation-context-lines |
| 264 | If the @file{*compilation*} buffer is shown in a window with a left | 267 | If the @file{*compilation*} buffer is shown in a window with a left |
diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi index f39ce40931c..e7e879065ed 100644 --- a/doc/emacs/custom.texi +++ b/doc/emacs/custom.texi | |||
| @@ -1873,15 +1873,19 @@ You can use a vector for the simple cases too: | |||
| 1873 | Language and coding systems may cause problems with key bindings for | 1873 | Language and coding systems may cause problems with key bindings for |
| 1874 | non-@acronym{ASCII} characters. @xref{Init Non-ASCII}. | 1874 | non-@acronym{ASCII} characters. @xref{Init Non-ASCII}. |
| 1875 | 1875 | ||
| 1876 | @findex define-key | ||
| 1876 | As described in @ref{Local Keymaps}, major modes and minor modes can | 1877 | As described in @ref{Local Keymaps}, major modes and minor modes can |
| 1877 | define local keymaps. These keymaps are constructed when the mode is | 1878 | define local keymaps. These keymaps are constructed when the mode is |
| 1878 | used for the first time in a session. If you wish to change one of | 1879 | loaded for the first time in a session. The function @code{define-key} |
| 1879 | these keymaps, you must use the @dfn{mode hook} (@pxref{Hooks}). | 1880 | can be used to make changes in a specific keymap. This function can |
| 1881 | also unset keys, when passed @code{nil} as the binding. | ||
| 1880 | 1882 | ||
| 1881 | @findex define-key | 1883 | Since a mode's keymaps are not constructed until it has been loaded, |
| 1882 | For example, Texinfo mode runs the hook @code{texinfo-mode-hook}. | 1884 | you must delay running code which modifies them, e.g., by putting it |
| 1883 | Here's how you can use the hook to add local bindings for @kbd{C-c n} | 1885 | on a @dfn{mode hook} (@pxref{(Hooks)}). For example, Texinfo mode |
| 1884 | and @kbd{C-c p} in Texinfo mode: | 1886 | runs the hook @code{texinfo-mode-hook}. Here's how you can use the |
| 1887 | hook to add local bindings for @kbd{C-c n} and @kbd{C-c p}, and remove | ||
| 1888 | the one for @kbd{C-c C-x x} in Texinfo mode: | ||
| 1885 | 1889 | ||
| 1886 | @example | 1890 | @example |
| 1887 | (add-hook 'texinfo-mode-hook | 1891 | (add-hook 'texinfo-mode-hook |
| @@ -1890,6 +1894,7 @@ and @kbd{C-c p} in Texinfo mode: | |||
| 1890 | 'backward-paragraph) | 1894 | 'backward-paragraph) |
| 1891 | (define-key texinfo-mode-map "\C-cn" | 1895 | (define-key texinfo-mode-map "\C-cn" |
| 1892 | 'forward-paragraph))) | 1896 | 'forward-paragraph))) |
| 1897 | (define-key texinfo-mode-map "\C-c\C-xx" nil) | ||
| 1893 | @end example | 1898 | @end example |
| 1894 | 1899 | ||
| 1895 | @node Modifier Keys | 1900 | @node Modifier Keys |
diff --git a/lisp/emacs-lisp/checkdoc.el b/lisp/emacs-lisp/checkdoc.el index e15836ee7d8..fa5d1cff417 100644 --- a/lisp/emacs-lisp/checkdoc.el +++ b/lisp/emacs-lisp/checkdoc.el | |||
| @@ -168,7 +168,7 @@ | |||
| 168 | ;; not specifically docstring related. Would this even be useful? | 168 | ;; not specifically docstring related. Would this even be useful? |
| 169 | 169 | ||
| 170 | ;;; Code: | 170 | ;;; Code: |
| 171 | (defvar checkdoc-version "0.6.1" | 171 | (defvar checkdoc-version "0.6.2" |
| 172 | "Release version of checkdoc you are currently running.") | 172 | "Release version of checkdoc you are currently running.") |
| 173 | 173 | ||
| 174 | (require 'cl-lib) | 174 | (require 'cl-lib) |
diff --git a/lisp/help-fns.el b/lisp/help-fns.el index ad496166f50..59eedb5331d 100644 --- a/lisp/help-fns.el +++ b/lisp/help-fns.el | |||
| @@ -1000,6 +1000,8 @@ it is displayed along with the global value." | |||
| 1000 | (terpri) | 1000 | (terpri) |
| 1001 | (let ((buf (current-buffer))) | 1001 | (let ((buf (current-buffer))) |
| 1002 | (with-temp-buffer | 1002 | (with-temp-buffer |
| 1003 | (lisp-mode-variables nil) | ||
| 1004 | (set-syntax-table emacs-lisp-mode-syntax-table) | ||
| 1003 | (insert print-rep) | 1005 | (insert print-rep) |
| 1004 | (pp-buffer) | 1006 | (pp-buffer) |
| 1005 | (let ((pp-buffer (current-buffer))) | 1007 | (let ((pp-buffer (current-buffer))) |
diff --git a/lisp/loadhist.el b/lisp/loadhist.el index dabc8b9457a..a1ff2f6270d 100644 --- a/lisp/loadhist.el +++ b/lisp/loadhist.el | |||
| @@ -173,7 +173,7 @@ documentation of `unload-feature' for details.") | |||
| 173 | ;; we undefine it. | 173 | ;; we undefine it. |
| 174 | ;; So we use this auxiliary variable to keep track of the last (t . SYMBOL) | 174 | ;; So we use this auxiliary variable to keep track of the last (t . SYMBOL) |
| 175 | ;; that occurred. | 175 | ;; that occurred. |
| 176 | (defvar loadhist--restore-autoload | 176 | (defvar loadhist--restore-autoload nil |
| 177 | "If non-nil, this is a symbol for which we should | 177 | "If non-nil, this is a symbol for which we should |
| 178 | restore a previous autoload if possible.") | 178 | restore a previous autoload if possible.") |
| 179 | 179 | ||
diff --git a/lisp/progmodes/cc-mode.el b/lisp/progmodes/cc-mode.el index 2a281d4d2aa..a39c50e4138 100644 --- a/lisp/progmodes/cc-mode.el +++ b/lisp/progmodes/cc-mode.el | |||
| @@ -1992,17 +1992,16 @@ Note that this is a strict tail, so won't match, e.g. \"0x....\".") | |||
| 1992 | 1992 | ||
| 1993 | ;; Note: c-just-done-before-change is nil, t, or 'whole-buffer. | 1993 | ;; Note: c-just-done-before-change is nil, t, or 'whole-buffer. |
| 1994 | (unless (c-called-from-text-property-change-p) | 1994 | (unless (c-called-from-text-property-change-p) |
| 1995 | (save-restriction | 1995 | (unless (eq c-just-done-before-change t) |
| 1996 | (widen) | 1996 | (save-restriction |
| 1997 | (unless c-just-done-before-change | 1997 | (widen) |
| 1998 | (c-before-change (point-min) (point-max))) | 1998 | (when (null c-just-done-before-change) |
| 1999 | (unless (eq c-just-done-before-change t) | 1999 | (c-before-change (point-min) (point-max))) |
| 2000 | (setq beg (point-min) | 2000 | (setq beg (point-min) |
| 2001 | end (point-max) | 2001 | end (point-max) |
| 2002 | old-len (- end beg) | 2002 | old-len (- end beg) |
| 2003 | c-new-BEG (point-min) | 2003 | c-new-BEG (point-min) |
| 2004 | c-new-END (point-max))) | 2004 | c-new-END (point-max))))) |
| 2005 | (setq c-just-done-before-change nil))) | ||
| 2006 | 2005 | ||
| 2007 | ;; (c-new-BEG c-new-END) will be the region to fontify. It may become | 2006 | ;; (c-new-BEG c-new-END) will be the region to fontify. It may become |
| 2008 | ;; larger than (beg end). | 2007 | ;; larger than (beg end). |
diff --git a/lisp/progmodes/vhdl-mode.el b/lisp/progmodes/vhdl-mode.el index 0677d36fbc7..22c61586266 100644 --- a/lisp/progmodes/vhdl-mode.el +++ b/lisp/progmodes/vhdl-mode.el | |||
| @@ -13334,7 +13334,7 @@ File statistics: \"%s\"\n\ | |||
| 13334 | (defvar vhdl-font-lock-keywords nil | 13334 | (defvar vhdl-font-lock-keywords nil |
| 13335 | "Regular expressions to highlight in VHDL Mode.") | 13335 | "Regular expressions to highlight in VHDL Mode.") |
| 13336 | 13336 | ||
| 13337 | (defvar vhdl-font-lock-keywords-0 | 13337 | (defvar vhdl-font-lock-keywords-0 nil |
| 13338 | ;; set in `vhdl-font-lock-init' because dependent on user options | 13338 | ;; set in `vhdl-font-lock-init' because dependent on user options |
| 13339 | "For consideration as a value of `vhdl-font-lock-keywords'. | 13339 | "For consideration as a value of `vhdl-font-lock-keywords'. |
| 13340 | This does highlighting of template prompts and directives (pragmas).") | 13340 | This does highlighting of template prompts and directives (pragmas).") |
diff --git a/lisp/simple.el b/lisp/simple.el index 688dbcc947b..91736a60730 100644 --- a/lisp/simple.el +++ b/lisp/simple.el | |||
| @@ -75,14 +75,16 @@ value of 1 means that nothing is amalgamated.") | |||
| 75 | :version "22.1") | 75 | :version "22.1") |
| 76 | 76 | ||
| 77 | (defcustom next-error-highlight 0.5 | 77 | (defcustom next-error-highlight 0.5 |
| 78 | "Highlighting of locations in selected source buffers. | 78 | "Highlighting of locations in the selected buffer. |
| 79 | If a number, highlight the locus in `next-error' face for the given time | 79 | If a number, highlight the locus in `next-error' face for the given time |
| 80 | in seconds, or until the next command is executed. | 80 | in seconds, or until the next command is executed. |
| 81 | If t, highlight the locus until the next command is executed, or until | 81 | If t, highlight the locus until the next command is executed, or until |
| 82 | some other locus replaces it. | 82 | some other locus replaces it. |
| 83 | If nil, don't highlight the locus in the source buffer. | 83 | If nil, don't highlight the locus in the source buffer. |
| 84 | If `fringe-arrow', indicate the locus by the fringe arrow | 84 | If `fringe-arrow', indicate the locus by the fringe arrow |
| 85 | indefinitely until some other locus replaces it." | 85 | indefinitely until some other locus replaces it. |
| 86 | See `next-error-highlight-no-select' to customize highlighting | ||
| 87 | of the locus in non-selected buffers." | ||
| 86 | :type '(choice (number :tag "Highlight for specified time") | 88 | :type '(choice (number :tag "Highlight for specified time") |
| 87 | (const :tag "Semipermanent highlighting" t) | 89 | (const :tag "Semipermanent highlighting" t) |
| 88 | (const :tag "No highlighting" nil) | 90 | (const :tag "No highlighting" nil) |
| @@ -91,12 +93,15 @@ indefinitely until some other locus replaces it." | |||
| 91 | :version "22.1") | 93 | :version "22.1") |
| 92 | 94 | ||
| 93 | (defcustom next-error-highlight-no-select 0.5 | 95 | (defcustom next-error-highlight-no-select 0.5 |
| 94 | "Highlighting of locations in `next-error-no-select'. | 96 | "Highlighting of locations in non-selected source buffers. |
| 97 | Usually non-selected buffers are displayed by `next-error-no-select'. | ||
| 95 | If number, highlight the locus in `next-error' face for given time in seconds. | 98 | If number, highlight the locus in `next-error' face for given time in seconds. |
| 96 | If t, highlight the locus indefinitely until some other locus replaces it. | 99 | If t, highlight the locus indefinitely until some other locus replaces it. |
| 97 | If nil, don't highlight the locus in the source buffer. | 100 | If nil, don't highlight the locus in the source buffer. |
| 98 | If `fringe-arrow', indicate the locus by the fringe arrow | 101 | If `fringe-arrow', indicate the locus by the fringe arrow |
| 99 | indefinitely until some other locus replaces it." | 102 | indefinitely until some other locus replaces it. |
| 103 | See `next-error-highlight' to customize highlighting of the locus | ||
| 104 | in the selected buffer." | ||
| 100 | :type '(choice (number :tag "Highlight for specified time") | 105 | :type '(choice (number :tag "Highlight for specified time") |
| 101 | (const :tag "Semipermanent highlighting" t) | 106 | (const :tag "Semipermanent highlighting" t) |
| 102 | (const :tag "No highlighting" nil) | 107 | (const :tag "No highlighting" nil) |
diff --git a/lisp/subr.el b/lisp/subr.el index 96b98c6a5b3..13515ca7da1 100644 --- a/lisp/subr.el +++ b/lisp/subr.el | |||
| @@ -3967,19 +3967,18 @@ the function `undo--wrap-and-run-primitive-undo'." | |||
| 3967 | (let ((undo--combining-change-calls t)) | 3967 | (let ((undo--combining-change-calls t)) |
| 3968 | (if (not inhibit-modification-hooks) | 3968 | (if (not inhibit-modification-hooks) |
| 3969 | (run-hook-with-args 'before-change-functions beg end)) | 3969 | (run-hook-with-args 'before-change-functions beg end)) |
| 3970 | (if (eq buffer-undo-list t) | 3970 | (let (;; (inhibit-modification-hooks t) |
| 3971 | (setq result (funcall body)) | 3971 | (before-change-functions |
| 3972 | (let (;; (inhibit-modification-hooks t) | 3972 | ;; Ugly Hack: if the body uses syntax-ppss/syntax-propertize |
| 3973 | (before-change-functions | 3973 | ;; (e.g. via a regexp-search or sexp-movement trigerring |
| 3974 | ;; Ugly Hack: if the body uses syntax-ppss/syntax-propertize | 3974 | ;; on-the-fly syntax-propertize), make sure that this gets |
| 3975 | ;; (e.g. via a regexp-search or sexp-movement trigerring | 3975 | ;; properly refreshed after subsequent changes. |
| 3976 | ;; on-the-fly syntax-propertize), make sure that this gets | 3976 | (if (memq #'syntax-ppss-flush-cache before-change-functions) |
| 3977 | ;; properly refreshed after subsequent changes. | 3977 | '(syntax-ppss-flush-cache))) |
| 3978 | (if (memq #'syntax-ppss-flush-cache before-change-functions) | 3978 | after-change-functions) |
| 3979 | '(syntax-ppss-flush-cache))) | 3979 | (setq result (funcall body))) |
| 3980 | after-change-functions) | 3980 | (when (not (eq buffer-undo-list t)) |
| 3981 | (setq result (funcall body))) | 3981 | (let ((ap-elt |
| 3982 | (let ((ap-elt | ||
| 3983 | (list 'apply | 3982 | (list 'apply |
| 3984 | (- end end-marker) | 3983 | (- end end-marker) |
| 3985 | beg | 3984 | beg |