Sublime文本 - difftool的快捷方式

时间:2016-09-20 15:13:29

标签: git sublimetext3 sublimetext sublime-text-plugin

我想添加一个快捷方式,以便为当前文件启动difftool。

我在~/.config/sublime-text-3/Packages/UserDefault (Linux).sublime-keymap添加了以下条目:

[
  { "keys": ["ctrl+shift+g"], "command": "difftool" },
]

但它没有用。

我注意到当我使用顶层菜单(Tools-> Git-> This file-> DiffTool)时,我在sublime控制台中看到以下命令:

['git', 'difftool', '--', 'path-to-file']

我想知道如何编写快捷方式。

1 个答案:

答案 0 :(得分:1)

Git包通过提供Main.sublime-menu文件向菜单添加项目,该文件列出了要添加的菜单项以及在选择它们时要调用的命令。这将告诉您需要使用的command以及为获得相同功能而需要提供的args

最简单的方法是使用PackageResourceViewer打开资源,这样您就不必手动搜索文件。

基于此,你想要的快捷方式看起来像这样(虽然这个格式在这里显示得更好,可能是一行等等):

{
    "keys": ["ctrl+shift+g"],
    "command": "git_raw",
    "args": {
        "command": "git difftool",
        "append_current_file": true,
        "may_change_files": false
    }
}

如果您还没有现有的键绑定,为了使用它,您需要将整个绑定包装在json数组([])中。另请注意,所有绑定都需要用逗号分隔。