[Komodo Edit]マクロを使う

最終更新日

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


[Komodo Edit] スニペットを使うの続きです。

macro000007

Komodo Editのマクロ機能はスニペット機能以上に多機能でとても紹介しきれません。
どのくらい高機能かというと、マクロ機能でチェスゲームが作れるぐらい高機能です。(下記動画参照)

ちなみにこの動画、制作元「ActiveStateSoftware」の公式動画です。バカですね―良い意味で。
詳細については、公式の「Macro API Reference」を参照していただくとして、Komodo Editマクロ機能の特徴を紹介したいと思います。

 

■ マクロの録画
macro000001
もっとも簡単なマクロの作成方法です。
録画ボタンを押してキーストロークを録画します。

 

■ スクリプティング
macro000000
Komodo Editのマクロは、JavaScript/Pythonで記述します。
基本的にはJavaScriptが標準のようです。
マクロ作成は、Toolbox上で右クリック Add→new Macro、編集は右クリック「properties」から行ってください。
また、Toolbox上のmacroをドラッグしてエディタ上にドロップするとワークスペースでマクロの編集が行えます。この場合、マクロの編集に補完機能が効くので編集が楽になります。

 

■ マクロの実行
macro000002
Toolbox上でmacroをダブルクリックすると実行します。
Ctrl+Shift+Kで呼び出して使ったり、各マクロにキーバインドを指定して実行することができます。
後述しますが、エディタのキーバインドをviエミュレートモードにしていると、viコマンドとしてマクロを実行することができます。

 

■ バックグラウンドでの実行
macro000003

propertiesの「Run in Background」にチェックを入れるとマクロをバックグラウンドで実行することができます。

 

■ イベントトリガーで実行
macro000004
作成したマクロは、イベントを通じて自動的に実行することができます。
設定できるイベントは以下

  • Komodo Edit の起動プロセス終了後(On startup)
  • ファイルオープン後(After file open)
  • ファイルを保存する直前(Before file save)
  • ファイルの保存が完了した後(After file save)
  • ファイルクローズ直前(Before file close)
  • ファイルクローズ後(After file close)
  • Komodo Editの終了時(On shutdown)
  • システム通知を受けた時(On a system notification)

なお、イベントによって複数のマクロが実行される場合Rankが高いものが優先されます。

「Before file save」「Before file close」「On shutdown」をトリガーとしたマクロでは、マクロ内で戻り値にnullを指定(return null)することで、保存・クローズ・終了の処理をキャンセルすることができます。

 

■ viコマンドとしてマクロを実行
macro000006
macro000005
Komodo EditのPreferences→Editor→Key Bindings→Key Binding Schemesで「vi」を指定している場合、作成したマクロをviコマンドとして実行できます。(Viエミュレートモード)
※Toolboxに「Vi Commands」というフォルダを作成しその中にマクロを保存することで使用できるようになります。

 

■ マクロを探す
以下リンク先でさがしてみてください。

Komodo Macros and Extensions

 

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