2009-10-17 27 views
33

Una funzione che uso spesso in Vim è m arca e jump-to-mark (') ... Ma funzionano solo all'interno di un file.Vim: crea segni su tutti i file?

C'è un modo per creare un segno che funzioni tra i file? Ad esempio, così posso creare il segno a sulla riga 42 di foo.py, quindi saltare a quel punto mentre sto modificando bar.py?

+4

un suggerimento (semi) -polito per coloro che desiderano chiudere le domande su Vim: basta aggiungerli alla lista delle persone da ignorare! – Peter

+0

Grazie Peter. Sarebbe bello vedere quale fosse il motivo del voto ravvicinato ... –

+0

era 'appartiene a superuser.com' – Peter

risposta

59

Sì. Utilizzare le lettere maiuscole per il segno.

http://vim.wikia.com/wiki/Using_marks

Marks possono estendersi file attraverso. Per usare tali segni si devono usare registri maiuscoli, ad esempio A-Z. I registri minuscoli vengono utilizzati solo all'interno dei file e non si estendono su file. Vale a dire, se si dovesse impostare un segno in un file foo.c nel registro "a" e quindi spostarsi su un altro file e premere "a", il cursore non tornerà alla posizione precedente. Se vuoi un segno che ti porterà a un file diverso, dovrai usare un registro in maiuscolo. Ad esempio, utilizzare mA anziché ma.

+0

Impressionante, grazie :) –

+0

oh le sequenze di tasti che avrei salvato se avessi saputo di questi anni fa! – Jonah

+0

Giuro, è come ogni volta che arrivo a questa cosa strana che voglio fare, ho sempre quel pensiero "hm, mi chiedo se questo fa ..." e abbastanza sicuro –

8

Utilizzare i marchi A-Z, sono disponibili tra i file.

+1

Grazie :) Spero che non ti offenda se do la risposta a nall ... Sembra che abbia bisogno del rep a * little * more;) –

+1

marchi e registri sono diversi, il registro A non è lo stesso del segno A ... infatti, non c'è registro 'A', yanking per registrare A aggiungerà il testo strappato per registrarsi ' un 'invece. –

+0

@ sharat87: hai ragione, riformulato la mia risposta ... – CMS

Problemi correlati