Вставить вывод системной команды в текущее местоположение в vim

Вы говорите «сожжены на CD». Он должен быть на DVD, поскольку он негабаритный. Бразеро сказал бы вам об этом. Если вы использовали глючный CD-рекордер, возможно, он сжег вам компакт-диск с ошибкой. Вот почему у вас проблемы с USB-накопителем.

1
задан 25 August 2012 в 10:59

2 ответа

:r !command 

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

Но скажите, если вы находитесь в строке № 3. Если вы попробуете :r !date. Он будет вставлять значение даты в строку 4.

Если вы хотите, чтобы значение даты отображалось в строке номер 3, вы можете попробовать :2r !date вставить значение даты в строке номер 3.

20
ответ дан 25 May 2018 в 07:11
  • 1
    Это вставляет другую строку, но все же на отдельной строке. Я хочу вставить его в текущее местоположение! – deshmukh 25 August 2012 в 11:48

Альтернативный способ вставки вывода из внешней команды перед курсором:

:exe 'norm i' . system("ls -l")

или использовать регистр выражений (:help @=):

"=system('ls -la')

затем нажать P Или более короткий путь:

<CTRL-R>=system('ls -la')<CR>
6
ответ дан 25 May 2018 в 07:11

Другие вопросы по тегам:

Похожие вопросы: