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

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


我尝试过的事情:

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

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

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


当前回答

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

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

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

更多的命令:

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

其他回答

为了防止其他人在寻找跨多个文件替换字符串的方法时偶然发现这个问题,它是Command+Shift+F

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

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

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

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

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

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

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

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

神奇的是,你必须从一个空的选区开始,所以把你的光标放在你想要多选的单词/字符前面,然后按Ctrl+D。