207 |
@kbd{C-g}. File-name completion ignores certain filenames; for more |
@kbd{C-g}. File-name completion ignores certain filenames; for more |
208 |
about this, see @ref{Completion Options}. |
about this, see @ref{Completion Options}. |
209 |
|
|
|
@cindex file selection dialog |
|
|
When Emacs is built with a suitable GUI toolkit, commands invoked |
|
|
with the mouse or the menu bar use the toolkit's standard File |
|
|
Selection dialog instead of prompting for the file name in the |
|
|
minibuffer. On Unix and GNU/Linux platforms, Emacs does that when |
|
|
built with GTK, LessTif, and Motif toolkits; on MS-Windows, the GUI |
|
|
version does that by default. @xref{Dialog Boxes}, for info |
|
|
on customization of this. |
|
|
|
|
210 |
Your confirmation that @kbd{C-x C-f} has completed successfully is the |
Your confirmation that @kbd{C-x C-f} has completed successfully is the |
211 |
appearance of new text on the screen and a new buffer name in the mode |
appearance of new text on the screen and a new buffer name in the mode |
212 |
line. If the specified file does not exist and could not be created, or |
line. If the specified file does not exist and could not be created, or |
219 |
since you visited or saved it last. If the file has changed, a warning |
since you visited or saved it last. If the file has changed, a warning |
220 |
message is shown. @xref{Interlocking,,Simultaneous Editing}. |
message is shown. @xref{Interlocking,,Simultaneous Editing}. |
221 |
|
|
222 |
|
@vindex large-file-warning-threshold |
223 |
@cindex maximum buffer size exceeded, error message |
@cindex maximum buffer size exceeded, error message |
224 |
Since Emacs reads the visited file in its entirety, files whose size |
If you try to visit a file larger than |
225 |
is larger than the maximum Emacs buffer size (@pxref{Buffers}) cannot be |
@code{large-file-warning-threshold} (the default is 10000000, which is |
226 |
visited; if you try, Emacs will display an error message saying that the |
about 10 megabytes), Emacs will ask you for confirmation first. You |
227 |
maximum buffer size has been exceeded. |
can answer @kbd{y} to proceed with visiting the file. Note, however, |
228 |
|
that Emacs cannot visit files that are larger than the maximum Emacs |
229 |
|
buffer size, which is around 256 megabytes on 32-bit machines |
230 |
|
(@pxref{Buffers}). If you try, Emacs will display an error message |
231 |
|
saying that the maximum buffer size has been exceeded. |
232 |
|
|
233 |
|
@cindex file selection dialog |
234 |
|
On graphical terminals, there are two additional methods for |
235 |
|
visiting files. Firstly, when Emacs is built with a suitable GUI |
236 |
|
toolkit, commands invoked with the mouse (by clicking on the menu bar |
237 |
|
or tool bar) use the toolkit's standard File Selection dialog instead |
238 |
|
of prompting for the file name in the minibuffer. On Unix and |
239 |
|
GNU/Linux platforms, Emacs does that when built with GTK, LessTif, and |
240 |
|
Motif toolkits; on MS-Windows, the GUI version does that by default. |
241 |
|
For information on how to customize this, see @xref{Dialog Boxes}. |
242 |
|
|
243 |
|
Secondly, Emacs supports the ``drag and drop'' protocol on the X |
244 |
|
window system. Dropping a file into an ordinary Emacs window visits |
245 |
|
the file using that window. However, dropping a file into a window |
246 |
|
displaying a Dired buffer moves or copies the file into the displayed |
247 |
|
directory. For details, see @xref{Drag and Drop} and @xref{Misc Dired |
248 |
|
Features}. |
249 |
|
|
250 |
@cindex creating files |
@cindex creating files |
251 |
What if you want to create a new file? Just visit it. Emacs displays |
What if you want to create a new file? Just visit it. Emacs displays |
918 |
@cindex mode, Auto-Revert |
@cindex mode, Auto-Revert |
919 |
@findex global-auto-revert-mode |
@findex global-auto-revert-mode |
920 |
@findex auto-revert-mode |
@findex auto-revert-mode |
921 |
|
@findex auto-revert-tail-mode |
922 |
|
|
923 |
|
You may find it useful to have Emacs revert files automatically when |
924 |
|
they change. Three minor modes are available to do this. |
925 |
|
|
926 |
|
@kbd{M-x global-auto-revert-mode} runs Global Auto-Revert mode, |
927 |
|
which periodically checks all file buffers and reverts when the |
928 |
|
corresponding file has changed. @kbd{M-x auto-revert-mode} runs a |
929 |
|
local version, Auto-Revert mode, which applies only to the buffer in |
930 |
|
which it was activated. Auto-Revert mode can be used to ``tail'' a |
931 |
|
file, such as a system log, so that changes made to that file by other |
932 |
|
programs are continuously displayed. To do this, just move the point |
933 |
|
to the end of the buffer, and it will stay there as the file contents |
934 |
|
change. However, if you are sure that the file will only change by |
935 |
|
growing at the end, you can tail the file more efficiently using |
936 |
|
Auto-Revert Tail mode, @kbd{M-x auto-revert-tail-mode}. |
937 |
|
|
938 |
@vindex auto-revert-interval |
@vindex auto-revert-interval |
939 |
You may find it useful to have Emacs revert files automatically when |
The variable @code{auto-revert-interval} controls how often to check |
940 |
they change. Two minor modes are available to do this. In Global |
for a changed file. Since checking a remote file is too slow, these |
941 |
Auto-Revert mode, Emacs periodically checks all file buffers and |
modes do not check or revert remote files. |
|
reverts any when the corresponding file has changed. The local |
|
|
variant, Auto-Revert mode, applies only to buffers in which it was |
|
|
activated. The variable @code{auto-revert-interval} controls how |
|
|
often to check for a changed file. Since checking a remote file is |
|
|
too slow, these modes do not check or revert remote files. |
|
942 |
|
|
943 |
@node Auto Save |
@node Auto Save |
944 |
@section Auto-Saving: Protection Against Disasters |
@section Auto-Saving: Protection Against Disasters |
1250 |
|
|
1251 |
@cindex MCVS |
@cindex MCVS |
1252 |
@cindex Meta-CVS |
@cindex Meta-CVS |
1253 |
Meta-CVS is another attempt to solve problems, arising in CVS. It |
Meta-CVS is another attempt to solve problems arising in CVS. It |
1254 |
supports directory structure versioning, improved branching and |
supports directory structure versioning, improved branching and |
1255 |
merging, and use of symbolic links and meta-data in repositories. |
merging, and use of symbolic links and meta-data in repositories. |
1256 |
|
|
2864 |
@code{diff-switches}. The value of @code{diff-switches} should be a |
@code{diff-switches}. The value of @code{diff-switches} should be a |
2865 |
string; the default is @code{"-c"} to specify a context diff. |
string; the default is @code{"-c"} to specify a context diff. |
2866 |
|
|
2867 |
The buffer @samp{*diff*} has Compilation mode as its major mode, so |
@findex diff-goto-source |
2868 |
you can use @kbd{C-x `} to visit successive changed locations in the two |
After running @kbd{M-x diff}, you can use @kbd{C-x `} to visit |
2869 |
source files. You can also move to a particular hunk of changes and |
successive changed locations in the two source files, as in |
2870 |
type @key{RET} or @kbd{C-c C-c}, or click @kbd{Mouse-2} on it, to move |
Compilation mode (@pxref{Compilation}.) In the @samp{*diff*} buffer, |
2871 |
to the corresponding source location. You can also use the other |
you can move to a particular hunk of changes and type @kbd{C-c C-c} |
2872 |
special commands of Compilation mode: @key{SPC} and @key{DEL} for |
(@code{diff-goto-source}) to visit the corresponding source location. |
|
scrolling, and @kbd{M-p} and @kbd{M-n} for cursor motion. |
|
|
@xref{Compilation}. |
|
2873 |
|
|
2874 |
@findex diff-backup |
@findex diff-backup |
2875 |
The command @kbd{M-x diff-backup} compares a specified file with its most |
The command @kbd{M-x diff-backup} compares a specified file with its most |
2887 |
@ref{Windows}. |
@ref{Windows}. |
2888 |
|
|
2889 |
@vindex compare-ignore-case |
@vindex compare-ignore-case |
2890 |
|
@vindex compare-ignore-whitespace |
2891 |
With a numeric argument, @code{compare-windows} ignores changes in |
With a numeric argument, @code{compare-windows} ignores changes in |
2892 |
whitespace. If the variable @code{compare-ignore-case} is |
whitespace. If the variable @code{compare-ignore-case} is |
2893 |
non-@code{nil}, it ignores differences in case as well. |
non-@code{nil}, the comparison ignores differences in case as well. |
2894 |
|
If the variable @code{compare-ignore-whitespace} is non-nil, |
2895 |
|
@code{compare-windows} normally ignores changes in whitespace, and a |
2896 |
|
prefix argument turns that off. |
2897 |
|
|
2898 |
@findex diff-mode |
@findex diff-mode |
2899 |
@cindex diffs |
@cindex diffs |
2970 |
to be lost. If @var{old} and @var{new} are on different file systems, the |
to be lost. If @var{old} and @var{new} are on different file systems, the |
2971 |
file @var{old} is copied and deleted. |
file @var{old} is copied and deleted. |
2972 |
|
|
2973 |
|
If the argument @var{new} is just a directory name, the real new |
2974 |
|
name is in that directory, with the same non-directory component as |
2975 |
|
@var{old}. For example, @kbd{M-x rename-file RET ~/foo RET /tmp RET} |
2976 |
|
renames @file{~/foo} to @file{/tmp/foo}. The same rule applies to all |
2977 |
|
the remaining commands in this section. All of them ask for |
2978 |
|
confirmation when the new file name already exists, too. |
2979 |
|
|
2980 |
@findex add-name-to-file |
@findex add-name-to-file |
2981 |
@cindex hard links (creation) |
@cindex hard links (creation) |
2982 |
The similar command @kbd{M-x add-name-to-file} is used to add an |
The similar command @kbd{M-x add-name-to-file} is used to add an |
2983 |
additional name to an existing file without removing its old name. |
additional name to an existing file without removing its old name. |
2984 |
The new name is created as a ``hard link'' to the existing file. |
The new name is created as a ``hard link'' to the existing file. |
2985 |
The new name must belong on the same file system that the file is on. |
The new name must belong on the same file system that the file is on. |
2986 |
On Windows, this command works only if the file resides in an NTFS |
On MS-Windows, this command works only if the file resides in an NTFS |
2987 |
file system. On MS-DOS, it works by copying the file. |
file system. On MS-DOS, it works by copying the file. |
2988 |
|
|
2989 |
@findex copy-file |
@findex copy-file |
2990 |
@cindex copying files |
@cindex copying files |
2991 |
@kbd{M-x copy-file} reads the file @var{old} and writes a new file named |
@kbd{M-x copy-file} reads the file @var{old} and writes a new file |
2992 |
@var{new} with the same contents. Confirmation is required if a file named |
named @var{new} with the same contents. |
|
@var{new} already exists, because copying has the consequence of overwriting |
|
|
the old contents of the file @var{new}. |
|
2993 |
|
|
2994 |
@findex make-symbolic-link |
@findex make-symbolic-link |
2995 |
@cindex symbolic links (creation) |
@cindex symbolic links (creation) |
2996 |
@kbd{M-x make-symbolic-link} reads two file names @var{target} and |
@kbd{M-x make-symbolic-link} reads two file names @var{target} and |
2997 |
@var{linkname}, then creates a symbolic link named @var{linkname}, which |
@var{linkname}, then creates a symbolic link named @var{linkname}, |
2998 |
points at @var{target}. The effect is that future attempts to open file |
which points at @var{target}. The effect is that future attempts to |
2999 |
@var{linkname} will refer to whatever file is named @var{target} at the |
open file @var{linkname} will refer to whatever file is named |
3000 |
time the opening is done, or will get an error if the name @var{target} is |
@var{target} at the time the opening is done, or will get an error if |
3001 |
not in use at that time. This command does not expand the argument |
the name @var{target} is nonexistent at that time. This command does |
3002 |
@var{target}, so that it allows you to specify a relative name |
not expand the argument @var{target}, so that it allows you to specify |
3003 |
as the target of the link. |
a relative name as the target of the link. |
3004 |
|
|
3005 |
Confirmation is required when creating the link if @var{linkname} is |
Not all systems support symbolic links; on systems that don't |
3006 |
in use. Note that not all systems support symbolic links; on systems |
support them, this command is not defined. |
|
that don't support them, this command is not defined. |
|
3007 |
|
|
3008 |
@node Compressed Files |
@node Compressed Files |
3009 |
@section Accessing Compressed Files |
@section Accessing Compressed Files |