vim abbr: как остановить генерацию новой строки? - PullRequest
1 голос
/ 21 октября 2011

в vimrc, если я делаю

iab YBK \left<\right><Left><Left><Left><Left><Left><Left><Left>

тогда, когда я наберу YBK, у меня будет

\left<
_\right>

где _ - это место, где находится курсор. Это в значительной степени то, что я хочу, за исключением того, что vim автоматически генерирует разрыв строки перед позицией курсора, так как я хочу

\left< _ \right>

Итак, как избежать неприятностей с переносом строки? спасибо.

1 Ответ

2 голосов
/ 21 октября 2011

посмотрите на surround.vim .Я думаю, что вы можете расширить его своими собственными парами «открыть / закрыть».Это поведение построено уже для нескольких типов пар.Два примера, чтобы зажечь ваш интерес:

  • vS C -] (оборачивается в { ... } с новой строкой вокруг и с отступомк настройкам отступа типа файла

  • vS C - <</kbd>para Введите (переносится в <para> ... </para>), пример:

.

the quick fox jumped over

(установите курсор на q in quick , нажмите v2eS C - <</kbd>para Введите

Результат:

the <para>
    quick fox
</para> jumped over
Редактировать

Похоже, что вы хотели этого наоборот - без переносов строк . Ну, тогда используйте vs<para Введите или vS{ соответственно, которые по умолчанию не вставляют разрывы строк

...