1

问题

当我突出显示一行并从单行转换时,我想按一个键:

JGLogEntry *logEntry = [JGLogEntry applicationNoWindowsFrom:date1 to:date2 intoMOC:mockRawMOC];

到多行语句:

JGLogEntry *logEntry = [JGLogEntry applicationNoWindowsFrom:date1
                                                         to:date2
                                                    intoMOC:mockRawMOC];

我试过的

我有一个简单的 ruby​​ 脚本,几乎可以让我到达那里。

#!/usr/bin/env ruby
s = STDIN.read
s.gsub!(/(:.+?\w) (\w.+?)/,'\1' + "\n\t" +'\2')
print s

当我将输出设置为“替换选择”时,我得到了这个:

JGLogEntry *logEntry = [JGLogEntry applicationNoWindowsFrom:date1
     to:date2
     intoMOC:mockRawMOC];

当我将输出设置为“放置在剪贴板上”,然后将其粘贴进去时,我得到了想要的结果:

JGLogEntry *logEntry = [JGLogEntry applicationNoWindowsFrom:date1
                                                         to:date2
                                                    intoMOC:mockRawMOC];

然而,这是两个笨拙的按键。

有什么想法可以让替换的文本遵守 Xcode 的自动缩进规则吗?

4

1 回答 1

2

检查“将制表符转换为空格”的预安装脚本,以及它如何执行内嵌的 applescript。用它来告诉 XCode 执行菜单项

编辑 > 格式 > 重新缩进

我不确定你是如何使用 ruby​​ 做到这一点的,也不确定关于 applescript 内容的详细信息,但我敢打赌它相当直截了当..

于 2010-04-04T18:27:11.880 回答