GNU Emacs 32.0.50 (9008bf64c3) のマニュアルを PLaMo 翻訳で機械翻訳したものです。誤訳を含むことがあります。原文: https://www.gnu.org/software/emacs/manual/html_node/emacs/Outline-Visibility.html ・ emacs-doc.conao3.com

27.9.4 アウトライン表示コマンド

アウトラインモードでは、アウトライン構造に基づいて、バッファの一部を一時的に非表示または表示するためのコマンドがいくつか用意されています。これらのコマンドは元に戻せません。単にアンドゥ機構によって効果が記録されないだけですので、その直後でアンドゥを行うことができます(アンドゥを参照)。

これらのコマンドの多くは、現在の見出し行に対して動作します。ポイントが見出し行にある場合、それが現在の見出し行となります。ポイントが本文行にある場合、現在の見出し行は直前の最も近い見出し行となります。

C-c C-c

現在の見出し行の本文を非表示にする (outline-hide-entry)。

C-c C-e

現在のエントリとその親階層 (outline-show-entry-and-parents) を表示します。

C-c C-d

現在の見出し配下にあるものをすべて、見出し自体を除いて不可視にする (outline-hide-subtree)。

C-c C-s

現在の見出し配下にあるものすべて(本文、小見出し、およびその本文を含む outline-show-subtree)を可視にする。

C-c C-l

現在の見出し行およびそのすべての小見出しの本文を非表示にする (outline-hide-leaves)。

C-c C-k

現在の見出し行にあるすべての小見出しを、階層を問わず表示する (outline-show-branches)。

C-c C-i

現在の見出し行の直下の小見出し(1階層下)を表示可能にする (outline-show-children)。

C-c C-t

バッファ内のすべてのボディラインを非表示にする (outline-hide-body)。

C-c C-a

バッファ内のすべての行を表示可能にする (outline-show-all)。

C-c C-q

見出し行の最上位 n レベル(outline-hide-sublevels)以外をすべて非表示にする。

C-c C-o

そのポインタが属する見出しまたは本文、およびそこからアウトラインの最上位レベルに至るまでの見出し(outline-hide-other)以外をすべて非表示にする。

C-c / h regexp RET

regexp (outline-hide-by-heading-regexp) に一致する見出しの本文を非表示にする。

C-c / s regexp RET

regexp (outline-show-by-heading-regexp) に一致する見出しの本文を表示する。

これらのコマンドの中で最も単純なものは、現在の見出し行の直後にある本文行を非表示にするC-c C-c (outline-hide-entry)と、現在のエントリとそのすべての祖先見出し、およびそれらの直下の兄弟見出しを表示するC-c C-e (outline-show-entry-and-parents)です。

コマンド C-c C-d (outline-hide-subtree) および C-c C-s (outline-show-subtree) はより強力です。これらは現在の見出し行のサブツリー――その本文、直接・間接を問わずすべての下位見出し、およびそれらすべての本文――に適用されます。

コマンド C-c C-l (outline-hide-leaves) は、現在の見出し行の本文およびそのサブツリー内のすべての本文を非表示にします。サブ見出し自体は表示されたままとなります。コマンド C-c C-k (outline-show-branches) は、以前に(例えば C-c C-d によって)非表示にされていたサブ見出しを表示します。コマンド C-c C-i (outline-show-children) はこれよりも制限の緩いバージョンであり、直下のサブ見出し、つまり1階層下のもののみを表示します。

コマンド C-c C-o (outline-hide-other) は、ポイントが位置するエントリと、その親(そこからアウトラインのトップレベルまで遡るヘッダー)、およびトップレベルの見出し以外のすべてを非表示にします。また、バッファ内の最初の見出しより前にある本文行も表示します。

コマンド C-c / h (outline-hide-by-heading-regexp) は正規表現の入力を求め、その正規表現に一致する見出しの本文行をすべて非表示にします。コマンド C-c / s も同様に正規表現の入力を求め、一致する見出しの本文を表示します。

残りのコマンドはバッファ全体に影響します。C-c C-t (outline-hide-body) はすべての本文行を非表示にし、アウトライン構造のみを表示します(特例として、ファイル上部の、最初の見出し行より前の行は、厳密には本文行であっても非表示になりません)。C-c C-a (outline-show-all) はすべての行を表示します。C-c C-q (outline-hide-sublevels) は、現在の見出し行と同レベル以上の最上位見出し以外のすべてを非表示にします(point が見出し上にない場合はデフォルトで 1 となります)。数値引数 n を指定すると、最上位の n レベルの見出し行以外のすべてを非表示にします。なお、これによりすべての n 最上位レベルと、最初の見出しより前の本文行は完全に表示されます。

Outlineでは、各セクションおよびバッファ全体の表示・非表示を切り替えるための2つの便利なコマンドも提供されています。見出しで TAB (outline-cycle) と入力すると、現在のセクションが「すべて非表示」、「小見出し」、「すべて表示」の状態間で切り替わります。S-TAB (outline-cycle-buffer) と入力すると、バッファ全体が「トップレベルの見出しのみ」、「すべての見出しと小見出し」、「すべて表示」の状態間で切り替わります。

インクリメンタル検索でアウトラインモードによって非表示になっているテキストが見つかった場合、バッファのその部分が表示されます。その位置で検索を終了しても、テキストは表示されたままになります。アクティブなインクリメンタル検索で非表示テキストにマッチさせるかどうかを切り替えるには、M-s i と入力してください。今後の検索におけるデフォルト設定を変更するには、オプション search-invisible をカスタマイズしてください。(このオプションは、query-replace および関連機能が非表示テキストを処理する方法にも影響します。Query Replace を参照してください。)また、バッファローカルなマイナーモードである Reveal モード (M-x reveal-mode) を使用することで、テキスト内を移動しながら自動的にテキストを表示させることもできます。

outline-default-state 変数は、アウトラインモード有効化後にどの見出しを表示するかを制御します。nil 以外の場合、一部の見出しが初期状態でアウトライン表示されます。数値と等しい場合は、対応するレベルまでの見出し(そのレベルを含む)のみを表示します。outline-show-all と等しい場合は、バッファ内のすべてのテキストが表示されます。outline-show-only-headings と等しい場合は、レベルに関わらず見出しのみを表示します。ラムダ関数または関数名と等しい場合、その関数は見出しの表示・非表示を切り替えるものと想定されており、モード有効化後に引数なしで呼び出されます。