Открытие Vim и использование какой-либо команды в обычном режиме из терминала? - PullRequest
1 голос
/ 30 июня 2010

Я хочу иметь возможность открывать Vim и автоматически выполнять некоторые команды в обычном режиме (в этом случае, открыть два буфера, поставить отметку в одной строке на одной строке, сложить другую строку и перейти к нижней части файла) , Самое близкое, что я обнаружил, - это использование ключа командной строки -c или +, однако эти команды выполняются в режиме Ex.

Например, я бы хотел написать что-то вроде этого:

vim -some ":e a<CR>:e b<CR>23Gma55GzfG"

Для выполнения всех команд.

Ответы [ 2 ]

4 голосов
/ 30 июня 2010

Почему вам не нравится normal команда?Он не может выполнять команды режима ex, но может использовать все другие режимы:

vim -c 'e a' -c 'e b' -c 'normal! 23Gma55GzfG'

Требуется чан в конце команды, если вы хотите быть уверены, что он не будет использовать никакие сопоставления.

0 голосов
/ 30 июня 2010

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

:command -nargs=1 Onstart <args>

Из командной строки вы должны быть в состоянии назвать это:

gvim c:\file.txt -c "Onstart e a<CR>:e b<CR>23Gma55GzfG"

исправление

Нет, я ошибся.Вам просто нужно передать команды:

vim -c "e a | e b | normal!23Gma55GzfG"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...