У меня есть обширный набор сопоставлений клавиш ViM для текстовой игры. Один макрос выглядит так:
map <buffer> [[ g0k?UNIT [0-9a-zL]\+;<CR>zow
Это позволяет добиться того, чего я хочу, с одним недостатком: когда я нажимаю CTRL-O
, курсор находится в начале строки выше, где я набрал [[
. Повторное нажатие CTRL-O
возвращает меня к предыдущей позиции движения, а не к линии, с которой я начал.
Есть ли способ заставить курсор переместиться обратно в положение, где я нажал [[
, например, если ViM не кэширует этот промежуточный шаг перемещения? Или есть другой способ заставить это работать?