Есть ли в MacVim ярлыки для переключения вкладок с одной на другую?
Любые советы, как связать ярлыки в .vimrc, например ⌘ + 1 для Tab 1 и ⌘ + 2 для Tab 2. Например, как переключение вкладок браузера.
Есть ли в MacVim ярлыки для переключения вкладок с одной на другую?
Любые советы, как связать ярлыки в .vimrc, например ⌘ + 1 для Tab 1 и ⌘ + 2 для Tab 2. Например, как переключение вкладок браузера.
Конечно, вы можете изменить сочетания клавиш с помощью системных настроек OSX для вашей клавиатуры, как показано здесь: Как переназначить любой ярлык клавиатуры в Mac OS X
Некоторые могут предпочесть сделать это через свой .vimrc
:
if has("gui_macvim")
" Press Ctrl-Tab to switch between open tabs (like browser tabs) to
" the right side. Ctrl-Shift-Tab goes the other way.
noremap <C-Tab> :tabnext<CR>
noremap <C-S-Tab> :tabprev<CR>
" Switch to specific tab numbers with Command-number
noremap <D-1> :tabn 1<CR>
noremap <D-2> :tabn 2<CR>
noremap <D-3> :tabn 3<CR>
noremap <D-4> :tabn 4<CR>
noremap <D-5> :tabn 5<CR>
noremap <D-6> :tabn 6<CR>
noremap <D-7> :tabn 7<CR>
noremap <D-8> :tabn 8<CR>
noremap <D-9> :tabn 9<CR>
" Command-0 goes to the last tab
noremap <D-0> :tablast<CR>
endif
Поскольку MacVim является реальной программой для Mac OS, вы можете отобразить переключение вкладок так же, как вы отображаете команды в любой программе (о которой я лично недавно узнал).
Откройте Системные настройки, выберите "Клавиатура", затем "Ярлыки приложений" (в левом меню). Под меню справа нажмите на плюс (+), чтобы добавить новую команду. Выберите MacVim для приложения, а для заголовка меню введите "Выбрать следующую вкладку" и выберите ярлык (я выбрал Cmd+ стрелка вправо). Затем сделайте то же самое для команды "Выбрать предыдущую вкладку".
"Выбрать следующую вкладку" и "Выбрать предыдущую вкладку" находятся в MacVim в меню "Окно". Любая опция, которую вы видите в любом меню приложения, может быть переназначена с помощью этого метода.
Вы можете выбрать следующую вкладку с помощью ⌘+} и выбрать предыдущую вкладку с помощью ⌘+{
Клавиша Shift требуется, чтобы не просто нажать [ вместо a }
Таким образом, это сочетание клавиш ⌘+shift+] или ⌘+shift+[
Этот ярлык работает во многих приложениях, т.е. в Терминале
В моем ~/.vimrc для Linux есть следующее. Вы должны иметь возможность изменить последовательность « <M-
» на « <D-
», чтобы получить то, что вы хотите:
" Meta+1-0 jumps to tab 1-10, Shift+Meta+1-0 jumps to tab 11-20:
let s:windowmapnr = 0
let s:wins='1234567890!@#$%^&*()'
while (s:windowmapnr < strlen(s:wins))
exe 'noremap <silent> <M-' . s:wins[s:windowmapnr] . '> ' . (s:windowmapnr + 1) . 'gt'
exe 'inoremap <silent> <M-' . s:wins[s:windowmapnr] . '> <C-O>' . (s:windowmapnr + 1) . 'gt'
exe 'cnoremap <silent> <M-' . s:wins[s:windowmapnr] . '> <C-C>' . (s:windowmapnr + 1) . 'gt'
exe 'vnoremap <silent> <M-' . s:wins[s:windowmapnr] . '> <C-C>' . (s:windowmapnr + 1) . 'gt'
let s:windowmapnr += 1
endwhile
unlet s:windowmapnr s:wins
В дополнение к созданию собственных отображений, есть встроенные ярлыки VIM. Попробуйте число, за которым следует gt
.
Например: 3gt
переводит вас на 3-ю вкладку. Вы также можете просто нажать gt
чтобы перейти на следующую вкладку, или gT
чтобы перейти на предыдущую.
(Начиная с vim 7. что-то, вкладки запекались даже в текстовой версии без gvim.)