руководство по вим-питу

внешний интерфейс регулярное выражение VIM Emacs

Личный сайт:Персиковый сад

0. Предисловие

0.1 Введение

Vim известен как «Бог редакторов», а его современный emacs известен как «Редактор Бога». Видно, что у vim очень высокий статус в редакторе, благодаря перебиранию vim, набирать код как текущую воду. Я особенно восхищаюсь основателем за создание такого удобного метода аппликатуры для набора кода.Эта статья призвана познакомить вас с операцией аппликатуры vim.

0.2 Почему я должен изучать vim во внешнем интерфейсе

В сегодняшнюю эпоху интерфейсных инструментов разработки (VS Code, Sublime, Atom и IDE Webstorm) почему я должен представлять антиквариат, разработанный более 20 лет назад? Я хочу сказать здесь, что хотя фон старый, ценность, которую он приносит, не уменьшилась.Как только вы привыкнете к перебиранию vim, вы почувствуете, что очень неудобно писать код без работы с vim, и ты даже не знаешь, как им управлять. Однако, когда вы пишете код в редакторе, поддерживающем vim fingering, вы почувствуете, что он работает плавно, а если вы добавите механическую клавиатуру, это просто приятно, особенно в соответствии со стилем гиков.

Как только вы научитесь аппликатуре vim, это принесет вам пользу на всю жизнь, по крайней мере, в эпоху кодирования, без преувеличения, позволит вам избавиться от надоедливых, частых движений мыши при наборе кода, что также является дизайном vim. Одна из идей - избавиться от мыши.

0.3 Статья подходит для читателей

Эта статья больше подходит для фронтенд-разработчиков, потому что я занимался лишь некоторыми разработками в области фронтенда с помощью vim и не имею права голоса в других областях.

0.4 Q&A

В: Вы рекомендуете vim позволить нам полностью отказаться от предыдущего редактора и передать его в объятия vim?

О: Конечно нет. Во-первых, стоимость обучения vim по-прежнему очень высока, потому что он принципиально отличается от того, как мы обычно используем редактор для ввода кода, потому что он не требует мыши и работает исключительно с клавиатурой. Подумайте о том, насколько медленна скорость ввода кода, если вы не используете мышь в своем vs-коде и полагаетесь на клавиши со стрелками вверх, вниз, влево и вправо. И новичкам все еще очень сложно сделать vim собственной IDE. Итак, что я рекомендую здесь, будь то ваш vs-код, возвышенное и т. Д., Установите плагин vim. Я попробовал это на vs code, это круто, но теперь я в объятиях emacs.

Хотя я использую emacs, я все равно устанавливаю плагин vim (Evil). Если вы заинтересованы, вы можете порекомендовать spacemacs в следующий раз.

Сказав так много, я просто хочу привлечь всех.Я чувствую, что аппликатура вим стоит изучения, а затем я перейду к основной теме.

1 мнемоника

Все сочетания клавиш, определенные в vim, имеют определенное значение.Здесь я сначала перечислю некоторые часто используемые.

1.1 Связанные с регулярными выражениями

  • $ : переместите курсор в конец строки
  • ^ : Переместите курсор на первую букву текущей строки.

1.2 Класс движения

h (слева), l (справа), j (вверх), k (вниз), f (спереди), b (сзади), u (вверху)

1.3 Класс эксплуатации (оператор)

d (удалить), i (вставить), a (добавить), c (изменить), y (копировать), p (вставить)

1.4 Общие сокращения

ш (слово), с (предложение)

2 Понять три распространенных режима в vim

В vim есть несколько режимов, но поскольку здесь я представляю установку плагинов в текущем редакторе, командный режим, используемый для сохранения файлов и файлов выхода, не будет представлен.

  1. Нормальный режим (режим по умолчанию, т.к. сцены, использующие этот режим больше всего, все установлены как режим по умолчанию).
  2. Режим вставки (режим вставки - используйте меньше, используйте его, и vim станет "тупым").
  3. Визуальный режим (визуальный режим, режим именованного курсора или режим выбора могут быть более понятными)

2.1 Связь преобразования между тремя режимами

图片来源参考文章

3 учебника

Когда мы помним приведенную выше мнемонику, мы можем действовать как английские фразы.

Синтаксис сочетания клавиш vim: [оператор][количество][движение], например, удаление двух слов d2w, оператор и движение Некоторые из них я уже приводил ранее.

3.1 Переместите курсор

3.1.1 Самые основные h, j, k, l

Самое простое движение вверх, вниз, влево и вправо (тот же эффект, что и при движении вверх, вниз, влево и вправо на клавиатуре, но клавиши направления часто находятся внизу справа на клавиатуре, далеко от основной области клавиатуры, которая также относительно выгодно):

  • h: переместить курсор влево
  • j: курсор перемещается вниз
  • k: курсор движется вверх
  • l: переместить курсор вправо

Движение относится к движению, поэтому добавление «количества» впереди может переместить несколько строк, например, переместиться на 10 строк вверх, вы можете на 10 тыс. Часто в редакторе будут номера строк, а позиционирование нужно добавлять и вычитать.Если используется относительный номер строки, удобнее использовать его. Студенты, которые не понимают относительные номера строк, поймут это, посмотрев на рисунок ниже.

相对行号

3.1.2 Быстрое движение

w: переместить курсор вперед на одно слово b: переместить курсор назад на одно слово 0: переместить курсор в начало текущей строки ^: переместить курсор на первую букву текущей строки (обратите внимание на отличие от 0) $: переместить курсор в конец строки fx: переместить курсор на следующий x текущей строки (x — любая буква) tx: аналогично предыдущей команде, переместиться в позицию слева от x ): переместите курсор к следующему предложению ( : переместить курсор на предыдущее предложение {: переместить курсор на предыдущий абзац }: переместить курсор на следующий абзац

3.1.3 Быстрое позиционирование

Только что ввели курсор, который перемещается к строке по относительному номеру строки, а также использует для перемещения абсолютное позиционирование. Это гг. Синтаксис: [число]gg

  • 2gg : переместите курсор на строку 2
  • gg: переместить курсор в начало файла
  • G: перейти к файлу желудка
  • H: перейти к верхней части экрана
  • M: перейти в середину экрана
  • L: перейти к нижней части экрана

Функция закладок: Эта функция также очень удобна.Функций, которые есть у редакторов, немного.Перечислены отдельно,настоятельно рекомендуется.

  • m: добавить текущую строку в закладки, x — любая буква (m — метка)
  • ` : одинарная кавычка плюс буква после m будут изменены на только что отмеченную строку

3.1.3 Прокрутка экрана

  • Ctrl + b: перейти на один экран вверх (инициалы вперед в нижнем регистре)
  • Ctrl + f: перейти на один экран вниз (назад в нижний регистр)
  • Ctrl + d: прокрутить контент на полэкрана вниз (инициалы вниз в нижнем регистре)
  • Ctrl + u: прокрутить контент на полэкрана вверх (вверх — строчные буквы)

3.2 Вырезать, Копировать, Вставить

  • d[n]w: вырезать содержимое следующих n слов, dw — вырезать текущее слово
  • [n]dd: вырезать содержимое n строк, dd — вырезать текущую строку
  • D: Вырезать содержимое от курсора до конца строки
  • yy/Y: скопировать содержимое текущей строки
  • p: вставить после курсора
  • P: Вставить перед курсором

В обычном режиме операции удаления нет, и это удаление тоже вырез.

Выше все в обычном режиме

3.3 Режим редактирования

Как я уже говорил, вход в режим редактирования станет «тупым» vim, ничем не отличающимся от обычного редактора. Многие знают, что для ввода можно использовать i, и существует множество команд, позволяющих вводить грамотно.

  • i: Вставить рядом с курсором (вставить первую букву в нижнем регистре)
  • I: Вставить в начале строки (вставить первую букву с заглавной буквы)
  • a: вставить символ после курсора (добавить первую строчную букву)
  • A: Вставить в конце строки (добавить первую букву заглавной)
  • o: вставить в предыдущую строку
  • O: вставить на следующей строке
  • s: очистить текущий символ и войти в режим вставки
  • cc/S: очистить текущую строку и войти в режим вставки
  • cw: очистить текущее слово и войти в режим вставки

3.4 Визуальный режим

Визуальный режим проще, если вы его все изучили и будете часто им пользоваться. Я назову этот режим «режим выбора», а затем давайте посмотрим, выбран ли он.

На самом деле есть два ключевых момента: v (выбор символа), V (выбор строки)

3.4.1 v (строчная буква v)

В обычном режиме нажмите v один раз, затем вы можете нажать l, повторно нажимая l, вы обнаружите, что всегда выбрана правая часть (выделенная часть). Та же операция, нажмите v, а затем потренируйтесь нажимать h, j, k.

Какова цель отбора? Просто для выполнения некоторых операций редактирования, таких как удаление d (по сути вырезание), копирование y.

Небольшой наконечник, также лучше использовать c после выбора, обрезать его и войти в режим вставки.

3,4,2 В (В в верхнем регистре)

V — выбранная строка, что тоже очень просто. После нажатия V, затем j, k можно выделить ряды вверх и вниз, а затем удалить d и скопировать y за один раз, что удобнее.

3.5 Комбинированная работа

Эта функция является более мощной, очень применимой и настоятельно рекомендуется. Сначала напишем формулу: оператор + i|a + область видимости

Оператор — это вставка (c), вырезание (d), копирование (y) и выделение (v), о которых мы упоминали ранее, i представляет область действия, a представляет тег области действия, а область действия — это область действия операции.

Пример: Если вы замените i на ниже, символ также будет включен

  • vib (выбрать содержимое в скобках)
  • viB (выберите содержимое в фигурных скобках)
  • vi" (выберите содержимое в двойных кавычках)
  • vi' (выберите содержимое в одинарных кавычках)
  • vi

3.6 Вызов, поиск, замена

  • u: отменить последнюю операцию (эффект такой же, как у команды + z)
  • /|?xxx: указывает на поиск во всем документе строки, соответствующей xxx, / означает поиск вниз, ? означает поиск вверх, где xxx может быть регулярным выражением. Найдя его, снова введите n, чтобы найти следующее совпадение, и введите N, чтобы искать в обратном направлении.
  • :%s/original/replacement: получить первую «исходную» строку и заменить ее «заменой»
  • :%s/original/replacement/g: получить и заменить все "оригинал" на "замену"
  • :%s/original/replacement/gc: извлекает все «исходные» строки, но спрашивает, заменить ли их перед заменой на «замену»

Эти операции, как правило, представляют собой редакторы с очень хорошими сочетаниями клавиш, и их можно запомнить.

4. Вывод

Цель написания этой статьи не в том, чтобы обобщить какие-то моменты знаний (на самом деле, когда вы знакомы с vim, эти команды полностью формируются в мышечной памяти, и вам вообще не нужно их запоминать), или в том, чтобы написать статья или что-то в этом роде, просто для того, чтобы сделать vim рекламой, чтобы больше людей могли связаться с vim и позволить большему количеству разработчиков быть более эффективными в разработке. Если вы считаете эту статью полезной, пожалуйста, перешлите ее большему количеству людей, чтобы все узнали о ней.

Последнее, что я хочу напомнить, это то, что для этих сочетаний клавиш, их трудно запомнить путем запоминания.Чтобы запомнить их по некоторым смысловым словам, которые я обобщил, может быть быстрее заучить формулы с формулами, а затем вам нужно больше тренируйся и печатай больше, я сам это помню. Когда я только начинал учиться, я не знал этих мнемоник. Я в основном полагался на механическое запоминание. Я просто использовал лист бумаги, а затем копировал команды вручную на бумагу и клал их рядом с моим компьютером. , не сказать, эффект очень хороший.

Желаю вам, ребята, удачи!

Всем привет, я Тао Венг, говорю за себя!

Личный публичный аккаунт WeChat, в будущем старайтесь придерживаться сухой статьи каждую неделю

个人微信公众号

Справочная статья:Энциклопедия ВИМ Байду Как повысить эффективность разработки с помощью Vim