Вим, как составить сплоченность двух задач под одним ярлыком?
-
10-10-2019 - |
Вопрос
Мне нравится иметь номера линий в VIM, но иногда номера строк раздражают. У меня установлены ярлыки .vimrc:
map <c-F12> :set nonumber<ENTER>
map <c-F11> :set number<ENTER>
Для их выключения/включено.
Можно ли подключить обе задачи (выключение/включено) под одним ключом? Я имею в виду, что когда номера строк находятся на ярлыке, должны выключить их и включить, когда номера линий выключены.
Решение
Из справки VIM вы можете использовать следующий синтаксис:
:se[t] {option}! or
:se[t] inv{option} Toggle option: Invert value. {not in Vi}
Видеть :help set-option
В вашем случае вы можете использовать:map <c-F11> :set number!<ENTER>
Другие советы
Если вы хотите также измениться между относительным номером строки, номером строки и номером, вы можете использовать что -то вроде следующего:
let g:relativenumber = 0
function! ToogleRelativeNumber()
if g:relativenumber == 0
let g:relativenumber = 1
set norelativenumber
set number
elseif g:relativenumber == 1
let g:relativenumber = 2
set nonumber
set relativenumber
else
let g:relativenumber = 0
set nonumber
set norelativenumber
endif
endfunction
map <c-f11> :call ToogleRelativeNumber()<cr>
Не связан с StackOverflow