File:  [Local Repository] / gnujdoc / emacs-20.6 / abbrevs-ja.texi
Revision 1.1: download - view: text, annotated - select for diffs
Wed Apr 26 06:42:33 2000 UTC (20 years, 6 months ago) by hayashi
Branches: MAIN
CVS tags: HEAD
New files

    1: @c =============================================================
    2: @c = 元 翻 訳: 粕川正充@お茶の水女子大学
    3: @c = 加筆修正: 大木敦雄@大塚.筑波大学 = 1998/11/25
    4: @c =============================================================
    5: @c This is part of the Emacs manual.
    6: @c Copyright (C) 1985, 86, 87, 93, 94, 95, 1997 Free Software Foundation, Inc.
    7: @c See file emacs.texi for copying conditions.
    8: @node Abbrevs, Picture, Building, Top
    9: @c @chapter Abbrevs
   10: @chapter 略語の利用法
   11: @c @cindex abbrevs
   12: @cindex 略語
   13: @c @cindex expansion (of abbrevs)
   14: @cindex 略語展開
   15: 
   16: @c   A defined @dfn{abbrev} is a word which @dfn{expands}, if you insert
   17: @c it, into some different text.  Abbrevs are defined by the user to expand
   18: @c in specific ways.  For example, you might define @samp{foo} as an abbrev
   19: @c expanding to @samp{find outer otter}.  Then you would be able to insert
   20: @c @samp{find outer otter } into the buffer by typing @kbd{f o o
   21: @c @key{SPC}}.
   22: 定義済みの略語(abbrev)とは、
   23: 挿入時に別のテキストに展開される単語のことです。
   24: 略語を定義するときに、それをどう展開するか指定します。
   25: たとえば、@samp{foo}を略語として、
   26: @samp{find outer otter}に展開すると定義したとします。
   27: すると、@kbd{f o o @key{SPC}}と打鍵すれば
   28: バッファには@samp{find outer otter }
   29: @footnote{【訳注】
   30: 展開を引き起こした@key{SPC}も挿入されることに注意。}
   31: が挿入されます。
   32: 
   33: @c   A second kind of abbreviation facility is called @dfn{dynamic abbrev
   34: @c expansion}.  You use dynamic abbrev expansion with an explicit command
   35: @c to expand the letters in the buffer before point by looking for other
   36: @c words in the buffer that start with those letters.  @xref{Dynamic
   37: @c Abbrevs}.
   38: 略語の別な形に、@dfn{動的略語展開}(dynamic abbrev expansion)があります。
   39: 動的略語展開とは、バッファ中のポイントのまえにある文字列を
   40: バッファ内にあるその文字列で始まる既存の単語に展開することで、
   41: 陽にコマンドを実行して行います。
   42: @xref{Dynamic Abbrevs}。
   43: 
   44: @menu
   45: * Abbrev Concepts::   Fundamentals of defined abbrevs.
   46: * Defining Abbrevs::  Defining an abbrev, so it will expand when typed.
   47: * Expanding Abbrevs:: Controlling expansion: prefixes, canceling expansion.
   48: * Editing Abbrevs::   Viewing or editing the entire list of defined abbrevs.
   49: * Saving Abbrevs::    Saving the entire list of abbrevs for another session.
   50: * Dynamic Abbrevs::   Abbreviations for words already in the buffer.
   51: * Dabbrev Customization:: What is a word, for dynamic abbrevs.  Case handling.
   52: @end menu
   53: 
   54: @node Abbrev Concepts, Defining Abbrevs, , Abbrevs
   55: @c @section Abbrev Concepts
   56: @section 略語の考え方
   57: 
   58: @c   An @dfn{abbrev} is a word which has been defined to @dfn{expand} into
   59: @c a specified @dfn{expansion}.  When you insert a word-separator character
   60: @c following the abbrev, that expands the abbrev---replacing the abbrev
   61: @c with its expansion.  For example, if @samp{foo} is defined as an abbrev
   62: @c expanding to @samp{find outer otter}, then you can insert @samp{find
   63: @c outer otter.} into the buffer by typing @kbd{f o o .}.
   64: 略語とは、あらかじめどう@dfn{展開}するか定義された単語のことです。
   65: 略語に続けて、空白、タブ、ピリオドなどの単語の区切り文字を入力すると、
   66: 略語は展開されて展開形に置き換わります。
   67: たとえば、略語@samp{foo}を展開形@samp{find outer otter}に展開するように
   68: 定義しておけば、@kbd{f o o .}と打鍵すると
   69: @samp{find outer otter.}をバッファに挿入できます。
   70: 
   71: @findex abbrev-mode
   72: @vindex abbrev-mode
   73: @c @cindex Abbrev mode
   74: @cindex 略語モード(Abbrev mode)
   75: @c @cindex mode, Abbrev
   76: @cindex モード、Abbrev
   77: @c   Abbrevs expand only when Abbrev mode (a minor mode) is enabled.
   78: @c Disabling Abbrev mode does not cause abbrev definitions to be forgotten,
   79: @c but they do not expand until Abbrev mode is enabled again.  The command
   80: @c @kbd{M-x abbrev-mode} toggles Abbrev mode; with a numeric argument, it
   81: @c turns Abbrev mode on if the argument is positive, off otherwise.
   82: @c @xref{Minor Modes}.  @code{abbrev-mode} is also a variable; Abbrev mode is
   83: @c on when the variable is non-@code{nil}.  The variable @code{abbrev-mode}
   84: @c automatically becomes local to the current buffer when it is set.
   85: 略語は、略語(abbrev)モード(マイナモード)がオンのときにだけ展開されます。
   86: 略語(abbrev)モードをオフにしても定義した略語が消えてしまうわけではなく、
   87: つぎにオンにしたときに同じ定義をふたたび使えます。
   88: コマンド@kbd{M-x abbrev-mode}でこのモードのオン/オフをトグル(切り替えが)
   89: できます。
   90: また、数引数を指定した場合、
   91: 引数が正のときには略語(abbrev)モードはオンになり、
   92: それ以外のときにはオフになります。
   93: @xref{Minor Modes}。
   94: @code{abbrev-mode}は変数でもあります。
   95: この変数が@code{nil}以外のときには略語(abbrev)モードはオンです。
   96: この変数に値を設定すると、自動的にカレントバッファに
   97: ローカルな変数になります。
   98: 
   99: @c   Abbrev definitions can be @dfn{mode-specific}---active only in one major
  100: @c mode.  Abbrevs can also have @dfn{global} definitions that are active in
  101: @c all major modes.  The same abbrev can have a global definition and various
  102: @c mode-specific definitions for different major modes.  A mode-specific
  103: @c definition for the current major mode overrides a global definition.
  104: 略語定義は@dfn{モードに固有}にできます。
  105: つまり、あるメジャーモードのときにだけ働くように定義できます。
  106: 略語は@dfn{グローバル}にも定義でき、
  107: そのときはすべてのメジャーモードで使えます。
  108: 同じ略語に、グローバルな定義と、さまざまなメジャーモードに固有な定義とを
  109: 持たせることができます。
  110: あるメジャーモードに固有な定義は、グローバルな定義に優先します。
  111: 
  112: @c   Abbrevs can be defined interactively during the editing session.  Lists
  113: @c of abbrev definitions can also be saved in files and reloaded in later
  114: @c sessions.  Some users keep extensive lists of abbrevs that they load in
  115: @c every session.
  116: 略語は、編集作業中に対話的に定義できます。
  117: 略語の定義一覧を、あとで使うためにファイルに保存することもできます。
  118: 大量の略語定義をセッションごとにロードする人もいます。
  119: 
  120: @node Defining Abbrevs, Expanding Abbrevs, Abbrev Concepts, Abbrevs
  121: @c @section Defining Abbrevs
  122: @section 略語の定義方法
  123: 
  124: @table @kbd
  125: @item C-x a g
  126: @c Define an abbrev, using one or more words before point as its expansion
  127: @c (@code{add-global-abbrev}).
  128: ポイントのまえの単語を展開形として、略語を定義する。
  129: (@code{add-global-abbrev})。
  130: @item C-x a l
  131: @c Similar, but define an abbrev specific to the current major mode
  132: @c (@code{add-mode-abbrev}).
  133: 上と同様。
  134: ただし、現在のメジャーモードに固有な略語を定義する。
  135: (@code{add-mode-abbrev})。
  136: @item C-x a i g
  137: @c Define a word in the buffer as an abbrev (@code{inverse-add-global-abbrev}).
  138: バッファ中の1単語を略語として定義する。
  139: (@code{inverse-add-global-abbrev})。
  140: @item C-x a i l
  141: @c Define a word in the buffer as a mode-specific abbrev
  142: @c (@code{inverse-add-mode-abbrev}).
  143: バッファ中の1単語をモードに固有な略語として定義する。
  144: (@code{inverse-add-mode-abbrev})。
  145: @item M-x kill-all-abbrevs
  146: @c This command discards all abbrev definitions currently in effect,
  147: @c leaving a blank slate.
  148: このコマンドは現在有効なすべての略語定義を抹消し空にする。
  149: @end table
  150: 
  151: @kindex C-x a g
  152: @findex add-global-abbrev
  153: @c   The usual way to define an abbrev is to enter the text you want the
  154: @c abbrev to expand to, position point after it, and type @kbd{C-x a g}
  155: @c (@code{add-global-abbrev}).  This reads the abbrev itself using the
  156: @c minibuffer, and then defines it as an abbrev for one or more words before
  157: @c point.  Use a numeric argument to say how many words before point should be
  158: @c taken as the expansion.  For example, to define the abbrev @samp{foo} as
  159: @c mentioned above, insert the text @samp{find outer otter} and then type
  160: @c @kbd{C-u 3 C-x a g f o o @key{RET}}.
  161: 略語を定義する普通の方法は、
  162: まず、略語に置き換わってほしい展開形のテキストを入力し、
  163: つぎにその直後にポイントをもっていき、
  164: @kbd{C-x a g}(@code{add-global-abbrev})と打鍵します。
  165: すると、ミニバッファを用いて略語を読み取り、
  166: ポイントの直前の単語(群)に対する略語として登録します。
  167: 展開形として用いる単語の個数は、数引数で指定します。
  168: たとえば、略語@samp{foo}をまえのように定義するには、
  169: テキスト@samp{find outer otter}を挿入し、
  170: 続いて@kbd{C-u 3 C-x a g f o o @key{RET}}と打鍵します。
  171: 
  172: @c   An argument of zero to @kbd{C-x a g} means to use the contents of the
  173: @c region as the expansion of the abbrev being defined.
  174: @kbd{C-x a g}に数引数として0を指定すると、
  175: 展開形はリージョンの内容になります。
  176: 
  177: @kindex C-x a l
  178: @findex add-mode-abbrev
  179: @c   The command @kbd{C-x a l} (@code{add-mode-abbrev}) is similar, but
  180: @c defines a mode-specific abbrev.  Mode-specific abbrevs are active only in a
  181: @c particular major mode.  @kbd{C-x a l} defines an abbrev for the major mode
  182: @c in effect at the time @kbd{C-x a l} is typed.  The arguments work the same
  183: @c as for @kbd{C-x a g}.
  184: コマンド@kbd{C-x a l}(@code{add-mode-abbrev})も同様ですが、
  185: 特定のモードに固有な定義になります。
  186: モードに固有な略語は、特定のメジャーモードの中だけで有効です。
  187: @kbd{C-x a l}は、@kbd{C-x a l}と打鍵したときのメジャーモードに対する
  188: 略語を定義します。
  189: 引数の意味は@kbd{C-x a g}と同じです。
  190: 
  191: @kindex C-x a i g
  192: @findex inverse-add-global-abbrev
  193: @kindex C-x a i l
  194: @findex inverse-add-mode-abbrev
  195: @c   If the text already in the buffer is the abbrev, rather than its
  196: @c expansion, use command @kbd{C-x a i g}
  197: @c (@code{inverse-add-global-abbrev}) instead of @kbd{C-x a g}, or use
  198: @c @kbd{C-x a i l} (@code{inverse-add-mode-abbrev}) instead of @kbd{C-x a
  199: @c l}.  These commands are called ``inverse'' because they invert the
  200: @c meaning of the two text strings they use (one from the buffer and one
  201: @c read with the minibuffer).
  202: すでにバッファ内にあるテキストを略語として使いたい場合には、
  203: @kbd{C-x a g}のかわりにコマンド@kbd{C-x a i g}
  204: (@code{inverse-add-global-abbrev})、あるいは、
  205: @kbd{C-x a l}のかわりにコマンド@kbd{C-x a i l}
  206: (@code{inverse-add-mode-abbrev})を使います。
  207: これらは『逆さ』(inverse)コマンドと呼ばれます。
  208: というのは、これらのコマンドで使う
  209: (バッファにあるものとミニバッファから読むものの)2つの文字列
  210: の用途が逆さだからです。
  211: 
  212: @c   To change the definition of an abbrev, just define a new definition.
  213: @c When the abbrev has a prior definition, the abbrev definition commands
  214: @c ask for confirmation for replacing it.
  215: 略語の定義を変更するには、単に新たに定義してください。
  216: 略語がすでに定義されていると、
  217: 略語定義コマンドは置き換えてよいかどうかを確認してきます。
  218: 
  219: @c   To remove an abbrev definition, give a negative argument to the abbrev
  220: @c definition command: @kbd{C-u - C-x a g} or @kbd{C-u - C-x a l}.  The
  221: @c former removes a global definition, while the latter removes a
  222: @c mode-specific definition.
  223: 略語の定義を削除するには、略語定義コマンドに負の数引数を指定します。
  224: @kbd{C-u - C-x a g}や@kbd{C-u - C-x a l}のようにします。
  225: 前者はグローバルな定義を、後者はモードに固有な定義を削除します。
  226: 
  227: @findex kill-all-abbrevs
  228: @c   @kbd{M-x kill-all-abbrevs} removes all the abbrev definitions there
  229: @c are, both global and local.
  230: @kbd{M-x kill-all-abbrevs} は、グローバルとローカルのすべての略語定義を
  231: 削除します。
  232: 
  233: @node Expanding Abbrevs, Editing Abbrevs, Defining Abbrevs, Abbrevs
  234: @c @section Controlling Abbrev Expansion
  235: @section 略語展開の制御
  236: 
  237: @c   An abbrev expands whenever it is present in the buffer just before
  238: @c point and you type a self-inserting whitespace or punctuation character
  239: @c (@key{SPC}, comma, etc.@:).  More precisely, any character that is not a
  240: @c word constituent expands an abbrev, and any word-constituent character
  241: @c can be part of an abbrev.  The most common way to use an abbrev is to
  242: @c insert it and then insert a punctuation character to expand it.
  243: ポイントの直前に略語があるときに白文字や区切り文字(@key{SPC}、コンマなど)
  244: を打鍵すると、略語はつねに展開されます。
  245: より正確には、英単語の構成文字以外のどんな文字でも略語展開は起こり、
  246: 英単語の構成文字の任意の組み合わせを略語に使用できます。
  247: 略語の通常の使い方は、略語を入力してから区切り文字を入力して
  248: 展開を行わせるという方法です。
  249: 
  250: @vindex abbrev-all-caps
  251: @c   Abbrev expansion preserves case; thus, @samp{foo} expands into @samp{find
  252: @c outer otter}; @samp{Foo} into @samp{Find outer otter}, and @samp{FOO} into
  253: @c @samp{FIND OUTER OTTER} or @samp{Find Outer Otter} according to the
  254: @c variable @code{abbrev-all-caps} (a non-@code{nil} value chooses the first
  255: @c of the two expansions).
  256: 略語展開では大文字小文字を保存します。
  257: したがって、
  258: @samp{foo}は@samp{find outer otter}に、
  259: @samp{Foo}は@samp{Find outer otter}に展開されます。
  260: また、変数@code{abbrev-all-caps}に応じて、@samp{FOO}は
  261: (変数の値が@code{nil}以外のときは)
  262: @samp{FIND OUTER OTTER}、あるいは、@samp{Find Outer Otter}に展開されます
  263: 
  264: @c   These commands are used to control abbrev expansion:
  265: 以下は略語展開を制御するために使うコマンドです。
  266: 
  267: @table @kbd
  268: @item M-'
  269: @c Separate a prefix from a following abbrev to be expanded
  270: @c (@code{abbrev-prefix-mark}).
  271: これまで入力した部分を
  272: これから入力する略語から分離する。
  273: @item C-x a e
  274: @findex expand-abbrev
  275: @c Expand the abbrev before point (@code{expand-abbrev}).
  276: @c This is effective even when Abbrev mode is not enabled.
  277: ポイントの直前の略語を展開する(@code{expand-abbrev})。
  278: このコマンドは略語(abbrev)モードがオンでなくても働く。
  279: @item M-x expand-region-abbrevs
  280: @c Expand some or all abbrevs found in the region.
  281: リージョン中のいくつかの、あるいはすべての略語を展開する。
  282: @end table
  283: 
  284: @kindex M-'
  285: @findex abbrev-prefix-mark
  286: @c   You may wish to expand an abbrev with a prefix attached; for example,
  287: @c if @samp{cnst} expands into @samp{construction}, you might want to use
  288: @c it to enter @samp{reconstruction}.  It does not work to type
  289: @c @kbd{recnst}, because that is not necessarily a defined abbrev.  What
  290: @c you can do is use the command @kbd{M-'} (@code{abbrev-prefix-mark}) in
  291: @c between the prefix @samp{re} and the abbrev @samp{cnst}.  First, insert
  292: @c @samp{re}.  Then type @kbd{M-'}; this inserts a hyphen in the buffer to
  293: @c indicate that it has done its work.  Then insert the abbrev @samp{cnst};
  294: @c the buffer now contains @samp{re-cnst}.  Now insert a non-word character
  295: @c to expand the abbrev @samp{cnst} into @samp{construction}.  This
  296: @c expansion step also deletes the hyphen that indicated @kbd{M-'} had been
  297: @c used.  The result is the desired @samp{reconstruction}.
  298: 接頭辞が付いた略語を展開したい場合もあるでしょう。
  299: 略語@samp{cnst}は@samp{construction}に展開されるとして、
  300: @samp{reconstruction}と入力するためにこの略語を使いたいとします。
  301: @samp{recnst}と打鍵してもだめです。
  302: というのは、@samp{recnst}は定義済みの略語ではないからです。
  303: ではどうすればよいかというと、
  304: 接頭辞@samp{re}と略語@samp{cnst}のあいだでコマンド@kbd{M-'}
  305: (@code{abbrev-prefix-mark})を使うのです。
  306: まず@samp{re}と打ち込みます。
  307: 続いて@kbd{M-'}と打鍵します。
  308: するとバッファにハイフン(@kbd{-})が挿入され、切れ目が入ったことを示します。
  309: それから略語@samp{cnst}を入力します。
  310: バッファには@samp{re-cnst}と入っています。
  311: ここで単語構成文字以外の文字を打ち込めば、
  312: 略語@samp{cnst}が@samp{construction}に展開されます。
  313: 展開時には@kbd{M-'}が挿入したハイフン(@kbd{-})は削除されます。
  314: 結果は、望みどおりの@samp{reconstruction}です。
  315: 
  316: @c   If you actually want the text of the abbrev in the buffer, rather than
  317: @c its expansion, you can accomplish this by inserting the following
  318: @c punctuation with @kbd{C-q}.  Thus, @kbd{foo C-q ,} leaves @samp{foo,} in
  319: @c the buffer.
  320: もし、略語を展開しないでそのまま残しておきたい場合には、
  321: @kbd{C-q}に続けて区切り文字を入れます。
  322: つまり、@kbd{foo C-q ,}とすると、バッファには@samp{foo,}のまま残ります。
  323: 
  324: @findex unexpand-abbrev
  325: @c   If you expand an abbrev by mistake, you can undo the expansion and
  326: @c bring back the abbrev itself by typing @kbd{C-_} to undo (@pxref{Undo}).
  327: @c This also undoes the insertion of the non-word character that expanded
  328: @c the abbrev.  If the result you want is the terminating non-word
  329: @c character plus the unexpanded abbrev, you must reinsert the terminating
  330: @c character, quoting it with @kbd{C-q}.  You can also use the command
  331: @c @kbd{M-x unexpand-abbrev} to cancel the last expansion without
  332: @c deleting the terminating character.
  333: まちがって略語を展開してしまった場合には、
  334: @kbd{C-_}(@pxref{Undo})と打鍵すれば、展開をアンドゥし略語に戻せます。
  335: このとき略語展開を引き起こした区切り文字も削除されます。
  336: 略語を展開せずに区切り文字とともに入力したいならば、
  337: 区切り文字を@kbd{C-q}でクォートして挿入します。
  338: 区切り文字を削除せずに直前に展開したものを略語に戻すには、
  339: コマンド@kbd{M-x unexpand-abbrev}を使うこともできます。
  340: 
  341: @findex expand-region-abbrevs
  342: @c   @kbd{M-x expand-region-abbrevs} searches through the region for defined
  343: @c abbrevs, and for each one found offers to replace it with its expansion.
  344: @c This command is useful if you have typed in text using abbrevs but forgot
  345: @c to turn on Abbrev mode first.  It may also be useful together with a
  346: @c special set of abbrev definitions for making several global replacements at
  347: @c once.  This command is effective even if Abbrev mode is not enabled.
  348: @kbd{M-x expand-region-abbrevs} は、リージョン全体にわたって定義済みの略語を
  349: 探し、みつかったそれぞれについてそれを展開するかを聞いてきます。
  350: このコマンドは、略語(abbrev)モードをオンにし忘れて略語を用いた
  351: テキストを入力してしまったときに便利です。
  352: あるいは、特別な略語定義一式を用いて
  353: 一度に全体を置き換えるときにも便利です。
  354: このコマンドは略語(abbrev)モードがオンでなくても使えます。
  355: 
  356: @c   Expanding an abbrev runs the hook @code{pre-abbrev-expand-hook}
  357: @c (@pxref{Hooks}).
  358: 略語を展開するときには、フック@code{pre-abbrev-expand-hook}
  359: (@pxref{Hooks})が実行されます。
  360: 
  361: @need 1500
  362: @node Editing Abbrevs, Saving Abbrevs, Expanding Abbrevs, Abbrevs
  363: @c @section Examining and Editing Abbrevs
  364: @section 略語の表示と編集
  365: 
  366: @table @kbd
  367: @item M-x list-abbrevs
  368: @c Display a list of all abbrev definitions.
  369: すべての略語定義を表示する。
  370: @item M-x edit-abbrevs
  371: @c Edit a list of abbrevs; you can add, alter or remove definitions.
  372: 略語の一覧を編集する。
  373: 定義を追加、変更、削除できる。
  374: @end table
  375: 
  376: @findex list-abbrevs
  377: @c   The output from @kbd{M-x list-abbrevs} looks like this:
  378: @kbd{M-x list-abbrevs}の出力はつぎのようになります。
  379: 
  380: @example
  381: (lisp-mode-abbrev-table)
  382: "dk"	       0    "define-key"
  383: (global-abbrev-table)
  384: "dfn"	       0    "definition"
  385: @end example
  386: 
  387: @noindent
  388: @c (Some blank lines of no semantic significance, and some other abbrev
  389: @c tables, have been omitted.)
  390: (空行には意味はない。
  391: また、いくつかのモードの略語表は省略した。)
  392: 
  393: @c   A line containing a name in parentheses is the header for abbrevs in a
  394: @c particular abbrev table; @code{global-abbrev-table} contains all the global
  395: @c abbrevs, and the other abbrev tables that are named after major modes
  396: @c contain the mode-specific abbrevs.
  397: 括弧で括られた名前から成る行は、特定モードの略語表のヘッダです。
  398: @code{global-abbrev-table}には、グローバルな略語定義が入っています。
  399: また、メジャーモード名からとったそれ以外の名前の略語表には、
  400: モードに固有な略語が入っています。
  401: 
  402: @c   Within each abbrev table, each nonblank line defines one abbrev.  The
  403: @c word at the beginning of the line is the abbrev.  The number that
  404: @c follows is the number of times the abbrev has been expanded.  Emacs
  405: @c keeps track of this to help you see which abbrevs you actually use, so
  406: @c that you can eliminate those that you don't use often.  The string at
  407: @c the end of the line is the expansion.
  408: 各略語表では、空でない各行が1つの略語を定義します。
  409: 行の先頭の単語は略語です。
  410: つぎに続く数字はこの略語を展開した回数です。
  411: Emacsは、略語が実際にどれだけ使われているか数えていて、
  412: あまり使わない定義を削除できるようにしています。
  413: 行の最後の文字列が展開形です。
  414: 
  415: @findex edit-abbrevs
  416: @c @kindex C-c C-c @r{(Edit Abbrevs)}
  417: @kindex C-c C-c @r{(略語編集)}
  418: @c   @kbd{M-x edit-abbrevs} allows you to add, change or kill abbrev
  419: @c definitions by editing a list of them in an Emacs buffer.  The list has
  420: @c the same format described above.  The buffer of abbrevs is called
  421: @c @samp{*Abbrevs*}, and is in Edit-Abbrevs mode.  Type @kbd{C-c C-c} in
  422: @c this buffer to install the abbrev definitions as specified in the
  423: @c buffer---and delete any abbrev definitions not listed.
  424: @kbd{M-x edit-abbrevs}により、Emacsバッファ内の略語一覧を編集することで
  425: 略語定義の追加、変更、削除を行えます。
  426: 一覧の形式は上で述べたものと同じです。
  427: このバッファは@samp{*Abbrevs*}と呼ばれ、
  428: 略語編集(edit-abbrevs)モードになっています。
  429: このバッファで@kbd{C-c C-c}と打鍵すると、
  430: バッファで指定したように略語定義が登録され、
  431: バッファにない略語定義は削除されます。
  432: 
  433: @c   The command @code{edit-abbrevs} is actually the same as
  434: @c @code{list-abbrevs} except that it selects the buffer @samp{*Abbrevs*}
  435: @c whereas @code{list-abbrevs} merely displays it in another window.
  436: コマンド@code{edit-abbrevs}は実際には@code{list-abbrevs}と同ですが、
  437: 前者はバッファ@samp{*Abbrevs*}を選択するのに対し、
  438: 後者はバッファを別のウィンドウに表示するだけです。
  439: 
  440: @node Saving Abbrevs, Dynamic Abbrevs, Editing Abbrevs, Abbrevs
  441: @c @section Saving Abbrevs
  442: @section 略語の保存
  443: 
  444: @c   These commands allow you to keep abbrev definitions between editing
  445: @c sessions.
  446: 以下のコマンドは、編集セッション間で略語定義を保存するためのものです。
  447: 
  448: @table @kbd
  449: @item M-x write-abbrev-file @key{RET} @var{file} @key{RET}
  450: @c Write a file @var{file} describing all defined abbrevs.
  451: ファイル@var{file}にすべての略語定義を書き出す。
  452: @item M-x read-abbrev-file @key{RET} @var{file} @key{RET}
  453: @c Read the file @var{file} and define abbrevs as specified therein.
  454: ファイル@var{file}から略語定義を読み込み、その指定どおりに定義する。
  455: @item M-x quietly-read-abbrev-file @key{RET} @var{file} @key{RET}
  456: @c Similar but do not display a message about what is going on.
  457: 上と同様だが、処理経過を表示しない。
  458: @item M-x define-abbrevs
  459: @c Define abbrevs from definitions in current buffer.
  460: カレントバッファ内の定義で略語を定義する。
  461: @item M-x insert-abbrevs
  462: @c Insert all abbrevs and their expansions into current buffer.
  463: すべての略語とその展開形をカレントバッファに挿入する。
  464: @end table
  465: 
  466: @findex write-abbrev-file
  467: @c   @kbd{M-x write-abbrev-file} reads a file name using the minibuffer and
  468: @c then writes a description of all current abbrev definitions into that
  469: @c file.  This is used to save abbrev definitions for use in a later
  470: @c session.  The text stored in the file is a series of Lisp expressions
  471: @c that, when executed, define the same abbrevs that you currently have.
  472: @kbd{M-x write-abbrev-file}は、ミニバッファからファイル名を読み取り、
  473: そのファイルにすべての略語定義情報を書き出します。
  474: このコマンドは、
  475: 以後のセッションで使うために略語定義を保存するために使います。
  476: ファイルに保存されるテキストは一連のLisp式であり、
  477: これらの式を実行すると、現状と同じ略語が定義されます。
  478: 
  479: @findex read-abbrev-file
  480: @findex quietly-read-abbrev-file
  481: @vindex abbrev-file-name
  482: @c   @kbd{M-x read-abbrev-file} reads a file name using the minibuffer and
  483: @c then reads the file, defining abbrevs according to the contents of the
  484: @c file.  @kbd{M-x quietly-read-abbrev-file} is the same except that it
  485: @c does not display a message in the echo area saying that it is doing its
  486: @c work; it is actually useful primarily in the @file{.emacs} file.  If an
  487: @c empty argument is given to either of these functions, they use the file
  488: @c name specified in the variable @code{abbrev-file-name}, which is by
  489: @c default @code{"~/.abbrev_defs"}.
  490: @kbd{M-x read-abbrev-file}は、ミニバッファからファイル名を読み取り、
  491: そのファイルを読み込んでファイルの内容に従って略語を定義します。
  492: @kbd{M-x quietly-read-abbrev-file}も同じですが、
  493: 現在何が進行しているかをエコー領域に表示しません。
  494: このコマンドは、@file{.emacs}ファイルで使うことに主眼があります。
  495: どちらのコマンドも、空の引数を指定すると
  496: 変数@code{abbrev-file-name}に指定したファイル名を使います。
  497: この変数のデフォルトは@code{"~/.abbrev_defs"}です。
  498: 
  499: @vindex save-abbrevs
  500: @c   Emacs will offer to save abbrevs automatically if you have changed any of
  501: @c them, whenever it offers to save all files (for @kbd{C-x s} or @kbd{C-x
  502: @c C-c}).  This feature can be inhibited by setting the variable
  503: @c @code{save-abbrevs} to @code{nil}.
  504: Emacsは、略語定義を変更してあると自動的に略語定義を保存するかどうか、
  505: (@kbd{C-x s}や@kbd{C-x C-c}などで)すべてのファイルを保存するかどうか
  506: 問い合わせるときに同時に聞いてきます。
  507: この機能は、変数@code{save-abbrevs}の値を@code{nil}にすると禁止できます。
  508: 
  509: @findex insert-abbrevs
  510: @findex define-abbrevs
  511: @c   The commands @kbd{M-x insert-abbrevs} and @kbd{M-x define-abbrevs} are
  512: @c similar to the previous commands but work on text in an Emacs buffer.
  513: @c @kbd{M-x insert-abbrevs} inserts text into the current buffer before point,
  514: @c describing all current abbrev definitions; @kbd{M-x define-abbrevs} parses
  515: @c the entire current buffer and defines abbrevs accordingly.@refill
  516: コマンド@kbd{M-x insert-abbrevs}と@kbd{M-x define-abbrevs}は、
  517: 上で述べたコマンドと同様ですが、
  518: Emacsバッファ内のテキストに作用します。
  519: @kbd{M-x insert-abbrevs}は、カレントバッファのポイントの直前に
  520: すべての略語定義を記述したテキストを挿入します。
  521: @kbd{M-x define-abbrevs}は、
  522: カレントバッファ全体を解析し、その内容に従って略語を定義します。
  523: 
  524: @node Dynamic Abbrevs, Dabbrev Customization, Saving Abbrevs, Abbrevs
  525: @c @section Dynamic Abbrev Expansion
  526: @section 動的略語展開
  527: 
  528: @c   The abbrev facility described above operates automatically as you insert
  529: @c text, but all abbrevs must be defined explicitly.  By contrast,
  530: @c @dfn{dynamic abbrevs} allow the meanings of abbrevs to be determined
  531: @c automatically from the contents of the buffer, but dynamic abbrev expansion
  532: @c happens only when you request it explicitly.
  533: これまでに述べてきた略語の機能は、テキストを挿入するときに自動的に働きますが、
  534: すべての略語を陽に登録しておく必要があります。
  535: 一方、@dfn{動的略語}(dynamic abbrevs)は、
  536: バッファの内容に基づいて略語の展開形を自動的に決定することができます。
  537: ただし、陽に指示したときだけ、動的略語展開を行います。
  538: 
  539: @kindex M-/
  540: @kindex C-M-/
  541: @findex dabbrev-expand
  542: @findex dabbrev-completion
  543: @table @kbd
  544: @item M-/
  545: @c Expand the word in the buffer before point as a @dfn{dynamic abbrev},
  546: @c by searching in the buffer for words starting with that abbreviation
  547: @c (@code{dabbrev-expand}).
  548: バッファのポイントの直前の単語を@dfn{動的略語}(dynamic abbrev)として、
  549: その略語で始まる単語をバッファ内から探索し展開する
  550: (@code{dabbrev-expand})。
  551: 
  552: @item C-M-/
  553: @c Complete the word before point as a dynamic abbrev
  554: @c (@code{dabbrev-completion}).
  555: ポイントの直前の単語を動的略語として補完する
  556: (@code{dabbrev-completion})。
  557: @end table
  558: 
  559: @vindex dabbrev-limit
  560: @c   For example, if the buffer contains @samp{does this follow } and you
  561: @c type @kbd{f o M-/}, the effect is to insert @samp{follow} because that
  562: @c is the last word in the buffer that starts with @samp{fo}.  A numeric
  563: @c argument to @kbd{M-/} says to take the second, third, etc.@: distinct
  564: @c expansion found looking backward from point.  Repeating @kbd{M-/}
  565: @c searches for an alternative expansion by looking farther back.  After
  566: @c scanning all the text before point, it searches the text after point.
  567: @c The variable @code{dabbrev-limit}, if non-@code{nil}, specifies how far
  568: @c in the buffer to search for an expansion.
  569: たとえば、バッファ内に@samp{does this follow }があるときに
  570: @kbd{f o M-/}と打鍵すると、バッファ内で@samp{fo}で始まる近くにある単語が
  571: @samp{follow}なので@samp{follow}が挿入されます。
  572: @kbd{M-/}に数引数を指定すると、ポイントから先頭に向かって探して、2番目のもの、
  573: 3番目のものというように異なる展開形に展開できます。
  574: @kbd{M-/}を繰り返すことにより、
  575: 次々にさらに先頭へ向かって探して別の候補に展開します。
  576: ポイントよりまえのすべてのテキストを探し終えた場合には、
  577: ポイントよりうしろのテキストを探します。
  578: 変数@code{dabbrev-limit}が@code{nil}以外
  579: @footnote{【訳注】文字数を指定する。}
  580: ならば、バッファ内のどの範囲まで展開候補を探すかを指定します。
  581: 
  582: @vindex dabbrev-check-all-buffers
  583: @c   After scanning the current buffer, @kbd{M-/} normally searches other
  584: @c buffers, unless you have set @code{dabbrev-check-all-buffers} to
  585: @c @code{nil}.
  586: カレントバッファを探し終ると、
  587: 変数@code{dabbrev-check-all-buffers}を@code{nil}に設定していない限り、
  588: @kbd{M-/}は他のバッファも探します。
  589: 
  590: @c   A negative argument to @kbd{M-/}, as in @kbd{C-u - M-/}, says to
  591: @c search first for expansions after point, and second for expansions
  592: @c before point.  If you repeat the @kbd{M-/} to look for another
  593: @c expansion, do not specify an argument.  This tries all the expansions
  594: @c after point and then the expansions before point.
  595: @kbd{C-u - M-/}のように@kbd{M-/}に負の数引数を指定すると、
  596: まずポイントのうしろから展開候補を探し、
  597: つぎにポイントのまえから展開候補を探します。
  598: @kbd{M-/}を繰り返して別の展開候補を探す場合には、引数を指定しません。
  599: これにより、ポイントよりうしろのすべての展開候補を試してから、
  600: つぎにポイントよりまえのすべての展開候補を試せます。
  601: 
  602: @c   After you have expanded a dynamic abbrev, you can copy additional
  603: @c words that follow the expansion in its original context.  Simply type
  604: @c @kbd{@key{SPC} M-/} for each word you want to copy.  The spacing and
  605: @c punctuation between words is copied along with the words.
  606: 動的略語を展開したあとでは、展開形のもともとの場所でつぎに続く単語(群)を
  607: コピーすることができます。
  608: コピーしたい単語ごとに単に@kbd{@key{SPC} M-/}と打鍵します。
  609: 単語のあいだの空白や句読点も単語とともにコピーされます。
  610: 
  611: @c   The command @kbd{C-M-/} (@code{dabbrev-completion}) performs
  612: @c completion of a dynamic abbreviation.  Instead of trying the possible
  613: @c expansions one by one, it finds all of them, then inserts the text that
  614: @c they have in common.  If they have nothing in common, @kbd{C-M-/}
  615: @c displays a list of completions, from which you can select a choice in
  616: @c the usual manner.  @xref{Completion}.
  617: コマンド@kbd{C-M-/}(@code{dabbrev-completion})は、
  618: 動的略語の補完を行います。
  619: 展開候補を1つずつ試すかわりに、すべての候補を全部探して
  620: それらに共通するテキストを挿入します。
  621: それらに共通部分がなければ、@kbd{C-M-/}は候補一覧を表示するので
  622: 普通の方法でその中から1つ選びます。
  623: @xref{Completion}。
  624: 
  625: @c   Dynamic abbrev expansion is completely independent of Abbrev mode; the
  626: @c expansion of a word with @kbd{M-/} is completely independent of whether
  627: @c it has a definition as an ordinary abbrev.
  628: 動的略語展開は略語(abbrev)モードと完全に独立しています。
  629: @kbd{M-/}による単語の展開は、
  630: 略語(abbrev)モードで定義済みかどうかとは完全に独立しています。
  631: 
  632: @node Dabbrev Customization,  , Dynamic Abbrevs, Abbrevs
  633: @c @section Customizing Dynamic Abbreviation
  634: @section 動的略語のカスタマイズ方法
  635: 
  636: @c   Normally, dynamic abbrev expansion ignores case when searching for
  637: @c expansions.  That is, the expansion need not agree in case with the word
  638: @c you are expanding.
  639: 通常、動的略語展開では大文字小文字を区別しないで候補を探します。
  640: つまり、展開候補と略語の大文字小文字が一致する必要はありません。
  641: 
  642: @vindex dabbrev-case-fold-search
  643: @c   This feature is controlled by the variable
  644: @c @code{dabbrev-case-fold-search}.  If it is @code{t}, case is ignored in
  645: @c this search; if @code{nil}, the word and the expansion must match in
  646: @c case.  If the value of @code{dabbrev-case-fold-search} is
  647: @c @code{case-fold-search}, which is true by default, then the variable
  648: @c @code{case-fold-search} controls whether to ignore case while searching
  649: @c for expansions.
  650: この機能は変数@code{dabbrev-case-fold-search}で制御できます。
  651: 値が@code{t}のときは、候補を探すときに大文字小文字を区別しません。
  652: 値が@code{nil}のときは、候補と略語の大文字小文字が一致する必要があります。
  653: 変数@code{dabbrev-case-fold-search}の値は、
  654: デフォルトでは真である@code{case-fold-search}です。
  655: したがって、変数@code{case-fold-search}が
  656: 展開候補を探すときの大文字小文字の区別を制御します。
  657: 
  658: @vindex dabbrev-case-replace
  659: @c   Normally, dynamic abbrev expansion preserves the case pattern @emph{of
  660: @c the abbrev you have typed}, by converting the expansion to that case
  661: @c pattern.
  662: 通常、動的略語展開は@emph{打ち込んだ略語の}大文字小文字のパターンを保存します。
  663: つまり、略語の大文字小文字のパターンに合うように
  664: 展開形の大文字小文字を変換します。
  665: 
  666: @vindex dabbrev-case-fold-search
  667: @c   The variable @code{dabbrev-case-replace} controls whether to preserve
  668: @c the case pattern of the abbrev.  If it is @code{t}, the abbrev's case
  669: @c pattern is preserved in most cases; if @code{nil}, the expansion is
  670: @c always copied verbatim.  If the value of @code{dabbrev-case-replace} is
  671: @c @code{case-replace}, which is true by default, then the variable
  672: @c @code{case-replace} controls whether to copy the expansion verbatim.
  673: 変数@code{dabbrev-case-replace}は、略語の大文字小文字のパターンを
  674: 保存するかどうかを制御します。
  675: 値が@code{t}のときは、たいていの場合、パターンを保存します。
  676: @code{nil}のときは、つねに展開形をそのままコピーします。
  677: @code{dabbrev-case-replace}の値は、
  678: デフォルトでは真である@code{case-replace}です。
  679: したがって、変数@code{case-replace}が
  680: 展開形をそのままコピーするかどうかを制御します。
  681: 
  682: @c   However, if the expansion contains a complex mixed case pattern, and
  683: @c the abbrev matches this pattern as far as it goes, then the expansion is
  684: @c always copied verbatim, regardless of those variables.  Thus, for
  685: @c example, if the buffer contains @code{variableWithSillyCasePattern}, and
  686: @c you type @kbd{v a M-/}, it copies the expansion verbatim including its
  687: @c case pattern.
  688: しかしながら、展開形の大文字小文字のパターンが複雑であるとき、
  689: 略語の始めから終りまでがそのパターンに一致する場合、
  690: これらの変数に関わらず展開形をそのままコピーします。
  691: たとえば、バッファに@code{variableWithSillyCasePattern}とあって
  692: @kbd{v a M-/}と打鍵すると、
  693: 大文字小文字のパターンを含め展開形をそのままコピーします。
  694: 
  695: @vindex dabbrev-abbrev-char-regexp
  696: @c   The variable @code{dabbrev-abbrev-char-regexp}, if non-@code{nil},
  697: @c controls which characters are considered part of a word, for dynamic expansion
  698: @c purposes.  The regular expression must match just one character, never
  699: @c two or more.  The same regular expression also determines which
  700: @c characters are part of an expansion.  The value @code{nil} has a special
  701: @c meaning: abbreviations are made of word characters, but expansions are
  702: @c made of word and symbol characters.
  703: 変数@code{dabbrev-abbrev-char-regexp}が@code{nil}以外の場合、
  704: 動的展開においてどんな文字を単語構成文字とみなすかを制御します。
  705: これに指定する正規表現は1文字のみに一致するものである必要があり、
  706: 2文字以上に一致してはいけません。
  707: 同じ正規表現は、どの文字が展開形を構成するかも指定します。
  708: 値として@code{nil}を指定すると特別な意味があり、
  709: 略語は単語の構成文字だけから成り、
  710: 展開形は単語と記号文字から成るという意味になります。
  711: 
  712: @vindex dabbrev-abbrev-skip-leading-regexp
  713: @c   In shell scripts and makefiles, a variable name is sometimes prefixed
  714: @c with @samp{$} and sometimes not.  Major modes for this kind of text can
  715: @c customize dynamic abbreviation to handle optional prefixes by setting
  716: @c the variable @code{dabbrev-abbrev-skip-leading-regexp}.  Its value
  717: @c should be a regular expression that matches the optional prefix that
  718: @c dynamic abbreviation should ignore.
  719: シェルスクリプトやmakefileなどでは、
  720: 変数名には接頭辞@samp{$}があったりなかったりします。
  721: これらのテキスト用のメジャーモードでは、
  722: 変数@code{dabbrev-abbrev-skip-leading-regexp}を設定して
  723: 余分な接頭辞を扱えるように動的展開をカスタマイズできます。
  724: この変数には、動的略語展開で無視すべき余分な接頭辞に一致する
  725: 正規表現を指定します。

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>