diff options
author | Joakim Verona <joakim@verona.se> | 2016-01-15 20:06:45 +0100 |
---|---|---|
committer | Joakim Verona <joakim@verona.se> | 2016-01-15 20:06:45 +0100 |
commit | 4b73dac2885aa7eb23b66c299065e19bd118a4fb (patch) | |
tree | 18452b36b890faf52d40f555ebe4dc3c6e020bc6 /doc | |
parent | 0d824cc5e79e7d29a01929a51dfd673a117c77e8 (diff) | |
parent | 984a14904658da42ca9dea50a811a901ddc56e60 (diff) | |
download | emacs-xwidget_mvp.tar.gz |
merge masterxwidget_mvp
Diffstat (limited to 'doc')
195 files changed, 948 insertions, 998 deletions
diff --git a/doc/emacs/ChangeLog.1 b/doc/emacs/ChangeLog.1 index 469fdc39cea..ecb0cb7700e 100644 --- a/doc/emacs/ChangeLog.1 +++ b/doc/emacs/ChangeLog.1 @@ -10919,7 +10919,7 @@ ;; coding: utf-8 ;; End: - Copyright (C) 1993-1999, 2001-2015 Free Software Foundation, Inc. + Copyright (C) 1993-1999, 2001-2016 Free Software Foundation, Inc. This file is part of GNU Emacs. diff --git a/doc/emacs/Makefile.in b/doc/emacs/Makefile.in index 7630780be6c..aeb80a8a04e 100644 --- a/doc/emacs/Makefile.in +++ b/doc/emacs/Makefile.in @@ -1,6 +1,6 @@ ### @configure_input@ -# Copyright (C) 1994, 1996-2015 Free Software Foundation, Inc. +# Copyright (C) 1994, 1996-2016 Free Software Foundation, Inc. # This file is part of GNU Emacs. diff --git a/doc/emacs/abbrevs.texi b/doc/emacs/abbrevs.texi index 695ffa8d1cd..e0441a1984d 100644 --- a/doc/emacs/abbrevs.texi +++ b/doc/emacs/abbrevs.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Abbrevs diff --git a/doc/emacs/ack.texi b/doc/emacs/ack.texi index 4d53456d0f0..6a0a289e1da 100644 --- a/doc/emacs/ack.texi +++ b/doc/emacs/ack.texi @@ -1,6 +1,6 @@ @c -*- coding: utf-8 -*- @c This is part of the Emacs manual. -@c Copyright (C) 1994-1997, 1999-2015 Free Software Foundation, Inc. +@c Copyright (C) 1994-1997, 1999-2016 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @c @node Acknowledgments diff --git a/doc/emacs/anti.texi b/doc/emacs/anti.texi index d702ff78b7c..26e3d2e337f 100644 --- a/doc/emacs/anti.texi +++ b/doc/emacs/anti.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 2005-2015 Free Software Foundation, Inc. +@c Copyright (C) 2005-2016 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @node Antinews diff --git a/doc/emacs/arevert-xtra.texi b/doc/emacs/arevert-xtra.texi index 69431c65983..7b0b6d2f63a 100644 --- a/doc/emacs/arevert-xtra.texi +++ b/doc/emacs/arevert-xtra.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 2004-2015 Free Software Foundation, Inc. +@c Copyright (C) 2004-2016 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @c @c This file is included either in emacs-xtra.texi (when producing the diff --git a/doc/emacs/basic.texi b/doc/emacs/basic.texi index e5d34c62a57..68581d03a85 100644 --- a/doc/emacs/basic.texi +++ b/doc/emacs/basic.texi @@ -1,6 +1,6 @@ @c -*- coding: utf-8 -*- @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Basic diff --git a/doc/emacs/buffers.texi b/doc/emacs/buffers.texi index ae64fefbb70..1efd1d98d7b 100644 --- a/doc/emacs/buffers.texi +++ b/doc/emacs/buffers.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Buffers diff --git a/doc/emacs/building.texi b/doc/emacs/building.texi index fbef9feb5a6..3fa89d9062d 100644 --- a/doc/emacs/building.texi +++ b/doc/emacs/building.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Building @@ -360,8 +360,8 @@ that specifies how to run @command{grep}. Use the same arguments you would give @command{grep} when running it normally: a @command{grep}-style regexp (usually in single-quotes to quote the shell's special characters) followed by file names, which may use wildcards. If you -specify a prefix argument for @kbd{M-x grep}, it finds the tag -(@pxref{Tags}) in the buffer around point, and puts that into the +specify a prefix argument for @kbd{M-x grep}, it finds the identifier +(@pxref{Xref}) in the buffer around point, and puts that into the default @command{grep} command. Your command need not simply run @command{grep}; you can use any shell diff --git a/doc/emacs/cal-xtra.texi b/doc/emacs/cal-xtra.texi index 3b5b3c58a65..2dff8c9b869 100644 --- a/doc/emacs/cal-xtra.texi +++ b/doc/emacs/cal-xtra.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -*- coding: utf-8 -*- -@c Copyright (C) 2004-2015 Free Software Foundation, Inc. +@c Copyright (C) 2004-2016 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @c @c This file is included either in emacs-xtra.texi (when producing the diff --git a/doc/emacs/calendar.texi b/doc/emacs/calendar.texi index bc13d4ba296..0fc18fcbbcf 100644 --- a/doc/emacs/calendar.texi +++ b/doc/emacs/calendar.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -*- coding: utf-8 -*- -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Calendar/Diary diff --git a/doc/emacs/cmdargs.texi b/doc/emacs/cmdargs.texi index fcaf87f1709..a1b0b098f22 100644 --- a/doc/emacs/cmdargs.texi +++ b/doc/emacs/cmdargs.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Emacs Invocation diff --git a/doc/emacs/commands.texi b/doc/emacs/commands.texi index 98e12531253..cf5ce1459c0 100644 --- a/doc/emacs/commands.texi +++ b/doc/emacs/commands.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @iftex diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi index fc405e3a147..670848c65a1 100644 --- a/doc/emacs/custom.texi +++ b/doc/emacs/custom.texi @@ -1,6 +1,6 @@ @c -*- coding: utf-8 -*- @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Customization diff --git a/doc/emacs/dired-xtra.texi b/doc/emacs/dired-xtra.texi index 2b9ddae2654..e91aa8ce168 100644 --- a/doc/emacs/dired-xtra.texi +++ b/doc/emacs/dired-xtra.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 2004-2015 Free Software Foundation, Inc. +@c Copyright (C) 2004-2016 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @c @c This file is included either in emacs-xtra.texi (when producing the diff --git a/doc/emacs/dired.texi b/doc/emacs/dired.texi index 04cef3848db..92c1fd5a041 100644 --- a/doc/emacs/dired.texi +++ b/doc/emacs/dired.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Dired @@ -785,8 +785,8 @@ Search all the specified files for the regular expression @var{regexp} (@code{dired-do-search}). This command is a variant of @code{tags-search}. The search stops at -the first match it finds; use @kbd{M-,} to resume the search and find -the next match. @xref{Tags Search}. +the first match it finds; use @kbd{M-x tags-loop-continue} to resume +the search and find the next match. @xref{Identifier Search}. @kindex Q @r{(Dired)} @findex dired-do-query-replace-regexp @@ -797,8 +797,8 @@ replacing matches for @var{regexp} with the string @var{to} (@code{dired-do-query-replace-regexp}). This command is a variant of @code{tags-query-replace}. If you exit the -query replace loop, you can use @kbd{M-,} to resume the scan and replace -more matches. @xref{Tags Search}. +query replace loop, you can use @kbd{M-x tags-loop-continue} to resume +the scan and replace more matches. @xref{Identifier Search}. @end table @node Shell Commands in Dired diff --git a/doc/emacs/display.texi b/doc/emacs/display.texi index a722ec4841b..1b75a15427c 100644 --- a/doc/emacs/display.texi +++ b/doc/emacs/display.texi @@ -1,6 +1,6 @@ @c -*- coding: utf-8 -*- @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @@ -1164,12 +1164,15 @@ indicate-empty-lines t)}. @cindex mode, Whitespace @findex whitespace-mode @vindex whitespace-style +@findex whitespace-toggle-options Whitespace mode is a buffer-local minor mode that lets you visualize many kinds of whitespace in the buffer, by either drawing the whitespace characters with a special face or displaying them as special glyphs. To toggle this mode, type @kbd{M-x whitespace-mode}. The kinds of whitespace visualized are determined -by the list variable @code{whitespace-style}. Here is a partial list +by the list variable @code{whitespace-style}. Individual elements in +that list can be toggled on or off in the current buffer by typing +@w{@kbd{M-x whitespace-toggle-options}}. Here is a partial list of possible elements (see the variable's documentation for the full list): @@ -1200,6 +1203,13 @@ Highlight newlines. @item empty Highlight empty lines. +@item big-indent +@vindex whitespace-big-indent-regexp +Highlight too-deep indentation. By default any sequence of at least 4 +consecutive TAB characters or 32 consecutive SPC characters is +highlighted. To change that, customize the regular expression +@code{whitespace-big-indent-regexp}. + @item space-mark Draw space and non-breaking characters with a special glyph. @@ -1210,6 +1220,12 @@ Draw tab characters with a special glyph. Draw newline characters with a special glyph. @end table +@findex global-whitespace-toggle-options +@findex global-whitespace-mode +Global Whitespace mode is a global minor mode that lets you visualize +whitespace in all buffers. To toggle individual features, use +@kbd{M-x global-whitespace-toggle-options}. + @node Selective Display @section Selective Display @cindex selective display diff --git a/doc/emacs/emacs-xtra.texi b/doc/emacs/emacs-xtra.texi index 3490c08d275..786ba6584ba 100644 --- a/doc/emacs/emacs-xtra.texi +++ b/doc/emacs/emacs-xtra.texi @@ -12,7 +12,7 @@ @copying This manual describes specialized features of Emacs. -Copyright @copyright{} 2004--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2004--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/emacs/emacs.texi b/doc/emacs/emacs.texi index 0030467cdce..5ef938566de 100644 --- a/doc/emacs/emacs.texi +++ b/doc/emacs/emacs.texi @@ -27,7 +27,7 @@ This is the @cite{GNU Emacs Manual}, @end ifnottex updated for Emacs version @value{EMACSVER}. -Copyright @copyright{} 1985--1987, 1993--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1985--1987, 1993--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document @@ -788,8 +788,8 @@ Maintaining Large Programs * Version Control:: Using version control systems. * Change Log:: Maintaining a change history for your program. -* Tags:: Go directly to any function in your program in one - command. Tags remembers which file it is in. +* Xref:: Find definitions and references of any function, + method, struct, macro, @dots{} in your program. * EDE:: An integrated development environment for Emacs. @ifnottex * Emerge:: A convenient way of merging two versions of a program. @@ -861,15 +861,25 @@ Change Logs * Change Log Commands:: Commands for editing change log files. * Format of ChangeLog:: What the change log file looks like. +Xref + +* Find Identifiers:: Commands to find where an identifier is defined + or referenced, to list identifiers, etc. +* Tags Tables:: Tags table records which file defines a symbol. +* Select Tags Table:: How to visit a specific tags table. + +Find Identifiers + +* Looking Up Identifiers:: Commands to find the definition of a specific tag. +* Xref Commands:: Commands in the @file{*xref*} buffer. +* Identifier Search:: Searching and replacing identifiers. +* List Identifiers:: Listing identifiers and completing on them. + Tags Tables * Tag Syntax:: Tag syntax for various types of code and text files. * Create Tags Table:: Creating a tags table with @command{etags}. * Etags Regexps:: Create arbitrary tags using regular expressions. -* Select Tags Table:: How to visit a tags table. -* Find Tag:: Commands to find the definition of a specific tag. -* Tags Search:: Using a tags table for searching and replacing. -* List Tags:: Using tags for completion, and listing them. @ifnottex Merging Files with Emerge diff --git a/doc/emacs/emerge-xtra.texi b/doc/emacs/emerge-xtra.texi index 836b27c5002..d56fbaee73c 100644 --- a/doc/emacs/emerge-xtra.texi +++ b/doc/emacs/emerge-xtra.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 2004-2015 Free Software Foundation, Inc. +@c Copyright (C) 2004-2016 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @c @c This file is included either in emacs-xtra.texi (when producing the diff --git a/doc/emacs/entering.texi b/doc/emacs/entering.texi index 8b8a9189626..3e936e73944 100644 --- a/doc/emacs/entering.texi +++ b/doc/emacs/entering.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 2001-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 2001-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @iftex diff --git a/doc/emacs/files.texi b/doc/emacs/files.texi index 4f7596e058c..bfa55d38701 100644 --- a/doc/emacs/files.texi +++ b/doc/emacs/files.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 1999-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 1999-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Files diff --git a/doc/emacs/fixit.texi b/doc/emacs/fixit.texi index 993f0dce1cc..b398a7dbfb8 100644 --- a/doc/emacs/fixit.texi +++ b/doc/emacs/fixit.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Fixit diff --git a/doc/emacs/fortran-xtra.texi b/doc/emacs/fortran-xtra.texi index 870bfcd2169..5763c9f379e 100644 --- a/doc/emacs/fortran-xtra.texi +++ b/doc/emacs/fortran-xtra.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 2004-2015 Free Software Foundation, Inc. +@c Copyright (C) 2004-2016 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @c @c This file is included either in emacs-xtra.texi (when producing the diff --git a/doc/emacs/frames.texi b/doc/emacs/frames.texi index acfdfe25cb2..5fbe0fc5774 100644 --- a/doc/emacs/frames.texi +++ b/doc/emacs/frames.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 1999-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 1999-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Frames @@ -416,9 +416,9 @@ Start composing a mail message in another frame. This runs @code{compose-mail-other-frame}. It is the other-frame variant of @kbd{C-x m}. @xref{Sending Mail}. @item C-x 5 . -Find a tag in the current tag table in another frame. This runs -@code{find-tag-other-frame}, the multiple-frame variant of @kbd{M-.}. -@xref{Tags}. +Find the definition of an identifier in another frame. This runs +@code{xref-find-definitions-other-frame}, the multiple-frame variant +of @kbd{M-.}. @xref{Xref}. @item C-x 5 r @var{filename} @key{RET} @kindex C-x 5 r @findex find-file-read-only-other-frame diff --git a/doc/emacs/glossary.texi b/doc/emacs/glossary.texi index cc81101d67a..bce97dacee2 100644 --- a/doc/emacs/glossary.texi +++ b/doc/emacs/glossary.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Glossary @@ -1329,7 +1329,7 @@ indentation or completion. @anchor{Glossary---Tags Table} @item Tags Table A tags table is a file that serves as an index to the function -definitions in one or more other files. @xref{Tags}. +definitions in one or more other files. @xref{Tags Tables}. @item Termscript File A termscript file contains a record of all characters sent by Emacs to diff --git a/doc/emacs/gnu.texi b/doc/emacs/gnu.texi index 3c23b9c6048..282d24d5bbb 100644 --- a/doc/emacs/gnu.texi +++ b/doc/emacs/gnu.texi @@ -1,4 +1,4 @@ -@c Copyright (C) 1985-1987, 1993, 1995, 2001-2015 Free Software +@c Copyright (C) 1985-1987, 1993, 1995, 2001-2016 Free Software @c Foundation, Inc. @c @c Permission is granted to anyone to make or distribute verbatim copies diff --git a/doc/emacs/help.texi b/doc/emacs/help.texi index 25e783f6ed7..ed813ff0bf6 100644 --- a/doc/emacs/help.texi +++ b/doc/emacs/help.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Help diff --git a/doc/emacs/indent.texi b/doc/emacs/indent.texi index 76dfa55211d..f9f231d762c 100644 --- a/doc/emacs/indent.texi +++ b/doc/emacs/indent.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Indentation diff --git a/doc/emacs/killing.texi b/doc/emacs/killing.texi index 9761ac7d11c..dd3671c95f1 100644 --- a/doc/emacs/killing.texi +++ b/doc/emacs/killing.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. diff --git a/doc/emacs/kmacro.texi b/doc/emacs/kmacro.texi index 2cbcc8b3d54..a6344c049c1 100644 --- a/doc/emacs/kmacro.texi +++ b/doc/emacs/kmacro.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Keyboard Macros diff --git a/doc/emacs/m-x.texi b/doc/emacs/m-x.texi index 795d6fe373b..9e5f50b5e91 100644 --- a/doc/emacs/m-x.texi +++ b/doc/emacs/m-x.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node M-x diff --git a/doc/emacs/macos.texi b/doc/emacs/macos.texi index c04682586ce..71d2e99950c 100644 --- a/doc/emacs/macos.texi +++ b/doc/emacs/macos.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 2000-2015 Free Software Foundation, Inc. +@c Copyright (C) 2000-2016 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @node Mac OS / GNUstep @appendix Emacs and Mac OS / GNUstep diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi index 801d147845b..8842b8ea2f5 100644 --- a/doc/emacs/maintaining.texi +++ b/doc/emacs/maintaining.texi @@ -1,21 +1,46 @@ @c This is part of the Emacs manual., Abbrevs, This is part of the Emacs manual., Top -@c Copyright (C) 1985-1987, 1993-1995, 1997, 1999-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 1999-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Maintaining @chapter Maintaining Large Programs - This chapter describes Emacs features for maintaining large -programs. If you are maintaining a large Lisp program, then in -addition to the features described here, you may find -the Emacs Lisp Regression Testing (ERT) library useful -(@pxref{Top,,ERT,ert, Emacs Lisp Regression Testing}). + This chapter describes Emacs features for maintaining medium- to +large-size programs and packages. These features include: + +@itemize @minus +@item +Unified interface to Support for Version Control Systems +(@acronym{VCS}) that record the history of changes to source files. + +@item +A specialized mode for maintaining @file{ChangeLog} files that provide +a chronological log of program changes. + +@item +@acronym{Xref}, a set of commands for displaying definitions of +symbols (a.k.a.@: ``identifiers'') and their references. + +@item +@acronym{EDE}, the Emacs's own IDE. + +@ifnottex +@item +A mode for merging changes to program sources made on separate +branches of development. +@end ifnottex +@end itemize + +If you are maintaining a large Lisp program, then in addition to the +features described here, you may find the Emacs Lisp Regression +Testing (@acronym{ERT}) library useful (@pxref{Top,,ERT,ert, Emacs +Lisp Regression Testing}). @menu * Version Control:: Using version control systems. * Change Log:: Maintaining a change history for your program. -* Tags:: Go directly to any function in your program in one - command. Tags remembers which file it is in. +* Xref:: Find definitions and references of any function, + method, struct, macro, @dots{} in your program. * EDE:: An integrated development environment for Emacs. @ifnottex * Emerge:: A convenient way of merging two versions of a program. @@ -1660,16 +1685,370 @@ permitted provided the copyright notice and this notice are preserved. @noindent Of course, you should substitute the proper years and copyright holder. -@node Tags -@section Tags Tables -@cindex tags and tag tables +@node Xref +@section Find Identifier Definitions and References +@cindex xref + + An @dfn{identifier} is a syntactic elements of the program: a +function, a subroutine, a method, a class, a data type, a macro, etc. +In a programming language, each identifier is a symbol in the +language's syntax. Many program development tools provide +capabilities to extract references to identifiers from source files, +record them on specialized data bases, and then use those data bases +to quickly find where each identifier was defined and referenced. + +Emacs provides a unified user interface to these tools, called +@samp{xref}. The tools supported by @samp{xref} include: + +@enumerate a +@item +Some major modes provide built-in means for looking up the language +symbols. For example, Emacs Lisp symbols can be identified by +searching the package load history, maintained by the Emacs Lisp +interpreter, and by consulting the built-in documentation strings; the +Emacs Lisp mode uses these facilities to find definitions of symbols. + +@item +Etags, the command for tagging identifier definitions which is part of +the Emacs distribution. @xref{Create Tags Table}. + +@item +@acronym{GNU} GLOBAL, the source code tagging system, which provides +the @command{gtags} command and associated utilities. @xref{Command +Line, gtags, , global, GNU GLOBAL source code tag system}. + +@item +Cscope (@uref{http://cscope.sourceforge.net/}, a tool for browsing +source code. + +@item +@acronym{GNU} IDUtils, a package for generating databases of +identifier references and querying those databases. @xref{Top,,, +idutils, ID database utilities}. + +@item +Grep, the venerable program that searches files for lines matching +patterns. @xref{Invoking,,, grep, GNU Grep Manual}. +@end enumerate + +@noindent +Additional tools could be supported as they become available, or as +user extensions. Each such tool is used as a @dfn{backend} by +commands described in this section. Each command detects which +backends are available for the current major mode, and uses the most +capable of the available backends, with Grep generally serving as the +fall-back backend. + +@cindex tag +The commands described here are useful for finding references in major +modes other than those defined to support programming languages. For +example, chapters, sections, appendices, etc. of a text or a @TeX{} +document can be treated as identifiers as well. In this chapter, we +collectively refer to a reference that specifies the name of the file +where the corresponding subunit is defined, and the position of the +subunit's definition in that file, as a @dfn{tag}. We refer to the +backends used by @code{xref} as @dfn{tagging backends}. + +@menu +* Find Identifiers:: Commands to find where an identifier is defined + or referenced, to list identifiers, etc. +* Tags Tables:: Tags table records which file defines a symbol. +* Select Tags Table:: How to visit a specific tags table. +@end menu + +@node Find Identifiers +@subsection Find Identifiers + + This subsection describes the commands that use the tagging backends +in order to find definitions of identifiers, references to +identifiers, and perform various queries about identifiers. With most +backends, these definitions and references were recorded as tags in +the database created and maintained by the backend. + +@menu +* Looking Up Identifiers:: Commands to find the definition of a specific tag. +* Xref Commands:: Commands in the @file{*xref*} buffer. +* Identifier Search:: Searching and replacing identifiers. +* List Identifiers:: Listing identifiers and completing on them. +@end menu + +@node Looking Up Identifiers +@subsubsection Looking Up Identifiers +@cindex find definition of symbols +@cindex identifier, finding definition of +@cindex find references to symbols + + The most important thing that @code{xref} enables you to do is to find +the definition of a specific identifier. + +@table @kbd +@item M-.@: +Find definitions of an identifier (@code{xref-find-definitions}). +@item C-M-. @var{pattern} @key{RET} +Find all identifiers whose name matches @var{pattern} +(@code{xref-find-apropos}). +@item C-x 4 .@: @key{RET} +Find definitions of identifier, but display it in another window +(@code{xref-find-definitions-other-window}). +@item C-x 5 .@: @key{RET} +Find definition of identifier, and display it in a new frame +(@code{xref-find-definitions-other-frame}). +@item M-, +Pop back to where you previously invoked @kbd{M-.} and friends +(@code{xref-pop-marker-stack}). +@end table + +@kindex M-. +@findex xref-find-definitions + @kbd{M-.}@: (@code{xref-find-definitions}) shows the definitions of +the identifier at point. With a prefix argument, or if there's no +valid identifier at point, it prompts for the identifier. If the +identifier has only one definition, the command jumps to it. If the +identifier has more than one possible definition (e.g., in an +object-oriented language, or if there's a function and a variable by +the same name), the command shows the candidate definitions in a +@file{*xref*} buffer, together with the files in which these +definitions are found. Selecting one of these candidates by typing +@kbd{@key{RET}} or clicking @kbd{Mouse-2} will pop a buffer showing +the corresponding definition. + + When entering the identifier argument to @kbd{M-.}, the usual +minibuffer completion commands can be used (@pxref{Completion}), with +the known identifier names as completion candidates. - A @dfn{tag} is a reference to a subunit in a program or in a -document. In source code, tags reference syntactic elements of the -program: functions, subroutines, data types, macros, etc. In a -document, tags reference chapters, sections, appendices, etc. Each -tag specifies the name of the file where the corresponding subunit is -defined, and the position of the subunit's definition in that file. +@kindex C-x 4 . +@findex xref-find-definitions-other-window +@kindex C-x 5 . +@findex xref-find-definitions-other-frame + Like most commands that can switch buffers, +@code{xref-find-definitions} has a variant that displays the new +buffer in another window, and one that makes a new frame for it. The +former is @w{@kbd{C-x 4 .}} +(@code{xref-find-definitions-other-window}), and the latter is +@w{@kbd{C-x 5 .}} (@code{xref-find-definitions-other-frame}). + +@findex xref-find-apropos +@kindex C-M-. + The command @kbd{C-M-.} (@code{xref-find-apropos}) finds the +definitions of one or more identifiers that match a specified regular +expression. It is just like @kbd{M-.} except that it does regexp +matching of identifiers instead of symbol name matching. + + When any of the above commands finds more than one definition, it +presents the @file{*xref*} buffer showing the definition candidates. +In that buffer, you have several specialized commands, described in +@ref{Xref Commands}. + +@kindex M-, +@findex xref-pop-marker-stack +@vindex xref-marker-ring-length + To go back to places @emph{from where} you found the definition, +use @kbd{M-,} (@code{xref-pop-marker-stack}). It jumps back to the +point of the last invocation of @kbd{M-.}. Thus you can find and +examine the definition of something with @kbd{M-.} and then return to +where you were with @kbd{M-,}. @kbd{M-,} allows you to retrace your +steps to a depth determined by the variable +@code{xref-marker-ring-length}, which defaults to 16. + +@node Xref Commands +@subsubsection Commands Available in the @file{*xref*} Buffer +@cindex commands in @file{*xref*} buffers +@cindex XREF mode + + The following commands are provided in the @file{*xref*} buffer by +the special XREF mode: + +@table @kbd +@item @key{RET} +@itemx Mouse-2 +Display the reference on the current line and bury the @file{*xref*} +buffer. +@item n +@itemx . +@findex xref-next-line +Move to the next reference and display it in the other window +(@code{xref-next-line}). +@item p +@itemx , +@findex xref-prev-line +Move to the previous reference and display it in the other window +(@code{xref-prev-line}). +@item C-o +@findex xref-show-location-at-point +Display the reference on the current line in the other window +(@code{xref-show-location-at-point}). +@findex xref-query-replace +@item r @var{pattern} @key{RET} @var{replacement} @key{RET} +Perform interactive query-replace on references that match +@var{pattern} (@code{xref-query-replace}), replacing the match with +@var{replacement}. @xref{Identifier Search}. +@findex xref-quit +@item q +Quit the window showing the @file{*xref*} buffer (@code{xref-quit}). +@end table + +In addition, the usual navigation commands, such as the arrow keys, +@kbd{C-n}, and @kbd{C-p} are available for moving around the buffer +without displaying the references. + +@node Identifier Search +@subsubsection Searching and Replacing with Identifiers +@cindex search and replace in multiple files +@cindex multiple-file search and replace + + The commands in this section visit and search all the files listed +in the @code{xref} backend's database, one by one. For these +commands, the database serves only to specify a sequence of files to +search. These commands scan all the databases starting with the first +one (if any) that describes the current file, proceed from there to +the end of the list, and then scan from the beginning of the list +until they have covered all the databases in the list. + +@table @kbd +@item M-? +Find all the references for the identifier at point. +@item M-x xref-query-replace @key{RET} @var{regexp} @key{RET} @var{replacement} @key{RET} +Interactively replace @var{regexp} with @var{replacement} in the names +of all the identifiers shown in the @file{*xref*} buffer. +@item M-x tags-search @key{RET} @var{regexp} @key{RET} +Search for @var{regexp} through the files in the selected tags +table. +@item M-x tags-query-replace @key{RET} @var{regexp} @key{RET} @var{replacement} @key{RET} +Perform a @code{query-replace-regexp} on each file in the selected tags table. +@item M-x tags-loop-continue +Restart one of the last 2 commands above, from the current location of point. +@end table + +@kindex M-? +@findex xref-find-references + @kbd{M-?} finds all the references for the identifier at point. If +there's no valid identifier at point, or when invoked with a prefix +argument, the command prompts for the identifier, with completion. It +then presents a @file{*xref*} buffer with all the references to the +identifier, showing the file name and the line where the identifier is +referenced. The XREF mode commands are available in this buffer, see +@ref{Xref Commands}. + +@findex xref-query-replace + @kbd{M-x xref-query-replace} reads a regexp to match identifier +names and a string to replace with, just like ordinary @kbd{M-x +query-replace-regexp}. It then performs the specified replacement in +the names of the matching identifiers in all the places in all the +files where these identifiers are referenced. This is useful when you +rename your identifiers as part of refactoring. This command should +be invoked in the @file{*xref*} buffer generated by @code{M-?}. + +@findex tags-search + @kbd{M-x tags-search} reads a regexp using the minibuffer, then +searches for matches in all the files in the selected tags table, one +file at a time. It displays the name of the file being searched so +you can follow its progress. As soon as it finds an occurrence, +@code{tags-search} returns. This command works only with the etags +backend, and requires tags tables to be available (@pxref{Tags +Tables}). + +@findex tags-loop-continue + Having found one match, you probably want to find all the rest. +Type @kbd{M-x tags-loop-continue}) to resume the @code{tags-search}, +finding one more match. This searches the rest of the current buffer, +followed by the remaining files of the tags table. + +@findex tags-query-replace + @kbd{M-x tags-query-replace} performs a single +@code{query-replace-regexp} through all the files in the tags table. It +reads a regexp to search for and a string to replace with, just like +ordinary @kbd{M-x query-replace-regexp}. It searches much like @kbd{M-x +tags-search}, but repeatedly, processing matches according to your +input. @xref{Query Replace}, for more information on query replace. +This command works only with the etags backend. + +@vindex tags-case-fold-search +@cindex case-sensitivity and tags search + You can control the case-sensitivity of tags search commands by +customizing the value of the variable @code{tags-case-fold-search}. The +default is to use the same setting as the value of +@code{case-fold-search} (@pxref{Lax Search}). + + It is possible to get through all the files in the tags table with a +single invocation of @kbd{M-x tags-query-replace}. But often it is +useful to exit temporarily, which you can do with any input event that +has no special query replace meaning. You can resume the query +replace subsequently by typing @kbd{M-x tags-loop-continue}; this +command resumes the last tags search or replace command that you did. +For instance, to skip the rest of the current file, you can type +@kbd{M-> M-x tags-loop-continue}. + + The commands in this section carry out much broader searches than +the @code{xref-find-definitions} family. The +@code{xref-find-definitions} commands search only for definitions of +identifiers that match your string or regexp. The commands +@code{tags-search} and @code{tags-query-replace} find every occurrence +of the regexp, as ordinary search commands and replace commands do in +the current buffer. + + As an alternative to @code{tags-search}, you can run @command{grep} +as a subprocess and have Emacs show you the matching lines one by one. +@xref{Grep Searching}. + +@node List Identifiers +@subsubsection Identifier Inquiries + +@table @kbd +@item C-M-i +@itemx M-@key{TAB} +Perform completion on the text around point, using the @code{xref} +backend if one is available (@code{completion-at-point}). +@item M-x list-tags @key{RET} @var{file} @key{RET} +Display a list of the tags defined in the program file @var{file}. +@item M-x xref-find-apropos @key{RET} @var{regexp} @key{RET} +Display a list of all known identifiers matching @var{regexp}. +@end table + +@cindex completion (symbol names) + In most programming language modes, you can type @kbd{C-M-i} or +@kbd{M-@key{TAB}} (@code{completion-at-point}) to complete the symbol +at point. If there is an @code{xref} backend available, this command +can use it to generate completion candidates more intelligently. +@xref{Symbol Completion}. + +@findex list-tags + @kbd{M-x list-tags} reads the name of one of the files covered by +the selected tags table, and displays a list of tags defined in that +file. Do not include a directory as part of the file name unless the +file name recorded in the tags table includes a directory. This +command works only with the etags backend, and requires a tags table +for the project to be available. @xref{Tags Tables}. + +@c Sadly, the new-and-improved Xref feature doesn't provide anything +@c close to the described below features of the now-obsoleted +@c tags-apropos. I'm leaving this here to encourage enhancements to +@c xref.el. +@ignore +@findex tags-apropos +@vindex tags-apropos-verbose +@vindex tags-tag-face +@vindex tags-apropos-additional-actions + @kbd{M-x tags-apropos} is like @code{apropos} for tags +(@pxref{Apropos}). It displays a list of tags in the selected tags +table whose entries match @var{regexp}. If the variable +@code{tags-apropos-verbose} is non-@code{nil}, it displays the names +of the tags files together with the tag names. You can customize the +appearance of the output by setting the variable @code{tags-tag-face} +to a face. You can display additional output by customizing the +variable @code{tags-apropos-additional-actions}; see its documentation +for details. +@end ignore + +@findex next-file + @kbd{M-x next-file} visits files covered by the selected tags table. +The first time it is called, it visits the first file covered by the +table. Each subsequent call visits the next covered file, unless a +prefix argument is supplied, in which case it returns to the first +file. This command works only with the etags backend. + +@node Tags Tables +@subsection Tags Tables +@cindex tags and tag tables A @dfn{tags table} records the tags extracted by scanning the source code of a certain program or a certain document. Tags extracted from @@ -1685,12 +2064,14 @@ source files. on a document or the source code file. The @samp{etags} program writes the tags to a @dfn{tags table file}, or @dfn{tags file} in short. The conventional name for a tags file is @file{TAGS}@. -@xref{Create Tags Table}. +@xref{Create Tags Table}. (It is also possible to create a tags table +by using one of the commands from other packages that can produce such +tables in the same format.) - Emacs provides many commands for searching and replacing using the -information recorded in tags tables. For instance, the @kbd{M-.} -(@code{find-tag}) jumps to the location of a specified function -definition in its source file. @xref{Find Tag}. + Emacs uses the tags tables via the @code{etags} package as one of +the supported backends for @code{xref}. Because tags tables are +produced by the @command{etags} command that is part of an Emacs +distribution, we describe tags tables in more detail here. @cindex C++ class browser, tags @cindex tags, C++ @@ -1706,14 +2087,10 @@ use tags, separate from the @command{etags} facility. * Tag Syntax:: Tag syntax for various types of code and text files. * Create Tags Table:: Creating a tags table with @command{etags}. * Etags Regexps:: Create arbitrary tags using regular expressions. -* Select Tags Table:: How to visit a tags table. -* Find Tag:: Commands to find the definition of a specific tag. -* Tags Search:: Using a tags table for searching and replacing. -* List Tags:: Using tags for completion, and listing them. @end menu @node Tag Syntax -@subsection Source File Tag Syntax +@subsubsection Source File Tag Syntax Here is how tag syntax is defined for the most popular languages: @@ -1883,13 +2260,17 @@ line. @item In Python code, @code{def} or @code{class} at the beginning of a line generate a tag. + +@item +In Ruby code, @code{def} or @code{class} or @code{module} at the +beginning of a line generate a tag. @end itemize You can also generate tags based on regexp matching (@pxref{Etags Regexps}) to handle other formats and languages. @node Create Tags Table -@subsection Creating Tags Tables +@subsubsection Creating Tags Tables @cindex @command{etags} program The @command{etags} program is used to create a tags table file. It knows @@ -1946,7 +2327,7 @@ source files, and the tags file will still refer correctly to the source files. If the tags file is @file{-} or is in the @file{/dev} directory, however, the file names are made relative to the current working directory. This is useful, for -example, when writing the tags to @file{/dev/stdout}. +example, when writing the tags to the standard output. When using a relative file name, it should not be a symbolic link pointing to a tags file in a different directory, because this would @@ -1992,7 +2373,7 @@ options, it outputs detailed information about how tags are generated for @var{lang}. @node Etags Regexps -@subsection Etags Regexps +@subsubsection Etags Regexps The @samp{--regex} option to @command{etags} allows tags to be recognized by regular expression matching. You can intermix this @@ -2151,7 +2532,7 @@ etags --language=none \ @subsection Selecting a Tags Table @findex visit-tags-table - Emacs has at any time one @dfn{selected} tags table. All the + Emacs has at any time at most one @dfn{selected} tags table. All the commands for working with tags tables use the selected one. To select a tags table, type @kbd{M-x visit-tags-table}, which reads the tags table file name as an argument, with @file{TAGS} in the default @@ -2192,212 +2573,6 @@ table mentions that file, as explained above. Do not set both @code{tags-file-name} and @code{tags-table-list}. -@node Find Tag -@subsection Finding a Tag - - The most important thing that a tags table enables you to do is to find -the definition of a specific tag. - -@table @kbd -@item M-.@: @var{tag} @key{RET} -Find first definition of @var{tag} (@code{find-tag}). -@item C-u M-. -Find next alternate definition of last tag specified. -@item C-u - M-. -Go back to previous tag found. -@item C-M-. @var{pattern} @key{RET} -Find a tag whose name matches @var{pattern} (@code{find-tag-regexp}). -@item C-u C-M-. -Find the next tag whose name matches the last pattern used. -@item C-x 4 .@: @var{tag} @key{RET} -Find first definition of @var{tag}, but display it in another window -(@code{find-tag-other-window}). -@item C-x 5 .@: @var{tag} @key{RET} -Find first definition of @var{tag}, and create a new frame to select the -buffer (@code{find-tag-other-frame}). -@item M-* -Pop back to where you previously invoked @kbd{M-.} and friends. -@end table - -@kindex M-. -@findex find-tag - @kbd{M-.}@: (@code{find-tag}) prompts for a tag name and jumps to -its source definition. It works by searching through the tags table -for that tag's file and approximate character position, visiting that -file, and searching for the tag definition at ever-increasing -distances away from the recorded approximate position. - - When entering the tag argument to @kbd{M-.}, the usual minibuffer -completion commands can be used (@pxref{Completion}), with the tag -names in the selected tags table as completion candidates. If you -specify an empty argument, the balanced expression in the buffer -before or around point is the default argument. @xref{Expressions}. - - You don't need to give @kbd{M-.} the full name of the tag; a part -will do. @kbd{M-.} finds tags which contain that argument as a -substring. However, it prefers an exact match to a substring match. -To find other tags that match the same substring, give @code{find-tag} -a numeric argument, as in @kbd{C-u M-.} or @kbd{M-0 M-.}; this does -not read a tag name, but continues searching the tags table's text for -another tag containing the same substring last used. - -@kindex C-x 4 . -@findex find-tag-other-window -@kindex C-x 5 . -@findex find-tag-other-frame - Like most commands that can switch buffers, @code{find-tag} has a -variant that displays the new buffer in another window, and one that -makes a new frame for it. The former is @w{@kbd{C-x 4 .}} -(@code{find-tag-other-window}), and the latter is @w{@kbd{C-x 5 .}} -(@code{find-tag-other-frame}). - - To move back to previous tag definitions, use @kbd{C-u - M-.}; more -generally, @kbd{M-.} with a negative numeric argument. Similarly, -@w{@kbd{C-x 4 .}} with a negative argument finds the previous tag -location in another window. - -@kindex M-* -@findex pop-tag-mark -@vindex find-tag-marker-ring-length - As well as going back to places you've found tags recently, you can -go back to places @emph{from where} you found them, using @kbd{M-*} -(@code{pop-tag-mark}). Thus you can find and examine the definition -of something with @kbd{M-.} and then return to where you were with -@kbd{M-*}. - - Both @kbd{C-u - M-.} and @kbd{M-*} allow you to retrace your steps to -a depth determined by the variable @code{find-tag-marker-ring-length}. - -@findex find-tag-regexp -@kindex C-M-. - The command @kbd{C-M-.} (@code{find-tag-regexp}) visits the tags that -match a specified regular expression. It is just like @kbd{M-.} except -that it does regexp matching instead of substring matching. - -@node Tags Search -@subsection Searching and Replacing with Tags Tables -@cindex search and replace in multiple files -@cindex multiple-file search and replace - - The commands in this section visit and search all the files listed -in the selected tags table, one by one. For these commands, the tags -table serves only to specify a sequence of files to search. These -commands scan the list of tags tables starting with the first tags -table (if any) that describes the current file, proceed from there to -the end of the list, and then scan from the beginning of the list -until they have covered all the tables in the list. - -@table @kbd -@item M-x tags-search @key{RET} @var{regexp} @key{RET} -Search for @var{regexp} through the files in the selected tags -table. -@item M-x tags-query-replace @key{RET} @var{regexp} @key{RET} @var{replacement} @key{RET} -Perform a @code{query-replace-regexp} on each file in the selected tags table. -@item M-, -Restart one of the commands above, from the current location of point -(@code{tags-loop-continue}). -@end table - -@findex tags-search - @kbd{M-x tags-search} reads a regexp using the minibuffer, then -searches for matches in all the files in the selected tags table, one -file at a time. It displays the name of the file being searched so you -can follow its progress. As soon as it finds an occurrence, -@code{tags-search} returns. - -@kindex M-, -@findex tags-loop-continue - Having found one match, you probably want to find all the rest. -Type @kbd{M-,} (@code{tags-loop-continue}) to resume the -@code{tags-search}, finding one more match. This searches the rest of -the current buffer, followed by the remaining files of the tags table. - -@findex tags-query-replace - @kbd{M-x tags-query-replace} performs a single -@code{query-replace-regexp} through all the files in the tags table. It -reads a regexp to search for and a string to replace with, just like -ordinary @kbd{M-x query-replace-regexp}. It searches much like @kbd{M-x -tags-search}, but repeatedly, processing matches according to your -input. @xref{Query Replace}, for more information on query replace. - -@vindex tags-case-fold-search -@cindex case-sensitivity and tags search - You can control the case-sensitivity of tags search commands by -customizing the value of the variable @code{tags-case-fold-search}. The -default is to use the same setting as the value of -@code{case-fold-search} (@pxref{Lax Search}). - - It is possible to get through all the files in the tags table with a -single invocation of @kbd{M-x tags-query-replace}. But often it is -useful to exit temporarily, which you can do with any input event that -has no special query replace meaning. You can resume the query -replace subsequently by typing @kbd{M-,}; this command resumes the -last tags search or replace command that you did. For instance, to -skip the rest of the current file, you can type @kbd{M-> M-,}. - - The commands in this section carry out much broader searches than the -@code{find-tag} family. The @code{find-tag} commands search only for -definitions of tags that match your substring or regexp. The commands -@code{tags-search} and @code{tags-query-replace} find every occurrence -of the regexp, as ordinary search commands and replace commands do in -the current buffer. - - These commands create buffers only temporarily for the files that they -have to search (those which are not already visited in Emacs buffers). -Buffers in which no match is found are quickly killed; the others -continue to exist. - - As an alternative to @code{tags-search}, you can run @command{grep} -as a subprocess and have Emacs show you the matching lines one by one. -@xref{Grep Searching}. - -@node List Tags -@subsection Tags Table Inquiries - -@table @kbd -@item C-M-i -@itemx M-@key{TAB} -Perform completion on the text around point, using the selected tags -table if one is loaded (@code{completion-at-point}). -@item M-x list-tags @key{RET} @var{file} @key{RET} -Display a list of the tags defined in the program file @var{file}. -@item M-x tags-apropos @key{RET} @var{regexp} @key{RET} -Display a list of all tags matching @var{regexp}. -@end table - -@cindex completion (symbol names) - In most programming language modes, you can type @kbd{C-M-i} or -@kbd{M-@key{TAB}} (@code{completion-at-point}) to complete the symbol -at point. If there is a selected tags table, this command can use it -to generate completion candidates. @xref{Symbol Completion}. - -@findex list-tags - @kbd{M-x list-tags} reads the name of one of the files covered by -the selected tags table, and displays a list of tags defined in that -file. Do not include a directory as part of the file name unless the -file name recorded in the tags table includes a directory. - -@findex tags-apropos -@vindex tags-apropos-verbose -@vindex tags-tag-face -@vindex tags-apropos-additional-actions - @kbd{M-x tags-apropos} is like @code{apropos} for tags -(@pxref{Apropos}). It displays a list of tags in the selected tags -table whose entries match @var{regexp}. If the variable -@code{tags-apropos-verbose} is non-@code{nil}, it displays the names -of the tags files together with the tag names. You can customize the -appearance of the output by setting the variable @code{tags-tag-face} -to a face. You can display additional output by customizing the -variable @code{tags-apropos-additional-actions}; see its documentation -for details. - -@findex next-file - @kbd{M-x next-file} visits files covered by the selected tags table. -The first time it is called, it visits the first file covered by the -table. Each subsequent call visits the next covered file, unless a -prefix argument is supplied, in which case it returns to the first -file. - @node EDE @section Emacs Development Environment @cindex EDE (Emacs Development Environment) diff --git a/doc/emacs/mark.texi b/doc/emacs/mark.texi index 09c766be504..98980d5fb3f 100644 --- a/doc/emacs/mark.texi +++ b/doc/emacs/mark.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Mark @@ -288,7 +288,9 @@ instead signal an error if the mark is inactive. active---for example, typing @kbd{a} inserts the character @samp{a}, then deactivates the mark. If you enable Delete Selection mode, a minor mode, then inserting text while the mark is active causes the -text in the region to be deleted first. To toggle Delete Selection +text in the region to be deleted first. Also, commands that normally +delete just one character, such as @kbd{C-d} or @kbd{@key{DEL}}, will +delete the entire region instead. To toggle Delete Selection mode on or off, type @kbd{M-x delete-selection-mode}. @node Mark Ring diff --git a/doc/emacs/mini.texi b/doc/emacs/mini.texi index 869e06424ad..6ab716d909a 100644 --- a/doc/emacs/mini.texi +++ b/doc/emacs/mini.texi @@ -1,6 +1,6 @@ @c -*- coding: utf-8 -*- @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Minibuffer diff --git a/doc/emacs/misc.texi b/doc/emacs/misc.texi index 41dce521c0a..2d8137e832f 100644 --- a/doc/emacs/misc.texi +++ b/doc/emacs/misc.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @iftex diff --git a/doc/emacs/modes.texi b/doc/emacs/modes.texi index 4abbb59e89d..c1564e9299b 100644 --- a/doc/emacs/modes.texi +++ b/doc/emacs/modes.texi @@ -1,6 +1,6 @@ @c -*- coding: utf-8 -*- @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Modes diff --git a/doc/emacs/msdos-xtra.texi b/doc/emacs/msdos-xtra.texi index c8e266915f0..45edd6cb7f9 100644 --- a/doc/emacs/msdos-xtra.texi +++ b/doc/emacs/msdos-xtra.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 2004-2015 Free Software Foundation, Inc. +@c Copyright (C) 2004-2016 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @c @c This file is included either in emacs-xtra.texi (when producing the diff --git a/doc/emacs/msdos.texi b/doc/emacs/msdos.texi index f1cdb26a0eb..ea8a24d1cf7 100644 --- a/doc/emacs/msdos.texi +++ b/doc/emacs/msdos.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Microsoft Windows diff --git a/doc/emacs/mule.texi b/doc/emacs/mule.texi index 88bbccd5b11..bcde81b182e 100644 --- a/doc/emacs/mule.texi +++ b/doc/emacs/mule.texi @@ -1,6 +1,6 @@ @c -*- coding: utf-8 -*- @c This is part of the Emacs manual. -@c Copyright (C) 1997, 1999-2015 Free Software Foundation, Inc. +@c Copyright (C) 1997, 1999-2016 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @node International @chapter International Character Set Support diff --git a/doc/emacs/package.texi b/doc/emacs/package.texi index 5f80b0afe3f..3c099838059 100644 --- a/doc/emacs/package.texi +++ b/doc/emacs/package.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Packages diff --git a/doc/emacs/picture-xtra.texi b/doc/emacs/picture-xtra.texi index 8a087acd306..b7d3cb34508 100644 --- a/doc/emacs/picture-xtra.texi +++ b/doc/emacs/picture-xtra.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 2004-2015 Free Software Foundation, Inc. +@c Copyright (C) 2004-2016 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @c @c This file is included either in emacs-xtra.texi (when producing the diff --git a/doc/emacs/programs.texi b/doc/emacs/programs.texi index 8423b70203c..e4bd85c0ddd 100644 --- a/doc/emacs/programs.texi +++ b/doc/emacs/programs.texi @@ -1,6 +1,6 @@ @c -*- coding: utf-8 -*- @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 1999-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 1999-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Programs @@ -271,7 +271,7 @@ bindings for that purpose. The Imenu facility offers a way to find the major definitions in a file by name. It is also useful in text formatter major modes, where it treats each chapter, section, etc., as a definition. -(@xref{Tags}, for a more powerful feature that handles multiple files +(@xref{Xref}, for a more powerful feature that handles multiple files together.) @findex imenu @@ -1358,7 +1358,7 @@ the @kbd{M-@key{TAB}} key is usually reserved by the window manager for switching graphical windows, so you should type @kbd{C-M-i} or @kbd{@key{ESC} @key{TAB}} instead. -@cindex tags-based completion +@cindex xref-based completion @findex completion-at-point @cindex Lisp symbol completion @cindex completion (Lisp symbols) @@ -1368,7 +1368,7 @@ which generates its completion list in a flexible way. If Semantic mode is enabled, it tries to use the Semantic parser data for completion (@pxref{Semantic}). If Semantic mode is not enabled or fails at performing completion, it tries to complete using the -selected tags table (@pxref{Tags}). If in Emacs Lisp mode, it +available @code{xref} backend (@pxref{Xref}). If in Emacs Lisp mode, it performs completion using the function, variable, or property names defined in the current Emacs session. @@ -1530,14 +1530,16 @@ with the Foldout package (@pxref{Foldout}). Prettify Symbols mode is a buffer-local minor mode that replaces certain strings with more attractive versions for display purposes. For example, in Emacs Lisp mode, it replaces the string @samp{lambda} -with the Greek lambda character @samp{λ}. You may wish to use this in -non-programming modes as well. You can customize the mode by adding -more entries to @code{prettify-symbols-alist}. More elaborate -customization is available via customizing -@code{prettify-symbols-compose-predicate} if its default value -@code{prettify-symbols-default-compose-p} is not appropriate. There -is also a global version, @code{global-prettify-symbols-mode}, which -enables the mode in all buffers that support it. +with the Greek lambda character @samp{λ}. In a @TeX{} buffer, it will +replace @samp{\alpha} @dots{} @samp{\omega} and other math macros with +their Unicode characters. You may wish to use this in non-programming +modes as well. You can customize the mode by adding more entries to +@code{prettify-symbols-alist}. More elaborate customization is +available via customizing @code{prettify-symbols-compose-predicate} if +its default value @code{prettify-symbols-default-compose-p} is not +appropriate. There is also a global version, +@code{global-prettify-symbols-mode}, which enables the mode in all +buffers that support it. The symbol at point can be shown in its original form. This is controlled by the variable @code{prettify-symbols-unprettify-at-point}: diff --git a/doc/emacs/regs.texi b/doc/emacs/regs.texi index 13c03f78a52..a62d2b6730f 100644 --- a/doc/emacs/regs.texi +++ b/doc/emacs/regs.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Registers diff --git a/doc/emacs/rmail.texi b/doc/emacs/rmail.texi index b37f42cc56f..ef9894d6f26 100644 --- a/doc/emacs/rmail.texi +++ b/doc/emacs/rmail.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Rmail diff --git a/doc/emacs/screen.texi b/doc/emacs/screen.texi index 37e0e7e067b..580df5fe8ff 100644 --- a/doc/emacs/screen.texi +++ b/doc/emacs/screen.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Screen diff --git a/doc/emacs/search.texi b/doc/emacs/search.texi index 1cc7753f113..bef74e3b2c5 100644 --- a/doc/emacs/search.texi +++ b/doc/emacs/search.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Search @@ -12,10 +12,10 @@ a string. Emacs also has commands to replace occurrences of a string with a different string. There are also commands that do the same thing, but search for patterns instead of fixed strings. - You can also search multiple files under the control of a tags table -(@pxref{Tags Search}) or through the Dired @kbd{A} command -(@pxref{Operating on Files}), or ask the @code{grep} program to do it -(@pxref{Grep Searching}). + You can also search multiple files under the control of an +@code{xref} backend (@pxref{Identifier Search}) or through the Dired +@kbd{A} command (@pxref{Operating on Files}), or ask the @code{grep} +program to do it (@pxref{Grep Searching}). @menu * Incremental Search:: Search happens as you type the string. diff --git a/doc/emacs/sending.texi b/doc/emacs/sending.texi index c5ca73b40a8..30b8491e27e 100644 --- a/doc/emacs/sending.texi +++ b/doc/emacs/sending.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Sending Mail diff --git a/doc/emacs/text.texi b/doc/emacs/text.texi index bab660e1e10..41abb42fb5d 100644 --- a/doc/emacs/text.texi +++ b/doc/emacs/text.texi @@ -1,6 +1,6 @@ @c -*- coding: utf-8 -*- @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Text @@ -1717,6 +1717,7 @@ such as @code{"/tmp"}. @vindex latex-run-command @vindex tex-dvi-view-command @vindex tex-dvi-print-command +@vindex tex-print-file-extension The buffer's @TeX{} variant determines what shell command @kbd{C-c C-b} actually runs. In Plain @TeX{} mode, it is specified by the variable @code{tex-run-command}, which defaults to @code{"tex"}. In @@ -1725,7 +1726,12 @@ defaults to @code{"latex"}. The shell command that @kbd{C-c C-v} runs to view the @file{.dvi} output is determined by the variable @code{tex-dvi-view-command}, regardless of the @TeX{} variant. The shell command that @kbd{C-c C-p} runs to print the output is -determined by the variable @code{tex-dvi-print-command}. +determined by the variable @code{tex-dvi-print-command}. The variable +@code{tex-print-file-extension} can be set to the required file +extension for viewing and printing @TeX{}-compiled files. For +example, you can set it to @file{.pdf}, and update +@code{tex-dvi-view-command} and @code{tex-dvi-print-command} +accordingly. Normally, Emacs automatically appends the output file name to the shell command strings described in the preceding paragraph. For diff --git a/doc/emacs/trouble.texi b/doc/emacs/trouble.texi index 4286cfeb737..32680633769 100644 --- a/doc/emacs/trouble.texi +++ b/doc/emacs/trouble.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2001-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @iftex diff --git a/doc/emacs/vc-xtra.texi b/doc/emacs/vc-xtra.texi index d224043b110..abd29fd6579 100644 --- a/doc/emacs/vc-xtra.texi +++ b/doc/emacs/vc-xtra.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 2004-2015 Free Software Foundation, Inc. +@c Copyright (C) 2004-2016 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @c @c This file is included in emacs-xtra.texi when producing the printed diff --git a/doc/emacs/vc1-xtra.texi b/doc/emacs/vc1-xtra.texi index 3eb9b035823..9cbe4b544f7 100644 --- a/doc/emacs/vc1-xtra.texi +++ b/doc/emacs/vc1-xtra.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 2004-2015 Free Software Foundation, Inc. +@c Copyright (C) 2004-2016 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @c @c This file is included either in vc-xtra.texi (when producing the diff --git a/doc/emacs/windows.texi b/doc/emacs/windows.texi index d844f3e4988..f99234b5c1b 100644 --- a/doc/emacs/windows.texi +++ b/doc/emacs/windows.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2015 Free Software +@c Copyright (C) 1985-1987, 1993-1995, 1997, 2000-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node Windows @@ -231,8 +231,9 @@ Mail}), but in another window (@code{compose-mail-other-window}). @findex find-tag-other-window @item C-x 4 . -Find a tag in the current tags table, similar to @kbd{M-.} -(@pxref{Tags}), but in another window (@code{find-tag-other-window}). +Find the definition of an identifier, similar to @kbd{M-.} +(@pxref{Xref}), but in another window +(@code{xref-find-definitions-other-window}). @item C-x 4 r @var{filename} @key{RET} Visit file @var{filename} read-only, and select its buffer in another window (@code{find-file-read-only-other-window}). @xref{Visiting}. diff --git a/doc/emacs/xresources.texi b/doc/emacs/xresources.texi index afd27669967..61fdb0a4fd2 100644 --- a/doc/emacs/xresources.texi +++ b/doc/emacs/xresources.texi @@ -1,5 +1,5 @@ @c This is part of the Emacs manual. -@c Copyright (C) 1987, 1993-1995, 1997, 2001-2015 Free Software +@c Copyright (C) 1987, 1993-1995, 1997, 2001-2016 Free Software @c Foundation, Inc. @c See file emacs.texi for copying conditions. @node X Resources diff --git a/doc/lispintro/ChangeLog.1 b/doc/lispintro/ChangeLog.1 index c54c165d22c..d00f2885abe 100644 --- a/doc/lispintro/ChangeLog.1 +++ b/doc/lispintro/ChangeLog.1 @@ -782,7 +782,7 @@ ;; coding: utf-8 ;; End: - Copyright (C) 2001-2015 Free Software Foundation, Inc. + Copyright (C) 2001-2016 Free Software Foundation, Inc. This file is part of GNU Emacs. diff --git a/doc/lispintro/Makefile.in b/doc/lispintro/Makefile.in index d1a696ce2c2..58ebd81a70f 100644 --- a/doc/lispintro/Makefile.in +++ b/doc/lispintro/Makefile.in @@ -1,6 +1,6 @@ ### @configure_input@ -# Copyright (C) 1994-1999, 2001-2015 Free Software Foundation, Inc. +# Copyright (C) 1994-1999, 2001-2016 Free Software Foundation, Inc. # This file is part of GNU Emacs. diff --git a/doc/lispintro/README b/doc/lispintro/README index e24f8f50726..aa7d07c1780 100644 --- a/doc/lispintro/README +++ b/doc/lispintro/README @@ -1,4 +1,4 @@ -Copyright (C) 2001-2015 Free Software Foundation, Inc. +Copyright (C) 2001-2016 Free Software Foundation, Inc. See the end of the file for license conditions. diff --git a/doc/lispintro/cons-1.eps b/doc/lispintro/cons-1.eps index 4853d6a1d8d..1dc7aa7247e 100644 --- a/doc/lispintro/cons-1.eps +++ b/doc/lispintro/cons-1.eps @@ -4,7 +4,7 @@ %%CreationDate: Wed Mar 8 14:26:58 1995 %%Creator: Tgif-2.16-p4 by William Chia-Wei Cheng (william@cs.UCLA.edu) -% Copyright (C) 1995, 1997, 2001-2015 Free Software Foundation, Inc. +% Copyright (C) 1995, 1997, 2001-2016 Free Software Foundation, Inc. % % This file is part of GNU Emacs. % diff --git a/doc/lispintro/cons-2.eps b/doc/lispintro/cons-2.eps index 258caa94858..fbb13f22b75 100644 --- a/doc/lispintro/cons-2.eps +++ b/doc/lispintro/cons-2.eps @@ -4,7 +4,7 @@ %%CreationDate: Wed Mar 8 14:26:39 1995 %%Creator: Tgif-2.16-p4 by William Chia-Wei Cheng (william@cs.UCLA.edu) -% Copyright (C) 1995, 1997, 2001-2015 Free Software Foundation, Inc. +% Copyright (C) 1995, 1997, 2001-2016 Free Software Foundation, Inc. % % This file is part of GNU Emacs. % diff --git a/doc/lispintro/cons-2a.eps b/doc/lispintro/cons-2a.eps index 710f66e4648..b91ea1711e5 100644 --- a/doc/lispintro/cons-2a.eps +++ b/doc/lispintro/cons-2a.eps @@ -4,7 +4,7 @@ %%CreationDate: Tue Mar 14 15:09:30 1995 %%Creator: Tgif-2.16-p4 by William Chia-Wei Cheng (william@cs.UCLA.edu) -% Copyright (C) 1995, 1997, 2001-2015 Free Software Foundation, Inc. +% Copyright (C) 1995, 1997, 2001-2016 Free Software Foundation, Inc. % % This file is part of GNU Emacs. % diff --git a/doc/lispintro/cons-3.eps b/doc/lispintro/cons-3.eps index 2849a314133..349a941eee1 100644 --- a/doc/lispintro/cons-3.eps +++ b/doc/lispintro/cons-3.eps @@ -4,7 +4,7 @@ %%CreationDate: Wed Mar 8 14:25:41 1995 %%Creator: Tgif-2.16-p4 by William Chia-Wei Cheng (william@cs.UCLA.edu) -% Copyright (C) 1995, 1997, 2001-2015 Free Software Foundation, Inc. +% Copyright (C) 1995, 1997, 2001-2016 Free Software Foundation, Inc. % % This file is part of GNU Emacs. % diff --git a/doc/lispintro/cons-4.eps b/doc/lispintro/cons-4.eps index d9331242818..c6e2d445125 100644 --- a/doc/lispintro/cons-4.eps +++ b/doc/lispintro/cons-4.eps @@ -4,7 +4,7 @@ %%CreationDate: Wed Mar 8 14:25:06 1995 %%Creator: Tgif-2.16-p4 by William Chia-Wei Cheng (william@cs.UCLA.edu) -% Copyright (C) 1995, 1997, 2001-2015 Free Software Foundation, Inc. +% Copyright (C) 1995, 1997, 2001-2016 Free Software Foundation, Inc. % % This file is part of GNU Emacs. % diff --git a/doc/lispintro/cons-5.eps b/doc/lispintro/cons-5.eps index 6ceec517f52..7421a5d31e3 100644 --- a/doc/lispintro/cons-5.eps +++ b/doc/lispintro/cons-5.eps @@ -4,7 +4,7 @@ %%CreationDate: Wed Mar 8 14:27:28 1995 %%Creator: Tgif-2.16-p4 by William Chia-Wei Cheng (william@cs.UCLA.edu) -% Copyright (C) 1995, 1997, 2001-2015 Free Software Foundation, Inc. +% Copyright (C) 1995, 1997, 2001-2016 Free Software Foundation, Inc. % % This file is part of GNU Emacs. % diff --git a/doc/lispintro/drawers.eps b/doc/lispintro/drawers.eps index dcd27a60b54..3acf54e0dc9 100644 --- a/doc/lispintro/drawers.eps +++ b/doc/lispintro/drawers.eps @@ -9,7 +9,7 @@ %%EndComments %%BeginProlog -% Copyright (C) 2001-2015 Free Software Foundation, Inc. +% Copyright (C) 2001-2016 Free Software Foundation, Inc. % % This file is part of GNU Emacs. % diff --git a/doc/lispintro/emacs-lisp-intro.texi b/doc/lispintro/emacs-lisp-intro.texi index 245113b86d7..36e60c23005 100644 --- a/doc/lispintro/emacs-lisp-intro.texi +++ b/doc/lispintro/emacs-lisp-intro.texi @@ -113,7 +113,7 @@ Edition @value{edition-number}, @value{update-date} Distributed with Emacs version @value{EMACSVER}. @end ifnottex @sp 1 -Copyright @copyright{} 1990--1995, 1997, 2001--2015 Free Software +Copyright @copyright{} 1990--1995, 1997, 2001--2016 Free Software Foundation, Inc. @sp 1 diff --git a/doc/lispintro/lambda-1.eps b/doc/lispintro/lambda-1.eps index 21b180c27cf..fb9e41b67ee 100644 --- a/doc/lispintro/lambda-1.eps +++ b/doc/lispintro/lambda-1.eps @@ -4,7 +4,7 @@ %%CreationDate: Wed Mar 8 14:31:53 1995 %%Creator: Tgif-2.16-p4 by William Chia-Wei Cheng (william@cs.UCLA.edu) -% Copyright (C) 1995, 1997, 2001-2015 Free Software Foundation, Inc. +% Copyright (C) 1995, 1997, 2001-2016 Free Software Foundation, Inc. % % This file is part of GNU Emacs. % diff --git a/doc/lispintro/lambda-2.eps b/doc/lispintro/lambda-2.eps index 6eff61bbd22..4aa38dfb458 100644 --- a/doc/lispintro/lambda-2.eps +++ b/doc/lispintro/lambda-2.eps @@ -4,7 +4,7 @@ %%CreationDate: Wed Mar 8 14:33:09 1995 %%Creator: Tgif-2.16-p4 by William Chia-Wei Cheng (william@cs.UCLA.edu) -% Copyright (C) 1995, 1997, 2001-2015 Free Software Foundation, Inc. +% Copyright (C) 1995, 1997, 2001-2016 Free Software Foundation, Inc. % % This file is part of GNU Emacs. % diff --git a/doc/lispintro/lambda-3.eps b/doc/lispintro/lambda-3.eps index 6ab228262d5..0612eb30003 100644 --- a/doc/lispintro/lambda-3.eps +++ b/doc/lispintro/lambda-3.eps @@ -4,7 +4,7 @@ %%CreationDate: Wed Mar 8 14:33:49 1995 %%Creator: Tgif-2.16-p4 by William Chia-Wei Cheng (william@cs.UCLA.edu) -% Copyright (C) 1995, 1997, 2001-2015 Free Software Foundation, Inc. +% Copyright (C) 1995, 1997, 2001-2016 Free Software Foundation, Inc. % % This file is part of GNU Emacs. % diff --git a/doc/lispref/ChangeLog.1 b/doc/lispref/ChangeLog.1 index e508839cd5b..610e7541e7d 100644 --- a/doc/lispref/ChangeLog.1 +++ b/doc/lispref/ChangeLog.1 @@ -13989,7 +13989,7 @@ ;; coding: utf-8 ;; End: - Copyright (C) 1998-2015 Free Software Foundation, Inc. + Copyright (C) 1998-2016 Free Software Foundation, Inc. This file is part of GNU Emacs. diff --git a/doc/lispref/Makefile.in b/doc/lispref/Makefile.in index 94759173dd6..7aadee7adea 100644 --- a/doc/lispref/Makefile.in +++ b/doc/lispref/Makefile.in @@ -1,6 +1,6 @@ ### @configure_input@ -# Copyright (C) 1990-1996, 1998-2015 Free Software Foundation, Inc. +# Copyright (C) 1990-1996, 1998-2016 Free Software Foundation, Inc. # This file is part of GNU Emacs. diff --git a/doc/lispref/README b/doc/lispref/README index fd943ce97c2..c7dced892e7 100644 --- a/doc/lispref/README +++ b/doc/lispref/README @@ -1,4 +1,4 @@ -Copyright (C) 2001-2015 Free Software Foundation, Inc. -*- outline -*- +Copyright (C) 2001-2016 Free Software Foundation, Inc. -*- outline -*- See the end of the file for license conditions. diff --git a/doc/lispref/abbrevs.texi b/doc/lispref/abbrevs.texi index bcbea87c04d..5f5a395c97a 100644 --- a/doc/lispref/abbrevs.texi +++ b/doc/lispref/abbrevs.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1994, 1999, 2001-2015 Free Software Foundation, +@c Copyright (C) 1990-1994, 1999, 2001-2016 Free Software Foundation, @c Inc. @c See the file elisp.texi for copying conditions. @node Abbrevs diff --git a/doc/lispref/anti.texi b/doc/lispref/anti.texi index 2fc43da8e53..4b084014994 100644 --- a/doc/lispref/anti.texi +++ b/doc/lispref/anti.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1999, 2002-2015 Free Software Foundation, Inc. +@c Copyright (C) 1999, 2002-2016 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @c This node must have no pointers. diff --git a/doc/lispref/back.texi b/doc/lispref/back.texi index c4f2b5eb852..ecd9c615be7 100644 --- a/doc/lispref/back.texi +++ b/doc/lispref/back.texi @@ -1,6 +1,6 @@ \input texinfo @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 2001-2015 Free Software Foundation, Inc. +@c Copyright (C) 2001-2016 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @c @c %**start of header diff --git a/doc/lispref/backups.texi b/doc/lispref/backups.texi index d37df25d267..b9e6466c871 100644 --- a/doc/lispref/backups.texi +++ b/doc/lispref/backups.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1999, 2001-2015 Free Software Foundation, +@c Copyright (C) 1990-1995, 1999, 2001-2016 Free Software Foundation, @c Inc. @c See the file elisp.texi for copying conditions. @node Backups and Auto-Saving diff --git a/doc/lispref/buffers.texi b/doc/lispref/buffers.texi index 55fa5bcd6f0..e56d77c7b92 100644 --- a/doc/lispref/buffers.texi +++ b/doc/lispref/buffers.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Buffers diff --git a/doc/lispref/commands.texi b/doc/lispref/commands.texi index 7ddf5ee8f74..dee43cefb15 100644 --- a/doc/lispref/commands.texi +++ b/doc/lispref/commands.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Command Loop diff --git a/doc/lispref/compile.texi b/doc/lispref/compile.texi index 8c23086e8d1..f7fed5e18d2 100644 --- a/doc/lispref/compile.texi +++ b/doc/lispref/compile.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1994, 2001-2015 Free Software Foundation, Inc. +@c Copyright (C) 1990-1994, 2001-2016 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Byte Compilation @chapter Byte Compilation diff --git a/doc/lispref/control.texi b/doc/lispref/control.texi index 412903f8fbc..008a991102b 100644 --- a/doc/lispref/control.texi +++ b/doc/lispref/control.texi @@ -1,6 +1,6 @@ @c -*- mode: texinfo; coding: utf-8 -*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Control Structures diff --git a/doc/lispref/customize.texi b/doc/lispref/customize.texi index 51d729f665c..1f207dce823 100644 --- a/doc/lispref/customize.texi +++ b/doc/lispref/customize.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1997-2015 Free Software Foundation, Inc. +@c Copyright (C) 1997-2016 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Customization @chapter Customization Settings diff --git a/doc/lispref/debugging.texi b/doc/lispref/debugging.texi index e82efbb0b72..3f1574fac6c 100644 --- a/doc/lispref/debugging.texi +++ b/doc/lispref/debugging.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1994, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1994, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Debugging diff --git a/doc/lispref/display.texi b/doc/lispref/display.texi index d1ac85a7cab..93b00e17dac 100644 --- a/doc/lispref/display.texi +++ b/doc/lispref/display.texi @@ -1,6 +1,6 @@ @c -*- mode: texinfo; coding: utf-8 -*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-2015 Free Software Foundation, Inc. +@c Copyright (C) 1990-1995, 1998-2016 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Display @chapter Emacs Display diff --git a/doc/lispref/edebug.texi b/doc/lispref/edebug.texi index 96bb03b34c0..47fe02a4a57 100644 --- a/doc/lispref/edebug.texi +++ b/doc/lispref/edebug.texi @@ -1,6 +1,6 @@ @comment -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1992-1994, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1992-1994, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. diff --git a/doc/lispref/elisp.texi b/doc/lispref/elisp.texi index 56d303e2e9e..da519f579c9 100644 --- a/doc/lispref/elisp.texi +++ b/doc/lispref/elisp.texi @@ -99,7 +99,7 @@ This is the @cite{GNU Emacs Lisp Reference Manual} @end ifnottex corresponding to Emacs version @value{EMACSVER}. -Copyright @copyright{} 1990--1996, 1998--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1990--1996, 1998--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/lispref/errors.texi b/doc/lispref/errors.texi index d485b3b6f15..c2bab019274 100644 --- a/doc/lispref/errors.texi +++ b/doc/lispref/errors.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1993, 1999, 2001-2015 Free Software Foundation, +@c Copyright (C) 1990-1993, 1999, 2001-2016 Free Software Foundation, @c Inc. @c See the file elisp.texi for copying conditions. @node Standard Errors diff --git a/doc/lispref/eval.texi b/doc/lispref/eval.texi index dfad9fb709d..d2a8ff56b6b 100644 --- a/doc/lispref/eval.texi +++ b/doc/lispref/eval.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1994, 1998, 2001-2015 Free Software Foundation, +@c Copyright (C) 1990-1994, 1998, 2001-2016 Free Software Foundation, @c Inc. @c See the file elisp.texi for copying conditions. @node Evaluation @@ -328,13 +328,12 @@ This function returns the meaning of @var{function} as a function. If definition and starts over with that value. If @var{function} is not a symbol, then it returns @var{function} itself. -This function signals a @code{void-function} error if the final symbol -is unbound and optional argument @var{noerror} is @code{nil} or -omitted. Otherwise, if @var{noerror} is non-@code{nil}, it returns -@code{nil} if the final symbol is unbound. +This function returns @code{nil} if the final symbol is unbound. It +signals a @code{cyclic-function-indirection} error if there is a loop +in the chain of symbols. -It signals a @code{cyclic-function-indirection} error if there is a -loop in the chain of symbols. +The optional argument @var{noerror} is obsolete, kept for backward +compatibility, and has no effect. Here is how you could define @code{indirect-function} in Lisp: diff --git a/doc/lispref/files.texi b/doc/lispref/files.texi index 918bf5becbd..6b7ee19d5f3 100644 --- a/doc/lispref/files.texi +++ b/doc/lispref/files.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Files diff --git a/doc/lispref/frames.texi b/doc/lispref/frames.texi index 80a4af29f1a..1c6674cdda9 100644 --- a/doc/lispref/frames.texi +++ b/doc/lispref/frames.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Frames diff --git a/doc/lispref/functions.texi b/doc/lispref/functions.texi index 7cc041fa77e..e596badcdd2 100644 --- a/doc/lispref/functions.texi +++ b/doc/lispref/functions.texi @@ -1,6 +1,6 @@ @c -*- mode: texinfo; coding: utf-8 -*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Functions diff --git a/doc/lispref/hash.texi b/doc/lispref/hash.texi index 22b7217506f..8389c214707 100644 --- a/doc/lispref/hash.texi +++ b/doc/lispref/hash.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1999, 2001-2015 Free Software Foundation, Inc. +@c Copyright (C) 1999, 2001-2016 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Hash Tables @chapter Hash Tables diff --git a/doc/lispref/help.texi b/doc/lispref/help.texi index 685995b395f..0b8182c521a 100644 --- a/doc/lispref/help.texi +++ b/doc/lispref/help.texi @@ -1,6 +1,6 @@ @c -*- mode: texinfo; coding: utf-8 -*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Documentation diff --git a/doc/lispref/hooks.texi b/doc/lispref/hooks.texi index eb2e34318fd..cbbaa8e5ea0 100644 --- a/doc/lispref/hooks.texi +++ b/doc/lispref/hooks.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1993, 1998, 2001-2015 Free Software Foundation, +@c Copyright (C) 1990-1993, 1998, 2001-2016 Free Software Foundation, @c Inc. @c See the file elisp.texi for copying conditions. @node Standard Hooks diff --git a/doc/lispref/internals.texi b/doc/lispref/internals.texi index e111d358ba0..41064df5a28 100644 --- a/doc/lispref/internals.texi +++ b/doc/lispref/internals.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1993, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1993, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node GNU Emacs Internals diff --git a/doc/lispref/intro.texi b/doc/lispref/intro.texi index 865c6984864..9d4a72009ed 100644 --- a/doc/lispref/intro.texi +++ b/doc/lispref/intro.texi @@ -1,6 +1,6 @@ @c -*-coding: utf-8-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1994, 2001-2015 Free Software Foundation, Inc. +@c Copyright (C) 1990-1994, 2001-2016 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Introduction diff --git a/doc/lispref/keymaps.texi b/doc/lispref/keymaps.texi index 9bea4b0af1c..354be3cdd92 100644 --- a/doc/lispref/keymaps.texi +++ b/doc/lispref/keymaps.texi @@ -1,6 +1,6 @@ @c -*- mode: texinfo; coding: utf-8 -*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1994, 1998-2015 Free Software Foundation, Inc. +@c Copyright (C) 1990-1994, 1998-2016 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Keymaps @chapter Keymaps diff --git a/doc/lispref/lay-flat.texi b/doc/lispref/lay-flat.texi index 04aabd814fc..42bc26637ba 100644 --- a/doc/lispref/lay-flat.texi +++ b/doc/lispref/lay-flat.texi @@ -1,6 +1,6 @@ \input texinfo @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 2001-2015 Free Software Foundation, Inc. +@c Copyright (C) 2001-2016 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @c @comment %**start of header diff --git a/doc/lispref/lists.texi b/doc/lispref/lists.texi index 48e1b57eede..d961caf49f6 100644 --- a/doc/lispref/lists.texi +++ b/doc/lispref/lists.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Lists diff --git a/doc/lispref/loading.texi b/doc/lispref/loading.texi index e01f3161731..cb5c7012c16 100644 --- a/doc/lispref/loading.texi +++ b/doc/lispref/loading.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Loading @@ -965,6 +965,11 @@ The face @var{face} was defined. The feature @var{feature} was required. @item (provide . @var{feature}) The feature @var{feature} was provided. +@item (cl-defmethod @var{method} @var{specializers}) +The named @var{method} was defined by using @code{cl-defmethod}, with +@var{specializers} as its specializers. +@item (define-type . @var{type}) +The type @var{type} was defined. @end table The value of @code{load-history} may have one element whose @sc{car} is diff --git a/doc/lispref/macros.texi b/doc/lispref/macros.texi index a90c6f1da6f..7f3b670e328 100644 --- a/doc/lispref/macros.texi +++ b/doc/lispref/macros.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998, 2001-2015 Free Software Foundation, +@c Copyright (C) 1990-1995, 1998, 2001-2016 Free Software Foundation, @c Inc. @c See the file elisp.texi for copying conditions. @node Macros diff --git a/doc/lispref/maps.texi b/doc/lispref/maps.texi index cc127264478..cf2c64844c1 100644 --- a/doc/lispref/maps.texi +++ b/doc/lispref/maps.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1993, 1999, 2001-2015 Free Software Foundation, +@c Copyright (C) 1990-1993, 1999, 2001-2016 Free Software Foundation, @c Inc. @c See the file elisp.texi for copying conditions. @node Standard Keymaps diff --git a/doc/lispref/markers.texi b/doc/lispref/markers.texi index 3eaba419034..bf185431384 100644 --- a/doc/lispref/markers.texi +++ b/doc/lispref/markers.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Markers @@ -659,6 +659,24 @@ more marks than this are pushed onto the @code{mark-ring}, @c There is also global-mark-ring-max, but this chapter explicitly @c does not talk about the global mark. +@cindex @code{delete-selection}, symbol property +@findex delete-selection-helper +@findex delete-selection-pre-hook +When Delete Selection mode (@pxref{Using Region, Delete Selection, , +emacs, The GNU Emacs Manual}) is enabled, commands that operate on the +active region (a.k.a.@: ``selection'') behave slightly differently. +This works by adding the function @code{delete-selection-pre-hook} to +the @code{pre-command-hook} (@pxref{Command Overview}). That function +calls @code{delete-selection-helper} to delete the selection as +appropriate for the command. If you want to adapt a command to Delete +Selection mode, put the @code{delete-selection} property on the +function's symbol (@pxref{Symbol Plists}); commands that don't have +this property on their symbol won't delete the selection. This +property can have one of several values to tailor the behavior to what +the command is supposed to do; see the doc strings of +@code{delete-selection-pre-hook} and @code{delete-selection-helper} +for the details. + @node The Region @section The Region @c The index entry must be just "region" to make it the first hit diff --git a/doc/lispref/minibuf.texi b/doc/lispref/minibuf.texi index 0b1a4a90ba9..bf9564627d6 100644 --- a/doc/lispref/minibuf.texi +++ b/doc/lispref/minibuf.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Minibuffers diff --git a/doc/lispref/modes.texi b/doc/lispref/modes.texi index 3b8550e13b9..2b621e4337b 100644 --- a/doc/lispref/modes.texi +++ b/doc/lispref/modes.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Modes diff --git a/doc/lispref/nonascii.texi b/doc/lispref/nonascii.texi index 3351b841f45..744351e384e 100644 --- a/doc/lispref/nonascii.texi +++ b/doc/lispref/nonascii.texi @@ -1,6 +1,6 @@ @c -*- mode: texinfo; coding: utf-8 -*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1998-1999, 2001-2015 Free Software Foundation, Inc. +@c Copyright (C) 1998-1999, 2001-2016 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Non-ASCII Characters @chapter Non-@acronym{ASCII} Characters diff --git a/doc/lispref/numbers.texi b/doc/lispref/numbers.texi index 54c8d3e5988..20d3c4290f3 100644 --- a/doc/lispref/numbers.texi +++ b/doc/lispref/numbers.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Numbers diff --git a/doc/lispref/objects.texi b/doc/lispref/objects.texi index 3cd4a38469c..324593068d5 100644 --- a/doc/lispref/objects.texi +++ b/doc/lispref/objects.texi @@ -1,6 +1,6 @@ @c -*- mode: texinfo; coding: utf-8 -*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Lisp Data Types diff --git a/doc/lispref/os.texi b/doc/lispref/os.texi index 92e3ee2b33c..8e3720eb947 100644 --- a/doc/lispref/os.texi +++ b/doc/lispref/os.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node System Interface @@ -2085,6 +2085,8 @@ than optimal. To fix the problem, set @code{baud-rate}. @defun send-string-to-terminal string &optional terminal This function sends @var{string} to @var{terminal} without alteration. Control characters in @var{string} have terminal-dependent effects. +(If you need to display non-ASCII text on the terminal, encode it +using one of the functions described in @ref{Explicit Encoding}.) This function operates only on text terminals. @var{terminal} may be a terminal object, a frame, or @code{nil} for the selected frame's terminal. In batch mode, @var{string} is sent to @code{stdout} when @@ -2252,13 +2254,21 @@ loads the library named @var{file}, or @samp{-f @var{function}}, which calls @var{function} with no arguments, or @samp{--eval @var{form}}. Any Lisp program output that would normally go to the echo area, -either using @code{message}, or using @code{prin1}, etc., with @code{t} -as the stream, goes instead to Emacs's standard error descriptor when -in batch mode. Similarly, input that would normally come from the -minibuffer is read from the standard input descriptor. -Thus, Emacs behaves much like a noninteractive -application program. (The echo area output that Emacs itself normally -generates, such as command echoing, is suppressed entirely.) +either using @code{message}, or using @code{prin1}, etc., with +@code{t} as the stream, goes instead to Emacs's standard descriptors +when in batch mode: @code{message} writes to the standard error +descriptor, while @code{prin1} and other print functions write to the +standard output. Similarly, input that would normally come from the +minibuffer is read from the standard input descriptor. Thus, Emacs +behaves much like a noninteractive application program. (The echo +area output that Emacs itself normally generates, such as command +echoing, is suppressed entirely.) + +Non-ASCII text written to the standard output or error descriptors is +by default encoded using @code{locale-coding-system} (@pxref{Locales}) +if it is non-@code{nil}; this can be overridden by binding +@code{coding-system-for-write} to a coding system of you choice +(@pxref{Explicit Encoding}). @defvar noninteractive This variable is non-@code{nil} when Emacs is running in batch mode. diff --git a/doc/lispref/package.texi b/doc/lispref/package.texi index 21a8ddd5d03..67fd45b9e35 100644 --- a/doc/lispref/package.texi +++ b/doc/lispref/package.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 2010-2015 Free Software Foundation, Inc. +@c Copyright (C) 2010-2016 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Packaging @chapter Preparing Lisp code for distribution diff --git a/doc/lispref/positions.texi b/doc/lispref/positions.texi index 9daf5cef059..b88e76e8230 100644 --- a/doc/lispref/positions.texi +++ b/doc/lispref/positions.texi @@ -1,6 +1,6 @@ @c -*- mode: texinfo; coding: utf-8 -*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-2015 Free Software Foundation, Inc. +@c Copyright (C) 1990-1995, 1998-2016 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Positions @chapter Positions diff --git a/doc/lispref/processes.texi b/doc/lispref/processes.texi index 41255e7e8d0..2a4bd8a067d 100644 --- a/doc/lispref/processes.texi +++ b/doc/lispref/processes.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Processes diff --git a/doc/lispref/searching.texi b/doc/lispref/searching.texi index adaf43159af..5ff7ef1cf66 100644 --- a/doc/lispref/searching.texi +++ b/doc/lispref/searching.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Searching and Matching diff --git a/doc/lispref/sequences.texi b/doc/lispref/sequences.texi index 66d88e49411..9869fe4c510 100644 --- a/doc/lispref/sequences.texi +++ b/doc/lispref/sequences.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Sequences Arrays Vectors diff --git a/doc/lispref/streams.texi b/doc/lispref/streams.texi index 025b0e95c4e..80c194b1bdd 100644 --- a/doc/lispref/streams.texi +++ b/doc/lispref/streams.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1994, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1994, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Read and Print diff --git a/doc/lispref/strings.texi b/doc/lispref/strings.texi index 8aa4539bd78..95723ca4487 100644 --- a/doc/lispref/strings.texi +++ b/doc/lispref/strings.texi @@ -1,6 +1,6 @@ @c -*- mode: texinfo; coding: utf-8 -*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Strings and Characters diff --git a/doc/lispref/symbols.texi b/doc/lispref/symbols.texi index 2605a3e7b5a..c99f993e5da 100644 --- a/doc/lispref/symbols.texi +++ b/doc/lispref/symbols.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Symbols diff --git a/doc/lispref/syntax.texi b/doc/lispref/syntax.texi index 831ebd12f55..19782d0fbde 100644 --- a/doc/lispref/syntax.texi +++ b/doc/lispref/syntax.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Syntax Tables @@ -787,17 +787,6 @@ used on hooks such as @code{before-change-functions} (@pxref{Change Hooks}). @end defun - Major modes can make @code{syntax-ppss} run faster by specifying -where it needs to start parsing. - -@defvar syntax-begin-function -If this is non-@code{nil}, it should be a function that moves to an -earlier buffer position where the parser state is equivalent to -@code{nil}---in other words, a position outside of any comment, -string, or parenthesis. @code{syntax-ppss} uses it to further -optimize its computations, when the cache gives no help. -@end defvar - @node Parser State @subsection Parser State @cindex parser state diff --git a/doc/lispref/text.texi b/doc/lispref/text.texi index f3679a88f74..5d9f192b111 100644 --- a/doc/lispref/text.texi +++ b/doc/lispref/text.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-2015 Free Software Foundation, Inc. +@c Copyright (C) 1990-1995, 1998-2016 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Text @chapter Text diff --git a/doc/lispref/tips.texi b/doc/lispref/tips.texi index ffce920bf4e..8e92bb90120 100644 --- a/doc/lispref/tips.texi +++ b/doc/lispref/tips.texi @@ -1,6 +1,6 @@ @c -*- mode: texinfo; coding: utf-8 -*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1993, 1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1993, 1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Tips @@ -930,7 +930,7 @@ explains these conventions, starting with an example: @group ;;; foo.el --- Support for the Foo programming language -;; Copyright (C) 2010-2015 Your Name +;; Copyright (C) 2010-2016 Your Name @end group ;; Author: Your Name <yourname@@example.com> diff --git a/doc/lispref/two-volume-cross-refs.txt b/doc/lispref/two-volume-cross-refs.txt index 89336e1d43b..658ae153b44 100644 --- a/doc/lispref/two-volume-cross-refs.txt +++ b/doc/lispref/two-volume-cross-refs.txt @@ -1,4 +1,4 @@ -Copyright (C) 2001-2015 Free Software Foundation, Inc. +Copyright (C) 2001-2016 Free Software Foundation, Inc. See end for copying conditions. Two Volume Cross References diff --git a/doc/lispref/two-volume.make b/doc/lispref/two-volume.make index bdcdb2f4fdd..5023f79b4e7 100644 --- a/doc/lispref/two-volume.make +++ b/doc/lispref/two-volume.make @@ -1,4 +1,4 @@ -# Copyright (C) 2007-2015 Free Software Foundation, Inc. +# Copyright (C) 2007-2016 Free Software Foundation, Inc. # See end for copying conditions. # although it would be nice to use tex rather than pdftex to avoid diff --git a/doc/lispref/variables.texi b/doc/lispref/variables.texi index 5a2cae0f678..c48af9a40c0 100644 --- a/doc/lispref/variables.texi +++ b/doc/lispref/variables.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-2015 Free Software Foundation, Inc. +@c Copyright (C) 1990-1995, 1998-2016 Free Software Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Variables @chapter Variables diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi index e45201b0570..7186791f94a 100644 --- a/doc/lispref/windows.texi +++ b/doc/lispref/windows.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- @c This is part of the GNU Emacs Lisp Reference Manual. -@c Copyright (C) 1990-1995, 1998-1999, 2001-2015 Free Software +@c Copyright (C) 1990-1995, 1998-1999, 2001-2016 Free Software @c Foundation, Inc. @c See the file elisp.texi for copying conditions. @node Windows @@ -3706,6 +3706,11 @@ The return value is the total amount of leftward horizontal scrolling in effect after the change---just like the value returned by @code{window-hscroll} (below). +Note that text in paragraphs whose base direction is right-to-left +(@pxref{Bidirectional Display}) moves in the opposite direction: e.g., +it moves to the right when @code{scroll-left} is invoked with a +positive value of @var{count}. + Once you scroll a window as far right as it can go, back to its normal position where the total leftward scrolling is zero, attempts to scroll any farther right have no effect. @@ -3727,8 +3732,9 @@ of scrolling, this works just like @code{scroll-left}. @defun window-hscroll &optional window This function returns the total leftward horizontal scrolling of @var{window}---the number of columns by which the text in @var{window} -is scrolled left past the left margin. The default for -@var{window} is the selected window. +is scrolled left past the left margin. (In right-to-left paragraphs, +the value is the total amount of the rightward scrolling instead.) +The default for @var{window} is the selected window. The return value is never negative. It is zero when no horizontal scrolling has been done in @var{window} (which is usually the case). @@ -3753,9 +3759,10 @@ scrolling has been done in @var{window} (which is usually the case). @defun set-window-hscroll window columns This function sets horizontal scrolling of @var{window}. The value of @var{columns} specifies the amount of scrolling, in terms of columns -from the left margin. The argument @var{columns} should be zero or -positive; if not, it is taken as zero. Fractional values of -@var{columns} are not supported at present. +from the left margin (right margin in right-to-left paragraphs). The +argument @var{columns} should be zero or positive; if not, it is taken +as zero. Fractional values of @var{columns} are not supported at +present. Note that @code{set-window-hscroll} may appear not to work if you test it by evaluating a call with @kbd{M-:} in a simple way. What happens diff --git a/doc/man/ChangeLog.1 b/doc/man/ChangeLog.1 index 205e9b900cc..d5a277111c3 100644 --- a/doc/man/ChangeLog.1 +++ b/doc/man/ChangeLog.1 @@ -176,7 +176,7 @@ ;; coding: utf-8 ;; End: - Copyright (C) 2007-2015 Free Software Foundation, Inc. + Copyright (C) 2007-2016 Free Software Foundation, Inc. This file is part of GNU Emacs. diff --git a/doc/man/ebrowse.1 b/doc/man/ebrowse.1 index 40c82a46482..efbb95b2f7d 100644 --- a/doc/man/ebrowse.1 +++ b/doc/man/ebrowse.1 @@ -85,7 +85,7 @@ was written by Gerd Moellmann. Copyright .if t \(co .if n (C) -2008-2015 Free Software Foundation, Inc. +2008-2016 Free Software Foundation, Inc. .PP Permission is granted to make and distribute verbatim copies of this document provided the copyright notice and this permission notice are diff --git a/doc/man/emacs.1.in b/doc/man/emacs.1.in index 98322aac810..3b1566f6caa 100644 --- a/doc/man/emacs.1.in +++ b/doc/man/emacs.1.in @@ -651,7 +651,7 @@ For detailed credits and acknowledgments, see the GNU Emacs manual. Copyright .if t \(co .if n (C) -1995, 1999-2015 Free Software Foundation, Inc. +1995, 1999-2016 Free Software Foundation, Inc. .PP Permission is granted to make and distribute verbatim copies of this document provided the copyright notice and this permission notice are diff --git a/doc/man/etags.1 b/doc/man/etags.1 index 7cb6b6cb6ab..7d5d374f99a 100644 --- a/doc/man/etags.1 +++ b/doc/man/etags.1 @@ -278,7 +278,7 @@ Stallman. Copyright .if t \(co .if n (C) -1992, 1999, 2001-2015 Free Software Foundation, Inc. +1992, 1999, 2001-2016 Free Software Foundation, Inc. .PP Permission is granted to make and distribute verbatim copies of this document provided the copyright notice and this permission notice are diff --git a/doc/misc/ChangeLog.1 b/doc/misc/ChangeLog.1 index 2fd0d2c3eba..eb16d4ac565 100644 --- a/doc/misc/ChangeLog.1 +++ b/doc/misc/ChangeLog.1 @@ -12116,7 +12116,7 @@ ;; coding: utf-8 ;; End: - Copyright (C) 1993-1999, 2001-2015 Free Software Foundation, Inc. + Copyright (C) 1993-1999, 2001-2016 Free Software Foundation, Inc. This file is part of GNU Emacs. diff --git a/doc/misc/Makefile.in b/doc/misc/Makefile.in index aa35002e85e..4dffeafb1d2 100644 --- a/doc/misc/Makefile.in +++ b/doc/misc/Makefile.in @@ -1,6 +1,6 @@ ### @configure_input@ -# Copyright (C) 1994, 1996-2015 Free Software Foundation, Inc. +# Copyright (C) 1994, 1996-2016 Free Software Foundation, Inc. # This file is part of GNU Emacs. diff --git a/doc/misc/ada-mode.texi b/doc/misc/ada-mode.texi index e84ef6eb512..4fc0c053dbc 100644 --- a/doc/misc/ada-mode.texi +++ b/doc/misc/ada-mode.texi @@ -4,7 +4,7 @@ @include docstyle.texi @copying -Copyright @copyright{} 1999--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1999--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/auth.texi b/doc/misc/auth.texi index 082dc1dacdf..fa4be248f37 100644 --- a/doc/misc/auth.texi +++ b/doc/misc/auth.texi @@ -11,7 +11,7 @@ @copying This file describes the Emacs auth-source library. -Copyright @copyright{} 2008--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2008--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/autotype.texi b/doc/misc/autotype.texi index f7c1fa1a9e0..839782a3b51 100644 --- a/doc/misc/autotype.texi +++ b/doc/misc/autotype.texi @@ -11,7 +11,7 @@ @c @cindex autotypist @copying -Copyright @copyright{} 1994--1995, 1999, 2001--2015 +Copyright @copyright{} 1994--1995, 1999, 2001--2016 Free Software Foundation, Inc. @quotation diff --git a/doc/misc/bovine.texi b/doc/misc/bovine.texi index ec11aa896ff..11dbfffcec9 100644 --- a/doc/misc/bovine.texi +++ b/doc/misc/bovine.texi @@ -24,7 +24,7 @@ @c %**end of header @copying -Copyright @copyright{} 1999--2004, 2012--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1999--2004, 2012--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/calc.texi b/doc/misc/calc.texi index 02f94469c71..b4c69ba190e 100644 --- a/doc/misc/calc.texi +++ b/doc/misc/calc.texi @@ -95,7 +95,7 @@ This file documents Calc, the GNU Emacs calculator, included with GNU Emacs @value{EMACSVER}. @end ifnotinfo -Copyright @copyright{} 1990--1991, 2001--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1990--1991, 2001--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/cc-mode.texi b/doc/misc/cc-mode.texi index 7415da5d5bd..bc8d24fd992 100644 --- a/doc/misc/cc-mode.texi +++ b/doc/misc/cc-mode.texi @@ -157,7 +157,7 @@ CC Mode @copying This manual is for CC Mode in Emacs. -Copyright @copyright{} 1995--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1995--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/cl.texi b/doc/misc/cl.texi index 0ab2477b86d..572124d452d 100644 --- a/doc/misc/cl.texi +++ b/doc/misc/cl.texi @@ -7,7 +7,7 @@ @copying This file documents the GNU Emacs Common Lisp emulation package. -Copyright @copyright{} 1993, 2001--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1993, 2001--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/dbus.texi b/doc/misc/dbus.texi index 5dd8bf21c13..c5901aff104 100644 --- a/doc/misc/dbus.texi +++ b/doc/misc/dbus.texi @@ -10,7 +10,7 @@ @syncodeindex fn cp @copying -Copyright @copyright{} 2007--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2007--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/dired-x.texi b/doc/misc/dired-x.texi index e6370f3d80b..474dd0a5208 100644 --- a/doc/misc/dired-x.texi +++ b/doc/misc/dired-x.texi @@ -20,7 +20,7 @@ @comment %**end of header (This is for running Texinfo on a region.) @copying -Copyright @copyright{} 1994--1995, 1999, 2001--2015 +Copyright @copyright{} 1994--1995, 1999, 2001--2016 Free Software Foundation, Inc. @quotation diff --git a/doc/misc/ebrowse.texi b/doc/misc/ebrowse.texi index 74183a4d6a8..28fa42b33ef 100644 --- a/doc/misc/ebrowse.texi +++ b/doc/misc/ebrowse.texi @@ -11,7 +11,7 @@ @copying This file documents Ebrowse, a C++ class browser for GNU Emacs. -Copyright @copyright{} 2000--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2000--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/ede.texi b/doc/misc/ede.texi index 7a824acfed5..839b5acd49d 100644 --- a/doc/misc/ede.texi +++ b/doc/misc/ede.texi @@ -6,7 +6,7 @@ @copying This file describes EDE, the Emacs Development Environment. -Copyright @copyright{} 1998--2001, 2004--2005, 2008--2015 +Copyright @copyright{} 1998--2001, 2004--2005, 2008--2016 Free Software Foundation, Inc. @quotation diff --git a/doc/misc/ediff.texi b/doc/misc/ediff.texi index f7876a336f6..376aaeea46e 100644 --- a/doc/misc/ediff.texi +++ b/doc/misc/ediff.texi @@ -26,7 +26,7 @@ This file documents Ediff, a comprehensive visual interface to Unix diff and patch utilities. -Copyright @copyright{} 1995--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1995--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/edt.texi b/doc/misc/edt.texi index 91f36e6c538..4f3fdaeaa1f 100644 --- a/doc/misc/edt.texi +++ b/doc/misc/edt.texi @@ -6,7 +6,7 @@ @copying This file documents the EDT emulation package for Emacs. -Copyright @copyright{} 1986, 1992, 1994--1995, 1999--2015 +Copyright @copyright{} 1986, 1992, 1994--1995, 1999--2016 Free Software Foundation, Inc. @quotation diff --git a/doc/misc/efaq-w32.texi b/doc/misc/efaq-w32.texi index 28cf68048ae..fe65da6d612 100644 --- a/doc/misc/efaq-w32.texi +++ b/doc/misc/efaq-w32.texi @@ -15,7 +15,7 @@ Answers to Frequently asked Questions about using Emacs on Microsoft Windows. @include emacsver.texi @copying -Copyright @copyright{} 2008, 2010-2015 Free Software Foundation, Inc. +Copyright @copyright{} 2008, 2010-2016 Free Software Foundation, Inc. @quotation This list of frequently asked questions about GNU Emacs on MS Windows diff --git a/doc/misc/efaq.texi b/doc/misc/efaq.texi index 6557f4d017b..5008db31f25 100644 --- a/doc/misc/efaq.texi +++ b/doc/misc/efaq.texi @@ -12,7 +12,7 @@ @c appreciate a notice if you do). @copying -Copyright @copyright{} 2001--2015 Free Software Foundation, Inc.@* +Copyright @copyright{} 2001--2016 Free Software Foundation, Inc.@* Copyright @copyright{} 1994, 1995, 1996, 1997, 1998, 1999, 2000 Reuven M. Lerner@* Copyright @copyright{} 1992, 1993 Steven Byrnes@* @@ -3308,10 +3308,10 @@ available, and then Emacs can automatically download and install the packages that you select. @xref{Packages,,, emacs, The GNU Emacs Manual}. There are other, non-GNU, Emacs Lisp package servers, including: -@uref{http://melpa.milkbox.net, MELPA}; and -@uref{http://marmalade-repo.org, Marmalade}. To use additional -package servers, customize the @code{package-archives} variable. -Be aware that installing a package can run arbitrary code, so only add +@uref{http://melpa.org/, MELPA}; and +@uref{https://marmalade-repo.org/, Marmalade}. To use additional +package servers, customize the @code{package-archives} variable. Be +aware that installing a package can run arbitrary code, so only add sources that you trust. The @uref{https://lists.gnu.org/mailman/listinfo/gnu-emacs-sources, diff --git a/doc/misc/eieio.texi b/doc/misc/eieio.texi index fb4e1470016..31930020e38 100644 --- a/doc/misc/eieio.texi +++ b/doc/misc/eieio.texi @@ -12,7 +12,7 @@ @copying This manual documents EIEIO, an object framework for Emacs Lisp. -Copyright @copyright{} 2007--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2007--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/emacs-gnutls.texi b/doc/misc/emacs-gnutls.texi index d951e2fde32..1a850c68235 100644 --- a/doc/misc/emacs-gnutls.texi +++ b/doc/misc/emacs-gnutls.texi @@ -9,7 +9,7 @@ @copying This file describes the Emacs GnuTLS integration. -Copyright @copyright{} 2012--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2012--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/emacs-mime.texi b/doc/misc/emacs-mime.texi index 3b3df0fa879..b252b116a1c 100644 --- a/doc/misc/emacs-mime.texi +++ b/doc/misc/emacs-mime.texi @@ -12,7 +12,7 @@ @copying This file documents the Emacs MIME interface functionality. -Copyright @copyright{} 1998--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1998--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/epa.texi b/doc/misc/epa.texi index 3c9aa8ac5e2..527b44fb180 100644 --- a/doc/misc/epa.texi +++ b/doc/misc/epa.texi @@ -10,7 +10,7 @@ @copying This file describes EasyPG Assistant @value{VERSION}. -Copyright @copyright{} 2007--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2007--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/erc.texi b/doc/misc/erc.texi index 56aea0c3184..d9b646f7378 100644 --- a/doc/misc/erc.texi +++ b/doc/misc/erc.texi @@ -10,7 +10,7 @@ @copying This manual is for ERC as distributed with Emacs @value{EMACSVER}. -Copyright @copyright{} 2005--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2005--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/ert.texi b/doc/misc/ert.texi index c2363237b97..144dfd93719 100644 --- a/doc/misc/ert.texi +++ b/doc/misc/ert.texi @@ -11,7 +11,7 @@ @end direntry @copying -Copyright @copyright{} 2008, 2010--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2008, 2010--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/eshell.texi b/doc/misc/eshell.texi index 60a1af0678d..f90c7d3e8fb 100644 --- a/doc/misc/eshell.texi +++ b/doc/misc/eshell.texi @@ -10,7 +10,7 @@ @copying This manual is for Eshell, the Emacs shell. -Copyright @copyright{} 1999--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1999--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document @@ -84,7 +84,9 @@ such as @command{bash}, @command{zsh}, @command{rc}, or * Concept Index:: * Function and Variable Index:: * Command Index:: +@ignore * Key Index:: +@end ignore @end menu @node Introduction @@ -670,6 +672,12 @@ page long. If that occurs to you, search for configuration options for calling @samp{less} without the @samp{-F} option. For Git, you can do that using @samp{git config --global core.pager 'less -+F'}. +@vindex eshell-destroy-buffer-when-process-dies +If you want the buffers created by visual programs killed when the +program exits, customize the variable +@code{eshell-destroy-buffer-when-process-dies} to a non-@code{nil} +value; the default is @code{nil}. + @section Redirection Redirection is mostly the same in Eshell as it is in other command shells. The output redirection operators @code{>} and @code{>>} as @@ -682,6 +690,8 @@ The buffer redirection operator, @code{>>>}, expects a buffer object on the right-hand side, into which it inserts the output of the left-hand side. e.g., @samp{echo hello >>> #<buffer *scratch*>} inserts the string @code{"hello"} into the @file{*scratch*} buffer. +The convenience shorthand variant @samp{#<@var{buffer-name}>}, as in +@samp{#<*scratch*>}, is also accepted. @code{eshell-virtual-targets} is a list of mappings of virtual device names to functions. Eshell comes with two virtual devices: @@ -1241,8 +1251,13 @@ Since it keeps the cursor up where the command was invoked. @printindex cm +@c There are no @kindex entries in this manual; avoid generating an +@c empty menu. +@ignore @node Key Index @unnumbered Key Index @printindex ky +@end ignore + @bye diff --git a/doc/misc/eudc.texi b/doc/misc/eudc.texi index 8d59e97b44e..da63975c2e5 100644 --- a/doc/misc/eudc.texi +++ b/doc/misc/eudc.texi @@ -14,7 +14,7 @@ This file documents EUDC version 1.40.0. EUDC is the Emacs Unified Directory Client, a common interface to directory servers and contact information. -Copyright @copyright{} 1998, 2000--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1998, 2000--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/eww.texi b/doc/misc/eww.texi index 15cc867dc7f..14f0a8d0ea2 100644 --- a/doc/misc/eww.texi +++ b/doc/misc/eww.texi @@ -8,7 +8,7 @@ @copying This file documents the GNU Emacs Web Wowser (EWW) package. -Copyright @copyright{} 2014--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2014--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/flymake.texi b/doc/misc/flymake.texi index 6c924cf9547..99633b60c70 100644 --- a/doc/misc/flymake.texi +++ b/doc/misc/flymake.texi @@ -12,7 +12,7 @@ This manual is for GNU Flymake (version @value{VERSION}, @value{UPDATED}), which is a universal on-the-fly syntax checker for GNU Emacs. -Copyright @copyright{} 2004--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2004--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/forms.texi b/doc/misc/forms.texi index 487cebd6cc2..13654ed5932 100644 --- a/doc/misc/forms.texi +++ b/doc/misc/forms.texi @@ -19,7 +19,7 @@ @copying This file documents Forms mode, a form-editing major mode for GNU Emacs. -Copyright @copyright{} 1989, 1997, 2001--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1989, 1997, 2001--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/gnus-coding.texi b/doc/misc/gnus-coding.texi index a3be0edb965..3b2c4afe55b 100644 --- a/doc/misc/gnus-coding.texi +++ b/doc/misc/gnus-coding.texi @@ -8,7 +8,7 @@ @syncodeindex pg cp @copying -Copyright @copyright{} 2004--2005, 2007--2015 Free Software +Copyright @copyright{} 2004--2005, 2007--2016 Free Software Foundation, Inc. @quotation diff --git a/doc/misc/gnus-faq.texi b/doc/misc/gnus-faq.texi index 26b9210b0dd..90bb10f6c35 100644 --- a/doc/misc/gnus-faq.texi +++ b/doc/misc/gnus-faq.texi @@ -1,7 +1,7 @@ @c \input texinfo @c -*-texinfo-*- @c Uncomment 1st line before texing this file alone. @c %**start of header -@c Copyright (C) 1995, 2001-2015 Free Software Foundation, Inc. +@c Copyright (C) 1995, 2001-2016 Free Software Foundation, Inc. @c @c @setfilename gnus-faq.info @c @settitle Frequently Asked Questions diff --git a/doc/misc/gnus-news.el b/doc/misc/gnus-news.el index ba8a4631261..5ccd3f44be5 100644 --- a/doc/misc/gnus-news.el +++ b/doc/misc/gnus-news.el @@ -1,5 +1,5 @@ ;;; gnus-news.el --- a hack to create GNUS-NEWS from texinfo source -;; Copyright (C) 2004-2015 Free Software Foundation, Inc. +;; Copyright (C) 2004-2016 Free Software Foundation, Inc. ;; Author: Reiner Steib <Reiner.Steib@gmx.de> ;; Keywords: tools @@ -26,7 +26,7 @@ (defvar gnus-news-header-disclaimer "GNUS NEWS -- history of user-visible changes. -Copyright (C) 1999-2015 Free Software Foundation, Inc. +Copyright (C) 1999-2016 Free Software Foundation, Inc. See the end of the file for license conditions. Please send Gnus bug reports to bugs@gnus.org. diff --git a/doc/misc/gnus-news.texi b/doc/misc/gnus-news.texi index ef6573fc73e..d1e83a79038 100644 --- a/doc/misc/gnus-news.texi +++ b/doc/misc/gnus-news.texi @@ -1,6 +1,6 @@ @c -*-texinfo-*- -@c Copyright (C) 2004-2015 Free Software Foundation, Inc. +@c Copyright (C) 2004-2016 Free Software Foundation, Inc. @c Permission is granted to anyone to make or distribute verbatim copies @c of this document as received, in any medium, provided that the diff --git a/doc/misc/gnus.texi b/doc/misc/gnus.texi index 9093fa24f3d..ab96684eb62 100644 --- a/doc/misc/gnus.texi +++ b/doc/misc/gnus.texi @@ -10,7 +10,7 @@ @syncodeindex pg cp @copying -Copyright @copyright{} 1995--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1995--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/htmlfontify.texi b/doc/misc/htmlfontify.texi index 1b0afdd2e8d..20cde7124d1 100644 --- a/doc/misc/htmlfontify.texi +++ b/doc/misc/htmlfontify.texi @@ -10,7 +10,7 @@ This manual documents Htmlfontify, a source code -> crosslinked + formatted + syntax colorized html transformer. -Copyright @copyright{} 2002-2003, 2013-2015 Free Software Foundation, +Copyright @copyright{} 2002-2003, 2013-2016 Free Software Foundation, Inc. @quotation diff --git a/doc/misc/idlwave.texi b/doc/misc/idlwave.texi index 7fe8f51d986..64b1585c5ce 100644 --- a/doc/misc/idlwave.texi +++ b/doc/misc/idlwave.texi @@ -23,7 +23,7 @@ Emacs, and interacting with an IDL shell run as a subprocess. This is edition @value{EDITION} of the IDLWAVE User Manual for IDLWAVE @value{VERSION}. -Copyright @copyright{} 1999--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1999--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/ido.texi b/doc/misc/ido.texi index e06d248becc..0a56bc3f4e9 100644 --- a/doc/misc/ido.texi +++ b/doc/misc/ido.texi @@ -7,7 +7,7 @@ @copying This file documents the Ido package for GNU Emacs. -Copyright @copyright{} 2013-2015 Free Software Foundation, Inc. +Copyright @copyright{} 2013-2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/info.texi b/doc/misc/info.texi index 1439d30ccee..135c443c075 100644 --- a/doc/misc/info.texi +++ b/doc/misc/info.texi @@ -15,7 +15,7 @@ This file describes how to use Info, the menu-driven GNU documentation system. -Copyright @copyright{} 1989, 1992, 1996--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1989, 1992, 1996--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/mairix-el.texi b/doc/misc/mairix-el.texi index ef253a0138c..8deead52dc6 100644 --- a/doc/misc/mairix-el.texi +++ b/doc/misc/mairix-el.texi @@ -5,7 +5,7 @@ @include docstyle.texi @copying -Copyright @copyright{} 2008--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2008--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/message.texi b/doc/misc/message.texi index d63f7e6a8f6..dbc77592a03 100644 --- a/doc/misc/message.texi +++ b/doc/misc/message.texi @@ -11,7 +11,7 @@ @copying This file documents Message, the Emacs message composition mode. -Copyright @copyright{} 1996--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1996--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/mh-e.texi b/doc/misc/mh-e.texi index 54f759118fa..d1fd8f76118 100644 --- a/doc/misc/mh-e.texi +++ b/doc/misc/mh-e.texi @@ -25,7 +25,7 @@ This is version @value{VERSION}@value{EDITION} of @cite{The MH-E Manual}, last updated @value{UPDATED}. -Copyright @copyright{} 1995, 2001--2003, 2005--2015 Free Software +Copyright @copyright{} 1995, 2001--2003, 2005--2016 Free Software Foundation, Inc. @c This dual license has been agreed upon by the FSF. diff --git a/doc/misc/newsticker.texi b/doc/misc/newsticker.texi index 9f7b6df1ab5..f7a76207ed5 100644 --- a/doc/misc/newsticker.texi +++ b/doc/misc/newsticker.texi @@ -15,7 +15,7 @@ This manual documents Newsticker, a feed reader for Emacs. It corresponds to Emacs version @value{EMACSVER}. @noindent -Copyright @copyright{} 2004--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2004--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/nxml-mode.texi b/doc/misc/nxml-mode.texi index e87e6a05619..62bd6bde975 100644 --- a/doc/misc/nxml-mode.texi +++ b/doc/misc/nxml-mode.texi @@ -9,7 +9,7 @@ This manual documents nXML mode, an Emacs major mode for editing XML with RELAX NG support. -Copyright @copyright{} 2007--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2007--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/octave-mode.texi b/doc/misc/octave-mode.texi index 34499c2d58c..65cc6a431eb 100644 --- a/doc/misc/octave-mode.texi +++ b/doc/misc/octave-mode.texi @@ -6,7 +6,7 @@ @c %**end of header @copying -Copyright @copyright{} 1996--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1996--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/org.texi b/doc/misc/org.texi index 71572f72d7a..ec676fca1d4 100644 --- a/doc/misc/org.texi +++ b/doc/misc/org.texi @@ -259,7 +259,7 @@ @copying This manual is for Org version @value{VERSION}. -Copyright @copyright{} 2004--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2004--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document @@ -12955,7 +12955,7 @@ Copyright information is printed on the back of the title page. This is a short example of a complete Texinfo file, version 1.0. - Copyright \copy 2015 Free Software Foundation, Inc. + Copyright \copy 2016 Free Software Foundation, Inc. @end example @subsubheading The Top node diff --git a/doc/misc/pcl-cvs.texi b/doc/misc/pcl-cvs.texi index dd2ba388348..237ba5c520d 100644 --- a/doc/misc/pcl-cvs.texi +++ b/doc/misc/pcl-cvs.texi @@ -7,7 +7,7 @@ @c %**end of header @copying -Copyright @copyright{} 1991--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1991--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/pgg.texi b/doc/misc/pgg.texi index 49a2cfd1851..3b31e4b0e72 100644 --- a/doc/misc/pgg.texi +++ b/doc/misc/pgg.texi @@ -12,7 +12,7 @@ This file describes PGG @value{VERSION}, an Emacs interface to various PGP implementations. -Copyright @copyright{} 2001, 2003--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2001, 2003--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/rcirc.texi b/doc/misc/rcirc.texi index a707ba5f03e..0098e2049d8 100644 --- a/doc/misc/rcirc.texi +++ b/doc/misc/rcirc.texi @@ -6,7 +6,7 @@ @c %**end of header @copying -Copyright @copyright{} 2006--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2006--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/reftex.texi b/doc/misc/reftex.texi index 01d5ad7b022..3dc3ed47b24 100644 --- a/doc/misc/reftex.texi +++ b/doc/misc/reftex.texi @@ -46,7 +46,7 @@ This manual documents @RefTeX{} (version @value{VERSION}), a package to do labels, references, citations and indices for LaTeX documents with Emacs. -Copyright @copyright{} 1997--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1997--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/remember.texi b/doc/misc/remember.texi index d5a03b63f22..965962c0069 100644 --- a/doc/misc/remember.texi +++ b/doc/misc/remember.texi @@ -9,7 +9,7 @@ @copying This manual is for Remember Mode, version 2.0 -Copyright @copyright{} 2001, 2004--2005, 2007--2015 +Copyright @copyright{} 2001, 2004--2005, 2007--2016 Free Software Foundation, Inc. @quotation diff --git a/doc/misc/sasl.texi b/doc/misc/sasl.texi index 86bcd1a0a6a..d012e808cac 100644 --- a/doc/misc/sasl.texi +++ b/doc/misc/sasl.texi @@ -11,7 +11,7 @@ @copying This file describes the Emacs SASL library, version @value{VERSION}. -Copyright @copyright{} 2000, 2004--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2000, 2004--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/sc.texi b/doc/misc/sc.texi index ba366722758..1f7b73dd73b 100644 --- a/doc/misc/sc.texi +++ b/doc/misc/sc.texi @@ -15,7 +15,7 @@ This document describes Supercite, an Emacs package for citing and attributing replies to mail and news messages. -Copyright @copyright{} 1993, 2001--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1993, 2001--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/sem-user.texi b/doc/misc/sem-user.texi index 2d9eac2dd72..f11e0b83fa1 100644 --- a/doc/misc/sem-user.texi +++ b/doc/misc/sem-user.texi @@ -1,5 +1,5 @@ @c This is part of the Semantic manual. -@c Copyright (C) 1999-2005, 2007, 2009-2015 Free Software Foundation, +@c Copyright (C) 1999-2005, 2007, 2009-2016 Free Software Foundation, @c Inc. @c See file semantic.texi for copying conditions. diff --git a/doc/misc/semantic.texi b/doc/misc/semantic.texi index 71b81e76f9f..2023f24e6fa 100644 --- a/doc/misc/semantic.texi +++ b/doc/misc/semantic.texi @@ -25,7 +25,7 @@ @copying This manual documents the Semantic library and utilities. -Copyright @copyright{} 1999--2005, 2007, 2009--2015 Free Software +Copyright @copyright{} 1999--2005, 2007, 2009--2016 Free Software Foundation, Inc. @quotation diff --git a/doc/misc/ses.texi b/doc/misc/ses.texi index fe6d5ab5422..8b0bb82f174 100644 --- a/doc/misc/ses.texi +++ b/doc/misc/ses.texi @@ -12,7 +12,7 @@ @copying This file documents @acronym{SES}: the Simple Emacs Spreadsheet. -Copyright @copyright{} 2002--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2002--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/sieve.texi b/doc/misc/sieve.texi index e9cd9acb881..5bc38d48938 100644 --- a/doc/misc/sieve.texi +++ b/doc/misc/sieve.texi @@ -12,7 +12,7 @@ @copying This file documents the Emacs Sieve package, for server-side mail filtering. -Copyright @copyright{} 2001--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2001--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/smtpmail.texi b/doc/misc/smtpmail.texi index 2d4e7f94b16..26473311678 100644 --- a/doc/misc/smtpmail.texi +++ b/doc/misc/smtpmail.texi @@ -4,7 +4,7 @@ @include docstyle.texi @syncodeindex vr fn @copying -Copyright @copyright{} 2003--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2003--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/speedbar.texi b/doc/misc/speedbar.texi index 6ad369c8609..377e412bb30 100644 --- a/doc/misc/speedbar.texi +++ b/doc/misc/speedbar.texi @@ -5,7 +5,7 @@ @syncodeindex fn cp @copying -Copyright @copyright{} 1999--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1999--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/srecode.texi b/doc/misc/srecode.texi index 98fab5ceafa..9a5d717dfe6 100644 --- a/doc/misc/srecode.texi +++ b/doc/misc/srecode.texi @@ -16,7 +16,7 @@ @c %**end of header @copying -Copyright @copyright{} 2007--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2007--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/todo-mode.texi b/doc/misc/todo-mode.texi index 69656da8880..d68af9a23a0 100644 --- a/doc/misc/todo-mode.texi +++ b/doc/misc/todo-mode.texi @@ -9,7 +9,7 @@ @c %**end of header @copying -Copyright @copyright{} 2013-2015 Free Software Foundation, Inc. +Copyright @copyright{} 2013-2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/tramp.texi b/doc/misc/tramp.texi index bd7d921cefe..14afb4ad353 100644 --- a/doc/misc/tramp.texi +++ b/doc/misc/tramp.texi @@ -66,7 +66,7 @@ @end ifclear @copying -Copyright @copyright{} 1999--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1999--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document @@ -82,10 +82,10 @@ copy and modify this GNU manual.'' @end copying @c Entries for @command{install-info} to use -@dircategory @value{emacsname} network features +@dircategory Emacs network features @direntry * TRAMP: (tramp). Transparent Remote Access, Multiple Protocol - @value{emacsname} remote file access via ssh and scp. + Emacs remote file access via ssh and scp. @end direntry @titlepage @@ -104,34 +104,20 @@ copy and modify this GNU manual.'' @top @value{tramp} version @value{trampver} User Manual This file documents @value{tramp} version @value{trampver}, a remote file -editing package for @value{emacsname}. +editing package for Emacs. @value{tramp} stands for ``Transparent Remote (file) Access, Multiple Protocol''. This package provides remote file editing, similar to -@value{ftppackagename}. +Ange FTP. -The difference is that @value{ftppackagename} uses FTP to transfer -files between the local and the remote host, whereas @value{tramp} uses a -combination of @command{rsh} and @command{rcp} or other work-alike -programs, such as @command{ssh}/@command{scp}. +The difference is that Ange FTP uses FTP to transfer files between the +local and the remote host, whereas @value{tramp} uses a combination of +@command{rsh} and @command{rcp} or other work-alike programs, such as +@command{ssh}/@command{scp}. You can find the latest version of this document on the web at @uref{http://www.gnu.org/software/tramp/}. -@c Pointer to the other Emacs flavor is necessary only in case of -@c standalone installation. -@ifset installchapter -The manual has been generated for @value{emacsname}. -@ifinfo -If you want to read the info pages for @value{emacsothername}, you -should read in @ref{Installation} how to create them. -@end ifinfo -@ifhtml -If you're using the other Emacs flavor, you should read the -@uref{@value{emacsotherfilename}, @value{emacsothername}} pages. -@end ifhtml -@end ifset - @ifhtml The latest release of @value{tramp} is available for @uref{ftp://ftp.gnu.org/gnu/tramp/, download}, or you may see @@ -168,7 +154,7 @@ For the end user: * Obtaining Tramp:: How to obtain @value{tramp}. * History:: History of @value{tramp}. @ifset installchapter -* Installation:: Installing @value{tramp} with your @value{emacsname}. +* Installation:: Installing @value{tramp} with your Emacs. @end ifset * Configuration:: Configuring @value{tramp} for use. * Usage:: An overview of the operation of @value{tramp}. @@ -181,7 +167,6 @@ For the developer: How file names, directories and localnames are mangled and managed. * Traces and Profiles:: How to Customize Traces. -* Issues:: Debatable Issues and What Was Decided. * GNU Free Documentation License:: The license for this documentation. * Function Index:: @value{tramp} functions. @@ -192,7 +177,7 @@ For the developer: --- The Detailed Node Listing --- @c @ifset installchapter -Installing @value{tramp} with your @value{emacsname} +Installing @value{tramp} with your Emacs * Installation parameters:: Parameters in order to control installation. * Load paths:: How to plug-in @value{tramp} into your environment. @@ -204,12 +189,8 @@ Configuring @value{tramp} for use * Connection types:: Types of connections to remote hosts. * Inline methods:: Inline methods. * External methods:: External methods. -@ifset emacsgvfs * GVFS based methods:: GVFS based external methods. -@end ifset -@ifset emacsgw * Gateway methods:: Gateway methods. -@end ifset * Default Method:: Selecting a default method. * Default User:: Selecting a default user. * Default Host:: Selecting a default host. @@ -231,15 +212,13 @@ Using @value{tramp} * File name Syntax:: @value{tramp} file name conventions. * File name completion:: File name completion. * Ad-hoc multi-hops:: Declaring multiple hops in the file name. -* Remote processes:: Integration with other @value{emacsname} packages. +* Remote processes:: Integration with other Emacs packages. * Cleanup remote connections:: Cleanup remote connections. How file names, directories and localnames are mangled and managed * Localname deconstruction:: Breaking a localname into its components. -@ifset emacs * External packages:: Integration with external Lisp packages. -@end ifset @end detailmenu @end menu @@ -250,10 +229,9 @@ How file names, directories and localnames are mangled and managed @cindex overview @value{tramp} is for transparently accessing remote files from within -@value{emacsname}. @value{tramp} enables an easy, convenient, and -consistent interface to remote files as if they are local files. -@value{tramp}'s transparency extends to editing, version control, and -@code{dired}. +Emacs. @value{tramp} enables an easy, convenient, and consistent +interface to remote files as if they are local files. @value{tramp}'s +transparency extends to editing, version control, and @code{dired}. @value{tramp} can access remote hosts using any number of access methods, such as @command{rsh}, @command{rlogin}, @command{telnet}, @@ -276,7 +254,7 @@ and transparent access. @value{tramp} temporarily transfers a remote file's contents to the local host editing and related operations. @value{tramp} can also transfer files between hosts using standard Emacs interfaces, a -benefit of direct integration of @value{tramp} in @value{emacsname}. +benefit of direct integration of @value{tramp} in Emacs. @value{tramp} can transfer files using any number of available host programs for remote files, such as @command{rcp}, @command{scp}, @@ -310,8 +288,7 @@ first time connection to that host, here's what happens: @value{tramp} invokes @samp{telnet @var{host}} or @samp{rsh @var{host} -l @var{user}} and establishes an external process to connect to the remote host. @value{tramp} communicates with the process through an -@value{emacsname} buffer, which also shows output from the remote -host. +Emacs buffer, which also shows output from the remote host. @item The remote host may prompt for a login name (for @command{telnet}, for @@ -389,7 +366,7 @@ behind the scenes when you open a file with @value{tramp}. @c For the end user @node Obtaining Tramp -@chapter Obtaining Tramp. +@chapter Obtaining @value{tramp} @cindex obtaining Tramp @value{tramp} is included as part of Emacs (since Emacs version 22.1). @@ -411,7 +388,7 @@ navigation bar at the top. Another way is to follow the terminal session below: @example -] @strong{cd ~/@value{emacsdir}} +] @strong{cd ~/emacs} ] @strong{git clone git://git.savannah.gnu.org/tramp.git} @end example @@ -431,14 +408,14 @@ Tramp developers: @end example @noindent -After one of the above commands, @file{~/@value{emacsdir}/tramp} will +After one of the above commands, @file{~/emacs/tramp} will containing the latest version of @value{tramp}. @noindent To fetch updates from the repository, use git pull: @example -] @strong{cd ~/@value{emacsdir}/tramp} +] @strong{cd ~/emacs/tramp} ] @strong{git pull} @end example @@ -447,7 +424,7 @@ Run @command{autoconf} as follows to generate an up-to-date @file{configure} script: @example -] @strong{cd ~/@value{emacsdir}/tramp} +] @strong{cd ~/emacs/tramp} ] @strong{autoconf} @end example @@ -467,23 +444,16 @@ for version control. April 2000 was the first time when multi-hop methods were added. In July 2002, @value{tramp} unified file names with Ange-FTP@. In July 2004, proxy hosts replaced multi-hop methods. Running commands on -remote hosts was introduced in December 2005. -@ifset emacsgw -Support for gateways since April 2007. -@end ifset +remote hosts was introduced in December 2005. Support for gateways +since April 2007. @ifset emacsgvfs GVFS integration started in February 2009. @end ifset -@ifset emacs -Remote commands on Windows hosts since September 2011. -@end ifset -Ad-hoc multi-hop methods (with a changed syntax) re-enabled in November -2011. +Remote commands on Windows hosts since September 2011. Ad-hoc +multi-hop methods (with a changed syntax) re-enabled in November 2011. In November 2012, added Juergen Hoetzel's @file{tramp-adb.el}. -In December 2001, XEmacs package repository adds @value{tramp}. - @c Installation chapter is necessary only in case of standalone @c installation. Text taken from trampinst.texi. @@ -510,8 +480,8 @@ defaults to one of several other options, see (@pxref{Connection types}). @strong{Note} that some user options and variables described in these -examples are not auto loaded by @value{emacsname}. All examples -require @value{tramp} is installed and loaded: +examples are not auto loaded by Emacs. All examples require +@value{tramp} is installed and loaded: @lisp (require 'tramp) @@ -522,12 +492,8 @@ require @value{tramp} is installed and loaded: * Connection types:: Types of connections to remote hosts. * Inline methods:: Inline methods. * External methods:: External methods. -@ifset emacsgvfs * GVFS based methods:: GVFS based external methods. -@end ifset -@ifset emacsgw * Gateway methods:: Gateway methods. -@end ifset * Default Method:: Selecting a default method. Here we also try to help those who don't have the foggiest which method @@ -592,7 +558,7 @@ Inline methods use the same login connection to transfer file contents. Inline methods are quick and easy for small files. They depend on the availability of suitable encoding and decoding programs on the remote host. For local source and destination, @value{tramp} -may use built-in equivalents of such programs in @value{emacsname}. +may use built-in equivalents of such programs in Emacs. Inline methods can work in situations where an external transfer program is unavailable. Inline methods also work when transferring @@ -624,7 +590,6 @@ specifies the file size for such optimization. @command{rsh} is an option for connecting to hosts within local networks since @command{rsh} is not as secure as other methods. - @item @option{ssh} @cindex method ssh @cindex ssh method @@ -644,7 +609,6 @@ host name, a hash sign, then a port number). It is the same as passing Connecting to a remote host with @command{telnet} is as insecure as the @option{rsh} method. - @item @option{su} @cindex method su @cindex su method @@ -661,6 +625,16 @@ the host returned by the function @command{(system-name)}. See Similar to @option{su} method, @option{sudo} uses @command{sudo}. @command{sudo} must have sufficient rights to start a shell. +@item @option{sg} +@cindex method sg +@cindex sg method + +The @command{sg} program allows editing as different group. The host +can be either @samp{localhost} or the host returned by the function +@command{(system-name)}. The user name must be specified, but it +denotes a group name. See @ref{Multi-hops} for an exception to this +behavior. + @item @option{sshx} @cindex method sshx @cindex sshx method @@ -697,7 +671,6 @@ This method is also similar to @option{ssh}. It uses the This is another method from the Kerberos suite. It behaves like @option{su}. - @item @option{plink} @cindex method plink @cindex plink method @@ -711,7 +684,6 @@ session. @option{plink} method supports the @samp{-P} argument. - @item @option{plinkx} @cindex method plinkx @cindex plinkx method @@ -788,7 +760,6 @@ is lost if the file exists only on one side of the connection. This method supports the @samp{-p} argument. - @item @option{scpx}---@command{ssh} and @command{scp} @cindex method scpx @cindex scpx method @@ -805,7 +776,6 @@ shell prompts that confuses @value{tramp}. This method supports the @samp{-p} argument. - @item @option{pscp}---@command{plink} and @command{pscp} @item @option{psftp}---@command{plink} and @command{psftp} @cindex method pscp @@ -829,7 +799,6 @@ session. These methods support the @samp{-P} argument. - @item @option{fcp}---@command{fsh} and @command{fcp} @cindex method fcp @cindex fcp method @@ -870,13 +839,8 @@ decode programs. @cindex ftp method When @value{tramp} uses @option{ftp}, it forwards requests to whatever -ftp program is specified by @value{ftppackagename}. This external -program must be capable of servicing requests from @value{tramp}. - -@ifset xemacs -This method works only for unified file names, see @ref{Issues}. -@end ifset - +ftp program is specified by Ange FTP. This external program must be +capable of servicing requests from @value{tramp}. @item @option{smb}---@command{smbclient} @cindex method smb @@ -938,9 +902,9 @@ uses the anonymous user (without prompting for password). This behavior is unlike other @value{tramp} methods, where local user name is substituted. -@option{smb} method is unavailable if @value{emacsname} is run under a -local user authentication context in MS Windows. However such users -can still access remote files using UNC file names instead of @value{tramp}: +@option{smb} method is unavailable if Emacs is run under a local user +authentication context in MS Windows. However such users can still +access remote files using UNC file names instead of @value{tramp}: @example //melancholia/daniel$$/.emacs @@ -949,7 +913,6 @@ can still access remote files using UNC file names instead of @value{tramp}: UNC file name specification does not allow to specify a different user name for authentication like the @command{smbclient} can. - @item @option{adb} @cindex method adb @cindex adb method @@ -965,7 +928,7 @@ or the absolute path set in the variable @var{tramp-adb-program}. @value{tramp} connects to Android devices with @option{adb} only when the custom option @option{tramp-adb-connect-if-not-connected} is not @code{nil}. Otherwise, the connection must be established outside -@value{emacsname}. +Emacs. @value{tramp} does not require a host name part of the remote file name when a single Android device is connected to @command{adb}. @@ -999,9 +962,9 @@ GVFS is the virtual file system for the Gnome Desktop, mounted locally through FUSE and @value{tramp} uses this locally mounted directory internally. -@value{emacsname} uses the D-Bus mechanism to communicate with GVFS@. -@value{emacsname} must have the message bus system, D-Bus integration -active, @pxref{Top, , D-Bus, dbus}. +Emacs uses the D-Bus mechanism to communicate with GVFS@. Emacs must +have the message bus system, D-Bus integration active, @pxref{Top, , +D-Bus, dbus}. @table @asis @item @option{afp} @@ -1031,7 +994,6 @@ but with SSL encryption. Both methods support the port numbers. OBEX is an FTP-like access protocol for cell phones and similar simple devices. @value{tramp} supports OBEX over Bluetooth. - @item @option{sftp} @cindex method sftp @cindex sftp method @@ -1060,7 +1022,6 @@ include are: @option{ftp} and @option{smb}. @end ifset -@ifset emacsgw @node Gateway methods @section Gateway methods @cindex methods, gateway @@ -1093,7 +1054,6 @@ For authentication, this protocol uses only @option{Basic Authentication} (see RFC 2617). When no port number is specified, this protocol defaults to @option{8080}. - @item @option{socks} @cindex method socks @cindex socks method @@ -1105,7 +1065,6 @@ The default port number for the socks server is @option{1080}, if not specified otherwise. @end table -@end ifset @node Default Method @@ -1229,9 +1188,9 @@ See the documentation for the variable @code{tramp-default-user-alist} for more details. A Caution: @value{tramp} will override any default user specified in -the configuration files outside @value{emacsname}, such as -@file{~/.ssh/config}. To stop @value{tramp} from applying the default -value, set the corresponding alist entry to nil: +the configuration files outside Emacs, such as @file{~/.ssh/config}. +To stop @value{tramp} from applying the default value, set the +corresponding alist entry to nil: @lisp (add-to-list 'tramp-default-user-alist @@ -1254,9 +1213,9 @@ for catch-all or most often used login. @vindex tramp-default-host-alist When host name is omitted, @value{tramp} substitutes the value from -the @code{tramp-default-host} variable. It is initially populated with -the local hostname where @value{emacsname} is running. Both the -default user and default host can be overridden as follows: +the @code{tramp-default-host} variable. It is initially populated +with the local hostname where Emacs is running. Both the default user +and default host can be overridden as follows: @lisp (setq tramp-default-user "john" @@ -1266,10 +1225,8 @@ default user and default host can be overridden as follows: With both defaults set, @samp{@trampfn{ssh, , ,}} will connect @value{tramp} to John's home directory on target. -@ifset emacs @strong{Note} @samp{/::} won't work, because @samp{/:} is the prefix for quoted file names. -@end ifset Instead of a single default host, @code{tramp-default-host-alist} allows multiple default host values based on access method or user @@ -1308,13 +1265,8 @@ regular expression which always matches. @var{proxy} is a literal @value{tramp} file name whose local name part is ignored, and the method and user name parts are optional. -@ifset emacsgw The method must be an inline or gateway method (@pxref{Inline methods}, @pxref{Gateway methods}). -@end ifset -@ifclear emacsgw -The method must be an inline method (@pxref{Inline methods}). -@end ifclear If @var{proxy} is @code{nil}, no additional hop is required reaching @var{user}@@@var{host}. @@ -1378,7 +1330,6 @@ local one, first connect via @command{ssh}, and then apply The above configuration allows @value{tramp} connection as @samp{root} to remote Ubuntu hosts. -@ifset emacsgw @code{tramp-default-proxies-alist} is also used for passing through firewalls or proxy servers. @@ -1399,7 +1350,6 @@ discussion of ethical issues.} Then the configuration is: @end lisp Gateway methods in a multiple hop chain can be declared only as the first hop. -@end ifset @end defopt Passing through hops involves dealing with restricted shells, such as @@ -1527,6 +1477,11 @@ A function dedicated to @file{/etc/hosts} for host names. A function which parses @file{/etc/passwd} files for user names. +@item @code{tramp-parse-etc-group} +@findex tramp-parse-etc-group + +A function which parses @file{/etc/group} files for group names. + @item @code{tramp-parse-netrc} @findex tramp-parse-netrc @@ -1598,9 +1553,8 @@ the same user or host name independent of the access method. @code{password-cache-expiry} sets the duration (in seconds) the passwords are remembered. Passwords are never saved permanently nor -can they extend beyond the lifetime of the current @value{emacsname} -session. Set @code{password-cache-expiry} to @code{nil} to disable -expiration. +can they extend beyond the lifetime of the current Emacs session. Set +@code{password-cache-expiry} to @code{nil} to disable expiration. @vindex password-cache @@ -1608,8 +1562,8 @@ Set @code{password-cache} to @code{nil} to disable password caching. @strong{Implementation Note}: password caching depends on @file{password-cache.el} package. @value{tramp} activates password -caching only if @value{tramp} can discover, while @value{emacsname} is -loading, the package through @code{load-path}. +caching only if @value{tramp} can discover, while Emacs is loading, +the package through @code{load-path}. @ifset installchapter @file{password.el} is available from No Gnus or from the @value{tramp} @@ -1626,17 +1580,12 @@ For faster initial connection times, @value{tramp} stores previous connection properties in a file specified by the variable @code{tramp-persistency-file-name}. -The default file name for @code{tramp-persistency-file-name} is: -@ifset emacs +The default file name for @code{tramp-persistency-file-name} is @file{~/.emacs.d/tramp}. -@end ifset -@ifset xemacs -@file{~/.xemacs/tramp}. -@end ifset -@value{tramp} reads this file during @value{emacsname} startup, and -writes to it when exiting @value{emacsname}. Delete this file for -@value{tramp} to recreate a new one on next @value{emacsname} startup. +@value{tramp} reads this file during Emacs startup, and writes to it +when exiting Emacs. Delete this file for @value{tramp} to recreate a +new one on next Emacs startup. Set @code{tramp-persistency-file-name} to @code{nil} to disable storing connections persistently. @@ -1754,8 +1703,8 @@ preserves the path value, which can be used to update When remote search paths are changed, local @value{tramp} caches must be recomputed. To force @value{tramp} to recompute afresh, exit -@value{emacsname}, remove the persistent file (@pxref{Connection -caching}), and restart @value{emacsname}. +Emacs, remove the persistent file (@pxref{Connection caching}), and +restart Emacs. @node Remote shell setup @@ -1926,9 +1875,7 @@ fi @end example @ifinfo -@ifset emacs -@xref{Interactive Shell, , , @value{emacsdir}}. -@end ifset +@xref{Interactive Shell, , , emacs}. @end ifinfo @item @command{busybox} / @command{nc} @@ -2034,59 +1981,32 @@ Open a remote connection with a more concise command @kbd{C-x C-f @section Auto-save and Backup configuration @cindex auto-save @cindex backup -@ifset emacs @vindex backup-directory-alist -@end ifset -@ifset xemacs -@vindex bkup-backup-directory-info -@end ifset To avoid @value{tramp} from saving backup files owned by root to locations accessible to others, default backup settings in -@ifset emacs -@code{backup-directory-alist} -@end ifset -@ifset xemacs -@code{bkup-backup-directory-info} -@end ifset -have to be altered. - -Here's a scenario where files could be inadvertently -exposed. @value{emacsname} by default writes backup files to the same -directory as the original files unless changed to another location, -such as @file{~/.emacs.d/backups/}. Such a directory will also be used -by default by @value{tramp} when using, say, a restricted file -@file{@trampfn{su, root, localhost, /etc/secretfile}}. The backup file -of the secretfile is now owned by the user logged in from tramp and -not root. - -When -@ifset emacs -@code{backup-directory-alist} -@end ifset -@ifset xemacs -@code{bkup-backup-directory-info} -@end ifset -is @code{nil} (the default), such problems do not occur. +@code{backup-directory-alist} have to be altered. + +Here's a scenario where files could be inadvertently exposed. Emacs +by default writes backup files to the same directory as the original +files unless changed to another location, such as +@file{~/.emacs.d/backups/}. Such a directory will also be used by +default by @value{tramp} when using, say, a restricted file +@file{@trampfn{su, root, localhost, /etc/secretfile}}. The backup +file of the secretfile is now owned by the user logged in from tramp +and not root. + +When @code{backup-directory-alist} is @code{nil} (the default), such +problems do not occur. To ``turns off'' the backup feature for @value{tramp} files and stop @value{tramp} from saving to the backup directory, use this: -@ifset emacs @lisp (add-to-list 'backup-directory-alist (cons tramp-file-name-regexp nil)) @end lisp -@end ifset -@ifset xemacs -@lisp -(require 'backup-dir) -(add-to-list 'bkup-backup-directory-info - (list tramp-file-name-regexp "")) -@end lisp -@end ifset -@ifset emacs @noindent Disabling backups can be targetted to just @option{su} and @option{sudo} methods: @@ -2100,26 +2020,13 @@ Disabling backups can be targetted to just @option{su} and (when (stringp method) (member method '("su" "sudo")))))))) @end lisp -@end ifset Another option is to create better backup file naming with user and host names prefixed to the file name. For example, transforming @file{/etc/secretfile} to @file{~/.emacs.d/backups/!su:root@@localhost:!etc!secretfile}, set the -@value{tramp} variable -@ifset emacs -@code{tramp-backup-directory-alist} -@end ifset -@ifset xemacs -@code{tramp-bkup-backup-directory-info} -@end ifset -from the existing variable -@ifset emacs -@code{backup-directory-alist}. -@end ifset -@ifset xemacs -@code{bkup-backup-directory-info}. -@end ifset +@value{tramp} variable @code{tramp-backup-directory-alist} from the +existing variable @code{backup-directory-alist}. Then @value{tramp} backs up to a file name that is transformed with a prefix consisting of the DIRECTORY name. This file name prefixing @@ -2128,53 +2035,30 @@ happens only when the DIRECTORY is an absolute local file name. @noindent Example: -@ifset emacs @lisp (add-to-list 'backup-directory-alist (cons "." "~/.emacs.d/backups/")) (setq tramp-backup-directory-alist backup-directory-alist) @end lisp -@end ifset -@ifset xemacs -@lisp -(require 'backup-dir) -(add-to-list 'bkup-backup-directory-info - (list "." "~/.emacs.d/backups/" 'full-path)) -(setq tramp-bkup-backup-directory-info bkup-backup-directory-info) -@end lisp -@end ifset @noindent The backup file name of @file{@trampfn{su, root, localhost, -/etc/secretfile}} would be -@ifset emacs -@file{@trampfn{su, root, localhost, +/etc/secretfile}} would be @file{@trampfn{su, root, localhost, ~/.emacs.d/backups/!su:root@@localhost:!etc!secretfile~}} -@end ifset -@ifset xemacs -@file{@trampfn{su, root, localhost, -~/.emacs.d/backups/![su!root@@localhost]!etc!secretfile~}} -@end ifset Just as for backup files, similar issues of file naming affect -auto-saving @value{tramp} files. -@ifset emacs -Auto-saved files are saved in the directory specified by the variable +auto-saving @value{tramp} files. Auto-saved files are saved in the +directory specified by the variable @code{auto-save-file-name-transforms}. By default this is set to the local temporary directory. But in some versions of Debian GNU/Linux, -this points to the source directory where the @value{emacsname} was -compiled. Reset such values to a valid directory. +this points to the source directory where the Emacs was compiled. +Reset such values to a valid directory. Set @code{auto-save-file-name-transforms} to @code{nil} to save auto-saved files to the same directory as the original file. Alternatively, set the variable @code{tramp-auto-save-directory} to direct all auto saves to that location. -@end ifset -@ifset xemacs -@code{auto-save-directory} can also be used here instead of other -locations specfied above. -@end ifset @node Windows setup hints @section Issues with Cygwin ssh @@ -2185,9 +2069,9 @@ This section is incomplete. Please share your solutions. @cindex method sshx with Cygwin @cindex sshx method with Cygwin -Cygwin's @command{ssh} works only with a Cygwin version of -@value{emacsname}. To check for compatibility: type @kbd{M-x eshell}, and -start @kbd{ssh test.host}. Incompatbilities trigger this message: +Cygwin's @command{ssh} works only with a Cygwin version of Emacs. To +check for compatibility: type @kbd{M-x eshell}, and start @kbd{ssh +test.host}. Incompatbilities trigger this message: @example Pseudo-terminal will not be allocated because stdin is not a terminal. @@ -2201,7 +2085,7 @@ Some older versions of Cygwin's @command{ssh} work with the @cindex method scpx with Cygwin @cindex scpx method with Cygwin -When using the @option{scpx} access method, @value{emacsname} may call +When using the @option{scpx} access method, Emacs may call @command{scp} with Windows file naming, such as @code{c:/foo}. But the version of @command{scp} that is installed with Cygwin does not know about Windows file naming, which causes it to incorrectly look @@ -2211,18 +2095,17 @@ A workaround: write a wrapper script for @option{scp} to convert Windows file names to Cygwin file names. @cindex Cygwin and ssh-agent -@cindex SSH_AUTH_SOCK and @value{emacsname} on Windows +@cindex SSH_AUTH_SOCK and Emacs on Windows When using the @command{ssh-agent} on Windows for password-less interaction, @option{ssh} methods depend on the environment variable -@env{SSH_AUTH_SOCK}. But this variable is not set when -@value{emacsname} is started from a Desktop shortcut and -authentication fails. +@env{SSH_AUTH_SOCK}. But this variable is not set when Emacs is +started from a Desktop shortcut and authentication fails. One workaround is to use a Windows based SSH Agent, such as Pageant. It is part of the Putty Suite of tools. -The fallback is to start @value{emacsname} from a shell. +The fallback is to start Emacs from a shell. @node Usage @@ -2233,27 +2116,24 @@ The fallback is to start @value{emacsname} from a shell. they are local. However, @value{tramp} employs a formalized remote file naming syntax to perform its functions transparently. This syntax consists of many parts specifying access methods, -authentication, host names, and file names. -@ifset emacs -@value{ftppackagename} uses a similar syntax. -@end ifset +authentication, host names, and file names. Ange FTP uses a similar +syntax. @cindex type-ahead -Unlike opening local files in @value{emacsname}, which are -instantaneous, opening remote files in @value{tramp} is slower at -first. Sometimes there is a noticable delay before the prompts for -passwords or authentication appear in the minibuffer. Hitting -@kbd{@key{RET}} or other keys during this gap will be processed by -@value{emacsname}. This type-ahead facility is a feature of -@value{emacsname} that may cause missed prompts when using +Unlike opening local files in Emacs, which are instantaneous, opening +remote files in @value{tramp} is slower at first. Sometimes there is +a noticable delay before the prompts for passwords or authentication +appear in the minibuffer. Hitting @kbd{@key{RET}} or other keys +during this gap will be processed by Emacs. This type-ahead facility +is a feature of Emacs that may cause missed prompts when using @value{tramp}. @menu * File name Syntax:: @value{tramp} file name conventions. * File name completion:: File name completion. * Ad-hoc multi-hops:: Declaring multiple hops in the file name. -* Remote processes:: Integration with other @value{emacsname} packages. +* Remote processes:: Integration with other Emacs packages. * Cleanup remote connections:: Cleanup remote connections. @end menu @@ -2291,11 +2171,9 @@ For the file @file{/etc/squid.conf} on the host @code{melancholia}. @var{host} can take IPv4 or IPv6 address, as in @file{@trampfn{, , 127.0.0.1, .emacs}} or @file{@trampfn{, , -@value{ipv6prefix}::1@value{ipv6postfix}, .emacs}}. -@ifset emacs -For syntactical reasons, IPv6 addresses must be embedded in square -brackets @file{@value{ipv6prefix}} and @file{@value{ipv6postfix}}. -@end ifset +@value{ipv6prefix}::1@value{ipv6postfix}, .emacs}}. For syntactical +reasons, IPv6 addresses must be embedded in square brackets +@file{@value{ipv6prefix}} and @file{@value{ipv6postfix}}. By default, @value{tramp} will use the current local user name as the remote user name for log in to the remote host. Specifying a different @@ -2312,17 +2190,10 @@ name using the proper syntax will override this default behavior: Specify other file access methods (@pxref{Inline methods}, @pxref{External methods}) as part of the file name. -@ifset emacs Method name comes before user name, as in @file{@value{prefix}@var{method}@value{postfixhop}} (Note the trailing -colon). -@end ifset -@ifset xemacs -This is done by replacing the initial @file{@value{prefix}} with -@file{@value{prefix}@var{method}@value{postfixhop}} (Note the trailing -slash!). -@end ifset -The syntax specificaton for user, host, and file do not change. +colon). The syntax specificaton for user, host, and file do not +change. To connect to the host @code{melancholia} as @code{daniel}, using @option{ssh} method for @file{.emacs} in @code{daniel}'s home @@ -2343,13 +2214,11 @@ name. For example: @file{@trampfn{ssh, daniel, melancholia#42, @value{tramp} can complete the following @value{tramp} file name components: method names, user names, host names, and file names -located on remote hosts. -@ifset emacs -Enable this by activating partial completion in @file{.emacs}. +located on remote hosts. Enable this by activating partial completion +in @file{.emacs}. @ifinfo -@xref{Completion Options, , , @value{emacsdir}}. +@xref{Completion Options, , , emacs}. @end ifinfo -@end ifset For example, type @kbd{C-x C-f @value{prefix}t @key{TAB}}, @value{tramp} completion choices show up as @@ -2357,24 +2226,17 @@ For example, type @kbd{C-x C-f @value{prefix}t @key{TAB}}, @example @c @multitable {@trampfn{telnet, , melancholia.danann.net,}} {@trampfn{telnet, , 192.168.0.1,}} @multitable @columnfractions .5 .5 -@ifset emacs @item @value{prefixhop}telnet@value{postfixhop} @tab tmp/ @item @value{prefixhop}toto@value{postfix} @tab -@end ifset -@ifset xemacs -@item @value{prefixhop}telnet@value{postfixhop} @tab @value{prefixhop}toto@value{postfix} -@end ifset @end multitable @end example -@samp{@value{prefixhop}telnet@value{postfixhop}} -is a possible completion for the respective method, -@ifset emacs -@samp{tmp/} stands for the directory @file{/tmp} on your local host, -@end ifset -and @samp{@value{prefixhop}toto@value{postfix}} -might be a host @value{tramp} has detected in your @file{~/.ssh/known_hosts} -file (when using @option{ssh} as default method). +@samp{@value{prefixhop}telnet@value{postfixhop}} is a possible +completion for the respective method, @samp{tmp/} stands for the +directory @file{/tmp} on your local host, and +@samp{@value{prefixhop}toto@value{postfix}} might be a host +@value{tramp} has detected in your @file{~/.ssh/known_hosts} file +(when using @option{ssh} as default method). Type @kbd{e @key{TAB}} for the minibuffer completion to @samp{@value{prefix}telnet@value{postfixhop}}. Typing @kbd{@key{TAB}} @@ -2402,19 +2264,16 @@ completion lists. After remote host name completion comes completion of file names on the remote host. It works the same as on loal host file completion except when killing with double-slash @file{//} kills only the file -name part of the @value{tramp} file name syntax. -@ifset emacs -A triple-slash stands for the default behavior. -@end ifset +name part of the @value{tramp} file name syntax. A triple-slash +stands for the default behavior. @ifinfo -@xref{Minibuffer File, , , @value{emacsdir}}. +@xref{Minibuffer File, , , emacs}. @end ifinfo @noindent Example: @example -@ifset emacs @kbd{C-x C-f @trampfn{telnet, , melancholia, /usr/local/bin//etc} @key{TAB}} @print{} @trampfn{telnet, , melancholia, /etc} @@ -2423,22 +2282,13 @@ Example: @kbd{C-x C-f @trampfn{telnet, , melancholia, /usr/local/bin///etc} @key{TAB}} @print{} /etc -@end ifset - -@ifset xemacs -@kbd{C-x C-f @trampfn{telnet, , melancholia, /usr/local/bin//}} - @print{} @trampfn{telnet, , melancholia, /} - -@kbd{C-x C-f @trampfn{telnet, , melancholia, //}} - @print{} / -@end ifset @end example During file name completion, remote directory contents are re-read regularly to account for any changes in the filesystem that may affect the completion candidates. Such re-reads can account for changes to -the file system by applications outside @value{emacsname} -(@pxref{Connection caching}). +the file system by applications outside Emacs (@pxref{Connection +caching}). @defopt tramp-completion-reread-directory-timeout @vindex tramp-completion-reread-directory-timeout @@ -2473,15 +2323,15 @@ Proxies can take patterns @code{%h} or @code{%u}. @value{tramp} adds the ad-hoc definitions on the fly to @code{tramp-default-proxies-alist} and is available for re-use during -that @value{emacsname} session. Subsequent @value{tramp} connections -to the same remote host can then use the shortcut form: -@samp{@trampfn{ssh, you, remotehost, /path}}. +that Emacs session. Subsequent @value{tramp} connections to the same +remote host can then use the shortcut form: @samp{@trampfn{ssh, you, +remotehost, /path}}. @defopt tramp-save-ad-hoc-proxies @vindex tramp-save-ad-hoc-proxies For ad-hoc definitions to be saved automatically in -@option{tramp-default-proxies-alist} for future @value{emacsname} -sessions, set @option{tramp-save-ad-hoc-proxies}. +@option{tramp-default-proxies-alist} for future Emacs sessions, set +@option{tramp-save-ad-hoc-proxies}. @lisp (setq tramp-save-ad-hoc-proxies t) @@ -2490,14 +2340,13 @@ sessions, set @option{tramp-save-ad-hoc-proxies}. @node Remote processes -@section Integration with other @value{emacsname} packages +@section Integration with other Emacs packages @cindex compile @cindex recompile @value{tramp} supports starting new running processes on the remote -host for discovering remote file names. @value{emacsname} packages on -the remote host need no specific modifications for @value{tramp}'s -use. +host for discovering remote file names. Emacs packages on the remote +host need no specific modifications for @value{tramp}'s use. This type of integration does not work with the @option{ftp} method, and does not support the pty association as specified in @@ -2580,8 +2429,8 @@ them as follows: This works only for environment variables not already set in the @code{process-environment}. -For integrating other @value{emacsname} packages so @value{tramp} can -execute remotely, please file a bug report. @xref{Bug Reports}. +For integrating other Emacs packages so @value{tramp} can execute +remotely, please file a bug report. @xref{Bug Reports}. @subsection Running remote programs that create local X11 windows @@ -2616,11 +2465,9 @@ when using @value{tramp} between two hosts with different operating systems, such as @samp{windows-nt} and @samp{gnu/linux}. This option ensures the correct name of the remote shell program. -@ifset emacs Starting with Emacs 24, when @option{explicit-shell-file-name} is equal to @code{nil}, calling @code{shell} interactively will prompt for a shell name. -@end ifset @subsection Running @code{shell-command} on a remote host @@ -2638,9 +2485,7 @@ host. Example: @command{tail} command outputs continuously to the local buffer, @file{*Async Shell Command*} -@ifset emacs @kbd{M-x auto-revert-tail-mode} runs similarly showing continuous output. -@end ifset @subsection Running @code{eshell} on a remote host @@ -2663,9 +2508,8 @@ uid=0(root) gid=0(root) groups=0(root) @b{@trampfn{sudo, root, host, /etc} $} @end example -@ifset emacs -@code{eshell} in @value{emacsname} 23.2 added custom @code{su} and -@code{sudo} commands that set the default directory correctly for the +@code{eshell} in Emacs 23.2 added custom @code{su} and @code{sudo} +commands that set the default directory correctly for the @file{*eshell*} buffer. @value{tramp} silently updates @code{tramp-default-proxies-alist} with an entry for this directory (@pxref{Multi-hops}): @@ -2682,7 +2526,6 @@ File is not readable: @trampfn{ssh, user, remotehost, /etc/shadow} uid=0(root) gid=0(root) groups=0(root) @b{@trampfn{su, root, remotehost, /root} $} @end example -@end ifset @anchor{Running a debugger on a remote host} @@ -2692,11 +2535,9 @@ uid=0(root) gid=0(root) groups=0(root) @cindex perldb @file{gud.el} provides a unified interface to symbolic debuggers -@ifset emacs @ifinfo -(@ref{Debuggers, , , @value{emacsdir}}). +(@ref{Debuggers, , , emacs}). @end ifinfo -@end ifset @value{tramp} can run debug on remote hosts by calling @code{gdb} with a remote file name: @@ -2807,11 +2648,9 @@ To subscribe to the mailing list, visit: @uref{http://lists.gnu.org/mailman/listinfo/tramp-devel/, the @value{tramp} Mail Subscription Page}. -@ifset emacs @ifset installchapter Before sending a bug report, run the test suite first @ref{Testing}. @end ifset -@end ifset @findex tramp-bug Check if the bug or problem is already addressed in @xref{Frequently @@ -2870,8 +2709,7 @@ Where is the latest @value{tramp}? @item Which systems does it work on? -The package works successfully on Emacs 22, Emacs 23, Emacs 24, Emacs -25, XEmacs 21 (starting with 21.4), and SXEmacs 22. +The package works successfully on Emacs 23, Emacs 24, and Emacs 25. While Unix and Unix-like systems are the primary remote targets, @value{tramp} has equal success connecting to other platforms, such as @@ -3019,9 +2857,9 @@ Host * @value{tramp} overwrites @code{ControlPath} settings when initiating @command{ssh} sessions. @value{tramp} does this to fend off a stall -if a master session opened outside the @value{emacsname} session is no -longer open. That is why @value{tramp} prompts for the password again -even if there is an @command{ssh} already open. +if a master session opened outside the Emacs session is no longer +open. That is why @value{tramp} prompts for the password again even +if there is an @command{ssh} already open. Some @command{ssh} versions support a @code{ControlPersist} option, which allows to set the @code{ControlPath} provided the variable @@ -3081,8 +2919,8 @@ When testing, ensure the remote shell is the same shell @item How to get notified after @value{tramp} completes file transfers? -Make @value{emacsname} beep after reading from or writing to the -remote host with the following code in @file{~/.emacs} file. +Make Emacs beep after reading from or writing to the remote host with +the following code in @file{~/.emacs} file. @lisp (defadvice tramp-handle-write-region @@ -3105,13 +2943,12 @@ remote host with the following code in @file{~/.emacs} file. @end lisp -@ifset emacs @item How to get a Visual Warning when working with @samp{root} privileges Get a modeline indication when working with @samp{root} privileges -with the following code (tested with @value{emacsname} 22.1) in -@file{~/.emacs} file: +with the following code (tested with Emacs 22.1) in @file{~/.emacs} +file: @lisp (defun my-mode-line-function () @@ -3122,15 +2959,13 @@ with the following code (tested with @value{emacsname} 22.1) in (add-hook 'find-file-hook 'my-mode-line-function) (add-hook 'dired-mode-hook 'my-mode-line-function) @end lisp -@end ifset -@ifset emacs @item How to get host indication in the mode line? -The following code (tested with @value{emacsname} 22.1) in -@file{~/.emacs} file shows it: +The following code (tested with Emacs 22.1) in @file{~/.emacs} file +shows it: @lisp (defconst my-mode-line-buffer-identification @@ -3158,11 +2993,11 @@ The following code (tested with @value{emacsname} 22.1) in my-mode-line-buffer-identification))) @end lisp -The mode line in @value{emacsname} 23.1 and later versions now -contains an indication if @code{default-directory} for the current -buffer is on a remote host. Moreover, the corresponding tool-tip -shows the remote host name. The above @code{:eval} clause can also be -simplified to show the host name in the mode line: +The mode line in Emacs 23.1 and later versions now contains an +indication if @code{default-directory} for the current buffer is on a +remote host. Moreover, the corresponding tool-tip shows the remote +host name. The above @code{:eval} clause can also be simplified to +show the host name in the mode line: @lisp '(:eval @@ -3173,16 +3008,14 @@ simplified to show the host name in the mode line: (substring host-name 0 (match-beginning 1)) host-name))) @end lisp -@end ifset -@ifset emacs @item Remote host does not understand default options for directory listing -@value{emacsname} computes the @command{dired} options based on the -local host but if the remote host cannot understand the same -@command{ls} command, then set them with a hook as follows: +Emacs computes the @command{dired} options based on the local host but +if the remote host cannot understand the same @command{ls} command, +then set them with a hook as follows: @lisp (add-hook @@ -3191,7 +3024,6 @@ local host but if the remote host cannot understand the same (when (file-remote-p default-directory) (setq dired-actual-switches "-al")))) @end lisp -@end ifset @item @@ -3270,8 +3102,8 @@ completion can further reduce key strokes: @kbd{C-x C-f Use environment variables to expand long strings For long file names, set up environment variables that are expanded in -the minibuffer. Environment variables are set either outside -@value{emacsname} or inside @value{emacsname} with Lisp: +the minibuffer. Environment variables are set either outside Emacs or +inside Emacs with Lisp: @lisp (setenv "xy" "@trampfn{ssh, news, news.my.domain, /opt/news/etc/}") @@ -3285,7 +3117,7 @@ minibuffer. @item Define own keys: -Redefine another key sequence in @value{emacsname} for @kbd{C-x C-f}: +Redefine another key sequence in Emacs for @kbd{C-x C-f}: @lisp (global-set-key @@ -3355,70 +3187,32 @@ The minibuffer expands for further editing. Use bookmarks to save Tramp file names. @ifinfo -@pxref{Bookmarks, , , @value{emacsdir}}. +@pxref{Bookmarks, , , emacs}. @end ifinfo Upon visiting a location with @value{tramp}, save it as a bookmark with -@ifset emacs @kbd{@key{menu-bar} @key{edit} @key{bookmarks} @key{set}}. -@end ifset -@ifset xemacs -@kbd{@key{menu-bar} @key{view} @key{bookmarks} @key{set}}. -@end ifset To revisit that bookmark: -@ifset emacs @kbd{@key{menu-bar} @key{edit} @key{bookmarks} @key{jump}}. -@end ifset -@ifset xemacs -@kbd{@key{menu-bar} @key{view} @key{bookmarks} @key{jump}}. -@end ifset @item Use recent files: -@ifset emacs -@file{recentf} -@end ifset -@ifset xemacs -@file{recent-files} -@end ifset -remembers visited places. +@file{recentf} remembers visited places. @ifinfo -@ifset emacs -@pxref{File Conveniences, , , @value{emacsdir}}. -@end ifset -@ifset xemacs -@pxref{recent-files, , , edit-utils}. -@end ifset +@pxref{File Conveniences, , , emacs}. @end ifinfo Keep remote file names in the recent list without have to check for their accessibility through remote access: @lisp -@ifset emacs (recentf-mode 1) -@end ifset -@ifset xemacs -(recent-files-initialize) -(add-hook - 'find-file-hook - (lambda () - (when (file-remote-p (buffer-file-name)) - (recent-files-make-permanent))) - 'append) -@end ifset @end lisp -Reaching recently opened files: -@ifset emacs -@kbd{@key{menu-bar} @key{file} @key{Open Recent}}. -@end ifset -@ifset xemacs -@kbd{@key{menu-bar} @key{Recent Files}}. -@end ifset +Reaching recently opened files: @kbd{@key{menu-bar} @key{file} +@key{Open Recent}}. -@ifset emacs @item Use filecache: Since @file{filecache} remembers visited places, add the remote @@ -3432,18 +3226,16 @@ directory to the cache: Then use directory completion in the minibuffer with @kbd{C-x C-f C-@key{TAB}}. -@end ifset -@ifset emacs @item Use bbdb: -@file{bbdb} has a built-in feature for @value{ftppackagename} files, -which also works for @value{tramp} file names. +@file{bbdb} has a built-in feature for Ange FTP files, which also +works for @value{tramp} file names. @ifinfo @pxref{bbdb-ftp, Storing FTP sites in the BBDB, , bbdb}. @end ifinfo -Load @file{bbdb} in @value{emacs}: +Load @file{bbdb} in Emacs: @lisp (require 'bbdb) @@ -3463,24 +3255,19 @@ a method and user name where needed. Examples: @end example In BBDB buffer, access an entry by pressing the key @key{F}. -@end ifset @end enumerate Thanks to @value{tramp} users for contributing to these recipes. @item -Why saved multi-hop file names do not work in a new @value{emacsname} -session? +Why saved multi-hop file names do not work in a new Emacs session? When saving ad-hoc multi-hop @value{tramp} file names (@pxref{Ad-hoc -multi-hops}) via bookmarks, recent files, -@ifset emacs -filecache, bbdb, -@end ifset -or another package, use the full ad-hoc file name including all hops, -like @file{@trampfn{ssh, bird, -bastion|ssh@value{postfixhop}news.my.domain, /opt/news/etc}}. +multi-hops}) via bookmarks, recent files, filecache, bbdb, or another +package, use the full ad-hoc file name including all hops, like +@file{@trampfn{ssh, bird, bastion|ssh@value{postfixhop}news.my.domain, +/opt/news/etc}}. Alternatively, when saving abbreviated multi-hop file names @file{@trampfn{ssh, news, news.my.domain, /opt/news/etc}}, the custom @@ -3488,13 +3275,12 @@ option @code{tramp-save-ad-hoc-proxies} must be set non-@code{nil} value. -@ifset emacs @item -How to connect to a remote @value{emacsname} session using @value{tramp}? +How to connect to a remote Emacs session using @value{tramp}? Configure Emacs Client @ifinfo -(@pxref{Emacs Server, , , @value{emacsdir}}). +(@pxref{Emacs Server, , , emacs}). @end ifinfo Then on the remote host, start the Emacs Server: @@ -3535,7 +3321,6 @@ wrapper script: @example export EDITOR=/path/to/emacsclient.sh @end example -@end ifset @item @@ -3572,35 +3357,25 @@ Disable remote directory tracking mode: How to disable @value{tramp}? @itemize @minus -@ifset emacs @item -To keep @value{ftppackagename} as default the remote files access -package, set this in @file{.emacs}: +To keep Ange FTP as default the remote files access package, set this +in @file{.emacs}: @lisp (setq tramp-default-method "ftp") @end lisp -@end ifset @item -To disable both -@ifset emacs -@value{tramp} (and @value{ftppackagename}), -@end ifset -@ifset xemacs -@value{tramp}, -@end ifset -set @code{tramp-mode} to @code{nil} in @file{.emacs}. +To disable both @value{tramp} (and Ange FTP), set @code{tramp-mode} to +@code{nil} in @file{.emacs}. @lisp (setq tramp-mode nil) @end lisp @item -To unload @value{tramp}, type @kbd{M-x tramp-unload-tramp}. -@ifset emacs -Unloading @value{tramp} resets @value{ftppackagename} plugins also. -@end ifset +To unload @value{tramp}, type @kbd{M-x tramp-unload-tramp}. Unloading +@value{tramp} resets Ange FTP plugins also. @end itemize @end itemize @@ -3611,9 +3386,7 @@ Unloading @value{tramp} resets @value{ftppackagename} plugins also. @menu * Localname deconstruction:: Splitting a localname into its component parts. -@ifset emacs * External packages:: Integrating with external Lisp packages. -@end ifset @end menu @@ -3631,7 +3404,6 @@ file name. By relying on the original handlers for localnames, handlers. -@ifset emacs @node External packages @section Integrating with external Lisp packages @subsection File name completion. @@ -3689,7 +3461,6 @@ attributes cache in its process sentinel with this code: Since @value{tramp} traverses subdirectories starting with the root-directory, it is most likely sufficient to make the @code{default-directory} of the process buffer as the root directory. -@end ifset @node Traces and Profiles @@ -3720,7 +3491,7 @@ set the @code{tramp-verbose} level to 6 (@pxref{Bug Reports}). The debug buffer is in @ifinfo -@ref{Outline Mode, , , @value{emacsdir}}. +@ref{Outline Mode, , , emacs}. @end ifinfo @ifnotinfo Outline Mode. @@ -3729,7 +3500,7 @@ In this buffer, messages can be filtered by their level. To see messages up to verbosity level 5, enter @kbd{C-u 6 C-c C-q}. @ifinfo Other navigation keys are described in -@ref{Outline Visibility, , , @value{emacsdir}}. +@ref{Outline Visibility, , , emacs}. @end ifinfo @value{tramp} handles errors internally. But to get a Lisp backtrace, @@ -3757,62 +3528,6 @@ call traces. Disable @code{tramp-read-passwd} and being written to @file{*trace-output*}. -@node Issues -@chapter Debatable Issues and What Was Decided - -@itemize @bullet -@item The uuencode method does not always work. - -@command{uudecode} on some systems cannot write to stdout, but -@value{tramp} depends on encoding and decoding programs to be able to -read from stdin and write to stdout. - -We can find ways to circumvent @command{uudecode}'s ability to write -to stdout, such as writing to a temporary file and then piping that to -stdout. - -But I have decided not to implement workarounds as they are too -fragile to work reliably. Some on systems, @value{tramp} will not have -uuencode method. - -@item The @value{tramp} file name syntax differs between Emacs and XEmacs. - -The Emacs maintainers wish to use a unified file name syntax for -Ange-FTP and @value{tramp} so that users don't have to learn yet -another syntax though it is okay to learn new extensions. - -For the XEmacs maintainers, the disruption from a unified file name -syntax are not worth the gains. Firstly, the XEmacs package system -relies on EFS for downloading new packages and therefore is already -installed. On the other hand, @value{tramp} is not installed by -default in XEmacs. Unifying will require @value{tramp} installed from -the start. - -@ifset xemacs -@strong{Note:} To make the syntax similar to @value{ftppackagename}, -make this change to the init file: - -@lisp -(setq tramp-unified-filenames t) -(require 'tramp) -@end lisp - -To disable auto loading @value{emacsname} @value{tramp} package, set -file permissions of -@file{@dots{}/xemacs-packages/lisp/tramp/auto-autoloads.el*} to -@code{000}. - -When using unified file names, @value{emacsname} download sites are -added to @code{tramp-default-method-alist} with default method of -@option{ftp} @xref{Default Method} for proper working of the -@value{emacsname} package system. - -The syntax for unified file names is described in the @value{tramp} manual -for @value{emacsothername}. -@end ifset -@end itemize - - @node GNU Free Documentation License @appendix GNU Free Documentation License @include doclicense.texi diff --git a/doc/misc/trampver.texi b/doc/misc/trampver.texi index 436679613a1..70938179b7a 100644 --- a/doc/misc/trampver.texi +++ b/doc/misc/trampver.texi @@ -2,13 +2,13 @@ @c texi/trampver.texi. Generated from trampver.texi.in by configure. @c This is part of the Emacs manual. -@c Copyright (C) 2003-2015 Free Software Foundation, Inc. +@c Copyright (C) 2003-2016 Free Software Foundation, Inc. @c See file doclicense.texi for copying conditions. @c In the Tramp GIT, the version number is auto-frobbed from @c configure.ac, so you should edit that file and run @c "autoconf && ./configure" to change the version number. -@set trampver 2.2.13.25.1 +@set trampver 2.3.0-pre @c Other flags from configuration @set instprefix /usr/local @@ -16,54 +16,34 @@ @set infodir /usr/local/share/info @c Formatting of the tramp program name consistent. -@set tramp @sc{tramp} +@set tramp @sc{Tramp} @c Whether or not describe GVFS integration. @ifclear noemacsgvfs @set emacsgvfs @end ifclear -@c Whether or not describe gateway methods. -@ifclear noemacsgw -@set emacsgw -@end ifclear - -@c Some flags which make the text independent on the (X)Emacs flavor. -@c "emacs" resp "xemacs" are set in the Makefile. Default is "emacs". -@ifclear emacs -@ifclear xemacs -@set emacs +@c Some flags which define the remote file name syntax. +@ifclear unified +@ifclear separate +@set unified @end ifclear @end ifclear -@c Emacs values. -@ifset emacs -@set emacsname Emacs -@set emacsdir emacs -@set ftppackagename Ange-FTP +@ifset unified @set prefix / @set prefixhop @set postfix : @set postfixhop : @set ipv6prefix [ @set ipv6postfix ] -@set emacsothername XEmacs -@set emacsotherdir xemacs -@set emacsotherfilename tramp-xemacs.html @end ifset -@c XEmacs counterparts. -@ifset xemacs -@set emacsname XEmacs -@set emacsdir xemacs -@set ftppackagename EFS +@ifset separate @set prefix /[ @set prefixhop [ @set postfix ] @set postfixhop / @set ipv6prefix @set ipv6postfix -@set emacsothername Emacs -@set emacsotherdir emacs -@set emacsotherfilename tramp-emacs.html @end ifset diff --git a/doc/misc/url.texi b/doc/misc/url.texi index 121c28eb8f8..acdad6b0d10 100644 --- a/doc/misc/url.texi +++ b/doc/misc/url.texi @@ -21,7 +21,7 @@ @copying This is the manual for the @code{url} Emacs Lisp library. -Copyright @copyright{} 1993--1999, 2002, 2004--2015 Free Software +Copyright @copyright{} 1993--1999, 2002, 2004--2016 Free Software Foundation, Inc. @quotation diff --git a/doc/misc/vhdl-mode.texi b/doc/misc/vhdl-mode.texi index b8b3850c55a..ec83b7e62ee 100644 --- a/doc/misc/vhdl-mode.texi +++ b/doc/misc/vhdl-mode.texi @@ -10,7 +10,7 @@ @copying This file documents VHDL Mode, an Emacs mode for editing VHDL code. -Copyright @copyright{} 1995--2008, 2010, 2012, 2015 Free Software +Copyright @copyright{} 1995--2008, 2010, 2012, 2015--2016 Free Software Foundation, Inc. @quotation diff --git a/doc/misc/vip.texi b/doc/misc/vip.texi index 4680a098f06..0f7e8a729ae 100644 --- a/doc/misc/vip.texi +++ b/doc/misc/vip.texi @@ -4,7 +4,7 @@ @include docstyle.texi @copying -Copyright @copyright{} 1987, 2001--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1987, 2001--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/viper.texi b/doc/misc/viper.texi index 8f57e8c6bbe..3f81f67beb4 100644 --- a/doc/misc/viper.texi +++ b/doc/misc/viper.texi @@ -8,7 +8,7 @@ @include docstyle.texi @copying -Copyright @copyright{} 1995--1997, 2001--2015 Free Software Foundation, Inc. +Copyright @copyright{} 1995--1997, 2001--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/widget.texi b/doc/misc/widget.texi index ea785501698..49606ed9692 100644 --- a/doc/misc/widget.texi +++ b/doc/misc/widget.texi @@ -9,7 +9,7 @@ @c %**end of header @copying -Copyright @copyright{} 2000--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2000--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document diff --git a/doc/misc/wisent.texi b/doc/misc/wisent.texi index 7bcc46d58f0..a4462937f1c 100644 --- a/doc/misc/wisent.texi +++ b/doc/misc/wisent.texi @@ -24,7 +24,7 @@ @c %**end of header @copying -Copyright @copyright{} 1988--1993, 1995, 1998--2004, 2007, 2012--2015 +Copyright @copyright{} 1988--1993, 1995, 1998--2004, 2007, 2012--2016 Free Software Foundation, Inc. @c Since we are both GNU manuals, we do not need to ack each other here. diff --git a/doc/misc/woman.texi b/doc/misc/woman.texi index f1286fc3473..59320d23684 100644 --- a/doc/misc/woman.texi +++ b/doc/misc/woman.texi @@ -15,7 +15,7 @@ This file documents WoMan: A program to browse Unix manual pages ``W.O. (without) man''. -Copyright @copyright{} 2001--2015 Free Software Foundation, Inc. +Copyright @copyright{} 2001--2016 Free Software Foundation, Inc. @quotation Permission is granted to copy, distribute and/or modify this document |