我已经安装了 tern-js sublime 3 的插件,但是由于某种原因,根据文档,我无法使其命令与 sublime 的键绑定(bind)一起使用(顺便说一句,我是 sublime nube)。ternjs_jump_to_definition
应该是一个有效的命令。
所以我把它放在默认的 (OSX).sublime-keymap
文件中:
{ "keys": ["super+ctrl+j"], "command": "ternjs_jump_to_definition"},
{ "keys": ["super+ctrl+r"], "command": "ternjs_reload"},
我也把这个..仍然不起作用:
{ "keys": ["super+ctrl+j"], "command": "ternjs_jump_to_definition", "context":
[
{ "key": "has_next_field", "operator": "equal", "operand": true }
]
}
知道发生了什么问题吗?我知道 tern-js 已安装..因为输入 Ctrl+Space
来完成代码实际上是有效的:
知道我做错了什么吗?我只想输入 command+ctrl+j 跳转到方法定义。
我还查看了默认的 sublime 3 跳转到方法定义(即 alt+command+down),即使我将库添加到项目中,它也只适用于同一个文件。 (我正在使用 mapbox ,它在 leaflet 之上工作)。
最佳答案
哇,这是一个老问题了!我自己刚刚遇到了这个问题(Sublime Text 版本 2.0.2),我尝试了“ctrl+right”作为我的键绑定(bind)。它不起作用。我的猜测是因为它位于 Default/Default (OSX).sublime-keymap
文件中。于是,我搜索了一些可以使用的按键序列,发现可以使用“ctrl+z”,并尝试了一下。
以下是我添加到 User/Default (OSX).sublime-keymap
文件中的内容:
[
{ "keys": ["ctrl+z"], "command": "ternjs_jump_to_definition", "args": {"to": "line" } }
]
它只会将我带到源文件的顶部,直到我添加了“args”参数,如图所示。现在我就可以看到函数签名了!顺便说一句,以上是我的用户键盘映射设置的全部内容。
我查看了我的默认键盘映射文件,即使使用 ,我也没有在文件中找到
和 super+ctrl+j
和 super+ctrl+r
>superctrl
交换了,所以我不确定我还能建议什么。
关于javascript - 如何在 Sublime 3 中为 tern-js 设置跳转到方法定义键绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22099802/