From e8cc7880c3eead07c1d4fd93c0396edc3861b080 Mon Sep 17 00:00:00 2001 From: David Engster Date: Thu, 21 Mar 2013 23:11:03 +0100 Subject: Merge with CEDET upstream (rev. 8499). lisp/ * eieio/eieio-datadebug.el (data-debug/eieio-insert-slots): Inhibit read only while inserting objects. lisp/cedet/ * semantic.el (navigate-menu): Yank Tag :enable. Make sure `senator-tag-ring' is bound. (semantic-parse-region-default): Stop reversing the output of parse-whole-stream. (semantic-repeat-parse-whole-stream): Append returned tags differently, so they come out in the right order. * semantic/sb.el (semantic-sb-filter-tags-of-class): New option. (semantic-sb-fetch-tag-table): Filter tags being bucketed to exclude tags belonging to above filtered classes. * semantic/find.el (semantic-filter-tags-by-class): New function. * semantic/tag-ls.el (semantic-tag-similar-p-default): Add short-circuit in case tag1 and 2 are identical. * semantic/analyze/fcn.el (semantic-analyze-dereference-metatype-stack): Use `semantic-tag-similar-p' instead of 'eq' when comparing two tags during metatype evaluation in case they are the same, but not the same node. (Tweaked patch from Tomasz Gajewski) (Tiny change) * semantic/db-find.el (semanticdb-partial-synchronize): Fix require to semantic/db-typecache to be correct. (semanticdb-find-tags-external-children-of-type): Make this a brutish search by default. * semantic/sort.el (semantic-tag-external-member-children-default): When calling `semanticdb-find-tags-external-children-of-type', pass in the input tag as the place to start searching for externally defined methods. * semantic/db-file.el (semanticdb-default-save-directory): Doc fix: Add ref to default value. * semantic/complete.el (semantic-complete-post-command-hook): When detecting if cursor is outside completion area, do so if cursor moves before start of overlay, or the original starting location of the overlay (i.e., if user deletes past beginning of the overlay region). (semantic-complete-inline-tag-engine): Initialize original start of `semantic-complete-inline-overlay'. * semantic/bovine/c.el (semantic-c-describe-environment): Update some section titles. Test semanticdb table before printing it. (semantic-c-reset-preprocessor-symbol-map): Update `semantic-lex-spp-macro-symbol-obarray' outside the loop over all the files contributing to its value. (semantic-c-describe-environment): If there is an EDE project but no spp symbols from it, say so. * srecode/args.el (srecode-semantic-handle-:project): New argument handler. Provide variable values if not in an EDE project. * srecode/srt-mode.el (srecode-template-mode): Fix typo on srecode name. * srecode/cpp.el (srecode-semantic-handle-:c): Replace all characters in FILENAME_SYMBOL that aren't valid CPP symbol chars. * srecode/map.el (srecode-map-validate-file-for-mode): Force semantic to load if it is not active in the template being added to the map. * srecode/srt.el: Add local variables for setting the autoload file name. (srecode-semantic-handle-:srt): New autoload cookie * ede.el (ede-apply-preprocessor-map): Apply map to `semantic-lex-spp-project-macro-symbol-obarray' instead of the system one. Add require for semantic. * ede/proj-elisp.el (ede-update-version-in-source): In case a file has both a version variable and a Version: comment, always use `call-next-method'. * ede/cpp-root.el (ede-set-project-variables): Deleted. `ede-preprocessor-map' does the job this function was attempting to do with :spp-table. (ede-preprocessor-map): Update file tests to provide better messages. Do not try to get symbols from a file that is the file in the current buffer. * ede/base.el (ede-project-placeholder): Add more documentation to :file slot. (ede-load-cache): Use `insert-file-contents' instead of `find-file-noselect' in order to avoid activating other tools. * semantic/bovine/c.el (semantic-get-local-variables): Also add a new variable 'this' if we are in an inline member function. For detecting this, we check overlays at point if there is a class spanning the current function. Also, the variable 'this' has to be a pointer. * semantic/bovine/gcc.el (semantic-gcc-setup): Fail gracefully when querying g++ for defines returns an error. * srecode/srt-mode.el: * srecode/compile.el: * semantic/elp.el: * semantic/db-el.el: * semantic/complete.el: * ede.el: * cogre.el: * srecode/table.el: * srecode/mode.el: * srecode/insert.el: * srecode/compile.el: * semantic/decorate/include.el: * semantic/db.el: * semantic/adebug.el: * ede/auto.el: * srecode/dictionary.el: * semantic/ede-grammar.el: * semantic/db.el: * semantic/db-find.el: * semantic/db-file.el: * semantic/complete.el: * semantic/bovine/c.el: * semantic/analyze.el: * ede/util.el: * ede/proj.el: * ede/proj-elisp.el: * ede/pconf.el: * ede/locate.el: * ede.el: Adapt to EIEIO namespace cleanup: Rename `object-name' to `eieio-object-name', `object-set-name-string' to `eieio-object-set-name-string', `object-class' to `eieio-object-class', `class-parent' to `eieio-class-parent', `class-parents' to `eieio-class-parents', `class-children' to `eieio-class-children', `object-name-string' to `eieio-object-name-string', `object-class-fast' to `eieio--object-class'. Also replace direct access with new accessor functions. * ede/cpp-root.el (ede-project-autoload, initialize-instance): Fix EDE file symbol to match rename. Fix ede-cpp-root symbol to include -project in name. * cedet-files.el (cedet-files-list-recursively): New function. Recursively find files whose names are matching to given regex * ede.el (ede-current-project): Rewrite to avoid imperative style. * ede/files.el (ede-find-file): Simplify code. * ede/base.el (ede-normalize-file/directory): Add function to normalize :file or :directory slots if they are missing. * ede/cpp-root.el (ede-cpp-root-project): Add compile-command slot. (project-compile-project): Compiles project using value specified in :compule-command slot or in compile-command local variable. Value of slot or local variable could be string or function that receives project and should return string that will be invoked as command. (project-compile-target): Invokes compilation of whole project * ede/files.el (ede-find-project-root): New function to find root of project that contains specific file. (ede-files-find-existing): New function which checks presence of given directory in the list of registered projects. etc/ * srecode/ede-autoconf.srt: Change Copyright to FSF. (ede-empty): Change AC_INIT to use PROJECT_NAME, and PROJECT_VERSION. * srecode/ede-make.srt (ede-empty): Add a dependency on :project. Add header comment specifying the project's relative path. * srecode/c.srt (header_guard): Upcase the filename symbol. * srecode/java.srt (empty-main): New. (class-tag): Decapitalize class. --- lisp/emacs-lisp/eieio-datadebug.el | 63 +++++++++++++++++++------------------- 1 file changed, 32 insertions(+), 31 deletions(-) (limited to 'lisp/emacs-lisp') diff --git a/lisp/emacs-lisp/eieio-datadebug.el b/lisp/emacs-lisp/eieio-datadebug.el index 7daa24257a1..d3ae8b191e1 100644 --- a/lisp/emacs-lisp/eieio-datadebug.el +++ b/lisp/emacs-lisp/eieio-datadebug.el @@ -80,38 +80,39 @@ PREBUTTONTEXT is some text between PREFIX and the object button." ;; Each object should have an opportunity to show stuff about itself. (defmethod data-debug/eieio-insert-slots ((obj eieio-default-superclass) - prefix) + prefix) "Insert the slots of OBJ into the current DDEBUG buffer." - (data-debug-insert-thing (eieio-object-name-string obj) - prefix - "Name: ") - (let* ((cl (eieio-object-class obj)) - (cv (class-v cl))) - (data-debug-insert-thing (class-constructor cl) - prefix - "Class: ") - ;; Loop over all the public slots - (let ((publa (eieio--class-public-a cv)) - ) - (while publa - (if (slot-boundp obj (car publa)) - (let* ((i (class-slot-initarg cl (car publa))) - (v (eieio-oref obj (car publa)))) - (data-debug-insert-thing - v prefix (concat - (if i (symbol-name i) - (symbol-name (car publa))) - " "))) - ;; Unbound case - (let ((i (class-slot-initarg cl (car publa)))) - (data-debug-insert-custom - "#unbound" prefix - (concat (if i (symbol-name i) - (symbol-name (car publa))) - " ") - 'font-lock-keyword-face)) - ) - (setq publa (cdr publa)))))) + (let ((inhibit-read-only t)) + (data-debug-insert-thing (eieio-object-name-string obj) + prefix + "Name: ") + (let* ((cl (eieio-object-class obj)) + (cv (class-v cl))) + (data-debug-insert-thing (class-constructor cl) + prefix + "Class: ") + ;; Loop over all the public slots + (let ((publa (eieio--class-public-a cv)) + ) + (while publa + (if (slot-boundp obj (car publa)) + (let* ((i (class-slot-initarg cl (car publa))) + (v (eieio-oref obj (car publa)))) + (data-debug-insert-thing + v prefix (concat + (if i (symbol-name i) + (symbol-name (car publa))) + " "))) + ;; Unbound case + (let ((i (class-slot-initarg cl (car publa)))) + (data-debug-insert-custom + "#unbound" prefix + (concat (if i (symbol-name i) + (symbol-name (car publa))) + " ") + 'font-lock-keyword-face)) + ) + (setq publa (cdr publa))))))) ;;; Augment the Data debug thing display list. (data-debug-add-specialized-thing (lambda (thing) (object-p thing)) -- cgit v1.2.3 From bde73d272008310f7d84575088bb94c034c6b7a7 Mon Sep 17 00:00:00 2001 From: Dmitry Gutov Date: Sun, 24 Mar 2013 02:04:40 +0400 Subject: * lisp/emacs-lisp/lisp-mode.el (emacs-lisp-docstring-fill-column): Make it safe-local. --- lisp/ChangeLog | 3 +++ lisp/emacs-lisp/lisp-mode.el | 2 ++ 2 files changed, 5 insertions(+) (limited to 'lisp/emacs-lisp') diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 731705b2aa9..c1124f51a8e 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,8 @@ 2013-03-23 Dmitry Gutov + * emacs-lisp/lisp-mode.el (emacs-lisp-docstring-fill-column): Make + it safe-local. + * vc/diff-mode.el (diff-mode-shared-map): Unbind "/" (Bug#14034). 2013-03-23 Leo Liu diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el index 4ebaa0a49d5..b528dd11316 100644 --- a/lisp/emacs-lisp/lisp-mode.el +++ b/lisp/emacs-lisp/lisp-mode.el @@ -1436,6 +1436,8 @@ Any non-integer value means do not use a different value of :type '(choice (integer) (const :tag "Use the current `fill-column'" t)) :group 'lisp) +(put 'emacs-lisp-docstring-fill-column 'safe-local-variable + (lambda (x) (or (eq x t) (integerp x)))) (defun lisp-fill-paragraph (&optional justify) "Like \\[fill-paragraph], but handle Emacs Lisp comments and docstrings. -- cgit v1.2.3 From 7b0e2f853fcd88c58715fd159923d50dfdeb9cba Mon Sep 17 00:00:00 2001 From: Leo Liu Date: Sun, 24 Mar 2013 14:42:25 +0800 Subject: * lisp/files.el (kill-buffer-hook): Doc fix. * lisp/emacs-lisp/edebug.el (edebug-mode): Make sure edebug-kill-buffer is the last entry in kill-buffer-hook. * lisp/nxml/rng-valid.el (rng-validate-while-idle) (rng-validate-quick-while-idle): Guard against deleted buffer. Fixes: debbugs:13999 --- lisp/ChangeLog | 11 +++++++++++ lisp/emacs-lisp/edebug.el | 5 ++++- lisp/files.el | 5 ++++- lisp/nxml/rng-valid.el | 34 ++++++++++++++++++---------------- 4 files changed, 37 insertions(+), 18 deletions(-) (limited to 'lisp/emacs-lisp') diff --git a/lisp/ChangeLog b/lisp/ChangeLog index c1124f51a8e..68a9575bcbe 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,14 @@ +2013-03-24 Leo Liu + + * nxml/rng-valid.el (rng-validate-while-idle) + (rng-validate-quick-while-idle): Guard against deleted buffer. + (Bug#13999) + + * emacs-lisp/edebug.el (edebug-mode): Make sure edebug-kill-buffer + is the last entry in kill-buffer-hook. + + * files.el (kill-buffer-hook): Doc fix. + 2013-03-23 Dmitry Gutov * emacs-lisp/lisp-mode.el (emacs-lisp-docstring-fill-column): Make diff --git a/lisp/emacs-lisp/edebug.el b/lisp/emacs-lisp/edebug.el index 52e12013fd3..5a6fd4a0a22 100644 --- a/lisp/emacs-lisp/edebug.el +++ b/lisp/emacs-lisp/edebug.el @@ -3810,7 +3810,10 @@ Options: ;; If the user kills the buffer in which edebug is currently active, ;; exit to top level, because the edebug command loop can't usefully ;; continue running in such a case. - (add-hook 'kill-buffer-hook 'edebug-kill-buffer nil t) + ;; + ;; Append `edebug-kill-buffer' to the hook to avoid interfering with + ;; other entries that are ungarded against deleted buffer. + (add-hook 'kill-buffer-hook 'edebug-kill-buffer t t) (use-local-map edebug-mode-map)) (defun edebug-kill-buffer () diff --git a/lisp/files.el b/lisp/files.el index 9da9ac6fd53..06958622d14 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -1516,7 +1516,10 @@ expand wildcards (if any) and replace the file with multiple files." (defvar kill-buffer-hook nil "Hook run when a buffer is killed. The buffer being killed is current while the hook is running. -See `kill-buffer'.") +See `kill-buffer'. + +Note: Be careful with let-binding this hook considering it is +frequently used for cleanup.") (defun find-alternate-file (filename &optional wildcards) "Find file FILENAME, select its buffer, kill previous buffer. diff --git a/lisp/nxml/rng-valid.el b/lisp/nxml/rng-valid.el index de18c581421..e1140980813 100644 --- a/lisp/nxml/rng-valid.el +++ b/lisp/nxml/rng-valid.el @@ -433,24 +433,26 @@ The schema is set like `rng-auto-set-schema'." ;; validation process down. (defun rng-validate-while-idle (buffer) - (with-current-buffer buffer - (if rng-validate-mode - (if (let ((rng-validate-display-point (point)) - (rng-validate-display-modified-p (buffer-modified-p))) - (rng-do-some-validation 'rng-validate-while-idle-continue-p)) - (force-mode-line-update) - (rng-validate-done)) - ;; must have done kill-all-local-variables - (rng-kill-timers)))) + (when (buffer-live-p buffer) ; bug#13999 + (with-current-buffer buffer + (if rng-validate-mode + (if (let ((rng-validate-display-point (point)) + (rng-validate-display-modified-p (buffer-modified-p))) + (rng-do-some-validation 'rng-validate-while-idle-continue-p)) + (force-mode-line-update) + (rng-validate-done)) + ;; must have done kill-all-local-variables + (rng-kill-timers))))) (defun rng-validate-quick-while-idle (buffer) - (with-current-buffer buffer - (if rng-validate-mode - (if (rng-do-some-validation) - (force-mode-line-update) - (rng-validate-done)) - ;; must have done kill-all-local-variables - (rng-kill-timers)))) + (when (buffer-live-p buffer) ; bug#13999 + (with-current-buffer buffer + (if rng-validate-mode + (if (rng-do-some-validation) + (force-mode-line-update) + (rng-validate-done)) + ;; must have done kill-all-local-variables + (rng-kill-timers))))) (defun rng-validate-done () (when (or (not (current-message)) -- cgit v1.2.3 From 17c781d1e6703ec32e459dc09547d8d1c7a3a534 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Thu, 28 Mar 2013 12:33:06 -0400 Subject: * lisp/emacs-lisp/edebug.el (edebug-mode): Make it a minor mode. (edebug--recursive-edit): Use it. (edebug-kill-buffer): Don't let-bind kill-buffer-hook. (edebug-temp-display-freq-count): Don't let-bind buffer-read-only. --- lisp/ChangeLog | 7 +++++++ lisp/emacs-lisp/edebug.el | 51 +++++++++++++++++++++++++---------------------- 2 files changed, 34 insertions(+), 24 deletions(-) (limited to 'lisp/emacs-lisp') diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 6ba1ace546a..a3ef9b2ae6d 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,10 @@ +2013-03-28 Stefan Monnier + + * emacs-lisp/edebug.el (edebug-mode): Make it a minor mode. + (edebug--recursive-edit): Use it. + (edebug-kill-buffer): Don't let-bind kill-buffer-hook. + (edebug-temp-display-freq-count): Don't let-bind buffer-read-only. + 2013-03-28 Leo Liu * vc/vc-bzr.el (vc-bzr-revert): Don't backup. (Bug#14066) diff --git a/lisp/emacs-lisp/edebug.el b/lisp/emacs-lisp/edebug.el index 5a6fd4a0a22..4ecd244ebf2 100644 --- a/lisp/emacs-lisp/edebug.el +++ b/lisp/emacs-lisp/edebug.el @@ -54,6 +54,7 @@ (require 'macroexp) (eval-when-compile (require 'cl-lib)) +(eval-when-compile (require 'pcase)) ;;; Options @@ -2072,11 +2073,6 @@ expressions; a `progn' form will be returned enclosing these forms." (defvar edebug-active nil) ;; Non-nil when edebug is active -;;; add minor-mode-alist entry -(or (assq 'edebug-active minor-mode-alist) - (setq minor-mode-alist (cons (list 'edebug-active " *Debugging*") - minor-mode-alist))) - (defvar edebug-stack nil) ;; Stack of active functions evaluated via edebug. ;; Should be nil at the top level. @@ -2715,8 +2711,7 @@ MSG is printed after `::::} '." ;; Start up a recursive edit inside of edebug. ;; The current buffer is the edebug-buffer, which is put into edebug-mode. ;; Assume that none of the variables below are buffer-local. - (let ((edebug-buffer-read-only buffer-read-only) - ;; match-data must be done in the outside buffer + (let (;; match-data must be done in the outside buffer (edebug-outside-match-data (with-current-buffer edebug-outside-buffer ; in case match buffer different (match-data))) @@ -2730,8 +2725,6 @@ MSG is printed after `::::} '." ;; during a recursive-edit edebug-inside-windows - (edebug-outside-map (current-local-map)) - ;; Save the outside value of executing macro. (here??) (edebug-outside-executing-macro executing-kbd-macro) (edebug-outside-pre-command-hook @@ -2804,10 +2797,9 @@ MSG is printed after `::::} '." (not (memq arg-mode '(after error)))) (message "Break")) - (setq buffer-read-only t) (setq signal-hook-function nil) - (edebug-mode) + (edebug-mode 1) (unwind-protect (recursive-edit) ; <<<<<<<<<< Recursive edit @@ -2828,10 +2820,7 @@ MSG is printed after `::::} '." (set-buffer edebug-buffer) (if (memq edebug-execution-mode '(go Go-nonstop)) (edebug-overlay-arrow)) - (setq buffer-read-only edebug-buffer-read-only) - (use-local-map edebug-outside-map) - (remove-hook 'kill-buffer-hook 'edebug-kill-buffer t) - ) + (edebug-mode -1)) ;; gotta have a buffer to let its buffer local variables be set (get-buffer-create " bogus edebug buffer")) ));; inner let @@ -3773,7 +3762,9 @@ be installed in `emacs-lisp-mode-map'.") (interactive) (describe-function 'edebug-mode)) -(defun edebug-mode () +(defvar edebug--mode-saved-vars nil) + +(define-minor-mode edebug-mode "Mode for Emacs Lisp buffers while in Edebug. In addition to all Emacs Lisp commands (except those that modify the @@ -3807,20 +3798,32 @@ Options: `edebug-on-signal' `edebug-unwrap-results' `edebug-global-break-condition'" + :lighter " *Debugging*" + :keymap edebug-mode-map ;; If the user kills the buffer in which edebug is currently active, ;; exit to top level, because the edebug command loop can't usefully ;; continue running in such a case. ;; - ;; Append `edebug-kill-buffer' to the hook to avoid interfering with - ;; other entries that are ungarded against deleted buffer. - (add-hook 'kill-buffer-hook 'edebug-kill-buffer t t) - (use-local-map edebug-mode-map)) + (if (not edebug-mode) + (progn + (while edebug--mode-saved-vars + (let ((setting (pop edebug--mode-saved-vars))) + (if (consp setting) + (set (car setting) (cdr setting)) + (kill-local-variable setting)))) + (remove-hook 'kill-buffer-hook 'edebug-kill-buffer t)) + (pcase-dolist (`(,var . ,val) '((buffer-read-only . t))) + (push + (if (local-variable-p var) var (cons var (symbol-value var))) + edebug--mode-saved-vars) + (set (make-local-variable var) val)) + ;; Append `edebug-kill-buffer' to the hook to avoid interfering with + ;; other entries that are ungarded against deleted buffer. + (add-hook 'kill-buffer-hook 'edebug-kill-buffer t t))) (defun edebug-kill-buffer () "Used on `kill-buffer-hook' when Edebug is operating in a buffer of Lisp code." - (let (kill-buffer-hook) - (kill-buffer (current-buffer))) - (top-level)) + (run-with-timer 0 nil #'top-level)) ;;; edebug eval list mode @@ -4143,7 +4146,7 @@ reinstrument it." It is removed when you hit any char." ;; This seems not to work with Emacs 18.59. It undoes too far. (interactive) - (let ((buffer-read-only nil)) + (let ((inhibit-read-only t)) (undo-boundary) (edebug-display-freq-count) (setq unread-command-events -- cgit v1.2.3 From a77e2924c91c20b2b5ca121f52d2c71245c56c74 Mon Sep 17 00:00:00 2001 From: Roland Winkler Date: Sun, 31 Mar 2013 10:19:19 -0500 Subject: emacs-lisp/crm.el (completing-read-multiple): Doc fix. --- lisp/ChangeLog | 4 ++++ lisp/emacs-lisp/crm.el | 5 +++-- 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'lisp/emacs-lisp') diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 9a471252797..0067dfe305b 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,7 @@ +2013-03-31 Roland Winkler + + * emacs-lisp/crm.el (completing-read-multiple): Doc fix. + 2013-03-31 Stefan Monnier * hi-lock.el (hi-lock-mode): Cleanup after revert-buffer (bug#13891). diff --git a/lisp/emacs-lisp/crm.el b/lisp/emacs-lisp/crm.el index e1e1847dd59..b8e327625e7 100644 --- a/lisp/emacs-lisp/crm.el +++ b/lisp/emacs-lisp/crm.el @@ -263,7 +263,8 @@ Completion is available on a per-element basis. For example, if the contents of the minibuffer are 'alice,bob,eve' and point is between 'l' and 'i', pressing TAB operates on the element 'alice'. -The return value of this function is a list of the read strings. +The return value of this function is a list of the read strings +with empty strings removed. See the documentation for `completing-read' for details on the arguments: PROMPT, TABLE, PREDICATE, REQUIRE-MATCH, INITIAL-INPUT, HIST, DEF, and @@ -287,7 +288,7 @@ INHERIT-INPUT-METHOD." prompt initial-input map nil hist def inherit-input-method))) (and def (string-equal input "") (setq input def)) - ;; Ignore empty strings in the list of return values. + ;; Remove empty strings in the list of read strings. (split-string input crm-separator t))) (remove-hook 'choose-completion-string-functions 'crm--choose-completion-string))) -- cgit v1.2.3 From b9edfa5c63fda7166d7523038c74742822279939 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Mon, 1 Apr 2013 00:58:04 -0700 Subject: Spelling fixes. --- lib-src/ChangeLog | 2 +- lisp/ChangeLog | 2 +- lisp/ChangeLog.10 | 2 +- lisp/cedet/ede/cpp-root.el | 4 ++-- lisp/cedet/semantic/tag-ls.el | 2 +- lisp/emacs-lisp/edebug.el | 2 +- lisp/gnus/ChangeLog | 2 +- lisp/org/ChangeLog | 2 +- src/ChangeLog.10 | 2 +- src/nsmenu.m | 2 +- src/w32term.c | 2 +- test/automated/python-tests.el | 2 +- 12 files changed, 13 insertions(+), 13 deletions(-) (limited to 'lisp/emacs-lisp') diff --git a/lib-src/ChangeLog b/lib-src/ChangeLog index 10758d80872..5606ae569b6 100644 --- a/lib-src/ChangeLog +++ b/lib-src/ChangeLog @@ -3728,7 +3728,7 @@ 2002-03-05 Francesco Potortì - * etags.c: Honour #line directives. + * etags.c: Honor #line directives. (no_line_directive): New global var; set it for old behavior. (main): Remove some #ifdef in the getopt switch. (add_node, put_entries): Code added to merge different chunks of diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 0067dfe305b..1f7c2e4de83 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -5508,7 +5508,7 @@ * term/ns-win.el (ns-read-file-name): Update declaration to match nsfns.m. - (ns-respond-to-change-font): Change fontsize separatly so we are sure + (ns-respond-to-change-font): Change fontsize separately so we are sure it is set when font is acted upon. 2012-10-07 Fabián Ezequiel Gallina diff --git a/lisp/ChangeLog.10 b/lisp/ChangeLog.10 index 641ab617043..2d331a2819d 100644 --- a/lisp/ChangeLog.10 +++ b/lisp/ChangeLog.10 @@ -19493,7 +19493,7 @@ * menu-bar.el (menu-bar-showhide-scroll-bar-menu): Quote `window-system'. - * tmm.el (tmm-get-keymap): Honour :visible in `menu-item'. + * tmm.el (tmm-get-keymap): Honor :visible in `menu-item'. Add Keywords header. Update Commentary section. Update copyright notice. diff --git a/lisp/cedet/ede/cpp-root.el b/lisp/cedet/ede/cpp-root.el index cf2009ced30..47ba16ade7f 100644 --- a/lisp/cedet/ede/cpp-root.el +++ b/lisp/cedet/ede/cpp-root.el @@ -347,7 +347,7 @@ exist, it should return nil." :documentation "Compilation command that will be used for this project. It could be string or function that will accept proj argument and should return string. -The string will be passed to 'compuile' function that will be issued in root +The string will be passed to 'compile' function that will be issued in root directory of project." ) ) @@ -509,7 +509,7 @@ This is for project include paths and spp source files." (table (when expfile (semanticdb-file-table-object expfile))) ) - (cond + (cond ((not (file-exists-p expfile)) (message "Cannot find file %s in project." F)) ((string= expfile (buffer-file-name)) diff --git a/lisp/cedet/semantic/tag-ls.el b/lisp/cedet/semantic/tag-ls.el index 53da7b65661..bc7be980998 100644 --- a/lisp/cedet/semantic/tag-ls.el +++ b/lisp/cedet/semantic/tag-ls.el @@ -151,7 +151,7 @@ See `semantic-tag-similar-p' for details." ;; Added for performance when testing a relatively common case in some uses ;; of this code. (eq tag1 tag2) - ;; More complex similarness test. + ;; More complex similarity test. (let* ((ignore (append ignorable-attributes semantic-tag-similar-ignorable-attributes)) (A1 (and (semantic--tag-similar-names-p tag1 tag2 (memq :name ignore)) (semantic--tag-similar-types-p tag1 tag2) diff --git a/lisp/emacs-lisp/edebug.el b/lisp/emacs-lisp/edebug.el index 4ecd244ebf2..5929ea7a856 100644 --- a/lisp/emacs-lisp/edebug.el +++ b/lisp/emacs-lisp/edebug.el @@ -3818,7 +3818,7 @@ Options: edebug--mode-saved-vars) (set (make-local-variable var) val)) ;; Append `edebug-kill-buffer' to the hook to avoid interfering with - ;; other entries that are ungarded against deleted buffer. + ;; other entries that are unguarded against deleted buffer. (add-hook 'kill-buffer-hook 'edebug-kill-buffer t t))) (defun edebug-kill-buffer () diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index a400caca905..9bfcaad94f3 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -109,7 +109,7 @@ 2013-01-30 Christopher Schmidt * gnus-int.el (gnus-backend-trace-elapsed): New variable. - (gnus-backend-trace): Honour gnus-backend-trace. + (gnus-backend-trace): Honor gnus-backend-trace. * mml.el (mml-insert-part): Insert closing tag. diff --git a/lisp/org/ChangeLog b/lisp/org/ChangeLog index 1bf6fe315c1..895e009e619 100644 --- a/lisp/org/ChangeLog +++ b/lisp/org/ChangeLog @@ -5577,7 +5577,7 @@ 2012-04-01 Bernt Hansen - * org.el: Honour existing restrictions when regenerating the agenda. + * org.el: Honor existing restrictions when regenerating the agenda. 2012-04-01 Bastien Guerry diff --git a/src/ChangeLog.10 b/src/ChangeLog.10 index 508a2a9dd4c..57c1cbf1299 100644 --- a/src/ChangeLog.10 +++ b/src/ChangeLog.10 @@ -1865,7 +1865,7 @@ 2006-10-07 Ralf Angeli - * w32fns.c (w32_createwindow): Honour left and top positions if + * w32fns.c (w32_createwindow): Honor left and top positions if supplied explicitly. 2006-10-06 Kim F. Storm diff --git a/src/nsmenu.m b/src/nsmenu.m index 4e26a994b59..15878dc74d7 100644 --- a/src/nsmenu.m +++ b/src/nsmenu.m @@ -508,7 +508,7 @@ void x_activate_menubar (struct frame *f) { NSArray *a = [[NSApp mainMenu] itemArray]; - /* Update each submenu separatly so ns_update_menubar don't reset + /* Update each submenu separately so ns_update_menubar doesn't reset the delegate. */ int i = 0; while (i < [a count]) diff --git a/src/w32term.c b/src/w32term.c index 5f7952c2ec2..d249d6e3252 100644 --- a/src/w32term.c +++ b/src/w32term.c @@ -5694,7 +5694,7 @@ w32fullscreen_hook (FRAME_PTR f) /* Need to send SC_RESTORE to the window, in case we are resizing from FULLSCREEN_MAXIMIZED. Otherwise, the mouse resize hints will not be shown by the window manager when the - mouse pointer hovers over the window edges, becaise the WM + mouse pointer hovers over the window edges, because the WM will still think the window is maximized. */ if (f->want_fullscreen != FULLSCREEN_BOTH) SendMessage (FRAME_W32_WINDOW (f), WM_SYSCOMMAND, SC_RESTORE, 0); diff --git a/test/automated/python-tests.el b/test/automated/python-tests.el index d0a7ab57250..1a741b45d81 100644 --- a/test/automated/python-tests.el +++ b/test/automated/python-tests.el @@ -445,7 +445,7 @@ objects = Thing.objects.all() \\\\ (should (= (python-indent-calculate-indentation) 0)))) (ert-deftest python-indent-block-enders () - "Test `python-indent-block-enders' value honouring." + "Test `python-indent-block-enders' value honoring." (python-tests-with-temp-buffer " Class foo(object): -- cgit v1.2.3 From 397703b4ab20d96ff63c1dc25ffcbe4e76a71ae8 Mon Sep 17 00:00:00 2001 From: Yann Hodique Date: Wed, 3 Apr 2013 21:51:33 -0400 Subject: * lisp/emacs-lisp/package.el (package-pinned-packages): New var. (package--add-to-archive-contents): Obey it. Fixes: debbugs:14118 --- lisp/ChangeLog | 5 +++++ lisp/emacs-lisp/package.el | 30 ++++++++++++++++++++++++++---- 2 files changed, 31 insertions(+), 4 deletions(-) (limited to 'lisp/emacs-lisp') diff --git a/lisp/ChangeLog b/lisp/ChangeLog index d4e229eb6fa..78015230bab 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2013-04-04 Yann Hodique (tiny change) + + * emacs-lisp/package.el (package-pinned-packages): New var. + (package--add-to-archive-contents): Obey it (bug#14118). + 2013-04-03 Alan Mackenzie Handle `parse-partial-sexp' landing inside a comment opener diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el index c15c9e079fe..f9a2881a45c 100644 --- a/lisp/emacs-lisp/package.el +++ b/lisp/emacs-lisp/package.el @@ -4,7 +4,7 @@ ;; Author: Tom Tromey ;; Created: 10 Mar 2007 -;; Version: 1.0 +;; Version: 1.0.1 ;; Keywords: tools ;; This file is part of GNU Emacs. @@ -234,11 +234,28 @@ a package can run arbitrary code." :group 'package :version "24.1") +(defcustom package-pinned-packages nil + "An alist of packages that are pinned to a specific archive + +Each element has the form (SYM . ID). + SYM is a package, as a symbol. + ID is an archive name, as a string. This should correspond to an + entry in `package-archives'. + +If the archive of name ID does not contain the package SYM, no +other location will be considered, which will make the +package unavailable." + :type '(alist :key-type (symbol :tag "Package") + :value-type (string :tag "Archive name")) + :risky t + :group 'package + :version "24.4") + (defconst package-archive-version 1 "Version number of the package archive understood by this file. Lower version numbers than this will probably be understood as well.") -(defconst package-el-version "1.0" +(defconst package-el-version "1.0.1" "Version of package.el.") ;; We don't prime the cache since it tends to get out of date. @@ -857,8 +874,13 @@ Also, add the originating archive to the end of the package vector." (version (package-desc-vers (cdr package))) (entry (cons name (vconcat (cdr package) (vector archive)))) - (existing-package (assq name package-archive-contents))) - (cond ((not existing-package) + (existing-package (assq name package-archive-contents)) + (pinned-to-archive (assoc name package-pinned-packages))) + (cond ((and pinned-to-archive + ;; If pinned to another archive, skip entirely. + (not (equal (cdr pinned-to-archive) archive))) + nil) + ((not existing-package) (add-to-list 'package-archive-contents entry)) ((version-list-< (package-desc-vers (cdr existing-package)) version) -- cgit v1.2.3 From b208ebc6e75d2dd78fa8b3d5dc6548215b0d3ef4 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Wed, 3 Apr 2013 22:46:38 -0400 Subject: * lisp/emacs-lisp/package.el (package-compute-transaction): Fix ordering when a package is required several times. Fixes: debbugs:14082 --- lisp/ChangeLog | 5 +++++ lisp/emacs-lisp/package.el | 5 ++++- 2 files changed, 9 insertions(+), 1 deletion(-) (limited to 'lisp/emacs-lisp') diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 1e50cce354d..1f033f175c5 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2013-04-04 Stefan Monnier + + * emacs-lisp/package.el (package-compute-transaction): Fix ordering + when a package is required several times (bug#14082). + 2013-04-04 Roland Winkler * faces.el (read-face-name): Behave as promised by the docstring. diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el index f9a2881a45c..d005c200d0c 100644 --- a/lisp/emacs-lisp/package.el +++ b/lisp/emacs-lisp/package.el @@ -811,7 +811,10 @@ but version %s required" (package-version-join (package-desc-vers (cdr pkg-desc))))) ;; Only add to the transaction if we don't already have it. (unless (memq next-pkg package-list) - (push next-pkg package-list)) + (setq package-list + ;; Move to front, so it gets installed early enough + ;; (bug#14082). + (cons next-pkg (delq next-pkg package-list)))) (setq package-list (package-compute-transaction package-list (package-desc-reqs -- cgit v1.2.3