Переключиться на конкретную вкладку в Vim, как в Firefox? - PullRequest
8 голосов
/ 03 июня 2009

Как заставить Vim переключаться на определенную вкладку, когда я нажимаю Alt + #? Например, чтобы перейти на третью вкладку, я бы нажал Alt + 3 (как в Firefox).

Редактировать: также, как мне сделать Control + Tab == GT, Control + Shift + Tab == GT

Ответы [ 4 ]

8 голосов
/ 03 июня 2009
:nmap <M-1> :tabnext 1<CR>
:nmap <M-2> :tabnext 2<CR>
etc.

См. :h :tabnext. Обратите внимание, что по умолчанию вы также можете сделать Ngt в обычном режиме, где N - номер нужной вкладки (начиная с 1).

5 голосов
/ 03 июня 2009

Это работает для меня (скопировано и вставлено из моего RC):

" Tab Control (others)
 map <A-1> 1gt
 map <A-2> 2gt
 map <A-3> 3gt
 map <A-4> 4gt
 map <A-5> 5gt
 map <A-6> 6gt
 map <A-7> 7gt
 map <A-8> 8gt
 map <A-9> 9gt

Тоже совершенство:

map <C-Right> <ESC>:tabnext<CR>
map <C-Left> <ESC>:tabprev<CR>
map <C-t> <ESC>:tabnew<CR>

Вы можете изменить его на nmap, как в примере выше, чтобы немного ограничить использование. Я немного ленив в этом отношении.

Пропустил редактирование следующей вкладки с Ctl-t будет:

map <C-t> :tabnext<CR>

Я не думаю, что преобразование tabprevious возможно в vim из-за способа обработки заглавных символов:

http://www.nabble.com/Maping-Ctrl-Shift-s-problems-td22918941.html

Чтобы сэкономить время, я потратил охоту, когда хотел этого

1 голос
/ 17 мая 2011

Заставить это работать в urxvt оказалось сложно. В конце концов я остановился на следующих привязках:

:nnoremap <Esc>1 gt1
:nnoremap <Esc>2 gt2
:nnoremap <Esc>3 gt3
:nnoremap <Esc>4 gt4
:nnoremap <Esc>5 gt5
:nnoremap <Esc>6 gt6
:nnoremap <Esc>7 gt7
:nnoremap <Esc>8 gt8
:nnoremap <Esc>9 gt9
:nnoremap <Esc>0 gt0

Проблема заключалась в том, что по умолчанию в rxvt комбинации чисел Alt связаны с экранированием префиксных чисел. Первоначально мне удалось иметь следующее в моем файле ~/.vimrc:

:nnoremap <M-1> gt1
:nnoremap <M-2> gt2
...

Это было сделано для работы с помощью следующего для '~ / .Xdefaults':

URxvt*meta8: true

Это заставляет rxvt использовать 8-й символьный бит при нажатии Alt, который Vim использует для определения состояния Alt. Установка этого в вашем файле .Xdefaults позволяет установить 8-й бит. Однако это вызывает проблемы в других программах, таких как irssi, работающий поверх screen, отсюда и моё предлагаемое решение.

0 голосов
/ 17 марта 2012

На Mac вы можете использовать номер cmd + для переключения вкладок. Следующее работает хорошо.

map <D-1> 1gt 
map <D-2> 2gt 
map <D-3> 3gt
etc...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...