请教一个有关 hammerspoon 的使用问题!

2016-10-02 02:35:50 +08:00
 qq432591

hammerspoon 的 init.lua 设置问题

-- key define

local hyper = {'ctrl', 'alt', 'cmd', 'shift'}

local hyperShift = {'ctrl', 'alt', 'cmd', 'shift'}

此处是将 ctrl alt cmd shift 该键设置为了 hyper,hypeShift

若想将 F19 设置为 hyper 的话 该如何设置呢?

local hyper = {'F19'} 试了这么搞不行

应该是 F19 的 keycode 不对,请问下老司机如何搞!

2907 次点击
所在节点    macOS
3 条回复
zander
2016-10-02 15:03:51 +08:00
可以去 karabiner 的 github 里搜索一下对应的 按键编码。
qq432591
2016-10-02 15:25:37 +08:00
@zander 不是 karabiner 的问题 ,是 hammerspoon 的不行, 不过已经搞定了 应为不太熟悉 lua 脚本 ,有点看不懂,照葫芦画瓢,也算搞定了。
这么设置的 没看懂 F18 F17 是干嘛用的
hyperBindings = {'q', 'w', 'e', 'r', 't', 'y', 's', 'd', 'f', 'g', 'v', 'm', 'x', 'k', 'z', 'up', 'down', 'left', 'right'}

k = hs.hotkey.modal.new({}, "F17")

for i,key in ipairs(hyperBindings) do
k:bind({}, key, nil, function() hs.eventtap.keyStroke(hyper, key)
k.triggered = true
end)
end

pressedF19 = function()
k.triggered = false
k:enter()
end

releasedF19 = function()
k:exit()
if not k.triggered then
hs.eventtap.keyStroke({}, 'F18')
end
end

f18 = hs.hotkey.bind({}, 'F19', pressedF19, releasedF19)
ashfinal
2016-10-03 02:18:32 +08:00
贴个我的配置,可以自己看着修改 对你有用最好

https://github.com/ashfinal/Hammerspoon-config/blob/master/README-CN.md

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/310218

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX