У меня есть vim (ну, на самом деле, sed) шаблон поиска и замены, который я использую для сброса свойства AUTO_INCREMENT в операторах mySQL CREATE TABLE :

:% S /AUTO_INCREMENT = [0-9] * /AUTO_INCREMENT = 1 / г

Я часто использую эту команду и хотел бы создать ярлык в vim. Я знаю, что мне придется редактировать мой .vimrc, но я не могу понять синтаксис cmap .

Моя конечная цель - быть в состоянии бежать

: Сброс-автоинкрементный

И запустите приведенный выше поиск и замените глобально по всему файлу.

1 ответ1

4

Для этой цели, я думаю, пользовательская команда будет лучше, чем cmap. Увидеть

:help 40.2
:help user-commands

Vim требует, чтобы пользовательские команды начинались с заглавной буквы и содержали только буквы и цифры. Нет дефисов. Таким образом, ваша команда должна быть чем-то вроде ResetAutoIncrement.

command ResetAutoIncrement %s/AUTO_INCREMENT=[0-9]*/AUTO_INCREMENT=1/g

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .