Stai correttamente assegnando allo script della shell un .sh
estensione? La selezione automatica della sintassi di Vim è quasi completamente basata sul rilevamento del nome file (estensione). Se un file non ha una sintassi impostata (o è la sintassi sbagliata), Vim non passerà automaticamente alla sintassi corretta solo perché hai iniziato a digitare uno script in una data lingua.
Come soluzione temporanea, il comando :set syn=sh
attiverà l'evidenziazione della sintassi degli script di shell.
Le risposte finora sono corrette e puoi usare l'estensione (come .sh
) o una riga Shebang (come #!/bin/bash
) per identificare il tipo di file. Se non ne hai uno, puoi comunque specificare manualmente il tipo di file utilizzando un commento modeline nella parte superiore o inferiore del file.
Ad esempio, se desideri identificare uno script senza estensione come uno script di shell, puoi aggiungere questo commento all'inizio del file:
# vim: set filetype=sh :
o
# vim: filetype=sh
Questo dirà a vim di trattare il file come uno script di shell. (Puoi impostare anche altre cose nella modeline. In vim digita :help modeline
per ulteriori informazioni.)