(MAC OSX 上で) ハンマースプーンを使用して Windows を制御しようとしていましたが、問題がありました。開始ページから、フォーカスされたウィンドウを左に移動するためのコードをコピーしました。
hs.hotkey.bind({"cmd", "alt", "ctrl"}, "Left", function()
local win = hs.window.focusedWindow()
local f = win:frame()
local screen = win:screen()
local max = screen:frame()
f.x = max.x
f.y = max.y
f.w = max.w / 2
f.h = max.h
win:setFrame(f)
end)
その後、設定をリロードして試してみました。残念ながら、これは機能せず、hammerspoon コンソールが開き、次のエラーが表示されます。
*** ERROR: hs.hotkey callback error: /Users/my_secret_username/.hammerspoon/init.lua:25: attempt to index a nil value (local 'win')
stack traceback:
/Users/my_secret_username/.hammerspoon/init.lua:25: in function </Users/my_secret_username/.hammerspoon/init.lua:23>
私の変数はnilであると言われていますが、なぜnilでなければならないのかわかりません。hs.console.printStyledtext(win)
変数 win の直後にprint ステートメント (hammerspoon で想定しているもの) を挿入して調べてみましたがnil
、エラーの直前に print する以外は同じエラーがスローされます。
奇妙なことは、機能またはコードがコンソールに焦点を合わせると「機能する」(つまり、画面を左に移動する)ことですが、他に試したことはありません。
この種のバグを見て、修正できた人はいますか?
私は見ました:
Lua Hammerspoon: 変数に代入すると hs.window.focusedWindow() が nil になる
変数をローカルからグローバルに変更しても違いはなく、バグが続くようです。