例如,我有此JavaScript代码。 |字符表示光标位置,并且在空行上。
function a() {
    console.log("a");

    function b() {
        console.log("b");

        function c() {
            console.log("c");
        }
|
        c();
    }

    b();
}

执行请求的操作后,内容将如下所示:
function a() {
    console.log("a");

    function b() {
        console.log("b");

        function c() {
            console.log("c");
        }
        |
        c();
    }

    b();
}

我要的是是一个映射命令。

#1 楼

如@jamessan所述,<C-f>将在插入模式下缩进正确的位置。您还可以使用<C-t><C-d>从插入模式增加或减少缩进级别。

但是,您可以使用以下一种技术来完全避免进入这种情况:


使用o / O从上一行开始新行
使用cc / S编辑该行(考虑缩进)

了解更多帮助查看:

:h cc
:h S
:h o
:h i_CTRL-T
:h i_CTRL-F


评论


同样,通常在'indentkeys'或'cinkeys'中定义(取决于所使用的缩进机制),这将允许您从插入模式将当前行重新缩进到应该的位置。参见:help i_CTRL-F

–詹姆斯
2015年12月8日17:33

注意,您需要:set cindent或这些键不起作用!

–JonnyRaa
18年6月14日在9:02