Як перемістити курсор на правильний рівень відступу, не виходячи з режиму вставки?


14

Наприклад, у мене є цей код 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();
}

Що я прошу - це команда картографування.

Велике спасибі! :-)

Відповіді:


16

Як згадував @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

3
Крім того, <C-f>типово визначається в 'indentkeys'або 'cinkeys'(залежно від того, який механізм відступу використовується), що дозволить вам переспрямувати поточний рядок туди, де він повинен бути, з режиму вставки. Дивіться : допомогти i_CTRL-F
jamessan

Зауважте, що вам потрібно :set cindentабо ці клавіші нічого не роблять!
JonnyRaa
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.