重新映射Keymando中的Capslock Key?
问题描述:
您可以重映射Keymando中的CapsLock
密钥吗?重新映射Keymando中的Capslock Key?
CapsLock
是listed as an available key但是当我尝试像一个测试:
map "<CapsLock-j>" { alert("CapsLock-j") }
...并在Keymando菜单打Reload Config
,我得到一个错误对话框,说:
错误解析Keymando配置文件
未定义的方法'ctrl'为零:NilClass
有没有可能是CapsLock
的缩写?例如,在可用密钥中,控制密钥仅列为Control
,但在示例代码中为ctrl
。是否有类似的缩写CapsLock
?
如果可能的话,我想用CapsLock
键作为一个模式键来实现类似的逻辑:
if <CapsLock>
map <j>, <Down>
map <k>, <Up>
# ...etc
end
答
对不起,这是我们的一部分,网页上列出大写锁定一个错误。目前它只能通过“Modifer Keys ..”下的Keyboard.prefPane重新映射到Control,Option或Command,现在我们无法检测它是否被按下。
我们会继续关注解决方案,但现在它不会去做你想做的事。抱歉。
该网站已修复,以避免更多的混淆,以及。
答
尽管无法重新映射大小写锁定,但您可以通过向keymandorc文件添加一些基本状态来实现几乎相同的功能。我无法弄清楚如何映射到的东西单独选项键,但除此之外,这应该做你的目标是什么:
在你的顶部keymandorc地说:
@caps = false
然后下来,无论你定义的绑定把类似下面的
map "j" do
if @caps then
send("<Down>")
else
send("j")
end
end
map "<Option-v>" do
@caps = [email protected];
alert("Vim Mode: " + @caps.to_s)
end
然后,您可以还结合逃生退出模式,如果@caps是真实的,依此类推。
我已经开始怀疑,大写字母锁的关键事件被埋没了。当大写锁定关闭时发送的实际键码是移位的键值,例如F或@或}而不是大写锁定和f。 – TechZen