Vim è l'editor di codice più potente e versatile disponibile per sistemi simili a Unix. È un'estensione dell'editor Vi sviluppato da Bill Joy. Vim è disponibile per impostazione predefinita sulla maggior parte dei sistemi Linux e BSD.
Pertanto, puoi utilizzare lo stesso editor su tutti i tuoi sistemi e macchine remote. Il rigoroso vocabolario di Vim lo rende anche estremamente efficiente ed espressivo.
Come funziona Vim?
Vim è diverso dai tradizionali editor di testo di Linux . Mantiene la filosofia Unix di fare una cosa e farla bene. L'idea fondamentale è che come programmatori passiamo la maggior parte del nostro tempo a modificare il codice, non a scriverlo.
Vim fornisce diverse modalità per risolvere questo problema. Ogni modalità fa qualcosa di diverso ed è controllata tramite le sequenze di tasti. Le modalità vim essenziali sono la modalità normale, la modalità visuale, la modalità di inserimento e la modalità di comando.
Usiamo la modalità normale per rivedere il codice ed eseguire operazioni rapide. La modalità visiva viene utilizzata per evidenziare le sezioni di testo e la modalità di inserimento è dove aggiungi testi. Utilizzerai la modalità di comando per digitare vari comandi di vim.
Come usare Vim in modalità di inserimento
Quando apri vim, si avvia in modalità normale. È possibile passare alla modalità di inserimento inserendo il tasto i . Questo richiama la modalità di inserimento nella posizione del cursore. Dovresti vedere un'indicazione nell'angolo in basso a sinistra.
Ora puoi digitare qualsiasi testo e vim lo copierà nel buffer. Per salvare i progressi, torna alla modalità normale premendo il tasto Esc . Ora digita il seguente comando vim.
:w
Ci sono altri modi per entrare nella modalità di inserimento. Ad esempio, puoi inserire del testo subito sotto la riga corrente premendo o in modalità normale. Usa O per inserire il testo sopra la riga corrente.
Usa I per inserire del testo all'inizio della riga corrente. Si può utilizzare l' una chiave ad apporre destra il testo dopo il cursore. Usa A per aggiungere del testo alla fine della riga.
Per salvare e chiudere il file corrente, passare alla modalità di comando e digitare quanto segue.
:wq
Come usare Vim in modalità normale
Gli utenti di Vim trascorrono la maggior parte del loro tempo in modalità normale. Qui puoi navigare tra i testi ed eseguire modifiche rapide. Premendo il tasto Esc da qualsiasi modalità si tornerà alla modalità normale.
Invece dei tasti freccia standard, vim usa hjkl ( h per sinistra, j per giù, k per su e l per destra) per la navigazione. All'inizio può sembrare controproducente. Ma vim fa questo per risparmiare il tempo necessario agli utenti per raggiungere i tasti freccia sulla tastiera.
Inoltre, come molti editor basati su console, vim incoraggia gli utenti a stare lontano dal mouse. Tuttavia, puoi configurare vim per abilitare il supporto del mouse.
Puoi anche spostarti nel testo parola per parola. Ad esempio, premendo w in modalità normale si sposta il cursore all'inizio della parola successiva. Puoi spostarti all'inizio della parola corrente usando b e terminare con e .
Usa 0 per navigare all'inizio di una riga e $ per spostarti alla fine. Premendo H si porta il cursore nella parte superiore dello schermo, M al centro e L in basso. Puoi scorrere su e giù usando Ctrl+u e Ctrl+d . Se premi gg in modalità normale, vim sposterà il cursore in alto. Inserisci G per andare alla fine.
Puoi imparare i comandi di modifica di vim una volta che ti senti a tuo agio a muoverti in modalità normale. Usa x per eliminare un carattere, s per sostituirlo. Si eliminano i testi utilizzando l' operatore d . Prende una mozione come argomento. La sintassi per questo è mostrata di seguito.
d{motion}
Un movimento può essere qualsiasi cosa. Ad esempio, premendo dw in modalità normale si elimina la parola corrente. Se digiti d$ , vim cancellerà tutto fino alla fine della riga. Allo stesso modo, digitando d0 si elimina l'inizio della riga. Usa dd per eliminare l'intera riga.
Tuttavia, non è necessario eliminare qualcosa e passare alla modalità di sostituzione per apportare modifiche. L' operatore c ci consente di apportare modifiche a un movimento vim direttamente dalla modalità normale.
c{motion}
Quindi, quando premi cw , vim cancella la parola corrente e ti mette in modalità di inserimento. Il tuo cursore deve essere all'inizio della parola poiché vim cancellerà dalla posizione corrente. Usa ciw per aggirare questo. Ciò apporta modifiche all'interno della parola corrente. Usa cc per cambiare l'intera linea.
Usa y per copiare i movimenti e p per incollarli. Quindi, yw copia la parola corrente e yy copia l'intera riga. Puoi ripetere il comando precedente usando il punto . , annullare le modifiche utilizzando u e ripristinarle utilizzando Ctrl+r .
Se vuoi trovare qualcosa nel tuo codice, usa il seguente comando vim in Linux.
/{regex}
Qui, regex è un'espressione regolare. Premi n per passare alla partita successiva e N per la partita precedente.
Come usare Vim in modalità visuale
L'uso di vim in modalità visuale ci permette di selezionare blocchi di testo usando i tasti di movimento. Questo è il modo in cui gli utenti esperti spostano i blocchi di codice in vim. Immettere v in modalità normale per passare alla modalità visiva.
Ora puoi evidenziare porzioni di testo o codice usando i tasti di navigazione hjkl . Usa Ctrl+v per passare alla modalità blocco visivo. Qui puoi selezionare blocchi di testo. Puoi evidenziare le linee entrando in modalità linea visiva. Usa V per selezionare la modalità linea visiva.
Questo ci consente di apportare modifiche a un blocco di testo contemporaneamente. Ad esempio, puoi selezionare un blocco di testo e premere y per copiare il testo nel buffer vim.
Come usare la modalità di comando Vim
Possiamo accedere alla modalità di comando digitando : in modalità normale. Porterà il cursore nella parte inferiore dello schermo, seguito da due punti. Di seguito sono riportati alcuni dei comandi vim più utili in Linux.
- :w salva le modifiche su file
- :wq salva ed esci
- :saveas FILE salva il file corrente come FILE
- :q esci da vim
- :Q! esci e scarta le modifiche
- :e FILE apri FILE per la modifica
- :aiuto apri aiuto
Aggiungi questo cheat sheet a vim per un rapido accesso a utili comandi vim.
Nozioni di base sul mastering di Vim
Vim è un editor robusto che elimina il divario tra il pensiero e l'editing. Scrivere codice diventa molto più eccitante una volta che sei esperto di vim. Anche se avrai bisogno di anni di pratica per padroneggiarlo veramente, la comprensione delle basi di vim dovrebbe farti iniziare sulla strada giusta.