Czy w MacVimie są jakieś skróty do przełączania kart z jednej na drugą?
Wszelkie porady dotyczące samodzielnego wiązania skrótów w .vimrc, takie jak ⌘ + 1 dla Tab 1 i ⌘ + 2 dla Tab 2. Na przykład, jak przełączanie kart przeglądarki.
Czy w MacVimie są jakieś skróty do przełączania kart z jednej na drugą?
Wszelkie porady dotyczące samodzielnego wiązania skrótów w .vimrc, takie jak ⌘ + 1 dla Tab 1 i ⌘ + 2 dla Tab 2. Na przykład, jak przełączanie kart przeglądarki.
Odpowiedzi:
Ponieważ MacVim jest rzeczywistym programem w systemie Mac OS, możesz mapować przełączanie kart w taki sam sposób, jak mapujesz polecenia w dowolnym programie (o czym osobiście niedawno się dowiedziałem).
Otwórz Preferencje systemowe, wybierz „Klawiatura”, a następnie „Skróty aplikacji” (w menu po lewej stronie). W menu po prawej stronie kliknij plus (+), aby dodać nowe polecenie. Wybierz MacVim dla aplikacji, a dla tytułu menu wpisz „Wybierz następną kartę” i wybierz skrót (wybrałem Cmd + strzałka w prawo). Następnie zrób to samo dla polecenia „Wybierz poprzednią kartę”.
„Wybierz następną kartę” i „Wybierz poprzednią kartę” można znaleźć w MacVim w menu „Okno”. Każda opcja widoczna w dowolnym menu dla aplikacji może być odwzorowana za pomocą tej metody.
Możesz oczywiście zmienić skróty za pomocą preferencji systemowych OSX na klawiaturze, jak pokazano tutaj: Jak zmienić przypisanie dowolnego skrótu klawiaturowego w Mac OS X
Niektórzy wolą to zrobić za pomocą .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
Możesz wybrać następną kartę za pomocą ⌘+ }i wybierz poprzednią kartę za pomocą ⌘+{
Klawisz Shift jest wymagany, aby nie tylko nacisnąć [zamiast Zamiast, }
więc skrót to ⌘+ shift+ ]lub ⌘+ shift+ [
Skróty te działają w wielu aplikacjach, tj. W terminalu
Mam następujące w moim ~ / .vimrc dla Linux. Powinieneś być w stanie zmienić <M-
sekwencję „ <D-
” na „ ”, aby uzyskać to, czego chcesz:
" 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
Oprócz tworzenia własnych mapowania nie są wbudowane w vim skrótów. Wypróbuj numer, a następnie gt
. Na przykład: 3gt
przenosi cię do trzeciej karty. Możesz także zrobić tylko gt
przejście do następnej karty lub gT
przejść do poprzedniej.
(Od wersji vim 7. tabulatory zostały wypalone nawet w wersji tekstowej innej niż gvim).