В моем .hgrc
я могу предоставить редактор или команду для запуска редактора с параметрами при фиксации.
Я хочу написать метод или псевдоним, который запускает $ hg ci
, он не только открываетсясообщение вверх в Vim, но также разделило бы окно и там распечатало $ hg diff
.
Я знаю, что могу дать параметры vim с помощью опции +{command}
.Таким образом, запуск $ vim "+vsplit"
делает разделение, но любые другие опции идут в первое открытое окно.Поэтому я предполагаю, что мне нужна определенная функция, но у меня нет опыта в написании моих собственных скриптов Vim.
Скрипт должен:
- Открыть новое вертикальное разбиение с пустым буфером (с
vnew
возможно) - При запуске пустого буфера
:.!hg diff
- Установить тип файла пустого буфера как diff
:set ft=diff
Я написал такую функцию:
function! HgCiDiff()
vnew
:.!hg diff
set ft=diff
endfunction
И в .hgrc
я добавил опцию: editor = vim "+HgCiDiff()"
Это вроде работает, но я хотел бы, чтобы разделенное окно было в правой части (теперь оно открываетсяв левом) и ртутное сообщение будет сосредоточено окно.Также :wq
может быть установлено как временное сочетание клавиш :wq<CR>:q!
(при условии, что фокусируется ртутное сообщение).
Есть предложения, чтобы сделать это немного более полезным и менее коротким?
ОБНОВЛЕНИЕ: Я нашел Vim Split Guide , поэтому изменение vnew
с помощью rightbelow vnew
открывает diff на правой стороне.