[Komodo Edit] スニペットを使う

時の流れは残酷なもので、2019年現在、私はVisual Studio Codeへ移行しました。


Komodo Editの高機能なスニペットを使いこなしましょう。
 
snip000000
定型文を入力するのに欠かせないスニペット機能。
Komodo Editでのスニペットの登録はToolbox上で行います。

Toolboxビュー上で右クリック→「Add」→「new snipet」
snip

登録したスニペットはToolbox上でダブルクリックして実行します。
Ctrl+Shift+K で呼び出して使用することもできますし、各スニペットにキーバインドを設定することもできます。
snip000005

また、Toolbox内のsampleファルダ以下、Abbreviationsフォルダにプログラム言語毎のフォルダがあるのですが、その中にスニペットをいれて置くと、エディタ上でスニペット名を記述した後に Ctrl+t でスニペットを貼付けることができます。

例)
sample ➡ Abbreviations ➡ javascriptフォルダに「snip」というスニペットを入れている場合

snip000006
javascriptファイルの編集時のみ「snip」と記述して Ctrl+t を押すとスニペットの挿入がおこなわれます。

 

Interpolation shortcut

 
Komodo Editでは、「Interpolation shortcut」という、実行時にスニペットを動的に変化させて貼り付けを行う特殊なコードがあります。
(EmEditorのプレースホルダーのようなもの)
これを使用すると、スニペット機能が格段に便利になります。
いくつか代表的なものだけ紹介します。

■ %tabstop
%tabstopは、スニペットを貼り付けた際にタブの移動を制御することができるショートカットです。

スニペットを実行した後、Tabキーを押すとフォーカスが%tabstop上を移動します。
値の変更を素早く行いたいときに重宝します。
また、ショートカット名の語尾に数値を付けることで、一時的な変数のようにつかえます。

上記のスニペットを実行した後、最初にフォーカスが当るコメント内の「ClassName」を変更すると、同時にvar横の変数名も変更されます。
下記動画参照

 

■ %s
%sは、エディタ上で選択しているテキストをスニペットに代入するショートカットです。

エディタ上で文字を選択しながらスニペットを実行すると、選択したテキストが%sに代入されてスニペットが貼り付けられます。
下記のコードは、選択したテキストをh1タグで囲むスニペットです。

%sショートカットを使用したスニペットは、実行時にテキストが選択されていないとエラーになります。
テキストが選択されていない場合にデフォルト値を出力するには以下のように記述します。

%sもショートカットの語尾に数値を付けることで、一時的な変数(後方参照)のようにつかえます。

 

■ %date
%dateは、スニペット実行時の日次を代入するショートカットです。

スニペット実行時に、日次が代入されます。
出力形式は下記のようにカスタマイズできます。

 

■ %ask
%askは、スニペット実行時にダイアログを表示し、入力された値を貼り付けるスニペットに反映します。

%askの含まれたスニペットは、実行するとダイアログを開きます。
ダイアログに入力された値をスニペットに代入して貼り付けを行います。

上記のスニペットを実行すると下記のようなダイアログが表示され、入力した値が貼り付けるスニペットに反映されます。

snip000004

%askもショートカットの語尾に数値を付けることで、一時的な変数のように使えます。

 

 

いかかでしたでしょうか。
他にも様々な機能を持った「Interpolation shortcut」がありますので、調べてみると面白いかもしれません。

なお、スニペット設定画面の「Maintain indentation context after insertion」の項目にチェックを入れておくと、スニペットを貼付ける際に前後のインデントに合わせて貼付けを行ってくれるので、チェックを入れておきましょう。

次回は、Toolboxの別の機能「マクロ」か「コマンド」の紹介をする予定です。

 

【関連記事】
Komodo Editをとりあえず使ってみるための基本的な設定
[Komodo Edit]マクロを使う
[Komodo Edit]複数端末でスニペットやマクロを同期(共有)させる