2
我現在正在Hammerspoon上編寫我自己的init.lua
,並且希望將我的一些kews重新映射到其他人。具體來說,我想在我的macOS上切換反斜槓鍵和刪除鍵。但是,雖然簡單的刪除和反斜槓可以正常工作,但是一旦我將應用程序焦點切換到另一個,然後鍵入某些內容,然後返回到原始應用程序,刪除鍵(實際上是反轉鍵)工作時間更長相反,它會在中止焦點之前刪除應用程序中的字符(即倒數第二個焦點應用程序)。但是,如果我在那裏鍵入某個內容,然後再次嘗試刪除它,則突然刪除可以再次正常工作而不會出現任何問題一旦應用程序焦點切換到另一個,Command + DELETE不再適用於Hammerspoon
我想知道爲什麼它突然不工作;但它可能是一個錯誤。無論如何,這裏是我的init.lua
切換刪除和反斜槓。
local VK_BACKSLASH = 0x2a
local VK_DELETE = 0x33
keyEventtap = hs.eventtap.new({
hs.eventtap.event.types.keyDown
}, function(event)
local bundleId = string.lower(hs.application.frontmostApplication():bundleID())
local keyCode = event:getKeyCode()
local flags = event:getFlags()
if keyCode == VK_DELETE then
if flagsMatches(flags, {'shift'}) then
event:setKeyCode(VK_BACKSLASH)
event:setFlags({shift=true})
else
event:setKeyCode(VK_BACKSLASH)
end
elseif keyCode == VK_BACKSLASH then
event:setKeyCode(VK_DELETE)
end
end)
keyEventtap:start()
我在這裏錯過什麼......?