C'è un modo per visualizzare le chiavi attualmente mappate in Vim?


183

Fondamentalmente, vorrei visualizzare tutte le mappe delle chiavi create nel buffer corrente da tutti i plugin, vimrc, ecc. Nel buffer corrente. C'è un modo per fare questo?

Risposte:


238

Puoi farlo con il :mapcomando. Ci sono anche altre varianti.

  • :nmap per mappature in modalità normale
  • :vmap per i mapping della modalità visiva
  • :imap per i mapping della modalità di inserimento

L'elenco sopra non è completo. Digitando :help mapVim ti darà maggiori informazioni.


10
Solo per chiarire, credo :map, come si pone la domanda originale, mostra solo le mappature fatte da plugin, vimrc, ecc. Se vuoi vedere le combinazioni di tasti predefinite in vim, usa:index
Von

28
@Von, forse vuoi dire :help index.
Lqueryvg,

2
questi solo darvi le mappature definite dall'utente, non il built-in (default) binding
Tyler Durden

1
È possibile scriverli su un file per rivederli in un secondo momento?
Anton Daneyko,

@AntonDaneyko È possibile utilizzare github.com/AndrewRadev/bufferize.vim a tale scopo.
Radlan,

86
:redir! > vim_keys.txt
:silent verbose map
:redir END

Ciò genera le scorciatoie, con la posizione in cui sono state definite, in un file di testo.


1
Credo che intendevi usare il :redircomando, non il :remapcomando.
Aaron Hays,

1
Grazie, grazie, grazie!!! Alla fine ho scoperto che MacVim stava rimappando il mio comando <A-Up>. Risolto aggiungendo let macvim_skip_cmd_opt_movement = 1
RichS

54

Oltre alle risposte su :mapsenza argomenti: non perdere la sua forma dettagliata ( :verbose map) che mostra dove sono stati definiti i mapping (vedi :help map-verbose).



13

:mape i suoi amici sono la chiave, :verboseaggiunge informazioni e:redir consente il perfezionamento post-ricerca.

Sono un mix perfetto per mostrare quale comando è associato a quale scorciatoia e viceversa, ma se vuoi cercare alcuni tasti ed evitare i file temporanei ogni volta che devi cercare i mapping, dai un'occhiata a scriptease e:Verbose comando.

È un involucro acceso :verbose per mostrare il risultato in una finestra di anteprima.

in questo modo puoi cercare quello che vuoi all'interno dei risultati senza usare i file temporanei

digitare :Verbose mape utilizzare / ?come al solito.


4

Un altro modo è salvare la sessione in un file e quindi modificare questo file in quanto contiene tutti i mapping e le impostazioni.

:mks[ession] [file] - Scrivi uno script Vim che ripristina la sessione di modifica corrente.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.