简述
com.apple.symbolichotkeys:AppleSymbolicHotKeys
中的第一个parameters
值代表什么?
详情...
AppleSymbolicHotKeys结构
位于OS X符号热键plist文件的...
~/Library/Preferences/com.apple.symbolichotkeys.plist
将快捷键存储在一个名为“AppleSymbolicHotKeys”的字典中,其条目看起来像
<action:int> = Dict {
enabled = <enabled:bool>
value = Dict {
type = <type:string>
parameters = Array {
<param_1:int>
<param_2:int>
<param_3:int>
}
}
}
例子:
10 = Dict {
enabled = true
value = Dict {
type = standard
parameters = Array {
56
28
1572864
}
}
}
< p > < em > 专业提示: 您可以使用< /p >观看。Translated: 专业提示:您可以使用
观看。/usr/libexec/PlistBuddy -c "Print :AppleSymbolicHotKeys" ~/Library/Preferences/com.apple.symbolichotkeys.plist
数值
action:int
这是热键将执行的操作的ID。网络上有相对完整的列表,可以搜索一下,因为我没有足够的积分发布链接或其他内容。
enabled:bool
热键是否启用。
type:string
似乎总是“标准”。
param_1:int
这个我得不到。它似乎并不一定与参数2和3相关,尽管在更改其他参数时经常会改变。例如...
我可以在“系统偏好设置 -> 键盘 -> 快捷键 ->任务控制”视图中单击“恢复默认设置”,它将把“切换到桌面1”设置为“ctrl + 1”。读取该操作(编号118)的值,我看到param_1
被设为65535
。如果我手动在UI中将键组合设置为“ctrl + 1”,则param_1
设置为49
。 param_2
和param_3
的值保持不变。
param_2:int
这似乎是来自
/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.framework/Versions/A/Headers/Events.h
对于非修改键的按下操作,除了值为65535
之外,这在param_1
中非常常见,并且在我的本地机器上出现在160、163和175操作的param_2
中。
param_3:int
似乎表示需要按下修改键,根据……
MODS = {
0=>"No modifier",
131072=>"Shift",
262144=>"Control",
524288=>"Option",
1048576=>"Command",
393216=>"Shift + Control",
655360=>"Shift + Option",
1179648=>"Shift + Command",
786432=>"Control + Option",
1310720=>"Control + Command",
1572864=>"Option + Command",
917504=>"Shift + Control + Option",
1441792=>"Shift + Control + Command",
1703936=>"Shift + Option + Command",
1835008=>"Control + Option + Command",
1966080=>"Shift + Control + Option + Command",
}
你会注意到代表多个修饰语的数字是它们所代表的修饰语的总和,例如:
"Shift + Control" = 393216 = 131072 + 262144 = "Shift" + "Control"
那么...
非常感谢任何见解,并希望这可以成为我所发掘的信息对其他接触该主题的人的参考。
NX_SHIFTMASK
。对于操作(“param_2”),我认为逆向工程的CGSHotKeys.h可能会有所帮助。键码似乎来自HIToolbox的Events.h。 - Dale