]> code.delx.au - gnu-emacs/blobdiff - man/abbrevs.texi
*** empty log message ***
[gnu-emacs] / man / abbrevs.texi
index b4dbbdee8e3dd6d8d44e580254117de005293710..e8cf2dc9c4994b54ae9e8718713d5d9ba48547f4 100644 (file)
@@ -82,6 +82,10 @@ Define a word in the buffer as an abbrev (@code{inverse-add-global-abbrev}).
 @item C-x a i l
 Define a word in the buffer as a mode-specific abbrev
 (@code{inverse-add-mode-abbrev}).
+@item M-x define-global-abbrev @key{RET} @var{abbrev} @key{RET} @var{exp} @key{RET}
+Define @var{abbrev} as an abbrev expanding into @var{exp}.
+@item M-x define-mode-abbrev @key{RET} @var{abbrev} @key{RET} @var{exp} @key{RET}
+Define @var{abbrev} as a mode-specific abbrev expanding into @var{exp}.
 @item M-x kill-all-abbrevs
 This command discards all abbrev definitions currently in effect,
 leaving a blank slate.
@@ -121,9 +125,16 @@ l}.  These commands are called ``inverse'' because they invert the
 meaning of the two text strings they use (one from the buffer and one
 read with the minibuffer).
 
+@findex define-mode-abbrev
+@findex define-global-abbrev
+  You can define an abbrev without inserting either the abbrev or its
+expansion in the buffer using the command @code{define-global-abbrev}.
+It reads two arguments---the abbrev, and its expansion.  The command
+@code{define-mode-abbrev} does likewise for a mode-specific abbrev.
+
   To change the definition of an abbrev, just define a new definition.
 When the abbrev has a prior definition, the abbrev definition commands
-ask for confirmation for replacing it.
+ask for confirmation before replacing it.
 
   To remove an abbrev definition, give a negative argument to the abbrev
 definition command: @kbd{C-u - C-x a g} or @kbd{C-u - C-x a l}.  The
@@ -212,7 +223,7 @@ once.  This command is effective even if Abbrev mode is not enabled.
 
 @table @kbd
 @item M-x list-abbrevs
-Display a list of all abbrev definitions.  With numeric argument, list
+Display a list of all abbrev definitions.  With numeric argument, list
 only local abbrevs.
 @item M-x edit-abbrevs
 Edit a list of abbrevs; you can add, alter or remove definitions.
@@ -286,26 +297,29 @@ that, when executed, define the same abbrevs that you currently have.
 @findex read-abbrev-file
 @findex quietly-read-abbrev-file
 @vindex abbrev-file-name
-  @kbd{M-x read-abbrev-file} reads a file name using the minibuffer and
-then reads the file, defining abbrevs according to the contents of the
-file.  @kbd{M-x quietly-read-abbrev-file} is the same except that it
-does not display a message in the echo area saying that it is doing its
-work; it is actually useful primarily in the @file{.emacs} file.  If an
-empty argument is given to either of these functions, they use the file
-name specified in the variable @code{abbrev-file-name}, which is by
-default @code{"~/.abbrev_defs"}.
+  @kbd{M-x read-abbrev-file} reads a file name using the minibuffer
+and then reads the file, defining abbrevs according to the contents of
+the file.  The function @code{quietly-read-abbrev-file} is similar
+except that it does not display a message in the echo area; you cannot
+invoke it interactively, and it is used primarily in the @file{.emacs}
+file.  If either of these functions is called with @code{nil} as the
+argument, it uses the file name specified in the variable
+@code{abbrev-file-name}, which is by default @code{"~/.abbrev_defs"}.
+That file is your standard abbrev definition file, and Emacs loads
+abbrevs from it automatically when it starts up.
 
 @vindex save-abbrevs
-  Emacs will offer to save abbrevs automatically if you have changed any of
-them, whenever it offers to save all files (for @kbd{C-x s} or @kbd{C-x
-C-c}).  This feature can be inhibited by setting the variable
-@code{save-abbrevs} to @code{nil}.
+  Emacs will offer to save abbrevs automatically if you have changed
+any of them, whenever it offers to save all files (for @kbd{C-x s} or
+@kbd{C-x C-c}).  It saves them in the file specified by
+@code{abbrev-file-name}.  This feature can be inhibited by setting the
+variable @code{save-abbrevs} to @code{nil}.
 
 @findex insert-abbrevs
 @findex define-abbrevs
   The commands @kbd{M-x insert-abbrevs} and @kbd{M-x define-abbrevs} are
 similar to the previous commands but work on text in an Emacs buffer.
-@kbd{M-x insert-abbrevs} inserts text into the current buffer before point,
+@kbd{M-x insert-abbrevs} inserts text into the current buffer after point,
 describing all current abbrev definitions; @kbd{M-x define-abbrevs} parses
 the entire current buffer and defines abbrevs accordingly.@refill
 
@@ -356,10 +370,12 @@ expressions.  If a buffer's name matches any of these regular
 expressions, dynamic abbrev expansion skips that buffer.
 
   A negative argument to @kbd{M-/}, as in @kbd{C-u - M-/}, says to
-search first for expansions after point, and second for expansions
-before point.  If you repeat the @kbd{M-/} to look for another
-expansion, do not specify an argument.  This tries all the expansions
-after point and then the expansions before point.
+search first for expansions after point, then other buffers, and
+consider expansions before point only as a last resort.
+
+  If you repeat the @kbd{M-/} to look for another expansion, do not
+specify an argument.  This tries all the expansions after point and
+then the expansions before point.
 
   After you have expanded a dynamic abbrev, you can copy additional
 words that follow the expansion in its original context.  Simply type
@@ -387,8 +403,8 @@ you are expanding.
 @vindex dabbrev-case-fold-search
   This feature is controlled by the variable
 @code{dabbrev-case-fold-search}.  If it is @code{t}, case is ignored in
-this search; if @code{nil}, the word and the expansion must match in
-case.  If the value of @code{dabbrev-case-fold-search} is
+this search; if it is @code{nil}, the word and the expansion must match
+in case.  If the value of @code{dabbrev-case-fold-search} is
 @code{case-fold-search}, which is true by default, then the variable
 @code{case-fold-search} controls whether to ignore case while searching
 for expansions.
@@ -401,7 +417,7 @@ pattern.
 @vindex dabbrev-case-fold-search
   The variable @code{dabbrev-case-replace} controls whether to preserve
 the case pattern of the abbrev.  If it is @code{t}, the abbrev's case
-pattern is preserved in most cases; if @code{nil}, the expansion is
+pattern is preserved in most cases; if it is @code{nil}, the expansion is
 always copied verbatim.  If the value of @code{dabbrev-case-replace} is
 @code{case-replace}, which is true by default, then the variable
 @code{case-replace} controls whether to copy the expansion verbatim.
@@ -429,3 +445,7 @@ customize dynamic abbreviation to handle optional prefixes by setting
 the variable @code{dabbrev-abbrev-skip-leading-regexp}.  Its value
 should be a regular expression that matches the optional prefix that
 dynamic abbreviation should ignore.
+
+@ignore
+   arch-tag: 638e0079-9540-48ec-9166-414083e16445
+@end ignore