多个光标/突出显示当前突出显示的单词的下一个实例


75

在Sublime Text中,可以通过按Command + d选择单词的下一个实例,也可以通过按Command并单击来放置多个光标。我知道我并不孤单地说这是在编辑器中非常有用的功能。

我没有为此找到任何键映射或Alcatraz插件,因此我很想知道是否有一种方法可能是我可能错过的xcode 5,或者是否有计划在其中实现xcode 6?

如果没有,并且任何xcode开发人员都看到了这一点,希望将其视为一项功能并听取您对此的意见:)


5
令人失望的是,这似乎是不可能的。
OJFord 2014年

9
我很惊讶这没有更多的选票。有没有办法提出任何人都知道的功能请求?对于IDE,XCode在重构能力方面还有很多不足。
thumbtackthief

1
最终在Xcode 10 Beta 3中可用。在下面添加了详细答案。
无限

Answers:


79

可以从Xcode 10 Beta 3开始

您可以使用“查找并选择下一个”和“查找并选择上一个”菜单命令为下一个和上一个查找结果添加选择。

此外,您可以使用“选择下一个出现次数”和“选择上一个出现次数”菜单命令为当前选定文本的下一个和上一次出现快速添加选择。

E 选择当前选中项的下一次出现

E 选择当前选中项的先前出现

G 查找并选择下一步

G 查找并选择上一个

您也可以使用Find菜单查找这些操作。当然,可以将其绑定到不同的热键!


2
您也可以command + left click选择单词并选择Edit all in scope执行此操作!
伦纳德'18

1
option在Mac键盘上,而不是ALT
willcwf

46

如果您要更改变量名,则当光标位于变量上时,按control+ command+E并键入。(这是“在范围内全部编辑”)

要在项目范围内进行编辑,总是有Editor > Refactor > Rename菜单项


5
谢谢!不幸的是,这并不是我一直在寻找的东西,但这可能与我们目前所能达到的程度差不多。
Matt Rowles 2014年

那只能在某些时候解决问题-例如,也许我想附加<< std::endl到多个位置。
OJFord

@OllieFord在您描述的情况下,它通常可以工作..它选择了您选择的内容的所有实例,但是不管您是否添加空格等等。但是,也许您要指出的是,每次使用该变量后,您都不需要文本
csga5000 '16

21

突出显示您想要获得下一个实例的单词,然后按:

+ E

+ G

继续按+G会循环显示您按+的所有单词实例E

我的网站上有时会引用更多的xcode快捷方式


4
是的,但这只能找到下一个实例,它不能让您在进行操作时在每个实例上放置新的光标。
马特·罗尔斯

12

您可以使用Shift+ Ctrl+创建游标 Mouse Click在需要更多游标的地方

您可以使用 Shift+ Ctrl+ (或如果要在下一行创建新光标,)。

Option+Mouse Drag也很好


6

我刚刚在Twitter上读到Xcode团队添加了多个游标功能进行测试,但将其保持隐藏状态。要启用它,请使用以下命令。

默认写com.apple.dt.Xcode PegasusMultipleCursorsEnabled -bool true

链接供您参考。 Xcode中的多个游标


5

苹果刚刚发布了具有以下功能的Xcode 10 beta:

Xcode Source Editor现在支持多光标编辑,使您可以一次快速编辑多个范围的代码。您可以使用鼠标通过⌃ +⇧+ Click或使用列选择(⌥+ Click + Drag)来放置其他光标,或者使用⌃ +⇧+ Up向上选择列或⌃ +⇧+ Down向下选择列来放置键盘。(12564506)


1
这是朝着正确方向迈出的一步,但仍然没有透露它是否也在实施下一个突出显示的代码捕获。感谢更新!
马特·罗尔斯

4

Xcode-Multi-Edit-Plugin。它仍然不太像Sublime,因为除了开始Command-d-ing时所做的选择之外,不能使用多个光标进行编辑,但它已经足够接近了。

该插件未针对Xcode 7.3进行更新,但是可以通过添加轻松地解决此问题

    <string>ACA8656B-FEA8-4B6D-8E4A-93F4C95C362C</string>

<key>DVTPlugInCompatibilityUUIDs</key>插件的Info.plist中类似UUID的列表。(发现于~/Library/Application\ Support/Developer/Shared/Xcode/Plug-ins/XcodeMultiEdit.xcplugin/Contents/Info.plist

当前缺少Xcode 7.3支持的另一个有前途的插件是Multiplex。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.