拼命想要自定义Xcode 4键绑定。
我正在编辑用户.idekeybindings文件(xcode有时会在打开时修改后擦除,然后尝试通过键绑定界面进行更新 - 可爱)
我的理解是提供一个s命令(选择器)而不是一个字符串应该执行所有这些命令。
<key>Text Key Bindings</key>
<dict>
<key>Key Bindings</key>
<dict>
<key>@L</key>
<string>selectLine:</string>
<key>@d</key>
<array>
<string>selectLine:</string>
<string>deleteBackward:</string>
</array>
</dict>
<key>Version</key>
<integer>3</integer>
</dict>
在这种特殊情况下,我的selectLine:for command-shift-l正常工作。
我的命令 - 发出哔哔声然后失败了。如果我删除数组中的任何一个命令,但将其保留在数组中,那么该命令有效(无关紧要)。但是只要我把它们结合起来就会失败。
任何人都知道我在这里做错了什么?缺乏关于如何做到这一点的知识令人沮丧。
答案 0 :(得分:0)
仅仅因为你可以在xml结构中添加一个带有两个函数的数组,并不意味着Xcode在解析文件时正在寻找它。
如果读取文件的代码检查该值是数组还是字符串,那么进行一些循环,这将表现出您认为应该的方式。我的猜测是,Xcode正在读取与键相关的值,看到它不是一个字符串,并用那可爱的嘟嘟小夜曲。
答案 1 :(得分:0)
您想要做的事情绝对有可能。 (至少在XCode 10中,这是我在撰写本文时使用的语言)
不是将命令放入数组中:
<array>
<string>selectLine:</string>
<string>deleteBackward:</string>
</array>
只需将它们放入一个字符串条目中,并确保将它们用逗号分隔,如下所示:
<string>selectLine:, deleteBackward:</string>
干杯!