Microのプラグイン開発、キーイベント

Microでプラグインを開発していると、コマンドやショートカットキーではなく、キーイベントが必要になる時があります。




例として矢印キー(upやdown)を押した時にインフォバーにメッセージを出力するようにしてみます。


コードのサンプルとして、~/.config/micro/plug/presskey/presskey.luaにコードを書きます。


~/.config/micro/plug/presskey/presskey.lua

VERSION = "0.0.1"

local micro = import("micro")

-- up ⬆️
function preCursorUp(pane)
	micro.InfoBar():Message("pressed up key.")
end

-- down ⬇️
function preCursorDown(pane)
	micro.InfoBar():Message("pressed down key.")
end

-- left ⬅️
function preCursorLeft(pane)
	micro.InfoBar():Message("pressed left key.")
end

-- right ➡️
function preCursorRight(pane)
	micro.InfoBar():Message("pressed right key.")
end

-- tab
function preIndentSelection(pane)
	micro.InfoBar():Message("pressed tab key.")
end

Microでは、関数名でpreから始まる関数がキーイベントになるようです。

関数を用意しておくだけで、作成した関数をプラグイン用のファイルの他の箇所で呼び出す必要はありません。


後は自身で開発しているプラグインに合わせ、関数内のコードを書き換えて、処理を完成させます。

同じカテゴリーの記事
マインクラフト用ビジュアルエディタを開発しています。
詳しくはinunosinsi/mcws_blockly - githubをご覧ください。