如何开始在两个方法之间以空格插入文本?

时间:2020-01-26 02:58:49

标签: vim

假设我有以下代码:

01  int function1(){
02    //do something
03  }
04
05  int function2(){
06      //do something
07  }

我想在function1和function2之间插入一个新函数。

当前,我将光标置于03行,按o键,然后按Enter键,因此我正在编辑的行之前有一个空行,而在正在编辑的行之后有一个空行。

有没有更简单的方法?我经常这样做,以至于想知道是否有更快的方法。

1 个答案:

答案 0 :(得分:0)

vim可以在任何模式下编辑键盘命令。 例如,放入.vimrc:

public class RealmMigration implements io.realm.RealmMigration {

.

.

.

        if (oldVersion == 3) {
            //Create a schema for Bank
            final RealmObjectSchema bankSchema = realmSchema.get("Bank");
            //Create a schema for Token that has been in Bank model
            final RealmObjectSchema tokenSchema = realmSchema.get("Token");
            //We use bankSchema for add tokenList field and transform
            bankSchema
                .addRealmListField("tokenList", tokenSchema)
                .transform((obj) -> {//obj is bank model,we have a transform in bank model
                         DynamicRealmObject token = obj.get("Token");
                         List<DynamicRealmObject> tokenList = obj.get("tokenList");
                                //We add token from pre version to tokenList in new version
                                if (token != null) tokenList.add(token);
                            }
                    )
                    //Finally remove unwanted field
                    .removeField("Token");
        }
}

在插入模式下,按Ctrl-Enter可以避免在插入新行时自动缩进。

或者这个:

imap <C-Enter> <Enter><C-W>

在正常模式下,按Ctrl-Enter模拟按o,然后按Enter,最后删除自动缩进。