aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorGlenn Morris2012-12-02 17:08:31 -0800
committerGlenn Morris2012-12-02 17:08:31 -0800
commitc5bc2d1d0558bbaa29ef04f9bd7bef50146382ab (patch)
treebeabc46c767d32fe6cda79f0567834d5ea8225ee /lisp
parent1bf3989cd4ebffdeeebfaaca83c6866416c3908a (diff)
parent328dac0d42a2b395a327c0eda0ed4bbcec4f6c55 (diff)
downloademacs-c5bc2d1d0558bbaa29ef04f9bd7bef50146382ab.tar.gz
emacs-c5bc2d1d0558bbaa29ef04f9bd7bef50146382ab.zip
Merge from emacs-24; up to 2012-11-23T06:23:28Z!cyd@gnu.org
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog28
-rw-r--r--lisp/buff-menu.el59
-rw-r--r--lisp/calendar/diary-lib.el3
-rw-r--r--lisp/files.el17
-rw-r--r--lisp/gnus/ChangeLog9
-rw-r--r--lisp/gnus/gnus-sum.el4
-rw-r--r--lisp/gnus/gnus-sync.el16
-rw-r--r--lisp/jka-cmpr-hook.el15
-rw-r--r--lisp/net/tramp-sh.el7
-rw-r--r--lisp/simple.el14
10 files changed, 107 insertions, 65 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 1fd8fffa8a8..bb14f1340df 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,31 @@
12012-12-03 Leo Liu <sdl.web@gmail.com>
2
3 * files.el (dir-locals-read-from-file): Check file non-empty
4 before reading. (Bug#13038)
5
62012-12-03 Glenn Morris <rgm@gnu.org>
7
8 * jka-cmpr-hook.el (jka-compr-get-compression-info):
9 Remove any version extension before checking filename. (Bug#13006)
10 (jka-compr-compression-info-list): Belated :version bump.
11
122012-12-03 Chong Yidong <cyd@gnu.org>
13
14 * simple.el (transient-mark-mode): Doc fix (Bug#11523).
15
16 * buff-menu.el (Buffer-menu-delete-backwards, Buffer-menu-mode)
17 (buffer-menu): Doc fix (Bug#12294).
18
192012-12-03 Roland Winkler <winkler@gnu.org>
20
21 * calendar/diary-lib.el (diary-header-line-format): Use keybinding
22 of diary-show-all-entries in the diary buffer (Bug#12994).
23
242012-12-03 Michael Albinus <michael.albinus@gmx.de>
25
26 * net/tramp-sh.el (tramp-perl-encode): Use "read STDIN" instead of
27 "<STDIN>". This is binary safe.
28
12012-12-03 Jay Belanger <jay.p.belanger@gmail.com> 292012-12-03 Jay Belanger <jay.p.belanger@gmail.com>
2 30
3 * calc/calc-forms.el (math-absolute-from-iso-dt) 31 * calc/calc-forms.el (math-absolute-from-iso-dt)
diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el
index 01035f8727d..3161973ba32 100644
--- a/lisp/buff-menu.el
+++ b/lisp/buff-menu.el
@@ -204,31 +204,11 @@ commands.")
204 204
205(define-derived-mode Buffer-menu-mode tabulated-list-mode "Buffer Menu" 205(define-derived-mode Buffer-menu-mode tabulated-list-mode "Buffer Menu"
206 "Major mode for Buffer Menu buffers. 206 "Major mode for Buffer Menu buffers.
207The Buffer Menu is invoked by the commands \\[list-buffers], \\[buffer-menu], and 207The Buffer Menu is invoked by the commands \\[list-buffers],
208\\[buffer-menu-other-window]. See `buffer-menu' for details." 208\\[buffer-menu], and \\[buffer-menu-other-window].
209 (set (make-local-variable 'buffer-stale-function) 209See `buffer-menu' for a description of its contents.
210 (lambda (&optional _noconfirm) 'fast))
211 (add-hook 'tabulated-list-revert-hook 'list-buffers--refresh nil t))
212
213(defun buffer-menu (&optional arg)
214 "Switch to the Buffer Menu.
215By default, all buffers are listed except those whose names start
216with a space (which are for internal use). With prefix argument
217ARG, show only buffers that are visiting files.
218
219The first column (denoted \"C\") shows \".\" for the buffer from
220which you came. It shows \">\" for buffers you mark to be
221displayed, and \"D\" for those you mark for deletion.
222
223The \"R\" column has a \"%\" if the buffer is read-only.
224The \"M\" column has a \"*\" if it is modified, or \"S\" if you
225have marked it for saving.
226
227After this come the buffer name, its size in characters, its
228major mode, and the visited file name (if any).
229
230 210
231In the Buffer Menu, the following commands are defined: 211In Buffer Menu mode, the following commands are defined:
232\\<Buffer-menu-mode-map> 212\\<Buffer-menu-mode-map>
233\\[quit-window] Remove the Buffer Menu from the display. 213\\[quit-window] Remove the Buffer Menu from the display.
234\\[Buffer-menu-this-window] Select current line's buffer in place of the buffer menu. 214\\[Buffer-menu-this-window] Select current line's buffer in place of the buffer menu.
@@ -244,7 +224,7 @@ In the Buffer Menu, the following commands are defined:
244\\[Buffer-menu-1-window] Select that buffer in full-frame window. 224\\[Buffer-menu-1-window] Select that buffer in full-frame window.
245\\[Buffer-menu-2-window] Select that buffer in one window, together with the 225\\[Buffer-menu-2-window] Select that buffer in one window, together with the
246 buffer selected before this one in another window. 226 buffer selected before this one in another window.
247\\[Buffer-menu-isearch-buffers] Incremental search in the marked buffers. 227\\[Buffer-menu-isearch-buffers] Incremental search in the marked buffers.
248\\[Buffer-menu-isearch-buffers-regexp] Isearch for regexp in the marked buffers. 228\\[Buffer-menu-isearch-buffers-regexp] Isearch for regexp in the marked buffers.
249\\[Buffer-menu-visit-tags-table] visit-tags-table this buffer. 229\\[Buffer-menu-visit-tags-table] visit-tags-table this buffer.
250\\[Buffer-menu-not-modified] Clear modified-flag on that buffer. 230\\[Buffer-menu-not-modified] Clear modified-flag on that buffer.
@@ -259,6 +239,29 @@ In the Buffer Menu, the following commands are defined:
259\\[revert-buffer] Update the list of buffers. 239\\[revert-buffer] Update the list of buffers.
260\\[Buffer-menu-toggle-files-only] Toggle whether the menu displays only file buffers. 240\\[Buffer-menu-toggle-files-only] Toggle whether the menu displays only file buffers.
261\\[Buffer-menu-bury] Bury the buffer listed on this line." 241\\[Buffer-menu-bury] Bury the buffer listed on this line."
242 (set (make-local-variable 'buffer-stale-function)
243 (lambda (&optional _noconfirm) 'fast))
244 (add-hook 'tabulated-list-revert-hook 'list-buffers--refresh nil t))
245
246(defun buffer-menu (&optional arg)
247 "Switch to the Buffer Menu.
248By default, the Buffer Menu lists all buffers except those whose
249names start with a space (which are for internal use). With
250prefix argument ARG, show only buffers that are visiting files.
251
252In the Buffer Menu, the first column (denoted \"C\") shows \".\"
253for the buffer from which you came, \">\" for buffers you mark to
254be displayed, and \"D\" for those you mark for deletion.
255
256The \"R\" column has a \"%\" if the buffer is read-only.
257The \"M\" column has a \"*\" if it is modified, or \"S\" if you
258have marked it for saving.
259
260The remaining columns show the buffer name, the buffer size in
261characters, its major mode, and the visited file name (if any).
262
263See `Buffer-menu-mode' for the keybindings available the Buffer
264Menu."
262 (interactive "P") 265 (interactive "P")
263 (switch-to-buffer (list-buffers-noselect arg)) 266 (switch-to-buffer (list-buffers-noselect arg))
264 (message 267 (message
@@ -280,7 +283,7 @@ ARG, show only buffers that are visiting files."
280(defun list-buffers (&optional arg) 283(defun list-buffers (&optional arg)
281 "Display a list of existing buffers. 284 "Display a list of existing buffers.
282The list is displayed in a buffer named \"*Buffer List*\". 285The list is displayed in a buffer named \"*Buffer List*\".
283See `buffer-menu' for details about the Buffer Menu buffer. 286See `buffer-menu' for a description of the Buffer Menu.
284 287
285By default, all buffers are listed except those whose names start 288By default, all buffers are listed except those whose names start
286with a space (which are for internal use). With prefix argument 289with a space (which are for internal use). With prefix argument
@@ -377,7 +380,9 @@ buffers to delete; a negative ARG means to delete backwards."
377 380
378(defun Buffer-menu-delete-backwards (&optional arg) 381(defun Buffer-menu-delete-backwards (&optional arg)
379 "Mark the buffer on this Buffer Menu line for deletion, and move up. 382 "Mark the buffer on this Buffer Menu line for deletion, and move up.
380Prefix ARG means move that many lines." 383A subsequent \\<Buffer-menu-mode-map>`\\[Buffer-menu-execute]'
384command will delete the marked buffer. Prefix ARG means move
385that many lines."
381 (interactive "p") 386 (interactive "p")
382 (Buffer-menu-delete (- (or arg 1)))) 387 (Buffer-menu-delete (- (or arg 1))))
383 388
diff --git a/lisp/calendar/diary-lib.el b/lisp/calendar/diary-lib.el
index 27c6f76581c..46a7f703019 100644
--- a/lisp/calendar/diary-lib.el
+++ b/lisp/calendar/diary-lib.el
@@ -444,8 +444,7 @@ The format of the header is specified by `diary-header-line-format'."
444(defcustom diary-header-line-format 444(defcustom diary-header-line-format
445 '(:eval (calendar-string-spread 445 '(:eval (calendar-string-spread
446 (list (if diary-selective-display 446 (list (if diary-selective-display
447 "Some text is hidden - press \"s\" in calendar \ 447 "Some text is hidden - press \"C-c C-s\" before edit/copy"
448before edit/copy"
449 "Diary")) 448 "Diary"))
450 ?\s (window-width))) 449 ?\s (window-width)))
451 "Format of the header line displayed by `diary-simple-display'. 450 "Format of the header line displayed by `diary-simple-display'.
diff --git a/lisp/files.el b/lisp/files.el
index 1bb140c0562..c8a75f67820 100644
--- a/lisp/files.el
+++ b/lisp/files.el
@@ -3640,14 +3640,15 @@ is found. Returns the new class name."
3640 (condition-case err 3640 (condition-case err
3641 (progn 3641 (progn
3642 (insert-file-contents file) 3642 (insert-file-contents file)
3643 (let* ((dir-name (file-name-directory file)) 3643 (unless (zerop (buffer-size))
3644 (class-name (intern dir-name)) 3644 (let* ((dir-name (file-name-directory file))
3645 (variables (let ((read-circle nil)) 3645 (class-name (intern dir-name))
3646 (read (current-buffer))))) 3646 (variables (let ((read-circle nil))
3647 (dir-locals-set-class-variables class-name variables) 3647 (read (current-buffer)))))
3648 (dir-locals-set-directory-class dir-name class-name 3648 (dir-locals-set-class-variables class-name variables)
3649 (nth 5 (file-attributes file))) 3649 (dir-locals-set-directory-class dir-name class-name
3650 class-name)) 3650 (nth 5 (file-attributes file)))
3651 class-name)))
3651 (error (message "Error reading dir-locals: %S" err) nil))))) 3652 (error (message "Error reading dir-locals: %S" err) nil)))))
3652 3653
3653(defcustom enable-remote-dir-locals nil 3654(defcustom enable-remote-dir-locals nil
diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog
index d0dfd100f44..0aef3732ad5 100644
--- a/lisp/gnus/ChangeLog
+++ b/lisp/gnus/ChangeLog
@@ -1,3 +1,12 @@
12012-12-03 Andreas Schwab <schwab@linux-m68k.org>
2
3 * gnus-sum.el (gnus-summary-mode-map): Bind gnus-summary-widget-forward
4 to TAB, not [tab].
5 (gnus-summary-article-map): Likewise.
6
7 * gnus-sync.el (gnus-sync-newsrc-offsets): Restore definition.
8 (gnus-sync-save): Use correct format for gnus-sync-newsrc-loader.
9
12012-11-19 Katsumi Yamaoka <yamaoka@jpl.org> 102012-11-19 Katsumi Yamaoka <yamaoka@jpl.org>
2 11
3 * message.el (message-get-reply-headers): 12 * message.el (message-get-reply-headers):
diff --git a/lisp/gnus/gnus-sum.el b/lisp/gnus/gnus-sum.el
index b44b953bec6..1d4f470aea2 100644
--- a/lisp/gnus/gnus-sum.el
+++ b/lisp/gnus/gnus-sum.el
@@ -1911,7 +1911,7 @@ increase the score of each group you read."
1911 "a" gnus-summary-post-news 1911 "a" gnus-summary-post-news
1912 "x" gnus-summary-limit-to-unread 1912 "x" gnus-summary-limit-to-unread
1913 "s" gnus-summary-isearch-article 1913 "s" gnus-summary-isearch-article
1914 [tab] gnus-summary-widget-forward 1914 "\t" gnus-summary-widget-forward
1915 [backtab] gnus-summary-widget-backward 1915 [backtab] gnus-summary-widget-backward
1916 "t" gnus-summary-toggle-header 1916 "t" gnus-summary-toggle-header
1917 "g" gnus-summary-show-article 1917 "g" gnus-summary-show-article
@@ -2076,7 +2076,7 @@ increase the score of each group you read."
2076 "W" gnus-warp-to-article 2076 "W" gnus-warp-to-article
2077 "g" gnus-summary-show-article 2077 "g" gnus-summary-show-article
2078 "s" gnus-summary-isearch-article 2078 "s" gnus-summary-isearch-article
2079 [tab] gnus-summary-widget-forward 2079 "\t" gnus-summary-widget-forward
2080 [backtab] gnus-summary-widget-backward 2080 [backtab] gnus-summary-widget-backward
2081 "P" gnus-summary-print-article 2081 "P" gnus-summary-print-article
2082 "S" gnus-sticky-article 2082 "S" gnus-sticky-article
diff --git a/lisp/gnus/gnus-sync.el b/lisp/gnus/gnus-sync.el
index b5f8379e367..c235892a9d3 100644
--- a/lisp/gnus/gnus-sync.el
+++ b/lisp/gnus/gnus-sync.el
@@ -109,6 +109,12 @@ this setting is harmless until the user chooses a sync backend."
109 :group 'gnus-sync 109 :group 'gnus-sync
110 :type '(repeat regexp)) 110 :type '(repeat regexp))
111 111
112(defcustom gnus-sync-newsrc-offsets '(2 3)
113 "List of per-group data to be synchronized."
114 :group 'gnus-sync
115 :type '(set (const :tag "Read ranges" 2)
116 (const :tag "Marks" 3)))
117
112(defcustom gnus-sync-global-vars nil 118(defcustom gnus-sync-global-vars nil
113 "List of global variables to be synchronized. 119 "List of global variables to be synchronized.
114You may want to sync `gnus-newsrc-last-checked-date' but pretty 120You may want to sync `gnus-newsrc-last-checked-date' but pretty
@@ -743,7 +749,15 @@ With a prefix, FORCE is set and all groups will be saved."
743 ;; entry in gnus-newsrc-alist whose group matches any of the 749 ;; entry in gnus-newsrc-alist whose group matches any of the
744 ;; gnus-sync-newsrc-groups 750 ;; gnus-sync-newsrc-groups
745 ;; TODO: keep the old contents for groups we don't have! 751 ;; TODO: keep the old contents for groups we don't have!
746 (let ((gnus-sync-newsrc-loader (gnus-sync-newsrc-loader-builder))) 752 (let ((gnus-sync-newsrc-loader
753 (loop for entry in (cdr gnus-newsrc-alist)
754 when (gnus-grep-in-list
755 (car entry) ;the group name
756 gnus-sync-newsrc-groups)
757 collect (cons (car entry)
758 (mapcar (lambda (offset)
759 (cons offset (nth offset entry)))
760 gnus-sync-newsrc-offsets)))))
747 (with-temp-file gnus-sync-backend 761 (with-temp-file gnus-sync-backend
748 (progn 762 (progn
749 (let ((coding-system-for-write gnus-ding-file-coding-system) 763 (let ((coding-system-for-write gnus-ding-file-coding-system)
diff --git a/lisp/jka-cmpr-hook.el b/lisp/jka-cmpr-hook.el
index e4743ada045..75d1bbbad6b 100644
--- a/lisp/jka-cmpr-hook.el
+++ b/lisp/jka-cmpr-hook.el
@@ -109,6 +109,7 @@ Otherwise, it is nil.")
109 "Return information about the compression scheme of FILENAME. 109 "Return information about the compression scheme of FILENAME.
110The determination as to which compression scheme, if any, to use is 110The determination as to which compression scheme, if any, to use is
111based on the filename itself and `jka-compr-compression-info-list'." 111based on the filename itself and `jka-compr-compression-info-list'."
112 (setq filename (file-name-sans-versions filename))
112 (catch 'compression-info 113 (catch 'compression-info
113 (let ((case-fold-search nil)) 114 (let ((case-fold-search nil))
114 (dolist (x jka-compr-compression-info-list) 115 (dolist (x jka-compr-compression-info-list)
@@ -191,19 +192,6 @@ options through Custom does this automatically."
191 192
192;; I have this defined so that .Z files are assumed to be in unix 193;; I have this defined so that .Z files are assumed to be in unix
193;; compress format; and .gz files, in gzip format, and .bz2 files in bzip fmt. 194;; compress format; and .gz files, in gzip format, and .bz2 files in bzip fmt.
194
195;; FIXME? It seems ugly that one has to add "\\(~\\|\\.~[0-9]+~\\)?" to
196;; all the regexps here, in order to match backup files etc.
197;; It's trivial to modify jka-compr-get-compression-info to match
198;; regexps against file-name-sans-versions, but this regexp is also
199;; used to build a file-name-handler-alist entry.
200;; find-file-name-handler does not use file-name-sans-versions.
201;; Perhaps it should,
202;; http://lists.gnu.org/archive/html/emacs-devel/2008-02/msg00812.html,
203;; but it's used all over the place and there are probably other ramifications.
204;; One could modify jka-compr-build-file-regexp to add the backup regexp,
205;; but jka-compr-compression-info-list is a defcustom to which
206;; anything could be added, so it's easiest to leave things as they are.
207(defcustom jka-compr-compression-info-list 195(defcustom jka-compr-compression-info-list
208 ;;[regexp 196 ;;[regexp
209 ;; compr-message compr-prog compr-args 197 ;; compr-message compr-prog compr-args
@@ -310,6 +298,7 @@ variables. Setting this through Custom does that automatically."
310 (boolean :tag "Strip Extension") 298 (boolean :tag "Strip Extension")
311 (string :tag "Magic Bytes"))) 299 (string :tag "Magic Bytes")))
312 :set 'jka-compr-set 300 :set 'jka-compr-set
301 :version "24.1" ; removed version extension piece
313 :group 'jka-compr) 302 :group 'jka-compr)
314 303
315(defcustom jka-compr-mode-alist-additions 304(defcustom jka-compr-mode-alist-additions
diff --git a/lisp/net/tramp-sh.el b/lisp/net/tramp-sh.el
index 07da0b3dc16..340b7ad353d 100644
--- a/lisp/net/tramp-sh.el
+++ b/lisp/net/tramp-sh.el
@@ -813,14 +813,11 @@ my %%trans = do {
813 map {(substr(unpack(q(B8), chr $i++), 2, 6), $_)} 813 map {(substr(unpack(q(B8), chr $i++), 2, 6), $_)}
814 split //, q(ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/); 814 split //, q(ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/);
815}; 815};
816 816my $data;
817binmode(\\*STDIN);
818 817
819# We read in chunks of 54 bytes, to generate output lines 818# We read in chunks of 54 bytes, to generate output lines
820# of 72 chars (plus end of line) 819# of 72 chars (plus end of line)
821$/ = \\54; 820while (read STDIN, $data, 54) {
822
823while (my $data = <STDIN>) {
824 my $pad = q(); 821 my $pad = q();
825 822
826 # Only for the last chunk, and only if did not fill the last three-byte packet 823 # Only for the last chunk, and only if did not fill the last three-byte packet
diff --git a/lisp/simple.el b/lisp/simple.el
index ecd02545b41..c86f367c8a8 100644
--- a/lisp/simple.el
+++ b/lisp/simple.el
@@ -4333,14 +4333,14 @@ else--for example, incremental search, \\[beginning-of-buffer], and \\[end-of-bu
4333You can also deactivate the mark by typing \\[keyboard-quit] or 4333You can also deactivate the mark by typing \\[keyboard-quit] or
4334\\[keyboard-escape-quit]. 4334\\[keyboard-escape-quit].
4335 4335
4336Many commands change their behavior when Transient Mark mode is in effect 4336Many commands change their behavior when Transient Mark mode is
4337and the mark is active, by acting on the region instead of their usual 4337in effect and the mark is active, by acting on the region instead
4338default part of the buffer's text. Examples of such commands include 4338of their usual default part of the buffer's text. Examples of
4339\\[comment-dwim], \\[flush-lines], \\[keep-lines], \ 4339such commands include \\[comment-dwim], \\[flush-lines], \\[keep-lines],
4340\\[query-replace], \\[query-replace-regexp], \\[ispell], and \\[undo]. 4340\\[query-replace], \\[query-replace-regexp], \\[ispell], and \\[undo].
4341Invoke \\[apropos-documentation] and type \"transient\" or 4341To see the documentation of commands which are sensitive to the
4342\"mark.*active\" at the prompt, to see the documentation of 4342Transient Mark mode, invoke \\[apropos-documentation] and type \"transient\"
4343commands which are sensitive to the Transient Mark mode." 4343or \"mark.*active\" at the prompt."
4344 :global t 4344 :global t
4345 ;; It's defined in C/cus-start, this stops the d-m-m macro defining it again. 4345 ;; It's defined in C/cus-start, this stops the d-m-m macro defining it again.
4346 :variable transient-mark-mode) 4346 :variable transient-mark-mode)