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

28.11 プログラムの編集に役立つその他の機能

プログラムの編集に特化して設計されたものではないEmacsコマンドの中にも、それでも編集に役立つものがあります。

単語、文、段落を操作するEmacsコマンドは、コードの編集に便利です。ほとんどのシンボル名には単語が含まれており(単語を参照)、文は文字列やコメントの中に見られます(文を参照)。段落については、ほとんどのプログラミング言語モードにおいて、空行で始まり空行で終わるように定義されています(段落を参照)。したがって、プログラムをより分かりやすくするために空行を適切に活用すれば、段落コマンドが処理するための有用なテキスト塊を提供することにもなります。プログラミング言語メジャーモードでAuto Fillモードが有効になっている場合、新たに作成される行はインデントされます。

Superwordモードは、編集コマンドや移動コマンドが記号(例:‘this_is_a_symbol’)を単語として扱うようにするバッファローカルなマイナーモードです。Superwordモードが有効になると、モードラインにマイナーモードインジケータ ‘²’ が表示されます。同様の subword-mode についても参照してください(MixedCase Words を参照)。

Electric Layoutモード (M-x electric-layout-mode) は、特定の文字を入力した際に自動的に改行を挿入するグローバルマイナーモードです。例えば、JavaScriptモードにおける ‘{’、‘}’、‘;’ などが該当します。

Hideshowモード(Hideshowマイナーモードを参照)以外に、プログラムの一部を選択的に表示するもう一つの方法として、選択的表示機能(選択的表示を参照)を利用する方法があります。プログラミングモードでは、Outlineマイナーモード(Outlineモードを参照)もサポートされていることが多く、これはFoldoutパッケージ(折りたたみ編集を参照)と組み合わせて使用できます。

Prettify Symbolsモードは、表示上の目的で特定の文字列をより見栄えの良い形式に置き換える、バッファローカルなマイナーモードです。例えば、Emacs Lispモードでは、文字列 ‘lambda’ をギリシャ文字のラムダ ‘λ’ に置き換えます。TeXバッファでは、‘\alpha’ … ‘\omega’ やその他の数学マクロを、それぞれのUnicode文字に置き換えます。プログラミング以外のモードでも利用したい場合があるでしょう。prettify-symbols-alistに項目を追加することで、このモードをカスタマイズできます。デフォルト値のprettify-symbols-default-compose-pが適切でない場合は、prettify-symbols-compose-predicateをカスタマイズすることで、より詳細な設定が可能です。また、グローバル版のglobal-prettify-symbols-modeもあり、これを有効にすると、このモードをサポートするすべてのバッファで動作します。

ポイントにあるシンボルを元の形式で表示できます。これは変数 prettify-symbols-unprettify-at-point によって制御されます。nil でない場合、ポイントがそのシンボル上にある限り、元の形式が復元されます。