Apakah ada cara pintas untuk mengalihkan Tab dari satu ke yang lain di MacVim?
Setiap tips untuk mengikat pintasan sendiri di .vimrc seperti β +1 untuk Tab 1 dan β + 2 untuk Tab 2. Misalnya, seperti mengganti tab browser.
Apakah ada cara pintas untuk mengalihkan Tab dari satu ke yang lain di MacVim?
Setiap tips untuk mengikat pintasan sendiri di .vimrc seperti β +1 untuk Tab 1 dan β + 2 untuk Tab 2. Misalnya, seperti mengganti tab browser.
Jawaban:
Karena MacVim adalah program aktual di Mac OS, Anda dapat memetakan tab switching dengan cara yang sama seperti memetakan perintah dalam program apa pun (yang secara pribadi baru saja saya pelajari tentangnya).
Buka System Preferences, pilih "Keyboard", lalu "Shortcut Aplikasi" (di menu sebelah kiri). Di bawah menu di sebelah kanan, klik pada tanda tambah (+) untuk menambahkan perintah baru. Pilih MacVim untuk aplikasi, dan untuk judul menu, ketik "Pilih Tab Berikutnya", dan pilih pintasan (saya memilih Cmd + panah kanan). Kemudian lakukan hal yang sama untuk perintah "Pilih Tab Sebelumnya".
"Pilih Tab Berikutnya" dan "Pilih Tab Sebelumnya" ditemukan di MacVim di bawah menu "Jendela". Opsi apa pun yang Anda lihat di salah satu menu untuk aplikasi dapat dibuat ulang menggunakan metode ini.
Anda tentu saja dapat mengubah pintasan dengan preferensi sistem OSX untuk keyboard Anda seperti yang ditunjukkan di sini: Cara Memetakan Ulang Pintasan Keyboard di Mac OS X
Beberapa mungkin lebih suka melakukannya melalui .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
Anda dapat Pilih Tab Berikutnya dengan β+ }dan Pilih Tab Sebelumnya dengan β+{
Tombol shift diperlukan untuk tidak hanya menekan [bukan }
Jadi pintasannya adalah β+ shift+ ]atau β+ shift+ [
Pintasan ini berfungsi di banyak aplikasi, yaitu di Terminal
Saya memiliki yang berikut di ~ / .vimrc saya untuk Linux. Anda harus dapat mengubah urutan " <M-
" menjadi " <D-
" untuk mendapatkan yang Anda inginkan:
" 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
Selain membuat pemetaan Anda sendiri, ada yang built-in pintas vim. Coba nomor yang diikuti oleh gt
. Misalnya: 3gt
membawa Anda ke tab ke-3. Anda juga dapat melakukannya hanya gt
untuk pergi ke tab berikutnya, atau gT
pergi ke yang sebelumnya.
(Sejak vim 7.something, tab telah dipanggang bahkan dalam versi teks-mode non-gvim.)