------------------------------------------------------------ revno: 116339 fixes bug: http://debbugs.gnu.org/14697 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 22:58:15 -0800 message: * files.el (find-file-visit-truename): Doc clarification (bug#14697). diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 06:56:18 +0000 +++ lisp/ChangeLog 2014-02-08 06:58:15 +0000 @@ -1,5 +1,7 @@ 2014-02-08 Lars Ingebrigtsen + * files.el (find-file-visit-truename): Doc clarification (bug#14697). + * isearch.el (isearch-hide-immediately): Doc clarification (bug#14723). === modified file 'lisp/files.el' --- lisp/files.el 2014-02-08 04:53:52 +0000 +++ lisp/files.el 2014-02-08 06:58:15 +0000 @@ -159,9 +159,11 @@ :group 'find-file) (defcustom find-file-visit-truename nil - "Non-nil means visit a file under its truename. -The truename of a file is found by chasing all links -both at the file level and at the levels of the containing directories." + "Non-nil means visiting a file uses its truename as the visited-file name. +That is, the buffer visiting the file has the truename as the +value of `buffer-file-name'. The truename of a file is found by +chasing all links both at the file level and at the levels of the +containing directories." :type 'boolean :group 'find-file) (put 'find-file-visit-truename 'safe-local-variable 'booleanp) ------------------------------------------------------------ revno: 116338 fixes bug: http://debbugs.gnu.org/15547 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 22:56:18 -0800 message: * isearch.el (isearch-cmds): Doc clarification. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 06:28:12 +0000 +++ lisp/ChangeLog 2014-02-08 06:56:18 +0000 @@ -1,5 +1,8 @@ 2014-02-08 Lars Ingebrigtsen + * isearch.el (isearch-hide-immediately): Doc clarification + (bug#14723). + * simple.el (line-move): Document utility function used many places in the Emacs sources (bug#14843). === modified file 'lisp/isearch.el' --- lisp/isearch.el 2014-02-08 04:14:16 +0000 +++ lisp/isearch.el 2014-02-08 06:56:18 +0000 @@ -147,9 +147,9 @@ (defcustom isearch-hide-immediately t "If non-nil, re-hide an invisible match right away. This variable makes a difference when `search-invisible' is set to `open'. -It means that after search makes some invisible text visible -to show the match, it makes the text invisible again when the match moves. -Ordinarily the text becomes invisible again at the end of the search." +If nil then do not re-hide opened invisible text when the match moves. +Whatever the value, all opened invisible text is hidden again after exiting +the search." :type 'boolean :group 'isearch) ------------------------------------------------------------ revno: 116337 fixes bug: http://debbugs.gnu.org/14726 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 22:51:42 -0800 message: * search.texi (Search Case) doc tweak * search.texi (Search Case): Rearrange text slightly to make it obvious that `M-c' also toggles sensitivity if `case-fold-search' is nil. diff: === modified file 'doc/emacs/ChangeLog' --- doc/emacs/ChangeLog 2014-02-08 02:41:20 +0000 +++ doc/emacs/ChangeLog 2014-02-08 06:51:42 +0000 @@ -1,5 +1,9 @@ 2014-02-08 Lars Ingebrigtsen + * search.texi (Search Case): Rearrange text slightly to make it + obvious that `M-c' also toggles sensitivity if `case-fold-search' + is nil (bug#14726). + * frames.texi (Mouse Commands): Clarify `mouse-yank-at-click' (bug#16376). === modified file 'doc/emacs/search.texi' --- doc/emacs/search.texi 2014-01-07 04:36:52 +0000 +++ doc/emacs/search.texi 2014-02-08 06:51:42 +0000 @@ -1038,12 +1038,6 @@ well as to string search. The effect ceases if you delete the upper-case letter from the search string. - Typing @kbd{M-c} within an incremental search toggles the case -sensitivity of that search. The effect does not extend beyond the -current incremental search to the next one, but it does override the -effect of adding or removing an upper-case letter in the current -search. - @vindex case-fold-search If you set the variable @code{case-fold-search} to @code{nil}, then all letters must match exactly, including case. This is a per-buffer @@ -1053,6 +1047,12 @@ performed by the replace commands (@pxref{Replace}) and the minibuffer history matching commands (@pxref{Minibuffer History}). + Typing @kbd{M-c} within an incremental search toggles the case +sensitivity of that search. The effect does not extend beyond the +current incremental search to the next one, but it does override the +effect of adding or removing an upper-case letter in the current +search. + Several related variables control case-sensitivity of searching and matching for specific commands or activities. For instance, @code{tags-case-fold-search} controls case sensitivity for ------------------------------------------------------------ revno: 116336 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 22:36:11 -0800 message: * README.W32: Say what GnuTLS and libxml2 does. diff: === modified file 'nt/ChangeLog' --- nt/ChangeLog 2014-01-18 11:46:22 +0000 +++ nt/ChangeLog 2014-02-08 06:36:11 +0000 @@ -1,3 +1,7 @@ +2014-02-08 Lars Ingebrigtsen + + * README.W32: Say what GnuTLS and libxml2 does (bug#14762). + 2014-01-18 Eli Zaretskii * runemacs.c (ensure_unicows_dll): Don't tell in the message box === modified file 'nt/README.W32' --- nt/README.W32 2014-01-01 07:43:34 +0000 +++ nt/README.W32 2014-02-08 06:36:11 +0000 @@ -185,6 +185,9 @@ * GnuTLS support + GnuTLS provides SSL/TLS network support for Emacs (https, imaps and + so on.) + In order to support GnuTLS at runtime, Emacs must be able to find the relevant DLLs during startup; failure to do so is not an error, but GnuTLS won't be available to the running session. @@ -194,6 +197,9 @@ * libxml2 support + libxml2 provides HTML parsing support for Emacs, which is necessary + to use the built-in eww browser. + In order to support libxml2 at runtime, a libxml2-enabled Emacs must be able to find the relevant DLLs during startup; failure to do so is not an error, but libxml2 features won't be available to the ------------------------------------------------------------ revno: 116335 fixes bug: http://debbugs.gnu.org/14843 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 22:28:12 -0800 message: * simple.el (line-move): Document utility function used many places in the Emacs sources. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 06:20:17 +0000 +++ lisp/ChangeLog 2014-02-08 06:28:12 +0000 @@ -1,5 +1,8 @@ 2014-02-08 Lars Ingebrigtsen + * simple.el (line-move): Document utility function used many + places in the Emacs sources (bug#14843). + * dired.el (dired-mode-map): Make :help text more accurate (bug#14893). (dired-prev-marked-file): Doc fix (bug#14855). (dired-up-directory): Doc fix (bug#14848). === modified file 'lisp/simple.el' --- lisp/simple.el 2014-02-07 11:13:31 +0000 +++ lisp/simple.el 2014-02-08 06:28:12 +0000 @@ -5113,6 +5113,12 @@ ;; a cleaner solution to the problem of making C-n do something ;; useful given a tall image. (defun line-move (arg &optional noerror to-end try-vscroll) + "Move forward ARG lines. +If NOERROR, don't signal an error if we can't move ARG lines. +TO-END is unused. +TRY-VSCROLL controls whether to vscroll tall lines: if either +`auto-window-vscroll' or TRY-VSCROLL is nil, this function will +not vscroll." (if noninteractive (forward-line arg) (unless (and auto-window-vscroll try-vscroll @@ -5162,6 +5168,8 @@ ;; Arg says how many lines to move. The value is t if we can move the ;; specified number of lines. (defun line-move-visual (arg &optional noerror) + "Move ARG lines forward. +If NOERROR, don't signal an error if we can't move that many lines." (let ((opoint (point)) (hscroll (window-hscroll)) target-hscroll) ------------------------------------------------------------ revno: 116334 fixes bug: http://debbugs.gnu.org/14848 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 22:20:17 -0800 message: (dired-up-directory): Doc fix (bug#14848). diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 06:16:23 +0000 +++ lisp/ChangeLog 2014-02-08 06:20:17 +0000 @@ -2,6 +2,7 @@ * dired.el (dired-mode-map): Make :help text more accurate (bug#14893). (dired-prev-marked-file): Doc fix (bug#14855). + (dired-up-directory): Doc fix (bug#14848). * minibuffer.el (read-file-name): Doc clarification (bug#15096). === modified file 'lisp/dired.el' --- lisp/dired.el 2014-02-08 06:16:23 +0000 +++ lisp/dired.el 2014-02-08 06:20:17 +0000 @@ -2045,7 +2045,9 @@ (defun dired-up-directory (&optional other-window) "Run Dired on parent directory of current directory. Find the parent directory either in this buffer or another buffer. -Creates a buffer if necessary." +Creates a buffer if necessary. +If OTHER-WINDOW (the optional prefix arg), display the parent +directory in another window." (interactive "P") (let* ((dir (dired-current-directory)) (up (file-name-directory (directory-file-name dir)))) ------------------------------------------------------------ revno: 116333 fixes bug: http://debbugs.gnu.org/14855 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 22:16:23 -0800 message: (dired-prev-marked-file): Doc fix (bug#14855). diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 06:10:22 +0000 +++ lisp/ChangeLog 2014-02-08 06:16:23 +0000 @@ -1,6 +1,7 @@ 2014-02-08 Lars Ingebrigtsen * dired.el (dired-mode-map): Make :help text more accurate (bug#14893). + (dired-prev-marked-file): Doc fix (bug#14855). * minibuffer.el (read-file-name): Doc clarification (bug#15096). === modified file 'lisp/dired.el' --- lisp/dired.el 2014-02-08 06:10:22 +0000 +++ lisp/dired.el 2014-02-08 06:16:23 +0000 @@ -3140,7 +3140,9 @@ (save-excursion (not (dired-move-to-filename)))) (defun dired-next-marked-file (arg &optional wrap opoint) - "Move to the next marked file, wrapping around the end of the buffer." + "Move to the next marked file. +If WRAP is non-nil, wrap around to the beginning of the buffer if +we reach the end." (interactive "p\np") (or opoint (setq opoint (point)));; return to where interactively started (if (if (> arg 0) @@ -3157,7 +3159,9 @@ (dired-next-marked-file arg nil opoint)))) (defun dired-prev-marked-file (arg &optional wrap) - "Move to the previous marked file, wrapping around the end of the buffer." + "Move to the previous marked file. +If WRAP is non-nil, wrap around to the end of the buffer if we +reach the beginning of the buffer." (interactive "p\np") (dired-next-marked-file (- arg) wrap)) ------------------------------------------------------------ revno: 116332 fixes bug: http://debbugs.gnu.org/14893 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 22:10:22 -0800 message: * dired.el (dired-mode-map): Make :help text more accurate. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 05:15:31 +0000 +++ lisp/ChangeLog 2014-02-08 06:10:22 +0000 @@ -1,5 +1,7 @@ 2014-02-08 Lars Ingebrigtsen + * dired.el (dired-mode-map): Make :help text more accurate (bug#14893). + * minibuffer.el (read-file-name): Doc clarification (bug#15096). * files.el (file-relative-name): Doc fix (bug#15159). === modified file 'lisp/dired.el' --- lisp/dired.el 2014-01-27 21:42:53 +0000 +++ lisp/dired.el 2014-02-08 06:10:22 +0000 @@ -1785,22 +1785,22 @@ (define-key map [menu-bar operate epa-dired-do-decrypt] '(menu-item "Decrypt..." epa-dired-do-decrypt - :help "Decrypt file at cursor")) + :help "Decrypt current or marked files")) (define-key map [menu-bar operate epa-dired-do-verify] '(menu-item "Verify" epa-dired-do-verify - :help "Verify digital signature of file at cursor")) + :help "Verify digital signature of current or marked files")) (define-key map [menu-bar operate epa-dired-do-sign] '(menu-item "Sign..." epa-dired-do-sign - :help "Create digital signature of file at cursor")) + :help "Create digital signature of current or marked files")) (define-key map [menu-bar operate epa-dired-do-encrypt] '(menu-item "Encrypt..." epa-dired-do-encrypt - :help "Encrypt file at cursor")) + :help "Encrypt current or marked files")) (define-key map [menu-bar operate dashes-3] '("--")) ------------------------------------------------------------ revno: 116331 fixes bug: http://debbugs.gnu.org/14924 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 21:32:54 -0800 message: * display.texi (Face Attributes): Add an index. diff: === modified file 'doc/lispref/ChangeLog' --- doc/lispref/ChangeLog 2014-02-08 03:46:53 +0000 +++ doc/lispref/ChangeLog 2014-02-08 05:32:54 +0000 @@ -1,5 +1,7 @@ 2014-02-08 Lars Ingebrigtsen + * display.texi (Face Attributes): Add an index (bug#14924). + * keymaps.texi (Menu Bar): Minor clarification (bug#15657). 2014-02-06 Glenn Morris === modified file 'doc/lispref/display.texi' --- doc/lispref/display.texi 2014-02-06 04:27:26 +0000 +++ doc/lispref/display.texi 2014-02-08 05:32:54 +0000 @@ -2169,6 +2169,7 @@ the values of the @code{:family}, @code{:foundry}, @code{:width}, @code{:height}, @code{:weight}, and @code{:slant} attributes. +@cindex inheritance, for faces @item :inherit The name of a face from which to inherit attributes, or a list of face names. Attributes from inherited faces are merged into the face like ------------------------------------------------------------ revno: 116330 fixes bug: http://debbugs.gnu.org/15096 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 21:15:31 -0800 message: * minibuffer.el (read-file-name): Doc clarification. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 04:53:52 +0000 +++ lisp/ChangeLog 2014-02-08 05:15:31 +0000 @@ -1,5 +1,7 @@ 2014-02-08 Lars Ingebrigtsen + * minibuffer.el (read-file-name): Doc clarification (bug#15096). + * files.el (file-relative-name): Doc fix (bug#15159). * fringe.el (fringe-styles): Doc fix (bug#15239). === modified file 'lisp/minibuffer.el' --- lisp/minibuffer.el 2014-02-06 01:22:38 +0000 +++ lisp/minibuffer.el 2014-02-08 05:15:31 +0000 @@ -2395,7 +2395,7 @@ (defun read-file-name (prompt &optional dir default-filename mustmatch initial predicate) "Read file name, prompting with PROMPT and completing in directory DIR. -Value is not expanded---you must call `expand-file-name' yourself. +The return value is not expanded---you must call `expand-file-name' yourself. DIR is the directory to use for completing relative file names. It should be an absolute directory name, or nil (which means the ------------------------------------------------------------ revno: 116329 fixes bug: http://debbugs.gnu.org/15115 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 21:12:47 -0800 message: * syntax.c (Fskip_syntax_backward): Doc clarification. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2014-02-08 04:23:25 +0000 +++ src/ChangeLog 2014-02-08 05:12:47 +0000 @@ -1,5 +1,7 @@ 2014-02-08 Lars Ingebrigtsen + * syntax.c (Fskip_syntax_backward): Doc clarification (bug#15115). + * minibuf.c (Fread_string): Doc clarification (bug#15422). * buffer.c (Fmake_overlay): Doc clarification (bug#15489). === modified file 'src/syntax.c' --- src/syntax.c 2014-02-05 10:31:09 +0000 +++ src/syntax.c 2014-02-08 05:12:47 +0000 @@ -1532,7 +1532,8 @@ SYNTAX is a string of syntax code characters. Stop on reaching a char whose syntax is not in SYNTAX, or at position LIM. If SYNTAX starts with ^, skip characters whose syntax is NOT in SYNTAX. -This function returns the distance traveled, either zero or negative. */) +This function returns either zero or a negative number, and the absolute value +of this is the distance traveled. */) (Lisp_Object syntax, Lisp_Object lim) { return skip_syntaxes (0, syntax, lim); ------------------------------------------------------------ revno: 116328 fixes bug: http://debbugs.gnu.org/15159 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 20:53:52 -0800 message: * files.el (file-relative-name): Doc fix. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 04:40:26 +0000 +++ lisp/ChangeLog 2014-02-08 04:53:52 +0000 @@ -1,5 +1,7 @@ 2014-02-08 Lars Ingebrigtsen + * files.el (file-relative-name): Doc fix (bug#15159). + * fringe.el (fringe-styles): Doc fix (bug#15239). * isearch.el (isearch-filter-predicate): Documentation typo fix === modified file 'lisp/files.el' --- lisp/files.el 2014-01-06 06:25:30 +0000 +++ lisp/files.el 2014-02-08 04:53:52 +0000 @@ -4469,6 +4469,8 @@ "Convert FILENAME to be relative to DIRECTORY (default: `default-directory'). This function returns a relative file name which is equivalent to FILENAME when used with that default directory as the default. +If FILENAME is a relative file name, it will be interpreted as existing in +`default-directory'. If FILENAME and DIRECTORY lie on different machines or on different drives on a DOS/Windows machine, it returns FILENAME in expanded form." (save-match-data ------------------------------------------------------------ revno: 116327 fixes bug: http://debbugs.gnu.org/15239 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 20:40:26 -0800 message: * fringe.el (fringe-styles): Doc fix. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 04:14:16 +0000 +++ lisp/ChangeLog 2014-02-08 04:40:26 +0000 @@ -1,5 +1,7 @@ 2014-02-08 Lars Ingebrigtsen + * fringe.el (fringe-styles): Doc fix (bug#15239). + * isearch.el (isearch-filter-predicate): Documentation typo fix (bug#15474). === modified file 'lisp/fringe.el' --- lisp/fringe.el 2014-01-01 07:43:34 +0000 +++ lisp/fringe.el 2014-02-08 04:40:26 +0000 @@ -152,12 +152,11 @@ ("minimal" . (1 . 1))) "Alist mapping fringe mode names to fringe widths. Each list element has the form (NAME . WIDTH), where NAME is a -mnemonic fringe mode name (a symbol) and WIDTH is one of the -following: +mnemonic fringe mode name and WIDTH is one of the following: - nil, which means the default width (8 pixels). - a cons cell (LEFT . RIGHT), where LEFT and RIGHT are respectively the left and right fringe widths in pixels, or - nil (meaning to disable that fringe). + nil (meaning the default width). - a single integer, which specifies the pixel widths of both fringes.") @@ -167,7 +166,7 @@ - nil, which means the default width (8 pixels). - a cons cell (LEFT . RIGHT), where LEFT and RIGHT are respectively the left and right fringe widths in pixels, or - nil (meaning to disable that fringe). + nil (meaning the default width). - a single integer, which specifies the pixel widths of both fringes. Note that the actual width may be rounded up to ensure that the @@ -238,7 +237,7 @@ - nil, which means the default width (8 pixels). - a cons cell (LEFT . RIGHT), where LEFT and RIGHT are respectively the left and right fringe widths in pixels, or - nil (meaning to disable that fringe). + nil (meaning the default width). - a single integer, which specifies the pixel widths of both fringes. This command may round up the left and right width specifications @@ -263,7 +262,7 @@ - nil, which means the default width (8 pixels). - a cons cell (LEFT . RIGHT), where LEFT and RIGHT are respectively the left and right fringe widths in pixels, or - nil (meaning to disable that fringe). + nil (meaning the default width). - a single integer, which specifies the pixel widths of both fringes. This command may round up the left and right width specifications ------------------------------------------------------------ revno: 116326 fixes bug: http://debbugs.gnu.org/15422 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 20:23:25 -0800 message: * minibuf.c (Fread_string): Doc clarification. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2014-02-08 04:11:52 +0000 +++ src/ChangeLog 2014-02-08 04:23:25 +0000 @@ -1,5 +1,7 @@ 2014-02-08 Lars Ingebrigtsen + * minibuf.c (Fread_string): Doc clarification (bug#15422). + * buffer.c (Fmake_overlay): Doc clarification (bug#15489). 2014-02-08 Juanma Barranquero === modified file 'src/minibuf.c' --- src/minibuf.c 2014-01-01 07:43:34 +0000 +++ src/minibuf.c 2014-02-08 04:23:25 +0000 @@ -965,9 +965,9 @@ DEFUN ("read-string", Fread_string, Sread_string, 1, 5, 0, doc: /* Read a string from the minibuffer, prompting with string PROMPT. If non-nil, second arg INITIAL-INPUT is a string to insert before reading. - This argument has been superseded by DEFAULT-VALUE and should normally - be nil in new code. It behaves as in `read-from-minibuffer'. See the - documentation string of that function for details. + This argument has been superseded by DEFAULT-VALUE and should normally be nil + in new code. It behaves as INITIAL-CONTENTS in `read-from-minibuffer' (which + see). The third arg HISTORY, if non-nil, specifies a history list and optionally the initial position in the list. See `read-from-minibuffer' for details of HISTORY argument. ------------------------------------------------------------ revno: 116325 fixes bug: http://debbugs.gnu.org/15474 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 20:14:16 -0800 message: * isearch.el (isearch-filter-predicate): Documentation typo fix diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 04:10:02 +0000 +++ lisp/ChangeLog 2014-02-08 04:14:16 +0000 @@ -1,5 +1,8 @@ 2014-02-08 Lars Ingebrigtsen + * isearch.el (isearch-filter-predicate): Documentation typo fix + (bug#15474). + * info-look.el (info-lookup-symbol): Document MODE (bug#15498). * isearch.el (isearch-cmds): Doc clarification (bug#15547). === modified file 'lisp/isearch.el' --- lisp/isearch.el 2014-02-08 04:02:37 +0000 +++ lisp/isearch.el 2014-02-08 04:14:16 +0000 @@ -188,7 +188,7 @@ to the search status stack.") (defvar isearch-filter-predicate #'isearch-filter-visible - "Predicate that filter the search hits that would normally be available. + "Predicate that filters the search hits that would normally be available. Search hits that dissatisfy the predicate are skipped. The function has two arguments: the positions of start and end of text matched by the search. If this function returns nil, continue searching without ------------------------------------------------------------ revno: 116324 fixes bug: http://debbugs.gnu.org/15489 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 20:11:52 -0800 message: * buffer.c (Fmake_overlay): Doc clarification. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2014-02-08 04:02:16 +0000 +++ src/ChangeLog 2014-02-08 04:11:52 +0000 @@ -1,3 +1,7 @@ +2014-02-08 Lars Ingebrigtsen + + * buffer.c (Fmake_overlay): Doc clarification (bug#15489). + 2014-02-08 Juanma Barranquero * keyboard.c (Frecursive_edit): Fix typo in docstring. === modified file 'src/buffer.c' --- src/buffer.c 2014-02-06 04:27:26 +0000 +++ src/buffer.c 2014-02-08 04:11:52 +0000 @@ -3830,7 +3830,7 @@ } DEFUN ("make-overlay", Fmake_overlay, Smake_overlay, 2, 5, 0, - doc: /* Create a new overlay with range BEG to END in BUFFER. + doc: /* Create a new overlay with range BEG to END in BUFFER and return it. If omitted, BUFFER defaults to the current buffer. BEG and END may be integers or markers. The fourth arg FRONT-ADVANCE, if non-nil, makes the marker ------------------------------------------------------------ revno: 116323 fixes bug: http://debbugs.gnu.org/15498 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 20:10:02 -0800 message: * info-look.el (info-lookup-symbol): Document MODE. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 04:02:37 +0000 +++ lisp/ChangeLog 2014-02-08 04:10:02 +0000 @@ -1,5 +1,7 @@ 2014-02-08 Lars Ingebrigtsen + * info-look.el (info-lookup-symbol): Document MODE (bug#15498). + * isearch.el (isearch-cmds): Doc clarification (bug#15547). * replace.el (replace-match-maybe-edit): Doc clarification === modified file 'lisp/info-look.el' --- lisp/info-look.el 2014-01-01 07:43:34 +0000 +++ lisp/info-look.el 2014-02-08 04:10:02 +0000 @@ -260,7 +260,7 @@ value into the minibuffer so you can edit it. The default symbol is the one found at point. -With prefix arg a query for the symbol help mode is offered." +With prefix arg MODE a query for the symbol help mode is offered." (interactive (info-lookup-interactive-arguments 'symbol current-prefix-arg)) (info-lookup 'symbol symbol mode)) @@ -274,7 +274,7 @@ into the minibuffer so you can edit it. The default file name is the one found at point. -With prefix arg a query for the file help mode is offered." +With prefix arg MODE a query for the file help mode is offered." (interactive (info-lookup-interactive-arguments 'file current-prefix-arg)) (info-lookup 'file file mode)) ------------------------------------------------------------ revno: 116322 fixes bug: http://debbugs.gnu.org/15547 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 20:02:37 -0800 message: * isearch.el (isearch-cmds): Doc clarification. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 03:55:27 +0000 +++ lisp/ChangeLog 2014-02-08 04:02:37 +0000 @@ -1,5 +1,7 @@ 2014-02-08 Lars Ingebrigtsen + * isearch.el (isearch-cmds): Doc clarification (bug#15547). + * replace.el (replace-match-maybe-edit): Doc clarification (bug#15632). === modified file 'lisp/isearch.el' --- lisp/isearch.el 2014-01-07 07:55:50 +0000 +++ lisp/isearch.el 2014-02-08 04:02:37 +0000 @@ -569,8 +569,8 @@ variable by the command `isearch-toggle-lax-whitespace'.") (defvar isearch-cmds nil - "Stack of search status sets. -Each set is a vector of the form: + "Stack of search status elements. +Each element is an `isearch--state' struct where the slots are [STRING MESSAGE POINT SUCCESS FORWARD OTHER-END WORD INVALID-REGEXP WRAPPED BARRIER WITHIN-BRACKETS CASE-FOLD-SEARCH]") ------------------------------------------------------------ revno: 116321 committer: Juanma Barranquero branch nick: trunk timestamp: Sat 2014-02-08 05:02:16 +0100 message: * src/keyboard.c (Frecursive_edit): Fix typo in docstring. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2014-02-08 03:46:53 +0000 +++ src/ChangeLog 2014-02-08 04:02:16 +0000 @@ -1,3 +1,7 @@ +2014-02-08 Juanma Barranquero + + * keyboard.c (Frecursive_edit): Fix typo in docstring. + 2014-02-08 Lars Ingebrigtsen * xdisp.c (syms_of_xdisp): Doc clarification (bug#15657). === modified file 'src/keyboard.c' --- src/keyboard.c 2014-02-08 03:29:47 +0000 +++ src/keyboard.c 2014-02-08 04:02:16 +0000 @@ -812,7 +812,7 @@ If you throw a value other than t, `recursive-edit' returns normally to the function that called it. Throwing a t value causes `recursive-edit' to quit, so that control returns to the command loop -one level up +one level up. This function is called by the editor initialization to begin editing. */) (void) ------------------------------------------------------------ revno: 116320 fixes bug: http://debbugs.gnu.org/15632 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 19:55:27 -0800 message: * replace.el (replace-match-maybe-edit): Doc clarification. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 03:37:57 +0000 +++ lisp/ChangeLog 2014-02-08 03:55:27 +0000 @@ -1,5 +1,8 @@ 2014-02-08 Lars Ingebrigtsen + * replace.el (replace-match-maybe-edit): Doc clarification + (bug#15632). + * subr.el (add-to-list): Refill the paragraphs (bug#15791). * macros.el (insert-kbd-macro): Doc fix (bug#16025). === modified file 'lisp/replace.el' --- lisp/replace.el 2014-01-01 07:43:34 +0000 +++ lisp/replace.el 2014-02-08 03:55:27 +0000 @@ -1891,9 +1891,11 @@ (defun replace-match-maybe-edit (newtext fixedcase literal noedit match-data backward) "Make a replacement with `replace-match', editing `\\?'. -NEWTEXT, FIXEDCASE, LITERAL are just passed on. If NOEDIT is true, no -check for `\\?' is made to save time. MATCH-DATA is used for the -replacement. In case editing is done, it is changed to use markers. +FIXEDCASE, LITERAL are passed to `replace-match' (which see). +After possibly editing it (if `\\?' is present), NEWTEXT is also +passed to `replace-match'. If NOEDIT is true, no check for `\\?' +is made (to save time). MATCH-DATA is used for the replacement. +In case editing is done, it is changed to use markers. The return value is non-nil if there has been no `\\?' or NOEDIT was passed in. If LITERAL is set, no checking is done, anyway." ------------------------------------------------------------ revno: 116319 fixes bug: http://debbugs.gnu.org/15657 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 19:46:53 -0800 message: * doc/lispref/keymaps.texi (Menu Bar): Minor clarification. * src/xdisp.c (syms_of_xdisp): Doc clarification (bug#15657). diff: === modified file 'doc/lispref/ChangeLog' --- doc/lispref/ChangeLog 2014-02-06 04:27:26 +0000 +++ doc/lispref/ChangeLog 2014-02-08 03:46:53 +0000 @@ -1,3 +1,7 @@ +2014-02-08 Lars Ingebrigtsen + + * keymaps.texi (Menu Bar): Minor clarification (bug#15657). + 2014-02-06 Glenn Morris * display.texi (Truncation): === modified file 'doc/lispref/keymaps.texi' --- doc/lispref/keymaps.texi 2014-01-01 07:43:34 +0000 +++ doc/lispref/keymaps.texi 2014-02-08 03:46:53 +0000 @@ -2559,7 +2559,7 @@ @defvar menu-bar-update-hook This normal hook is run by redisplay to update the menu bar contents, -before redisplaying the menu bar. You can use it to update submenus +before redisplaying the menu bar. You can use it to update menus whose contents should vary. Since this hook is run frequently, we advise you to ensure that the functions it calls do not take much time in the usual case. === modified file 'src/ChangeLog' --- src/ChangeLog 2014-02-08 03:29:47 +0000 +++ src/ChangeLog 2014-02-08 03:46:53 +0000 @@ -1,5 +1,7 @@ 2014-02-08 Lars Ingebrigtsen + * xdisp.c (syms_of_xdisp): Doc clarification (bug#15657). + * keyboard.c (Frecursive_edit): Say more precicely how throwing `exit' works (bug#15865). === modified file 'src/xdisp.c' --- src/xdisp.c 2014-02-07 09:32:15 +0000 +++ src/xdisp.c 2014-02-08 03:46:53 +0000 @@ -30138,8 +30138,8 @@ DEFVAR_LISP ("menu-bar-update-hook", Vmenu_bar_update_hook, doc: /* Normal hook run to update the menu bar definitions. Redisplay runs this hook before it redisplays the menu bar. -This is used to update submenus such as Buffers, -whose contents depend on various data. */); +This is used to update menus such as Buffers, whose contents depend on +various data. */); Vmenu_bar_update_hook = Qnil; DEFVAR_LISP ("menu-updating-frame", Vmenu_updating_frame, ------------------------------------------------------------ revno: 116318 fixes bug: http://debbugs.gnu.org/15791 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 19:37:57 -0800 message: * subr.el (add-to-list): Refill the paragraphs. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 03:03:50 +0000 +++ lisp/ChangeLog 2014-02-08 03:37:57 +0000 @@ -1,5 +1,7 @@ 2014-02-08 Lars Ingebrigtsen + * subr.el (add-to-list): Refill the paragraphs (bug#15791). + * macros.el (insert-kbd-macro): Doc fix (bug#16025). 2014-02-08 Glenn Morris === modified file 'lisp/subr.el' --- lisp/subr.el 2014-02-01 07:54:29 +0000 +++ lisp/subr.el 2014-02-08 03:37:57 +0000 @@ -1500,8 +1500,8 @@ (defun add-to-list (list-var element &optional append compare-fn) "Add ELEMENT to the value of LIST-VAR if it isn't there yet. -The test for presence of ELEMENT is done with `equal', -or with COMPARE-FN if that's non-nil. +The test for presence of ELEMENT is done with `equal', or with +COMPARE-FN if that's non-nil. If ELEMENT is added, it is added at the beginning of the list, unless the optional argument APPEND is non-nil, in which case ELEMENT is added at the end. @@ -1509,14 +1509,15 @@ The return value is the new value of LIST-VAR. This is handy to add some elements to configuration variables, -but please do not abuse it in Elisp code, where you are usually better off -using `push' or `cl-pushnew'. +but please do not abuse it in Elisp code, where you are usually +better off using `push' or `cl-pushnew'. -If you want to use `add-to-list' on a variable that is not defined -until a certain package is loaded, you should put the call to `add-to-list' -into a hook function that will be run only after loading the package. -`eval-after-load' provides one way to do this. In some cases -other hooks, such as major mode hooks, can do the job." +If you want to use `add-to-list' on a variable that is not +defined until a certain package is loaded, you should put the +call to `add-to-list' into a hook function that will be run only +after loading the package. `eval-after-load' provides one way to +do this. In some cases other hooks, such as major mode hooks, +can do the job." (declare (compiler-macro (lambda (exp) ------------------------------------------------------------ revno: 116317 fixes bug: http://debbugs.gnu.org/15865 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 19:29:47 -0800 message: * keyboard.c (Frecursive_edit): Say more precicely how throwing `exit' works. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2014-02-07 10:55:28 +0000 +++ src/ChangeLog 2014-02-08 03:29:47 +0000 @@ -1,3 +1,8 @@ +2014-02-08 Lars Ingebrigtsen + + * keyboard.c (Frecursive_edit): Say more precicely how throwing + `exit' works (bug#15865). + 2014-02-07 Martin Rudalics Constrain window box/body sizes and margin widths (Bug#16649). === modified file 'src/keyboard.c' --- src/keyboard.c 2014-02-06 18:29:57 +0000 +++ src/keyboard.c 2014-02-08 03:29:47 +0000 @@ -807,9 +807,13 @@ DEFUN ("recursive-edit", Frecursive_edit, Srecursive_edit, 0, 0, "", doc: /* Invoke the editor command loop recursively. -To get out of the recursive edit, a command can do `(throw 'exit nil)'; -that tells this function to return. -Alternatively, `(throw 'exit t)' makes this function signal an error. +To get out of the recursive edit, a command can throw to `exit' -- for +instance `(throw 'exit nil)'. +If you throw a value other than t, `recursive-edit' returns normally +to the function that called it. Throwing a t value causes +`recursive-edit' to quit, so that control returns to the command loop +one level up + This function is called by the editor initialization to begin editing. */) (void) { ------------------------------------------------------------ revno: 116316 fixes bug: http://debbugs.gnu.org/16025 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 19:03:50 -0800 message: * macros.el (insert-kbd-macro): Doc fix. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 02:55:04 +0000 +++ lisp/ChangeLog 2014-02-08 03:03:50 +0000 @@ -1,3 +1,7 @@ +2014-02-08 Lars Ingebrigtsen + + * macros.el (insert-kbd-macro): Doc fix (bug#16025). + 2014-02-08 Glenn Morris * help-fns.el (describe-variable): === modified file 'lisp/macros.el' --- lisp/macros.el 2014-01-01 07:43:34 +0000 +++ lisp/macros.el 2014-02-08 03:03:50 +0000 @@ -51,7 +51,8 @@ ;;;###autoload (defun insert-kbd-macro (macroname &optional keys) - "Insert in buffer the definition of kbd macro NAME, as Lisp code. + "Insert in buffer the definition of kbd macro MACRONAME, as Lisp code. +MACRONAME should be a symbol. Optional second arg KEYS means also record the keys it is on \(this is the prefix argument, when calling interactively). ------------------------------------------------------------ revno: 116315 committer: Glenn Morris branch nick: trunk timestamp: Fri 2014-02-07 21:55:04 -0500 message: * lisp/help-fns.el (describe-variable): Check {file,dir}-local-variables-alist, and buffer-file-name, in the correct buffer. This seems to have Just Worked in 24.3 - when and why did it change? diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 02:18:31 +0000 +++ lisp/ChangeLog 2014-02-08 02:55:04 +0000 @@ -1,3 +1,9 @@ +2014-02-08 Glenn Morris + + * help-fns.el (describe-variable): + Check {file,dir}-local-variables-alist, and buffer-file-name, + in the correct buffer. + 2014-02-08 Ingo Lohmar * help-fns.el (describe-variable): Fix the case where === modified file 'lisp/help-fns.el' --- lisp/help-fns.el 2014-02-08 02:18:31 +0000 +++ lisp/help-fns.el 2014-02-08 02:55:04 +0000 @@ -911,13 +911,18 @@ (t "."))) (terpri)) - (when (member (cons variable val) file-local-variables-alist) + (when (member (cons variable val) + (with-current-buffer buffer + file-local-variables-alist)) (setq extra-line t) - (if (member (cons variable val) dir-local-variables-alist) - (let ((file (and (buffer-file-name) - (not (file-remote-p (buffer-file-name))) + (if (member (cons variable val) + (with-current-buffer buffer + dir-local-variables-alist)) + (let ((file (and (buffer-file-name buffer) + (not (file-remote-p + (buffer-file-name buffer))) (dir-locals-find-file - (buffer-file-name)))) + (buffer-file-name buffer)))) (dir-file t)) (princ " This variable's value is directory-local") (if (null file) ------------------------------------------------------------ revno: 116314 fixes bug: http://debbugs.gnu.org/16376 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2014-02-07 18:41:20 -0800 message: * frames.texi (Mouse Commands): Clarify `mouse-yank-at-click'. diff: === modified file 'doc/emacs/ChangeLog' --- doc/emacs/ChangeLog 2014-02-07 07:18:02 +0000 +++ doc/emacs/ChangeLog 2014-02-08 02:41:20 +0000 @@ -1,3 +1,8 @@ +2014-02-08 Lars Ingebrigtsen + + * frames.texi (Mouse Commands): Clarify `mouse-yank-at-click' + (bug#16376). + 2014-02-07 Glenn Morris * display.texi (Highlight Interactively): === modified file 'doc/emacs/frames.texi' --- doc/emacs/frames.texi 2014-01-01 07:43:34 +0000 +++ doc/emacs/frames.texi 2014-02-08 02:41:20 +0000 @@ -136,7 +136,7 @@ selection (@code{mouse-yank-primary}). @xref{Primary Selection}. This behavior is consistent with other X applications. Alternatively, you can rebind @kbd{Mouse-2} to @code{mouse-yank-at-click}, which -performs a yank at point. +performs a yank at the position you click. @vindex mouse-yank-at-point If you change the variable @code{mouse-yank-at-point} to a ------------------------------------------------------------ revno: 116313 fixes bug: http://debbugs.gnu.org/16635 author: Ingo Lohmar committer: Glenn Morris branch nick: trunk timestamp: Fri 2014-02-07 21:18:31 -0500 message: * help-fns.el (describe-variable): Fix case where value is directory-local with no dir-locals file. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-08 01:26:13 +0000 +++ lisp/ChangeLog 2014-02-08 02:18:31 +0000 @@ -1,3 +1,8 @@ +2014-02-08 Ingo Lohmar + + * help-fns.el (describe-variable): Fix the case where + a value is directory-local with no dir-locals file. (Bug#16635) + 2014-02-08 Glenn Morris * abbrev.el (edit-abbrevs-mode): === modified file 'lisp/help-fns.el' --- lisp/help-fns.el 2014-02-02 02:25:05 +0000 +++ lisp/help-fns.el 2014-02-08 02:18:31 +0000 @@ -930,7 +930,8 @@ (setq file (expand-file-name dir-locals-file (car file))) ;; Otherwise, assume it was set directly. - (setq dir-file nil))) + (setq file (car file) + dir-file nil))) (princ (if dir-file "by the file\n `" "for the directory\n `")) ------------------------------------------------------------ revno: 116312 fixes bug: http://debbugs.gnu.org/16642 committer: Glenn Morris branch nick: trunk timestamp: Fri 2014-02-07 21:07:55 -0500 message: auth-sources doc fixes * doc/misc/auth.texi (GnuPG and EasyPG Assistant Configuration): Be agnostic about authinfo/authinfo.gpg default order. * lisp/gnus/auth-source.el (auth-sources): Doc fix. diff: === modified file 'doc/misc/ChangeLog' --- doc/misc/ChangeLog 2014-02-07 03:22:34 +0000 +++ doc/misc/ChangeLog 2014-02-08 02:07:55 +0000 @@ -1,3 +1,8 @@ +2014-02-08 Glenn Morris + + * auth.texi (GnuPG and EasyPG Assistant Configuration): + Be agnostic about authinfo/authinfo.gpg default order. (Bug#16642) + 2014-02-07 Glenn Morris * viper.texi (File and Buffer Handling): Prefer ido to iswitchb. === modified file 'doc/misc/auth.texi' --- doc/misc/auth.texi 2014-01-06 05:25:46 +0000 +++ doc/misc/auth.texi 2014-02-08 02:07:55 +0000 @@ -470,10 +470,10 @@ @node GnuPG and EasyPG Assistant Configuration @appendix GnuPG and EasyPG Assistant Configuration -If you don't customize @code{auth-sources}, the auth-source library -reads @file{~/.authinfo.gpg}, which is a GnuPG encrypted file. Then -it will check @file{~/.authinfo} but it's not recommended to use such -an unencrypted file. +If the @code{auth-sources} variable contains @file{~/.authinfo.gpg} +before @file{~/.authinfo}, the auth-source library will try to +read the GnuPG encrypted @file{.gpg} file first, before +the unencrypted file. In Emacs 23 or later there is an option @code{auto-encryption-mode} to automatically decrypt @file{*.gpg} files. It is enabled by default. === modified file 'lisp/gnus/ChangeLog' --- lisp/gnus/ChangeLog 2014-02-07 03:06:44 +0000 +++ lisp/gnus/ChangeLog 2014-02-08 02:07:55 +0000 @@ -1,3 +1,7 @@ +2014-02-08 Glenn Morris + + * auth-source.el (auth-sources): Doc fix. (Bug#16642) + 2014-02-07 Lars Ingebrigtsen * ietf-drums.el (ietf-drums-parse-address): Don't bug out when called === modified file 'lisp/gnus/auth-source.el' --- lisp/gnus/auth-source.el 2014-01-01 07:43:34 +0000 +++ lisp/gnus/auth-source.el 2014-02-08 02:07:55 +0000 @@ -233,16 +233,9 @@ (defcustom auth-sources '("~/.authinfo" "~/.authinfo.gpg" "~/.netrc") "List of authentication sources. - -The default will get login and password information from -\"~/.authinfo.gpg\", which you should set up with the EPA/EPG -packages to be encrypted. If that file doesn't exist, it will -try the unencrypted version \"~/.authinfo\" and the famous -\"~/.netrc\" file. - -See the auth.info manual for details. - Each entry is the authentication type with optional properties. +Entries are tried in the order in which they appear. +See Info node `(auth)Help for users' for details. It's best to customize this with `M-x customize-variable' because the choices can get pretty complex." ------------------------------------------------------------ revno: 116311 fixes bug: http://debbugs.gnu.org/16682 committer: Glenn Morris branch nick: trunk timestamp: Fri 2014-02-07 20:26:13 -0500 message: * lisp/abbrev.el (edit-abbrevs-mode): Derive from fundamental-mode. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-07 11:13:31 +0000 +++ lisp/ChangeLog 2014-02-08 01:26:13 +0000 @@ -1,3 +1,8 @@ +2014-02-08 Glenn Morris + + * abbrev.el (edit-abbrevs-mode): + Derive from fundamental-mode. (Bug#16682) + 2014-02-07 Juanma Barranquero * simple.el (quoted-insert): Check character validity (bug#16677). === modified file 'lisp/abbrev.el' --- lisp/abbrev.el 2014-01-06 23:34:05 +0000 +++ lisp/abbrev.el 2014-02-08 01:26:13 +0000 @@ -1007,7 +1007,7 @@ ;; Keep it after define-abbrev-table, since define-derived-mode uses ;; define-abbrev-table. -(define-derived-mode edit-abbrevs-mode special-mode "Edit-Abbrevs" +(define-derived-mode edit-abbrevs-mode fundamental-mode "Edit-Abbrevs" "Major mode for editing the list of abbrev definitions.") (provide 'abbrev) ------------------------------------------------------------ revno: 116310 committer: Michael Albinus branch nick: trunk timestamp: Fri 2014-02-07 16:56:15 +0100 message: Remove superfluous argument. diff: === modified file 'test/automated/tramp-tests.el' --- test/automated/tramp-tests.el 2014-02-07 15:47:18 +0000 +++ test/automated/tramp-tests.el 2014-02-07 15:56:15 +0000 @@ -1153,7 +1153,7 @@ (default-directory tramp-test-temporary-file-directory)) (unwind-protect (with-temp-buffer - (write-region "foo" nil tmp-name nil) + (write-region "foo" nil tmp-name) (should (file-exists-p tmp-name)) (shell-command (format "ls %s" (file-name-nondirectory tmp-name)) (current-buffer)) @@ -1164,7 +1164,7 @@ (unwind-protect (with-temp-buffer - (write-region "foo" nil tmp-name nil) + (write-region "foo" nil tmp-name) (should (file-exists-p tmp-name)) (async-shell-command (format "ls %s" (file-name-nondirectory tmp-name)) (current-buffer)) ------------------------------------------------------------ revno: 116309 committer: Michael Albinus branch nick: trunk timestamp: Fri 2014-02-07 16:47:18 +0100 message: * automated/tramp-tests.el (tramp-test26-process-file): Improve test. (tramp-test27-start-file-process): Use "_p" as argument of lambda. (tramp-test28-shell-command): Improve `shell-command' test. Add `async-shell-command' tests. diff: === modified file 'test/ChangeLog' --- test/ChangeLog 2014-02-04 11:41:20 +0000 +++ test/ChangeLog 2014-02-07 15:47:18 +0000 @@ -1,3 +1,10 @@ +2014-02-07 Michael Albinus + + * automated/tramp-tests.el (tramp-test26-process-file): Improve test. + (tramp-test27-start-file-process): Use "_p" as argument of lambda. + (tramp-test28-shell-command): Improve `shell-command' test. Add + `async-shell-command' tests. + 2014-02-04 Michael Albinus * automated/file-notify-tests.el (file-notify--wait-for-events): === modified file 'test/automated/tramp-tests.el' --- test/automated/tramp-tests.el 2014-01-01 07:43:34 +0000 +++ test/automated/tramp-tests.el 2014-02-07 15:47:18 +0000 @@ -1084,8 +1084,14 @@ (should-not (zerop (process-file "binary-does-not-exist"))) (with-temp-buffer (write-region "foo" nil tmp-name) - (should (zerop (process-file "ls" nil t))) - (should (> (point-max) (point-min))))) + (should (file-exists-p tmp-name)) + (should + (zerop + (process-file "ls" nil t nil (file-name-nondirectory tmp-name)))) + (should + (string-equal + (format "%s\n" (file-name-nondirectory tmp-name)) + (buffer-string))))) (ignore-errors (delete-file tmp-name))))) (ert-deftest tramp-test27-start-file-process () @@ -1130,7 +1136,7 @@ (should (processp proc)) (should (equal (process-status proc) 'run)) (set-process-filter - proc (lambda (p s) (should (string-equal s "foo")))) + proc (lambda (_p s) (should (string-equal s "foo")))) (process-send-string proc "foo") (process-send-eof proc) (accept-process-output proc 1)) @@ -1147,9 +1153,39 @@ (default-directory tramp-test-temporary-file-directory)) (unwind-protect (with-temp-buffer - (write-region "foo" nil tmp-name) - (shell-command "ls" (current-buffer)) - (should (> (point-max) (point-min)))) + (write-region "foo" nil tmp-name nil) + (should (file-exists-p tmp-name)) + (shell-command + (format "ls %s" (file-name-nondirectory tmp-name)) (current-buffer)) + (should + (string-equal + (format "%s\n" (file-name-nondirectory tmp-name)) (buffer-string)))) + (ignore-errors (delete-file tmp-name))) + + (unwind-protect + (with-temp-buffer + (write-region "foo" nil tmp-name nil) + (should (file-exists-p tmp-name)) + (async-shell-command + (format "ls %s" (file-name-nondirectory tmp-name)) (current-buffer)) + (sit-for 1 'nodisplay) + (should + (string-equal + (format "%s\n" (file-name-nondirectory tmp-name)) (buffer-string)))) + (ignore-errors (delete-file tmp-name))) + + (unwind-protect + (with-temp-buffer + (write-region "foo" nil tmp-name) + (should (file-exists-p tmp-name)) + (async-shell-command "read line; ls $line" (current-buffer)) + (process-send-string + (get-buffer-process (current-buffer)) + (format "%s\n" (file-name-nondirectory tmp-name))) + (sit-for 1 'nodisplay) + (should + (string-equal + (format "%s\n" (file-name-nondirectory tmp-name)) (buffer-string)))) (ignore-errors (delete-file tmp-name))))) (ert-deftest tramp-test29-utf8 () ------------------------------------------------------------ revno: 116308 fixes bug: http://debbugs.gnu.org/16677 committer: Juanma Barranquero branch nick: trunk timestamp: Fri 2014-02-07 12:13:31 +0100 message: * lisp/simple.el (quoted-insert): Check character validity (bug#16677). diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-07 07:58:10 +0000 +++ lisp/ChangeLog 2014-02-07 11:13:31 +0000 @@ -1,3 +1,7 @@ +2014-02-07 Juanma Barranquero + + * simple.el (quoted-insert): Check character validity (bug#16677). + 2014-02-07 Juri Linkov * desktop.el (desktop-read): Claim the lock when the owner is not === modified file 'lisp/simple.el' --- lisp/simple.el 2014-02-07 03:22:34 +0000 +++ lisp/simple.el 2014-02-07 11:13:31 +0000 @@ -738,6 +738,9 @@ ;; (>= char ?\240) ;; (<= char ?\377)) ;; (setq char (unibyte-char-to-multibyte char))) + (unless (characterp char) + (user-error "%s is not a valid character" + (key-description (vector char)))) (if (> arg 0) (if (eq overwrite-mode 'overwrite-mode-binary) (delete-char arg))) ------------------------------------------------------------ revno: 116307 committer: martin rudalics branch nick: trunk timestamp: Fri 2014-02-07 11:55:28 +0100 message: In window_resize_apply adjust margin width, if necessary (Bug#16649). * window.c (window_resize_apply): Adjust margin width, if necessary. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2014-02-07 10:03:10 +0000 +++ src/ChangeLog 2014-02-07 10:55:28 +0000 @@ -1,11 +1,12 @@ 2014-02-07 Martin Rudalics - Constrain window box and body sizes (Bug#16649). + Constrain window box/body sizes and margin widths (Bug#16649). * xdisp.c (window_box_width): Don't return less than zero. (window_box_left_offset, window_box_right_offset): Don't return more than the window's pixel width. * window.c (window_body_height, window_body_width): Don't return negative value. + (window_resize_apply): Adjust margin width, if necessary. 2014-02-07 Glenn Morris === modified file 'src/window.c' --- src/window.c 2014-02-07 10:03:10 +0000 +++ src/window.c 2014-02-07 10:55:28 +0000 @@ -3923,8 +3923,11 @@ } } else - /* Bug#15957. */ - w->window_end_valid = 0; + { + adjust_window_margins (w); + /* Bug#15957. */ + w->window_end_valid = 0; + } } ------------------------------------------------------------ revno: 116306 committer: martin rudalics branch nick: trunk timestamp: Fri 2014-02-07 11:03:10 +0100 message: Constrain window body sizes. * window.c (window_body_height, window_body_width): Don't return negative value. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2014-02-07 09:32:15 +0000 +++ src/ChangeLog 2014-02-07 10:03:10 +0000 @@ -1,9 +1,11 @@ 2014-02-07 Martin Rudalics - Constrain window box sizes (Bug#16649). + Constrain window box and body sizes (Bug#16649). * xdisp.c (window_box_width): Don't return less than zero. (window_box_left_offset, window_box_right_offset): Don't return more than the window's pixel width. + * window.c (window_body_height, window_body_width): Don't return + negative value. 2014-02-07 Glenn Morris === modified file 'src/window.c' --- src/window.c 2014-01-22 10:29:23 +0000 +++ src/window.c 2014-02-07 10:03:10 +0000 @@ -866,7 +866,11 @@ - WINDOW_MODE_LINE_HEIGHT (w) - WINDOW_BOTTOM_DIVIDER_WIDTH (w)); - return pixelwise ? height : height / FRAME_LINE_HEIGHT (WINDOW_XFRAME (w)); + /* Don't return a negative value. */ + return max (pixelwise + ? height + : height / FRAME_LINE_HEIGHT (WINDOW_XFRAME (w)), + 0); } /* Return the number of columns/pixels of W's body. Don't count columns @@ -893,7 +897,11 @@ ? WINDOW_FRINGES_WIDTH (w) : 0)); - return pixelwise ? width : width / FRAME_COLUMN_WIDTH (WINDOW_XFRAME (w)); + /* Don't return a negative value. */ + return max (pixelwise + ? width + : width / FRAME_COLUMN_WIDTH (WINDOW_XFRAME (w)), + 0); } DEFUN ("window-body-height", Fwindow_body_height, Swindow_body_height, 0, 2, 0, ------------------------------------------------------------ revno: 116305 committer: martin rudalics branch nick: trunk timestamp: Fri 2014-02-07 10:32:15 +0100 message: Constrain window box sizes (Bug#16649). * xdisp.c (window_box_width): Don't return less than zero. (window_box_left_offset, window_box_right_offset): Don't return more than the window's pixel width. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2014-02-07 03:25:52 +0000 +++ src/ChangeLog 2014-02-07 09:32:15 +0000 @@ -1,3 +1,10 @@ +2014-02-07 Martin Rudalics + + Constrain window box sizes (Bug#16649). + * xdisp.c (window_box_width): Don't return less than zero. + (window_box_left_offset, window_box_right_offset): Don't return + more than the window's pixel width. + 2014-02-07 Glenn Morris * nsterm.m (syms_of_nsterm): Doc fix. === modified file 'src/xdisp.c' --- src/xdisp.c 2014-02-05 18:37:36 +0000 +++ src/xdisp.c 2014-02-07 09:32:15 +0000 @@ -1019,23 +1019,25 @@ int window_box_width (struct window *w, enum glyph_row_area area) { - int pixels = w->pixel_width; + int width = w->pixel_width; if (!w->pseudo_window_p) { - pixels -= WINDOW_SCROLL_BAR_AREA_WIDTH (w); - pixels -= WINDOW_RIGHT_DIVIDER_WIDTH (w); + width -= WINDOW_SCROLL_BAR_AREA_WIDTH (w); + width -= WINDOW_RIGHT_DIVIDER_WIDTH (w); if (area == TEXT_AREA) - pixels -= (WINDOW_MARGINS_WIDTH (w) + width -= (WINDOW_MARGINS_WIDTH (w) + WINDOW_FRINGES_WIDTH (w)); else if (area == LEFT_MARGIN_AREA) - pixels = WINDOW_LEFT_MARGIN_WIDTH (w); + width = WINDOW_LEFT_MARGIN_WIDTH (w); else if (area == RIGHT_MARGIN_AREA) - pixels = WINDOW_RIGHT_MARGIN_WIDTH (w); + width = WINDOW_RIGHT_MARGIN_WIDTH (w); } - return pixels; + /* With wide margins, fringes, etc. we might end up with a negative + width, correct that here. */ + return max (0, width); } @@ -1115,7 +1117,8 @@ && WINDOW_HAS_FRINGES_OUTSIDE_MARGINS (w)) x += WINDOW_LEFT_FRINGE_WIDTH (w); - return x; + /* Don't return more than the window's pixel width. */ + return min (x, w->pixel_width); } @@ -1126,7 +1129,9 @@ int window_box_right_offset (struct window *w, enum glyph_row_area area) { - return window_box_left_offset (w, area) + window_box_width (w, area); + /* Don't return more than the window's pixel width. */ + return min (window_box_left_offset (w, area) + window_box_width (w, area), + w->pixel_width); } /* Return the frame-relative coordinate of the left edge of display ------------------------------------------------------------ revno: 116304 fixes bug: http://debbugs.gnu.org/16157 committer: Juri Linkov branch nick: trunk timestamp: Fri 2014-02-07 09:58:10 +0200 message: * lisp/desktop.el (desktop-read): Claim the lock when the owner is not the current process. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-07 07:51:56 +0000 +++ lisp/ChangeLog 2014-02-07 07:58:10 +0000 @@ -1,5 +1,10 @@ 2014-02-07 Juri Linkov + * desktop.el (desktop-read): Claim the lock when the owner is not + the current process. (Bug#16157) + +2014-02-07 Juri Linkov + * desktop.el (desktop-buffers-not-to-save): Change default from nil to "\\` ". (Bug#16651) === modified file 'lisp/desktop.el' --- lisp/desktop.el 2014-02-07 07:51:56 +0000 +++ lisp/desktop.el 2014-02-07 07:58:10 +0000 @@ -1108,7 +1108,7 @@ (setq desktop-file-modtime (nth 5 (file-attributes (desktop-full-file-name)))) ;; If it wasn't already, mark it as in-use, to bother other ;; desktop instances. - (unless owner + (unless (eq (emacs-pid) owner) (condition-case nil (desktop-claim-lock) (file-error (message "Couldn't record use of desktop file") ------------------------------------------------------------ revno: 116303 fixes bug: http://debbugs.gnu.org/16651 committer: Juri Linkov branch nick: trunk timestamp: Fri 2014-02-07 09:51:56 +0200 message: * lisp/desktop.el (desktop-buffers-not-to-save): Change default from nil to "\\` ". diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-07 07:44:29 +0000 +++ lisp/ChangeLog 2014-02-07 07:51:56 +0000 @@ -1,5 +1,10 @@ 2014-02-07 Juri Linkov + * desktop.el (desktop-buffers-not-to-save): Change default from nil + to "\\` ". (Bug#16651) + +2014-02-07 Juri Linkov + * desktop.el (desktop-save-mode): Call `desktop-auto-save-set-timer' when enabling, and `desktop-auto-save-cancel-timer' when disabling. (desktop-auto-save-cancel-timer): New function with some code from === modified file 'lisp/desktop.el' --- lisp/desktop.el 2014-02-07 07:44:29 +0000 +++ lisp/desktop.el 2014-02-07 07:51:56 +0000 @@ -353,11 +353,11 @@ :type '(repeat symbol) :group 'desktop) -(defcustom desktop-buffers-not-to-save nil +(defcustom desktop-buffers-not-to-save "\\` " "Regexp identifying buffers that are to be excluded from saving." :type '(choice (const :tag "None" nil) regexp) - :version "23.2" ; set to nil + :version "24.4" ; skip invisible temporary buffers :group 'desktop) ;; Skip tramp and ange-ftp files ------------------------------------------------------------ revno: 116302 fixes bug: http://debbugs.gnu.org/16630 committer: Juri Linkov branch nick: trunk timestamp: Fri 2014-02-07 09:44:29 +0200 message: * lisp/desktop.el (desktop-save-mode): Call `desktop-auto-save-set-timer' when enabling, and `desktop-auto-save-cancel-timer' when disabling. (desktop-auto-save-cancel-timer): New function with some code from `desktop-auto-save-set-timer'. (after-init-hook): Don't call `desktop-auto-save-set-timer'. Instead of setting `desktop-save-mode' to nil, call `desktop-save-mode' with arg 0. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-07 07:18:02 +0000 +++ lisp/ChangeLog 2014-02-07 07:44:29 +0000 @@ -1,3 +1,13 @@ +2014-02-07 Juri Linkov + + * desktop.el (desktop-save-mode): Call `desktop-auto-save-set-timer' + when enabling, and `desktop-auto-save-cancel-timer' when disabling. + (desktop-auto-save-cancel-timer): New function with some code from + `desktop-auto-save-set-timer'. + (after-init-hook): Don't call `desktop-auto-save-set-timer'. + Instead of setting `desktop-save-mode' to nil, call + `desktop-save-mode' with arg 0. (Bug#16630) + 2014-02-07 Glenn Morris * hi-lock.el (hi-lock-auto-select-face, hi-lock-line-face-buffer) === modified file 'lisp/desktop.el' --- lisp/desktop.el 2014-02-03 07:35:44 +0000 +++ lisp/desktop.el 2014-02-07 07:44:29 +0000 @@ -162,7 +162,10 @@ one session to another. See variable `desktop-save' and function `desktop-read' for details." :global t - :group 'desktop) + :group 'desktop + (if desktop-save-mode + (desktop-auto-save-set-timer) + (desktop-auto-save-cancel-timer))) (defun desktop-save-mode-off () "Disable `desktop-save-mode'. Provided for use in hooks." @@ -1216,15 +1219,18 @@ Cancel any previous timer. When `desktop-auto-save-timeout' is a positive integer, start a new idle timer to call `desktop-auto-save' repeatedly after that many seconds of idle time." - (when desktop-auto-save-timer - (cancel-timer desktop-auto-save-timer) - (setq desktop-auto-save-timer nil)) + (desktop-auto-save-cancel-timer) (when (and (integerp desktop-auto-save-timeout) (> desktop-auto-save-timeout 0)) (setq desktop-auto-save-timer (run-with-idle-timer desktop-auto-save-timeout t 'desktop-auto-save)))) +(defun desktop-auto-save-cancel-timer () + (when desktop-auto-save-timer + (cancel-timer desktop-auto-save-timer) + (setq desktop-auto-save-timer nil))) + ;; ---------------------------------------------------------------------------- ;;;###autoload (defun desktop-revert () @@ -1465,10 +1471,9 @@ (let ((key "--no-desktop")) (when (member key command-line-args) (setq command-line-args (delete key command-line-args)) - (setq desktop-save-mode nil))) + (desktop-save-mode 0))) (when desktop-save-mode (desktop-read) - (desktop-auto-save-set-timer) (setq inhibit-startup-screen t)))) ;; So we can restore vc-dir buffers. ------------------------------------------------------------ revno: 116301 committer: Glenn Morris branch nick: trunk timestamp: Thu 2014-02-06 23:18:02 -0800 message: Some hi-lock doc * doc/emacs/display.texi (Highlight Interactively): Mention hi-lock-auto-select-face. * lisp/hi-lock.el (hi-lock-auto-select-face, hi-lock-line-face-buffer) (hi-lock-face-buffer, hi-lock-face-phrase-buffer) (hi-lock-face-symbol-at-point, hi-lock-read-face-name): Doc tweaks. * etc/NEWS: Related edits. diff: === modified file 'doc/emacs/ChangeLog' --- doc/emacs/ChangeLog 2014-02-07 07:13:21 +0000 +++ doc/emacs/ChangeLog 2014-02-07 07:18:02 +0000 @@ -1,5 +1,8 @@ 2014-02-07 Glenn Morris + * display.texi (Highlight Interactively): + Mention hi-lock-auto-select-face. + * anti.texi (Antinews): Fix typo. * ack.texi (Acknowledgments): No longer mention obsolete files. === modified file 'doc/emacs/display.texi' --- doc/emacs/display.texi 2014-01-01 07:43:34 +0000 +++ doc/emacs/display.texi 2014-02-07 07:18:02 +0000 @@ -928,6 +928,12 @@ pre-loaded into a list of default values. While being prompted for a face use @kbd{M-n} and @kbd{M-p} to cycle through them. +@vindex hi-lock-auto-select-face +Setting the option @code{hi-lock-auto-select-face} to a non-@code{nil} +value causes this command (and other Hi Lock commands that read faces) +to automatically choose the next face from the default list without +prompting. + You can use this command multiple times, specifying various regular expressions to highlight in different ways. @@ -976,8 +982,8 @@ @findex highlight-symbol-at-point @cindex symbol, highlighting @cindex highlighting symbol at point -Highlight the symbol found near point without prompting, using the next -available face automatically (@code{highlight-symbol-at-point}). +Highlight the symbol found near point, using the next available face +(@code{highlight-symbol-at-point}). @item M-s h w @itemx C-x w b === modified file 'etc/NEWS' --- etc/NEWS 2014-02-07 03:22:34 +0000 +++ etc/NEWS 2014-02-07 07:18:02 +0000 @@ -607,14 +607,14 @@ ** Hi-Lock ++++ +*** New global command `M-s h .' (`highlight-symbol-at-point') highlights +the symbol found near point. + ++++ *** New option `hi-lock-auto-select-face'. When non-nil, hi-lock commands will cycle through faces in `hi-lock-face-defaults' without prompting. -+++ -*** New global command `M-s h .' (`highlight-symbol-at-point') -highlights the symbol found near point without prompting, -using the next face automatically. - ** New Imenu option `imenu-generic-skip-comments-and-strings'. ** Info === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-07 03:22:34 +0000 +++ lisp/ChangeLog 2014-02-07 07:18:02 +0000 @@ -1,5 +1,9 @@ 2014-02-07 Glenn Morris + * hi-lock.el (hi-lock-auto-select-face, hi-lock-line-face-buffer) + (hi-lock-face-buffer, hi-lock-face-phrase-buffer) + (hi-lock-face-symbol-at-point, hi-lock-read-face-name): Doc tweaks. + * obsolete/iswitchb.el: Move to obsolete/. * simple.el (iswitchb-mode): Add manual autoloads to ease transition, since obsolete/ is not scanned for autoloads. === modified file 'lisp/hi-lock.el' --- lisp/hi-lock.el 2014-01-01 07:43:34 +0000 +++ lisp/hi-lock.el 2014-02-07 07:18:02 +0000 @@ -136,9 +136,9 @@ (put 'hi-lock-file-patterns-policy 'risky-local-variable t) (defcustom hi-lock-auto-select-face nil - "Non-nil if highlighting commands should not prompt for face names. -When non-nil, each hi-lock command will cycle through faces in -`hi-lock-face-defaults' without prompting." + "Non-nil means highlighting commands do not prompt for the face to use. +Instead, each hi-lock command will cycle through the faces in +`hi-lock-face-defaults'." :type 'boolean :version "24.4") @@ -410,9 +410,8 @@ ;;;###autoload (defun hi-lock-line-face-buffer (regexp &optional face) "Set face of all lines containing a match of REGEXP to FACE. -Interactively, prompt for REGEXP then FACE. Use -`read-regexp-defaults-function' to customize default -value(s) of REGEXP. Use the global history list for FACE. +Interactively, prompt for REGEXP using `read-regexp', then FACE. +Use the global history list for FACE. Use Font lock mode, if enabled, to highlight REGEXP. Otherwise, use overlays for highlighting. If overlays are used, the @@ -435,9 +434,8 @@ ;;;###autoload (defun hi-lock-face-buffer (regexp &optional face) "Set face of each match of REGEXP to FACE. -Interactively, prompt for REGEXP then FACE. Use -`read-regexp-defaults-function' to customize default -value(s) of REGEXP. Use the global history list for FACE. +Interactively, prompt for REGEXP using `read-regexp', then FACE. +Use the global history list for FACE. Use Font lock mode, if enabled, to highlight REGEXP. Otherwise, use overlays for highlighting. If overlays are used, the @@ -456,12 +454,12 @@ ;;;###autoload (defun hi-lock-face-phrase-buffer (regexp &optional face) "Set face of each match of phrase REGEXP to FACE. -Interactively, prompt for REGEXP then FACE. Use -`read-regexp-defaults-function' to customize default -value(s) of REGEXP. Use the global history list for FACE. When -called interactively, replace whitespace in user provided regexp -with arbitrary whitespace and make initial lower-case letters -case-insensitive before highlighting with `hi-lock-set-pattern'. +Interactively, prompt for REGEXP using `read-regexp', then FACE. +Use the global history list for FACE. + +When called interactively, replace whitespace in user-provided +regexp with arbitrary whitespace, and make initial lower-case +letters case-insensitive, before highlighting with `hi-lock-set-pattern'. Use Font lock mode, if enabled, to highlight REGEXP. Otherwise, use overlays for highlighting. If overlays are used, the @@ -480,14 +478,13 @@ (defalias 'highlight-symbol-at-point 'hi-lock-face-symbol-at-point) ;;;###autoload (defun hi-lock-face-symbol-at-point () - "Set face of each match of the symbol at point. -Use `find-tag-default-as-symbol-regexp' to retrieve the symbol at point. -Use non-nil `hi-lock-auto-select-face' to retrieve the next face -from `hi-lock-face-defaults' automatically. + "Highlight each instance of the symbol at point. +Uses the next face from `hi-lock-face-defaults' without prompting, +unless you use a prefix argument. +Uses `find-tag-default-as-symbol-regexp' to retrieve the symbol at point. -Use Font lock mode, if enabled, to highlight symbol at point. -Otherwise, use overlays for highlighting. If overlays are used, -the highlighting will not update as you type." +This uses Font lock mode if it is enabled; otherwise it uses overlays, +in which case the highlighting will not update as you type." (interactive) (let* ((regexp (hi-lock-regexp-okay (find-tag-default-as-symbol-regexp))) @@ -663,7 +660,8 @@ (defun hi-lock-read-face-name () "Return face for interactive highlighting. When `hi-lock-auto-select-face' is non-nil, just return the next face. -Otherwise, read face name from minibuffer with completion and history." +Otherwise, or with a prefix argument, read a face from the minibuffer +with completion and history." (unless hi-lock-interactive-patterns (setq hi-lock--unused-faces hi-lock-face-defaults)) (let* ((last-used-face ------------------------------------------------------------ revno: 116300 committer: Glenn Morris branch nick: trunk timestamp: Thu 2014-02-06 23:13:21 -0800 message: * doc/emacs/anti.texi (Antinews): Fix typo. diff: === modified file 'doc/emacs/ChangeLog' --- doc/emacs/ChangeLog 2014-02-07 03:22:34 +0000 +++ doc/emacs/ChangeLog 2014-02-07 07:13:21 +0000 @@ -1,5 +1,7 @@ 2014-02-07 Glenn Morris + * anti.texi (Antinews): Fix typo. + * ack.texi (Acknowledgments): No longer mention obsolete files. 2014-02-02 Glenn Morris === modified file 'doc/emacs/anti.texi' --- doc/emacs/anti.texi 2014-01-01 07:43:34 +0000 +++ doc/emacs/anti.texi 2014-02-07 07:13:21 +0000 @@ -89,7 +89,7 @@ @item Setting the option @code{delete-by-moving-to-trash} to a -non-@code{nil} now causes all file deletions to use the system trash, +non-@code{nil} value now causes all file deletions to use the system trash, even temporary files created by Lisp programs; furthermore, the @kbd{M-x delete-file} and @kbd{M-x delete-directory} commands no longer accept prefix arguments to force true deletion. ------------------------------------------------------------ revno: 116299 committer: Glenn Morris branch nick: trunk timestamp: Thu 2014-02-06 19:25:52 -0800 message: * src/nsterm.m (syms_of_nsterm): Doc fix. It is not necessary to say "default is..." since there are standard mechanisms for displaying that information. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2014-02-06 15:27:46 +0000 +++ src/ChangeLog 2014-02-07 03:25:52 +0000 @@ -1,3 +1,7 @@ +2014-02-07 Glenn Morris + + * nsterm.m (syms_of_nsterm): Doc fix. + 2014-02-06 Eli Zaretskii * w32.c (pMultiByteToWideChar, pWideCharToMultiByte): New === modified file 'src/nsterm.m' --- src/nsterm.m 2014-02-06 07:57:53 +0000 +++ src/nsterm.m 2014-02-07 03:25:52 +0000 @@ -7645,7 +7645,7 @@ doc: /*Non-nil means to use native fullscreen on OSX >= 10.7. Nil means use fullscreen the old (< 10.7) way. The old way works better with multiple monitors, but lacks tool bar. This variable is ignored on OSX < 10.7. -Default is t for OSX >= 10.7, nil otherwise. */); +Default is t for OSX >= 10.7, nil otherwise. */); #ifdef HAVE_NATIVE_FS ns_use_native_fullscreen = YES; #else @@ -7656,7 +7656,7 @@ DEFVAR_BOOL ("ns-use-srgb-colorspace", ns_use_srgb_colorspace, doc: /*Non-nil means to use sRGB colorspace on OSX >= 10.7. Note that this does not apply to images. -This variable is ignored on OSX < 10.7 and GNUstep. Default is t. */); +This variable is ignored on OSX < 10.7 and GNUstep. */); ns_use_srgb_colorspace = YES; /* TODO: move to common code */ ------------------------------------------------------------ revno: 116298 committer: Glenn Morris branch nick: trunk timestamp: Thu 2014-02-06 19:23:46 -0800 message: "Use instead" obsolescence messages should end with "." diff: === modified file 'lisp/emacs-lisp/bytecomp.el' --- lisp/emacs-lisp/bytecomp.el 2014-01-24 04:13:35 +0000 +++ lisp/emacs-lisp/bytecomp.el 2014-02-07 03:23:46 +0000 @@ -356,7 +356,7 @@ (defvar byte-compile-interactive-only-functions nil "List of commands that are not meant to be called from Lisp.") (make-obsolete-variable 'byte-compile-interactive-only-functions - "use the `interactive-only' symbol property instead" + "use the `interactive-only' symbol property instead." "24.4") (defvar byte-compile-not-obsolete-vars nil === modified file 'lisp/gnus/nnimap.el' --- lisp/gnus/nnimap.el 2014-01-31 10:13:28 +0000 +++ lisp/gnus/nnimap.el 2014-02-07 03:23:46 +0000 @@ -95,7 +95,7 @@ (defvoo nnimap-unsplittable-articles '(%Deleted %Seen) "Articles with the flags in the list will not be considered when splitting.") -(make-obsolete-variable 'nnimap-split-rule "see `nnimap-split-methods'" +(make-obsolete-variable 'nnimap-split-rule "see `nnimap-split-methods'." "Emacs 24.1") (defvoo nnimap-authenticator nil ------------------------------------------------------------ revno: 116297 committer: Glenn Morris branch nick: trunk timestamp: Thu 2014-02-06 19:22:34 -0800 message: Move iswitchb.el to obsolete/ Ref: http://lists.gnu.org/archive/html/emacs-devel/2013-11/msg00501.html * lisp/obsolete/iswitchb.el: Move to obsolete/. * lisp/simple.el (iswitchb-mode): Add manual autoloads to ease transition, since obsolete/ is not scanned for autoloads. * lisp/emacs-lisp/authors.el (authors-valid-file-names): Add iswitchb.el. * doc/emacs/ack.texi (Acknowledgments): No longer mention obsolete files. * doc/misc/viper.texi (File and Buffer Handling): Prefer ido to iswitchb. * etc/NEWS: Related edits. diff: === modified file 'doc/emacs/ChangeLog' --- doc/emacs/ChangeLog 2014-02-03 07:35:44 +0000 +++ doc/emacs/ChangeLog 2014-02-07 03:22:34 +0000 @@ -1,3 +1,7 @@ +2014-02-07 Glenn Morris + + * ack.texi (Acknowledgments): No longer mention obsolete files. + 2014-02-02 Glenn Morris * regs.texi (Registers): Mention previewing. === modified file 'doc/emacs/ack.texi' --- doc/emacs/ack.texi 2014-01-26 03:39:34 +0000 +++ doc/emacs/ack.texi 2014-02-07 03:22:34 +0000 @@ -52,10 +52,6 @@ Michael Albinus wrote @file{dbus.el}, a package that implements the D-Bus message bus protocol; @file{zeroconf.el}, a mode for browsing Avahi services; -@ignore -@c obsolete -@file{xesam.el}, a Xesam-based search engine interface; -@end ignore and @file{secrets.el}, an interface to keyring daemons for storing confidential data. He and Kai Großjohann wrote the Tramp package, which provides transparent remote file editing using rcp, ssh, ftp, and @@ -307,8 +303,7 @@ @item Stephen Eglen wrote @file{mspools.el}, which tells you which Procmail -folders have mail waiting in them; and @file{iswitchb.el}, a feature -for incremental reading and completion of buffer names. +folders have mail waiting in them. @item Torbjörn Einarsson wrote @file{f90.el}, a mode for Fortran 90 files. @@ -820,10 +815,6 @@ buffer listings; @file{ehelp.el}, bindings for browsing help screens; and @file{rfc822.el}, a parser for E-mail addresses in the RFC-822 format, used in mail messages and news articles. -@ignore -@c Obsolete since 24.4 -; and @file{terminal.el}, a terminal emulator for Emacs subprocesses. -@end ignore @item Gerd Möllmann was the Emacs maintainer from the beginning of Emacs 21 @@ -1106,12 +1097,6 @@ Philippe Schnoebelen wrote @file{gomoku.el}, a Go Moku game played against Emacs; and @file{mpuz.el}, a multiplication puzzle. -@ignore -@c Removed in 24.1. -@item -Rainer Schöpf contributed to Alpha and OSF1 support. -@end ignore - @item Jan Schormann wrote @file{solitaire.el}, an implementation of the Solitaire game. === modified file 'doc/misc/ChangeLog' --- doc/misc/ChangeLog 2014-02-06 04:05:43 +0000 +++ doc/misc/ChangeLog 2014-02-07 03:22:34 +0000 @@ -1,3 +1,7 @@ +2014-02-07 Glenn Morris + + * viper.texi (File and Buffer Handling): Prefer ido to iswitchb. + 2014-02-06 Glenn Morris * epa.texi (Mail-mode integration): Mention epa-mail-aliases. === modified file 'doc/misc/viper.texi' --- doc/misc/viper.texi 2014-02-06 02:26:57 +0000 +++ doc/misc/viper.texi 2014-02-07 03:22:34 +0000 @@ -4064,7 +4064,7 @@ The variable @var{viper-read-buffer-function} controls which function is actually used to read the buffer name. The default is @code{read-buffer}, but better alternatives are also available in Emacs (e.g., -@code{iswitchb-read-buffer}). +@code{ido-read-buffer}). @vindex @var{viper-read-buffer-function} @item :B Like @kbd{:b}, but the meaning of @var{ex-cycle-other-window} is reversed. === modified file 'etc/NEWS' --- etc/NEWS 2014-02-06 08:39:18 +0000 +++ etc/NEWS 2014-02-07 03:22:34 +0000 @@ -906,11 +906,15 @@ ** Obsolete packages -*** Iswitchb; use icomplete-mode. ++++ +*** iswitchb.el; use icomplete-mode. --- *** longlines.el; use visual-line-mode. +--- +*** meese.el. + +++ *** sup-mouse.el. @@ -918,7 +922,7 @@ *** terminal.el; use term.el instead. --- -*** the old version of todo-mode.el (now renamed to otodo-mode.el). +*** the old version of todo-mode.el (renamed to otodo-mode.el). --- *** xesam.el (owing to the cancellation of the XESAM project). === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-07 03:14:56 +0000 +++ lisp/ChangeLog 2014-02-07 03:22:34 +0000 @@ -1,5 +1,11 @@ 2014-02-07 Glenn Morris + * obsolete/iswitchb.el: Move to obsolete/. + * simple.el (iswitchb-mode): Add manual autoloads to ease transition, + since obsolete/ is not scanned for autoloads. + * emacs-lisp/authors.el (authors-valid-file-names): + Add iswitchb.el. + * obsolete/meese.el: Restore as obsolete (deleted 2014-01-11). Disable now non-functional find-file-hook. === modified file 'lisp/emacs-lisp/authors.el' --- lisp/emacs-lisp/authors.el 2014-01-22 20:05:03 +0000 +++ lisp/emacs-lisp/authors.el 2014-02-07 03:22:34 +0000 @@ -626,7 +626,7 @@ "erc-hecomplete.el" "eshell/esh-maint.el" "language/persian.el" - "meese.el" + "meese.el" "iswitchb.el" "mh-exec.el" "mh-init.el" "mh-customize.el" "net/zone-mode.el" "xesam.el" "term/mac-win.el" "sup-mouse.el" === renamed file 'lisp/iswitchb.el' => 'lisp/obsolete/iswitchb.el' --- lisp/iswitchb.el 2014-01-01 07:43:34 +0000 +++ lisp/obsolete/iswitchb.el 2014-02-07 03:22:34 +0000 @@ -5,6 +5,7 @@ ;; Author: Stephen Eglen ;; Maintainer: Stephen Eglen ;; Keywords: completion convenience +;; Obsolete-since: 24.4 ;; This file is part of GNU Emacs. @@ -23,6 +24,8 @@ ;;; Commentary: +;; This file is obsolete - use icomplete-mode or ido-mode instead. + ;; Installation: ;; To get the functions in this package bound to keys, use ;; M-x iswitchb-mode or customize the option `iswitchb-mode'. @@ -1413,6 +1416,9 @@ (isearch-no-upper-case-p iswitchb-text) (isearch-no-upper-case-p iswitchb-text t)))) +;; NB obsolete/ is not scanned for autoloads. +;; If you change any of the following doc, copy the changes to simple.el. + ;;;###autoload (define-minor-mode iswitchb-mode "Toggle Iswitchb mode. @@ -1427,8 +1433,9 @@ (add-hook 'minibuffer-setup-hook 'iswitchb-minibuffer-setup) (remove-hook 'minibuffer-setup-hook 'iswitchb-minibuffer-setup))) +;;;###autoload (make-obsolete 'iswitchb-mode - "use icomplete-mode or ido-mode instead" "24.4") + "use `icomplete-mode' or `ido-mode' instead." "24.4") (provide 'iswitchb) === modified file 'lisp/simple.el' --- lisp/simple.el 2014-01-30 07:48:06 +0000 +++ lisp/simple.el 2014-02-07 03:22:34 +0000 @@ -7766,6 +7766,33 @@ (message ,(format "No implementation selected for command `%s'" command-name))))))) + +;; This is here because files in obsolete/ are not scanned for autoloads. + +(defvar iswitchb-mode nil "\ +Non-nil if Iswitchb mode is enabled. +See the command `iswitchb-mode' for a description of this minor mode. +Setting this variable directly does not take effect; +either customize it (see the info node `Easy Customization') +or call the function `iswitchb-mode'.") + +(custom-autoload 'iswitchb-mode "iswitchb" nil) + +(autoload 'iswitchb-mode "iswitchb" "\ +Toggle Iswitchb mode. +With a prefix argument ARG, enable Iswitchb mode if ARG is +positive, and disable it otherwise. If called from Lisp, enable +the mode if ARG is omitted or nil. + +Iswitchb mode is a global minor mode that enables switching +between buffers using substrings. See `iswitchb' for details. + +\(fn &optional ARG)" t nil) + +(make-obsolete 'iswitchb-mode + "use `icomplete-mode' or `ido-mode' instead." "24.4") + + (provide 'simple) ;;; simple.el ends here ------------------------------------------------------------ revno: 116296 committer: Glenn Morris branch nick: trunk timestamp: Thu 2014-02-06 19:19:39 -0800 message: * etc/TODO: Remove refs to obsolete files. diff: === modified file 'etc/TODO' --- etc/TODO 2014-01-27 00:36:40 +0000 +++ etc/TODO 2014-02-07 03:19:39 +0000 @@ -532,7 +532,7 @@ ** Optionally make the cursor a little thinner at the end of a line or the end of the buffer. -** Port the conservative stack marking code of Emacs' garbage collector +** Port the conservative stack marking code of Emacs's garbage collector to more systems, so that we can completely get rid of GCPROs. Note that Boehm garbage collector provides this. @@ -556,8 +556,8 @@ snmp-mode [?], soundex [should be interactive?], strokes [start from the web page], talk, thingatpt [interactive functions?], type-break, vcursor, xscheme, zone-mode [?], mlconvert [?], iso-cvt, - feedmail [?], uce, gametree, meese, page-ext, - refbib, refer, scribe, spell [obsolete?], texinfo, underline, + feedmail [?], uce, gametree, page-ext, + refbib, refer, scribe, texinfo, underline, cmacexp, hideif, mantemp [obsolete?], pcomplete, xml, cvs-status (should be described in PCL-CVS manual); other progmodes, probably in separate manual. ------------------------------------------------------------ revno: 116295 committer: Glenn Morris branch nick: trunk timestamp: Thu 2014-02-06 19:14:56 -0800 message: * lisp/obsolete/meese.el: Restore as obsolete (deleted 2014-01-11). Disable now non-functional find-file-hook. Maybe somebody had (require 'meese) in their init file... If patcomp.el can live on in obsolete/, so can this. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-07 03:07:07 +0000 +++ lisp/ChangeLog 2014-02-07 03:14:56 +0000 @@ -1,3 +1,8 @@ +2014-02-07 Glenn Morris + + * obsolete/meese.el: Restore as obsolete (deleted 2014-01-11). + Disable now non-functional find-file-hook. + 2014-02-06 Michael Albinus * net/tramp-sh.el (tramp-sh-handle-start-file-process): Use "&&" === added file 'lisp/obsolete/meese.el' --- lisp/obsolete/meese.el 1970-01-01 00:00:00 +0000 +++ lisp/obsolete/meese.el 2014-02-07 03:14:56 +0000 @@ -0,0 +1,38 @@ +;;; meese.el --- protect the impressionable young minds of America + +;; This is in the public domain on account of being distributed since +;; 1985 or 1986 without a copyright notice. + +;; This file is part of GNU Emacs. + +;; Maintainer: FSF +;; Keywords: games +;; Obsolete-since: 24.4 + +;;; Commentary: + +;; Adds a hook to protect the impressionable young minds of America +;; from reading certain files in the Emacs distribution using Emacs. + +;; This file is named after Ed Meese, the US Attorney General +;; under President Reagan, because of his support for censorship. + +;;; Code: + +(defun protect-innocence-hook () + (let ((dir (file-name-directory buffer-file-name))) + (if (and (equal buffer-file-name (expand-file-name "sex.6" dir)) + (file-exists-p buffer-file-name) + (not (y-or-n-p "Are you over 18? "))) + (progn + (clear-visited-file-modtime) + (setq buffer-file-name (expand-file-name "celibacy.1" dir)) + (let ((inhibit-read-only t)) ; otherwise (erase-buffer) may bomb. + (erase-buffer) + (insert-file-contents buffer-file-name t)) + (rename-buffer (file-name-nondirectory buffer-file-name)))))) + +;;;(add-hook 'find-file-hook 'protect-innocence-hook) +(provide 'meese) + +;;; meese.el ends here ------------------------------------------------------------ revno: 116294 committer: Glenn Morris branch nick: trunk timestamp: Thu 2014-02-06 19:07:07 -0800 message: ChangeLog fix diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-06 08:49:34 +0000 +++ lisp/ChangeLog 2014-02-07 03:07:07 +0000 @@ -62,6 +62,7 @@ (frame-configuration-to-register): Unadvertise unused argument. * frameset.el (frameset-to-register): Remove unused argument. + * frameset.el (frameset-to-register): * kmacro.el (kmacro-to-register): * register.el (increment-register): * calc/calc-yank.el (calc-copy-to-register, calc-insert-register) ------------------------------------------------------------ revno: 116293 author: Lars Ingebrigtsen committer: Katsumi Yamaoka branch nick: trunk timestamp: Fri 2014-02-07 03:06:44 +0000 message: lisp/gnus/ietf-drums.el (ietf-drums-parse-address): Don't bug out when called with an empty string diff: === modified file 'lisp/gnus/ChangeLog' --- lisp/gnus/ChangeLog 2014-02-06 05:43:50 +0000 +++ lisp/gnus/ChangeLog 2014-02-07 03:06:44 +0000 @@ -1,3 +1,8 @@ +2014-02-07 Lars Ingebrigtsen + + * ietf-drums.el (ietf-drums-parse-address): Don't bug out when called + with an empty string. + 2014-02-06 Lars Ingebrigtsen * gnus-msg.el (gnus-summary-cancel-article): `user-mail-address' is === modified file 'lisp/gnus/ietf-drums.el' --- lisp/gnus/ietf-drums.el 2014-01-01 07:43:34 +0000 +++ lisp/gnus/ietf-drums.el 2014-02-07 03:06:44 +0000 @@ -214,7 +214,8 @@ (mapconcat 'identity (reverse display-name) " ")) (setq display-string (ietf-drums-get-comment string))) (if (not mailbox) - (when (string-match "@" display-string) + (when (and display-string + (string-match "@" display-string)) (cons (mapconcat 'identity (nreverse display-name) "") (ietf-drums-get-comment string))) ------------------------------------------------------------ revno: 116292 committer: David Engster branch nick: trunk timestamp: Thu 2014-02-06 21:57:24 +0100 message: Grammar bug fixes from CEDET upstream. * grammars/c.by (function-pointer): Correctly deal with anonymous function pointers. (opt-brackets-after-symbol): New. (multi-stage-dereference): Use it. Add rules for explicit matching the last dereference. diff: === modified file 'admin/ChangeLog' --- admin/ChangeLog 2014-01-22 01:43:37 +0000 +++ admin/ChangeLog 2014-02-06 20:57:24 +0000 @@ -1,3 +1,11 @@ +2014-02-06 David Engster + + * grammars/c.by (function-pointer): Correctly deal with anonymous + function pointers. + (opt-brackets-after-symbol): New. + (multi-stage-dereference): Use it. Add rules for explicit + matching the last dereference. + 2014-01-16 Eric S. Raymond * notes/commits: Add a 'graph on VCS-independent ways of === modified file 'admin/grammars/c.by' --- admin/grammars/c.by 2014-01-01 07:43:34 +0000 +++ admin/grammars/c.by 2014-02-06 20:57:24 +0000 @@ -1113,8 +1113,8 @@ ; function-pointer - : LPAREN STAR symbol RPAREN - ( (concat "*" $3) ) + : LPAREN STAR opt-symbol RPAREN + ( (concat "*" ,(car $3)) ) | LPAREN symbol RPAREN ( $2 ) ; @@ -1154,14 +1154,25 @@ : open-paren typeformbase close-paren ; +opt-brackets-after-symbol + : brackets-after-symbol + | ;; EMPTY + ; + brackets-after-symbol : PAREN_BLCK | BRACK_BLCK ; multi-stage-dereference - : namespace-symbol brackets-after-symbol PERIOD multi-stage-dereference ;; method call - | namespace-symbol brackets-after-symbol MINUS GREATER multi-stage-dereference ;;method call + : namespace-symbol opt-brackets-after-symbol + PERIOD multi-stage-dereference ;; method call + | namespace-symbol opt-brackets-after-symbol + MINUS GREATER multi-stage-dereference ;;method call + | namespace-symbol opt-brackets-after-symbol + PERIOD namespace-symbol opt-brackets-after-symbol + | namespace-symbol opt-brackets-after-symbol + MINUS GREATER namespace-symbol opt-brackets-after-symbol | namespace-symbol brackets-after-symbol ; ------------------------------------------------------------ revno: 116291 committer: Paul Eggert branch nick: trunk timestamp: Thu 2014-02-06 10:29:57 -0800 message: Spelling fix. diff: === modified file 'src/keyboard.c' --- src/keyboard.c 2014-02-04 11:40:31 +0000 +++ src/keyboard.c 2014-02-06 18:29:57 +0000 @@ -1991,7 +1991,7 @@ been turned off in process.c. */ turn_on_atimers (1); - /* If poll timer doesn't exist, are we need one with + /* If poll timer doesn't exist, or we need one with a different interval, start a new one. */ if (poll_timer == NULL || poll_timer->interval.tv_sec != polling_period) ------------------------------------------------------------ revno: 116290 committer: Eli Zaretskii branch nick: trunk timestamp: Thu 2014-02-06 17:27:46 +0200 message: Another fix for handling of file names on Windows 9X. src/w32.c (pMultiByteToWideChar, pWideCharToMultiByte): New variables: pointers through which to call the respective APIs. (filename_to_utf16, filename_from_utf16, filename_to_ansi) (filename_from_ansi, sys_link, check_windows_init_file): Call MultiByteToWideChar and WideCharToMultiByte through pointers. This is required on Windows 9X, where we dynamically load UNICOWS.DLL which has their non-stub implementations. (maybe_load_unicows_dll): Assign addresses to these 2 function pointers after loading UNICOWS.DLL. src/w32fns.c (Fx_file_dialog, Fw32_shell_execute) [!CYGWIN]: Call MultiByteToWideChar and WideCharToMultiByte through function pointers. src/w32.h (pMultiByteToWideChar, pWideCharToMultiByte): New declarations. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2014-02-06 07:57:53 +0000 +++ src/ChangeLog 2014-02-06 15:27:46 +0000 @@ -1,3 +1,22 @@ +2014-02-06 Eli Zaretskii + + * w32.c (pMultiByteToWideChar, pWideCharToMultiByte): New + variables: pointers through which to call the respective APIs. + (filename_to_utf16, filename_from_utf16, filename_to_ansi) + (filename_from_ansi, sys_link, check_windows_init_file): Call + MultiByteToWideChar and WideCharToMultiByte through pointers. + This is required on Windows 9X, where we dynamically load + UNICOWS.DLL which has their non-stub implementations. + (maybe_load_unicows_dll): Assign addresses to these 2 function + pointers after loading UNICOWS.DLL. + + * w32fns.c (Fx_file_dialog, Fw32_shell_execute) [!CYGWIN]: Call + MultiByteToWideChar and WideCharToMultiByte through function + pointers. + + * w32.h (pMultiByteToWideChar, pWideCharToMultiByte): New + declarations. + 2014-02-06 Jan Djärv * nsterm.m (toggleFullScreen:): Hide menubar on secondary monitor === modified file 'src/w32.c' --- src/w32.c 2014-02-05 17:33:43 +0000 +++ src/w32.c 2014-02-06 15:27:46 +0000 @@ -478,6 +478,9 @@ PIP_ADAPTER_INFO pAdapterInfo, PULONG pOutBufLen); +int (WINAPI *pMultiByteToWideChar)(UINT,DWORD,LPCSTR,int,LPWSTR,int); +int (WINAPI *pWideCharToMultiByte)(UINT,DWORD,LPCWSTR,int,LPSTR,int,LPCSTR,LPBOOL); + /* ** A utility function ** */ static BOOL is_windows_9x (void) @@ -1543,8 +1546,8 @@ int filename_to_utf16 (const char *fn_in, wchar_t *fn_out) { - int result = MultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, fn_in, -1, - fn_out, MAX_PATH); + int result = pMultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, fn_in, -1, + fn_out, MAX_PATH); if (!result) { @@ -1570,8 +1573,8 @@ int filename_from_utf16 (const wchar_t *fn_in, char *fn_out) { - int result = WideCharToMultiByte (CP_UTF8, 0, fn_in, -1, - fn_out, MAX_UTF8_PATH, NULL, NULL); + int result = pWideCharToMultiByte (CP_UTF8, 0, fn_in, -1, + fn_out, MAX_UTF8_PATH, NULL, NULL); if (!result) { @@ -1604,8 +1607,8 @@ int result; int codepage = codepage_for_filenames (NULL); - result = WideCharToMultiByte (codepage, 0, fn_utf16, -1, - fn_out, MAX_PATH, NULL, NULL); + result = pWideCharToMultiByte (codepage, 0, fn_utf16, -1, + fn_out, MAX_PATH, NULL, NULL); if (!result) { DWORD err = GetLastError (); @@ -1634,8 +1637,8 @@ { wchar_t fn_utf16[MAX_PATH]; int codepage = codepage_for_filenames (NULL); - int result = MultiByteToWideChar (codepage, MB_ERR_INVALID_CHARS, fn_in, -1, - fn_utf16, MAX_PATH); + int result = pMultiByteToWideChar (codepage, MB_ERR_INVALID_CHARS, fn_in, -1, + fn_utf16, MAX_PATH); if (!result) { @@ -4033,8 +4036,8 @@ /* We used to pass MB_PRECOMPOSED as the 2nd arg here, but MSDN indicates that flag is unsupported for CP_UTF8, and OTOH says it is the default anyway. */ - wlen = MultiByteToWideChar (CP_UTF8, 0, newname, -1, - data.wid.cStreamName, MAX_PATH); + wlen = pMultiByteToWideChar (CP_UTF8, 0, newname, -1, + data.wid.cStreamName, MAX_PATH); if (wlen > 0) { LPVOID context = NULL; @@ -8749,22 +8752,22 @@ "not unpacked properly.\nSee the README.W32 file in the " "top-level Emacs directory for more information.", init_file_name, load_path); - needed = MultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, buffer, - -1, NULL, 0); + needed = pMultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, buffer, + -1, NULL, 0); if (needed > 0) { wchar_t *msg_w = alloca ((needed + 1) * sizeof (wchar_t)); - MultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, buffer, -1, - msg_w, needed); - needed = WideCharToMultiByte (CP_ACP, 0, msg_w, -1, - NULL, 0, NULL, NULL); + pMultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, buffer, -1, + msg_w, needed); + needed = pWideCharToMultiByte (CP_ACP, 0, msg_w, -1, + NULL, 0, NULL, NULL); if (needed > 0) { char *msg_a = alloca (needed + 1); - WideCharToMultiByte (CP_ACP, 0, msg_w, -1, msg_a, needed, - NULL, NULL); + pWideCharToMultiByte (CP_ACP, 0, msg_w, -1, msg_a, needed, + NULL, NULL); msg = msg_a; } } @@ -8932,7 +8935,17 @@ { HANDLE ret = LoadLibrary ("Unicows.dll"); if (ret) - return ret; + { + /* These two functions are present on Windows 9X as stubs + that always fail. We need the real implementations from + UNICOWS.DLL, so we must call these functions through + pointers, and assign the correct addresses to these + pointers at program startup (see emacs.c, which calls + this function early on). */ + pMultiByteToWideChar = GetProcAddress (ret, "MultiByteToWideChar"); + pWideCharToMultiByte = GetProcAddress (ret, "WideCharToMultiByte"); + return ret; + } else { int button; @@ -8954,7 +8967,14 @@ } } else - return LoadLibrary ("Gdi32.dll"); + { + /* On NT family of Windows, these two functions are always + linked in, so we just assign their addresses to the 2 + pointers; no need for the LoadLibrary dance. */ + pMultiByteToWideChar = MultiByteToWideChar; + pWideCharToMultiByte = WideCharToMultiByte; + return LoadLibrary ("Gdi32.dll"); + } } /* === modified file 'src/w32.h' --- src/w32.h 2014-01-18 11:46:22 +0000 +++ src/w32.h 2014-02-06 15:27:46 +0000 @@ -175,6 +175,9 @@ extern Lisp_Object QCloaded_from; extern HMODULE w32_delayed_load (Lisp_Object); +extern int (WINAPI *pMultiByteToWideChar)(UINT,DWORD,LPCSTR,int,LPWSTR,int); +extern int (WINAPI *pWideCharToMultiByte)(UINT,DWORD,LPCWSTR,int,LPSTR,int,LPCSTR,LPBOOL); + extern void init_environment (char **); extern void check_windows_init_file (void); extern void syms_of_ntproc (void); === modified file 'src/w32fns.c' --- src/w32fns.c 2014-02-05 16:50:53 +0000 +++ src/w32fns.c 2014-02-06 15:27:46 +0000 @@ -6538,13 +6538,13 @@ if (errno == ENOENT && filename_buf_w[MAX_PATH - 1] != 0) report_file_error ("filename too long", default_filename); } - len = MultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, - SSDATA (prompt), -1, NULL, 0); + len = pMultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, + SSDATA (prompt), -1, NULL, 0); if (len > 32768) len = 32768; prompt_w = alloca (len * sizeof (wchar_t)); - MultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, - SSDATA (prompt), -1, prompt_w, len); + pMultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, + SSDATA (prompt), -1, prompt_w, len); } else { @@ -6556,18 +6556,18 @@ if (errno == ENOENT && filename_buf_a[MAX_PATH - 1] != 0) report_file_error ("filename too long", default_filename); } - len = MultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, - SSDATA (prompt), -1, NULL, 0); + len = pMultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, + SSDATA (prompt), -1, NULL, 0); if (len > 32768) len = 32768; prompt_w = alloca (len * sizeof (wchar_t)); - MultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, - SSDATA (prompt), -1, prompt_w, len); - len = WideCharToMultiByte (CP_ACP, 0, prompt_w, -1, NULL, 0, NULL, NULL); + pMultiByteToWideChar (CP_UTF8, MB_ERR_INVALID_CHARS, + SSDATA (prompt), -1, prompt_w, len); + len = pWideCharToMultiByte (CP_ACP, 0, prompt_w, -1, NULL, 0, NULL, NULL); if (len > 32768) len = 32768; prompt_a = alloca (len); - WideCharToMultiByte (CP_ACP, 0, prompt_w, -1, prompt_a, len, NULL, NULL); + pWideCharToMultiByte (CP_ACP, 0, prompt_w, -1, prompt_a, len, NULL, NULL); } #endif /* NTGUI_UNICODE */ @@ -6974,13 +6974,13 @@ int len; parameters = ENCODE_SYSTEM (parameters); - len = MultiByteToWideChar (CP_ACP, MB_ERR_INVALID_CHARS, - SSDATA (parameters), -1, NULL, 0); + len = pMultiByteToWideChar (CP_ACP, MB_ERR_INVALID_CHARS, + SSDATA (parameters), -1, NULL, 0); if (len > 32768) len = 32768; params_w = alloca (len * sizeof (wchar_t)); - MultiByteToWideChar (CP_ACP, MB_ERR_INVALID_CHARS, - SSDATA (parameters), -1, params_w, len); + pMultiByteToWideChar (CP_ACP, MB_ERR_INVALID_CHARS, + SSDATA (parameters), -1, params_w, len); } if (STRINGP (operation)) { ------------------------------------------------------------ revno: 116289 committer: Michael Albinus branch nick: trunk timestamp: Thu 2014-02-06 09:49:34 +0100 message: * net/tramp-sh.el (tramp-sh-handle-start-file-process): Use "&&" instead of ";" in order to avoid additional prompts. Let heredoc scripts read from tty. (Bug#16582) (tramp-send-command): No special handling of heredocs, it isn't necessary anymore. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2014-02-06 05:37:23 +0000 +++ lisp/ChangeLog 2014-02-06 08:49:34 +0000 @@ -1,3 +1,11 @@ +2014-02-06 Michael Albinus + + * net/tramp-sh.el (tramp-sh-handle-start-file-process): Use "&&" + instead of ";" in order to avoid additional prompts. Let heredoc + scripts read from tty. (Bug#16582) + (tramp-send-command): No special handling of heredocs, it isn't + necessary anymore. + 2014-02-06 Stefan Monnier * emacs-lisp/lisp.el (lisp-completion-at-point): Symbols don't start === modified file 'lisp/net/tramp-sh.el' --- lisp/net/tramp-sh.el 2014-02-05 14:11:50 +0000 +++ lisp/net/tramp-sh.el 2014-02-06 08:49:34 +0000 @@ -2711,7 +2711,7 @@ (cdr args))) (command (when (stringp program) - (format "cd %s; exec %s env PS1=%s %s" + (format "cd %s && exec %s env PS1=%s %s" (tramp-shell-quote-argument localname) (if heredoc (format "<<'%s'" tramp-end-of-heredoc) "") ;; Use a human-friendly prompt, for example for `shell'. @@ -2720,7 +2720,7 @@ (file-remote-p default-directory) tramp-initial-end-of-output)) (if heredoc - (format "%s\n%s\n%s" + (format "%s\n(\n%s\n)