Merge remote-tracking branch 'savannah/master' into HEAD
This commit is contained in:
commit
44ef24342f
246 changed files with 3014 additions and 1196 deletions
|
@ -256,13 +256,12 @@ expression, in which case we want to handle forms differently."
|
|||
;; the doc-string in FORM.
|
||||
;; Those properties are now set in lisp-mode.el.
|
||||
|
||||
(defun autoload-find-generated-file ()
|
||||
(defun autoload-find-generated-file (file)
|
||||
"Visit the autoload file for the current buffer, and return its buffer."
|
||||
(let ((enable-local-variables :safe)
|
||||
(enable-local-eval nil)
|
||||
(find-file-hook nil)
|
||||
(delay-mode-hooks t)
|
||||
(file (autoload-generated-file)))
|
||||
(delay-mode-hooks t))
|
||||
;; We used to use `raw-text' to read this file, but this causes
|
||||
;; problems when the file contains non-ASCII characters.
|
||||
(with-current-buffer (find-file-noselect
|
||||
|
@ -270,18 +269,20 @@ expression, in which case we want to handle forms differently."
|
|||
(if (zerop (buffer-size)) (insert (autoload-rubric file nil t)))
|
||||
(current-buffer))))
|
||||
|
||||
(defun autoload-generated-file ()
|
||||
"Return `generated-autoload-file' as an absolute name.
|
||||
If local to the current buffer, expand using the default directory;
|
||||
otherwise, using `source-directory'/lisp."
|
||||
(expand-file-name generated-autoload-file
|
||||
(defun autoload-generated-file (outfile)
|
||||
"Return OUTFILE as an absolute name.
|
||||
If `generated-autoload-file' is bound locally in the current
|
||||
buffer, that is used instead, and it is expanded using the
|
||||
default directory; otherwise, `source-directory'/lisp is used."
|
||||
(expand-file-name (if (local-variable-p 'generated-autoload-file)
|
||||
generated-autoload-file
|
||||
outfile)
|
||||
;; File-local settings of generated-autoload-file should
|
||||
;; be interpreted relative to the file's location,
|
||||
;; of course.
|
||||
(if (not (local-variable-p 'generated-autoload-file))
|
||||
(expand-file-name "lisp" source-directory))))
|
||||
|
||||
|
||||
(defun autoload-read-section-header ()
|
||||
"Read a section header form.
|
||||
Since continuation lines have been marked as comments,
|
||||
|
@ -456,13 +457,12 @@ which lists the file name and which functions are in it, etc."
|
|||
(defvar no-update-autoloads nil
|
||||
"File local variable to prevent scanning this file for autoload cookies.")
|
||||
|
||||
(defun autoload-file-load-name (file)
|
||||
(defun autoload-file-load-name (file outfile)
|
||||
"Compute the name that will be used to load FILE."
|
||||
;; OUTFILE should be the name of the global loaddefs.el file, which
|
||||
;; is expected to be at the root directory of the files we're
|
||||
;; scanning for autoloads and will be in the `load-path'.
|
||||
(let* ((outfile (default-value 'generated-autoload-file))
|
||||
(name (file-relative-name file (file-name-directory outfile)))
|
||||
(let* ((name (file-relative-name file (file-name-directory outfile)))
|
||||
(names '())
|
||||
(dir (file-name-directory outfile)))
|
||||
;; If `name' has directory components, only keep the
|
||||
|
@ -492,8 +492,9 @@ If FILE is being visited in a buffer, the contents of the buffer
|
|||
are used.
|
||||
Return non-nil in the case where no autoloads were added at point."
|
||||
(interactive "fGenerate autoloads for file: ")
|
||||
(let ((generated-autoload-file buffer-file-name))
|
||||
(autoload-generate-file-autoloads file (current-buffer))))
|
||||
(let ((autoload-modified-buffers nil))
|
||||
(autoload-generate-file-autoloads file (current-buffer) buffer-file-name)
|
||||
autoload-modified-buffers))
|
||||
|
||||
(defvar autoload-compute-prefixes t
|
||||
"If non-nil, autoload will add code to register the prefixes used in a file.
|
||||
|
@ -610,7 +611,7 @@ Don't try to split prefixes that are already longer than that.")
|
|||
`(register-definition-prefixes ,file ',(sort (delq nil strings)
|
||||
'string<))))))
|
||||
|
||||
(defun autoload--setup-output (otherbuf outbuf absfile load-name)
|
||||
(defun autoload--setup-output (otherbuf outbuf absfile load-name output-file)
|
||||
(let ((outbuf
|
||||
(or (if otherbuf
|
||||
;; A file-local setting of
|
||||
|
@ -618,7 +619,7 @@ Don't try to split prefixes that are already longer than that.")
|
|||
;; should ignore OUTBUF.
|
||||
nil
|
||||
outbuf)
|
||||
(autoload-find-destination absfile load-name)
|
||||
(autoload-find-destination absfile load-name output-file)
|
||||
;; The file has autoload cookies, but they're
|
||||
;; already up-to-date. If OUTFILE is nil, the
|
||||
;; entries are in the expected OUTBUF,
|
||||
|
@ -675,23 +676,16 @@ Don't try to split prefixes that are already longer than that.")
|
|||
More specifically those definitions will not be considered for the
|
||||
`register-definition-prefixes' call.")
|
||||
|
||||
;; When called from `generate-file-autoloads' we should ignore
|
||||
;; `generated-autoload-file' altogether. When called from
|
||||
;; `update-file-autoloads' we don't know `outbuf'. And when called from
|
||||
;; `update-directory-autoloads' it's in between: we know the default
|
||||
;; `outbuf' but we should obey any file-local setting of
|
||||
;; `generated-autoload-file'.
|
||||
(defun autoload-generate-file-autoloads (file &optional outbuf outfile)
|
||||
"Insert an autoload section for FILE in the appropriate buffer.
|
||||
Autoloads are generated for defuns and defmacros in FILE
|
||||
marked by `generate-autoload-cookie' (which see).
|
||||
|
||||
If FILE is being visited in a buffer, the contents of the buffer are used.
|
||||
OUTBUF is the buffer in which the autoload statements should be inserted.
|
||||
If OUTBUF is nil, it will be determined by `autoload-generated-file'.
|
||||
|
||||
If provided, OUTFILE is expected to be the file name of OUTBUF.
|
||||
If OUTFILE is non-nil and FILE specifies a `generated-autoload-file'
|
||||
different from OUTFILE, then OUTBUF is ignored.
|
||||
If OUTBUF is nil, the output will go to OUTFILE, unless there's a
|
||||
buffer-local setting of `generated-autoload-file' in FILE.
|
||||
|
||||
Return non-nil if and only if FILE adds no autoloads to OUTFILE
|
||||
\(or OUTBUF if OUTFILE is nil). The actual return value is
|
||||
|
@ -719,16 +713,19 @@ FILE's modification time."
|
|||
(setq load-name
|
||||
(if (stringp generated-autoload-load-name)
|
||||
generated-autoload-load-name
|
||||
(autoload-file-load-name absfile)))
|
||||
(autoload-file-load-name absfile outfile)))
|
||||
;; FIXME? Comparing file-names for equality with just equal
|
||||
;; is fragile, eg if one has an automounter prefix and one
|
||||
;; does not, but both refer to the same physical file.
|
||||
(when (and outfile
|
||||
(not outbuf)
|
||||
(not
|
||||
(if (memq system-type '(ms-dos windows-nt))
|
||||
(equal (downcase outfile)
|
||||
(downcase (autoload-generated-file)))
|
||||
(equal outfile (autoload-generated-file)))))
|
||||
(downcase (autoload-generated-file
|
||||
outfile)))
|
||||
(equal outfile (autoload-generated-file
|
||||
outfile)))))
|
||||
(setq otherbuf t))
|
||||
(save-excursion
|
||||
(save-restriction
|
||||
|
@ -742,7 +739,8 @@ FILE's modification time."
|
|||
(file-name-sans-extension
|
||||
(file-name-nondirectory file))))
|
||||
(setq output-start (autoload--setup-output
|
||||
otherbuf outbuf absfile load-name))
|
||||
otherbuf outbuf absfile
|
||||
load-name outfile))
|
||||
(let ((standard-output (marker-buffer output-start))
|
||||
(print-quoted t))
|
||||
(princ `(push (purecopy
|
||||
|
@ -760,7 +758,8 @@ FILE's modification time."
|
|||
;; If not done yet, figure out where to insert this text.
|
||||
(unless output-start
|
||||
(setq output-start (autoload--setup-output
|
||||
otherbuf outbuf absfile load-name)))
|
||||
otherbuf outbuf absfile
|
||||
load-name outfile)))
|
||||
(autoload--print-cookie-text output-start load-name file))
|
||||
((= (following-char) ?\;)
|
||||
;; Don't read the comment.
|
||||
|
@ -791,7 +790,7 @@ FILE's modification time."
|
|||
((not otherbuf)
|
||||
(unless output-start
|
||||
(setq output-start (autoload--setup-output
|
||||
nil outbuf absfile load-name)))
|
||||
nil outbuf absfile load-name outfile)))
|
||||
(let ((autoload-print-form-outbuf
|
||||
(marker-buffer output-start)))
|
||||
(autoload-print-form form)))
|
||||
|
@ -803,9 +802,8 @@ FILE's modification time."
|
|||
;; then passing otherbuf=nil is enough, but if
|
||||
;; outbuf is nil, that won't cut it, so we
|
||||
;; locally bind generated-autoload-file.
|
||||
(let ((generated-autoload-file
|
||||
(default-value 'generated-autoload-file)))
|
||||
(autoload--setup-output nil outbuf absfile load-name)))
|
||||
(autoload--setup-output nil outbuf absfile load-name
|
||||
outfile))
|
||||
(autoload-print-form-outbuf
|
||||
(marker-buffer other-output-start)))
|
||||
(autoload-print-form form)
|
||||
|
@ -927,19 +925,23 @@ Return FILE if there was no autoload cookie in it, else nil."
|
|||
(interactive (list (read-file-name "Update autoloads for file: ")
|
||||
current-prefix-arg
|
||||
(read-file-name "Write autoload definitions to file: ")))
|
||||
(let* ((generated-autoload-file (or outfile generated-autoload-file))
|
||||
(autoload-modified-buffers nil)
|
||||
(setq outfile (or outfile generated-autoload-file))
|
||||
(let* ((autoload-modified-buffers nil)
|
||||
;; We need this only if the output file handles more than one input.
|
||||
;; See https://debbugs.gnu.org/22213#38 and subsequent.
|
||||
(autoload-timestamps t)
|
||||
(no-autoloads (autoload-generate-file-autoloads file)))
|
||||
(no-autoloads (autoload-generate-file-autoloads
|
||||
file nil
|
||||
(if (local-variable-p 'generated-autoload-file)
|
||||
generated-autoload-file
|
||||
outfile))))
|
||||
(if autoload-modified-buffers
|
||||
(if save-after (autoload-save-buffers))
|
||||
(if (called-interactively-p 'interactive)
|
||||
(message "Autoload section for %s is up to date." file)))
|
||||
(if no-autoloads file)))
|
||||
|
||||
(defun autoload-find-destination (file load-name)
|
||||
(defun autoload-find-destination (file load-name output-file)
|
||||
"Find the destination point of the current buffer's autoloads.
|
||||
FILE is the file name of the current buffer.
|
||||
LOAD-NAME is the name as it appears in the output.
|
||||
|
@ -949,12 +951,12 @@ removes any prior now out-of-date autoload entries."
|
|||
(catch 'up-to-date
|
||||
(let* ((buf (current-buffer))
|
||||
(existing-buffer (if buffer-file-name buf))
|
||||
(output-file (autoload-generated-file))
|
||||
(output-file (autoload-generated-file output-file))
|
||||
(output-time (if (file-exists-p output-file)
|
||||
(file-attribute-modification-time
|
||||
(file-attributes output-file))))
|
||||
(found nil))
|
||||
(with-current-buffer (autoload-find-generated-file)
|
||||
(with-current-buffer (autoload-find-generated-file output-file)
|
||||
;; This is to make generated-autoload-file have Unix EOLs, so
|
||||
;; that it is portable to all platforms.
|
||||
(or (eq 0 (coding-system-eol-type buffer-file-coding-system))
|
||||
|
@ -1035,12 +1037,31 @@ The function does NOT recursively descend into subdirectories of the
|
|||
directory or directories specified.
|
||||
|
||||
In an interactive call, prompt for a default output file for the
|
||||
autoload definitions, and temporarily bind the variable
|
||||
`generated-autoload-file' to this value. When called from Lisp,
|
||||
use the existing value of `generated-autoload-file'. If any Lisp
|
||||
file binds `generated-autoload-file' as a file-local variable,
|
||||
write its autoloads into the specified file instead."
|
||||
autoload definitions. When called from Lisp, use the existing
|
||||
value of `generated-autoload-file'. If any Lisp file binds
|
||||
`generated-autoload-file' as a file-local variable, write its
|
||||
autoloads into the specified file instead."
|
||||
(declare (obsolete make-directory-autoloads "28.1"))
|
||||
(interactive "DUpdate autoloads from directory: ")
|
||||
(make-directory-autoloads
|
||||
dirs
|
||||
(if (called-interactively-p 'interactive)
|
||||
(read-file-name "Write autoload definitions to file: ")
|
||||
generated-autoload-file)))
|
||||
|
||||
;;;###autoload
|
||||
(defun make-directory-autoloads (dir output-file)
|
||||
"Update autoload definitions for Lisp files in the directories DIRS.
|
||||
DIR can be either a single directory or a list of
|
||||
directories. (The latter usage is discouraged.)
|
||||
|
||||
The autoloads will be written to OUTPUT-FILE. If any Lisp file
|
||||
binds `generated-autoload-file' as a file-local variable, write
|
||||
its autoloads into the specified file instead.
|
||||
|
||||
The function does NOT recursively descend into subdirectories of the
|
||||
directory or directories specified."
|
||||
(interactive "DUpdate autoloads from directory: \nFWrite to file: ")
|
||||
(let* ((files-re (let ((tmp nil))
|
||||
(dolist (suf (get-load-suffixes))
|
||||
;; We don't use module-file-suffix below because
|
||||
|
@ -1051,10 +1072,10 @@ write its autoloads into the specified file instead."
|
|||
(push suf tmp)))
|
||||
(concat "\\`[^=.].*" (regexp-opt tmp t) "\\'")))
|
||||
(files (apply #'nconc
|
||||
(mapcar (lambda (dir)
|
||||
(directory-files (expand-file-name dir)
|
||||
t files-re))
|
||||
dirs)))
|
||||
(mapcar (lambda (d)
|
||||
(directory-files (expand-file-name d)
|
||||
t files-re))
|
||||
(if (consp dir) dir (list dir)))))
|
||||
(done ()) ;Files processed; to remove duplicates.
|
||||
(changed nil) ;Non-nil if some change occurred.
|
||||
(last-time)
|
||||
|
@ -1062,16 +1083,12 @@ write its autoloads into the specified file instead."
|
|||
;; files because of file-local autoload-generated-file settings.
|
||||
(no-autoloads nil)
|
||||
(autoload-modified-buffers nil)
|
||||
(generated-autoload-file
|
||||
(if (called-interactively-p 'interactive)
|
||||
(read-file-name "Write autoload definitions to file: ")
|
||||
generated-autoload-file))
|
||||
(output-time
|
||||
(if (file-exists-p generated-autoload-file)
|
||||
(file-attribute-modification-time
|
||||
(file-attributes generated-autoload-file)))))
|
||||
(and (file-exists-p output-file)
|
||||
(file-attribute-modification-time
|
||||
(file-attributes output-file)))))
|
||||
|
||||
(with-current-buffer (autoload-find-generated-file)
|
||||
(with-current-buffer (autoload-find-generated-file output-file)
|
||||
(save-excursion
|
||||
;; Canonicalize file names and remove the autoload file itself.
|
||||
(setq files (delete (file-relative-name buffer-file-name)
|
||||
|
@ -1128,8 +1145,7 @@ write its autoloads into the specified file instead."
|
|||
(progress (make-progress-reporter
|
||||
(byte-compile-info
|
||||
(concat "Scraping files for "
|
||||
(file-relative-name
|
||||
generated-autoload-file)))
|
||||
(file-relative-name output-file)))
|
||||
0 (length files) nil 10))
|
||||
(file-count 0)
|
||||
file-time)
|
||||
|
@ -1207,7 +1223,7 @@ should be non-nil)."
|
|||
(let ((args command-line-args-left))
|
||||
(batch-update-autoloads--summary args)
|
||||
(setq command-line-args-left nil)
|
||||
(apply #'update-directory-autoloads args)))
|
||||
(make-directory-autoloads args generated-autoload-file)))
|
||||
|
||||
(provide 'autoload)
|
||||
|
||||
|
|
|
@ -922,11 +922,15 @@ Output stream used is value of `standard-output'."
|
|||
(princ (backtrace-to-string (backtrace-get-frames 'backtrace)))
|
||||
nil)
|
||||
|
||||
(defun backtrace-to-string(&optional frames)
|
||||
(defun backtrace-to-string (&optional frames)
|
||||
"Format FRAMES, a list of `backtrace-frame' objects, for output.
|
||||
Return the result as a string. If FRAMES is nil, use all
|
||||
function calls currently active."
|
||||
(unless frames (setq frames (backtrace-get-frames 'backtrace-to-string)))
|
||||
(substring-no-properties
|
||||
(backtrace--to-string
|
||||
(or frames (backtrace-get-frames 'backtrace-to-string)))))
|
||||
|
||||
(defun backtrace--to-string (frames)
|
||||
(let ((backtrace-fontify nil))
|
||||
(with-temp-buffer
|
||||
(backtrace-mode)
|
||||
|
@ -934,8 +938,7 @@ function calls currently active."
|
|||
backtrace-frames frames
|
||||
backtrace-print-function #'cl-prin1)
|
||||
(backtrace-print)
|
||||
(substring-no-properties (filter-buffer-substring (point-min)
|
||||
(point-max))))))
|
||||
(filter-buffer-substring (point-min) (point-max)))))
|
||||
|
||||
(provide 'backtrace)
|
||||
|
||||
|
|
|
@ -3255,7 +3255,8 @@ for symbols generated by the byte compiler itself."
|
|||
(t "."))))
|
||||
(if (eq (car-safe (symbol-function (car form))) 'macro)
|
||||
(byte-compile-report-error
|
||||
(format "Forgot to expand macro %s in %S" (car form) form)))
|
||||
(format "`%s' defined after use in %S (missing `require' of a library file?)"
|
||||
(car form) form)))
|
||||
(if (and handler
|
||||
;; Make sure that function exists.
|
||||
(and (functionp handler)
|
||||
|
|
|
@ -2999,7 +2999,7 @@ Supported keywords for slots are:
|
|||
constrs))
|
||||
(pcase-dolist (`(,cname ,args ,doc) constrs)
|
||||
(let* ((anames (cl--arglist-args args))
|
||||
(make (cl-mapcar (function (lambda (s d) (if (memq s anames) s d)))
|
||||
(make (cl-mapcar (lambda (s d) (if (memq s anames) s d))
|
||||
slots defaults))
|
||||
;; `cl-defsubst' is fundamentally broken: it substitutes
|
||||
;; its arguments into the body's `sexp' much too naively
|
||||
|
|
|
@ -320,6 +320,17 @@ the debugger will not be entered."
|
|||
(message "Error in debug printer: %S" err)
|
||||
(prin1 obj stream))))
|
||||
|
||||
(make-obsolete 'debugger-insert-backtrace
|
||||
"use a `backtrace-mode' buffer or `backtrace-to-string'."
|
||||
"Emacs 27.1")
|
||||
|
||||
(defun debugger-insert-backtrace (frames do-xrefs)
|
||||
"Format and insert the backtrace FRAMES at point.
|
||||
Make functions into cross-reference buttons if DO-XREFS is non-nil."
|
||||
(insert (if do-xrefs
|
||||
(backtrace--to-string frames)
|
||||
(backtrace-to-string frames))))
|
||||
|
||||
(defun debugger-setup-buffer (args)
|
||||
"Initialize the `*Backtrace*' buffer for entry to the debugger.
|
||||
That buffer should be current already and in debugger-mode."
|
||||
|
@ -527,6 +538,9 @@ The environment used is the one when entering the activation frame at point."
|
|||
(let ((str (eval-expression-print-format val)))
|
||||
(if str (princ str t))))))))
|
||||
|
||||
(define-obsolete-function-alias 'debugger-toggle-locals
|
||||
'backtrace-toggle-locals "28.1")
|
||||
|
||||
|
||||
(defvar debugger-mode-map
|
||||
(let ((map (make-keymap)))
|
||||
|
@ -621,6 +635,9 @@ Complete list of commands:
|
|||
(buffer-substring (line-beginning-position 0)
|
||||
(line-end-position 0)))))
|
||||
|
||||
(define-obsolete-function-alias 'debug-help-follow
|
||||
'backtrace-help-follow-symbol "28.1")
|
||||
|
||||
|
||||
;; When you change this, you may also need to change the number of
|
||||
;; frames that the debugger skips.
|
||||
|
|
|
@ -201,7 +201,7 @@ This is used with the `object-write' method.")
|
|||
"Saving this object should make backup files.
|
||||
Setting to nil will mean no backups are made."))
|
||||
"This special class enables persistence through save files
|
||||
Use the `object-save' method to write this object to disk. The save
|
||||
Use the `object-write' method to write this object to disk. The save
|
||||
format is Emacs Lisp code which calls the constructor for the saved
|
||||
object. For this reason, only slots which do not have an `:initarg'
|
||||
specified will not be saved."
|
||||
|
|
|
@ -736,7 +736,7 @@ run. ARGS are the arguments to `debugger'."
|
|||
;; This means we have to limit `print-level' and
|
||||
;; `print-length' when printing result objects. That
|
||||
;; might not be worth while when we can also use
|
||||
;; `ert-results-rerun-test-debugging-errors-at-point',
|
||||
;; `ert-results-rerun-test-at-point-debugging-errors',
|
||||
;; (i.e., when running interactively) but having the
|
||||
;; backtrace ready for printing is important for batch
|
||||
;; use.
|
||||
|
@ -958,7 +958,7 @@ Selectors that do not, such as (member ...), just return the
|
|||
set implied by them without checking whether it is really
|
||||
contained in UNIVERSE."
|
||||
;; This code needs to match the cases in
|
||||
;; `ert-insert-human-readable-selector'.
|
||||
;; `ert--insert-human-readable-selector'.
|
||||
(pcase-exhaustive selector
|
||||
('nil nil)
|
||||
('t (pcase-exhaustive universe
|
||||
|
|
|
@ -117,7 +117,7 @@ instead (which see).")
|
|||
"Create a new generic mode MODE.
|
||||
|
||||
A \"generic\" mode is a simple major mode with basic support for
|
||||
comment syntax and Font Lock mode, but otherwise do not have a
|
||||
comment syntax and Font Lock mode, but otherwise does not have
|
||||
any special keystrokes or functionality available.
|
||||
|
||||
MODE is the name of the command for the generic mode; don't quote it.
|
||||
|
|
|
@ -1013,7 +1013,6 @@ untar into a directory named DIR; otherwise, signal an error."
|
|||
(write-region (autoload-rubric file "package" nil) nil file nil 'silent))
|
||||
file)
|
||||
|
||||
(defvar generated-autoload-file)
|
||||
(defvar autoload-timestamps)
|
||||
(defvar version-control)
|
||||
|
||||
|
@ -1021,14 +1020,14 @@ untar into a directory named DIR; otherwise, signal an error."
|
|||
"Generate autoloads in PKG-DIR for package named NAME."
|
||||
(let* ((auto-name (format "%s-autoloads.el" name))
|
||||
;;(ignore-name (concat name "-pkg.el"))
|
||||
(generated-autoload-file (expand-file-name auto-name pkg-dir))
|
||||
(output-file (expand-file-name auto-name pkg-dir))
|
||||
;; We don't need 'em, and this makes the output reproducible.
|
||||
(autoload-timestamps nil)
|
||||
(backup-inhibited t)
|
||||
(version-control 'never))
|
||||
(package-autoload-ensure-default-file generated-autoload-file)
|
||||
(update-directory-autoloads pkg-dir)
|
||||
(let ((buf (find-buffer-visiting generated-autoload-file)))
|
||||
(package-autoload-ensure-default-file output-file)
|
||||
(make-directory-autoloads pkg-dir output-file)
|
||||
(let ((buf (find-buffer-visiting output-file)))
|
||||
(when buf (kill-buffer buf)))
|
||||
auto-name))
|
||||
|
||||
|
@ -3623,7 +3622,7 @@ This is used for `tabulated-list-format' in `package-menu-mode'."
|
|||
(string< a b))))
|
||||
|
||||
(defun package-menu--populate-new-package-list ()
|
||||
"Decide which packages are new in `package-archives-contents'.
|
||||
"Decide which packages are new in `package-archive-contents'.
|
||||
Store this list in `package-menu--new-package-list'."
|
||||
;; Find which packages are new.
|
||||
(when package-menu--old-archive-contents
|
||||
|
|
|
@ -301,7 +301,7 @@ Except for Lisp syntax this is the same as `reb-regexp'.")
|
|||
"Keymap used by the RE Builder for the subexpression mode.")
|
||||
|
||||
(defun reb-mode-common ()
|
||||
"Setup functions common to functions `reb-mode' and `reb-mode-lisp'."
|
||||
"Setup functions common to functions `reb-mode' and `reb-lisp-mode'."
|
||||
|
||||
(setq reb-mode-string ""
|
||||
reb-valid-string ""
|
||||
|
@ -513,7 +513,7 @@ If SUBEXP is non-nil mark only the corresponding sub-expressions."
|
|||
(reb-update-overlays subexp))
|
||||
|
||||
(defun reb-auto-update (_beg _end _lenold &optional force)
|
||||
"Called from `after-update-functions' to update the display.
|
||||
"Called from `after-change-functions' to update the display.
|
||||
BEG, END and LENOLD are passed in from the hook.
|
||||
An actual update is only done if the regexp has changed or if the
|
||||
optional fourth argument FORCE is non-nil."
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue