Sublime Text Select和Copy in one(宏和键绑定)不起作用,为什么?

时间:2014-10-16 12:03:59

标签: macros sublimetext3

我有select-copy.sublime-macro个文件,其中包含:

[
  { "command": "expand_selection_to_word" },
  { "command": "copy" }
]

然后我在我的sublime-keymap文件中有这个:

{
      "keys": ["ctrl+d"],
      "command": "run_macro_file",
      "args": {"file": "Packages/User/select-copy.sublime-macro" }
}

但是,给出这样的一行:

property: val[|]ue;

[|]是光标时,当我按下我的键绑定(ctrl + d)时,我希望复制'value'。但是,当我粘贴时,我实际上得到整行(property: value)。

知道为什么吗?

1 个答案:

答案 0 :(得分:3)

这是因为 expand_selection_to_word不是命令(正确的命令是其expand_selection,而&#39; <&em; 应该是的值&#39;到&#39; 参数)。

所以,将宏更改为此,它应该可以工作:

[   
    {
     "command": "expand_selection",
     "args": {"to": "word"}
    },
    {       
        "command": "copy"
    }
]

注意:宏正在选择整行,因为它是复制命令的默认行为,如果没有选择它(你可以尝试使用 ctrl + c 什么时候没有它选择)。此外,如果您打开控制台并执行宏,您应该会看到一条警告消息,提示未知宏命令expand_selection_to_word