XCode:如何连接两行代码?

19

假设我有以下代码:

CGColorSpaceRef space = 
CGColorGetColorSpace(col.CGColor);
在XCode中有没有可以将这两行代码合并到一起的快捷键:
CGColorSpaceRef space = CGColorGetColorSpace(col.CGColor);

?

4个回答

14

我发现最简单的方法是:将光标定位在一行的末尾,然后按下CTRL-SHIFT-RIGHT CTRL-SHIFT-LEFT SPACE。

VI中没有像"J"命令这样的功能。


这是一个过时的答案。11年前可能是正确的,但在2023年,XCode有一个^J命令。 - clearlight

8

虽然这是一个老问题,但今天我也在寻找方法,最后添加了以下内容:

<key>JoinLines</key>
<dict>
    <key>Join Current Line</key>
    <string>moveDown:, moveToBeginningOfText:, deleteToBeginningOfLine:, deleteBackward:</string>
</dict>

在文件中:

/Applications/Xcode.app/Contents/Frameworks/IDEKit.framework/Versions/A/Resources/IDETextKeyBindingSet.plist

(需要使用sudo编辑)

然后重新启动XCode,进入偏好设置->键绑定,并将一些快捷键分配给“Join Current Line”。似乎可以工作!


3
你真是个天才!我简直不敢相信,8年后居然有人想出了这个。 - Jeremy
实际上,^J代表“连接段落”。如果您进行自定义绑定,则需要在每次XCode更新时重新添加它们。多个键可以在<dict></dict>部分中定义。我会在末尾添加 'moveToEndOfText' 以便能够不断按键和连接行。而且可能还有一个使用修饰键插入 "," 的变体来连接。我找到了这个详细介绍的视频。我找到的相关资源(包括XCode“命令”列表):luisobo.wordpress.com,github.com/luisobo/Xcode-RuntimeHeaders/blob/master/HexFiend/...,youtube.com/watch?v=Gw7V2COqiJc。 - clearlight
“逗号拼接”命令的替代方案:尽管在运行时头文件XCode中可以找到insertText:命令,但手动操作也不难。假设您想将一个垂直变量名列表合并为用逗号分隔的水平列表(例如[var1,var2,var3 ...]):从var1 ... varN中使用opt+ 垂直拖动,然后使用cmd + right arrow使闪烁光标移动到每行的最后一个字符之后,即使行长度不同(太棒了!)。 然后输入逗号“,”。哇!现在每一行末尾都有逗号了。然后转到顶行并继续按^J以将它们连接起来。 - clearlight

6

Xcode 13.2 增加了 CTRL-J [Join paragraphs (Deletions)] 功能。

XCode Key bindings


2

至少有一个 Xcode 源代码编辑器的扩展提供了“合并行”命令,可在 AppStore 中获取:TextPlus。安装并激活该扩展后,您可以通过“Xcode > 首选项 > 按键绑定”将任何快捷键分配给相应的“合并行”菜单。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接