Как использовать vim для редактирования переменной сценария оболочки в интерактивном режиме? - PullRequest
0 голосов
/ 15 января 2020

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

Я хотел бы представить возможность настроить команду с помощью Vim. Желаемое поведение похоже на то, что делает git commit ... Поэтому мне просто нужно придумать способ подачи строки в Vim таким образом, чтобы при сохранении и выходе строка возвращалась в сценарий. Я считаю, что git использует файл .git/COMMIT_EDITMSG. Интересно, есть ли другие способы добиться этого, возможно, без необходимости доступа к файловой системе.

1 Ответ

0 голосов
/ 15 января 2020

Раньше мой код был

CMD="$(echo "$COMMANDS" | sed -n "${COUNTER}p")" # build command
$CMD # run command

Теперь это просто

echo "$COMMANDS" | sed -n "${COUNTER}p" > .CMD_EDIT # build cmd, prep interactive edit
vim .CMD_EDIT # interactive edit
. .CMD_EDIT # run command by sourcing the command

Это имеет встроенное поведение, подобное git commit, которое ничего не делает, если вы очищаете буфер.

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