コード・スニペットプラグイン

コード・スニペットプラグインを使えば、よく使う文字列(スニペット)を保存し、手軽にドキュメントに挿入できます。

挿入できるスニペットは、現在編集中のドキュメントの種類に依存します。例えば、HTML ドキュメントを編集中であれば、HTML でよく使われるスニペットの一覧から文字列を選択することができます。一部のスニペットは、全ての種類のドキュメントで利用できます。

gedit には数多くの組み込みスニペットが存在し、それを編集することも可能です。

10.10.1. スニペットの挿入

スニペットを実際に挿入するにはまずタブトリガと呼ばれる単語を入力してから、Tab キーを押します。スニペットのタブトリガは、一般的に挿入したいスニペットの一部の文字で構成されるか、より覚えやすい短い単語が選ばれています。

別の方法として、Ctrl+Space を入力すれば、挿入可能なスニペットの一覧が表示されます。訳注:日本語環境の場合、Ctrl+Space は日本語入力のオン/オフが割り当てられていることがあるため、日本語入力の設定を変更しない限り使えない場合もあります。

10.10.2. スニペットの追加

新規にスニペットを追加する方法は次のとおりです。

  1. ツール ▸ スニペットの管理を選択し、スニペットの管理ウィンドウを開きます。

  2. スニペットの一覧は言語ごとにグループ分けされていますので、追加したいスニペットの言語か言語グループにあるスニペット自体を選択します。全ての言語に共通するスニペットを追加したい場合は、一覧の先頭にある全般を選択します。標準状態では、現在編集中のドキュメントの種類が選択されています。

  3. 新規をクリックします。一覧の中に新しいスニペットの項目が現れます。

  4. 新しいスニペットに対して、以下の情報を入力してください。

    名前

    スニペットの一覧で表示される、スニペットの名前を入力します。この名前は、そのスニペットがどういうものかを思い出すためだけに使われます。一覧の中でスニペットの名前をクリックすれば、名前を変更することができます。

    スニペットテキスト

    編集ボックスに、挿入したいスニペットの文字列を入力します。特殊なコードも入力可能です。詳しいことは、セクション 10.10.4 - スニペット置換を参照してください。

    スニペットの管理ウィンドウを閉じることなく、ドキュメントウィンドウに一旦戻って、そこから入力したい文字列をコピーすることも可能です。

    タブトリガ

    タブ欄にタブトリガとなる文字列を入力します。これは、Tab キーを押した際に、どのスニペットに置き換えるべきかを識別するための文字列です。

    タブトリガは他のスニペットのタブトリガと重複できません。もし、入力した文字列が重複している場合は、タブの欄が赤く表示されます。

    ショートカット・キー

    スニペットを挿入するためのショートカット・キーを入力します。

10.10.3. スニペットの編集・削除

特定のスニペットを編集するには、一覧からスニペットを選択後、表示される各設定を適宜修正してください。

特定のスニペットの名前を編集するには、スニペットの名前を二度クリックしてください。

一度編集した組み込みスニペットを元に戻すには、元に戻すをクリックしてください。

特定のスニペットを削除するには、スニペットを選択後、削除をクリックしてください。組み込みスニペットは削除できません。自分で作ったスニペットのみ削除可能です。

10.10.4. スニペット置換

文字列を挿入するだけでなく、スニペットには状況に合わせて変更可能な文字列を挿入したり、スニペット挿入後に修正が必要な場所を指定したりといったことが可能です。

スニペットテキストに、以下のコードを入力できます。

タブコード

$n はタブコードを表します。n は 1 から始まるタブの番号です。

${n:default} は初期値付きのタブコードです。

タブコードは、そのスニペットを挿入後に別の文字列を挿入する可能性がある場所を指定するコードです。

タブコードを使うためには、まず普通にスニペットを挿入します。その後、カーソルが最初のタブ番号の位置に移動します。テキストを入力し、Tab キーを押せば、次のタブ番号の位置に移動します。タブコードの番号は、Tab キーを押すことによって進む順番を指定します。

Shift+Tab を押せば一つ前のタブ番号の位置にカーソルが移動します。一番最後の位置で、Tab キーを押した場合、スニペットで挿入された文字列の最後か、もし存在すれば終端コードの位置にカーソルが移動します。

ミラーコード

タブコード連続して記述すると、既に定義されたコードを複写します。これによりスニペットが数回現れる場面でも、入力は一度だけで済みます。

終端コード

$0 は終端コードを表します。これはスニペットの末尾に記され、カーソルがスニペットの最後尾に移動する際に使われます。

環境変数

$PATH$HOME のような環境変数はスニペットでも利用できます。gedit では以下の独自の環境変数も使用できます。

$GEDIT_SELECTED_TEXT

現在選択中の文字列を表します。

$GEDIT_FILENAME

現在編集中のファイル名を表します。ドキュメントが未保存であれば、空文字となります。

$GEDIT_BASENAME

現在編注のファイル名の、拡張子を除いた部分を表します。ドキュメントが未保存であれば、空文字となります。

$GEDIT_CURRENT_WORD

現在カーソルが存在する場所の単語を表します。この変数が使われたとき、現在の単語は、スニペットに置換されます。

シェルコード

$(cmd) は端末内で cmd を実行した結果に置換されます。

$(n:cmd) は参照番号付きのシェルコードで、n には 1 以上の数字を割り当てます。$n を使えば、その番号の割り当てられたシェルコードと同じ出力結果を挿入できます。

Python コード

$<cmd> は Python インタプリタ内で cmd を実行した結果に置換されます。

$<a:cmd> は、別の Python コードへの依存性を表しています。ここで a はスニペットの順番です。これを使えば、他のスニペットで定義された Python 関数を利用できます。複数の依存性を表すには、次のようにカンマで区切ってください: $<a,b:cmd>

他の Python スニペットで使っている変数を利用するには、その変数がグローバルとして定義されている必要があります。