Now on revision 107904. ------------------------------------------------------------ revno: 107904 committer: Leo Liu branch nick: trunk timestamp: Sat 2012-04-14 14:28:57 +0800 message: * lisp/vc/diff-mode.el (diff-file-prev/next): Fix typo. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-04-14 05:10:55 +0000 +++ lisp/ChangeLog 2012-04-14 06:28:57 +0000 @@ -1,3 +1,7 @@ +2012-04-14 Leo Liu + + * vc/diff-mode.el (diff-file-prev/next): Fix typo. + 2012-04-14 Paul Eggert Spelling fixes. === modified file 'lisp/vc/diff-mode.el' --- lisp/vc/diff-mode.el 2012-02-28 08:17:21 +0000 +++ lisp/vc/diff-mode.el 2012-04-14 06:28:57 +0000 @@ -545,7 +545,7 @@ (condition-case-unless-debug nil (diff-refine-hunk) (error nil)))) (easy-mmode-define-navigation - diff-file diff-file-header-re "file" diff-end-of-hunk) + diff-file diff-file-header-re "file" diff-end-of-file) (defun diff-restrict-view (&optional arg) "Restrict the view to the current hunk. ------------------------------------------------------------ revno: 107903 committer: Paul Eggert branch nick: trunk timestamp: Fri 2012-04-13 23:18:49 -0700 message: Make GC_MAKE_GCPROS_NOOPS the default (Bug#9926). * lisp.h (GC_MARK_STACK): Default to GC_MAKE_GCPROS_NOOPS. * s/cygwin.h, s/darwin.h, s/freebsd.h, s/gnu.h, s/irix6-5.h, s/msdos.h: * s/netbsd.h, s/sol2-6.h: Remove definition of GC_MARK_STACK, since the default now works. * s/aix4-2.h, s/hpux10-20.h, s/unixware.h: Define GC_MARK_STACK to GC_USE_GCPROS_AS_BEFORE, since that's no longer the default. * s/gnu-linux.h (GC_MARK_STACK): Adjust to change in default. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2012-04-14 01:46:06 +0000 +++ src/ChangeLog 2012-04-14 06:18:49 +0000 @@ -1,3 +1,15 @@ +2012-04-14 Paul Eggert + + Make GC_MAKE_GCPROS_NOOPS the default (Bug#9926). + * lisp.h (GC_MARK_STACK): Default to GC_MAKE_GCPROS_NOOPS. + * s/cygwin.h, s/darwin.h, s/freebsd.h, s/gnu.h, s/irix6-5.h, s/msdos.h: + * s/netbsd.h, s/sol2-6.h: + Remove definition of GC_MARK_STACK, since the default now works. + * s/aix4-2.h, s/hpux10-20.h, s/unixware.h: + Define GC_MARK_STACK to GC_USE_GCPROS_AS_BEFORE, since that's + no longer the default. + * s/gnu-linux.h (GC_MARK_STACK): Adjust to change in default. + 2012-04-14 Atsuo Ohki (tiny change) * lread.c (lisp_file_lexically_bound_p): === modified file 'src/lisp.h' --- src/lisp.h 2012-04-08 21:14:30 +0000 +++ src/lisp.h 2012-04-14 06:18:49 +0000 @@ -2221,7 +2221,7 @@ #define GC_USE_GCPROS_CHECK_ZOMBIES 3 #ifndef GC_MARK_STACK -#define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE +#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS #endif /* Whether we do the stack marking manually. */ === modified file 'src/s/aix4-2.h' --- src/s/aix4-2.h 2012-01-19 07:21:25 +0000 +++ src/s/aix4-2.h 2012-04-14 06:18:49 +0000 @@ -75,3 +75,7 @@ Emacs currently calls xrealloc on the results of get_current_dir name, to avoid a crash just use the Emacs implementation for that function. */ #define BROKEN_GET_CURRENT_DIR_NAME 1 + +/* Conservative garbage collection has not been tested, so for now + play it safe and stick with the old-fashioned way of marking. */ +#define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE === modified file 'src/s/cygwin.h' --- src/s/cygwin.h 2012-04-13 14:50:25 +0000 +++ src/s/cygwin.h 2012-04-14 06:18:49 +0000 @@ -82,12 +82,6 @@ #define HAVE_SOCKETS -/* This should work (at least when compiling with gcc). But I have no way - or intention to verify or even test it. If you encounter a problem with - it, feel free to change this setting, but please add a comment here about - why it needed to be changed. */ -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS - /* Emacs supplies its own malloc, but glib (part of Gtk+) calls memalign and on Cygwin, that becomes the Cygwin-supplied memalign. As malloc is not the Cygwin malloc, the Cygwin memalign always === modified file 'src/s/darwin.h' --- src/s/darwin.h 2012-01-19 07:21:25 +0000 +++ src/s/darwin.h 2012-04-14 06:18:49 +0000 @@ -145,6 +145,3 @@ It is already a controlling terminal of subprocess, because we did ioctl TIOCSCTTY. */ #define DONT_REOPEN_PTY - -/* Use the GC_MAKE_GCPROS_NOOPS (see lisp.h) method for marking the stack. */ -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS === modified file 'src/s/freebsd.h' --- src/s/freebsd.h 2012-01-19 07:21:25 +0000 +++ src/s/freebsd.h 2012-04-14 06:18:49 +0000 @@ -58,6 +58,3 @@ /* Tell that garbage collector that setjmp is known to save all registers relevant for conservative garbage collection in the jmp_buf. */ #define GC_SETJMP_WORKS 1 - -/* Use the GC_MAKE_GCPROS_NOOPS (see lisp.h) method for marking the stack. */ -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS === modified file 'src/s/gnu-linux.h' --- src/s/gnu-linux.h 2012-04-07 19:18:52 +0000 +++ src/s/gnu-linux.h 2012-04-14 06:18:49 +0000 @@ -145,7 +145,6 @@ || defined __arm__ || defined __powerpc__ || defined __amd64__ \ || defined __ia64__ || defined __sh__ #define GC_SETJMP_WORKS 1 -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS #ifdef __ia64__ #define GC_MARK_SECONDARY_STACK() \ do { \ @@ -155,4 +154,6 @@ __builtin_ia64_bsp ()); \ } while (0) #endif +#else +#define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE #endif === modified file 'src/s/gnu.h' --- src/s/gnu.h 2012-01-28 03:11:41 +0000 +++ src/s/gnu.h 2012-04-14 06:18:49 +0000 @@ -45,6 +45,3 @@ #endif /* emacs */ #define POSIX_SIGNALS 1 - -/* Use the GC_MAKE_GCPROS_NOOPS (see lisp.h) method for marking the stack. */ -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS === modified file 'src/s/hpux10-20.h' --- src/s/hpux10-20.h 2012-01-19 07:21:25 +0000 +++ src/s/hpux10-20.h 2012-04-14 06:18:49 +0000 @@ -100,6 +100,10 @@ header sections which lose when `static' is defined away, as it is on HP-UX. (You get duplicate symbol errors on linking). */ #undef _FILE_OFFSET_BITS + +/* Conservative garbage collection has not been tested, so for now + play it safe and stick with the old-fashioned way of marking. */ +#define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE /* The data segment on this machine always starts at address 0x40000000. */ #define DATA_SEG_BITS 0x40000000 === modified file 'src/s/irix6-5.h' --- src/s/irix6-5.h 2012-01-19 07:21:25 +0000 +++ src/s/irix6-5.h 2012-04-14 06:18:49 +0000 @@ -95,7 +95,6 @@ /* Tested on Irix 6.5. SCM worked on earlier versions. */ #define GC_SETJMP_WORKS 1 -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS /* DATA_SEG_BITS forces extra bits to be or'd in with any pointers which === modified file 'src/s/msdos.h' --- src/s/msdos.h 2012-01-19 07:21:25 +0000 +++ src/s/msdos.h 2012-04-14 06:18:49 +0000 @@ -137,4 +137,3 @@ /* Tell the garbage collector that setjmp is known to save all registers relevant for conservative garbage collection in the jmp_buf. */ #define GC_SETJMP_WORKS 1 -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS === modified file 'src/s/netbsd.h' --- src/s/netbsd.h 2012-01-19 07:21:25 +0000 +++ src/s/netbsd.h 2012-04-14 06:18:49 +0000 @@ -38,6 +38,3 @@ /* Tell that garbage collector that setjmp is known to save all registers relevant for conservative garbage collection in the jmp_buf. */ #define GC_SETJMP_WORKS 1 - -/* Use the GC_MAKE_GCPROS_NOOPS (see lisp.h) method. */ -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS === modified file 'src/s/sol2-6.h' --- src/s/sol2-6.h 2012-01-05 09:46:05 +0000 +++ src/s/sol2-6.h 2012-04-14 06:18:49 +0000 @@ -59,4 +59,3 @@ } #define GC_SETJMP_WORKS 1 -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS === modified file 'src/s/unixware.h' --- src/s/unixware.h 2012-01-05 09:46:05 +0000 +++ src/s/unixware.h 2012-04-14 06:18:49 +0000 @@ -50,3 +50,7 @@ } #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->__ptr - (FILE)->__base) + +/* Conservative garbage collection has not been tested, so for now + play it safe and stick with the old-fashioned way of marking. */ +#define GC_MARK_STACK GC_USE_GCPROS_AS_BEFORE ------------------------------------------------------------ revno: 107902 committer: Paul Eggert branch nick: trunk timestamp: Fri 2012-04-13 22:10:55 -0700 message: Spelling fixes. * lisp/hexl.el (hexl-rulerize): Rename from hexl-rulerise, since Emacs uses American spelling. diff: === modified file 'etc/publicsuffix.txt' --- etc/publicsuffix.txt 2012-04-10 01:57:45 +0000 +++ etc/publicsuffix.txt 2012-04-14 05:10:55 +0000 @@ -3601,7 +3601,7 @@ 6bone.pl art.pl mbone.pl -// Government domains (administred by ippt.gov.pl) +// Government domains (administered by ippt.gov.pl) gov.pl uw.gov.pl um.gov.pl === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-04-14 03:11:18 +0000 +++ lisp/ChangeLog 2012-04-14 05:10:55 +0000 @@ -1,3 +1,9 @@ +2012-04-14 Paul Eggert + + Spelling fixes. + * hexl.el (hexl-rulerize): Rename from hexl-rulerise, since + Emacs uses American spelling. + 2012-04-14 Juanma Barranquero * emacs-lock.el (emacs-lock-locked-buffer-functions): New hook. === modified file 'lisp/hexl.el' --- lisp/hexl.el 2012-04-13 22:31:23 +0000 +++ lisp/hexl.el 2012-04-14 05:10:55 +0000 @@ -222,7 +222,7 @@ (2 'hexl-ascii-region t t))) "Font lock keywords used in `hexl-mode'.") -(defun hexl-rulerise (string bits) +(defun hexl-rulerize (string bits) (let ((size (/ bits 4)) (strlen (length string)) (pos 0) (ruler "")) (while (< pos strlen) (setq ruler (concat ruler " " (substring string pos (+ pos size)))) @@ -234,7 +234,7 @@ (lambda (bits) (cons bits (concat " 87654321 " - (hexl-rulerise "00112233445566778899aabbccddeeff" bits) + (hexl-rulerize "00112233445566778899aabbccddeeff" bits) " 0123456789abcdef"))) '(8 16 32 64))) ;; routines === modified file 'src/character.h' --- src/character.h 2012-04-06 13:10:30 +0000 +++ src/character.h 2012-04-14 05:10:55 +0000 @@ -316,7 +316,7 @@ Note: This macro returns the actual length of the character's multibyte sequence as it is stored in a buffer or string. The character it returns might have a different codepoint that has a - different multibyte sequence of a different legth, due to possible + different multibyte sequence of a different length, due to possible unification of CJK characters inside string_char. Therefore do NOT assume that the length returned by this macro is identical to the length of the multibyte sequence of the character it returns. */ ------------------------------------------------------------ revno: 107901 fixes bug(s): http://debbugs.gnu.org/11017 committer: Juanma Barranquero branch nick: trunk timestamp: Sat 2012-04-14 05:11:18 +0200 message: * lisp/emacs-lock.el (emacs-lock-locked-buffer-functions): New hook. (emacs-lock--exit-locked-buffer): Return the locked buffer. Doc fix. (emacs-lock--kill-emacs-hook, emacs-lock--kill-emacs-query-functions) (emacs-lock--kill-buffer-query-functions): Run new hook. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-04-14 02:31:50 +0000 +++ lisp/ChangeLog 2012-04-14 03:11:18 +0000 @@ -1,3 +1,10 @@ +2012-04-14 Juanma Barranquero + + * emacs-lock.el (emacs-lock-locked-buffer-functions): New hook. + (emacs-lock--exit-locked-buffer): Return the locked buffer. Doc fix. + (emacs-lock--kill-emacs-hook, emacs-lock--kill-emacs-query-functions) + (emacs-lock--kill-buffer-query-functions): Run new hook. (Bug#11017) + 2012-04-14 Stefan Monnier * progmodes/which-func.el (which-func-modes): Change default. === modified file 'lisp/emacs-lock.el' --- lisp/emacs-lock.el 2012-01-11 07:48:55 +0000 +++ lisp/emacs-lock.el 2012-04-14 03:11:18 +0000 @@ -81,6 +81,13 @@ :group 'emacs-lock :version "24.1") +(defcustom emacs-lock-locked-buffer-functions nil + "Abnormal hook run when Emacs Lock prevents exiting Emacs, or killing a buffer. +The functions get one argument, the first locked buffer found." + :type 'hook + :group 'emacs-lock + :version "24.2") + (defvar emacs-lock-mode nil "If non-nil, the current buffer is locked. It can be one of the following values: @@ -119,40 +126,45 @@ (or (eq unlock 'all) (eq unlock action)))))) (defun emacs-lock--exit-locked-buffer () - "Return the name of the first exit-locked buffer found." + "Return the first exit-locked buffer found." (save-current-buffer (catch :found (dolist (buffer (buffer-list)) (set-buffer buffer) (unless (or (emacs-lock--can-auto-unlock 'exit) (memq emacs-lock-mode '(nil kill))) - (throw :found (buffer-name)))) + (throw :found buffer))) nil))) (defun emacs-lock--kill-emacs-hook () "Signal an error if any buffer is exit-locked. Used from `kill-emacs-hook' (which see)." - (let ((buffer-name (emacs-lock--exit-locked-buffer))) - (when buffer-name - (error "Emacs cannot exit because buffer %S is locked" buffer-name)))) + (let ((locked (emacs-lock--exit-locked-buffer))) + (when locked + (run-hook-with-args 'emacs-lock-locked-buffer-functions locked) + (error "Emacs cannot exit because buffer %S is locked" + (buffer-name locked))))) (defun emacs-lock--kill-emacs-query-functions () "Display a message if any buffer is exit-locked. Return a value appropriate for `kill-emacs-query-functions' (which see)." (let ((locked (emacs-lock--exit-locked-buffer))) - (or (not locked) - (progn - (message "Emacs cannot exit because buffer %S is locked" locked) - nil)))) + (if (not locked) + t + (run-hook-with-args 'emacs-lock-locked-buffer-functions locked) + (message "Emacs cannot exit because buffer %S is locked" + (buffer-name locked)) + nil))) (defun emacs-lock--kill-buffer-query-functions () "Display a message if the current buffer is kill-locked. Return a value appropriate for `kill-buffer-query-functions' (which see)." - (or (emacs-lock--can-auto-unlock 'kill) - (memq emacs-lock-mode '(nil exit)) - (progn - (message "Buffer %S is locked and cannot be killed" (buffer-name)) - nil))) + (if (or (emacs-lock--can-auto-unlock 'kill) + (memq emacs-lock-mode '(nil exit))) + t + (run-hook-with-args 'emacs-lock-locked-buffer-functions (current-buffer)) + (message "Buffer %S is locked and cannot be killed" (buffer-name)) + nil)) (defun emacs-lock--set-mode (mode arg) "Setter function for `emacs-lock-mode'." ------------------------------------------------------------ revno: 107900 committer: Stefan Monnier branch nick: trunk timestamp: Fri 2012-04-13 22:31:50 -0400 message: * lisp/progmodes/which-func.el (which-func-modes): Change default. diff: === modified file 'etc/NEWS' --- etc/NEWS 2012-04-13 21:43:03 +0000 +++ etc/NEWS 2012-04-14 02:31:50 +0000 @@ -50,6 +50,8 @@ * Changes in Specialized Modes and Packages in Emacs 24.2 +** which-function-mode now applies to all applicable major modes by default. + ** erc will look up server/channel names via auth-source and use the channel keys found, if any. === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-04-14 01:46:06 +0000 +++ lisp/ChangeLog 2012-04-14 02:31:50 +0000 @@ -1,3 +1,7 @@ +2012-04-14 Stefan Monnier + + * progmodes/which-func.el (which-func-modes): Change default. + 2012-04-14 Kim F. Storm * emulation/cua-base.el (cua-exchange-point-and-mark): Just call @@ -94,8 +98,7 @@ 2012-04-13 Ken Brown * net/browse-url.el (browse-url-file-url): Remove Cygwin hack; - this is no longer needed now that cygstart understands file:// - URLs. + this is no longer needed now that cygstart understands file:// URLs. (browse-url-filename-alist): For the same reason, don't modify file:// URLs on Cygwin. === modified file 'lisp/progmodes/which-func.el' --- lisp/progmodes/which-func.el 2012-04-14 01:33:08 +0000 +++ lisp/progmodes/which-func.el 2012-04-14 02:31:50 +0000 @@ -72,10 +72,10 @@ :group 'tools :version "20.3") -(defcustom which-func-modes - '(emacs-lisp-mode c-mode c++-mode objc-mode perl-mode cperl-mode python-mode - makefile-mode sh-mode fortran-mode f90-mode ada-mode - diff-mode) +(defcustom which-func-modes t + ;; '(emacs-lisp-mode c-mode c++-mode objc-mode perl-mode cperl-mode python-mode + ;; makefile-mode sh-mode fortran-mode f90-mode ada-mode + ;; diff-mode) "List of major modes for which Which Function mode should be used. For other modes it is disabled. If this is equal to t, then Which Function mode is enabled in any major mode that supports it." ------------------------------------------------------------ revno: 107899 committer: Glenn Morris branch nick: trunk timestamp: Fri 2012-04-13 18:59:01 -0700 message: Remove unnecessary @setfilename commands from many doc/lispref/*.texi diff: === modified file 'doc/lispref/abbrevs.texi' --- doc/lispref/abbrevs.texi 2012-03-04 02:45:04 +0000 +++ doc/lispref/abbrevs.texi 2012-04-14 01:59:01 +0000 @@ -2,7 +2,6 @@ @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1990-1994, 1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/abbrevs @node Abbrevs, Processes, Syntax Tables, Top @chapter Abbrevs and Abbrev Expansion @cindex abbrev === modified file 'doc/lispref/advice.texi' --- doc/lispref/advice.texi 2012-02-28 08:17:21 +0000 +++ doc/lispref/advice.texi 2012-04-14 01:59:01 +0000 @@ -2,7 +2,6 @@ @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1998-1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/advising @node Advising Functions, Debugging, Byte Compilation, Top @chapter Advising Emacs Lisp Functions @cindex advising functions === modified file 'doc/lispref/backups.texi' --- doc/lispref/backups.texi 2012-03-02 03:00:15 +0000 +++ doc/lispref/backups.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1999, 2001-2012 Free Software Foundation, Inc. +@c Copyright (C) 1990-1995, 1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/backups @node Backups and Auto-Saving, Buffers, Files, Top @chapter Backups and Auto-Saving @cindex backups and auto-saving === modified file 'doc/lispref/buffers.texi' --- doc/lispref/buffers.texi 2012-04-10 07:11:23 +0000 +++ doc/lispref/buffers.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/buffers @node Buffers, Windows, Backups and Auto-Saving, Top @chapter Buffers @cindex buffer === modified file 'doc/lispref/commands.texi' --- doc/lispref/commands.texi 2012-04-09 12:36:01 +0000 +++ doc/lispref/commands.texi 2012-04-14 01:59:01 +0000 @@ -2,7 +2,6 @@ @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/commands @node Command Loop, Keymaps, Minibuffers, Top @chapter Command Loop @cindex editor command loop === modified file 'doc/lispref/compile.texi' --- doc/lispref/compile.texi 2012-04-10 07:11:23 +0000 +++ doc/lispref/compile.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1994, 2001-2012 Free Software Foundation, Inc. +@c Copyright (C) 1990-1994, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/compile @node Byte Compilation, Advising Functions, Loading, Top @chapter Byte Compilation @cindex byte compilation === modified file 'doc/lispref/control.texi' --- doc/lispref/control.texi 2012-02-25 20:59:46 +0000 +++ doc/lispref/control.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2012 Free Software Foundation, Inc. +@c Copyright (C) 1990-1995, 1998-1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/control @node Control Structures, Variables, Evaluation, Top @chapter Control Structures @cindex special forms for control structures === modified file 'doc/lispref/customize.texi' --- doc/lispref/customize.texi 2012-04-14 01:46:06 +0000 +++ doc/lispref/customize.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1997-2012 Free Software Foundation, Inc. +@c Copyright (C) 1997-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/customize @node Customization, Loading, Macros, Top @chapter Customization Settings === modified file 'doc/lispref/debugging.texi' --- doc/lispref/debugging.texi 2012-04-10 07:11:23 +0000 +++ doc/lispref/debugging.texi 2012-04-14 01:59:01 +0000 @@ -2,7 +2,6 @@ @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1990-1994, 1998-1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/debugging @node Debugging, Read and Print, Advising Functions, Top @chapter Debugging Lisp Programs === modified file 'doc/lispref/display.texi' --- doc/lispref/display.texi 2012-04-12 14:50:58 +0000 +++ doc/lispref/display.texi 2012-04-14 01:59:01 +0000 @@ -2,7 +2,6 @@ @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1990-1995, 1998-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/display @node Display, System Interface, Processes, Top @chapter Emacs Display === modified file 'doc/lispref/errors.texi' --- doc/lispref/errors.texi 2012-02-28 04:17:02 +0000 +++ doc/lispref/errors.texi 2012-04-14 01:59:01 +0000 @@ -2,7 +2,6 @@ @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1990-1993, 1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/errors @node Standard Errors, Standard Keymaps, GNU Emacs Internals, Top @appendix Standard Errors @cindex standard errors === modified file 'doc/lispref/eval.texi' --- doc/lispref/eval.texi 2012-04-10 07:11:23 +0000 +++ doc/lispref/eval.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1994, 1998, 2001-2012 Free Software Foundation, Inc. +@c Copyright (C) 1990-1994, 1998, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/eval @node Evaluation, Control Structures, Symbols, Top @chapter Evaluation @cindex evaluation === modified file 'doc/lispref/files.texi' --- doc/lispref/files.texi 2012-04-08 02:07:16 +0000 +++ doc/lispref/files.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/files @node Files, Backups and Auto-Saving, Documentation, Top @comment node-name, next, previous, up @chapter Files === modified file 'doc/lispref/frames.texi' --- doc/lispref/frames.texi 2012-04-08 02:07:16 +0000 +++ doc/lispref/frames.texi 2012-04-14 01:59:01 +0000 @@ -2,7 +2,6 @@ @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/frames @node Frames, Positions, Windows, Top @chapter Frames @cindex frame === modified file 'doc/lispref/functions.texi' --- doc/lispref/functions.texi 2012-02-04 14:56:32 +0000 +++ doc/lispref/functions.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/functions @node Functions, Macros, Variables, Top @chapter Functions === modified file 'doc/lispref/gpl.texi' --- doc/lispref/gpl.texi 2011-01-15 23:16:57 +0000 +++ doc/lispref/gpl.texi 2012-04-14 01:59:01 +0000 @@ -1,5 +1,4 @@ @c -*-texinfo-*- -@setfilename ../../info/gpl @node GPL, Tips, GNU Free Documentation License, Top @comment node-name, next, previous, up === modified file 'doc/lispref/hash.texi' --- doc/lispref/hash.texi 2012-01-19 07:21:25 +0000 +++ doc/lispref/hash.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1999, 2001-2012 Free Software Foundation, Inc. +@c Copyright (C) 1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/hash @node Hash Tables, Symbols, Sequences Arrays Vectors, Top @chapter Hash Tables @cindex hash tables === modified file 'doc/lispref/help.texi' --- doc/lispref/help.texi 2012-04-14 01:46:06 +0000 +++ doc/lispref/help.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/help @node Documentation, Files, Modes, Top @chapter Documentation @cindex documentation strings === modified file 'doc/lispref/hooks.texi' --- doc/lispref/hooks.texi 2012-03-02 02:52:40 +0000 +++ doc/lispref/hooks.texi 2012-04-14 01:59:01 +0000 @@ -2,7 +2,6 @@ @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1990-1993, 1998, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/hooks @node Standard Hooks, Index, Standard Keymaps, Top @appendix Standard Hooks @cindex standard hooks === modified file 'doc/lispref/index.texi' --- doc/lispref/index.texi 2007-09-06 04:27:43 +0000 +++ doc/lispref/index.texi 2012-04-14 01:59:01 +0000 @@ -1,5 +1,4 @@ @c -*-texinfo-*- -@setfilename ../../info/index @c Indexing guidelines === modified file 'doc/lispref/internals.texi' --- doc/lispref/internals.texi 2012-03-18 15:02:12 +0000 +++ doc/lispref/internals.texi 2012-04-14 01:59:01 +0000 @@ -2,7 +2,6 @@ @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1990-1993, 1998-1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/internals @node GNU Emacs Internals, Standard Errors, Tips, Top @comment node-name, next, previous, up @appendix GNU Emacs Internals === modified file 'doc/lispref/intro.texi' --- doc/lispref/intro.texi 2012-04-10 07:11:23 +0000 +++ doc/lispref/intro.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-coding: iso-latin-1-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1994, 2001-2012 Free Software Foundation, Inc. +@c Copyright (C) 1990-1994, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/intro @node Introduction, Lisp Data Types, Top, Top @comment node-name, next, previous, up === modified file 'doc/lispref/keymaps.texi' --- doc/lispref/keymaps.texi 2012-04-10 07:34:53 +0000 +++ doc/lispref/keymaps.texi 2012-04-14 01:59:01 +0000 @@ -2,7 +2,6 @@ @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1990-1994, 1998-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/keymaps @node Keymaps, Modes, Command Loop, Top @chapter Keymaps @cindex keymap === modified file 'doc/lispref/lists.texi' --- doc/lispref/lists.texi 2012-01-23 04:23:50 +0000 +++ doc/lispref/lists.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2012 Free Software Foundation, Inc. +@c Copyright (C) 1990-1995, 1998-1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/lists @node Lists, Sequences Arrays Vectors, Strings and Characters, Top @chapter Lists @cindex lists === modified file 'doc/lispref/loading.texi' --- doc/lispref/loading.texi 2012-04-12 01:09:15 +0000 +++ doc/lispref/loading.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/loading @node Loading, Byte Compilation, Customization, Top @chapter Loading @cindex loading === modified file 'doc/lispref/macros.texi' --- doc/lispref/macros.texi 2012-02-19 05:54:33 +0000 +++ doc/lispref/macros.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998, 2001-2012 Free Software Foundation, Inc. +@c Copyright (C) 1990-1995, 1998, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/macros @node Macros, Customization, Functions, Top @chapter Macros @cindex macros === modified file 'doc/lispref/maps.texi' --- doc/lispref/maps.texi 2012-03-01 07:29:48 +0000 +++ doc/lispref/maps.texi 2012-04-14 01:59:01 +0000 @@ -2,7 +2,6 @@ @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1990-1993, 1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/maps @node Standard Keymaps, Standard Hooks, Standard Errors, Top @appendix Standard Keymaps @cindex keymaps, standard === modified file 'doc/lispref/markers.texi' --- doc/lispref/markers.texi 2012-03-07 08:33:11 +0000 +++ doc/lispref/markers.texi 2012-04-14 01:59:01 +0000 @@ -2,7 +2,6 @@ @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/markers @node Markers, Text, Positions, Top @chapter Markers @cindex markers === modified file 'doc/lispref/minibuf.texi' --- doc/lispref/minibuf.texi 2012-04-14 01:46:06 +0000 +++ doc/lispref/minibuf.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/minibuf @node Minibuffers, Command Loop, Read and Print, Top @chapter Minibuffers @cindex arguments, reading === modified file 'doc/lispref/modes.texi' --- doc/lispref/modes.texi 2012-04-12 14:50:58 +0000 +++ doc/lispref/modes.texi 2012-04-14 01:59:01 +0000 @@ -2,7 +2,6 @@ @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/modes @node Modes, Documentation, Keymaps, Top @chapter Major and Minor Modes @cindex mode === modified file 'doc/lispref/nonascii.texi' --- doc/lispref/nonascii.texi 2012-03-10 03:27:10 +0000 +++ doc/lispref/nonascii.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1998-1999, 2001-2012 Free Software Foundation, Inc. +@c Copyright (C) 1998-1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/characters @node Non-ASCII Characters, Searching and Matching, Text, Top @chapter Non-@acronym{ASCII} Characters @cindex multibyte characters === modified file 'doc/lispref/numbers.texi' --- doc/lispref/numbers.texi 2012-01-31 01:15:56 +0000 +++ doc/lispref/numbers.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/numbers @node Numbers, Strings and Characters, Lisp Data Types, Top @chapter Numbers @cindex integers === modified file 'doc/lispref/objects.texi' --- doc/lispref/objects.texi 2012-04-10 07:34:53 +0000 +++ doc/lispref/objects.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/objects @node Lisp Data Types, Numbers, Introduction, Top @chapter Lisp Data Types @cindex object === modified file 'doc/lispref/os.texi' --- doc/lispref/os.texi 2012-04-12 14:50:58 +0000 +++ doc/lispref/os.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/os @node System Interface, Packaging, Display, Top @chapter Operating System Interface === modified file 'doc/lispref/package.texi' --- doc/lispref/package.texi 2012-03-17 11:11:08 +0000 +++ doc/lispref/package.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 2010-2012 Free Software Foundation, Inc. +@c Copyright (C) 2010-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/package @node Packaging, Antinews, System Interface, Top @chapter Preparing Lisp code for distribution @cindex package === modified file 'doc/lispref/positions.texi' --- doc/lispref/positions.texi 2012-03-05 06:12:17 +0000 +++ doc/lispref/positions.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-2012 Free Software Foundation, Inc. +@c Copyright (C) 1990-1995, 1998-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/positions @node Positions, Markers, Frames, Top @chapter Positions @cindex position (in buffer) === modified file 'doc/lispref/processes.texi' --- doc/lispref/processes.texi 2012-04-14 01:46:06 +0000 +++ doc/lispref/processes.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/processes @node Processes, Display, Abbrevs, Top @chapter Processes @cindex child process === modified file 'doc/lispref/searching.texi' --- doc/lispref/searching.texi 2012-03-28 19:30:12 +0000 +++ doc/lispref/searching.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/searching @node Searching and Matching, Syntax Tables, Non-ASCII Characters, Top @chapter Searching and Matching @cindex searching === modified file 'doc/lispref/sequences.texi' --- doc/lispref/sequences.texi 2012-03-10 09:55:54 +0000 +++ doc/lispref/sequences.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/sequences @node Sequences Arrays Vectors, Hash Tables, Lists, Top @chapter Sequences, Arrays, and Vectors @cindex sequence === modified file 'doc/lispref/streams.texi' --- doc/lispref/streams.texi 2012-02-11 13:32:02 +0000 +++ doc/lispref/streams.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1994, 1998-1999, 2001-2012 Free Software Foundation, Inc. +@c Copyright (C) 1990-1994, 1998-1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/streams @node Read and Print, Minibuffers, Debugging, Top @comment node-name, next, previous, up @chapter Reading and Printing Lisp Objects === modified file 'doc/lispref/strings.texi' --- doc/lispref/strings.texi 2012-04-10 07:34:53 +0000 +++ doc/lispref/strings.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/strings @node Strings and Characters, Lists, Numbers, Top @comment node-name, next, previous, up @chapter Strings and Characters === modified file 'doc/lispref/symbols.texi' --- doc/lispref/symbols.texi 2012-01-23 04:23:50 +0000 +++ doc/lispref/symbols.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2012 Free Software Foundation, Inc. +@c Copyright (C) 1990-1995, 1998-1999, 2001-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/symbols @node Symbols, Evaluation, Hash Tables, Top @chapter Symbols @cindex symbol === modified file 'doc/lispref/syntax.texi' --- doc/lispref/syntax.texi 2012-02-17 14:01:05 +0000 +++ doc/lispref/syntax.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/syntax @node Syntax Tables, Abbrevs, Searching and Matching, Top @chapter Syntax Tables @cindex parsing buffer text === modified file 'doc/lispref/text.texi' --- doc/lispref/text.texi 2012-04-10 07:11:23 +0000 +++ doc/lispref/text.texi 2012-04-14 01:59:01 +0000 @@ -1,8 +1,7 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-2012 Free Software Foundation, Inc. +@c Copyright (C) 1990-1995, 1998-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/text @node Text, Non-ASCII Characters, Markers, Top @chapter Text @cindex text === modified file 'doc/lispref/tips.texi' --- doc/lispref/tips.texi 2012-03-03 01:29:55 +0000 +++ doc/lispref/tips.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1993, 1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/tips @node Tips, GNU Emacs Internals, GPL, Top @appendix Tips and Conventions @cindex tips for writing Lisp === modified file 'doc/lispref/variables.texi' --- doc/lispref/variables.texi 2012-02-28 08:17:21 +0000 +++ doc/lispref/variables.texi 2012-04-14 01:59:01 +0000 @@ -2,7 +2,6 @@ @c This is part of the GNU Emacs Lisp Reference Manual. @c Copyright (C) 1990-1995, 1998-2012 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/variables @node Variables, Functions, Control Structures, Top @chapter Variables @cindex variable === modified file 'doc/lispref/windows.texi' --- doc/lispref/windows.texi 2012-03-27 09:22:01 +0000 +++ doc/lispref/windows.texi 2012-04-14 01:59:01 +0000 @@ -3,7 +3,6 @@ @c Copyright (C) 1990-1995, 1998-1999, 2001-2012 @c Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. -@setfilename ../../info/windows @node Windows, Frames, Buffers, Top @chapter Windows ------------------------------------------------------------ revno: 107898 [merge] committer: Glenn Morris branch nick: trunk timestamp: Fri 2012-04-13 18:46:06 -0700 message: Merge from emacs-24, up to r107825 diff: === modified file 'doc/emacs/ChangeLog' --- doc/emacs/ChangeLog 2012-04-12 23:51:19 +0000 +++ doc/emacs/ChangeLog 2012-04-14 01:46:06 +0000 @@ -1,3 +1,47 @@ +2012-04-14 Glenn Morris + + * mule.texi (Select Input Method, Coding Systems, Recognize Coding): + Copyedits. + (Coding Systems): Mac OS X apparently uses newlines for EOL. + (Recognize Coding): Remove old auto-coding-regexp-alist example. + auto-coding-functions does not override coding: tags. + Remove rmail-decode-mime-charset; it no longer has any effect. + +2012-04-14 Chong Yidong + + * custom.texi (Creating Custom Themes): Add reference to Custom + Themes node in Lisp manual. + +2012-04-14 Glenn Morris + + * mule.texi (International): Copyedits. + (International Chars): Update C-x = example output. + (Disabling Multibyte): Rename from "Enabling Multibyte". + Clarify what "unibyte: t" does, and mode-line description. + (Unibyte Mode): Update for "Disabling Multibyte" node name change. + Use Texinfo recommended convention for quotes+punctuation. + (Language Environments): Copyedits. + (Input Methods): Copyedits. Use "^" for the postfix example, + because it is less confusing inside Info's `quotes'. + + * custom.texi (Specifying File Variables): Fix "unibyte" description. + Update for "Disabling Multibyte" node name change. + * emacs.texi: Update for "Disabling Multibyte" node name change. + + * abbrevs.texi, arevert-xtra.texi, buffers.texi, building.texi: + * cmdargs.texi, custom.texi, entering.texi, files.texi, frames.texi: + * glossary.texi, help.texi, macos.texi, maintaining.texi, mini.texi: + * misc.texi, package.texi, programs.texi, screen.texi, search.texi: + * sending.texi, text.texi, trouble.texi: + Use @file for buffers, per the Texinfo manual. + + * entering.texi (Entering Emacs): + Do not mention initial-buffer-choice = t. + + * misc.texi (Gnus Startup): Use @env for environment variables. + + * Makefile.in: Replace non-portable use of $< in ordinary rules. + 2012-04-12 Glenn Morris * ack.texi (Acknowledgments): Don't mention obsolete mailpost.el. === modified file 'doc/emacs/Makefile.in' --- doc/emacs/Makefile.in 2012-01-19 07:21:25 +0000 +++ doc/emacs/Makefile.in 2012-04-07 19:23:53 +0000 @@ -1,6 +1,6 @@ #### Makefile for the Emacs Manual -# Copyright (C) 1994, 1996-2012 Free Software Foundation, Inc. +# Copyright (C) 1994, 1996-2012 Free Software Foundation, Inc. # This file is part of GNU Emacs. @@ -127,31 +127,31 @@ # Note that all the Info targets build the Info files in srcdir. # There is no provision for Info files to exist in the build directory. # In a distribution of Emacs, the Info files should be up to date. - +# Note: "<" is not portable in ordinary make rules. $(infodir)/emacs: ${EMACSSOURCES} $(mkinfodir) - $(MAKEINFO) $(MAKEINFO_OPTS) -o $@ $< + $(MAKEINFO) $(MAKEINFO_OPTS) -o $@ ${srcdir}/emacs.texi emacs.dvi: ${EMACSSOURCES} - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs.texi emacs.ps: emacs.dvi - $(DVIPS) -o $@ $< + $(DVIPS) -o $@ emacs.dvi emacs.pdf: ${EMACSSOURCES} - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/emacs.texi emacs.html: ${EMACSSOURCES} - $(MAKEINFO) $(MAKEINFO_OPTS) --html -o $@ $< + $(MAKEINFO) $(MAKEINFO_OPTS) --html -o $@ ${srcdir}/emacs.texi emacs-xtra.dvi: $(EMACS_XTRA) - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs-xtra.texi emacs-xtra.ps: emacs-xtra.dvi - $(DVIPS) -o $@ $< + $(DVIPS) -o $@ emacs-xtra.dvi emacs-xtra.pdf: $(EMACS_XTRA) - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/emacs-xtra.texi .PHONY: mostlyclean clean distclean maintainer-clean infoclean === modified file 'doc/emacs/abbrevs.texi' --- doc/emacs/abbrevs.texi 2012-03-04 02:45:04 +0000 +++ doc/emacs/abbrevs.texi 2012-04-10 06:54:43 +0000 @@ -261,12 +261,12 @@ @kbd{M-x edit-abbrevs} allows you to add, change or kill abbrev definitions by editing a list of them in an Emacs buffer. The list has the same format described above. The buffer of abbrevs is called -@samp{*Abbrevs*}, and is in Edit-Abbrevs mode. Type @kbd{C-c C-c} in +@file{*Abbrevs*}, and is in Edit-Abbrevs mode. Type @kbd{C-c C-c} in this buffer to install the abbrev definitions as specified in the buffer---and delete any abbrev definitions not listed. The command @code{edit-abbrevs} is actually the same as -@code{list-abbrevs} except that it selects the buffer @samp{*Abbrevs*} +@code{list-abbrevs} except that it selects the buffer @file{*Abbrevs*} whereas @code{list-abbrevs} merely displays it in another window. @node Saving Abbrevs === modified file 'doc/emacs/arevert-xtra.texi' --- doc/emacs/arevert-xtra.texi 2012-03-02 03:00:15 +0000 +++ doc/emacs/arevert-xtra.texi 2012-04-10 06:54:43 +0000 @@ -93,8 +93,8 @@ Remote Dired buffers are not auto-reverted (because it may be slow). Neither are Dired buffers for which you used shell wildcards or file -arguments to list only some of the files. @samp{*Find*} and -@samp{*Locate*} buffers do not auto-revert either. +arguments to list only some of the files. @file{*Find*} and +@file{*Locate*} buffers do not auto-revert either. @c FIXME? This should be in the elisp manual? @node Supporting additional buffers === modified file 'doc/emacs/buffers.texi' --- doc/emacs/buffers.texi 2012-02-25 03:49:22 +0000 +++ doc/emacs/buffers.texi 2012-04-10 06:54:43 +0000 @@ -11,7 +11,7 @@ the file's text. Each time you invoke Dired, a buffer is used to hold the directory listing. If you send a message with @kbd{C-x m}, a buffer is used to hold the text of the message. When you ask for a -command's documentation, that appears in a buffer named @samp{*Help*}. +command's documentation, that appears in a buffer named @file{*Help*}. Each buffer has a unique name, which can be of any length. When a buffer is displayed in a window, its name is shown in the mode line @@ -19,7 +19,7 @@ matters in buffer names. Most buffers are made by visiting files, and their names are derived from the files' names; however, you can also create an empty buffer with any name you want. A newly started Emacs -has several buffers, including one named @samp{*scratch*}, which can +has several buffers, including one named @file{*scratch*}, which can be used for evaluating Lisp expressions and is not associated with any file (@pxref{Lisp Interaction}). @@ -198,7 +198,7 @@ @end smallexample @noindent -The buffer @samp{*Help*} was made by a help request (@pxref{Help}); it +The buffer @file{*Help*} was made by a help request (@pxref{Help}); it is not visiting any file. The buffer @code{src} was made by Dired on the directory @file{~/cvs/emacs/src/}. You can list only buffers that are visiting files by giving the command a prefix argument, as in @@ -248,9 +248,9 @@ @kbd{M-x rename-uniquely} renames the current buffer to a similar name with a numeric suffix added to make it both different and unique. This command does not need an argument. It is useful for creating -multiple shell buffers: if you rename the @samp{*shell*} buffer, then +multiple shell buffers: if you rename the @file{*shell*} buffer, then do @kbd{M-x shell} again, it makes a new shell buffer named -@samp{*shell*}; meanwhile, the old shell buffer continues to exist +@file{*shell*}; meanwhile, the old shell buffer continues to exist under its new name. This method is also good for mail buffers, compilation buffers, and most Emacs features that create special buffers with particular names. (With some of these features, such as @@ -354,7 +354,7 @@ @findex buffer-menu @findex buffer-menu-other-window To use the buffer menu, type @kbd{C-x C-b} and switch to the window -displaying the @samp{*Buffer List*} buffer. You can also type +displaying the @file{*Buffer List*} buffer. You can also type @kbd{M-x buffer-menu} to open the buffer menu in the selected window. Alternatively, the command @kbd{M-x buffer-menu-other-window} opens the buffer menu in another window, and selects that window. @@ -409,11 +409,11 @@ visible buffer in its place. @item @key{RET} @itemx f -Immediately select this line's buffer in place of the @samp{*Buffer +Immediately select this line's buffer in place of the @file{*Buffer List*} buffer. @item o Immediately select this line's buffer in another window as if by -@kbd{C-x 4 b}, leaving @samp{*Buffer List*} visible. +@kbd{C-x 4 b}, leaving @file{*Buffer List*} visible. @item C-o Immediately display this line's buffer in another window, but don't select the window. @@ -422,7 +422,7 @@ @item 2 Immediately set up two windows, with this line's buffer selected in one, and the previously current buffer (aside from the buffer -@samp{*Buffer List*}) displayed in the other. +@file{*Buffer List*}) displayed in the other. @item b Bury the buffer listed on this line. @item m @@ -448,19 +448,19 @@ suitable buffer, and turn on Buffer Menu mode in it. Everything else described above is implemented by the special commands provided in Buffer Menu mode. One consequence of this is that you can switch from -the @samp{*Buffer List*} buffer to another Emacs buffer, and edit -there. You can reselect the @samp{*Buffer List*} buffer later, to +the @file{*Buffer List*} buffer to another Emacs buffer, and edit +there. You can reselect the @file{*Buffer List*} buffer later, to perform the operations already requested, or you can kill it, or pay no further attention to it. - Normally, the buffer @samp{*Buffer List*} is not updated + Normally, the buffer @file{*Buffer List*} is not updated automatically when buffers are created and killed; its contents are just text. If you have created, deleted or renamed buffers, the way -to update @samp{*Buffer List*} to show what you have done is to type +to update @file{*Buffer List*} to show what you have done is to type @kbd{g} (@code{revert-buffer}). You can make this happen regularly every @code{auto-revert-interval} seconds if you enable Auto Revert mode in this buffer, as long as it is not marked modified. Global -Auto Revert mode applies to the @samp{*Buffer List*} buffer only if +Auto Revert mode applies to the @file{*Buffer List*} buffer only if @code{global-auto-revert-non-file-buffers} is non-@code{nil}. @iftex @inforef{Autorevert,, emacs-xtra}, for details. === modified file 'doc/emacs/building.texi' --- doc/emacs/building.texi 2012-02-20 23:50:52 +0000 +++ doc/emacs/building.texi 2012-04-10 06:54:43 +0000 @@ -44,7 +44,7 @@ @table @kbd @item M-x compile Run a compiler asynchronously under Emacs, with error messages going to -the @samp{*compilation*} buffer. +the @file{*compilation*} buffer. @item M-x recompile Invoke a compiler with the same command as in the last invocation of @kbd{M-x compile}. @@ -57,7 +57,7 @@ compile}. This reads a shell command line using the minibuffer, and then executes the command by running a shell as a subprocess (or @dfn{inferior process}) of Emacs. The output is inserted in a buffer -named @samp{*compilation*}. The current buffer's default directory is +named @file{*compilation*}. The current buffer's default directory is used as the working directory for the execution of the command; normally, therefore, compilation takes place in this directory. @@ -72,19 +72,19 @@ type @kbd{M-x compile}. A file can also specify a file-local value for @code{compile-command} (@pxref{File Variables}). - Starting a compilation displays the @samp{*compilation*} buffer in + Starting a compilation displays the @file{*compilation*} buffer in another window but does not select it. While the compilation is running, the word @samp{run} is shown in the major mode indicator for -the @samp{*compilation*} buffer, and the word @samp{Compiling} appears -in all mode lines. You do not have to keep the @samp{*compilation*} +the @file{*compilation*} buffer, and the word @samp{Compiling} appears +in all mode lines. You do not have to keep the @file{*compilation*} buffer visible while compilation is running; it continues in any case. When the compilation ends, for whatever reason, the mode line of the -@samp{*compilation*} buffer changes to say @samp{exit} (followed by +@file{*compilation*} buffer changes to say @samp{exit} (followed by the exit code: @samp{[0]} for a normal exit), or @samp{signal} (if a signal terminated the process). If you want to watch the compilation transcript as it appears, -switch to the @samp{*compilation*} buffer and move point to the end of +switch to the @file{*compilation*} buffer and move point to the end of the buffer. When point is at the end, new compilation output is inserted above point, which remains at the end. Otherwise, point remains fixed while compilation output is added at the end of the @@ -93,7 +93,7 @@ @cindex compilation buffer, keeping point at end @vindex compilation-scroll-output If you change the variable @code{compilation-scroll-output} to a -non-@code{nil} value, the @samp{*compilation*} buffer scrolls +non-@code{nil} value, the @file{*compilation*} buffer scrolls automatically to follow the output. If the value is @code{first-error}, scrolling stops when the first error appears, leaving point at that error. For any other non-@code{nil} value, @@ -103,22 +103,22 @@ To rerun the last compilation with the same command, type @kbd{M-x recompile}. This reuses the compilation command from the last invocation of @kbd{M-x compile}. It also reuses the -@samp{*compilation*} buffer and starts the compilation in its default +@file{*compilation*} buffer and starts the compilation in its default directory, which is the directory in which the previous compilation was started. @findex kill-compilation Starting a new compilation also kills any compilation already -running in @samp{*compilation*}, as the buffer can only handle one +running in @file{*compilation*}, as the buffer can only handle one compilation at any time. However, @kbd{M-x compile} asks for confirmation before actually killing a compilation that is running. You can also kill the compilation process with @kbd{M-x kill-compilation}. To run two compilations at once, start the first one, then rename -the @samp{*compilation*} buffer (perhaps using @code{rename-uniquely}; +the @file{*compilation*} buffer (perhaps using @code{rename-uniquely}; @pxref{Misc Buffer}), then switch buffers and start the other -compilation. This will create a new @samp{*compilation*} buffer. +compilation. This will create a new @file{*compilation*} buffer. @vindex compilation-environment You can control the environment passed to the compilation command @@ -133,7 +133,7 @@ @cindex Compilation mode @cindex mode, Compilation @cindex locus - The @samp{*compilation*} buffer uses a major mode called Compilation + The @file{*compilation*} buffer uses a major mode called Compilation mode. Compilation mode turns each error message in the buffer into a hyperlink; you can move point to it and type @key{RET}, or click on it with the mouse (@pxref{Mouse References}), to visit the @dfn{locus} of @@ -145,10 +145,10 @@ If you change the variable @code{compilation-auto-jump-to-first-error} to a non-@code{nil} value, Emacs automatically visits the locus of the first error message that -appears in the @samp{*compilation*} buffer. +appears in the @file{*compilation*} buffer. Compilation mode provides the following additional commands. These -commands can also be used in @samp{*grep*} buffers, where the +commands can also be used in @file{*grep*} buffers, where the hyperlinks are search matches rather than error messages (@pxref{Grep Searching}). @@ -190,7 +190,7 @@ visits the locus of the first error message. Each subsequent @w{@kbd{C-x `}} visits the next error, in a similar fashion. If you visit a specific error with @key{RET} or a mouse click in the -@samp{*compilation*} buffer, subsequent @w{@kbd{C-x `}} commands +@file{*compilation*} buffer, subsequent @w{@kbd{C-x `}} commands advance from there. When @w{@kbd{C-x `}} finds no more error messages to visit, it signals an error. @w{@kbd{C-u C-x `}} starts again from the beginning of the compilation buffer, and visits the first locus. @@ -199,8 +199,8 @@ through errors in the opposite direction. The @code{next-error} and @code{previous-error} commands don't just -act on the errors or matches listed in @samp{*compilation*} and -@samp{*grep*} buffers; they also know how to iterate through error or +act on the errors or matches listed in @file{*compilation*} and +@file{*grep*} buffers; they also know how to iterate through error or match lists produced by other commands, such as @kbd{M-x occur} (@pxref{Other Repeating Search}). If you are already in a buffer containing error messages or matches, those are the ones that are @@ -224,7 +224,7 @@ is determined by the variable @code{next-error-highlight}. @vindex compilation-context-lines - If the @samp{*compilation*} buffer is shown in a window with a left + If the @file{*compilation*} buffer is shown in a window with a left fringe (@pxref{Fringes}), the locus-visiting commands put an arrow in the fringe, pointing to the current error message. If the window has no left fringe, such as on a text-only terminal, these commands scroll @@ -276,7 +276,7 @@ command, but specifies the option for a noninteractive shell. This means, in particular, that the shell should start with no prompt. If you find your usual shell prompt making an unsightly appearance in the -@samp{*compilation*} buffer, it means you have made a mistake in your +@file{*compilation*} buffer, it means you have made a mistake in your shell's init file by setting the prompt unconditionally. (This init file may be named @file{.bashrc}, @file{.profile}, @file{.cshrc}, @file{.shrc}, etc., depending on what shell you use.) The shell init @@ -339,14 +339,14 @@ @item M-x grep @itemx M-x lgrep Run @command{grep} asynchronously under Emacs, listing matching lines in -the buffer named @samp{*grep*}. +the buffer named @file{*grep*}. @item M-x grep-find @itemx M-x find-grep @itemx M-x rgrep Run @command{grep} via @code{find}, and collect output in the -@samp{*grep*} buffer. +@file{*grep*} buffer. @item M-x zrgrep -Run @code{zgrep} and collect output in the @samp{*grep*} buffer. +Run @code{zgrep} and collect output in the @file{*grep*} buffer. @item M-x kill-grep Kill the running @command{grep} subprocess. @end table @@ -369,7 +369,7 @@ grep -nH -e foo *.el | grep bar | grep toto @end example - The output from @command{grep} goes in the @samp{*grep*} buffer. You + The output from @command{grep} goes in the @file{*grep*} buffer. You can find the corresponding lines in the original files using @w{@kbd{C-x `}}, @key{RET}, and so forth, just like compilation errors. @@ -1506,14 +1506,14 @@ @section Lisp Interaction Buffers @findex lisp-interaction-mode - When Emacs starts up, it contains a buffer named @samp{*scratch*}, + When Emacs starts up, it contains a buffer named @file{*scratch*}, which is provided for evaluating Emacs Lisp expressions interactively. Its major mode is Lisp Interaction mode. You can also enable Lisp Interaction mode by typing @kbd{M-x lisp-interaction-mode}. @findex eval-print-last-sexp @kindex C-j @r{(Lisp Interaction mode)} - In the @samp{*scratch*} buffer, and other Lisp Interaction mode + In the @file{*scratch*} buffer, and other Lisp Interaction mode buffers, @kbd{C-j} (@code{eval-print-last-sexp}) evaluates the Lisp expression before point, and inserts the value at point. Thus, as you type expressions into the buffer followed by @kbd{C-j} after each @@ -1522,7 +1522,7 @@ mode are the same as in Emacs Lisp mode. @vindex initial-scratch-message - At startup, the @samp{*scratch*} buffer contains a short message, in + At startup, the @file{*scratch*} buffer contains a short message, in the form of a Lisp comment, that explains what it is for. This message is controlled by the variable @code{initial-scratch-message}, which should be either a string, or @code{nil} (which means to @@ -1533,7 +1533,7 @@ interactively is to use Inferior Emacs Lisp mode, which provides an interface rather like Shell mode (@pxref{Shell Mode}) for evaluating Emacs Lisp expressions. Type @kbd{M-x ielm} to create an -@samp{*ielm*} buffer which uses this mode. For more information, see +@file{*ielm*} buffer which uses this mode. For more information, see that command's documentation. @node External Lisp @@ -1555,13 +1555,13 @@ evaluated. To begin an external Lisp session, type @kbd{M-x run-lisp}. This runs the program named @command{lisp}, and sets it up so that both input and output go through an Emacs buffer named -@samp{*inferior-lisp*}. To change the name of the Lisp program run by +@file{*inferior-lisp*}. To change the name of the Lisp program run by @kbd{M-x run-lisp}, change the variable @code{inferior-lisp-program}. - The major mode for the @samp{*lisp*} buffer is Inferior Lisp mode, + The major mode for the @file{*lisp*} buffer is Inferior Lisp mode, which combines the characteristics of Lisp mode and Shell mode (@pxref{Shell Mode}). To send input to the Lisp session, go to the -end of the @samp{*lisp*} buffer and type the input, followed by +end of the @file{*lisp*} buffer and type the input, followed by @key{RET}. Terminal output from the Lisp session is automatically inserted in the buffer. @@ -1572,7 +1572,7 @@ buffer to a Lisp session that you had started with @kbd{M-x run-lisp}. The expression sent is the top-level Lisp expression at or following point. The resulting value goes as usual into the -@samp{*inferior-lisp*} buffer. Note that the effect of @kbd{C-M-x} in +@file{*inferior-lisp*} buffer. Note that the effect of @kbd{C-M-x} in Lisp mode is thus very similar to its effect in Emacs Lisp mode (@pxref{Lisp Eval}), except that the expression is sent to a different Lisp environment instead of being evaluated in Emacs. @@ -1587,4 +1587,4 @@ edited in Scheme mode, which can be explicitly enabled with @kbd{M-x scheme-mode}. You can initiate a Scheme session by typing @kbd{M-x run-scheme} (the buffer for interacting with Scheme is named -@samp{*scheme*}), and send expressions to it by typing @kbd{C-M-x}. +@file{*scheme*}), and send expressions to it by typing @kbd{C-M-x}. === modified file 'doc/emacs/cmdargs.texi' --- doc/emacs/cmdargs.texi 2012-01-19 07:21:25 +0000 +++ doc/emacs/cmdargs.texi 2012-04-10 06:54:43 +0000 @@ -157,7 +157,7 @@ @item --insert=@var{file} @opindex --insert @cindex insert file contents, command-line argument -Insert the contents of @var{file} into the @samp{*scratch*} buffer +Insert the contents of @var{file} into the @file{*scratch*} buffer (@pxref{Lisp Interaction}). This is like what @kbd{M-x insert-file} does (@pxref{Misc File Ops}). === modified file 'doc/emacs/custom.texi' --- doc/emacs/custom.texi 2012-04-02 04:18:06 +0000 +++ doc/emacs/custom.texi 2012-04-12 14:50:58 +0000 @@ -561,7 +561,7 @@ @vindex custom-theme-directory @cindex color scheme Type @kbd{M-x customize-themes} to switch to a buffer named -@samp{*Custom Themes*}, which lists the Custom themes that Emacs knows +@file{*Custom Themes*}, which lists the Custom themes that Emacs knows about. By default, Emacs looks for theme files in two locations: the directory specified by the variable @code{custom-theme-directory} (which defaults to @file{~/.emacs.d/}), and a directory named @@ -580,11 +580,11 @@ @code{custom-theme-directory} has the special meaning of the value of the variable @code{custom-theme-directory}, while @code{t} stands for the built-in theme directory @file{etc/themes}. The themes listed in -the @samp{*Custom Themes*} buffer are those found in the directories +the @file{*Custom Themes*} buffer are those found in the directories specified by @code{custom-theme-load-path}. @kindex C-x C-s @r{(Custom Themes buffer)} - In the @samp{*Custom Themes*} buffer, you can activate the checkbox + In the @file{*Custom Themes*} buffer, you can activate the checkbox next to a Custom theme to enable or disable the theme for the current Emacs session. When a Custom theme is enabled, all of its settings (variables and faces) take effect in the Emacs session. To apply the @@ -608,7 +608,7 @@ Setting or saving Custom themes actually works by customizing the variable @code{custom-enabled-themes}. The value of this variable is a list of Custom theme names (as Lisp symbols, e.g.@: @code{tango}). -Instead of using the @samp{*Custom Themes*} buffer to set +Instead of using the @file{*Custom Themes*} buffer to set @code{custom-enabled-themes}, you can customize the variable using the usual customization interface, e.g.@: with @kbd{M-x customize-option}. Note that Custom themes are not allowed to set @@ -635,7 +635,7 @@ @findex describe-theme To see a description of a Custom theme, type @kbd{?} on its line in -the @samp{*Custom Themes*} buffer; or type @kbd{M-x describe-theme} +the @file{*Custom Themes*} buffer; or type @kbd{M-x describe-theme} anywhere in Emacs and enter the theme name in the minibuffer. @node Creating Custom Themes @@ -645,12 +645,12 @@ @findex customize-create-theme You can define a Custom theme using an interface similar to the customization buffer, by typing @kbd{M-x customize-create-theme}. -This switches to a buffer named @samp{*Custom Theme*}. It also offers +This switches to a buffer named @file{*Custom Theme*}. It also offers to insert some common Emacs faces into the theme (a convenience, since Custom themes are often used to customize faces). If you answer no, the theme will initially contain no settings. - Near the top of the @samp{*Custom Theme*} buffer are editable fields + Near the top of the @file{*Custom Theme*} buffer are editable fields where you can enter the theme's name and description. The name can be anything except @samp{user}. The description is the one that will be shown when you invoke @kbd{M-x describe-theme} for the theme. Its @@ -673,7 +673,7 @@ @file{@var{name}-theme.el} where @var{name} is the theme name, in the directory named by @code{custom-theme-directory}. - From the @samp{*Custom Theme*} buffer, you can view and edit an + From the @file{*Custom Theme*} buffer, you can view and edit an existing Custom theme by activating the @samp{[Visit Theme]} button and specifying the theme name. You can also add the settings of another theme into the buffer, using the @samp{[Merge Theme]} button. @@ -683,10 +683,9 @@ A theme file is simply an Emacs Lisp source file, and loading the Custom theme works by loading the Lisp file. Therefore, you can edit -a theme file directly instead of using the @samp{*Custom Theme*} -buffer. -@c Add link to the relevant Emacs Lisp Reference manual node, once -@c that is written. +a theme file directly instead of using the @file{*Custom Theme*} +buffer. @xref{Custom Themes,,, elisp, The Emacs Lisp Reference +Manual}, for details. @node Variables @section Variables @@ -809,7 +808,7 @@ @noindent To execute such an expression, type @kbd{M-:} (@code{eval-expression}) and enter the expression in the minibuffer (@pxref{Lisp Eval}). -Alternatively, go to the @samp{*scratch*} buffer, type in the +Alternatively, go to the @file{*scratch*} buffer, type in the expression, and then type @kbd{C-j} (@pxref{Lisp Interaction}). Setting variables, like all means of customizing Emacs except where @@ -1163,8 +1162,8 @@ conversion of this file. @xref{Coding Systems}. @item -@code{unibyte} says to visit the file in a unibyte buffer, if the -value is @code{t}. @xref{Enabling Multibyte}. +@code{unibyte} says to load or compile a file of Emacs Lisp in unibyte +mode, if the value is @code{t}. @xref{Disabling Multibyte}. @end itemize @noindent === modified file 'doc/emacs/emacs.texi' --- doc/emacs/emacs.texi 2012-02-29 08:11:23 +0000 +++ doc/emacs/emacs.texi 2012-04-12 01:09:15 +0000 @@ -516,7 +516,7 @@ International Character Set Support * International Chars:: Basic concepts of multibyte characters. -* Enabling Multibyte:: Controlling whether to use multibyte characters. +* Disabling Multibyte:: Controlling whether to use multibyte characters. * Language Environments:: Setting things up for the language you use. * Input Methods:: Entering text characters not on your keyboard. * Select Input Method:: Specifying your choice of input methods. === modified file 'doc/emacs/entering.texi' --- doc/emacs/entering.texi 2012-01-19 07:21:25 +0000 +++ doc/emacs/entering.texi 2012-04-10 06:54:43 +0000 @@ -63,7 +63,7 @@ If the variable @code{inhibit-startup-screen} is non-@code{nil}, Emacs does not display the startup screen. In that case, if one or more files were specified on the command line, Emacs simply displays -those files; otherwise, it displays a buffer named @samp{*scratch*}, +those files; otherwise, it displays a buffer named @file{*scratch*}, which can be used to evaluate Emacs Lisp expressions interactively. @xref{Lisp Interaction}. You can set the variable @code{inhibit-startup-screen} using the Customize facility @@ -77,9 +77,13 @@ by setting the variable @code{initial-buffer-choice} to a non-@code{nil} value. (In that case, even if you specify one or more files on the command line, Emacs opens but does not display them.) -The value of @code{initial-buffer-choice} can be either the name of -the desired file or directory, or @code{t}, which means to display the -@samp{*scratch*} buffer. +The value of @code{initial-buffer-choice} should be the name of +the desired file or directory. +@ignore +@c I do not think this should be mentioned. AFAICS it is just a dodge +@c around inhibit-startup-screen not being settable on a site-wide basis. +or @code{t}, which means to display the @file{*scratch*} buffer. +@end ignore @node Exiting, Basic, Entering Emacs, Top @section Exiting Emacs === modified file 'doc/emacs/files.texi' --- doc/emacs/files.texi 2012-03-30 16:31:24 +0000 +++ doc/emacs/files.texi 2012-04-10 06:54:43 +0000 @@ -976,7 +976,7 @@ when they are auto-saved, the auto-save file name is made by appending @samp{#} to the front and rear of buffer name, then adding digits and letters at the end for uniqueness. For -example, the @samp{*mail*} buffer in which you compose messages to be +example, the @file{*mail*} buffer in which you compose messages to be sent might be auto-saved in a file named @file{#*mail*#704juu}. Auto-save file names are made this way unless you reprogram parts of Emacs to do something different (the functions @code{make-auto-save-file-name} and @@ -1245,7 +1245,7 @@ @vindex diff-switches The command @kbd{M-x diff} prompts for two file names, using the minibuffer, and displays the differences between the two files in a -buffer named @samp{*diff*}. This works by running the @command{diff} +buffer named @file{*diff*}. This works by running the @command{diff} program, using options taken from the variable @code{diff-switches}. The value of @code{diff-switches} should be a string; the default is @code{"-c"} to specify a context diff. @xref{Top,, Diff, diff, === modified file 'doc/emacs/frames.texi' --- doc/emacs/frames.texi 2012-02-20 23:50:52 +0000 +++ doc/emacs/frames.texi 2012-04-10 06:54:43 +0000 @@ -257,7 +257,7 @@ @key{RET}, or by clicking either @kbd{Mouse-1} or @kbd{Mouse-2} on the button. For example, in a Dired buffer, each file name is a button; activating it causes Emacs to visit that file (@pxref{Dired}). In a -@samp{*Compilation*} buffer, each error message is a button, and +@file{*Compilation*} buffer, each error message is a button, and activating it visits the source code for that error (@pxref{Compilation}). === modified file 'doc/emacs/glossary.texi' --- doc/emacs/glossary.texi 2012-04-05 00:28:06 +0000 +++ doc/emacs/glossary.texi 2012-04-10 06:54:43 +0000 @@ -421,7 +421,7 @@ The echo area is the bottom line of the screen, used for echoing the arguments to commands, for asking questions, and showing brief messages (including error messages). The messages are stored in the buffer -@samp{*Messages*} so you can review them later. @xref{Echo Area}. +@file{*Messages*} so you can review them later. @xref{Echo Area}. @item Echoing Echoing is acknowledging the receipt of input events by displaying === modified file 'doc/emacs/help.texi' --- doc/emacs/help.texi 2012-03-16 23:20:37 +0000 +++ doc/emacs/help.texi 2012-04-10 06:54:43 +0000 @@ -102,7 +102,7 @@ Display the commands and variables whose documentation matches @var{topics} (@code{apropos-documentation}). @item C-h e -Display the @code{*Messages*} buffer +Display the @file{*Messages*} buffer (@code{view-echo-area-messages}). @item C-h f @var{function} @key{RET} Display documentation on the Lisp function named @var{function} @@ -168,7 +168,7 @@ @item C-h . Display the help message for a special text area, if point is in one (@code{display-local-help}). (These include, for example, links in -@samp{*Help*} buffers.) +@file{*Help*} buffers.) @end table @node Key Help @@ -519,7 +519,7 @@ @findex view-echo-area-messages To review recent echo area messages, use @kbd{C-h e} (@code{view-echo-area-messages}). This displays the buffer -@code{*Messages*}, where those messages are kept. +@file{*Messages*}, where those messages are kept. @kindex C-h m @findex describe-mode === modified file 'doc/emacs/macos.texi' --- doc/emacs/macos.texi 2012-02-25 10:04:30 +0000 +++ doc/emacs/macos.texi 2012-04-10 06:54:43 +0000 @@ -142,7 +142,7 @@ double-clicking a file in the Finder application. By default, Emacs responds to this event by opening a new frame and visiting the file in that frame (@code{ns-find-file}). As an exception, if the selected -buffer is the @samp{*scratch*} buffer, Emacs visits the file in the +buffer is the @file{*scratch*} buffer, Emacs visits the file in the selected frame. You can change how Emacs responds to a @code{ns-open-file} event by === modified file 'doc/emacs/maintaining.texi' --- doc/emacs/maintaining.texi 2012-02-17 07:44:31 +0000 +++ doc/emacs/maintaining.texi 2012-04-10 06:54:43 +0000 @@ -477,7 +477,7 @@ @item If every work file in the VC fileset has been modified, commit the -changes. To do this, Emacs pops up a @samp{*vc-log*} buffer; type the +changes. To do this, Emacs pops up a @file{*vc-log*} buffer; type the desired log entry for the new revision, followed by @kbd{C-c C-c} to commit. @xref{Log Buffer}. @@ -530,7 +530,7 @@ @item If each file is locked by you and contains changes, commit the -changes. To do this, Emacs pops up a @samp{*vc-log*} buffer; type the +changes. To do this, Emacs pops up a @file{*vc-log*} buffer; type the desired log entry for the new revision, followed by @kbd{C-c C-c} to commit (@pxref{Log Buffer}). @@ -588,7 +588,7 @@ @cindex C-c C-c @r{(Log Edit mode)} @findex log-edit-done When you tell VC to commit a change, it pops up a buffer named -@samp{*vc-log*}. In this buffer, you should write a @dfn{log entry} +@file{*vc-log*}. In this buffer, you should write a @dfn{log entry} describing the changes you have made (@pxref{Why Version Control?}). After you are done, type @kbd{C-c C-c} (@code{log-edit-done}) to exit the buffer and commit the change, together with your log entry. @@ -596,12 +596,12 @@ @cindex Log Edit mode @cindex mode, Log Edit @vindex vc-log-mode-hook - The major mode for the @samp{*vc-log*} buffer is Log Edit mode, a + The major mode for the @file{*vc-log*} buffer is Log Edit mode, a variant of Text mode (@pxref{Text Mode}). On entering Log Edit mode, Emacs runs the hooks @code{text-mode-hook} and @code{vc-log-mode-hook} (@pxref{Hooks}). - In the @samp{*vc-log*} buffer, you can write one or more @dfn{header + In the @file{*vc-log*} buffer, you can write one or more @dfn{header lines}, specifying additional information to be supplied to the version control system. Each header line must occupy a single line at the top of the buffer; the first line that is not a header line is @@ -626,7 +626,7 @@ @findex log-edit-show-files @kindex C-c C-d @r{(Log Edit mode)} @findex log-edit-show-diff - While in the @samp{*vc-log*} buffer, the ``current VC fileset'' is + While in the @file{*vc-log*} buffer, the ``current VC fileset'' is considered to be the fileset that will be committed if you type @w{@kbd{C-c C-c}}. To view a list of the files in the VC fileset, type @w{@kbd{C-c C-f}} (@code{log-edit-show-files}). To view a diff @@ -639,7 +639,7 @@ If the VC fileset includes one or more @file{ChangeLog} files (@pxref{Change Log}), type @kbd{C-c C-a} (@code{log-edit-insert-changelog}) to pull the relevant entries into -the @samp{*vc-log*} buffer. If the topmost item in each +the @file{*vc-log*} buffer. If the topmost item in each @file{ChangeLog} was made under your user name on the current date, this command searches that item for entries matching the file(s) to be committed, and inserts them. @@ -652,7 +652,7 @@ To abort a commit, just @strong{don't} type @kbd{C-c C-c} in that buffer. You can switch buffers and do other editing. As long as you don't try to make another commit, the entry you were editing remains -in the @samp{*vc-log*} buffer, and you can go back to that buffer at +in the @file{*vc-log*} buffer, and you can go back to that buffer at any time to complete the commit. @kindex M-n @r{(Log Edit mode)} @@ -904,10 +904,10 @@ @kindex C-x v l @findex vc-print-log The command @kbd{C-x v l} (@code{vc-print-log}) displays a buffer -named @samp{*vc-change-log*}, showing the history of changes made to +named @file{*vc-change-log*}, showing the history of changes made to the current file, including who made the changes, the dates, and the log entry for each change (these are the same log entries you would -enter via the @samp{*vc-log*} buffer; @pxref{Log Buffer}). Point is +enter via the @file{*vc-log*} buffer; @pxref{Log Buffer}). Point is centered at the revision of the file currently being visited. With a prefix argument, the command prompts for the revision to center on, and the maximum number of revisions to display. @@ -919,7 +919,7 @@ @findex vc-print-root-log @findex log-view-toggle-entry-display @kbd{C-x v L} (@code{vc-print-root-log}) displays a -@samp{*vc-change-log*} buffer showing the history of the entire +@file{*vc-change-log*} buffer showing the history of the entire version-controlled directory tree (RCS, SCCS, and CVS do not support this feature). With a prefix argument, the command prompts for the maximum number of revisions to display. @@ -927,7 +927,7 @@ The @kbd{C-x v L} history is shown in a compact form, usually showing only the first line of each log entry. However, you can type @key{RET} (@code{log-view-toggle-entry-display}) in the -@samp{*vc-change-log*} buffer to reveal the entire log entry for the +@file{*vc-change-log*} buffer to reveal the entire log entry for the revision at point. A second @key{RET} hides it again. On a decentralized version control system, the @kbd{C-x v I} @@ -942,7 +942,7 @@ another repository, the next time you run the ``push'' command; with a prefix argument, it prompts for a specific destination repository. - In the @samp{*vc-change-log*} buffer, you can use the following keys + In the @file{*vc-change-log*} buffer, you can use the following keys to move between the logs of revisions and of files, and to examine and compare past revisions (@pxref{Old Revisions}): @@ -993,11 +993,11 @@ @vindex vc-log-show-limit Because fetching many log entries can be slow, the -@samp{*vc-change-log*} buffer displays no more than 2000 revisions by +@file{*vc-change-log*} buffer displays no more than 2000 revisions by default. The variable @code{vc-log-show-limit} specifies this limit; if you set the value to zero, that removes the limit. You can also increase the number of revisions shown in an existing -@samp{*vc-change-log*} buffer by clicking on the @samp{Show 2X +@file{*vc-change-log*} buffer by clicking on the @samp{Show 2X entries} or @samp{Show unlimited entries} buttons at the end of the buffer. However, RCS, SCCS, and CVS do not support this feature. @@ -1045,7 +1045,7 @@ To use the VC Directory buffer, type @kbd{C-x v d} (@code{vc-dir}). This reads a directory name using the minibuffer, and switches to a VC Directory buffer for that directory. By default, the buffer is named -@samp{*vc-dir*}. Its contents are described +@file{*vc-dir*}. Its contents are described @iftex below. @end iftex === modified file 'doc/emacs/mini.texi' --- doc/emacs/mini.texi 2012-02-23 08:32:18 +0000 +++ doc/emacs/mini.texi 2012-04-10 06:54:43 +0000 @@ -197,7 +197,7 @@ @findex minibuffer-inactive-mode When not active, the minibuffer is in @code{minibuffer-inactive-mode}, -and clicking @kbd{Mouse-1} there shows the @samp{*Messages*} buffer. +and clicking @kbd{Mouse-1} there shows the @file{*Messages*} buffer. If you use a dedicated frame for minibuffers, Emacs also recognizes certain keys there, for example @kbd{n} to make a new frame. === modified file 'doc/emacs/misc.texi' --- doc/emacs/misc.texi 2012-04-02 17:33:41 +0000 +++ doc/emacs/misc.texi 2012-04-10 06:54:43 +0000 @@ -92,7 +92,7 @@ Usenet newsgroups and subscriptions (this file is not unique to Gnus; it is used by many other newsreader programs). It then tries to contact the system's default news server, which is typically specified -by the @samp{NNTPSERVER} environment variable. +by the @env{NNTPSERVER} environment variable. If your system does not have a default news server, or if you wish to use Gnus for reading email, then before invoking @kbd{M-x gnus} you @@ -507,7 +507,7 @@ for that command. Standard input for the command comes from the null device. If the shell command produces any output, the output appears either in the echo area (if it is short), or in an Emacs buffer named -@samp{*Shell Command Output*}, displayed in another window (if the +@file{*Shell Command Output*}, displayed in another window (if the output is long). For instance, one way to decompress a file named @file{foo.gz} is to @@ -554,7 +554,7 @@ see what keys are in the buffer. If the buffer contains a GnuPG key, type @kbd{C-x h M-| gpg @key{RET}} to feed the entire buffer contents to @command{gpg}. This will output the list of keys to the -@samp{*Shell Command Output*} buffer. +@file{*Shell Command Output*} buffer. @vindex shell-file-name The above commands use the shell specified by the variable @@ -577,7 +577,7 @@ @findex shell To run a subshell interactively, type @kbd{M-x shell}. This creates -(or reuses) a buffer named @samp{*shell*}, and runs a shell subprocess +(or reuses) a buffer named @file{*shell*}, and runs a shell subprocess with input coming from and output going to that buffer. That is to say, any terminal output from the subshell goes into the buffer, advancing point, and any terminal input for the subshell comes from @@ -600,8 +600,8 @@ To make multiple subshells, invoke @kbd{M-x shell} with a prefix argument (e.g. @kbd{C-u M-x shell}). Then the command will read a buffer name, and create (or reuse) a subshell in that buffer. You can -also rename the @samp{*shell*} buffer using @kbd{M-x rename-uniquely}, -then create a new @samp{*shell*} buffer using plain @kbd{M-x shell}. +also rename the @file{*shell*} buffer using @kbd{M-x rename-uniquely}, +then create a new @file{*shell*} buffer using plain @kbd{M-x shell}. Subshells in different buffers run independently and in parallel. @vindex explicit-shell-file-name @@ -1183,7 +1183,7 @@ @findex term To run a subshell in a terminal emulator, use @kbd{M-x term}. This -creates (or reuses) a buffer named @samp{*terminal*}, and runs a +creates (or reuses) a buffer named @file{*terminal*}, and runs a subshell with input coming from your keyboard, and output going to that buffer. @@ -1212,7 +1212,7 @@ The file name used to load the subshell is determined the same way as for Shell mode. To make multiple terminal emulators, rename the -buffer @samp{*terminal*} to something different using @kbd{M-x +buffer @file{*terminal*} to something different using @kbd{M-x rename-uniquely}, just as with Shell mode. Unlike Shell mode, Term mode does not track the current directory by @@ -1511,7 +1511,7 @@ where it cannot create graphical frames when started from a text-only terminal, it creates a new text-only terminal frame (@pxref{Frames}). If you omit a filename argument while supplying the @samp{-c} option, -the new frame displays the @samp{*scratch*} buffer (@pxref{Buffers}). +the new frame displays the @file{*scratch*} buffer (@pxref{Buffers}). @item -F @var{alist} @itemx --frame-parameters=@var{alist} @@ -1600,7 +1600,7 @@ impossible, Emacs will create a new frame, either GUI or text-only, on the same terminal where it was started (@pxref{Windows Startup, emacsclient}). If you omit a filename argument while supplying this -option, the new frame displays the @samp{*scratch*} buffer. +option, the new frame displays the @file{*scratch*} buffer. @xref{Buffers}. @end table @@ -1868,7 +1868,7 @@ This function replaces the usual printing commands in the menu bar with a @samp{Printing} submenu that contains various printing options. You can also type @kbd{M-x pr-interface RET}; this creates a -@samp{*Printing Interface*} buffer, similar to a customization buffer, +@file{*Printing Interface*} buffer, similar to a customization buffer, where you can set the printing options. After selecting what and how to print, you start the print job using the @samp{Print} button (click @kbd{mouse-2} on it, or move point over it and type @kbd{RET}). For @@ -2482,7 +2482,7 @@ @findex dissociated-press @kbd{M-x dissociated-press} scrambles the text in the current Emacs buffer, word by word or character by character, writing its output to -a buffer named @samp{*Dissociation*}. A positive argument tells it to +a buffer named @file{*Dissociation*}. A positive argument tells it to operate character by character, and specifies the number of overlap characters. A negative argument tells it to operate word by word, and specifies the number of overlap words. Dissociated Press produces === modified file 'doc/emacs/mule.texi' --- doc/emacs/mule.texi 2012-03-16 23:20:37 +0000 +++ doc/emacs/mule.texi 2012-04-13 03:59:27 +0000 @@ -41,7 +41,7 @@ well as Cyrillic, Devanagari (for Hindi and Marathi), Ethiopic, Greek, Han (for Chinese and Japanese), Hangul (for Korean), Hebrew, IPA, Kannada, Lao, Malayalam, Tamil, Thai, Tibetan, and Vietnamese scripts. -Emacs also supports various encodings of these characters used by +Emacs also supports various encodings of these characters that are used by other internationalized software, such as word processors and mailers. Emacs allows editing text with international characters by supporting @@ -74,14 +74,14 @@ @item You can insert non-@acronym{ASCII} characters or search for them. To do that, you can specify an input method (@pxref{Select Input Method}) suitable -for your language, or use the default input method set up when you set +for your language, or use the default input method set up when you chose your language environment. If your keyboard can produce non-@acronym{ASCII} characters, you can select an appropriate keyboard coding system (@pxref{Terminal Coding}), and Emacs will accept those characters. Latin-1 characters can also be input by using the @kbd{C-x 8} prefix, see @ref{Unibyte Mode}. -On the X Window System, your locale should be set to an appropriate +With the X Window System, your locale should be set to an appropriate value to make sure Emacs interprets keyboard input correctly; see @ref{Language Environments, locales}. @end itemize @@ -90,7 +90,7 @@ @menu * International Chars:: Basic concepts of multibyte characters. -* Enabling Multibyte:: Controlling whether to use multibyte characters. +* Disabling Multibyte:: Controlling whether to use multibyte characters. * Language Environments:: Setting things up for the language you use. * Input Methods:: Entering text characters not on your keyboard. * Select Input Method:: Specifying your choice of input methods. @@ -224,29 +224,30 @@ in a buffer whose coding system is @code{utf-8-unix}: @smallexample - character: @`A (192, #o300, #xc0) -preferred charset: unicode (Unicode (ISO10646)) - code point: 0xC0 - syntax: w which means: word - category: j:Japanese l:Latin v:Vietnamese - buffer code: #xC3 #x80 - file code: not encodable by coding system undecided-unix - display: by this font (glyph code) + position: 1 of 1 (0%), column: 0 + character: @`A (displayed as @`A) (codepoint 192, #o300, #xc0) + preferred charset: unicode (Unicode (ISO10646)) +code point in charset: 0xC0 + syntax: w which means: word + category: .:Base, L:Left-to-right (strong), + j:Japanese, l:Latin, v:Viet + buffer code: #xC3 #x80 + file code: not encodable by coding system undecided-unix + display: by this font (glyph code) xft:-unknown-DejaVu Sans Mono-normal-normal- normal-*-13-*-*-*-m-0-iso10646-1 (#x82) Character code properties: customize what to show name: LATIN CAPITAL LETTER A WITH GRAVE + old-name: LATIN CAPITAL LETTER A GRAVE general-category: Lu (Letter, Uppercase) decomposition: (65 768) ('A' '`') - old-name: LATIN CAPITAL LETTER A GRAVE - -There are text properties here: - auto-composed t @end smallexample -@node Enabling Multibyte -@section Enabling Multibyte Characters +@c FIXME? Does this section even belong in the user manual? +@c Seems more appropriate to the lispref? +@node Disabling Multibyte +@section Disabling Multibyte Characters By default, Emacs starts in multibyte mode: it stores the contents of buffers and strings using an internal encoding that represents @@ -275,32 +276,48 @@ @samp{raw-text} doesn't disable format conversion, uncompression, or auto mode selection. +@c Not a single file in Emacs uses this feature. Is it really worth +@c mentioning in the _user_ manual? Also, this duplicates somewhat +@c "Loading Non-ASCII" from the lispref. @cindex Lisp files, and multibyte operation @cindex multibyte operation, and Lisp files @cindex unibyte operation, and Lisp files @cindex init file, and non-@acronym{ASCII} characters Emacs normally loads Lisp files as multibyte. This includes the Emacs initialization -file, @file{.emacs}, and the initialization files of Emacs packages +file, @file{.emacs}, and the initialization files of packages such as Gnus. However, you can specify unibyte loading for a -particular Lisp file, by putting @w{@samp{-*-unibyte: t;-*-}} in a -comment on the first line (@pxref{File Variables}). Then that file is -always loaded as unibyte text. The motivation for these conventions -is that it is more reliable to always load any particular Lisp file in -the same way. However, you can load a Lisp file as unibyte, on any -one occasion, by typing @kbd{C-x @key{RET} c raw-text @key{RET}} -immediately before loading it. +particular Lisp file, by adding an entry @samp{unibyte: t} in a file +local variables section (@pxref{File Variables}). Then that file is +always loaded as unibyte text. Note that this does not represent a +real @code{unibyte} variable, rather it just acts as an indicator +to Emacs in the same way as @code{coding} does (@pxref{Specify Coding}). +@ignore +@c I don't see the point of this statement: +The motivation for these conventions is that it is more reliable to +always load any particular Lisp file in the same way. +@end ignore +Note also that this feature only applies to @emph{loading} Lisp files +for evaluation, not to visiting them for editing. You can also load a +Lisp file as unibyte, on any one occasion, by typing @kbd{C-x +@key{RET} c raw-text @key{RET}} immediately before loading it. - The mode line indicates whether multibyte character support is -enabled in the current buffer. If it is, there are two or more -characters (most often two dashes) near the beginning of the mode -line, before the indication of the visited file's end-of-line -convention (colon, backslash, etc.). When multibyte characters -are not enabled, nothing precedes the colon except a single dash. -@xref{Mode Line}, for more details about this. +@c See http://debbugs.gnu.org/11226 for lack of unibyte tooltip. +@vindex enable-multibyte-characters +The buffer-local variable @code{enable-multibyte-characters} is +non-@code{nil} in multibyte buffers, and @code{nil} in unibyte ones. +The mode line also indicates whether a buffer is multibyte or not. +@xref{Mode Line}. With a graphical display, in a multibyte buffer, +the portion of the mode line that indicates the character set has a +tooltip that (amongst other things) says that the buffer is multibyte. +In a unibyte buffer, the character set indicator is absent. Thus, in +a unibyte buffer (when using a graphical display) there is normally +nothing before the indication of the visited file's end-of-line +convention (colon, backslash, etc.), unless you are using an input +method. @findex toggle-enable-multibyte-characters -You can turn on multibyte support in a specific buffer by invoking the +You can turn off multibyte support in a specific buffer by invoking the command @code{toggle-enable-multibyte-characters} in that buffer. @node Language Environments @@ -309,8 +326,8 @@ All supported character sets are supported in Emacs buffers whenever multibyte characters are enabled; there is no need to select a -particular language in order to display its characters in an Emacs -buffer. However, it is important to select a @dfn{language +particular language in order to display its characters. +However, it is important to select a @dfn{language environment} in order to set various defaults. Roughly speaking, the language environment represents a choice of preferred script rather than a choice of language. @@ -327,7 +344,8 @@ @code{current-language-environment} or use the command @kbd{M-x set-language-environment}. It makes no difference which buffer is current when you use this command, because the effects apply globally -to the Emacs session. The supported language environments include: +to the Emacs session. The supported language environments +(see the variable @code{language-info-alist}) include: @cindex Euro sign @cindex UTF-8 @@ -351,11 +369,15 @@ @cindex Intlfonts package, installation To display the script(s) used by your language environment on a graphical display, you need to have a suitable font. If some of the -characters appear as empty boxes or hex codes, you should install the +characters appear as empty boxes or hex codes, you should install +extra fonts. Your operating system may have optional fonts that +you can install; or you can install the GNU Intlfonts package, which includes fonts for most supported -scripts.@footnote{If you run Emacs on X, you need to inform the X -server about the location of the newly installed fonts with the -following commands: +scripts.@footnote{If you run Emacs on X, you may need to inform the X +server about the location of the newly installed fonts with +commands such as: +@c FIXME? I feel like this may be out of date. +@c Eg the intlfonts tarfile is ~ 10 years old. @example xset fp+ /usr/local/share/emacs/fonts @@ -370,22 +392,25 @@ @cindex locales Some operating systems let you specify the character-set locale you are using by setting the locale environment variables @env{LC_ALL}, -@env{LC_CTYPE}, or @env{LANG}.@footnote{If more than one of these is +@env{LC_CTYPE}, or @env{LANG}. (If more than one of these is set, the first one that is nonempty specifies your locale for this -purpose.} During startup, Emacs looks up your character-set locale's +purpose.) During startup, Emacs looks up your character-set locale's name in the system locale alias table, matches its canonical name against entries in the value of the variables -@code{locale-charset-language-names} and @code{locale-language-names}, +@code{locale-charset-language-names} and @code{locale-language-names} +(the former overrides the latter), and selects the corresponding language environment if a match is found. -(The former variable overrides the latter.) It also adjusts the display +It also adjusts the display table and terminal coding system, the locale coding system, the preferred coding system as needed for the locale, and---last but not least---the way Emacs decodes non-@acronym{ASCII} characters sent by your keyboard. +@c This seems unlikely, doesn't it? If you modify the @env{LC_ALL}, @env{LC_CTYPE}, or @env{LANG} -environment variables while running Emacs, you may want to invoke the -@code{set-locale-environment} function afterwards to readjust the -language environment from the new locale. +environment variables while running Emacs (by using @kbd{M-x setenv}), +you may want to invoke the @code{set-locale-environment} +function afterwards to readjust the language environment from the new +locale. @vindex locale-preferred-coding-systems The @code{set-locale-environment} function normally uses the preferred @@ -421,7 +446,7 @@ language environment. The hook functions can test for a specific language environment by checking the variable @code{current-language-environment}. This hook is where you should -put non-default settings for specific language environment, such as +put non-default settings for specific language environments, such as coding systems for keyboard input and terminal output, the default input method, etc. @@ -441,7 +466,7 @@ @cindex input methods An @dfn{input method} is a kind of character conversion designed specifically for interactive input. In Emacs, typically each language -has its own input method; sometimes several languages which use the same +has its own input method; sometimes several languages that use the same characters can share one input method. A few languages support several input methods. @@ -454,14 +479,14 @@ characters into one letter. Many European input methods use composition to produce a single non-@acronym{ASCII} letter from a sequence that consists of a letter followed by accent characters (or vice versa). For example, some -methods convert the sequence @kbd{a'} into a single accented letter. +methods convert the sequence @kbd{o ^} into a single accented letter. These input methods have no special commands of their own; all they do is compose sequences of printing characters. The input methods for syllabic scripts typically use mapping followed by composition. The input methods for Thai and Korean work this way. First, letters are mapped into symbols for particular sounds or tone -marks; then, sequences of these which make up a whole syllable are +marks; then, sequences of these that make up a whole syllable are mapped into one syllable sign. Chinese and Japanese require more complex methods. In Chinese input @@ -471,7 +496,8 @@ @code{chinese-sw}, and others). One input sequence typically corresponds to many possible Chinese characters. You select the one you mean using keys such as @kbd{C-f}, @kbd{C-b}, @kbd{C-n}, -@kbd{C-p}, and digits, which have special meanings in this situation. +@kbd{C-p} (or the arrow keys), and digits, which have special meanings +in this situation. The possible characters are conceptually arranged in several rows, with each row holding up to 10 alternatives. Normally, Emacs displays @@ -485,8 +511,8 @@ the current alternative with a special color; type @code{C-@key{SPC}} to select the current alternative and use it as input. The alternatives in the row are also numbered; the number appears before -the alternative. Typing a digit @var{n} selects the @var{n}th -alternative of the current row and uses it as input. +the alternative. Typing a number selects the associated alternative +of the current row and uses it as input. @key{TAB} in these Chinese input methods displays a buffer showing all the possible characters at once; then clicking @kbd{Mouse-2} on @@ -505,15 +531,15 @@ Sometimes it is useful to cut off input method processing so that the characters you have just entered will not combine with subsequent characters. For example, in input method @code{latin-1-postfix}, the -sequence @kbd{e '} combines to form an @samp{e} with an accent. What if +sequence @kbd{o ^} combines to form an @samp{o} with an accent. What if you want to enter them as separate characters? One way is to type the accent twice; this is a special feature for -entering the separate letter and accent. For example, @kbd{e ' '} gives -you the two characters @samp{e'}. Another way is to type another letter -after the @kbd{e}---something that won't combine with that---and -immediately delete it. For example, you could type @kbd{e e @key{DEL} -'} to get separate @samp{e} and @samp{'}. +entering the separate letter and accent. For example, @kbd{o ^ ^} gives +you the two characters @samp{o^}. Another way is to type another letter +after the @kbd{o}---something that won't combine with that---and +immediately delete it. For example, you could type @kbd{o o @key{DEL} +^} to get separate @samp{o} and @samp{^}. Another method, more general but not quite as easy to type, is to use @kbd{C-\ C-\} between two characters to stop them from combining. This @@ -542,7 +568,7 @@ not when you are in the minibuffer). Another facility for typing characters not on your keyboard is by -using the @kbd{C-x 8 @key{RET}} (@code{ucs-insert}) to insert a single +using @kbd{C-x 8 @key{RET}} (@code{ucs-insert}) to insert a single character based on its Unicode name or code-point; see @ref{Inserting Text}. @@ -588,7 +614,7 @@ @kbd{C-\} again. If you type @kbd{C-\} and you have not yet selected an input method, -it prompts for you to specify one. This has the same effect as using +it prompts you to specify one. This has the same effect as using @kbd{C-x @key{RET} C-\} to specify an input method. When invoked with a numeric argument, as in @kbd{C-u C-\}, @@ -631,7 +657,7 @@ @end lisp @noindent -This activates the input method ``german-prefix'' automatically in the +This automatically activates the input method ``german-prefix'' in Text mode. @findex quail-set-keyboard-layout @@ -645,7 +671,7 @@ You can use the command @kbd{M-x quail-show-key} to show what key (or key sequence) to type in order to input the character following point, using the selected keyboard layout. The command @kbd{C-u C-x =} also -shows that information in addition to the other information about the +shows that information, in addition to other information about the character. @findex list-input-methods @@ -685,7 +711,8 @@ In addition to converting various representations of non-@acronym{ASCII} characters, a coding system can perform end-of-line conversion. Emacs handles three different conventions for how to separate lines in a file: -newline, carriage-return linefeed, and just carriage-return. +newline (``unix''), carriage-return linefeed (``dos''), and just +carriage-return (``mac''). @table @kbd @item C-h C @var{coding} @key{RET} @@ -725,27 +752,27 @@ For example, if the file appears to use the sequence carriage-return linefeed to separate lines, DOS end-of-line conversion will be used. - Each of the listed coding systems has three variants which specify + Each of the listed coding systems has three variants, which specify exactly what to do for end-of-line conversion: @table @code @item @dots{}-unix Don't do any end-of-line conversion; assume the file uses newline to separate lines. (This is the convention normally used -on Unix and GNU systems.) +on Unix and GNU systems, and Mac OS X.) @item @dots{}-dos Assume the file uses carriage-return linefeed to separate lines, and do the appropriate conversion. (This is the convention normally used on Microsoft systems.@footnote{It is also specified for MIME @samp{text/*} bodies and in other network transport contexts. It is different -from the SGML reference syntax record-start/record-end format which +from the SGML reference syntax record-start/record-end format, which Emacs doesn't support directly.}) @item @dots{}-mac Assume the file uses carriage-return to separate lines, and do the -appropriate conversion. (This is the convention normally used on the -Macintosh system.) +appropriate conversion. (This was the convention used on the +Macintosh system prior to OS X.) @end table These variant coding systems are omitted from the @@ -763,7 +790,7 @@ @cindex @code{raw-text}, coding system The coding system @code{raw-text} is good for a file which is mainly -@acronym{ASCII} text, but may contain byte values above 127 which are +@acronym{ASCII} text, but may contain byte values above 127 that are not meant to encode non-@acronym{ASCII} characters. With @code{raw-text}, Emacs copies those byte values unchanged, and sets @code{enable-multibyte-characters} to @code{nil} in the current buffer @@ -880,37 +907,47 @@ The default value of @code{inhibit-iso-escape-detection} is @code{nil}. We recommend that you not change it permanently, only for -one specific operation. That's because many Emacs Lisp source files +one specific operation. That's because some Emacs Lisp source files in the Emacs distribution contain non-@acronym{ASCII} characters encoded in the coding system @code{iso-2022-7bit}, and they won't be decoded correctly when you visit those files if you suppress the escape sequence detection. +@c I count a grand total of 3 such files, so is the above really true? @vindex auto-coding-alist @vindex auto-coding-regexp-alist -@vindex auto-coding-functions - The variables @code{auto-coding-alist}, -@code{auto-coding-regexp-alist} and @code{auto-coding-functions} are + The variables @code{auto-coding-alist} and +@code{auto-coding-regexp-alist} are the strongest way to specify the coding system for certain patterns of -file names, or for files containing certain patterns; these variables -even override @samp{-*-coding:-*-} tags in the file itself. Emacs +file names, or for files containing certain patterns, respectively. +These variables even override @samp{-*-coding:-*-} tags in the file +itself. For example, Emacs uses @code{auto-coding-alist} for tar and archive files, to prevent it from being confused by a @samp{-*-coding:-*-} tag in a member of the archive and thinking it applies to the archive file as a whole. +@ignore +@c This describes old-style BABYL files, which are no longer relevant. Likewise, Emacs uses @code{auto-coding-regexp-alist} to ensure that RMAIL files, whose names in general don't match any particular -pattern, are decoded correctly. One of the builtin +pattern, are decoded correctly. +@end ignore + +@vindex auto-coding-functions + Another way to specify a coding system is with the variable +@code{auto-coding-functions}. For example, one of the builtin @code{auto-coding-functions} detects the encoding for XML files. +Unlike the previous two, this variable does not override any +@samp{-*-coding:-*-} tag. +@c FIXME? This seems somewhat out of place. Move to the Rmail section? @vindex rmail-decode-mime-charset @vindex rmail-file-coding-system When you get new mail in Rmail, each message is translated automatically from the coding system it is written in, as if it were a separate file. This uses the priority list of coding systems that you have specified. If a MIME message specifies a character set, Rmail -obeys that specification, unless @code{rmail-decode-mime-charset} is -@code{nil}. For reading and saving Rmail files themselves, Emacs uses -the coding system specified by the variable +obeys that specification. For reading and saving Rmail files +themselves, Emacs uses the coding system specified by the variable @code{rmail-file-coding-system}. The default value is @code{nil}, which means that Rmail files are not translated (they are read and written in the Emacs internal character code). @@ -1540,7 +1577,7 @@ set-language-environment} and specify a suitable language environment such as @samp{Latin-@var{n}}. - For more information about unibyte operation, see @ref{Enabling + For more information about unibyte operation, see @ref{Disabling Multibyte}. Note particularly that you probably want to ensure that your initialization files are read as unibyte if they contain non-@acronym{ASCII} characters. @@ -1613,7 +1650,7 @@ library is loaded, the @key{ALT} modifier key, if the keyboard has one, serves the same purpose as @kbd{C-x 8}: use @key{ALT} together with an accent character to modify the following letter. In addition, -if the keyboard has keys for the Latin-1 ``dead accent characters,'' +if the keyboard has keys for the Latin-1 ``dead accent characters'', they too are defined to compose with the following character, once @code{iso-transl} is loaded. === modified file 'doc/emacs/package.texi' --- doc/emacs/package.texi 2012-03-17 11:11:08 +0000 +++ doc/emacs/package.texi 2012-04-10 06:54:43 +0000 @@ -14,7 +14,7 @@ separate Emacs Lisp program, sometimes including other components such as an Info manual. - @kbd{M-x list-packages} brings up a buffer named @samp{*Packages*} + @kbd{M-x list-packages} brings up a buffer named @file{*Packages*} with a list of all packages. You can install or uninstall packages via this buffer. @xref{Package Menu}. === modified file 'doc/emacs/programs.texi' --- doc/emacs/programs.texi 2012-02-20 23:50:52 +0000 +++ doc/emacs/programs.texi 2012-04-10 06:54:43 +0000 @@ -1130,7 +1130,7 @@ the @command{man} program to format the corresponding man page. If the system permits, it runs @command{man} asynchronously, so that you can keep on editing while the page is being formatted. The result -goes in a buffer named @samp{*Man @var{topic}*}. These buffers use a +goes in a buffer named @file{*Man @var{topic}*}. These buffers use a special major mode, Man mode, that facilitates scrolling and jumping to other manual pages. For details, type @kbd{C-h m} while in a Man mode buffer. @@ -1165,7 +1165,7 @@ to format and display the man pages; the formatting is done by Emacs, so it works on systems such as MS-Windows where the @command{man} program may be unavailable. It prompts for a man page, and displays -it in a buffer named @samp{*WoMan @var{section} @var{topic}}. +it in a buffer named @file{*WoMan @var{section} @var{topic}}. @kbd{M-x woman} computes the completion list for manpages the first time you invoke the command. With a numeric argument, it recomputes @@ -1705,7 +1705,7 @@ @cindex preprocessor highlighting @findex cpp-highlight-buffer Highlight parts of the text according to its preprocessor conditionals. -This command displays another buffer named @samp{*CPP Edit*}, which +This command displays another buffer named @file{*CPP Edit*}, which serves as a graphic menu for selecting how to display particular kinds of conditionals and their contents. After changing various settings, click on @samp{[A]pply these settings} (or go to that buffer and type === modified file 'doc/emacs/screen.texi' --- doc/emacs/screen.texi 2012-01-19 07:21:25 +0000 +++ doc/emacs/screen.texi 2012-04-10 06:54:43 +0000 @@ -131,15 +131,15 @@ progress has been made, as a percentage), and add @samp{done} when they are finished. -@cindex @samp{*Messages*} buffer +@cindex @file{*Messages*} buffer @cindex saved echo area messages @cindex messages saved from echo area @vindex message-log-max Informative echo area messages are saved in a special buffer named -@samp{*Messages*}. (We have not explained buffers yet; see +@file{*Messages*}. (We have not explained buffers yet; see @ref{Buffers}, for more information about them.) If you miss a message that appeared briefly on the screen, you can switch to the -@samp{*Messages*} buffer to see it again. The @samp{*Messages*} +@file{*Messages*} buffer to see it again. The @file{*Messages*} buffer is limited to a certain number of lines, specified by the variable @code{message-log-max}. (We have not explained variables either; see @ref{Variables}, for more information about them.) Beyond === modified file 'doc/emacs/search.texi' --- doc/emacs/search.texi 2012-01-19 07:21:25 +0000 +++ doc/emacs/search.texi 2012-04-10 06:54:43 +0000 @@ -1308,7 +1308,7 @@ @kindex RET @r{(Occur mode)} @kindex o @r{(Occur mode)} @kindex C-o @r{(Occur mode)} -In the @samp{*Occur*} buffer, you can click on each entry, or move +In the @file{*Occur*} buffer, you can click on each entry, or move point there and type @key{RET}, to visit the corresponding position in the buffer that was searched. @kbd{o} and @kbd{C-o} display the match in another window; @kbd{C-o} does not select it. Alternatively, you @@ -1317,7 +1317,7 @@ @cindex Occur Edit mode @cindex mode, Occur Edit -Typing @kbd{e} in the @samp{*Occur*} buffer switches to Occur Edit +Typing @kbd{e} in the @file{*Occur*} buffer switches to Occur Edit mode, in which edits made to the entries are also applied to the text in the originating buffer. Type @kbd{C-c C-c} to return to Occur mode. === modified file 'doc/emacs/sending.texi' --- doc/emacs/sending.texi 2012-04-03 10:21:47 +0000 +++ doc/emacs/sending.texi 2012-04-10 06:54:43 +0000 @@ -12,7 +12,7 @@ @kindex C-x m @findex compose-mail To send an email message from Emacs, type @kbd{C-x m}. This -switches to a buffer named @samp{*unsent mail*}, where you can edit +switches to a buffer named @file{*unsent mail*}, where you can edit the text and headers of the message. When done, type @kbd{C-c C-s} or @kbd{C-c C-c} to send it. @@ -306,7 +306,7 @@ @cindex Message mode @cindex mode, Message - The default major mode for the @samp{*mail*} buffer is called + The default major mode for the @file{*mail*} buffer is called Message mode. It behaves like Text mode in many ways, but provides several additional commands on the @kbd{C-c} prefix, which make editing a message more convenient. === modified file 'doc/emacs/text.texi' --- doc/emacs/text.texi 2012-02-29 08:11:23 +0000 +++ doc/emacs/text.texi 2012-04-10 06:54:43 +0000 @@ -1548,7 +1548,7 @@ point, and inserts two newlines to start a new paragraph. It outputs a message in the echo area if any mismatch is found. @kbd{M-x tex-validate-region} checks a region, paragraph by paragraph. The -errors are listed in an @samp{*Occur*} buffer; you can use the usual +errors are listed in an @file{*Occur*} buffer; you can use the usual Occur mode commands in that buffer, such as @kbd{C-c C-c}, to visit a particular mismatch (@pxref{Other Repeating Search}). @@ -1694,7 +1694,7 @@ @findex tex-recenter-output-buffer @kindex C-c C-l @r{(@TeX{} mode)} The terminal output from @TeX{}, including any error messages, -appears in a buffer called @samp{*tex-shell*}. If @TeX{} gets an +appears in a buffer called @file{*tex-shell*}. If @TeX{} gets an error, you can switch to this buffer and feed it input (this works as in Shell mode; @pxref{Interactive Shell}). Without switching to this buffer you can scroll it so that its last line is visible by typing === modified file 'doc/emacs/trouble.texi' --- doc/emacs/trouble.texi 2012-02-09 05:57:15 +0000 +++ doc/emacs/trouble.texi 2012-04-10 06:54:43 +0000 @@ -636,7 +636,7 @@ The type of machine you are using, and the operating system name and version number (again, automatically included by @kbd{M-x report-emacs-bug}). @kbd{M-x emacs-version @key{RET}} provides this -information too. Copy its output from the @samp{*Messages*} buffer, +information too. Copy its output from the @file{*Messages*} buffer, so that you get it all and get it accurately. @item @@ -699,7 +699,7 @@ @end example @noindent -using @kbd{M-:} or from the @samp{*scratch*} buffer just after +using @kbd{M-:} or from the @file{*scratch*} buffer just after starting Emacs. From then on, Emacs copies all terminal output to the specified termscript file as well, until the Emacs process is killed. If the problem happens when Emacs starts up, put this expression into @@ -725,10 +725,10 @@ to display your locale settings. You can use the @kbd{M-!} command to execute these commands from -Emacs, and then copy the output from the @samp{*Messages*} buffer into +Emacs, and then copy the output from the @file{*Messages*} buffer into the bug report. Alternatively, @kbd{M-x getenv @key{RET} LC_ALL @key{RET}} will display the value of @code{LC_ALL} in the echo area, and -you can copy its output from the @samp{*Messages*} buffer. +you can copy its output from the @file{*Messages*} buffer. @item A description of what behavior you observe that you believe is @@ -761,7 +761,7 @@ backtrace showing how the Lisp program in Emacs arrived at the error. To get the error message text accurately, copy it from the -@samp{*Messages*} buffer into the bug report. Copy all of it, not just +@file{*Messages*} buffer into the bug report. Copy all of it, not just part. @findex toggle-debug-on-error === modified file 'doc/lispintro/ChangeLog' --- doc/lispintro/ChangeLog 2012-02-28 08:17:21 +0000 +++ doc/lispintro/ChangeLog 2012-04-14 01:46:06 +0000 @@ -1,3 +1,7 @@ +2012-04-14 Glenn Morris + + * Makefile.in: Replace non-portable use of $< in ordinary rules. + 2012-02-28 Glenn Morris * emacs-lisp-intro.texi: Standardize possessive apostrophe usage. === modified file 'doc/lispintro/Makefile.in' --- doc/lispintro/Makefile.in 2012-01-19 07:21:25 +0000 +++ doc/lispintro/Makefile.in 2012-04-07 19:23:53 +0000 @@ -1,6 +1,6 @@ #### Makefile for the Emacs Lisp Introduction manual -# Copyright (C) 1994-1999, 2001-2012 Free Software Foundation, Inc. +# Copyright (C) 1994-1999, 2001-2012 Free Software Foundation, Inc. # This file is part of GNU Emacs. @@ -48,21 +48,22 @@ # The file name eintr must fit within 5 characters, to allow for # -NN extensions to fit into DOS 8+3 limits without clashing. +# Note: "<" is not portable in ordinary make rules. ${infodir}/eintr: ${srcdir}/emacs-lisp-intro.texi $(mkinfodir) - $(MAKEINFO) $(MAKEINFO_OPTS) -o $@ $< + $(MAKEINFO) $(MAKEINFO_OPTS) -o $@ ${srcdir}/emacs-lisp-intro.texi emacs-lisp-intro.dvi: ${srcdir}/emacs-lisp-intro.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs-lisp-intro.texi emacs-lisp-intro.ps: emacs-lisp-intro.dvi - $(DVIPS) -o $@ $< + $(DVIPS) -o $@ emacs-lisp-intro.dvi emacs-lisp-intro.pdf: ${srcdir}/emacs-lisp-intro.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/emacs-lisp-intro.texi emacs-lisp-intro.html: ${srcdir}/emacs-lisp-intro.texi - $(MAKEINFO) $(MAKEINFO_OPTS) --html -o $@ $< + $(MAKEINFO) $(MAKEINFO_OPTS) --html -o $@ ${srcdir}/emacs-lisp-intro.texi .PHONY: mostlyclean clean distclean maintainer-clean infoclean === modified file 'doc/lispref/ChangeLog' --- doc/lispref/ChangeLog 2012-04-12 19:14:43 +0000 +++ doc/lispref/ChangeLog 2012-04-14 01:46:06 +0000 @@ -1,3 +1,40 @@ +2012-04-14 Chong Yidong + + * customize.texi (Applying Customizations): + (Custom Themes): New nodes. + + * display.texi (Defining Faces): Reference custom-set-faces. + + * modes.texi (Defining Minor Modes, Defining Minor Modes): + * os.texi (Startup Summary): Copyedits. + +2012-04-14 Glenn Morris + + * loading.texi (Loading Non-ASCII): "unibyte:" can also be at the end. + + * strings.texi (Case Tables): + * objects.texi (General Escape Syntax): + * keymaps.texi (Key Sequences): Use @acronym with "ASCII". + + * buffers.texi, compile.texi, customize.texi, debugging.texi: + * display.texi, edebug.texi, eval.texi, help.texi, intro.texi: + * keymaps.texi, minibuf.texi, modes.texi, os.texi, processes.texi: + * text.texi: Use @file for buffers, per the Texinfo manual. + + * compile.texi (Compiler Errors): Add missing space in buffer name. + +2012-04-14 Chong Yidong + + * processes.texi (Query Before Exit): Remove obsolete function + process-kill-without-query (Bug#11190). + +2012-04-14 Glenn Morris + + * files.texi, frames.texi, loading.texi, os.texi, processes.texi: + Use @env for environment variables. + + * Makefile.in: Replace non-portable use of $< in ordinary rules. + 2012-04-12 Jari Aalto * processes.texi (Synchronous Processes): Mention === modified file 'doc/lispref/Makefile.in' --- doc/lispref/Makefile.in 2012-02-28 04:17:02 +0000 +++ doc/lispref/Makefile.in 2012-04-07 19:23:53 +0000 @@ -106,21 +106,22 @@ pdf: elisp.pdf ps: elisp.ps +## Note: "<" is not portable in ordinary make rules. $(infodir)/elisp: $(srcs) $(mkinfodir) - $(MAKEINFO) $(MAKEINFO_OPTS) -o $@ $< + $(MAKEINFO) $(MAKEINFO_OPTS) -o $@ $(srcdir)/elisp.texi elisp.dvi: $(srcs) - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) $(srcdir)/elisp.texi elisp.html: $(srcs) - $(MAKEINFO) $(MAKEINFO_OPTS) --html -o $@ $< + $(MAKEINFO) $(MAKEINFO_OPTS) --html -o $@ $(srcdir)/elisp.texi elisp.ps: elisp.dvi - $(DVIPS) -o $@ $< + $(DVIPS) -o $@ elisp.dvi elisp.pdf: $(srcs) - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) $(srcdir)/elisp.texi .PHONY: mostlyclean clean distclean maintainer-clean infoclean === modified file 'doc/lispref/buffers.texi' --- doc/lispref/buffers.texi 2012-02-27 07:26:13 +0000 +++ doc/lispref/buffers.texi 2012-04-10 07:11:23 +0000 @@ -863,7 +863,7 @@ resort. If @var{visible-ok} is non-@code{nil}, then it does not matter whether a buffer is displayed somewhere or not. -If no suitable buffer exists, the buffer @samp{*scratch*} is returned +If no suitable buffer exists, the buffer @file{*scratch*} is returned (and created, if necessary). @end defun @@ -874,7 +874,7 @@ The argument @var{visible-ok} is handled as with @code{other-buffer}, see above. If no suitable buffer can be found, the buffer -@samp{*scratch*} is returned. +@file{*scratch*} is returned. @end defun @deffn Command bury-buffer &optional buffer-or-name === modified file 'doc/lispref/compile.texi' --- doc/lispref/compile.texi 2012-02-11 06:17:22 +0000 +++ doc/lispref/compile.texi 2012-04-10 07:11:23 +0000 @@ -92,7 +92,7 @@ Sometimes, the byte compiler produces warning and/or error messages (@pxref{Compiler Errors}, for details). These messages are recorded -in a buffer called @samp{*Compile-Log*}, which uses Compilation mode. +in a buffer called @file{*Compile-Log*}, which uses Compilation mode. @xref{Compilation Mode,,,emacs, The GNU Emacs Manual}. @cindex macro compilation @@ -443,14 +443,14 @@ @cindex compiler errors Byte compilation outputs all errors and warnings into the buffer -@samp{*Compile-Log*}. The messages include file names and line +@file{*Compile-Log*}. The messages include file names and line numbers that identify the location of the problem. The usual Emacs commands for operating on compiler diagnostics work properly on these messages. When an error is due to invalid syntax in the program, the byte compiler might get confused about the errors' exact location. One way -to investigate is to switch to the buffer @w{@samp{*Compiler Input*}}. +to investigate is to switch to the buffer @w{@file{ *Compiler Input*}}. (This buffer name starts with a space, so it does not show up in @kbd{M-x list-buffers}.) This buffer contains the program being compiled, and point shows how far the byte compiler was able to read; @@ -602,7 +602,7 @@ @deffn Command disassemble object &optional buffer-or-name This command displays the disassembled code for @var{object}. In interactive use, or if @var{buffer-or-name} is @code{nil} or omitted, -the output goes in a buffer named @samp{*Disassemble*}. If +the output goes in a buffer named @file{*Disassemble*}. If @var{buffer-or-name} is non-@code{nil}, it must be a buffer or the name of an existing buffer. Then the output goes there, at point, and point is left before the output. === modified file 'doc/lispref/customize.texi' --- doc/lispref/customize.texi 2012-04-09 12:36:01 +0000 +++ doc/lispref/customize.texi 2012-04-14 01:46:06 +0000 @@ -4,20 +4,25 @@ @c See the file elisp.texi for copying conditions. @setfilename ../../info/customize @node Customization, Loading, Macros, Top -@chapter Writing Customization Definitions - -@cindex customization definitions - This chapter describes how to declare user options for customization, -and also customization groups for classifying them. We use the term -@dfn{customization item} to include both kinds of customization -definitions---as well as face definitions (@pxref{Defining Faces}). +@chapter Customization Settings + +@cindex customization item + This chapter describes how to declare customizable variables and +customization groups for classifying them. We use the term +@dfn{customization item} to include customizable variables, +customization groups, as well as faces. + + @xref{Defining Faces}, for the @code{defface} macro, which is used +for declaring customizable faces. @menu -* Common Keywords:: Common keyword arguments for all kinds of - customization declarations. -* Group Definitions:: Writing customization group definitions. -* Variable Definitions:: Declaring user options. -* Customization Types:: Specifying the type of a user option. +* Common Keywords:: Common keyword arguments for all kinds of + customization declarations. +* Group Definitions:: Writing customization group definitions. +* Variable Definitions:: Declaring user options. +* Customization Types:: Specifying the type of a user option. +* Applying Customizations:: Functions to apply customization settings. +* Custom Themes:: Writing Custom themes. @end menu @node Common Keywords @@ -306,7 +311,7 @@ @item :set @var{setfunction} @kindex set@r{, @code{defcustom} keyword} Specify @var{setfunction} as the way to change the value of this -option when using the Customize user interface. The function +option when using the Customize interface. The function @var{setfunction} should take two arguments, a symbol (the option name) and the new value, and should do whatever is necessary to update the value properly for this option (which may not mean simply setting @@ -588,7 +593,7 @@ @item color The value must be a valid color name. The widget provides completion for color names, as well as a sample and a button for selecting a -color name from a list of color names shown in a @samp{*Colors*} +color name from a list of color names shown in a @file{*Colors*} buffer. @end table @@ -1242,3 +1247,168 @@ the data structure is itself recursive, this conversion is an infinite recursion. The @code{lazy} widget prevents the recursion: it convert its @code{:type} argument only when needed. + +@node Applying Customizations +@section Applying Customizations + +The following functions are responsible for installing the user's +customization settings for variables and faces, respectively. When +the user invokes @samp{Save for future sessions} in the Customize +interface, that takes effect by writing a @code{custom-set-variables} +and/or a @code{custom-set-faces} form into the custom file, to be +evaluated the next time Emacs starts up. + +@defun custom-set-variables &rest args +This function installs the variable customizations specified by +@var{args}. Each argument in @var{args} should have the form + +@example +(@var{var} @var{expression} [@var{now} [@var{request} [@var{comment}]]]) +@end example + +@noindent +@var{var} is a variable name (a symbol), and @var{expression} is an +expression which evaluates to the desired customized value. + +If the @code{defcustom} form for @var{var} has been evaluated prior to +this @code{custom-set-variables} call, @var{expression} is immediately +evaluated, and the variable's value is set to the result. Otherwise, +@var{expression} is stored into the variable's @code{saved-value} +property, to be evaluated when the relevant @code{defcustom} is called +(usually when the library defining that variable is loaded into +Emacs). + +The @var{now}, @var{request}, and @var{comment} entries are for +internal use only, and may be omitted. @var{now}, if non-@code{nil}, +means to set the variable's value now, even if the variable's +@code{defcustom} form has not been evaluated. @var{request} is a list +of features to be loaded immediately (@pxref{Named Features}). +@var{comment} is a string describing the customization. +@end defun + +@defun custom-set-faces &rest args +This function installs the face customizations specified by +@var{args}. Each argument in @var{args} should have the form + +@example +(@var{face} @var{spec} [@var{now} [@var{comment}]]) +@end example + +@noindent +@var{face} is a face name (a symbol), and @var{spec} is the customized +face specification for that face (@pxref{Defining Faces}). + +The @var{now} and @var{comment} entries are for internal use only, and +may be omitted. @var{now}, if non-@code{nil}, means to install the +face specification now, even if the @code{defface} form has not been +evaluated. @var{comment} is a string describing the customization. +@end defun + +@node Custom Themes +@section Custom Themes + + @dfn{Custom themes} are collections of settings that can be enabled +or disabled as a unit. @xref{Custom Themes,,, emacs, The GNU Emacs +Manual}. Each Custom theme is defined by an Emacs Lisp source file, +which should follow the conventions described in this section. +(Instead of writing a Custom theme by hand, you can also create one +using a Customize-like interface; @pxref{Creating Custom Themes,,, +emacs, The GNU Emacs Manual}.) + + A Custom theme file should be named @file{@var{foo}-theme.el}, where +@var{foo} is the theme name. The first Lisp form in the file should +be a call to @code{deftheme}, and the last form should be a call to +@code{provide-theme}. + +@defmac deftheme theme &optional doc +This macro declares @var{theme} (a symbol) as the name of a Custom +theme. The optional argument @var{doc} should be a string describing +the theme; this is the description shown when the user invokes the +@code{describe-theme} command or types @kbd{?} in the @samp{*Custom +Themes*} buffer. + +Two special theme names are disallowed: @code{user} is a ``dummy'' +theme which stores the user's direct customization settings, and +@code{changed} is a ``dummy'' theme which stores changes made outside +of the Customize system. If you specify either of these as the +@var{theme} argument, @code{deftheme} signals an error. +@end defmac + +@defmac provide-theme theme +This macro declares that the theme named @var{theme} has been fully +specified. +@end defmac + + In between @code{deftheme} and @code{provide-theme} are Lisp forms +specifying the theme settings: usually a call to +@code{custom-theme-set-variables} and/or a call to +@code{custom-theme-set-faces}. + +@defun custom-theme-set-variables theme &rest args +This function specifies the Custom theme @var{theme}'s variable +settings. @var{theme} should be a symbol. Each argument in +@var{args} should be a list of the form + +@example +(@var{var} @var{expression} [@var{now} [@var{request} [@var{comment}]]]) +@end example + +@noindent +where the list entries have the same meanings as in +@code{custom-set-variables}. @xref{Applying Customizations}. +@end defun + +@defun custom-theme-set-faces theme &rest args +This function specifies the Custom theme @var{theme}'s face settings. +@var{theme} should be a symbol. Each argument in @var{args} should be +a list of the form + +@example +(@var{face} @var{spec} [@var{now} [@var{comment}]]) +@end example + +@noindent +where the list entries have the same meanings as in +@code{custom-set-faces}. @xref{Applying Customizations}. +@end defun + + In theory, a theme file can also contain other Lisp forms, which +would be evaluated when loading the theme, but that is ``bad form''. +To protect against loading themes containing malicious code, Emacs +displays the source file and asks for confirmation from the user +before loading any non-built-in theme for the first time. + + The following functions are useful for programmatically enabling and +disabling Custom themes: + +@defun custom-theme-p theme +This function return a non-@code{nil} value if @var{theme} (a symbol) +is the name of a Custom theme (i.e.@: a Custom theme which has been +loaded into Emacs, whether or not the theme is enabled). Otherwise, +it returns @code{nil}. +@end defun + +@deffn Command load-theme theme &optional no-confirm no-enable +This function loads the Custom theme named @var{theme} from its source +file, looking for the source file in the directories specified by the +variable @code{custom-theme-load-path}. @xref{Custom Themes,,, emacs, +The GNU Emacs Manual}. It also @dfn{enables} the theme, causing its +variable and face settings to take effect. + +If the optional argument @var{no-confirm} is non-@code{nil}, this +skips prompting the user for confirmation before loading the theme. + +If the optional argument @var{no-enable} is non-@code{nil}, the theme +is loaded but not enabled. +@end deffn + +@deffn Command enable-theme theme +This function enables the Custom theme named @var{theme}. It signals +an error if no such theme has been loaded. +@end deffn + +@deffn Command disable-theme theme +This function disables the Custom theme named @var{theme}. The theme +remains loaded, so that a subsequent call to @code{enable-theme} will +re-enable it. +@end deffn === modified file 'doc/lispref/debugging.texi' --- doc/lispref/debugging.texi 2012-02-12 09:51:03 +0000 +++ doc/lispref/debugging.texi 2012-04-10 07:11:23 +0000 @@ -303,7 +303,7 @@ @subsection Using the Debugger When the debugger is entered, it displays the previously selected -buffer in one window and a buffer named @samp{*Backtrace*} in another +buffer in one window and a buffer named @file{*Backtrace*} in another window. The backtrace buffer contains one line for each level of Lisp function execution currently going on. At the beginning of this buffer is a message describing the reason that the debugger was invoked (such @@ -412,7 +412,7 @@ @item R Like @kbd{e}, but also save the result of evaluation in the -buffer @samp{*Debugger-record*}. +buffer @file{*Debugger-record*}. @item q Terminate the program being debugged; return to top-level Emacs @@ -450,7 +450,7 @@ @defun debug &rest debugger-args This function enters the debugger. It switches buffers to a buffer -named @samp{*Backtrace*} (or @samp{*Backtrace*<2>} if it is the second +named @file{*Backtrace*} (or @file{*Backtrace*<2>} if it is the second recursive entry to the debugger, etc.), and fills it with information about the stack of Lisp function calls. It then enters a recursive edit, showing the backtrace buffer in Debugger mode. @@ -461,7 +461,7 @@ way the function @code{debug} can return to its caller. The use of the @var{debugger-args} is that @code{debug} displays the -rest of its arguments at the top of the @samp{*Backtrace*} buffer, so +rest of its arguments at the top of the @file{*Backtrace*} buffer, so that the user can see them. Except as described below, this is the @emph{only} way these arguments are used. @@ -560,7 +560,7 @@ @cindex call stack This function prints a trace of Lisp function calls currently active. This is the function used by @code{debug} to fill up the -@samp{*Backtrace*} buffer. It is written in C, since it must have access +@file{*Backtrace*} buffer. It is written in C, since it must have access to the stack to determine which function calls are active. The return value is always @code{nil}. === modified file 'doc/lispref/display.texi' --- doc/lispref/display.texi 2012-04-04 07:54:02 +0000 +++ doc/lispref/display.texi 2012-04-12 14:50:58 +0000 @@ -268,7 +268,7 @@ function (@pxref{Formatting Strings}). The resulting formatted string is displayed in the echo area; if it contains @code{face} text properties, it is displayed with the specified faces (@pxref{Faces}). -The string is also added to the @samp{*Messages*} buffer, but without +The string is also added to the @file{*Messages*} buffer, but without text properties (@pxref{Logging Messages}). In batch mode, the message is printed to the standard error stream, @@ -341,7 +341,7 @@ If @var{message} is a string, then the optional argument @var{buffer-name} is the name of the buffer used to display it when a -pop-up buffer is used, defaulting to @samp{*Message*}. In the case +pop-up buffer is used, defaulting to @file{*Message*}. In the case where @var{message} is a string and displayed in the echo area, it is not specified whether the contents are inserted into the buffer anyway. @@ -474,16 +474,16 @@ @end defmac @node Logging Messages -@subsection Logging Messages in @samp{*Messages*} +@subsection Logging Messages in @file{*Messages*} @cindex logging echo-area messages Almost all the messages displayed in the echo area are also recorded -in the @samp{*Messages*} buffer so that the user can refer back to +in the @file{*Messages*} buffer so that the user can refer back to them. This includes all the messages that are output with @code{message}. @defopt message-log-max -This variable specifies how many lines to keep in the @samp{*Messages*} +This variable specifies how many lines to keep in the @file{*Messages*} buffer. The value @code{t} means there is no limit on how many lines to keep. The value @code{nil} disables message logging entirely. Here's how to display a message and prevent it from being logged: @@ -494,7 +494,7 @@ @end example @end defopt - To make @samp{*Messages*} more convenient for the user, the logging + To make @file{*Messages*} more convenient for the user, the logging facility combines successive identical messages. It also combines successive related messages for the sake of two cases: question followed by answer, and a series of progress messages. @@ -624,7 +624,7 @@ severity level, with @code{:warning} being the default. @var{buffer-name}, if non-@code{nil}, specifies the name of the buffer -for logging the warning. By default, it is @samp{*Warnings*}. +for logging the warning. By default, it is @file{*Warnings*}. @end defun @defun lwarn type level message &rest args @@ -1885,7 +1885,7 @@ attributes in one frame (@pxref{Attribute Functions}). @menu -* Defining Faces:: How to define a face with @code{defface}. +* Defining Faces:: How to define a face. * Face Attributes:: What is in a face? * Attribute Functions:: Functions to examine and set face attributes. * Displaying Faces:: How Emacs combines the faces specified for a character. @@ -1904,22 +1904,17 @@ @node Defining Faces @subsection Defining Faces - The way to define a new face is with @code{defface}. This creates a -kind of customization item which the user can customize using the -Customization buffer (@pxref{Customization}). - - People are sometimes tempted to create variables whose values specify -which faces to use (for example, Font-Lock does this). In the vast -majority of cases, this is not necessary, and simply using faces -directly is preferable. + The @code{defface} macro defines a face and specifies its default +appearance. The user can subsequently customize the face using the +Customize interface (@pxref{Customization}). @defmac defface face spec doc [keyword value]@dots{} -This declares @var{face} as a customizable face whose default +This macro declares @var{face} as a customizable face whose default attributes are given by @var{spec}. You should not quote the symbol @var{face}, and it should not end in @samp{-face} (that would be -redundant). The argument @var{doc} specifies the face documentation. -The keywords you can use in @code{defface} are the same as in -@code{defgroup} and @code{defcustom} (@pxref{Common Keywords}). +redundant). The argument @var{doc} is a documentation string for the +face. The additional @var{keyword} arguments have the same meanings +as in @code{defgroup} and @code{defcustom} (@pxref{Common Keywords}). When @code{defface} executes, it defines the face according to @var{spec}, then uses any customizations that were read from the @@ -1930,12 +1925,14 @@ overrides any customizations of the face. This way, the face reflects exactly what the @code{defface} says. -The purpose of @var{spec} is to specify how the face should appear on -different kinds of terminals. It should be an alist whose elements -have the form @code{(@var{display} @var{atts})}. @var{display} -specifies a class of terminals (see below), while @var{atts} is a -property list of face attributes and their values, specifying the -appearance of the face on matching terminals +@cindex face specification +The @var{spec} argument is a @dfn{face specification}, which states +how the face should appear on different kinds of terminals. It should +be an alist whose elements each have the form @code{(@var{display} +@var{atts})}. @var{display} specifies a class of terminals (see +below), while @var{atts} is a property list of face attributes and +their values, specifying the appearance of the face on matching +terminals @iftex (see the next section for details about face attributes). @end iftex @@ -2022,14 +2019,22 @@ :group 'basic-faces) @end example - Internally, @code{defface} uses the symbol property -@code{face-defface-spec} to record the specified face attributes. The -attributes saved by the user with the customization buffer are -recorded in the symbol property @code{saved-face}; the attributes -customized by the user for the current session, but not saved, are -recorded in the symbol property @code{customized-face}. The -documentation string is recorded in the symbol property -@code{face-documentation}. + Internally, Emacs stores the face's default specification in its +@code{face-defface-spec} symbol property (@pxref{Property Lists}). +The @code{saved-face} property stores the face specification saved by +the user, using the customization buffer; the @code{customized-face} +property stores the face specification customized for the current +session, but not saved; and the @code{theme-face} property stores an +alist associating the active customization settings and Custom themes +with their specifications for that face. The face's documentation +string is stored in the @code{face-documentation} property. But +normally you should not try to set any of these properties directly. +@xref{Applying Customizations}, for the @code{custom-set-faces} +function, which is used to apply customized face settings. + + People are sometimes tempted to create variables whose values +specify a face to use. In the vast majority of cases, this is not +necessary; it is preferable to simply use faces directly. @defopt frame-background-mode This option, if non-@code{nil}, specifies the background type to use for @@ -2752,7 +2757,7 @@ @itemx warning @itemx success For text concerning errors, warnings, or successes. For example, -these are used for messages in @samp{*Compilation*} buffers. +these are used for messages in @file{*Compilation*} buffers. @end table @node Font Selection === modified file 'doc/lispref/edebug.texi' --- doc/lispref/edebug.texi 2012-03-31 19:58:05 +0000 +++ doc/lispref/edebug.texi 2012-04-10 07:11:23 +0000 @@ -622,7 +622,7 @@ saved outside window configuration---so that even if you turn saving back @emph{on}, the current window configuration remains unchanged when you next exit Edebug (by continuing the program). However, the -automatic redisplay of @samp{*edebug*} and @samp{*edebug-trace*} may +automatic redisplay of @file{*edebug*} and @file{*edebug-trace*} may conflict with the buffers you wish to see unless you have enough windows open. @@ -661,18 +661,18 @@ @node Eval List @subsection Evaluation List Buffer - You can use the @dfn{evaluation list buffer}, called @samp{*edebug*}, to + You can use the @dfn{evaluation list buffer}, called @file{*edebug*}, to evaluate expressions interactively. You can also set up the @dfn{evaluation list} of expressions to be evaluated automatically each time Edebug updates the display. @table @kbd @item E -Switch to the evaluation list buffer @samp{*edebug*} +Switch to the evaluation list buffer @file{*edebug*} (@code{edebug-visit-eval-list}). @end table - In the @samp{*edebug*} buffer you can use the commands of Lisp + In the @file{*edebug*} buffer you can use the commands of Lisp Interaction mode (@pxref{Lisp Interaction,,, emacs, The GNU Emacs Manual}) as well as these special commands: @@ -699,7 +699,7 @@ @end table You can evaluate expressions in the evaluation list window with -@kbd{C-j} or @kbd{C-x C-e}, just as you would in @samp{*scratch*}; +@kbd{C-j} or @kbd{C-x C-e}, just as you would in @file{*scratch*}; but they are evaluated in the context outside of Edebug. The expressions you enter interactively (and their results) are lost @@ -758,8 +758,8 @@ @kbd{C-c C-u}. You need not insert dashes in the comment line---its contents don't matter. -After selecting @samp{*edebug*}, you can return to the source code -buffer with @kbd{C-c C-w}. The @samp{*edebug*} buffer is killed when +After selecting @file{*edebug*}, you can return to the source code +buffer with @kbd{C-c C-w}. The @file{*edebug*} buffer is killed when you continue execution, and recreated next time it is needed. @node Printing in Edebug @@ -819,7 +819,7 @@ @cindex trace buffer Edebug can record an execution trace, storing it in a buffer named -@samp{*edebug-trace*}. This is a log of function calls and returns, +@file{*edebug-trace*}. This is a log of function calls and returns, showing the function names and their arguments and values. To enable trace recording, set @code{edebug-trace} to a non-@code{nil} value. @@ -1567,7 +1567,7 @@ @defopt edebug-trace If this is non-@code{nil}, trace each function entry and exit. -Tracing output is displayed in a buffer named @samp{*edebug-trace*}, one +Tracing output is displayed in a buffer named @file{*edebug-trace*}, one function entry or exit per line, indented by the recursion level. Also see @code{edebug-tracing}, in @ref{Trace Buffer}. === modified file 'doc/lispref/elisp.texi' --- doc/lispref/elisp.texi 2012-04-05 18:32:38 +0000 +++ doc/lispref/elisp.texi 2012-04-12 14:50:58 +0000 @@ -123,7 +123,7 @@ * Functions:: A function is a Lisp program that can be invoked from other functions. * Macros:: Macros are a way to extend the Lisp language. -* Customization:: Writing customization declarations. +* Customization:: Making variables and faces customizable. * Loading:: Reading files of Lisp code into Lisp. * Byte Compilation:: Compilation makes programs run faster. @@ -500,6 +500,8 @@ * Group Definitions:: Writing customization group definitions. * Variable Definitions:: Declaring user options. * Customization Types:: Specifying the type of a user option. +* Applying Customizations:: Functions to apply customization settings. +* Custom Themes:: Writing Custom themes. Customization Types @@ -1295,7 +1297,7 @@ Faces -* Defining Faces:: How to define a face with @code{defface}. +* Defining Faces:: How to define a face. * Face Attributes:: What is in a face? * Attribute Functions:: Functions to examine and set face attributes. * Displaying Faces:: How Emacs combines the faces specified for === modified file 'doc/lispref/eval.texi' --- doc/lispref/eval.texi 2012-03-10 09:30:21 +0000 +++ doc/lispref/eval.texi 2012-04-10 07:11:23 +0000 @@ -807,7 +807,7 @@ expressions that were read, evaluated, and printed from buffers (including the minibuffer) by the standard Emacs commands which do this. (Note that this does @emph{not} include evaluation in -@samp{*ielm*} buffers, nor evaluation using @kbd{C-j} in +@file{*ielm*} buffers, nor evaluation using @kbd{C-j} in @code{lisp-interaction-mode}.) The elements are ordered most recent first. === modified file 'doc/lispref/files.texi' --- doc/lispref/files.texi 2012-04-01 02:44:24 +0000 +++ doc/lispref/files.texi 2012-04-08 02:07:16 +0000 @@ -2154,7 +2154,7 @@ results. @c Wordy to avoid overfull hbox. --rjc 15mar92 -Here we assume that the environment variable @code{HOME}, which holds +Here we assume that the environment variable @env{HOME}, which holds the user's home directory name, has value @samp{/xcssun/users/rms}. @example @@ -2239,9 +2239,9 @@ the proper directory before calling @code{make-temp-file}. @defopt temporary-file-directory -@cindex @code{TMPDIR} environment variable -@cindex @code{TMP} environment variable -@cindex @code{TEMP} environment variable +@cindex @env{TMPDIR} environment variable +@cindex @env{TMP} environment variable +@cindex @env{TEMP} environment variable This variable specifies the directory name for creating temporary files. Its value should be a directory name (@pxref{Directory Names}), but it is good for Lisp programs to cope if the value is a directory's file @@ -2249,7 +2249,7 @@ @code{expand-file-name} is a good way to achieve that. The default value is determined in a reasonable way for your operating -system; it is based on the @code{TMPDIR}, @code{TMP} and @code{TEMP} +system; it is based on the @env{TMPDIR}, @env{TMP} and @env{TEMP} environment variables, with a fall-back to a system-dependent name if none of these variables is defined. === modified file 'doc/lispref/frames.texi' --- doc/lispref/frames.texi 2012-03-17 09:19:02 +0000 +++ doc/lispref/frames.texi 2012-04-08 02:07:16 +0000 @@ -488,7 +488,7 @@ @item display The display on which to open this frame. It should be a string of the form @code{"@var{host}:@var{dpy}.@var{screen}"}, just like the -@code{DISPLAY} environment variable. +@env{DISPLAY} environment variable. @vindex display-type, a frame parameter @item display-type === modified file 'doc/lispref/help.texi' --- doc/lispref/help.texi 2012-04-09 12:36:01 +0000 +++ doc/lispref/help.texi 2012-04-14 01:46:06 +0000 @@ -180,7 +180,7 @@ @c Wordy to prevent overfull hboxes. --rjc 15mar92 Here is an example of using the two functions, @code{documentation} and @code{documentation-property}, to display the documentation strings for -several symbols in a @samp{*Help*} buffer. +several symbols in a @file{*Help*} buffer. @anchor{describe-symbols example} @smallexample @@ -535,7 +535,7 @@ documentation string, or @code{nil}, for @var{symbol} as a function, variable, etc. -It also displays the symbols in a buffer named @samp{*Apropos*}, each +It also displays the symbols in a buffer named @file{*Apropos*}, each with a one-line description taken from the beginning of its documentation string. @@ -648,7 +648,7 @@ @defun help-buffer This function returns the name of the help buffer, which is normally -@samp{*Help*}; if such a buffer does not exist, it is first created. +@file{*Help*}; if such a buffer does not exist, it is first created. @end defun @defmac with-help-window buffer-name body@dots{} @@ -662,16 +662,16 @@ @end defmac @defun help-setup-xref item interactive-p -This function updates the cross reference data in the @samp{*Help*} +This function updates the cross reference data in the @file{*Help*} buffer, which is used to regenerate the help information when the user clicks on the @samp{Back} or @samp{Forward} buttons. Most commands -that use the @samp{*Help*} buffer should invoke this function before +that use the @file{*Help*} buffer should invoke this function before clearing the buffer. The @var{item} argument should have the form @code{(@var{function} . @var{args})}, where @var{function} is a function to call, with argument list @var{args}, to regenerate the help buffer. The @var{interactive-p} argument is non-@code{nil} if the calling command was invoked interactively; in that case, the stack of items -for the @samp{*Help*} buffer's @samp{Back} buttons is cleared. +for the @file{*Help*} buffer's @samp{Back} buttons is cleared. @end defun @xref{describe-symbols example}, for an example of using === modified file 'doc/lispref/intro.texi' --- doc/lispref/intro.texi 2012-02-26 02:25:07 +0000 +++ doc/lispref/intro.texi 2012-04-10 07:11:23 +0000 @@ -247,7 +247,7 @@ Many of the examples in this manual print text when they are evaluated. If you execute example code in a Lisp Interaction buffer -(such as the buffer @samp{*scratch*}), the printed text is inserted into +(such as the buffer @file{*scratch*}), the printed text is inserted into the buffer. If you execute the example by other means (such as by evaluating the function @code{eval-region}), the printed text is displayed in the echo area. === modified file 'doc/lispref/keymaps.texi' --- doc/lispref/keymaps.texi 2012-03-10 03:27:10 +0000 +++ doc/lispref/keymaps.texi 2012-04-10 07:34:53 +0000 @@ -64,7 +64,7 @@ @kbd{C-x l}. Key sequences containing function keys, mouse button events, or -non-ASCII characters such as @kbd{C-=} or @kbd{H-a} cannot be +non-@acronym{ASCII} characters such as @kbd{C-=} or @kbd{H-a} cannot be represented as strings; they have to be represented as vectors. In the vector representation, each element of the vector represents @@ -808,7 +808,7 @@ @defun current-local-map This function returns the current buffer's local keymap, or @code{nil} if it has none. In the following example, the keymap for the -@samp{*scratch*} buffer (using Lisp Interaction mode) is a sparse keymap +@file{*scratch*} buffer (using Lisp Interaction mode) is a sparse keymap in which the entry for @key{ESC}, @acronym{ASCII} code 27, is another sparse keymap. @@ -1922,7 +1922,7 @@ @deffn Command describe-bindings &optional prefix buffer-or-name This function creates a listing of all current key bindings, and -displays it in a buffer named @samp{*Help*}. The text is grouped by +displays it in a buffer named @file{*Help*}. The text is grouped by modes---minor modes first, then the major mode, then global bindings. If @var{prefix} is non-@code{nil}, it should be a prefix key; then the === modified file 'doc/lispref/loading.texi' --- doc/lispref/loading.texi 2012-03-10 04:00:13 +0000 +++ doc/lispref/loading.texi 2012-04-12 01:09:15 +0000 @@ -235,7 +235,7 @@ in a list of directories specified by the variable @code{load-path}. @defvar load-path -@cindex @code{EMACSLOADPATH} environment variable +@cindex @env{EMACSLOADPATH} environment variable The value of this variable is a list of directories to search when loading files with @code{load}. Each element is a string (which must be a directory name) or @code{nil} (which stands for the current working @@ -375,7 +375,7 @@ inserting them in unibyte buffers converts them to unibyte automatically. However, if this does make a difference, you can force a particular Lisp file to be interpreted as unibyte by writing -@samp{-*-unibyte: t;-*-} in a comment on the file's first line. With +@samp{unibyte: t} in a local variables section. With that designator, the file will unconditionally be interpreted as unibyte, even in an ordinary multibyte Emacs session. This can matter when making keybindings to non-@acronym{ASCII} characters written as === modified file 'doc/lispref/minibuf.texi' --- doc/lispref/minibuf.texi 2012-04-09 12:36:01 +0000 +++ doc/lispref/minibuf.texi 2012-04-14 01:46:06 +0000 @@ -1062,7 +1062,7 @@ the @var{collection} argument, and the value of @code{minibuffer-completion-predicate} as the @var{predicate} argument. The list of completions is displayed as text in a buffer named -@samp{*Completions*}. +@file{*Completions*}. @end deffn @defun display-completion-list completions &optional common-substring @@ -1756,7 +1756,7 @@ The value should be a function for @dfn{annotating} completions. The function should take one argument, @var{string}, which is a possible completion. It should return a string, which is displayed after the -completion @var{string} in the @samp{*Completions*} buffer. +completion @var{string} in the @file{*Completions*} buffer. @item display-sort-function The value should be a function for sorting completions. The function === modified file 'doc/lispref/modes.texi' --- doc/lispref/modes.texi 2012-03-16 01:40:20 +0000 +++ doc/lispref/modes.texi 2012-04-12 14:50:58 +0000 @@ -628,7 +628,7 @@ This function sets the major mode of @var{buffer} to the default value of @code{major-mode}; if that is @code{nil}, it uses the current buffer's major mode (if that is suitable). As an exception, -if @var{buffer}'s name is @samp{*scratch*}, it sets the mode to +if @var{buffer}'s name is @file{*scratch*}, it sets the mode to @code{initial-major-mode}. The low-level primitives for creating buffers do not use this function, @@ -637,9 +637,9 @@ @end defun @defopt initial-major-mode -@cindex @samp{*scratch*} +@cindex @file{*scratch*} The value of this variable determines the major mode of the initial -@samp{*scratch*} buffer. The value should be a symbol that is a major +@file{*scratch*} buffer. The value should be a symbol that is a major mode command. The default value is @code{lisp-interaction-mode}. @end defopt @@ -908,7 +908,7 @@ (@pxref{Reverting}). An example of a major mode derived from Special mode is Buffer Menu -mode, which is used by the @samp{*Buffer List*} buffer. @xref{List +mode, which is used by the @file{*Buffer List*} buffer. @xref{List Buffers,,Listing Existing Buffers, emacs, The GNU Emacs Manual}. @end deffn @@ -1571,8 +1571,8 @@ One of the effects of making a minor mode global is that the @var{mode} variable becomes a customization variable. Toggling it -through the Custom interface turns the mode on and off, and its value -can be saved for future Emacs sessions (@pxref{Saving +through the Customize interface turns the mode on and off, and its +value can be saved for future Emacs sessions (@pxref{Saving Customizations,,, emacs, The GNU Emacs Manual}. For the saved variable to work, you should ensure that the @code{define-minor-mode} form is evaluated each time Emacs starts; for packages that are not @@ -1691,7 +1691,7 @@ in Fundamental mode. This defines the customization option @var{global-mode} (@pxref{Customization}), -which can be toggled in the Custom interface to turn the minor mode on +which can be toggled in the Customize interface to turn the minor mode on and off. As with @code{define-minor-mode}, you should ensure that the @code{define-globalized-minor-mode} form is evaluated each time Emacs starts, for example by providing a @code{:require} keyword. @@ -2016,7 +2016,7 @@ This buffer-local variable contains the mode line information on process status in modes used for communicating with subprocesses. It is displayed immediately following the major mode name, with no intervening -space. For example, its value in the @samp{*shell*} buffer is +space. For example, its value in the @file{*shell*} buffer is @code{(":%s")}, which allows the shell to display its status along with the major mode as: @samp{(Shell:run)}. Normally this variable is @code{nil}. === modified file 'doc/lispref/objects.texi' --- doc/lispref/objects.texi 2012-02-25 04:03:43 +0000 +++ doc/lispref/objects.texi 2012-04-10 07:34:53 +0000 @@ -352,7 +352,7 @@ In addition to the specific escape sequences for special important control characters, Emacs provides several types of escape syntax that -you can use to specify non-ASCII text characters. +you can use to specify non-@acronym{ASCII} text characters. @cindex unicode character escape You can specify characters by their Unicode values. === modified file 'doc/lispref/os.texi' --- doc/lispref/os.texi 2012-04-04 08:11:01 +0000 +++ doc/lispref/os.texi 2012-04-12 14:50:58 +0000 @@ -89,7 +89,7 @@ @c set-locale-environment @item It sets the language environment and the terminal coding system, -if requested by environment variables such as @code{LANG}. +if requested by environment variables such as @env{LANG}. @item It does some basic parsing of the command-line arguments. @@ -170,7 +170,7 @@ It runs the normal hook @code{after-init-hook}. @item -If the buffer @samp{*scratch*} exists and is still in Fundamental mode +If the buffer @file{*scratch*} exists and is still in Fundamental mode (as it should be by default), it sets its major mode according to @code{initial-major-mode}. @@ -196,7 +196,7 @@ @item If @code{initial-buffer-choice} is a string, it visits the file with -that name. If the @samp{*scratch*} buffer exists and is +that name. If the @file{*scratch*} buffer exists and is empty, it inserts @code{initial-scratch-message} into that buffer. @c To make things nice and confusing, the next three items can be @@ -254,7 +254,7 @@ @defopt inhibit-startup-screen This variable, if non-@code{nil}, inhibits the startup screen. In -that case, Emacs typically displays the @samp{*scratch*} buffer; but +that case, Emacs typically displays the @file{*scratch*} buffer; but see @code{initial-buffer-choice}, below. Do not set this variable in the init file of a new user, or in a way @@ -274,7 +274,7 @@ @ignore @c I do not think this should be mentioned. AFAICS it is just a dodge @c around inhibit-startup-screen not being settable on a site-wide basis. -If its value is @code{t}, Emacs displays the @samp{*scratch*} buffer. +If its value is @code{t}, Emacs displays the @file{*scratch*} buffer. @end ignore @end defopt @@ -290,17 +290,17 @@ Emacs explicitly checks for an expression as shown above in your init file; your login name must appear in the expression as a Lisp string -constant. You can also use the Custom interface. Other methods of setting -@code{inhibit-startup-echo-area-message} to the same value do not -inhibit the startup message. This way, you can easily inhibit the +constant. You can also use the Customize interface. Other methods of +setting @code{inhibit-startup-echo-area-message} to the same value do +not inhibit the startup message. This way, you can easily inhibit the message for yourself if you wish, but thoughtless copying of your init file will not inhibit the message for someone else. @end defopt @defopt initial-scratch-message This variable, if non-@code{nil}, should be a string, which is -inserted into the @samp{*scratch*} buffer when Emacs starts up. If it -is @code{nil}, the @samp{*scratch*} buffer is empty. +inserted into the @file{*scratch*} buffer when Emacs starts up. If it +is @code{nil}, the @file{*scratch*} buffer is empty. @end defopt @noindent @@ -352,8 +352,8 @@ stronger @samp{-Q}) says not to load an init file, while @samp{-u @var{user}} says to load @var{user}'s init file instead of yours. @xref{Entering Emacs,,, emacs, The GNU Emacs Manual}. If neither -option is specified, Emacs uses the @code{LOGNAME} environment -variable, or the @code{USER} (most systems) or @code{USERNAME} (MS +option is specified, Emacs uses the @env{LOGNAME} environment +variable, or the @env{USER} (most systems) or @env{USERNAME} (MS systems) variable, to find your home directory and thus your init file; this way, even if you have su'd, Emacs still loads your own init file. If those environment variables are absent, though, Emacs uses @@ -430,7 +430,7 @@ Each terminal type can have its own Lisp library that Emacs loads when run on that type of terminal. The library's name is constructed by concatenating the value of the variable @code{term-file-prefix} and the -terminal type (specified by the environment variable @code{TERM}). +terminal type (specified by the environment variable @env{TERM}). Normally, @code{term-file-prefix} has the value @code{"term/"}; changing this is not recommended. Emacs finds the file in the normal manner, by searching the @code{load-path} directories, and @@ -468,7 +468,7 @@ have their own libraries. @xref{Hooks}. @defvar term-file-prefix -@cindex @code{TERM} environment variable +@cindex @env{TERM} environment variable If the value of this variable is non-@code{nil}, Emacs loads a terminal-specific initialization file as follows: @@ -481,7 +481,7 @@ init file if you do not wish to load the terminal-initialization file. -On MS-DOS, Emacs sets the @code{TERM} environment variable to @samp{internal}. +On MS-DOS, Emacs sets the @env{TERM} environment variable to @samp{internal}. @end defvar @defvar term-setup-hook @@ -1010,7 +1010,7 @@ @defun parse-colon-path path This function takes a search path string such as the value of -the @code{PATH} environment variable, and splits it at the separators, +the @env{PATH} environment variable, and splits it at the separators, returning a list of directory names. @code{nil} in this list means the current directory. Although the function's name says ``colon'', it actually uses the value of @code{path-separator}. @@ -1113,7 +1113,7 @@ @defun user-login-name &optional uid This function returns the name under which the user is logged in. -It uses the environment variables @code{LOGNAME} or @code{USER} if +It uses the environment variables @env{LOGNAME} or @env{USER} if either is set. Otherwise, the value is based on the effective @acronym{UID}, not the real @acronym{UID}. @@ -1124,12 +1124,12 @@ @defun user-real-login-name This function returns the user name corresponding to Emacs's real @acronym{UID}. This ignores the effective @acronym{UID}, and the -environment variables @code{LOGNAME} and @code{USER}. +environment variables @env{LOGNAME} and @env{USER}. @end defun @defun user-full-name &optional uid This function returns the full name of the logged-in user---or the value -of the environment variable @code{NAME}, if that is set. +of the environment variable @env{NAME}, if that is set. If the Emacs process's user-id does not correspond to any known user (and provided @code{NAME} is not set), the result is @code{"unknown"}. @@ -1249,9 +1249,9 @@ as a list of integers) to analyze instead of the current time. @end defun -The current time zone is determined by the @samp{TZ} environment +The current time zone is determined by the @env{TZ} environment variable. @xref{System Environment}. For example, you can tell Emacs -to use universal time with @code{(setenv "TZ" "UTC0")}. If @samp{TZ} +to use universal time with @code{(setenv "TZ" "UTC0")}. If @env{TZ} is not in the environment, Emacs uses a platform-dependent default time zone. @@ -1325,7 +1325,7 @@ The optional argument @var{zone} defaults to the current time zone and its daylight saving time rules. If specified, it can be either a list (as you would get from @code{current-time-zone}), a string as in the -@code{TZ} environment variable, @code{t} for Universal Time, or an +@env{TZ} environment variable, @code{t} for Universal Time, or an integer (as you would get from @code{decode-time}). The specified zone is used without any further alteration for daylight saving time. @@ -2233,7 +2233,7 @@ shutdown. @end defvar -Here is an example that just inserts some text into @samp{*scratch*} when +Here is an example that just inserts some text into @file{*scratch*} when Emacs is restarted by the session manager. @example === modified file 'doc/lispref/processes.texi' --- doc/lispref/processes.texi 2012-04-12 19:14:43 +0000 +++ doc/lispref/processes.texi 2012-04-14 01:46:06 +0000 @@ -77,14 +77,14 @@ fashion, their common arguments are described here. @cindex execute program -@cindex @code{PATH} environment variable -@cindex @code{HOME} environment variable +@cindex @env{PATH} environment variable +@cindex @env{HOME} environment variable In all cases, the function's @var{program} argument specifies the program to be run. An error is signaled if the file is not found or cannot be executed. If the file name is relative, the variable @code{exec-path} contains a list of directories to search. Emacs initializes @code{exec-path} when it starts up, based on the value of -the environment variable @code{PATH}. The standard file name +the environment variable @env{PATH}. The standard file name constructs, @samp{~}, @samp{.}, and @samp{..}, are interpreted as usual in @code{exec-path}, but environment variable substitutions (@samp{$HOME}, etc.) are not recognized; use @@ -717,7 +717,7 @@ it finally deletes any process whose status was @samp{Exited} or @samp{Signaled}. It returns @code{nil}. -The processes are shown in a buffer named @samp{*Process List*}, whose +The processes are shown in a buffer named @file{*Process List*}, whose major mode is named Process Menu mode. If @var{query-only} is non-@code{nil} then it lists only processes @@ -1632,35 +1632,17 @@ This function sets the query flag of @var{process} to @var{flag}. It returns @var{flag}. +Here is an example of using @code{set-process-query-on-exit-flag} on a +shell process to avoid querying: + @smallexample @group -;; @r{Don't query about the shell process} (set-process-query-on-exit-flag (get-process "shell") nil) @result{} t @end group @end smallexample @end defun -@defun process-kill-without-query process &optional do-query -This function clears the query flag of @var{process}, so that -Emacs will not query the user on account of that process. - -Actually, the function does more than that: it returns the old value of -the process's query flag, and sets the query flag to @var{do-query}. -Please don't use this function to do those things any more---please -use the newer, cleaner functions @code{process-query-on-exit-flag} and -@code{set-process-query-on-exit-flag} in all but the simplest cases. -The only way you should use @code{process-kill-without-query} nowadays -is like this: - -@smallexample -@group -;; @r{Don't query about the shell process} -(process-kill-without-query (get-process "shell")) -@end group -@end smallexample -@end defun - @node System Processes @section Accessing Other Processes @cindex system processes === modified file 'doc/lispref/strings.texi' --- doc/lispref/strings.texi 2012-03-22 06:21:28 +0000 +++ doc/lispref/strings.texi 2012-04-10 07:34:53 +0000 @@ -1117,7 +1117,7 @@ @acronym{ASCII} characters; for example, in the Turkish language environment, the @acronym{ASCII} character @samp{I} is downcased into a Turkish ``dotless i''. This can interfere with code that requires -ordinary ASCII case conversion, such as implementations of +ordinary @acronym{ASCII} case conversion, such as implementations of @acronym{ASCII}-based network protocols. In that case, use the @code{with-case-table} macro with the variable @var{ascii-case-table}, which stores the unmodified case table for the @acronym{ASCII} === modified file 'doc/lispref/text.texi' --- doc/lispref/text.texi 2012-03-31 10:27:04 +0000 +++ doc/lispref/text.texi 2012-04-10 07:11:23 +0000 @@ -4345,7 +4345,7 @@ arguments. @end defvar - Output of messages into the @samp{*Messages*} buffer does not + Output of messages into the @file{*Messages*} buffer does not call these functions. @defmac combine-after-change-calls body@dots{} === modified file 'doc/lispref/vol1.texi' --- doc/lispref/vol1.texi 2012-04-05 18:32:38 +0000 +++ doc/lispref/vol1.texi 2012-04-12 14:50:58 +0000 @@ -141,7 +141,7 @@ * Functions:: A function is a Lisp program that can be invoked from other functions. * Macros:: Macros are a way to extend the Lisp language. -* Customization:: Writing customization declarations. +* Customization:: Making variables and faces customizable. * Loading:: Reading files of Lisp code into Lisp. * Byte Compilation:: Compilation makes programs run faster. @@ -520,6 +520,8 @@ * Group Definitions:: Writing customization group definitions. * Variable Definitions:: Declaring user options. * Customization Types:: Specifying the type of a user option. +* Applying Customizations:: Functions to apply customization settings. +* Custom Themes:: Writing Custom themes. Customization Types @@ -1317,7 +1319,7 @@ Faces -* Defining Faces:: How to define a face with @code{defface}. +* Defining Faces:: How to define a face. * Face Attributes:: What is in a face? * Attribute Functions:: Functions to examine and set face attributes. * Displaying Faces:: How Emacs combines the faces specified for === modified file 'doc/lispref/vol2.texi' --- doc/lispref/vol2.texi 2012-04-05 18:32:38 +0000 +++ doc/lispref/vol2.texi 2012-04-12 14:50:58 +0000 @@ -140,7 +140,7 @@ * Functions:: A function is a Lisp program that can be invoked from other functions. * Macros:: Macros are a way to extend the Lisp language. -* Customization:: Writing customization declarations. +* Customization:: Making variables and faces customizable. * Loading:: Reading files of Lisp code into Lisp. * Byte Compilation:: Compilation makes programs run faster. @@ -519,6 +519,8 @@ * Group Definitions:: Writing customization group definitions. * Variable Definitions:: Declaring user options. * Customization Types:: Specifying the type of a user option. +* Applying Customizations:: Functions to apply customization settings. +* Custom Themes:: Writing Custom themes. Customization Types @@ -1316,7 +1318,7 @@ Faces -* Defining Faces:: How to define a face with @code{defface}. +* Defining Faces:: How to define a face. * Face Attributes:: What is in a face? * Attribute Functions:: Functions to examine and set face attributes. * Displaying Faces:: How Emacs combines the faces specified for === modified file 'doc/misc/ChangeLog' --- doc/misc/ChangeLog 2012-04-09 16:23:20 +0000 +++ doc/misc/ChangeLog 2012-04-14 01:46:06 +0000 @@ -1,3 +1,24 @@ +2012-04-14 Alan Mackenzie + + * cc-mode.texi (c-offsets-alist): Correct a typo. + +2012-04-14 Jérémie Courrèges-Anglas (tiny change) + + * org.texi (Deadlines and scheduling): Fix the example: the + DEADLINE item should come right after the headline. We enforce + this convention, so it is a bug not to illustrate it correctly in + the manual. + +2012-04-14 Ippei FURUHASHI (tiny change) + + * org.texi (Agenda commands): Fix documentation bug by swapping + the equivalent keybindings to `org-agenda-next-line' with the ones + to `org-agenda-previous-line'. + +2012-04-14 Glenn Morris + + * Makefile.in: Replace non-portable use of $< in ordinary rules. + 2012-04-09 Eli Zaretskii * makefile.w32-in (INFO_TARGETS, DVI_TARGETS, clean): Add === modified file 'doc/misc/Makefile.in' --- doc/misc/Makefile.in 2012-04-09 13:10:22 +0000 +++ doc/misc/Makefile.in 2012-04-14 01:46:06 +0000 @@ -1,6 +1,6 @@ #### Makefile for documentation other than the Emacs manual. -# Copyright (C) 1994, 1996-2012 Free Software Foundation, Inc. +# Copyright (C) 1994, 1996-2012 Free Software Foundation, Inc. # This file is part of GNU Emacs. @@ -227,235 +227,237 @@ # to exist in the build directory. # In a distribution of Emacs, the Info files should be up to date. +# Note: "<" is not portable in ordinary make rules. + ## "short" target names for convenience, to just rebuild one manual. ada-mode : $(infodir)/ada-mode $(infodir)/ada-mode: ada-mode.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) ada-mode.texi ada-mode.dvi: ${srcdir}/ada-mode.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/ada-mode.texi ada-mode.pdf: ${srcdir}/ada-mode.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/ada-mode.texi auth : $(infodir)/auth $(infodir)/auth: auth.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) auth.texi auth.dvi: ${srcdir}/auth.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/auth.texi auth.pdf: ${srcdir}/auth.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/auth.texi autotype : $(infodir)/autotype $(infodir)/autotype: autotype.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) autotype.texi autotype.dvi: ${srcdir}/autotype.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/autotype.texi autotype.pdf: ${srcdir}/autotype.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/autotype.texi calc : $(infodir)/calc $(infodir)/calc: calc.texi $(emacsdir)/emacsver.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) calc.texi calc.dvi: ${srcdir}/calc.texi $(emacsdir)/emacsver.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/calc.texi calc.pdf: ${srcdir}/calc.texi $(emacsdir)/emacsver.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/calc.texi ccmode : $(infodir)/ccmode $(infodir)/ccmode: cc-mode.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) cc-mode.texi cc-mode.dvi: ${srcdir}/cc-mode.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/cc-mode.texi cc-mode.pdf: ${srcdir}/cc-mode.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/cc-mode.texi cl : $(infodir)/cl $(infodir)/cl: cl.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) cl.texi cl.dvi: ${srcdir}/cl.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/cl.texi cl.pdf: ${srcdir}/cl.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/cl.texi dbus : $(infodir)/dbus $(infodir)/dbus: dbus.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) dbus.texi dbus.dvi: ${srcdir}/dbus.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/dbus.texi dbus.pdf: ${srcdir}/dbus.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/dbus.texi dired-x : $(infodir)/dired-x $(infodir)/dired-x: dired-x.texi $(emacsdir)/emacsver.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) dired-x.texi dired-x.dvi: ${srcdir}/dired-x.texi $(emacsdir)/emacsver.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/dired-x.texi dired-x.pdf: ${srcdir}/dired-x.texi $(emacsdir)/emacsver.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/dired-x.texi ebrowse : $(infodir)/ebrowse $(infodir)/ebrowse: ebrowse.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) ebrowse.texi ebrowse.dvi: ${srcdir}/ebrowse.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/ebrowse.texi ebrowse.pdf: ${srcdir}/ebrowse.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/ebrowse.texi ede : $(infodir)/ede $(infodir)/ede: ede.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) ede.texi ede.dvi: ${srcdir}/ede.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/ede.texi ede.pdf: ${srcdir}/ede.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/ede.texi ediff : $(infodir)/ediff $(infodir)/ediff: ediff.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) ediff.texi ediff.dvi: ${srcdir}/ediff.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/ediff.texi ediff.pdf: ${srcdir}/ediff.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/ediff.texi edt : $(infodir)/edt $(infodir)/edt: edt.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) edt.texi edt.dvi: ${srcdir}/edt.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/edt.texi edt.pdf: ${srcdir}/edt.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/edt.texi eieio : $(infodir)/eieio $(infodir)/eieio: eieio.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) eieio.texi eieio.dvi: ${srcdir}/eieio.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/eieio.texi eieio.pdf: ${srcdir}/eieio.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/eieio.texi emacs-gnutls : $(infodir)/emacs-gnutls $(infodir)/emacs-gnutls: emacs-gnutls.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) emacs-gnutls.texi emacs-gnutls.dvi: ${srcdir}/emacs-gnutls.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs-gnutls.texi emacs-gnutls.pdf: ${srcdir}/emacs-gnutls.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/emacs-gnutls.texi emacs-mime : $(infodir)/emacs-mime $(infodir)/emacs-mime: emacs-mime.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) --enable-encoding $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) --enable-encoding emacs-mime.texi emacs-mime.dvi: ${srcdir}/emacs-mime.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/emacs-mime.texi emacs-mime.pdf: ${srcdir}/emacs-mime.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/emacs-mime.texi epa : $(infodir)/epa $(infodir)/epa: epa.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) epa.texi epa.dvi: ${srcdir}/epa.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/epa.texi epa.pdf: ${srcdir}/epa.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/epa.texi erc : $(infodir)/erc $(infodir)/erc: erc.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) erc.texi erc.dvi: ${srcdir}/erc.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/erc.texi erc.pdf: ${srcdir}/erc.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/erc.texi ert : $(infodir)/ert $(infodir)/ert: ert.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) ert.texi ert.dvi: ${srcdir}/ert.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/ert.texi ert.pdf: ${srcdir}/ert.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/ert.texi eshell : $(infodir)/eshell $(infodir)/eshell: eshell.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) eshell.texi eshell.dvi: ${srcdir}/eshell.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/eshell.texi eshell.pdf: ${srcdir}/eshell.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/eshell.texi eudc : $(infodir)/eudc $(infodir)/eudc: eudc.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) eudc.texi eudc.dvi: ${srcdir}/eudc.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/eudc.texi eudc.pdf: ${srcdir}/eudc.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/eudc.texi efaq : $(infodir)/efaq $(infodir)/efaq: faq.texi $(emacsdir)/emacsver.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) faq.texi faq.dvi: ${srcdir}/faq.texi $(emacsdir)/emacsver.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/faq.texi faq.pdf: ${srcdir}/faq.texi $(emacsdir)/emacsver.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/faq.texi ## This is the name used on the Emacs web-page. ## sed fixes up links to point to split version of the manual. emacs-faq.html: ${srcdir}/faq.texi $(emacsdir)/emacsver.texi $(MAKEINFO) $(MAKEINFO_OPTS) --no-split \ - --css-ref='/layout.css' --html -o $@ $< + --css-ref='/layout.css' --html -o $@ ${srcdir}/faq.texi sed -i -e 's|a href="\([a-z]*\)\.html#\([^"]*\)"|a href="manual/html_node/\1/\2.html"|g' \ -e 's|/Top\.html|/|g' $@ emacs-faq.text: ${srcdir}/faq.texi $(emacsdir)/emacsver.texi - $(MAKEINFO) $(MAKEINFO_OPTS) --plaintext -o $@ $< + $(MAKEINFO) $(MAKEINFO_OPTS) --plaintext -o $@ ${srcdir}/faq.texi flymake : $(infodir)/flymake $(infodir)/flymake: flymake.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) flymake.texi flymake.dvi: ${srcdir}/flymake.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/flymake.texi flymake.pdf: ${srcdir}/flymake.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/flymake.texi forms : $(infodir)/forms $(infodir)/forms: forms.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) forms.texi forms.dvi: ${srcdir}/forms.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/forms.texi forms.pdf: ${srcdir}/forms.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/forms.texi # gnus/message/emacs-mime/sieve/pgg are part of Gnus: gnus : $(infodir)/gnus $(infodir)/gnus: gnus.texi gnus-faq.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) gnus.texi gnus.dvi: ${srcdir}/gnus.texi gnus-faq.texi - sed -e '/@iflatex/,/@end iflatex/d' $< > gnustmp.texi + sed -e '/@iflatex/,/@end iflatex/d' ${srcdir}/gnus.texi > gnustmp.texi $(ENVADD) $(TEXI2DVI) gnustmp.texi cp gnustmp.dvi $*.dvi rm gnustmp.* gnus.pdf: ${srcdir}/gnus.texi gnus-faq.texi - sed -e '/@iflatex/,/@end iflatex/d' $< > gnustmp.texi + sed -e '/@iflatex/,/@end iflatex/d' ${srcdir}/gnus.texi > gnustmp.texi $(ENVADD) $(TEXI2PDF) gnustmp.texi cp gnustmp.pdf $@ rm gnustmp.* @@ -465,11 +467,11 @@ idlwave : $(infodir)/idlwave $(infodir)/idlwave: idlwave.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) --no-split $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) --no-split idlwave.texi idlwave.dvi: ${srcdir}/idlwave.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/idlwave.texi idlwave.pdf: ${srcdir}/idlwave.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/idlwave.texi # The following target uses an explicit -o switch to work around # the @setfilename directive in info.texi, which is required for @@ -477,227 +479,227 @@ ###info : $(infodir)/info # circular! $(infodir)/info: info.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) --no-split $< -o $@ + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) --no-split -o $@ info.texi info.dvi: ${srcdir}/info.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/info.texi info.pdf: ${srcdir}/info.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/info.texi mairix-el : $(infodir)/mairix-el $(infodir)/mairix-el: mairix-el.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) mairix-el.texi mairix-el.dvi: ${srcdir}/mairix-el.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/mairix-el.texi mairix-el.pdf: ${srcdir}/mairix-el.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/mairix-el.texi message : $(infodir)/message $(infodir)/message: message.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) message.texi message.dvi: ${srcdir}/message.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/message.texi message.pdf: ${srcdir}/message.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/message.texi mh-e : $(infodir)/mh-e $(infodir)/mh-e: mh-e.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) mh-e.texi mh-e.dvi: ${srcdir}/mh-e.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/mh-e.texi mh-e.pdf: ${srcdir}/mh-e.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/mh-e.texi newsticker : $(infodir)/newsticker $(infodir)/newsticker: newsticker.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) newsticker.texi newsticker.dvi: ${srcdir}/newsticker.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/newsticker.texi newsticker.pdf: ${srcdir}/newsticker.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/newsticker.texi nxml-mode : $(infodir)/nxml-mode $(infodir)/nxml-mode: nxml-mode.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) nxml-mode.texi nxml-mode.dvi: ${srcdir}/nxml-mode.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/nxml-mode.texi nxml-mode.pdf: ${srcdir}/nxml-mode.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/nxml-mode.texi org : $(infodir)/org $(infodir)/org: org.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) org.texi org.dvi: ${srcdir}/org.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/org.texi org.pdf: ${srcdir}/org.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/org.texi pcl-cvs : $(infodir)/pcl-cvs $(infodir)/pcl-cvs: pcl-cvs.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) pcl-cvs.texi pcl-cvs.dvi: ${srcdir}/pcl-cvs.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/pcl-cvs.texi pcl-cvs.pdf: ${srcdir}/pcl-cvs.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/pcl-cvs.texi pgg : $(infodir)/pgg $(infodir)/pgg: pgg.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) pgg.texi pgg.dvi: ${srcdir}/pgg.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/pgg.texi pgg.pdf: ${srcdir}/pgg.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/pgg.texi rcirc : $(infodir)/rcirc $(infodir)/rcirc: rcirc.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) rcirc.texi rcirc.dvi: ${srcdir}/rcirc.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/rcirc.texi rcirc.pdf: ${srcdir}/rcirc.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/rcirc.texi reftex : $(infodir)/reftex $(infodir)/reftex: reftex.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) reftex.texi reftex.dvi: ${srcdir}/reftex.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/reftex.texi reftex.pdf: ${srcdir}/reftex.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/reftex.texi remember : $(infodir)/remember $(infodir)/remember: remember.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) remember.texi remember.dvi: ${srcdir}/remember.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/remember.texi remember.pdf: ${srcdir}/remember.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/remember.texi sasl : $(infodir)/sasl $(infodir)/sasl: sasl.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) sasl.texi sasl.dvi: ${srcdir}/sasl.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/sasl.texi sasl.pdf: ${srcdir}/sasl.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/sasl.texi sc : $(infodir)/sc $(infodir)/sc: sc.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) sc.texi sc.dvi: ${srcdir}/sc.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/sc.texi sc.pdf: ${srcdir}/sc.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/sc.texi semantic : $(infodir)/semantic $(infodir)/semantic: semantic.texi sem-user.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) semantic.texi semantic.dvi: ${srcdir}/semantic.texi sem-user.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/semantic.texi semantic.pdf: ${srcdir}/semantic.texi sem-user.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/semantic.texi ses : $(infodir)/ses $(infodir)/ses: ses.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) ses.texi ses.dvi: ${srcdir}/ses.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/ses.texi ses.pdf: ${srcdir}/ses.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/ses.texi sieve : $(infodir)/sieve $(infodir)/sieve: sieve.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) sieve.texi sieve.dvi: ${srcdir}/sieve.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/sieve.texi sieve.pdf: ${srcdir}/sieve.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/sieve.texi smtpmail : $(infodir)/smtpmail $(infodir)/smtpmail: smtpmail.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) smtpmail.texi smtpmail.dvi: ${srcdir}/smtpmail.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/smtpmail.texi smtpmail.pdf: ${srcdir}/smtpmail.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/smtpmail.texi speedbar : $(infodir)/speedbar $(infodir)/speedbar: speedbar.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) speedbar.texi speedbar.dvi: ${srcdir}/speedbar.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/speedbar.texi speedbar.pdf: ${srcdir}/speedbar.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/speedbar.texi tramp : $(infodir)/tramp $(infodir)/tramp: tramp.texi trampver.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) -D emacs $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) -D emacs tramp.texi tramp.dvi: ${srcdir}/tramp.texi trampver.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/tramp.texi tramp.pdf: ${srcdir}/tramp.texi trampver.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/tramp.texi url : $(infodir)/url $(infodir)/url: url.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) url.texi url.dvi: ${srcdir}/url.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/url.texi url.pdf: ${srcdir}/url.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/url.texi vip : $(infodir)/vip $(infodir)/vip: vip.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) vip.texi vip.dvi: ${srcdir}/vip.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/vip.texi vip.pdf: ${srcdir}/vip.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/vip.texi viper : $(infodir)/viper $(infodir)/viper: viper.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) viper.texi viper.dvi: ${srcdir}/viper.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/viper.texi viper.pdf: ${srcdir}/viper.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/viper.texi widget : $(infodir)/widget $(infodir)/widget: widget.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) widget.texi widget.dvi: ${srcdir}/widget.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/widget.texi widget.pdf: ${srcdir}/widget.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/widget.texi woman : $(infodir)/woman $(infodir)/woman: woman.texi $(mkinfodir) - cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) $< + cd $(srcdir); $(MAKEINFO) $(MAKEINFO_OPTS) woman.texi woman.dvi: ${srcdir}/woman.texi - $(ENVADD) $(TEXI2DVI) $< + $(ENVADD) $(TEXI2DVI) ${srcdir}/woman.texi woman.pdf: ${srcdir}/woman.texi - $(ENVADD) $(TEXI2PDF) $< + $(ENVADD) $(TEXI2PDF) ${srcdir}/woman.texi .PHONY: mostlyclean clean distclean maintainer-clean === modified file 'doc/misc/cc-mode.texi' --- doc/misc/cc-mode.texi 2012-02-28 08:17:21 +0000 +++ doc/misc/cc-mode.texi 2012-04-11 15:24:20 +0000 @@ -5195,7 +5195,7 @@ @comment !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! This section explains the structure and semantics of the style -variable @code{c-offset-alist}, the principal variable for configuring +variable @code{c-offsets-alist}, the principal variable for configuring indentation. Details of how to set it up, and its relationship to @ccmode{}'s style system are given in @ref{Style Variables}. === modified file 'doc/misc/org.texi' --- doc/misc/org.texi 2012-04-02 00:43:32 +0000 +++ doc/misc/org.texi 2012-04-11 10:59:50 +0000 @@ -4,8 +4,8 @@ @setfilename ../../info/org @settitle The Org Manual -@set VERSION 7.8.07 -@set DATE March 2012 +@set VERSION 7.8.09 +@set DATE April 2012 @c Use proper quote and backtick for code sections in PDF output @c Cf. Texinfo manual 14.2 @@ -5698,8 +5698,8 @@ @example *** TODO write article about the Earth for the Guide + DEADLINE: <2004-02-29 Sun> The editor in charge is [[bbdb:Ford Prefect]] - DEADLINE: <2004-02-29 Sun> @end example You can specify a different lead time for warnings for a specific @@ -7852,9 +7852,9 @@ @tsubheading{Motion} @cindex motion commands in agenda @orgcmd{n,org-agenda-next-line} -Next line (same as @key{up} and @kbd{C-p}). +Next line (same as @key{down} and @kbd{C-n}). @orgcmd{p,org-agenda-previous-line} -Previous line (same as @key{down} and @kbd{C-n}). +Previous line (same as @key{up} and @kbd{C-p}). @tsubheading{View/Go to Org file} @orgcmdkkc{@key{SPC},mouse-3,org-agenda-show-and-scroll-up} Display the original location of the item in another window. @@ -9537,12 +9537,12 @@ broad range of other applications. @LaTeX{} export lets you use Org mode and its structured editing functions to easily create @LaTeX{} files. DocBook export makes it possible to convert Org files to many other formats using -DocBook tools. OpenDocument Text(ODT) export allows seamless +DocBook tools. OpenDocument Text (ODT) export allows seamless collaboration across organizational boundaries. For project management you can create gantt and resource charts by using TaskJuggler export. To incorporate entries with associated times like deadlines or appointments into a desktop calendar program like iCal, Org mode can also produce extracts in -the iCalendar format. Currently Org mode only supports export, not import of +the iCalendar format. Currently, Org mode only supports export, not import of these different formats. Org supports export of selected regions when @code{transient-mark-mode} is @@ -10869,10 +10869,10 @@ If you have a working installation of LibreOffice, a document converter is pre-configured for you and you can use it right away. If you would like to use @file{unoconv} as your preferred converter, customize the variable -@code{org-export-odt-convert-process} to point to @code{unoconv}. If you -would like to use a converter of your own choosing or tweak the default -settings of the default @file{LibreOffice} and @samp{unoconv} converters -@xref{Configuring a document converter}. +@code{org-export-odt-convert-process} to point to @code{unoconv}. You can +also use your own favorite converter or tweak the default settings of the +@file{LibreOffice} and @samp{unoconv} converters. @xref{Configuring a +document converter}. @subsubsection Automatically exporting to other formats @anchor{x-export-to-other-formats} @@ -11206,7 +11206,7 @@ For various reasons, you may find embedding @LaTeX{} math snippets in an ODT document less than reliable. In that case, you can embed a -math equation by linking to its MathML(@file{.mml}) source or its +math equation by linking to its MathML (@file{.mml}) source or its OpenDocument formula (@file{.odf}) file as shown below: @example @@ -11269,7 +11269,7 @@ Export of literal examples (@pxref{Literal examples}) with full fontification is supported. Internally, the exporter relies on @file{htmlfontify.el} to generate all style definitions needed for a fancy listing.@footnote{Your -@file{htmlfontify.el} library must atleast be at Emacs 24.1 levels for +@file{htmlfontify.el} library must at least be at Emacs 24.1 levels for fontification to be turned on.} The auto-generated styles have @samp{OrgSrc} as prefix and inherit their color from the faces used by Emacs @code{font-lock} library for the source language. @@ -11318,10 +11318,9 @@ converter can be invoked via command-line to effect the conversion. @item Configure its capabilities + @vindex org-export-odt-convert-capabilities - @anchor{x-odt-converter-capabilities} - Specify the set of formats the converter can handle by customizing the variable @code{org-export-odt-convert-capabilities}. Use the default value for this variable as a guide for configuring your converter. As suggested by @@ -11460,7 +11459,7 @@ @end example @strong{Hint:} To see the above example in action, edit your -@file{styles.xml}(@pxref{x-orgodtstyles-xml,,Factory styles}) and add a +@file{styles.xml} (@pxref{x-orgodtstyles-xml,,Factory styles}) and add a custom @samp{Highlight} style as shown below. @example @@ -11479,7 +11478,7 @@ @end example @strong{Hint:} To see the above example in action, edit your -@file{styles.xml}(@pxref{x-orgodtstyles-xml,,Factory styles}) and add a +@file{styles.xml} (@pxref{x-orgodtstyles-xml,,Factory styles}) and add a custom @samp{PageBreak} style as shown below. @example === modified file 'etc/TODO' --- etc/TODO 2012-01-19 07:21:25 +0000 +++ etc/TODO 2012-04-07 14:57:25 +0000 @@ -647,17 +647,29 @@ ** Bidirectional editing +*** Support reordering structured text +Two important use cases: (1) comments and strings in program sources, +and (2) text with markup, like HTML or XML. + +One idea is to invent a special text property that would instruct the +display engine to reorder only the parts of buffer text covered by +that property. The display engine will then push its state onto the +iterator stack, restrict the bidi iterator to accessing only the +portion of buffer text covered by the property, reorder the text, then +pop its state from stack and continue as usual. This will require +minor changes in the bidi_it structure. + +This design requires Lisp-level code to put the text properties on the +relevant parts of the buffer text. That could be done using JIT +fontifications, or as a preliminary processing when the file is +visited. With HTML/XML, the code that puts text properties needs to +pay attention to the bidi directives embedded in the HTML/XML stream. + *** Allow the user to control the direction of the UI **** Introduce user option to control direction of mode line. -This requires to figure out what to do with unibyte strings that are -used in constructing the mode line. Currently, unibyte strings are -not reordered by bidi.c, without which R2L mode line will not display -correctly. One possibility would be to STRING_SET_MULTIBYTE all Lisp -strings involved in the mode line, and then pass them through bidi.c. - -Another problem is the header line, which is produced by the same -routines as the mode line. While it makes sense to have the mode-line +One problem is the header line, which is produced by the same routines +as the mode line. While it makes sense to have the mode-line direction controlled by a single global variable, header lines are buffer-specific, so they need a separate treatment in this regard. === modified file 'etc/refcards/orgcard.pdf' Binary files etc/refcards/orgcard.pdf 2012-04-01 09:49:25 +0000 and etc/refcards/orgcard.pdf 2012-04-11 10:59:50 +0000 differ === modified file 'etc/refcards/orgcard.tex' --- etc/refcards/orgcard.tex 2012-04-01 20:27:06 +0000 +++ etc/refcards/orgcard.tex 2012-04-11 10:59:50 +0000 @@ -1,5 +1,5 @@ % Reference Card for Org Mode -\def\orgversionnumber{7.8.07} +\def\orgversionnumber{7.8.09} \def\versionyear{2012} % latest update \def\year{2012} % latest copyright year === modified file 'lib-src/ChangeLog' --- lib-src/ChangeLog 2012-04-07 13:57:36 +0000 +++ lib-src/ChangeLog 2012-04-14 01:46:06 +0000 @@ -1,3 +1,8 @@ +2012-04-14 Juanma Barranquero + + * emacsclient.c (decode_options) [WINDOWSNT]: + Call ttyname instead of passing its address (typo in revno:106608). + 2012-04-07 Eli Zaretskii * makefile.w32-in (obj): Add xml.o. === modified file 'lib-src/emacsclient.c' --- lib-src/emacsclient.c 2012-03-11 17:53:07 +0000 +++ lib-src/emacsclient.c 2012-04-12 18:22:06 +0000 @@ -648,7 +648,7 @@ server.el check whether it makes sense. */ if (tty || !current_frame) { - display = (const char *) ttyname; + display = (const char *) ttyname (0); /* Arg is ignored. */ current_frame = 0; tty = 1; } === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-04-13 22:31:23 +0000 +++ lisp/ChangeLog 2012-04-14 01:46:06 +0000 @@ -1,3 +1,72 @@ +2012-04-14 Kim F. Storm + + * emulation/cua-base.el (cua-exchange-point-and-mark): Just call + exchange-point-and-mark if cua-enable-cua-keys is nil (Bug#11191). + +2012-04-14 Chong Yidong + + * custom.el (custom-theme-set-variables): Doc fix. + +2012-04-14 Glenn Morris + + * international/mule.el (set-auto-coding-for-load): Doc fix. + +2012-04-14 Alan Mackenzie + + * progmodes/cc-menus.el (cc-imenu-objc-generic-expression): Make + imenu work again for Objective C Mode. Correct the *-index values, + these having been disturbed by a previous change in 2011-08. + + * progmodes/cc-engine.el (c-before-change-check-<>-operators): + Correct two search limits. + +2012-04-14 Stefan Monnier + + * startup.el (command-line-1): Inhibit splash from daemon (bug#10996). + +2012-04-14 Andreas Schwab + + * international/characters.el: Fix sorting. + +2012-04-14 Eli Zaretskii + + * international/characters.el: Add more missing Latin case pairs. + +2012-04-14 Glenn Morris + + * files.el (dir-locals-set-class-variables): Doc fix. + +2012-04-14 Eli Zaretskii + + * international/characters.el: Add set-case-syntax-pair call for + LATIN CAPITAL LETTER Y WITH DIAERESIS RET and its lower-case + counterpart. (Bug#11209) + + * simple.el (shell-command-on-region): Doc fix. (Bug#11208) + +2012-04-14 Glenn Morris + + * calendar/holidays.el (calendar-check-holidays): Doc fix. + +2012-04-14 Eli Zaretskii + + * textmodes/ispell.el (ispell-dictionary-base-alist): + Add data for Hebrew. + +2012-04-14 Chong Yidong + + * net/rcirc.el (rcirc-cmd-quit): + Revert 2012-03-18 change (Bug#11192). + +2012-04-14 Glenn Morris + + * pcmpl-rpm.el (pcomplete/rpm): Handle -qf. + +2012-04-14 Eli Zaretskii + + * minibuffer.el (completion-in-region-mode-map): + Bind completion-help-at-point to M-? rather than ?. (Bug#11182) + 2012-04-13 Vivek Dasmohapatra * hexl.el (hexl-insert-char): Make display sizes other than 16 work. === modified file 'lisp/calendar/holidays.el' --- lisp/calendar/holidays.el 2012-02-18 03:08:15 +0000 +++ lisp/calendar/holidays.el 2012-04-09 07:11:39 +0000 @@ -634,7 +634,7 @@ "Check the list of holidays for any that occur on DATE. DATE is a list (month day year). This function considers the holidays from the list `calendar-holidays', and returns a list of -strings describing those holidays that apply on DATE." +strings describing those holidays that apply on DATE, or nil if none do." (let ((displayed-month (calendar-extract-month date)) (displayed-year (calendar-extract-year date)) holiday-list) === modified file 'lisp/custom.el' --- lisp/custom.el 2012-04-09 12:36:01 +0000 +++ lisp/custom.el 2012-04-14 01:46:06 +0000 @@ -936,16 +936,21 @@ (SYMBOL EXP [NOW [REQUEST [COMMENT]]]) -This stores EXP (without evaluating it) as the saved value for SYMBOL. -If NOW is present and non-nil, then also evaluate EXP and set -the default value for the SYMBOL to the value of EXP. - -REQUEST is a list of features we must require in order to -handle SYMBOL properly. -COMMENT is a comment string about SYMBOL. - -EXP itself is saved unevaluated as SYMBOL property `saved-value' and -in SYMBOL's list property `theme-value' \(using `custom-push-theme')." +SYMBOL is the variable name, and EXP is an expression which +evaluates to the customized value. EXP will also be stored, +without evaluating it, in SYMBOL's `saved-value' property, so +that it can be restored via the Customize interface. It is also +added to the alist in SYMBOL's `theme-value' property \(by +calling `custom-push-theme'). + +NOW, if present and non-nil, means to install the variable's +value directly now, even if its `defcustom' declaration has not +been executed. This is for internal use only. + +REQUEST is a list of features to `require' (which are loaded +prior to evaluating EXP). + +COMMENT is a comment string about SYMBOL." (custom-check-theme theme) ;; Process all the needed autoloads before anything else, so that the === modified file 'lisp/emulation/cua-base.el' --- lisp/emulation/cua-base.el 2012-04-13 13:32:37 +0000 +++ lisp/emulation/cua-base.el 2012-04-14 01:46:06 +0000 @@ -1002,15 +1002,21 @@ (setq this-command 'cua-paste-pop)))) (defun cua-exchange-point-and-mark (arg) - "Exchanges point and mark, but don't activate the mark. -Activates the mark if a prefix argument is given." + "Exchange point and mark. +Don't activate the mark if `cua-enable-cua-keys' is non-nil. +Otherwise, just activate the mark if a prefix ARG is given. + +See also `exchange-point-and-mark'." (interactive "P") - (if arg - (setq mark-active t) - (let (mark-active) - (exchange-point-and-mark) - (if cua--rectangle - (cua--rectangle-corner 0))))) + (cond ((null cua-enable-cua-keys) + (exchange-point-and-mark arg)) + (arg + (setq mark-active t)) + (t + (let (mark-active) + (exchange-point-and-mark) + (if cua--rectangle + (cua--rectangle-corner 0)))))) ;; Typed text that replaced the highlighted region. (defvar cua--repeat-replace-text nil) === modified file 'lisp/files.el' --- lisp/files.el 2012-04-09 00:58:00 +0000 +++ lisp/files.el 2012-04-14 01:46:06 +0000 @@ -3523,7 +3523,7 @@ When a file is visited, the file's class is found. A directory may be assigned a class using `dir-locals-set-directory-class'. Then variables are set in the file's buffer according to the -class' LIST. The list is processed in order. +VARIABLES list of the class. The list is processed in order. * If the element is of the form (MAJOR-MODE . ALIST), and the buffer's major mode is derived from MAJOR-MODE (as determined === modified file 'lisp/gnus/ChangeLog' --- lisp/gnus/ChangeLog 2012-03-23 11:22:21 +0000 +++ lisp/gnus/ChangeLog 2012-04-14 01:46:06 +0000 @@ -1,3 +1,19 @@ +2012-04-14 Lars Magne Ingebrigtsen + + * gnus-msg.el (gnus-inews-insert-gcc): Don't do the alist stuff when we + don't have a current group. + + * gnus-msg.el (gnus-inews-insert-gcc): Protect against when we don't + have a group name. + + * gnus-art.el (article-wash-html): Ensure that we insert the HTML into + a multibyte buffer (bug#7410). + (article-wash-html): Parse the original article buffer to get the + unencoded data (bug#7410). + + * gnus-start.el (gnus-read-newsrc-el-file): Protect against broken + .newsrc.el files. + 2012-03-22 Lars Magne Ingebrigtsen * auth-source.el (auth-source-netrc-create): Quote tokens that contain === modified file 'lisp/gnus/gnus-art.el' --- lisp/gnus/gnus-art.el 2012-02-12 22:20:48 +0000 +++ lisp/gnus/gnus-art.el 2012-04-11 22:31:16 +0000 @@ -2754,9 +2754,11 @@ (let ((handles nil) (buffer-read-only nil)) (when (gnus-buffer-live-p gnus-original-article-buffer) - (setq handles (mm-dissect-buffer t t))) + (with-current-buffer gnus-original-article-buffer + (setq handles (mm-dissect-buffer t t)))) (article-goto-body) (delete-region (point) (point-max)) + (mm-enable-multibyte) (mm-inline-text-html handles))) (defvar gnus-article-browse-html-temp-list nil === modified file 'lisp/gnus/gnus-msg.el' --- lisp/gnus/gnus-msg.el 2012-03-14 22:15:04 +0000 +++ lisp/gnus/gnus-msg.el 2012-04-12 22:38:08 +0000 @@ -1664,17 +1664,19 @@ ((functionp var) ;; A function. (funcall var group)) - (t + (group ;; An alist of regexps/functions/forms. (while (and var (not (setq result (cond - ((stringp (caar var)) + ((and group + (stringp (caar var))) ;; Regexp. (when (string-match (caar var) group) (cdar var))) - ((functionp (car var)) + ((and group + (functionp (car var))) ;; Function. (funcall (car var) group)) (t === modified file 'lisp/gnus/gnus-start.el' --- lisp/gnus/gnus-start.el 2012-02-16 14:33:58 +0000 +++ lisp/gnus/gnus-start.el 2012-04-11 22:31:16 +0000 @@ -2442,7 +2442,9 @@ (when gnus-newsrc-assoc (setq gnus-newsrc-alist gnus-newsrc-assoc)))) (dolist (elem gnus-newsrc-alist) - (setcar elem (mm-string-as-unibyte (car elem)))) + ;; Protect against broken .newsrc.el files. + (when (car elem) + (setcar elem (mm-string-as-unibyte (car elem))))) (gnus-make-hashtable-from-newsrc-alist) (when (file-newer-than-file-p file ding-file) ;; Old format quick file === modified file 'lisp/international/characters.el' --- lisp/international/characters.el 2012-04-10 10:54:17 +0000 +++ lisp/international/characters.el 2012-04-14 01:46:06 +0000 @@ -576,9 +576,7 @@ (set-case-syntax-pair from (1+ from) tbl) (setq from (+ from 2)))))) - (set-case-syntax-pair #x178 #x0ff tbl) - (set-case-syntax-pair #x189 #x256 tbl) - (set-case-syntax-pair #x18A #x257 tbl) + (set-case-syntax-pair ?Ÿ ?ÿ tbl) ;; In some languages, such as Turkish, U+0049 LATIN CAPITAL LETTER I ;; and U+0131 LATIN SMALL LETTER DOTLESS I make a case pair, and so @@ -594,6 +592,8 @@ (set-case-syntax-pair ?Ɓ ?ɓ tbl) (set-case-syntax-pair ?Ɔ ?ɔ tbl) + (set-case-syntax-pair ?Ɖ ?ɖ tbl) + (set-case-syntax-pair ?Ɗ ?ɗ tbl) (set-case-syntax-pair ?Ǝ ?ǝ tbl) (set-case-syntax-pair ?Ə ?ə tbl) (set-case-syntax-pair ?Ɛ ?ɛ tbl) @@ -622,6 +622,12 @@ (set-case-syntax-pair ?Dz ?dz tbl) (set-case-syntax-pair ?Ƕ ?ƕ tbl) (set-case-syntax-pair ?Ƿ ?ƿ tbl) + (set-case-syntax-pair ?Ⱥ ?ⱥ tbl) + (set-case-syntax-pair ?Ƚ ?ƚ tbl) + (set-case-syntax-pair ?Ⱦ ?ⱦ tbl) + (set-case-syntax-pair ?Ƀ ?ƀ tbl) + (set-case-syntax-pair ?Ʉ ?ʉ tbl) + (set-case-syntax-pair ?Ʌ ?ʌ tbl) ;; Latin Extended Additional (modify-category-entry '(#x1e00 . #x1ef9) ?l) === modified file 'lisp/international/mule.el' --- lisp/international/mule.el 2012-02-28 08:17:21 +0000 +++ lisp/international/mule.el 2012-04-12 01:09:15 +0000 @@ -1754,8 +1754,9 @@ :type '(repeat function)) (defvar set-auto-coding-for-load nil - "Non-nil means look for `load-coding' property instead of `coding'. -This is used for loading and byte-compiling Emacs Lisp files.") + "Non-nil means respect a \"unibyte: t\" entry in file local variables. +Emacs binds this variable to t when loading or byte-compiling Emacs Lisp +files.") (defun auto-coding-alist-lookup (filename) "Return the coding system specified by `auto-coding-alist' for FILENAME." === modified file 'lisp/minibuffer.el' --- lisp/minibuffer.el 2012-04-13 21:43:03 +0000 +++ lisp/minibuffer.el 2012-04-14 01:46:06 +0000 @@ -1506,7 +1506,7 @@ (let ((map (make-sparse-keymap))) ;; FIXME: Only works if completion-in-region-mode was activated via ;; completion-at-point called directly. - (define-key map "?" 'completion-help-at-point) + (define-key map "\M-?" 'completion-help-at-point) (define-key map "\t" 'completion-at-point) map) "Keymap activated during `completion-in-region'.") === modified file 'lisp/net/rcirc.el' --- lisp/net/rcirc.el 2012-04-11 14:22:36 +0000 +++ lisp/net/rcirc.el 2012-04-14 01:46:06 +0000 @@ -2181,17 +2181,13 @@ (let ((channel (if (> (length channel) 0) channel target))) (rcirc-send-string process (concat "PART " channel " :" rcirc-id-string)))) -(defun-rcirc-command quit (reason all) - "Send a quit message to server with REASON. -When called with prefix, quit all servers." - (interactive "sQuit reason: \nP") - (dolist (p (if all - (rcirc-process-list) - (list process))) - (rcirc-send-string p (concat "QUIT :" - (if (not (zerop (length reason))) - reason - rcirc-id-string))))) +(defun-rcirc-command quit (reason) + "Send a quit message to server with REASON." + (interactive "sQuit reason: ") + (rcirc-send-string process (concat "QUIT :" + (if (not (zerop (length reason))) + reason + rcirc-id-string)))) (defun-rcirc-command nick (nick) "Change nick to NICK." === modified file 'lisp/org/ChangeLog' --- lisp/org/ChangeLog 2012-04-03 10:28:31 +0000 +++ lisp/org/ChangeLog 2012-04-14 01:46:06 +0000 @@ -1,3 +1,49 @@ +2012-04-14 Bastien Guerry + + * org.el (org-point-at-end-of-empty-headline): Only try to match + `org-todo-line-regexp' when the value is non-nil, e.g. in non-org + modes. + (org-fontify-meta-lines-and-blocks-1): Prevent errors when trying + to fontify beyond (point-max). + + * org-clock.el (org-clock-task-overrun-text) + (org-task-overrun, org-clock-get-clock-string) + (org-clock-update-mode-line) + (org-clock-notify-once-if-expired): Rename `org-task-overrun' + and `org-task-overrun-text' to `org-clock-task-overrun' and + `org-clock-task-overrun-text' respectively. + (org-task-overrun-text): New alias. + + * org-table.el (org-table-eval-formula): Fix bug about handling + remote references as durations. + (org-table-get-range): Fix bug: make sure references to $0 are + correctly handled. + + * org-pcomplete.el (pcomplete/org-mode/file-option): + Fix bug in `pcomplete/org-mode/file-option'. + (org-thing-at-point): Also match line options like LATEX_CLASS + when pcompleting from LATEX_. + + * org-agenda.el (org-agenda-filter-make-matcher) + (org-agenda-filter-apply): Allow filtering entries out by + category. Using `C-u <' from the agenda view will redisplay + the agenda without entries from categories of the current line. + +2012-04-14 Eric Schulte + + * ob-C.el (org-babel-C-ensure-main-wrap): + Add an explicit return to automatically generated main methods. + +2012-04-14 Matt Lundin + + * org.el (org-after-todo-state-change-hook): + Fix docstring to reflect name change of state to `org-state'. + +2012-04-14 Mike Sperber (tiny change) + + * org-footnote.el (org-footnote-normalize): + Correctly pass keyword arguments to `org-export-preprocess-string'. + 2012-04-03 Bastien Guerry * org.el (org-todo): Fix regression: rename `state' to === modified file 'lisp/org/ob-C.el' --- lisp/org/ob-C.el 2012-04-01 09:49:25 +0000 +++ lisp/org/ob-C.el 2012-04-11 10:59:50 +0000 @@ -152,7 +152,7 @@ "Wrap body in a \"main\" function call if none exists." (if (string-match "^[ \t]*[intvod]+[ \t\n\r]*main[ \t]*(.*)" body) body - (format "int main() {\n%s\n}\n" body))) + (format "int main() {\n%s\nreturn(0);\n}\n" body))) (defun org-babel-prep-session:C (session params) "This function does nothing as C is a compiled language with no === modified file 'lisp/org/org-agenda.el' --- lisp/org/org-agenda.el 2012-04-03 12:02:21 +0000 +++ lisp/org/org-agenda.el 2012-04-11 10:59:50 +0000 @@ -6365,7 +6365,9 @@ (dolist (x (delete-dups (append (get 'org-agenda-category-filter :preset-filter) org-agenda-category-filter))) - (setq f1 (list 'equal (substring x 1) 'cat)) + (if (equal "-" (substring x 0 1)) + (setq f1 (list 'not (list 'equal (substring x 1) 'cat))) + (setq f1 (list 'equal (substring x 1) 'cat))) (push f1 f)) (cons 'and (nreverse f)))) @@ -6396,9 +6398,13 @@ (let (tags cat) (if (eq type 'tag) (setq org-agenda-tag-filter filter) - (setq org-agenda-category-filter filter - org-agenda-filtered-by-category t)) + (setq org-agenda-category-filter filter)) (setq org-agenda-filter-form (org-agenda-filter-make-matcher)) + (if (and (eq type 'category) + (not (equal (substring (car filter) 0 1) "-"))) + ;; Only set `org-agenda-filtered-by-category' to t + ;; when a unique category is used as the filter + (setq org-agenda-filtered-by-category t)) (org-agenda-set-mode-name) (save-excursion (goto-char (point-min)) @@ -6412,7 +6418,7 @@ (beginning-of-line 2)) (beginning-of-line 2)))) (if (get-char-property (point) 'invisible) - (org-agenda-previous-line)))) + (ignore-errors (org-agenda-previous-line))))) (defun org-agenda-filter-hide-line (type) (let (ov) === modified file 'lisp/org/org-clock.el' --- lisp/org/org-clock.el 2012-04-03 12:02:21 +0000 +++ lisp/org/org-clock.el 2012-04-11 10:59:50 +0000 @@ -219,7 +219,8 @@ (const :tag "All task time" all) (const :tag "Automatically, `all' or since `repeat'" auto))) -(defcustom org-task-overrun-text nil +(defvaralias 'org-task-overrun-text 'org-clock-task-overrun-text) +(defcustom org-clock-task-overrun-text nil "The extra modeline text that should indicate that the clock is overrun. The can be nil to indicate that instead of adding text, the clock time should get a different face (`org-mode-line-clock-overrun'). @@ -495,7 +496,7 @@ (insert (format "[%c] %-15s %s\n" i cat task)) (cons i marker))))) -(defvar org-task-overrun nil +(defvar org-clock-task-overrun nil "Internal flag indicating if the clock has overrun the planned time.") (defvar org-clock-update-period 60 "Number of seconds between mode line clock string updates.") @@ -516,7 +517,7 @@ (work-done-str (org-propertize (format org-time-clocksum-format h m) - 'face (if (and org-task-overrun (not org-task-overrun-text)) + 'face (if (and org-clock-task-overrun (not org-clock-task-overrun-text)) 'org-mode-line-clock-overrun 'org-mode-line-clock))) (effort-str (format org-time-clocksum-format effort-h effort-m)) (clockstr (org-propertize @@ -532,7 +533,7 @@ (defun org-clock-update-mode-line () (if org-clock-effort (org-clock-notify-once-if-expired) - (setq org-task-overrun nil)) + (setq org-clock-task-overrun nil)) (setq org-mode-line-string (org-propertize (let ((clock-string (org-clock-get-clock-string)) @@ -546,10 +547,10 @@ 'local-map org-clock-mode-line-map 'mouse-face (if (featurep 'xemacs) 'highlight 'mode-line-highlight) )) - (if (and org-task-overrun org-task-overrun-text) + (if (and org-clock-task-overrun org-clock-task-overrun-text) (setq org-mode-line-string (concat (org-propertize - org-task-overrun-text + org-clock-task-overrun-text 'face 'org-mode-line-clock-overrun) org-mode-line-string))) (force-mode-line-update)) @@ -606,7 +607,7 @@ (when (org-clocking-p) (let ((effort-in-minutes (org-duration-string-to-minutes org-clock-effort)) (clocked-time (org-clock-get-clocked-time))) - (if (setq org-task-overrun + (if (setq org-clock-task-overrun (if (or (null effort-in-minutes) (zerop effort-in-minutes)) nil (>= clocked-time effort-in-minutes))) === modified file 'lisp/org/org-footnote.el' --- lisp/org/org-footnote.el 2012-04-01 09:49:25 +0000 +++ lisp/org/org-footnote.el 2012-04-11 10:59:50 +0000 @@ -704,7 +704,7 @@ (org-combine-plists export-props '(:todo-keywords t :tags t :priority t)))) - (org-export-preprocess-string def parameters)) + (apply #'org-export-preprocess-string def parameters)) def) ;; Reference beginning position is a marker ;; to preserve it during further buffer === modified file 'lisp/org/org-pcomplete.el' --- lisp/org/org-pcomplete.el 2012-01-04 15:20:49 +0000 +++ lisp/org/org-pcomplete.el 2012-04-11 10:59:50 +0000 @@ -69,7 +69,7 @@ (re-search-backward "^[ \t]*#\\+\\([A-Z_]+\\):.*" (line-beginning-position) t)) (cons "file-option" (match-string-no-properties 1))) - ((string-match "\\`[ \t]*#\\+[a-zA-Z]*\\'" line-to-here) + ((string-match "\\`[ \t]*#\\+[a-zA-Z_]*\\'" line-to-here) (cons "file-option" nil)) ((equal (char-before beg) ?\[) (cons "link" nil)) @@ -144,7 +144,7 @@ (if (string-match "^#\\+\\([A-Z_]+:?\\)" x) (match-string 1 x))) (org-split-string (org-get-current-options) "\n")) - org-additional-option-like-keywords))))) + (copy-sequence org-additional-option-like-keywords)))))) (substring pcomplete-stub 2))) (defvar org-startup-options) === modified file 'lisp/org/org-special-blocks.el' --- lisp/org/org-special-blocks.el 2012-04-01 20:27:06 +0000 +++ lisp/org/org-special-blocks.el 2012-04-11 10:59:50 +0000 @@ -80,17 +80,17 @@ (add-hook 'org-export-latex-after-blockquotes-hook 'org-special-blocks-convert-latex-special-cookies) -(defvar org-special-blocks-line) +(defvar line) (defun org-special-blocks-convert-html-special-cookies () "Converts the special cookies into div blocks." - ;; Uses the dynamically-bound variable `org-special-blocks-line'. - (when (string-match "^ORG-\\(.*\\)-\\(START\\|END\\)$" org-special-blocks-line) + ;; Uses the dynamically-bound variable `line'. + (when (string-match "^ORG-\\(.*\\)-\\(START\\|END\\)$" line) (message "%s" (match-string 1)) - (when (equal (match-string 2 org-special-blocks-line) "START") + (when (equal (match-string 2 line) "START") (org-close-par-maybe) - (insert "\n
") + (insert "\n
") (org-open-par)) - (when (equal (match-string 2 org-special-blocks-line) "END") + (when (equal (match-string 2 line) "END") (org-close-par-maybe) (insert "\n
") (org-open-par)) === modified file 'lisp/org/org-table.el' --- lisp/org/org-table.el 2012-04-03 12:02:21 +0000 +++ lisp/org/org-table.el 2012-04-11 10:59:50 +0000 @@ -2526,8 +2526,13 @@ (replace-match (save-match-data (org-table-make-reference - (org-table-get-remote-range - (match-string 1 form) (match-string 2 form)) + (let ((rmtrng (org-table-get-remote-range + (match-string 1 form) (match-string 2 form)))) + (if duration + (if (listp rmtrng) + (mapcar (lambda(x) (org-table-time-string-to-seconds x)) rmtrng) + (org-table-time-string-to-seconds rmtrng)) + rmtrng)) keep-empty numbers lispp)) t t form))) ;; Insert complex ranges @@ -2663,8 +2668,8 @@ ; (setq r2 (or r2 r1) c2 (or c2 c1)) (if (not r1) (setq r1 thisline)) (if (not r2) (setq r2 thisline)) - (if (not c1) (setq c1 col)) - (if (not c2) (setq c2 col)) + (if (or (not c1) (= 0 c1)) (setq c1 col)) + (if (or (not c2) (= 0 c2)) (setq c2 col)) (if (and (not corners-only) (or (not rangep) (and (= r1 r2) (= c1 c2)))) ;; just one field === modified file 'lisp/org/org.el' --- lisp/org/org.el 2012-04-03 12:02:21 +0000 +++ lisp/org/org.el 2012-04-11 10:59:50 +0000 @@ -6,7 +6,7 @@ ;; Maintainer: Bastien Guerry ;; Keywords: outlines, hypermedia, calendar, wp ;; Homepage: http://orgmode.org -;; Version: 7.8.08 +;; Version: 7.8.09 ;; ;; This file is part of GNU Emacs. ;; @@ -206,7 +206,7 @@ ;;; Version -(defconst org-version "7.8.08" +(defconst org-version "7.8.09" "The version number of the file org.el.") ;;;###autoload @@ -2225,7 +2225,7 @@ (defcustom org-after-todo-state-change-hook nil "Hook which is run after the state of a TODO item was changed. The new state (a string with a TODO keyword, or nil) is available in the -Lisp variable `state'." +Lisp variable `org-state'." :group 'org-todo :type 'hook) @@ -5427,7 +5427,8 @@ (when (re-search-forward (concat "^[ \t]*#\\+end" (match-string 4) "\\>.*") nil t) ;; on purpose, we look further than LIMIT - (setq end (match-end 0) end1 (1- (match-beginning 0))) + (setq end (min (point-max) (match-end 0)) + end1 (min (point-max) (1- (match-beginning 0)))) (setq block-end (match-beginning 0)) (when quoting (remove-text-properties beg end @@ -5455,11 +5456,12 @@ '(face org-block))) ; end of source block ((not org-fontify-quote-and-verse-blocks)) ((string= block-type "quote") - (add-text-properties beg1 (1+ end1) '(face org-quote))) + (add-text-properties beg1 (min (point-max) (1+ end1)) '(face org-quote))) ((string= block-type "verse") - (add-text-properties beg1 (1+ end1) '(face org-verse)))) + (add-text-properties beg1 (min (point-max) (1+ end1)) '(face org-verse)))) (add-text-properties beg beg1 '(face org-block-begin-line)) - (add-text-properties (1+ end) (1+ end1) '(face org-block-end-line)) + (add-text-properties (min (point-max) (1+ end)) (min (point-max) (1+ end1)) + '(face org-block-end-line)) t)) ((member dc1 '("title:" "author:" "email:" "date:")) (add-text-properties @@ -5475,7 +5477,7 @@ ((not (member (char-after beg) '(?\ ?\t))) ;; just any other in-buffer setting, but not indented (add-text-properties - beg (1+ (match-end 0)) + beg (match-end 0) '(font-lock-fontified t face org-meta-line)) t) ((or (member dc1 '("begin:" "end:" "caption:" "label:" @@ -13422,8 +13424,7 @@ ;; Get a new set of tags from the user (save-excursion (setq table (append org-tag-persistent-alist - org-tag-alist - (org-get-buffer-tags) + (or org-tag-alist (org-get-buffer-tags)) (and org-complete-tags-always-offer-all-agenda-tags (org-global-tags-completion-table @@ -13725,11 +13726,9 @@ (condition-case nil (setq tg (org-icompleting-read "Tag: " - (delete-dups - (append (or buffer-tags - (with-current-buffer buf - (mapcar 'car (org-get-buffer-tags)))) - (mapcar 'car table))))) + (or buffer-tags + (with-current-buffer buf + (org-get-buffer-tags))))) (quit (setq tg ""))) (when (string-match "\\S-" tg) (add-to-list 'buffer-tags (list tg)) @@ -20775,11 +20774,12 @@ If the heading only contains a TODO keyword, it is still still considered empty." (and (looking-at "[ \t]*$") - (save-excursion - (beginning-of-line 1) - (let ((case-fold-search nil)) - (looking-at org-todo-line-regexp))) - (string= (match-string 3) ""))) + (when org-todo-line-regexp + (save-excursion + (beginning-of-line 1) + (let ((case-fold-search nil)) + (looking-at org-todo-line-regexp) + (string= (match-string 3) "")))))) (defun org-at-heading-or-item-p () (or (org-at-heading-p) (org-at-item-p))) === modified file 'lisp/pcmpl-rpm.el' --- lisp/pcmpl-rpm.el 2012-01-19 07:21:25 +0000 +++ lisp/pcmpl-rpm.el 2012-04-07 18:52:43 +0000 @@ -1,6 +1,6 @@ ;;; pcmpl-rpm.el --- functions for dealing with rpm completions -;; Copyright (C) 1999-2012 Free Software Foundation, Inc. +;; Copyright (C) 1999-2012 Free Software Foundation, Inc. ;; Package: pcomplete @@ -29,6 +29,13 @@ ;; Functions: +;; FIXME rpm -qa can be slow, so: +;; Adding --nodigest --nosignature is MUCH faster. +;; (Probably need to test --help for those options though.) +;; Consider caching the result (cf woman). +;; Consider printing an explanatory message before running -qa. +;; +;; Seems pointless for this to be a defsubst. (defsubst pcmpl-rpm-packages () (split-string (pcomplete-process-result "rpm" "-q" "-a"))) @@ -92,6 +99,7 @@ '("--changelog" "--dbpath" "--dump" + "--file" "--ftpport" ;nyi for the next four "--ftpproxy" "--httpport" @@ -112,6 +120,8 @@ (pcomplete-here*)) ((pcomplete-test "--rcfile") (pcomplete-here* (pcomplete-entries))) + ((pcomplete-test "--file") + (pcomplete-here* (pcomplete-entries))) ((pcomplete-test "--root") (pcomplete-here* (pcomplete-dirs))) ((pcomplete-test "--scripts") @@ -129,7 +139,9 @@ (pcomplete-opt "af.p(pcmpl-rpm-files)ilsdcvR") (if (pcomplete-test "-[^-]*p" 'first 1) (pcomplete-here (pcmpl-rpm-files)) - (pcomplete-here (pcmpl-rpm-packages)))))) + (if (pcomplete-test "-[^-]*f" 'first 1) + (pcomplete-here* (pcomplete-entries)) + (pcomplete-here (pcmpl-rpm-packages))))))) ((pcomplete-test "--pipe") (pcomplete-here* (funcall pcomplete-command-completion-function))) ((pcomplete-test "--rmsource") === modified file 'lisp/progmodes/cc-engine.el' --- lisp/progmodes/cc-engine.el 2012-03-16 14:10:54 +0000 +++ lisp/progmodes/cc-engine.el 2012-04-11 15:32:30 +0000 @@ -5382,7 +5382,7 @@ new-beg new-end need-new-beg need-new-end) ;; Locate the barrier before the changed region (goto-char (if beg-lit-limits (car beg-lit-limits) beg)) - (c-syntactic-skip-backward "^;{}" (max (- beg 2048) (point-min))) + (c-syntactic-skip-backward "^;{}" (c-determine-limit 512)) (setq new-beg (point)) ;; Remove the syntax-table properties from each pertinent <...> pair. @@ -5393,8 +5393,7 @@ ;; Locate the barrier after END. (goto-char (if end-lit-limits (cdr end-lit-limits) end)) - (c-syntactic-re-search-forward "[;{}]" - (min (+ end 2048) (point-max)) 'end) + (c-syntactic-re-search-forward "[;{}]" (c-determine-+ve-limit 512) 'end) (setq new-end (point)) ;; Remove syntax-table properties from the remaining pertinent <...> === modified file 'lisp/progmodes/cc-menus.el' --- lisp/progmodes/cc-menus.el 2012-01-19 07:21:25 +0000 +++ lisp/progmodes/cc-menus.el 2012-04-11 18:09:10 +0000 @@ -63,6 +63,20 @@ A sample value might look like: `\\(_P\\|_PROTO\\)'.") +;; *Warning for cc-mode developers* +;; +;; `cc-imenu-objc-generic-expression' elements depend on +;; `cc-imenu-c++-generic-expression'. So if you change this +;; expression, you need to change following variables, +;; `cc-imenu-objc-generic-expression-*-index', +;; too. `cc-imenu-objc-function' uses these *-index variables, in +;; order to know where the each regexp *group \\(foobar\\)* elements +;; are started. +;; +;; *-index variables are initialized during `cc-imenu-objc-generic-expression' +;; being initialized. +;; + (defvar cc-imenu-c++-generic-expression `( ;; Try to match ::operator definitions first. Otherwise `X::operator new ()' @@ -187,23 +201,8 @@ ")" "[.," c-alnum " \t\n\r]*" "{" - )) 1)) - "Imenu generic expression for Java mode. See -`imenu-generic-expression'.") - -;; *Warning for cc-mode developers* -;; -;; `cc-imenu-objc-generic-expression' elements depend on -;; `cc-imenu-c++-generic-expression'. So if you change this -;; expression, you need to change following variables, -;; `cc-imenu-objc-generic-expression-*-index', -;; too. `cc-imenu-objc-function' uses these *-index variables, in -;; order to know where the each regexp *group \\(foobar\\)* elements -;; are started. -;; -;; *-index variables are initialized during `cc-imenu-objc-generic-expression' -;; being initialized. -;; + )) 1)) + "Imenu generic expression for Java mode. See `imenu-generic-expression'.") ;; Internal variables (defvar cc-imenu-objc-generic-expression-noreturn-index nil) @@ -224,7 +223,7 @@ "\\|" ;; > General function name regexp ;; Pick a token by (match-string 3) - (car (cdr (nth 2 cc-imenu-c++-generic-expression))) ; -> index += 5 + (car (cdr (nth 2 cc-imenu-c++-generic-expression))) ; -> index += 6 (prog2 (setq cc-imenu-objc-generic-expression-general-func-index 3) "") ;; > Special case for definitions using phony prototype macros like: ;; > `int main _PROTO( (int argc,char *argv[]) )'. @@ -233,11 +232,11 @@ (concat "\\|" (car (cdr (nth 3 cc-imenu-c++-generic-expression))) ; -> index += 1 - (prog2 (setq cc-imenu-objc-generic-expression-objc-base-index 9) "") + (prog2 (setq cc-imenu-objc-generic-expression-objc-base-index 10) "") ) - (prog2 (setq cc-imenu-objc-generic-expression-objc-base-index 8) "") + (prog2 (setq cc-imenu-objc-generic-expression-objc-base-index 9) "") "") ; -> index += 0 - (prog2 (setq cc-imenu-objc-generic-expression-proto-index 8) "") + (prog2 (setq cc-imenu-objc-generic-expression-proto-index 9) "") ;; ;; For Objective-C ;; Pick a token by (match-string 8 or 9) === modified file 'lisp/simple.el' --- lisp/simple.el 2012-04-10 02:23:21 +0000 +++ lisp/simple.el 2012-04-14 01:46:06 +0000 @@ -2464,9 +2464,9 @@ To specify a coding system for converting non-ASCII characters in the input and output to the shell command, use \\[universal-coding-system-argument] before this command. By default, the input (from the current buffer) -is encoded in the same coding system that will be used to save the file, -`buffer-file-coding-system'. If the output is going to replace the region, -then it is decoded from that same coding system. +is encoded using coding-system specified by `process-coding-system-alist', +falling back to `default-process-coding-system' if no match for COMMAND +is found in `process-coding-system-alist'. The noninteractive arguments are START, END, COMMAND, OUTPUT-BUFFER, REPLACE, ERROR-BUFFER, and DISPLAY-ERROR-BUFFER. === modified file 'lisp/startup.el' --- lisp/startup.el 2012-04-11 05:43:47 +0000 +++ lisp/startup.el 2012-04-14 01:46:06 +0000 @@ -2316,6 +2316,7 @@ (if (or inhibit-startup-screen initial-buffer-choice noninteractive + (daemonp) inhibit-x-resources) ;; Not displaying a startup screen. If 3 or more files @@ -2358,9 +2359,7 @@ ;; (with-no-warnings ;; (setq menubar-bindings-done t)) - (if (> file-count 0) - (display-startup-screen t) - (display-startup-screen nil))))) + (display-startup-screen (> file-count 0))))) (defun command-line-normalize-file-name (file) "Collapse multiple slashes to one, to handle non-Emacs file names." === modified file 'lisp/textmodes/ispell.el' --- lisp/textmodes/ispell.el 2012-04-09 13:05:48 +0000 +++ lisp/textmodes/ispell.el 2012-04-14 01:46:06 +0000 @@ -684,7 +684,8 @@ ("svenska" ; Swedish mode "[A-Za-z\345\344\366\351\340\374\350\346\370\347\305\304\326\311\300\334\310\306\330\307]" "[^A-Za-z\345\344\366\351\340\374\350\346\370\347\305\304\326\311\300\334\310\306\330\307]" - "[']" nil ("-C") "~list" iso-8859-1)) + "[']" nil ("-C") "~list" iso-8859-1) + ("hebrew" "[\340\341\342\343\344\345\346\347\350\351\353\352\354\356\355\360\357\361\362\364\363\367\366\365\370\371\372]" "[^\340\341\342\343\344\345\346\347\350\351\353\352\354\356\355\360\357\361\362\364\363\367\366\365\370\371\372]" "" nil ("-B") nil cp1255)) "Base value for `ispell-dictionary-alist'.") (defvar ispell-dictionary-alist nil === modified file 'nt/ChangeLog' --- nt/ChangeLog 2012-04-10 19:03:32 +0000 +++ nt/ChangeLog 2012-04-14 01:46:06 +0000 @@ -1,3 +1,7 @@ +2012-04-14 Dani Moncayo (tiny change) + + * makefile.w32-in: Fix typo (Bug#10261). + 2012-04-10 Eli Zaretskii * makefile.w32-in (emacs, misc, lispref, lispintro): New targets, === modified file 'nt/makefile.w32-in' --- nt/makefile.w32-in 2012-04-10 19:03:32 +0000 +++ nt/makefile.w32-in 2012-04-14 01:46:06 +0000 @@ -264,10 +264,10 @@ maybe-copy-distfiles: maybe-copy-distfiles-$(SHELLTYPE) maybe-copy-distfiles-CMD: create-tmp-dist-dir doit - @if not $(ARGQUOTE)$(DIST_FILES)$(ARGQUOTE)=="" $(CP_DIR) $(DIST_FILES) $(TMP_DIST_DIR)/bin + @if not $(ARGQUOTE)$(DIST_FILES)$(ARGQUOTE) == "" $(CP_DIR) $(DIST_FILES) $(TMP_DIST_DIR)/bin maybe-copy-distfiles-SH: create-tmp-dist-dir doit - @if [ ! $(ARGQUOTE)$(DIST_FILES)$(ARGQUOTE)=="" ] ; then \ + @if [ ! $(ARGQUOTE)$(DIST_FILES)$(ARGQUOTE) == "" ] ; then \ $(CP_DIR) $(DIST_FILES) $(TMP_DIST_DIR)/bin ; \ fi === modified file 'src/ChangeLog' --- src/ChangeLog 2012-04-13 14:50:25 +0000 +++ src/ChangeLog 2012-04-14 01:46:06 +0000 @@ -1,3 +1,18 @@ +2012-04-14 Atsuo Ohki (tiny change) + + * lread.c (lisp_file_lexically_bound_p): + Fix hang at ";-*-\n" (bug#11238). + +2012-04-14 Eli Zaretskii + + * xdisp.c (find_last_unchanged_at_beg_row): Don't consider a row + "unchanged" if its end.pos is beyond ZV. (Bug#11199) + +2012-04-14 Jan Djärv + + * nsterm.m (constrainFrameRect): Always constrain when there is only + one screen (Bug#10962). + 2012-04-13 Ken Brown * s/cygwin.h (PTY_OPEN): Don't try to close a bogus file descriptor. === modified file 'src/lread.c' --- src/lread.c 2012-04-09 13:05:48 +0000 +++ src/lread.c 2012-04-14 01:46:06 +0000 @@ -839,7 +839,7 @@ } /* Stop scanning if no colon was found before end marker. */ - if (!in_file_vars) + if (!in_file_vars || ch == '\n' || ch == EOF) break; while (i > 0 && (var[i - 1] == ' ' || var[i - 1] == '\t')) @@ -863,8 +863,7 @@ ch = READCHAR; } if (! in_file_vars) - /* The value was terminated by an end-marker, which - remove. */ + /* The value was terminated by an end-marker, which remove. */ i -= 3; while (i > 0 && (val[i - 1] == ' ' || val[i - 1] == '\t')) i--; === modified file 'src/nsterm.m' --- src/nsterm.m 2012-02-04 15:10:54 +0000 +++ src/nsterm.m 2012-04-09 10:01:04 +0000 @@ -6038,11 +6038,15 @@ restrict the height to just one monitor. So we override this. */ - (NSRect)constrainFrameRect:(NSRect)frameRect toScreen:(NSScreen *)screen { - /* When making the frame visible for the first time, we want to - constrain. Other times not. */ + /* When making the frame visible for the first time or if there is just + one screen, we want to constrain. Other times not. */ + NSUInteger nr_screens = [[NSScreen screens] count]; struct frame *f = ((EmacsView *)[self delegate])->emacsframe; NSTRACE (constrainFrameRect); + if (nr_screens == 1) + return [super constrainFrameRect:frameRect toScreen:screen]; + if (f->output_data.ns->dont_constrain || ns_menu_bar_should_be_hidden ()) return frameRect; === modified file 'src/xdisp.c' --- src/xdisp.c 2012-04-09 13:05:48 +0000 +++ src/xdisp.c 2012-04-14 01:46:06 +0000 @@ -16606,7 +16606,15 @@ continued. */ && !(MATRIX_ROW_END_CHARPOS (row) == first_changed_pos && (row->continued_p - || row->exact_window_width_line_p))) + || row->exact_window_width_line_p)) + /* If ROW->end is beyond ZV, then ROW->end is outdated and + needs to be recomputed, so don't consider this row as + unchanged. This happens when the last line was + bidi-reordered and was killed immediately before this + redisplay cycle. In that case, ROW->end stores the + buffer position of the first visual-order character of + the killed text, which is now beyond ZV. */ + && CHARPOS (row->end.pos) <= ZV) row_found = row; /* Stop if last visible row. */ ------------------------------------------------------------ revno: 107897 committer: Glenn Morris branch nick: trunk timestamp: Fri 2012-04-13 18:33:08 -0700 message: Changed defcustoms should get :version bumps diff: === modified file 'lisp/progmodes/which-func.el' --- lisp/progmodes/which-func.el 2012-04-13 15:19:58 +0000 +++ lisp/progmodes/which-func.el 2012-04-14 01:33:08 +0000 @@ -1,6 +1,6 @@ ;;; which-func.el --- print current function in mode line -;; Copyright (C) 1994, 1997-1998, 2001-2012 Free Software Foundation, Inc. +;; Copyright (C) 1994, 1997-1998, 2001-2012 Free Software Foundation, Inc. ;; Author: Alex Rezinsky ;; (doesn't seem to be responsive any more) @@ -80,6 +80,7 @@ For other modes it is disabled. If this is equal to t, then Which Function mode is enabled in any major mode that supports it." :group 'which-func + :version "24.2" ; added objc-mode :type '(choice (const :tag "All modes" t) (repeat (symbol :tag "Major mode")))) ------------------------------------------------------------ revno: 107896 author: Vivek Dasmohapatra committer: Lars Ingebrigtsen branch nick: trunk timestamp: Sat 2012-04-14 00:31:23 +0200 message: * hexl.el (hexl-insert-char): Make display sizes other than 16 work. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-04-13 21:43:03 +0000 +++ lisp/ChangeLog 2012-04-13 22:31:23 +0000 @@ -1,3 +1,7 @@ +2012-04-13 Vivek Dasmohapatra + + * hexl.el (hexl-insert-char): Make display sizes other than 16 work. + 2012-04-13 Masatake YAMATO * minibuffer.el (minibuffer-local-filename-syntax): New variable === modified file 'lisp/hexl.el' --- lisp/hexl.el 2012-04-12 16:33:13 +0000 +++ lisp/hexl.el 2012-04-13 22:31:23 +0000 @@ -964,11 +964,7 @@ (error "Invalid character 0x%x -- must be in the range [0..255]" ch)) (let ((address (hexl-current-address t))) (while (> num 0) - (let ((hex-position - (+ (* (/ address 16) (hexl-line-displen)) - 10 (point-min) - (* 2 (% address 16)) - (/ (% address 16) 2))) + (let ((hex-position (hexl-address-to-marker address)) (ascii-position (+ (* (/ address 16) (hexl-line-displen)) (hexl-ascii-start-column) ------------------------------------------------------------ revno: 107895 author: Masatake YAMATO committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2012-04-13 23:43:03 +0200 message: Make `C-M-f' and friends work better when prompting for file names * minibuffer.el (minibuffer-local-filename-syntax): New variable to allow `C-M-f' and `C-M-b' to move to the nearest path separator. diff: === modified file 'etc/NEWS' --- etc/NEWS 2012-04-13 21:15:22 +0000 +++ etc/NEWS 2012-04-13 21:43:03 +0000 @@ -44,6 +44,9 @@ ** `mouse-avoidance-banish-position' can now be used to customize `mouse-avoidance-mode' further. +** `C-M-f' and `C-M-b' will now move to the path name separator +character when doing minibuffer filename prompts. + * Changes in Specialized Modes and Packages in Emacs 24.2 === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-04-13 21:17:38 +0000 +++ lisp/ChangeLog 2012-04-13 21:43:03 +0000 @@ -1,3 +1,9 @@ +2012-04-13 Masatake YAMATO + + * minibuffer.el (minibuffer-local-filename-syntax): New variable + to allow `C-M-f' and `C-M-b' to move to the nearest path + separator (bug#9511). + 2012-04-13 Lars Ingebrigtsen * avoid.el: Require cl when compiling. And also move the === modified file 'lisp/minibuffer.el' --- lisp/minibuffer.el 2012-04-04 09:19:32 +0000 +++ lisp/minibuffer.el 2012-04-13 21:43:03 +0000 @@ -2045,6 +2045,21 @@ (funcall (or read-file-name-function #'read-file-name-default) prompt dir default-filename mustmatch initial predicate)) +(defvar minibuffer-local-filename-syntax + (let ((table (make-syntax-table)) + (punctuation (car (string-to-syntax ".")))) + ;; Convert all punctuation entries to symbol. + (map-char-table (lambda (c syntax) + (when (eq (car syntax) punctuation) + (modify-syntax-entry c "_" table))) + table) + (mapc + (lambda (c) + (modify-syntax-entry c "." table)) + '(?/ ?: ?\\)) + table) + "Syntax table to be used in minibuffer for reading file name.") + ;; minibuffer-completing-file-name is a variable used internally in minibuf.c ;; to determine whether to use minibuffer-local-filename-completion-map or ;; minibuffer-local-completion-map. It shouldn't be exported to Elisp. @@ -2113,7 +2128,8 @@ (lambda () (with-current-buffer (window-buffer (minibuffer-selected-window)) - (read-file-name--defaults dir initial))))) + (read-file-name--defaults dir initial)))) + (set-syntax-table minibuffer-local-filename-syntax)) (completing-read prompt 'read-file-name-internal pred mustmatch insdef 'file-name-history default-filename))) ------------------------------------------------------------ revno: 107894 committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2012-04-13 23:17:38 +0200 message: avoid.el compiliation fixups * avoid.el: Require cl when compiling. And also move the `provide' to the end. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-04-13 21:12:48 +0000 +++ lisp/ChangeLog 2012-04-13 21:17:38 +0000 @@ -1,3 +1,8 @@ +2012-04-13 Lars Ingebrigtsen + + * avoid.el: Require cl when compiling. And also move the + `provide' to the end. + 2012-04-13 Thierry Volpiatto * avoid.el (mouse-avoidance-banish-position): New variable. === modified file 'lisp/avoid.el' --- lisp/avoid.el 2012-04-13 21:15:22 +0000 +++ lisp/avoid.el 2012-04-13 21:17:38 +0000 @@ -67,7 +67,7 @@ ;;; Code: -(provide 'avoid) +(eval-when-compile (require 'cl)) (defgroup avoid nil "Make mouse pointer stay out of the way of editing." @@ -457,4 +457,6 @@ (if mouse-avoidance-mode (mouse-avoidance-mode mouse-avoidance-mode)) +(provide 'avoid) + ;;; avoid.el ends here ------------------------------------------------------------ revno: 107893 author: Thierry Volpiatto committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2012-04-13 23:15:22 +0200 message: Allow further `mouse-avoidance-mode' customisations * avoid.el (mouse-avoidance-banish-position): New variable. (mouse-avoidance-banish-destination): Use it. diff: === modified file 'etc/NEWS' --- etc/NEWS 2012-04-13 06:20:39 +0000 +++ etc/NEWS 2012-04-13 21:15:22 +0000 @@ -41,6 +41,9 @@ ** M-x move-to-column, if called interactively with no prefix arg, now prompts for a column number. +** `mouse-avoidance-banish-position' can now be used to customize +`mouse-avoidance-mode' further. + * Changes in Specialized Modes and Packages in Emacs 24.2 === modified file 'lisp/avoid.el' --- lisp/avoid.el 2012-01-19 07:21:25 +0000 +++ lisp/avoid.el 2012-04-13 21:15:22 +0000 @@ -115,6 +115,23 @@ :type 'integer :group 'avoid) +(defcustom mouse-avoidance-banish-position '((frame-or-window . frame) + (side . right) + (side-pos . 3) + (top-or-bottom . top) + (top-or-bottom-pos . 0)) + "Position to which Mouse Avoidance mode `banish' moves the mouse. +An alist where keywords mean: +FRAME-OR-WINDOW: banish the mouse to corner of frame or window. +SIDE: banish the mouse on right or left corner of frame or window. +SIDE-POS: Distance from right or left edge of frame or window. +TOP-OR-BOTTOM: banish the mouse to top or bottom of frame or window. +TOP-OR-BOTTOM-POS: Distance from top or bottom edge of frame or window." + :group 'avoid + :type '(alist :key-type symbol :value-type symbol) + :options '(frame-or-window side (side-pos integer) + top-or-bottom (top-or-bottom-pos integer))) + ;; Internal variables (defvar mouse-avoidance-state nil) (defvar mouse-avoidance-pointer-shapes nil) @@ -183,13 +200,45 @@ (defun mouse-avoidance-banish-destination () "The position to which Mouse Avoidance mode `banish' moves the mouse. -You can redefine this if you want the mouse banished to a different corner." - (let* ((pos (window-edges))) - (cons (- (nth 2 pos) 2) - (nth 1 pos)))) + +If you want the mouse banished to a different corner set +`mouse-avoidance-banish-position' as you need." + (let* ((fra-or-win (assoc-default + 'frame-or-window + mouse-avoidance-banish-position 'eq)) + (list-values (case fra-or-win + (frame (list 0 0 (frame-width) (frame-height))) + (window (window-edges)))) + (alist (loop for v in list-values + for k in '(left top right bottom) + collect (cons k v))) + (side (assoc-default + 'side + mouse-avoidance-banish-position 'eq)) + (side-dist (assoc-default + 'side-pos + mouse-avoidance-banish-position 'eq)) + (top-or-bottom (assoc-default + 'top-or-bottom + mouse-avoidance-banish-position 'eq)) + (top-or-bottom-dist (assoc-default + 'top-or-bottom-pos + mouse-avoidance-banish-position 'eq)) + (side-fn (case side + (left '+) + (right '-))) + (top-or-bottom-fn (case top-or-bottom + (top '+) + (bottom '-)))) + (cons (funcall side-fn ; -/+ + (assoc-default side alist 'eq) ; right or left + side-dist) ; distance from side + (funcall top-or-bottom-fn ; -/+ + (assoc-default top-or-bottom alist 'eq) ; top/bottom + top-or-bottom-dist)))) ; distance from top/bottom (defun mouse-avoidance-banish-mouse () - ;; Put the mouse pointer in the upper-right corner of the current frame. + "Put the mouse pointer to `mouse-avoidance-banish-position'." (mouse-avoidance-set-mouse-position (mouse-avoidance-banish-destination))) (defsubst mouse-avoidance-delta (cur delta dist var min max) ------------------------------------------------------------ revno: 107892 author: Thierry Volpiatto committer: Lars Ingebrigtsen branch nick: trunk timestamp: Fri 2012-04-13 23:12:48 +0200 message: Allow further `mouse-avoid-mode' customisations * avoid.el (mouse-avoidance-banish-position): New variable. (mouse-avoidance-banish-destination): Use it. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-04-13 15:19:58 +0000 +++ lisp/ChangeLog 2012-04-13 21:12:48 +0000 @@ -1,3 +1,8 @@ +2012-04-13 Thierry Volpiatto + + * avoid.el (mouse-avoidance-banish-position): New variable. + (mouse-avoidance-banish-destination): Use it (bug#10165). + 2012-04-13 Leo Liu * progmodes/which-func.el (which-func-modes): Add objc-mode. ------------------------------------------------------------ revno: 107891 committer: Leo Liu branch nick: trunk timestamp: Fri 2012-04-13 23:19:58 +0800 message: * lisp/progmodes/which-func.el (which-func-modes): Add objc-mode. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-04-13 15:15:42 +0000 +++ lisp/ChangeLog 2012-04-13 15:19:58 +0000 @@ -1,3 +1,7 @@ +2012-04-13 Leo Liu + + * progmodes/which-func.el (which-func-modes): Add objc-mode. + 2012-04-13 Ken Brown * net/browse-url.el (browse-url-file-url): Remove Cygwin hack; === modified file 'lisp/progmodes/which-func.el' --- lisp/progmodes/which-func.el 2012-01-19 07:21:25 +0000 +++ lisp/progmodes/which-func.el 2012-04-13 15:19:58 +0000 @@ -73,7 +73,7 @@ :version "20.3") (defcustom which-func-modes - '(emacs-lisp-mode c-mode c++-mode perl-mode cperl-mode python-mode + '(emacs-lisp-mode c-mode c++-mode objc-mode perl-mode cperl-mode python-mode makefile-mode sh-mode fortran-mode f90-mode ada-mode diff-mode) "List of major modes for which Which Function mode should be used. ------------------------------------------------------------ revno: 107890 committer: Ken Brown branch nick: trunk timestamp: Fri 2012-04-13 11:15:42 -0400 message: Adapt browse-url.el to improvements in Cygwin's cygstart utility. * lisp/net/browse-url.el (browse-url-file-url): Remove Cygwin hack; this is no longer needed now that cygstart understands file:// URLs. (browse-url-filename-alist): For the same reason, don't modify file:// URLs on Cygwin. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-04-13 13:32:37 +0000 +++ lisp/ChangeLog 2012-04-13 15:15:42 +0000 @@ -1,3 +1,11 @@ +2012-04-13 Ken Brown + + * net/browse-url.el (browse-url-file-url): Remove Cygwin hack; + this is no longer needed now that cygstart understands file:// + URLs. + (browse-url-filename-alist): For the same reason, don't modify + file:// URLs on Cygwin. + 2012-04-13 Stefan Monnier * emulation/cua-base.el (cua--pre-command-handler-1): Don't activate === modified file 'lisp/net/browse-url.el' --- lisp/net/browse-url.el 2012-02-28 08:17:21 +0000 +++ lisp/net/browse-url.el 2012-04-13 15:15:42 +0000 @@ -467,7 +467,7 @@ ;; it in anonymous cases. If it's not anonymous the next regexp ;; applies. ("^/\\([^:@]+@\\)?\\([^:]+\\):/*" . "ftp://\\1\\2/") - ,@(if (memq system-type '(windows-nt ms-dos cygwin)) + ,@(if (memq system-type '(windows-nt ms-dos)) '(("^\\([a-zA-Z]:\\)[\\/]" . "file:///\\1/") ("^[\\/][\\/]+" . "file://"))) ("^/+" . "file:///")) @@ -724,12 +724,6 @@ (defun browse-url-file-url (file) "Return the URL corresponding to FILE. Use variable `browse-url-filename-alist' to map filenames to URLs." - ;; De-munge Cygwin filenames before passing them to Windows browser. - (if (eq system-type 'cygwin) - (let ((winfile (with-output-to-string - (call-process "cygpath" nil standard-output - nil "-m" file)))) - (setq file (substring winfile 0 -1)))) (let ((coding (and (default-value 'enable-multibyte-characters) (or file-name-coding-system default-file-name-coding-system)))) ------------------------------------------------------------ revno: 107889 committer: Ken Brown branch nick: trunk timestamp: Fri 2012-04-13 10:50:25 -0400 message: * src/s/cygwin.h (PTY_OPEN): Don't try to close a bogus file descriptor. diff: === modified file 'src/ChangeLog' --- src/ChangeLog 2012-04-13 06:20:39 +0000 +++ src/ChangeLog 2012-04-13 14:50:25 +0000 @@ -1,3 +1,7 @@ +2012-04-13 Ken Brown + + * s/cygwin.h (PTY_OPEN): Don't try to close a bogus file descriptor. + 2012-04-13 Reuben Thomas * indent.c (Fmove_to_column): Change interactive spec (Bug#739). === modified file 'src/s/cygwin.h' --- src/s/cygwin.h 2012-04-11 11:43:55 +0000 +++ src/s/cygwin.h 2012-04-13 14:50:25 +0000 @@ -58,7 +58,8 @@ if (-1 == openpty (&fd, &dummy, pty_name, 0, 0)) \ fd = -1; \ sigsetmask (mask); \ - emacs_close (dummy); \ + if (fd >= 0) \ + emacs_close (dummy); \ } \ while (0) ------------------------------------------------------------ revno: 107888 fixes bug(s): http://debbugs.gnu.org/cgi/bugreport.cgi?bug=11221 committer: Stefan Monnier branch nick: trunk timestamp: Fri 2012-04-13 09:32:37 -0400 message: * lisp/emulation/cua-base.el (cua--pre-command-handler-1): Don't activate the region on shift if the binding is already shifted. diff: === modified file 'lisp/ChangeLog' --- lisp/ChangeLog 2012-04-12 23:47:13 +0000 +++ lisp/ChangeLog 2012-04-13 13:32:37 +0000 @@ -1,3 +1,8 @@ +2012-04-13 Stefan Monnier + + * emulation/cua-base.el (cua--pre-command-handler-1): Don't activate + the region on shift if the binding is already shifted (bug#11221). + 2012-04-12 Glenn Morris * mail/mailpost.el: Move to obsolete/. === modified file 'lisp/emulation/cua-base.el' --- lisp/emulation/cua-base.el 2012-03-10 08:26:45 +0000 +++ lisp/emulation/cua-base.el 2012-04-13 13:32:37 +0000 @@ -1246,22 +1246,7 @@ ;; (and region not started with C-SPC). ;; If rectangle is active, expand rectangle in specified direction and ;; ignore the movement. - ((if window-system - ;; Shortcut for window-system, assuming that input-decode-map is empty. - (memq 'shift (event-modifiers - (aref (this-single-command-raw-keys) 0))) - (or - ;; Check if the final key-sequence was shifted. - (memq 'shift (event-modifiers - (aref (this-single-command-keys) 0))) - ;; If not, maybe the raw key-sequence was mapped by input-decode-map - ;; to a shifted key (and then mapped down to its unshifted form). - (let* ((keys (this-single-command-raw-keys)) - (ev (lookup-key input-decode-map keys))) - (or (and (vector ev) (memq 'shift (event-modifiers (aref ev 0)))) - ;; Or maybe, the raw key-sequence was not an escape sequence - ;; and was shifted (and then mapped down to its unshifted form). - (memq 'shift (event-modifiers (aref keys 0))))))) + (this-command-keys-shift-translated (unless mark-active (push-mark-command nil t)) (setq cua--last-region-shifted t) ------------------------------------------------------------ revno: 107887 committer: Glenn Morris branch nick: trunk timestamp: Fri 2012-04-13 06:17:25 -0400 message: Auto-commit of generated files. diff: === modified file 'autogen/configure' --- autogen/configure 2012-04-11 10:17:27 +0000 +++ autogen/configure 2012-04-13 10:17:25 +0000 @@ -22410,6 +22410,14 @@ echo fi +if test "${opsys}" = "cygwin"; then + case `uname -r` in + 1.5.*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: building Emacs on Cygwin 1.5 is not supported." >&5 +$as_echo "$as_me: WARNING: building Emacs on Cygwin 1.5 is not supported." >&2;} + echo + ;; + esac +fi # Remove any trailing slashes in these variables. test "${prefix}" != NONE && ------------------------------------------------------------ revno: 107886 committer: Chong Yidong branch nick: trunk timestamp: Fri 2012-04-13 14:22:01 +0800 message: Fix typo in last commit. diff: === modified file 'src/indent.c' --- src/indent.c 2012-04-13 06:20:39 +0000 +++ src/indent.c 2012-04-13 06:22:01 +0000 @@ -957,7 +957,7 @@ } DEFUN ("move-to-column", Fmove_to_column, Smove_to_column, 1, 2, - "NMove to column:", + "NMove to column: ", doc: /* Move point to column COLUMN in the current line. Interactively, COLUMN is the value of prefix numeric argument. The column of a character is calculated by adding together the widths ------------------------------------------------------------ Use --include-merges or -n0 to see merged revisions.