@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
history commands (@pxref{Minibuffer}). Note that file name completion
ignores file names whose extensions appear in the variable
@code{completion-ignored-extensions} (@pxref{Completion Options}).
-Note also that most commands use ``permissive completion with
-confirmation'' for reading file names: you are allowed to submit a
+Note also that most commands use permissive completion with
+confirmation for reading file names: you are allowed to submit a
nonexistent file name, but if you type @key{RET} immediately after
completing up to a nonexistent file name, Emacs prints
@samp{[Confirm]} and you must type a second @key{RET} to confirm.
@file{/u/rms/gnu/new/foo}.
When typing a file name into the minibuffer, you can make use of a
-couple of shortcuts: a double slash is interpreted as ``ignore
-everything before the second slash in the pair'', and @samp{~/} is
-interpreted as your home directory. @xref{Minibuffer File}.
+couple of shortcuts: a double slash ignores everything before the
+second slash in the pair, and @samp{~/} is your home directory.
+@xref{Minibuffer File}.
@cindex environment variables in file names
@cindex expansion of environment variables
error in typing the name.
@vindex find-file-run-dired
- If you ``visit'' a file that is actually a directory, Emacs invokes
+ If you visit a file that is actually a directory, Emacs invokes
Dired, the Emacs directory browser. @xref{Dired}. You can disable
this behavior by setting the variable @code{find-file-run-dired} to
@code{nil}; in that case, it is an error to try to visit a directory.
On graphical displays, there are two additional methods for visiting
files. Firstly, when Emacs is built with a suitable GUI toolkit,
commands invoked with the mouse (by clicking on the menu bar or tool
-bar) use the toolkit's standard ``File Selection'' dialog instead of
+bar) use the toolkit's standard file selection dialog instead of
prompting for the file name in the minibuffer. On GNU/Linux and Unix
platforms, Emacs does this when built with GTK, LessTif, and Motif
toolkits; on MS-Windows and Mac, the GUI version does that by default.
For information on how to customize this, see @ref{Dialog Boxes}.
- Secondly, Emacs supports ``drag and drop'': dropping a file into an
+ Secondly, Emacs supports drag and drop: dropping a file into an
ordinary Emacs window visits the file using that window. As an
exception, dropping a file into a window displaying a Dired buffer
moves or copies the file into the displayed directory. For details,
On text-mode terminals and on graphical displays when Emacs was
built without a GUI toolkit, you can visit files via the menu-bar
-``File'' menu, which has a ``Visit New File'' item.
+@samp{File} menu, which has a @samp{Visit New File} item.
Each time you visit a file, Emacs automatically scans its contents
to detect what character encoding and end-of-line convention it uses,
* Customize Save:: Customizing the saving of files.
* Interlocking:: How Emacs protects against simultaneous editing
of one file by two users.
-* Shadowing: File Shadowing. Copying files to "shadows" automatically.
+* Shadowing: File Shadowing. Copying files to ``shadows'' automatically.
* Time Stamps:: Emacs can update time stamps on saved files.
@end menu
changes the buffer name correspondingly. @code{set-visited-file-name}
does not save the buffer in the newly visited file; it just alters the
records inside Emacs in case you do save later. It also marks the
-buffer as ``modified'' so that @kbd{C-x C-s} in that buffer
+buffer as modified so that @kbd{C-x C-s} in that buffer
@emph{will} save.
@kindex C-x C-w
makes a backup from the previous contents, and arranges to make
another from the newly saved contents if you save again.
+@vindex backup-directory-alist
+ You can customize the variable @code{backup-directory-alist} to
+specify that files matching certain patterns should be backed up in
+specific directories. A typical use is to add an element @code{("."
+. @var{dir})} to make all backups in the directory with absolute name
+@var{dir}. Emacs modifies the backup file names to avoid clashes
+between files with the same names originating in different
+directories. Alternatively, adding, @code{("." . ".~")} would make
+backups in the invisible subdirectory @file{.~} of the original file's
+directory. Emacs creates the directory, if necessary, to make the
+backup.
+
@menu
* Names: Backup Names. How backup files are named.
* Deletion: Backup Deletion. Emacs deletes excess numbered backups.
@node Backup Names
@subsubsection Single or Numbered Backups
+@cindex backup file names
+@cindex names of backup files
+@cindex @file{~}, in names of backup files
+@cindex tilde (@file{~}) at end of backup file name
When Emacs makes a backup file, its name is normally constructed by
appending @samp{~} to the file name being edited; thus, the backup
file for @file{eval.c} would be @file{eval.c~}.
+@cindex @file{~/.emacs.d/%backup%~}
If access control stops Emacs from writing backup files under the
usual names, it writes the backup file as @file{~/.emacs.d/%backup%~}.
Only one such file can exist, so only the most recently made such
becomes @code{nil}; if it is @samp{never} or @samp{simple}, then
@code{version-control} becomes @code{never}.
-@vindex backup-directory-alist
- You can customize the variable @code{backup-directory-alist} to
-specify that files matching certain patterns should be backed up in
-specific directories. This variable applies to both single and
-numbered backups. A typical use is to add an element @code{("."
-. @var{dir})} to make all backups in the directory with absolute name
-@var{dir}; Emacs modifies the backup file names to avoid clashes
-between files with the same names originating in different
-directories. Alternatively, adding, @code{("." . ".~")} would make
-backups in the invisible subdirectory @file{.~} of the original file's
-directory. Emacs creates the directory, if necessary, to make the
-backup.
-
@vindex make-backup-file-name-function
If you set the variable @code{make-backup-file-name-function} to
a suitable Lisp function, you can override the usual way Emacs
@code{before-save-hook} (@pxref{Hooks}). When you save the file, this
function then automatically updates the time stamp with the current
date and time. You can also use the command @kbd{M-x time-stamp} to
-update the time stamp manually. For other customizations, see the
-Custom group @code{time-stamp}. Note that the time stamp is formatted
-according to your locale setting (@pxref{Environment}).
+update the time stamp manually. By default the time stamp is
+formatted according to your locale setting (@pxref{Environment}) and
+time zone (@pxref{Time of Day,,, elisp, The Emacs Lisp Reference
+Manual}). For customizations, see the Custom group @code{time-stamp}.
@node Reverting
@section Reverting a Buffer
approximately the same part of the text as before. But if you have
made major changes, point may end up in a totally different location.
- Reverting marks the buffer as ``not modified''. It also clears the
+ Reverting marks the buffer as not modified. It also clears the
buffer's undo history (@pxref{Undo}). Thus, the reversion cannot be
undone---if you change your mind yet again, you can't use the undo
commands to bring the reverted changes back.
@cindex directory name abbreviation
@vindex directory-abbrev-alist
Sometimes, a directory is ordinarily accessed through a symbolic
-link, and you may want Emacs to preferentially show its ``linked''
+link, and you may want Emacs to preferentially show its linked
name. To do this, customize @code{directory-abbrev-alist}. Each
element in this list should have the form @code{(@var{from}
. @var{to})}, which means to replace @var{from} with @var{to} whenever
@findex compare-windows
The command @kbd{M-x compare-windows} compares the text in the
-current window with that in the next window. (For more information
-about windows in Emacs, @ref{Windows}.) Comparison starts at point in
-each window, after pushing each initial point value on the mark ring
-in its respective buffer. Then it moves point forward in each window,
-one character at a time, until it reaches characters that don't match.
+current window with that in the window that was the selected window
+before you selected the current one. (For more information about
+windows in Emacs, @ref{Windows}.) Comparison starts at point in each
+window, after pushing each initial point value on the mark ring in its
+respective buffer. Then it moves point forward in each window, one
+character at a time, until it reaches characters that don't match.
Then the command exits.
If point in the two windows is followed by non-matching text when
You can use @kbd{M-x smerge-mode} to turn on Smerge mode, a minor
mode for editing output from the @command{diff3} program. This is
typically the result of a failed merge from a version control system
-``update'' outside VC, due to conflicting changes to a file. Smerge
+update outside VC, due to conflicting changes to a file. Smerge
mode provides commands to resolve conflicts by selecting specific
changes.
read-only, you need to make it writable first. @xref{Misc Buffer}.)
Whenever you change a hunk, Diff mode attempts to automatically
correct the line numbers in the hunk headers, to ensure that the patch
-remains ``correct''. To disable automatic line number correction,
+remains correct. To disable automatic line number correction,
change the variable @code{diff-update-on-the-fly} to @code{nil}.
- Diff mode treats each hunk as an ``error message'', similar to
+ Diff mode treats each hunk as an error message, similar to
Compilation mode. Thus, you can use commands such as @kbd{C-x `} to
visit the corresponding source locations. @xref{Compilation Mode}.
only the text within the region.
@item C-c C-w
-@findex diff-refine-hunk
-Refine the current hunk so that it disregards changes in whitespace
-(@code{diff-refine-hunk}).
+@findex diff-ignore-whitespace-hunk
+Re-diff the current hunk, disregarding changes in whitespace
+(@code{diff-ignore-whitespace-hunk}).
@item C-x 4 A
@findex diff-add-change-log-entries-other-window
@cindex hard links (creation)
@kbd{M-x add-name-to-file} adds an additional name to an existing
file without removing its old name. The new name is created as a
-``hard link'' to the existing file. The new name must belong on the
+hard link to the existing file. The new name must belong on the
same file system that the file is on. On MS-Windows, this command
works only if the file resides in an NTFS file system. On MS-DOS, it
works by copying the file.
@findex insert-file-literally
@kbd{M-x insert-file-literally} is like @kbd{M-x insert-file},
-except the file is inserted ``literally'': it is treated as a sequence
+except the file is inserted literally: it is treated as a sequence
of @acronym{ASCII} characters with no special encoding or conversion,
similar to the @kbd{M-x find-file-literally} command
(@pxref{Visiting}).
and repack archives. However, you don't need these programs to look
at the archive table of contents, only to extract or manipulate the
subfiles in the archive. Details of the program names and their
-options can be set in the @samp{Archive} Customize group.
+options can be set in the @samp{Archive} Customize group
+(@pxref{Customization Groups}).
@node Remote Files
@section Remote Files
@code{recent-file-list} to a file, and @kbd{M-x recentf-edit-list}
edits it.
+@c FIXME partial-completion-mode (complete.el) is obsolete.
The @kbd{M-x ffap} command generalizes @code{find-file} with more
powerful heuristic defaults (@pxref{FFAP}), often based on the text at
point. Partial Completion mode offers other features extending
major mode, you can type @kbd{C-c C-c} (@code{image-toggle-display})
to toggle between displaying the file as an image in the Emacs buffer,
and displaying its underlying text (or raw byte) representation.
+Additionally you can type @kbd{C-c C-x} (@code{image-toggle-hex-display})
+to toggle between displaying the file as an image in the Emacs buffer,
+and displaying it in hex representation.
Displaying the file as an image works only if Emacs is compiled with
support for displaying such images. If the displayed image is wider
or taller than the frame, the usual point motion keys (@kbd{C-f},
(@code{image-previous-frame}) you can step through the individual
frames. Both commands accept a numeric prefix to step through several
frames at once. You can go to a specific frame with @kbd{F}
-(@code{image-goto-frame}). Typing @kbd{a +}
-(@code{image-increase-speed}) increases the speed of the animation,
+(@code{image-goto-frame}). Frames are indexed from 1. Typing @kbd{a
++} (@code{image-increase-speed}) increases the speed of the animation,
@kbd{a -} (@code{image-decrease-speed}) decreases it, and @kbd{a r}
(@code{image-reverse-speed}) reverses it. The command @kbd{a 0}
(@code{image-reset-speed}) resets the speed to the original value.
@code{imagemagick-types-inhibit} lists the image types which should
never be rendered using ImageMagick, regardless of the value of
@code{imagemagick-enabled-types} (the default list includes types like
-@code{C} and @code{HTML}, which ImageMagick can render as an ``image''
+@code{C} and @code{HTML}, which ImageMagick can render as an image
but Emacs should not). To disable ImageMagick entirely, change
@code{imagemagick-types-inhibit} to @code{t}.
a fileset. These commands are also available from the @samp{Filesets}
menu, where each existing fileset is represented by a submenu.
- @xref{Version Control}, for a different concept of ``filesets'':
+ @xref{Version Control}, for a different concept of filesets:
groups of files bundled together for version control operations.
Filesets of that type are unnamed, and do not persist across Emacs
sessions.