web-dev-qa-db-fra.com

Passer à une onglet particulier dans VIM

J'essayais de passer d'un onglet à un autre onglet (qui peut ne pas être adjacent à l'onglet précédent) dans Vim. Y a-t-il un raccourci pour cela, comme nous avons Ctrl-p/Ctrl-n Pour passer aux onglets adjacents?

En outre, j'essayais d'écrire un mappage de clé qui donnera une variable comme entrée à une fonction et effectuera l'opération. Par exemple, disons que je presse Ctrl-5 et une fonction (écrite par l'utilisateur) sera appelée et donnée en entrée 5, et le curseur ira à l'onglet 5 (s'il y a un 5ème onglet ouvert).

Pouvez-vous s'il vous plaît suggérer comment cela peut être fait?

55
Sumit

utilisation 5gt Pour passer à l'onglet 5

: tabn [ext] {compte}

{comte} gt

Aller à la page de l'onglet {compte}. La première page d'onglet est numéro un.

vous pouvez également le lier à une clé:

:map <C-5> 5gt
:imap <C-5> <C-O>5gt

(Cartographie Ctrl-<number> pourrait être différent/impossible pour certains terminaux. Envisager Alt-<number> alors)

78
Antony Hatchkins

S'attaquer seulement à votre première question et citant de help tabs dans Vim:

{count}gt       Go to tab page {count}.  The first tab page has number one.
{count}gT       Go {count} tab pages back.  Wraps around from the first one
                to the last one.

c'est-à-dire en tapant 3gt va à la troisième onglet, 3gT va 3 onglets de l'onglet en cours.

19
James Polley