如果我在我的代码中选择了一个变量(不仅仅是任何字符串),该变量的所有其他实例都会在它们周围得到一个笔画(白色轮廓):

是否有一个快捷键可以让我选择变量的所有实例并一次编辑它们?


我尝试过的事情:

⌘D,⌘K和⌘U让我一个接一个地选择它们,但我必须手动排除非变量字符串匹配:

使用Ctrl⌘G简单地选择所有匹配的字符串:

显然,Sublime能够区分变量和字符串匹配。是否没有办法只选择匹配的变量?


当前回答

将光标放到变量中。 注意:关键是从一个空的选择开始。不突出;把光标放在这里。

根据需要按⌘D。不是在Mac上?使用CtrlD。

没有工作吗?再试一次,确保开始时没有选择任何内容。

更多的命令:

查找全部:Ctrl⌘G一次选择所有出现。不是在Mac上?AltF3 撤消选择:⌘U后退。不是在Mac上?CtrlU 快速跳过下一步:⌘K⌘D跳过下一个事件。不是在Mac上?CtrlKCtrlD 崇高的文档

其他回答

@watsonic提到,在macOS上的Sublime Text 3中,从一个空选择开始,简单地⌃⌘G (Windows上的AltF3)就可以了,而不是Sublime Text 2中的⌘D +⌃⌘G。

我知道这个问题是关于mac电脑的,但我来这里是为了搜索Ubuntu的答案,所以我想我的答案可能对某些人有用。

简单的方法:AltF3。

正如user1767754所说,这里的关键是一开始不要做任何选择。

只需将光标放在变量名内,不要双击选择它。对于单字符变量,将光标放置在变量的前面或末尾,以在开始时不进行任何选择。

现在继续按Cmd+D选择下一个变量或按Ctrl+Cmd+G选择所有变量一次。它会神奇地只选择变量。

对我来说,这是Sublime最大的错误。Alt+F3很难达到/记住,Ctrl+Shift+G没有意义,因为Ctrl+D是“添加下一个实例到选择”。

将此添加到用户密钥绑定(首选项>密钥绑定):

{ "keys": ["ctrl+shift+d"], "command": "find_all_under" },

现在你可以高亮显示一些东西,按Ctrl+Shift+D,它会将文件中的所有其他实例添加到选择中。

这对我很管用。然后将光标放在要替换的单词的开头

CtrlK, CtrlD, CtrlD ..

这应该选择尽可能多的单词实例,然后您只需输入替换。