Я использую vim для редактирования конфигурационных файлов на недавно построенных серверах Linux. На этих полях у меня есть настройка по умолчанию vim (RHEL 6.2).

При редактировании этих файлов я хотел бы по возможности избегать ненужных каталогов и путей к файлам.

Предположим, у меня есть файл foo.conf открытый в редакторе, содержимое которого я только что ввел:

MYFOO =

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

Может ли Vim сделать это?

Я не могу добавить какие-либо плагины в vim, а также не могу изменить его конфигурацию.

2 ответа2

1

Прочтите вывод из ls и отформатируйте так:

  1. ESC
  2. :r!ls -d /etc/f Tab Enter
  3. <переместиться на одну строку вверх, например, K или >
  4. Shift+J
  5. Икс

Объяснение:

  1. Переходит в "командный" режим (технически "нормальный" режим).
  2. :r читает входные данные из источника и вставляет их после текущей строки ! интерпретирует следующее как команду оболочки и выполняет ее.
  3. Подниматься.
  4. J соединяет строку со следующим, а также вставляет пробел между ними.
  5. Удалите лишнее вставленное пространство.
1

Используйте omnicompletion: нажмите <C-x><C-f> , выберите <CR> , повторите…

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