Starship: prompt per Linux cross-shell scritto in Rust
Matteo Gatti14 Ottobre 2019
Starship è un prompt cross-platform e cross-shell molto facile da usare, veloce, altamente personalizzabile e disponibile anche per Linux. Sono disponibili molti prompt ma spesso sono troppo dispersivi o troppo lenti rispetto a quello di default.
Questo prompt è fondamentalmente nuovo, la prima release è disponbile da giugno ed è sotto intenso sviluppo. La documentazione specifica che molte nuove opzioni saranno disponibili a partire dalle prossime release. Scritto in Rust, è compatibile con la maggior parte delle shell (Bash, Fish, Zsh).
Starship, Linux prompt cross-shell
Di seguito alcune caratteristiche interessanti:
Utilizza un Powerline font per indicare varie informazioni;
Il prompt diventa rosso quando l’ultimo comando non è andato a buon fine;
Mostra l’username solo se non è lo stesso dell’utente loggato (e per le sessioni root/ssh, ovviamente);
Interessante l’integrazione con Git (viene mostrato il Git branch e il repository status), si può mostrare anche la versione di Node.js, Rust, Ruby, Python e Go;
Mostra la versione del package nella directory corrente per cargo (Rust), npm (Node.js) e poetry (Python);
Mostra lo stato e il livello della batteria;
Mostra il tempo necessario per eseguire il comando se quest’ultimo supera una certa soglia configurabile dall’utente;
Ha un indicatore per i job che stanno andando in background.
Le opzioni di configurazione
Le personalizzazioni sono infinite, ad esempio è possibile mostrare il prompt su una singola linea ed eliminare la nuova linea che viene aggiunta di default sopra lo start del prompt.
Per farlo è necessario creare il file ~/.config/starship.toml e inserire le seguenti righe:
add_newline = false
[line_break]
disabled = true
Queste alcune opzioni di configurazione interessanti:
Si può impostare qualsiasi carattere al posto del simbolo di default (❯) ed è possibile cambiarne il colore;
È possibile configurare il tempo dopo cui Starship deve mostrare la durata di un comando;
Si puòMostrare l’orario (sono disponibili diverse opzioni per il formato dell’ora);
Si può decidere come mostrare vari parametri quali il livello della batteria, oppure lo stato del Git branch;
Sul sito ufficiale sono disponibili tutti i dettagli per una ottimale configurazione di Starship. Presente anche una pagina dedicata alla configurazione avanzata.
Installazione
Sul sito ufficiale è disponibile una guida all’installazione ben fatta. Se non avete installato sul sistema un Powerline font vi conviene farlo (es.Fira Code).
Si può installare facilmente anche scaricando i binari pre-compilati dalla pagina GitHub ufficiale. Al termine del download è necessario estrarre l’archivio e installare i binari in
/usr/local/bin mediante il seguente comando:
sudo install starship /usr/local/bin/
Se decidete di provare il prompt su una qualsiasi distro GNU/Linux fatemi sapere, attraverso la sezione dei commenti qui sotto, come l’avete trovato!