-\1f
-File: xemacs.info, Node: Transpose, Next: Fixing Case, Prev: Kill Errors, Up: Fixit
-
-Transposing Text
-================
-
-`C-t'
- Transpose two characters (`transpose-chars').
-
-`M-t'
- Transpose two words (`transpose-words').
-
-`C-M-t'
- Transpose two balanced expressions (`transpose-sexps').
-
-`C-x C-t'
- Transpose two lines (`transpose-lines').
-
- The common error of transposing two adjacent characters can be fixed
-with the `C-t' command (`transpose-chars'). Normally, `C-t' transposes
-the two characters on either side of point. When given at the end of a
-line, `C-t' transposes the last two characters on the line, rather than
-transposing the last character of the line with the newline, which
-would be useless. If you catch a transposition error right away, you
-can fix it with just `C-t'. If you catch the error later, move the
-cursor back to between the two transposed characters. If you
-transposed a space with the last character of the word before it, the
-word motion commands are a good way of getting there. Otherwise, a
-reverse search (`C-r') is often the best way. *Note Search::.
-
- `Meta-t' (`transpose-words') transposes the word before point with
-the word after point. It moves point forward over a word, dragging the
-word preceding or containing point forward as well. The punctuation
-characters between the words do not move. For example, `FOO, BAR'
-transposes into `BAR, FOO' rather than `BAR FOO,'.
-
- `C-M-t' (`transpose-sexps') is a similar command for transposing two
-expressions (*note Lists::.), and `C-x C-t' (`transpose-lines')
-exchanges lines. It works like `M-t' but in determines the division of
-the text into syntactic units differently.
-
- A numeric argument to a transpose command serves as a repeat count:
-it tells the transpose command to move the character (word, sexp, line)
-before or containing point across several other characters (words,
-sexps, lines). For example, `C-u 3 C-t' moves the character before
-point forward across three other characters. This is equivalent to
-repeating `C-t' three times. `C-u - 4 M-t' moves the word before point
-backward across four words. `C-u - C-M-t' would cancel the effect of
-plain `C-M-t'.
-
- A numeric argument of zero transposes the character (word, sexp,
-line) ending after point with the one ending after the mark (otherwise a
-command with a repeat count of zero would do nothing).
-
-\1f
-File: xemacs.info, Node: Fixing Case, Next: Spelling, Prev: Transpose, Up: Fixit
-
-Case Conversion
-===============
-
-`M-- M-l'
- Convert last word to lower case. Note that `Meta--' is
- "Meta-minus."
-
-`M-- M-u'
- Convert last word to all upper case.
-
-`M-- M-c'
- Convert last word to lower case with capital initial.
-
- A common error is to type words in the wrong case. Because of this,
-the word case-conversion commands `M-l', `M-u', and `M-c' do not move
-the cursor when used with a negative argument. As soon as you see you
-have mistyped the last word, you can simply case-convert it and
-continue typing. *Note Case::.
-
-\1f
-File: xemacs.info, Node: Spelling, Prev: Fixing Case, Up: Fixit
-
-Checking and Correcting Spelling
-================================
-
-`M-$'
- Check and correct spelling of word (`spell-word').
-
-`M-x spell-buffer'
- Check and correct spelling of each word in the buffer.
-
-`M-x spell-region'
- Check and correct spelling of each word in the region.
-
-`M-x spell-string'
- Check spelling of specified word.
-
- To check the spelling of the word before point, and optionally
-correct it, use the command `M-$' (`spell-word'). This command runs an
-inferior process containing the `spell' program to see whether the word
-is correct English. If it is not, it asks you to edit the word (in the
-minibuffer) into a corrected spelling, and then performs a
-`query-replace' to substitute the corrected spelling for the old one
-throughout the buffer.
-
- If you exit the minibuffer without altering the original spelling, it
-means you do not want to do anything to that word. In that case, the
-`query-replace' is not done.
-
- `M-x spell-buffer' checks each word in the buffer the same way that
-`spell-word' does, doing a `query-replace' for every incorrect word if
-appropriate.
-
- `M-x spell-region' is similar to `spell-buffer' but operates only on
-the region, not the entire buffer.
-
- `M-x spell-string' reads a string as an argument and checks whether
-that is a correctly spelled English word. It prints a message giving
-the answer in the echo area.
-
-\1f
-File: xemacs.info, Node: Files, Next: Buffers, Prev: Fixit, Up: Top
-
-File Handling
-*************
-
- The basic unit of stored data in Unix is the "file". To edit a file,
-you must tell Emacs to examine the file and prepare a buffer containing
-a copy of the file's text. This is called "visiting" the file. Editing
-commands apply directly to text in the buffer; that is, to the copy
-inside Emacs. Your changes appear in the file itself only when you
-"save" the buffer back into the file.
-
- In addition to visiting and saving files, Emacs can delete, copy,
-rename, and append to files, and operate on file directories.
-
-* Menu:
-
-* File Names:: How to type and edit file name arguments.
-* Visiting:: Visiting a file prepares Emacs to edit the file.
-* Saving:: Saving makes your changes permanent.
-* Reverting:: Reverting cancels all the changes not saved.
-* Auto Save:: Auto Save periodically protects against loss of data.
-* Version Control:: Version control systems (RCS and SCCS).
-* ListDir:: Listing the contents of a file directory.
-* Comparing Files:: Finding where two files differ.
-* Dired:: "Editing" a directory to delete, rename, etc.
- the files in it.
-* Misc File Ops:: Other things you can do on files.
-
-\1f
-File: xemacs.info, Node: File Names, Next: Visiting, Prev: Files, Up: Files
-
-File Names
-==========
-
- Most Emacs commands that operate on a file require you to specify the
-file name. (Saving and reverting are exceptions; the buffer knows which
-file name to use for them.) File names are specified in the minibuffer
-(*note Minibuffer::.). "Completion" is available, to make it easier to
-specify long file names. *Note Completion::.
-
- There is always a "default file name" which is used if you enter an
-empty argument by typing just <RET>. Normally the default file name is
-the name of the file visited in the current buffer; this makes it easy
-to operate on that file with any of the Emacs file commands.
-
- Each buffer has a default directory, normally the same as the
-directory of the file visited in that buffer. When Emacs reads a file
-name, the default directory is used if you do not specify a directory.
-If you specify a directory in a relative fashion, with a name that does
-not start with a slash, it is interpreted with respect to the default
-directory. The default directory of the current buffer is kept in the
-variable `default-directory', which has a separate value in every
-buffer. The value of the variable should end with a slash.
-
- For example, if the default file name is `/u/rms/gnu/gnu.tasks' then
-the default directory is `/u/rms/gnu/'. If you type just `foo', which
-does not specify a directory, it is short for `/u/rms/gnu/foo'.
-`../.login' would stand for `/u/rms/.login'. `new/foo' would stand for
-the filename `/u/rms/gnu/new/foo'.
-
- The variable `default-directory-alist' takes an alist of major modes
-and their opinions on `default-directory' as a Lisp expression to
-evaluate. A resulting value of `nil' is ignored in favor of
-`default-directory'.
-
- You can create a new directory with the function `make-directory',
-which takes as an argument a file name string. The current directory is
-displayed in the minibuffer when the function is called; you can delete
-the old directory name and supply a new directory name. For example, if
-the current directory is `/u/rms/gnu', you can delete `gnu' and type
-`oryx' and <RET> to create `/u/rms/oryx'. Removing a directory is
-similar to creating one. To remove a directory, use
-`remove-directory'; it takes one argument, a file name string.
-
- The command `M-x pwd' prints the current buffer's default directory,
-and the command `M-x cd' sets it (to a value read using the
-minibuffer). A buffer's default directory changes only when the `cd'
-command is used. A file-visiting buffer's default directory is
-initialized to the directory of the file that is visited there. If a
-buffer is created with `C-x b', its default directory is copied from
-that of the buffer that was current at the time.
-
- The default directory name actually appears in the minibuffer when
-the minibuffer becomes active to read a file name. This serves two
-purposes: it shows you what the default is, so that you can type a
-relative file name and know with certainty what it will mean, and it
-allows you to edit the default to specify a different directory. To
-inhibit the insertion of the default directory, set the variable
-`insert-default-directory' to `nil'.
-
- Note that it is legitimate to type an absolute file name after you
-enter the minibuffer, ignoring the presence of the default directory
-name. The final minibuffer contents may look invalid, but that is not
-so. *Note Minibuffer File::.
-
- `$' in a file name is used to substitute environment variables. For
-example, if you have used the shell command `setenv FOO rms/hacks' to
-set up an environment variable named `FOO', then you can use
-`/u/$FOO/test.c' or `/u/${FOO}/test.c' as an abbreviation for
-`/u/rms/hacks/test.c'. The environment variable name consists of all
-the alphanumeric characters after the `$'; alternatively, it may be
-enclosed in braces after the `$'. Note that the `setenv' command
-affects Emacs only if done before Emacs is started.
-
- To access a file with `$' in its name, type `$$'. This pair is
-converted to a single `$' at the same time variable substitution is
-performed for single `$'. The Lisp function that performs the
-substitution is called `substitute-in-file-name'. The substitution is
-performed only on filenames read as such using the minibuffer.
-