入力中の文字列をパラメータ化

いつもファイルを選んだ後で送りたいコマンドを決めようとして面倒な思いをしていたので、先頭に;を挿入してカーソルを先頭に持ってくるスクリプトを作成してみた。config.pyに以下のコードを追加。

def toParam() :
    SetValue(';' + GetValue())
    SetSelection(0,0)

mode.SetKeyDownHandler( 192, MODKEY_CTRL, clexopt.toParam )

Ctrl+@で動作する。本当はCtrl+;に設定したかったけど、Calcに予約されていたので、キーバインドを被らないようにした。個人的にはCalcは@の方が合ってる気がする。
ちなみに、Calcのキーバインドを@に変更する場合、旧キーバインドの187はいったんNoneを割り当て解除してあげたほうがよいようだ。

# Ctrl+; にtoParam割り当て。以前の割り当ては解除してから。
mode.SetKeyDownHandler( 187, MODKEY_CTRL, None )
mode.SetKeyDownHandler( 187, MODKEY_SHIFT | MODKEY_CTRL, None )
mode.SetKeyDownHandler( 187, MODKEY_CTRL, clexopt.toParam )

# CalcをCtrl+@に再割り当て
import clmode_launcher
mode.SetKeyDownHandler( 192, MODKEY_CTRL, clmode_launcher.Shortcut_Calc )
mode.SetKeyDownHandler( 192, MODKEY_SHIFT | MODKEY_CTRL, clmode_launcher.Shortcut_CalcHex )