diff options
| author | Glenn Morris | 2014-06-07 17:35:27 -0700 |
|---|---|---|
| committer | Glenn Morris | 2014-06-07 17:35:27 -0700 |
| commit | 36cf8493aff99b652b2ad8c9e4d55a18688e8484 (patch) | |
| tree | f8ff499c2ee5e91b20d8576841f0e6bf91d1ba34 /lisp | |
| parent | 2be772ff45057215c1c70252008c1f9703ef3bff (diff) | |
| parent | da8de2908c35ad1fd5c437486d2ea5f6ebb75ca3 (diff) | |
| download | emacs-36cf8493aff99b652b2ad8c9e4d55a18688e8484.tar.gz emacs-36cf8493aff99b652b2ad8c9e4d55a18688e8484.zip | |
Merge from emacs-24; up to 2014-06-01T23:37:59Z!eggert@cs.ucla.edu
Diffstat (limited to 'lisp')
| -rw-r--r-- | lisp/ChangeLog | 50 | ||||
| -rw-r--r-- | lisp/desktop.el | 14 | ||||
| -rw-r--r-- | lisp/emacs-lisp/package.el | 38 | ||||
| -rw-r--r-- | lisp/international/mule-cmds.el | 5 | ||||
| -rw-r--r-- | lisp/menu-bar.el | 6 | ||||
| -rw-r--r-- | lisp/net/tramp.el | 9 | ||||
| -rw-r--r-- | lisp/startup.el | 9 | ||||
| -rw-r--r-- | lisp/vc/vc-hg.el | 13 | ||||
| -rw-r--r-- | lisp/window.el | 2 |
9 files changed, 112 insertions, 34 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 735a558aa62..80105470985 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog | |||
| @@ -1,3 +1,53 @@ | |||
| 1 | 2014-06-08 Juri Linkov <juri@jurta.org> | ||
| 2 | |||
| 3 | * desktop.el: Activate auto-saving on window configuration changes. | ||
| 4 | (desktop-save-mode, desktop-auto-save-timeout): Add/remove | ||
| 5 | `desktop-auto-save-set-timer' to/from | ||
| 6 | `window-configuration-change-hook'. | ||
| 7 | (desktop-auto-save-set-timer): Change REPEAT arg of | ||
| 8 | `run-with-idle-timer' from t to nil. | ||
| 9 | http://lists.gnu.org/archive/html/emacs-devel/2014-06/msg00147.html | ||
| 10 | |||
| 11 | 2014-06-08 Santiago Payà i Miralta <santiagopim@gmail.com> | ||
| 12 | |||
| 13 | * vc/vc-hg.el (vc-hg-working-revision): Use "hg parent" and | ||
| 14 | vc-hg-command (bug#17570). | ||
| 15 | |||
| 16 | 2014-06-08 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 17 | |||
| 18 | * international/mule-cmds.el (ucs-names): Add special entry for BEL | ||
| 19 | (bug#17702). | ||
| 20 | |||
| 21 | 2014-06-08 Glenn Morris <rgm@gnu.org> | ||
| 22 | |||
| 23 | * startup.el (window-setup-hook): Doc fix. | ||
| 24 | |||
| 25 | * emacs-lisp/package.el (package-check-signature) | ||
| 26 | (package-unsigned-archives): Doc fixes. | ||
| 27 | |||
| 28 | 2014-06-08 Martin Rudalics <rudalics@gmx.at> | ||
| 29 | |||
| 30 | * window.el (display-buffer-use-some-window): Don't make window | ||
| 31 | used smaller than it was before (Bug#17671). | ||
| 32 | |||
| 33 | 2014-06-08 Eli Zaretskii <eliz@gnu.org> | ||
| 34 | |||
| 35 | * menu-bar.el (menu-bar-open): Fix last change: use the PC | ||
| 36 | 'redisplay' instead of '(sit-for 0)'. | ||
| 37 | |||
| 38 | 2014-06-08 Michael Albinus <michael.albinus@gmx.de> | ||
| 39 | |||
| 40 | * net/tramp.el (tramp-ssh-controlmaster-options): | ||
| 41 | Improve search regexp. (Bug#17653) | ||
| 42 | |||
| 43 | 2014-06-08 Glenn Morris <rgm@gnu.org> | ||
| 44 | |||
| 45 | * emacs-lisp/package.el (package-pinned-packages): Doc fix. | ||
| 46 | |||
| 47 | 2014-06-08 Eli Zaretskii <eliz@gnu.org> | ||
| 48 | |||
| 49 | * menu-bar.el (menu-bar-open): Fix invocation via M-x. | ||
| 50 | |||
| 1 | 2014-06-06 Santiago Payà i Miralta <santiagopim@gmail.com> | 51 | 2014-06-06 Santiago Payà i Miralta <santiagopim@gmail.com> |
| 2 | 52 | ||
| 3 | * vc/vc-hg.el (vc-hg-create-tag, vc-hg-retrieve-tag): New functions | 53 | * vc/vc-hg.el (vc-hg-create-tag, vc-hg-retrieve-tag): New functions |
diff --git a/lisp/desktop.el b/lisp/desktop.el index ded73c065f0..d420a6416a9 100644 --- a/lisp/desktop.el +++ b/lisp/desktop.el | |||
| @@ -174,7 +174,10 @@ For further details, see info node `(emacs)Saving Emacs Sessions'." | |||
| 174 | :global t | 174 | :global t |
| 175 | :group 'desktop | 175 | :group 'desktop |
| 176 | (if desktop-save-mode | 176 | (if desktop-save-mode |
| 177 | (desktop-auto-save-set-timer) | 177 | (when (and (integerp desktop-auto-save-timeout) |
| 178 | (> desktop-auto-save-timeout 0)) | ||
| 179 | (add-hook 'window-configuration-change-hook 'desktop-auto-save-set-timer)) | ||
| 180 | (remove-hook 'window-configuration-change-hook 'desktop-auto-save-set-timer) | ||
| 178 | (desktop-auto-save-cancel-timer))) | 181 | (desktop-auto-save-cancel-timer))) |
| 179 | 182 | ||
| 180 | (defun desktop-save-mode-off () | 183 | (defun desktop-save-mode-off () |
| @@ -207,13 +210,18 @@ determine where the desktop is saved." | |||
| 207 | 210 | ||
| 208 | (defcustom desktop-auto-save-timeout auto-save-timeout | 211 | (defcustom desktop-auto-save-timeout auto-save-timeout |
| 209 | "Number of seconds idle time before auto-save of the desktop. | 212 | "Number of seconds idle time before auto-save of the desktop. |
| 213 | The idle timer activates auto-saving only when window configuration changes. | ||
| 210 | This applies to an existing desktop file when `desktop-save-mode' is enabled. | 214 | This applies to an existing desktop file when `desktop-save-mode' is enabled. |
| 211 | Zero or nil means disable auto-saving due to idleness." | 215 | Zero or nil means disable auto-saving due to idleness." |
| 212 | :type '(choice (const :tag "Off" nil) | 216 | :type '(choice (const :tag "Off" nil) |
| 213 | (integer :tag "Seconds")) | 217 | (integer :tag "Seconds")) |
| 214 | :set (lambda (symbol value) | 218 | :set (lambda (symbol value) |
| 215 | (set-default symbol value) | 219 | (set-default symbol value) |
| 216 | (ignore-errors (desktop-auto-save-set-timer))) | 220 | (ignore-errors |
| 221 | (if (and (integerp value) (> value 0)) | ||
| 222 | (add-hook 'window-configuration-change-hook 'desktop-auto-save-set-timer) | ||
| 223 | (remove-hook 'window-configuration-change-hook 'desktop-auto-save-set-timer) | ||
| 224 | (desktop-auto-save-cancel-timer)))) | ||
| 217 | :group 'desktop | 225 | :group 'desktop |
| 218 | :version "24.4") | 226 | :version "24.4") |
| 219 | 227 | ||
| @@ -1244,7 +1252,7 @@ after that many seconds of idle time." | |||
| 1244 | (when (and (integerp desktop-auto-save-timeout) | 1252 | (when (and (integerp desktop-auto-save-timeout) |
| 1245 | (> desktop-auto-save-timeout 0)) | 1253 | (> desktop-auto-save-timeout 0)) |
| 1246 | (setq desktop-auto-save-timer | 1254 | (setq desktop-auto-save-timer |
| 1247 | (run-with-idle-timer desktop-auto-save-timeout t | 1255 | (run-with-idle-timer desktop-auto-save-timeout nil |
| 1248 | 'desktop-auto-save)))) | 1256 | 'desktop-auto-save)))) |
| 1249 | 1257 | ||
| 1250 | (defun desktop-auto-save-cancel-timer () | 1258 | (defun desktop-auto-save-cancel-timer () |
diff --git a/lisp/emacs-lisp/package.el b/lisp/emacs-lisp/package.el index d65633282c9..7ca62464bd0 100644 --- a/lisp/emacs-lisp/package.el +++ b/lisp/emacs-lisp/package.el | |||
| @@ -113,8 +113,6 @@ | |||
| 113 | 113 | ||
| 114 | ;;; ToDo: | 114 | ;;; ToDo: |
| 115 | 115 | ||
| 116 | ;; - a trust mechanism, since compiling a package can run arbitrary code. | ||
| 117 | ;; For example, download package signatures and check that they match. | ||
| 118 | ;; - putting info dirs at the start of the info path means | 116 | ;; - putting info dirs at the start of the info path means |
| 119 | ;; users see a weird ordering of categories. OTOH we want to | 117 | ;; users see a weird ordering of categories. OTOH we want to |
| 120 | ;; override later entries. maybe emacs needs to enforce | 118 | ;; override later entries. maybe emacs needs to enforce |
| @@ -229,18 +227,25 @@ a package can run arbitrary code." | |||
| 229 | :version "24.1") | 227 | :version "24.1") |
| 230 | 228 | ||
| 231 | (defcustom package-pinned-packages nil | 229 | (defcustom package-pinned-packages nil |
| 232 | "An alist of packages that are pinned to a specific archive | 230 | "An alist of packages that are pinned to specific archives. |
| 233 | 231 | This can be useful if you have multiple package archives enabled, | |
| 234 | Each element has the form (SYM . ID). | 232 | and want to control which archive a given package gets installed from. |
| 235 | SYM is a package, as a symbol. | 233 | |
| 236 | ID is an archive name. This should correspond to an | 234 | Each element of the alist has the form (PACKAGE . ARCHIVE), where: |
| 237 | entry in `package-archives'. | 235 | PACKAGE is a symbol representing a package |
| 238 | 236 | ARCHIVE is a string representing an archive (it should be the car of | |
| 239 | If the archive of name ID does not contain the package SYM, no | 237 | an element in `package-archives', e.g. \"gnu\"). |
| 240 | other location will be considered, which will make the | 238 | |
| 241 | package unavailable." | 239 | Adding an entry to this variable means that only ARCHIVE will be |
| 240 | considered as a source for PACKAGE. If other archives provide PACKAGE, | ||
| 241 | they are ignored (for this package). If ARCHIVE does not contain PACKAGE, | ||
| 242 | the package will be unavailable." | ||
| 242 | :type '(alist :key-type (symbol :tag "Package") | 243 | :type '(alist :key-type (symbol :tag "Package") |
| 243 | :value-type (string :tag "Archive name")) | 244 | :value-type (string :tag "Archive name")) |
| 245 | ;; I don't really see why this is risky... | ||
| 246 | ;; I suppose it could prevent you receiving updates for a package, | ||
| 247 | ;; via an entry (PACKAGE . NON-EXISTING). Which could be an issue | ||
| 248 | ;; if PACKAGE has a known vulnerability that is fixed in newer versions. | ||
| 244 | :risky t | 249 | :risky t |
| 245 | :group 'package | 250 | :group 'package |
| 246 | :version "24.4") | 251 | :version "24.4") |
| @@ -285,7 +290,12 @@ contrast, `package-user-dir' contains packages for personal use." | |||
| 285 | :version "24.1") | 290 | :version "24.1") |
| 286 | 291 | ||
| 287 | (defcustom package-check-signature 'allow-unsigned | 292 | (defcustom package-check-signature 'allow-unsigned |
| 288 | "Whether to check package signatures when installing." | 293 | "Non-nil means to check package signatures when installing. |
| 294 | The value `allow-unsigned' means to still install a package even if | ||
| 295 | it is unsigned. | ||
| 296 | |||
| 297 | This also applies to the \"archive-contents\" file that lists the | ||
| 298 | contents of the archive." | ||
| 289 | :type '(choice (const nil :tag "Never") | 299 | :type '(choice (const nil :tag "Never") |
| 290 | (const allow-unsigned :tag "Allow unsigned") | 300 | (const allow-unsigned :tag "Allow unsigned") |
| 291 | (const t :tag "Check always")) | 301 | (const t :tag "Check always")) |
| @@ -294,7 +304,7 @@ contrast, `package-user-dir' contains packages for personal use." | |||
| 294 | :version "24.4") | 304 | :version "24.4") |
| 295 | 305 | ||
| 296 | (defcustom package-unsigned-archives nil | 306 | (defcustom package-unsigned-archives nil |
| 297 | "A list of archives which do not use package signature." | 307 | "List of archives where we do not check for package signatures." |
| 298 | :type '(repeat (string :tag "Archive name")) | 308 | :type '(repeat (string :tag "Archive name")) |
| 299 | :risky t | 309 | :risky t |
| 300 | :group 'package | 310 | :group 'package |
diff --git a/lisp/international/mule-cmds.el b/lisp/international/mule-cmds.el index f83e64e3921..0a2f09029da 100644 --- a/lisp/international/mule-cmds.el +++ b/lisp/international/mule-cmds.el | |||
| @@ -2945,7 +2945,10 @@ on encoding." | |||
| 2945 | (if (setq name (get-char-code-property c 'name)) | 2945 | (if (setq name (get-char-code-property c 'name)) |
| 2946 | (push (cons name c) names)) | 2946 | (push (cons name c) names)) |
| 2947 | (setq c (1+ c)))) | 2947 | (setq c (1+ c)))) |
| 2948 | (setq ucs-names names)))) | 2948 | ;; Special case for "BELL" which is apparently the only char which |
| 2949 | ;; doesn't have a new name and whose old-name is shadowed by a newer | ||
| 2950 | ;; char with that name. | ||
| 2951 | (setq ucs-names `(("BELL (BEL)" . 7) ,@names))))) | ||
| 2949 | 2952 | ||
| 2950 | (defun read-char-by-name (prompt) | 2953 | (defun read-char-by-name (prompt) |
| 2951 | "Read a character by its Unicode name or hex number string. | 2954 | "Read a character by its Unicode name or hex number string. |
diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el index efbeeb3579c..c816488c6d1 100644 --- a/lisp/menu-bar.el +++ b/lisp/menu-bar.el | |||
| @@ -2272,6 +2272,12 @@ If FRAME is nil or not given, use the selected frame." | |||
| 2272 | ((eq type 'w32) (w32-menu-bar-open frame)) | 2272 | ((eq type 'w32) (w32-menu-bar-open frame)) |
| 2273 | ((and (null tty-menu-open-use-tmm) | 2273 | ((and (null tty-menu-open-use-tmm) |
| 2274 | (not (zerop (or (frame-parameter nil 'menu-bar-lines) 0)))) | 2274 | (not (zerop (or (frame-parameter nil 'menu-bar-lines) 0)))) |
| 2275 | ;; Make sure the menu bar is up to date. One situation where | ||
| 2276 | ;; this is important is when this function is invoked by name | ||
| 2277 | ;; via M-x, in which case the menu bar includes the "Minibuf" | ||
| 2278 | ;; menu item that should be removed when we exit the minibuffer. | ||
| 2279 | (force-mode-line-update) | ||
| 2280 | (redisplay) | ||
| 2275 | (let* ((x tty-menu--initial-menu-x) | 2281 | (let* ((x tty-menu--initial-menu-x) |
| 2276 | (menu (menu-bar-menu-at-x-y x 0 frame))) | 2282 | (menu (menu-bar-menu-at-x-y x 0 frame))) |
| 2277 | (popup-menu (or | 2283 | (popup-menu (or |
diff --git a/lisp/net/tramp.el b/lisp/net/tramp.el index 116db733865..307e89dbd3b 100644 --- a/lisp/net/tramp.el +++ b/lisp/net/tramp.el | |||
| @@ -302,18 +302,19 @@ useful only in combination with `tramp-default-proxies-alist'.") | |||
| 302 | 302 | ||
| 303 | ;;;###tramp-autoload | 303 | ;;;###tramp-autoload |
| 304 | (defconst tramp-ssh-controlmaster-options | 304 | (defconst tramp-ssh-controlmaster-options |
| 305 | (let ((result "")) | 305 | (let ((result "") |
| 306 | (case-fold-search t)) | ||
| 306 | (ignore-errors | 307 | (ignore-errors |
| 307 | (with-temp-buffer | 308 | (with-temp-buffer |
| 308 | (call-process "ssh" nil t nil "-o" "ControlMaster") | 309 | (call-process "ssh" nil t nil "-o" "ControlMaster") |
| 309 | (goto-char (point-min)) | 310 | (goto-char (point-min)) |
| 310 | (when (search-forward-regexp "Missing ControlMaster argument" nil t) | 311 | (when (search-forward-regexp "missing.+argument" nil t) |
| 311 | (setq result "-o ControlPath=%t.%%r@%%h:%%p -o ControlMaster=auto"))) | 312 | (setq result "-o ControlPath=%t.%%r@%%h:%%p -o ControlMaster=auto"))) |
| 312 | (when result | 313 | (unless (zerop (length result)) |
| 313 | (with-temp-buffer | 314 | (with-temp-buffer |
| 314 | (call-process "ssh" nil t nil "-o" "ControlPersist") | 315 | (call-process "ssh" nil t nil "-o" "ControlPersist") |
| 315 | (goto-char (point-min)) | 316 | (goto-char (point-min)) |
| 316 | (when (search-forward-regexp "Missing ControlPersist argument" nil t) | 317 | (when (search-forward-regexp "missing.+argument" nil t) |
| 317 | (setq result (concat result " -o ControlPersist=no")))))) | 318 | (setq result (concat result " -o ControlPersist=no")))))) |
| 318 | result) | 319 | result) |
| 319 | "Call ssh to detect whether it supports the Control* arguments. | 320 | "Call ssh to detect whether it supports the Control* arguments. |
diff --git a/lisp/startup.el b/lisp/startup.el index ef531af12df..5a4ddf335c4 100644 --- a/lisp/startup.el +++ b/lisp/startup.el | |||
| @@ -303,9 +303,12 @@ keys for use under X. It is used in a fashion analogous to the | |||
| 303 | environment variable TERM.") | 303 | environment variable TERM.") |
| 304 | 304 | ||
| 305 | (defvar window-setup-hook nil | 305 | (defvar window-setup-hook nil |
| 306 | "Normal hook run to initialize window system display. | 306 | "Normal hook run after loading init files and handling the command line. |
| 307 | Emacs runs this hook after processing the command line arguments and loading | 307 | This is very similar to `emacs-startup-hook'. The only difference |
| 308 | the user's init file.") | 308 | is that this hook runs after frame parameters have been set up in |
| 309 | response to any settings from your init file. Unless this matters | ||
| 310 | to you, use `emacs-startup-hook' instead. (The name of this hook | ||
| 311 | is due to historical reasons, and does not reflect its purpose very well.)") | ||
| 309 | 312 | ||
| 310 | (defcustom initial-major-mode 'lisp-interaction-mode | 313 | (defcustom initial-major-mode 'lisp-interaction-mode |
| 311 | "Major mode command symbol to use for the initial `*scratch*' buffer." | 314 | "Major mode command symbol to use for the initial `*scratch*' buffer." |
diff --git a/lisp/vc/vc-hg.el b/lisp/vc/vc-hg.el index 598a84a5739..df61006ad51 100644 --- a/lisp/vc/vc-hg.el +++ b/lisp/vc/vc-hg.el | |||
| @@ -234,14 +234,11 @@ highlighting the Log View buffer." | |||
| 234 | 234 | ||
| 235 | (defun vc-hg-working-revision (file) | 235 | (defun vc-hg-working-revision (file) |
| 236 | "Hg-specific version of `vc-working-revision'." | 236 | "Hg-specific version of `vc-working-revision'." |
| 237 | (let ((default-directory (if (file-directory-p file) | 237 | (or (ignore-errors |
| 238 | (file-name-as-directory file) | 238 | (with-output-to-string |
| 239 | (file-name-directory file)))) | 239 | (vc-hg-command standard-output 0 file |
| 240 | (ignore-errors | 240 | "parent" "--template" "{rev}"))) |
| 241 | (with-output-to-string | 241 | "0")) |
| 242 | (process-file vc-hg-program nil standard-output nil | ||
| 243 | "log" "-l" "1" "--template" "{rev}" | ||
| 244 | (file-relative-name file)))))) | ||
| 245 | 242 | ||
| 246 | ;;; History functions | 243 | ;;; History functions |
| 247 | 244 | ||
diff --git a/lisp/window.el b/lisp/window.el index c5093ca51a5..e9f4fd0b1d2 100644 --- a/lisp/window.el +++ b/lisp/window.el | |||
| @@ -6497,7 +6497,7 @@ that frame." | |||
| 6497 | ;; resize it to its old height but don't signal an error. | 6497 | ;; resize it to its old height but don't signal an error. |
| 6498 | (when (and (listp quad) | 6498 | (when (and (listp quad) |
| 6499 | (integerp (nth 3 quad)) | 6499 | (integerp (nth 3 quad)) |
| 6500 | (/= (nth 3 quad) (window-total-height window))) | 6500 | (> (nth 3 quad) (window-total-height window))) |
| 6501 | (condition-case nil | 6501 | (condition-case nil |
| 6502 | (window-resize window (- (nth 3 quad) (window-total-height window))) | 6502 | (window-resize window (- (nth 3 quad) (window-total-height window))) |
| 6503 | (error nil))) | 6503 | (error nil))) |