aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorGlenn Morris2014-06-07 17:35:27 -0700
committerGlenn Morris2014-06-07 17:35:27 -0700
commit36cf8493aff99b652b2ad8c9e4d55a18688e8484 (patch)
treef8ff499c2ee5e91b20d8576841f0e6bf91d1ba34 /lisp
parent2be772ff45057215c1c70252008c1f9703ef3bff (diff)
parentda8de2908c35ad1fd5c437486d2ea5f6ebb75ca3 (diff)
downloademacs-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/ChangeLog50
-rw-r--r--lisp/desktop.el14
-rw-r--r--lisp/emacs-lisp/package.el38
-rw-r--r--lisp/international/mule-cmds.el5
-rw-r--r--lisp/menu-bar.el6
-rw-r--r--lisp/net/tramp.el9
-rw-r--r--lisp/startup.el9
-rw-r--r--lisp/vc/vc-hg.el13
-rw-r--r--lisp/window.el2
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 @@
12014-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
112014-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
162014-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
212014-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
282014-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
332014-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
382014-06-08 Michael Albinus <michael.albinus@gmx.de>
39
40 * net/tramp.el (tramp-ssh-controlmaster-options):
41 Improve search regexp. (Bug#17653)
42
432014-06-08 Glenn Morris <rgm@gnu.org>
44
45 * emacs-lisp/package.el (package-pinned-packages): Doc fix.
46
472014-06-08 Eli Zaretskii <eliz@gnu.org>
48
49 * menu-bar.el (menu-bar-open): Fix invocation via M-x.
50
12014-06-06 Santiago Payà i Miralta <santiagopim@gmail.com> 512014-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.
213The idle timer activates auto-saving only when window configuration changes.
210This applies to an existing desktop file when `desktop-save-mode' is enabled. 214This applies to an existing desktop file when `desktop-save-mode' is enabled.
211Zero or nil means disable auto-saving due to idleness." 215Zero 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 231This can be useful if you have multiple package archives enabled,
234Each element has the form (SYM . ID). 232and 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 234Each 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
239If the archive of name ID does not contain the package SYM, no 237an element in `package-archives', e.g. \"gnu\").
240other location will be considered, which will make the 238
241package unavailable." 239Adding an entry to this variable means that only ARCHIVE will be
240considered as a source for PACKAGE. If other archives provide PACKAGE,
241they are ignored (for this package). If ARCHIVE does not contain PACKAGE,
242the 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.
294The value `allow-unsigned' means to still install a package even if
295it is unsigned.
296
297This also applies to the \"archive-contents\" file that lists the
298contents 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
303environment variable TERM.") 303environment 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.
307Emacs runs this hook after processing the command line arguments and loading 307This is very similar to `emacs-startup-hook'. The only difference
308the user's init file.") 308is that this hook runs after frame parameters have been set up in
309response to any settings from your init file. Unless this matters
310to you, use `emacs-startup-hook' instead. (The name of this hook
311is 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)))