Next: , Previous: , Up: プログラムの編集   [Contents][Index]


26.11 プログラムを編集するための他の便利な機能

プログラムを編集するためにデザインされているわけではありませんが、有用なEmacsコマンドもいくつかあります

単語、センテンス、パラグラフを操作するEmacsコマンドは、コードを編集するのに有用です。ほとんどのシンボル名は単語(単語を参照してください)を含んでおり、文字列やコメントの中でセンテンス(センテンスを参照してください)を見つけることができます。パラグラフについては、ほとんどのプログラミング言語のモードは空行をパラグラフの開始および終了に定義しています。したがって空行を注意深く使用してプログラムをクリアーにすることにより、パラグラフコマンドが機能できる、有意なテキストの集合を提供することができます。プログラミング言語のモードでAuto Fillモードが有効な場合、新しい行の作成でインデントされるようになります。

Superwordはバッファーローカルなマイナーモードで、編集および移動コマンドがシンボル(たとえば‘this_is_a_symbol’)を単語として扱うようになります。Superwordモードが有効な場合、モードラインのマイナーモードインジケーターに、 ‘²’ が表示されます。同様なモードsubword-modeも参照してください(大文字小文字の混ざった単語を参照してください)。

Electric Layoutモード(M-x electric-layout-mode)はグローバルなマイナーモードで、特定の文字をタイプしたときに自動的に改行を挿入します。たとえばJavascriptモードでは‘{’、‘}’、‘;’などです。

Hideshowモード(Hideshowマイナーモードを参照してください)は別として、プログラムの一部を選択的に表示するには、選択的な表示機能(選択的な表示を参照してください)を使う方法があります。プログラミングのモードには、Foldoutパッケージ(折り畳み編集を参照してください)とともに使用できる、Outline minorマイナーモード(Outlineモードを参照してください)をサポートするものもあります。

Prettify Symbolsモードはバッファーローカルなマイナーモードで、特定の文字の表示をよりアトラクティブ(attractive: 見栄えのする)なバージョンに置き換えます。たとえばEmacs Lispモードでは、文字列‘lambda’を、ギリシャ文字のラムダ‘λ’に置き換えます。TeXバッファーでは‘\alpha’ ... ‘\omega’、および他の数学マクロ(math macros)を、対応するUnicode文字に置き換えます。このモードを、プログラミングとは関係のないモードで使いたいと思うかもしれません。prettify-symbols-alistにエントリーを追加することにより、このモードをカスタマイズできます。デフォルト値であるprettify-symbols-default-compose-pの値が適切でない場合、prettify-symbols-compose-predicateをカスタマイズすることで、より入念なカスタマイズが可能です。グローバルなバージョンglobal-prettify-symbols-modeは、サポートするすべてのモードでこれを有効にします。

ポイント位置のシンボルを、元の形式で表示することもできます。これは変数prettify-symbols-unprettify-at-pointにより制御されます。非nilの、ポイントがシンボル位置にある限り、そのシンボルの元の形式が復元されます。