Xcode4 Xcode 4中的文本编辑宏?

Xcode4 Xcode 4中的文本编辑宏?,xcode4,macros,key-bindings,Xcode4,Macros,Key Bindings,我试图弄清楚如何在Xcode 4中定义新的文本编辑击键 举一个例子,Xcode似乎没有非常有用的Emacs连接行函数:删除当前行和上一行之间的换行符,并删除当前行开头多余的缩进空格。ie,从以下位置输入一次按键: _measurement = [DPLMeasurement newWithDate:measureDate inManagedObjectContext:[datastore managedObjectContext]]; 为此: _measure

我试图弄清楚如何在Xcode 4中定义新的文本编辑击键

举一个例子,Xcode似乎没有非常有用的Emacs连接行函数:删除当前行和上一行之间的换行符,并删除当前行开头多余的缩进空格。ie,从以下位置输入一次按键:

    _measurement = 
        [DPLMeasurement newWithDate:measureDate inManagedObjectContext:[datastore managedObjectContext]];
为此:

    _measurement = [DPLMeasurement newWithDate:measureDate inManagedObjectContext:[datastore managedObjectContext]];
而不是这个:

    _measurement =         [DPLMeasurement newWithDate:measureDate inManagedObjectContext:[datastore managedObjectContext]];

我已经看到了用户脚本的说明,这些说明显然是针对Xcode 3的。Xcode 4不再有类似的功能了吗

哈雷对这个问题的回答几乎符合我的要求:

将以下内容添加到plist文件/Developer/Library/privateframes/IDEKit.framework/Resources/IDETextKeyBindingSet.plist中:

Join Previous Line
String
moveToBeginningOfLine:, moveWordRight:, moveWordLeft:, deleteToBeginningOfLine:, deleteBackward:

我之所以说“几乎”,是因为它连接了两行,并删除了第二行开头的空白,但如果第一行没有以空格结尾,它只会将它们放在一起,我必须输入所需的空格。如果标点恰好落在行首,它还会删除标点(如开括号)。所以我不太清楚。

你是说语法感知缩进吗?嗯,有点。Xcode为我做了很多缩进,这通常是一件好事。但是,当我想重新连接刚刚拆分的两行时,我还必须手动删除所有空白。这很烦人。但我也对一般情况感兴趣——我想定义其他emacs,比如文本编辑功能,但我不知道从Xcode中的何处开始。如果您选中-Xcode-preferences-text editing-identiation,您可以根据需要定制这里的功能。据我所知,当我键入换行符时,语法感知缩进为我插入制表符,但当我键入backspace时,它不会再次将制表符取出。除非我遗漏了什么?不,这两种方式都有效,如果您设置了制表符,请使用“首选缩进”选项。然后我将为newline和backspace工作。