Microのプラグイン開発、カーソルの座標の取得



矢印キーでカーソルを移動した直後にカーソルの現在位置を取得する為のコードを書いてみます。


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


~/.config/micro/plug/pos/pos.lua

VERSION = "0.0.1"

local micro = import("micro")

function printPosition()
	local current_pane = micro.CurPane()
	local msg = "X:"..current_pane.Cursor.Loc.X
	msg = msg.." Y:"..current_pane.Cursor.Loc.Y
	micro.InfoBar():Message(msg)
end

function preCursorUp(pane)
	printPosition()
end

function preCursorDown(pane)
	printPosition()
end

function preCursorLeft(pane)
	printPosition()
end

function preCursorRight(pane)
	printPosition()
end

現在フォーカスを当てているペイン内のカーソル(Cursor)のLocにx座標とy座標の値が格納されています。

buffer package - github.com/zyedidia/micro/v2/internal/buffer#Cursor - Go Packages

buffer package - github.com/zyedidia/micro/v2/internal/buffer#Loc - Go Packages

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