Lo spunto dal quale nasce questo post è in realtà una domanda: ha ancora un senso, una qualche utilità, scegliere di lavorare in Windows in modalità riga di comando, per l’utente “normale” (o quasi), oggi?
Me lo chiedevo mentre digitavo un testo dentro a VI, come mi capita spesso da oltre 30 anni a questa parte.
VI: un pezzo significativo della storia dell’informatica. Qualcuno direbbe, di archeologia.
Mi chiedo se, al di là dell’effetto nostalgia, sia uno strumento ancora capace di ispirare. Talvolta, mi capita di cercare un’idea, uno spunto, davanti allo schermo nero di VI. Io chiamo quei momenti speciali “vi meditations“…
Un editor grafico è qualcosa che spinge ad agire sul testo in maniera automatica, impulsiva. Clicco e trascino.
In VI il testo viene sì inserito con la flessibilità che e’ propria dei programmi di videoscrittura, ma ogni modifica richiede un’attenzione specifica all’operazione stessa.
Per modificare l’ordine di un blocco di testo io devo “vedere” il blocco, fissarne l’estensione e la posizione, agire su di esso con dei comandi espliciti, non con gesti. E questo porta a “vedere 2 volte” il testo, ad agire con consapevolezza e meno d’impulso.
VI porta con sè il rigore del vedere con attenzione un testo.
Ho deciso di dedicare un post agli strumenti più adatti, a mio sindacabilissimo avviso, per passare un po’ di tempo proficuo a contatto con la riga di comando in Windows. Chi usa Linux ha già tutto quanto pronto, basta solo aprire la console del terminale e smanettare. Per chi è solito invece armeggiare dentro Windows c’è qualche cosa da sistemare.
Proporrò solo strumenti gratuiti e molto comuni, perchè è giusto che sia così. Sperimentare è un diritto (e un piacere).
Per divertirci insieme, avremo bisogno di alcune cose.
In primo luogo, mi sembra piacevole sostituire la schermata della modalità comandi di Windows con una console un po’ più gradevole. A questo scopo userò Console2. Il nome non è dei migliori, ma il software è molto ben fatto.
Come suggerisce il nome, si tratta di un terminale con delle possibilità di personalizzazione: colori, font, dimensioni finestra, più istanze in tab, possibilità di settare la shell predefinita, possibilità che andremo subito a sfruttare…
Andiamo dunque a scaricare Console2 e lo installiamo.
Dopo anni di onorato servizio con Console2, ho scoperto recentemente un emulatore di terminale ancora migliore. Si chiama ConEmu e lo potete scaricare all’indirizzo https://conemu.github.io/
ConEmu è un vero piacere da usare: integra il file manager Far (vedi sotto) alla perfezione, consente di suddividere l’ambiente in più finestre, ha un miliardo di personalizzazioni e può usare la shell che preferite, anche TCC di cui parlo poco sotto…
Andremo poi a usare una shell alternativa (e migliore) rispetto al cmd.exe di Windows. La cosa non è fondamentale, però…perchè no?
Avremmo anche potuto utilizzare la PowerShell di Windows, anch’essa gratuita, però preferisco un’alternativa più “tradizionale” ai classici batch files. Fin dai tempi del DOS ho sempre trovato magnifico 4DOS, la migliore shell DOS di sempre, senza discussioni. Per Windows si chiama Take Command ed ha una versione eccellente a pagamento, che consiglio. Ha centinaia di variabili e funzioni, e comandi per lavorare su reti locali e via internet. Esiste però anche una versione “light” gratis. Non ha tutta la potenza della sorella maggiore, ma è comunque molto meglio del cmd.exe.
Si chiama TCC/LE e la si può scaricare da qua:
https://jpsoft.com/products/tcc-le.html
Lanciamo Console2, andiamo in “Edit”, poi “Settings” e settiamo la shell su tcc.exe:
Avremo quindi a disposizione una console moderna e una buona shell per sprigionare tutta la potenza della riga di comando sotto Windows!
Per dare a Windows molte possibilità stuzzicanti in più sarebbe bello avere a disposizione i tool testuali presenti in tutti i dialetti Unix.
Detto fatto, scarichiamo la versione windows delle coreutils:
http://gnuwin32.sourceforge.net/packages/coreutils.htm
Avremo quindi a disposizione strumenti come fmt,wc e tanti altri…
Solo come appunto, il metodo più rapido per modificare il path sotto Windows e quindi rendere accessibili da riga di comando le directory desiderate in qualsiasi punto del file system ci si trovi è quello di aprire la finestra delle “propietà del sistema”:
Poi scelgo le “Impostazioni di sistema avanzate“:
e per finire scelgo di modificare le “Variabili d’ambiente”, dove ovviamente troverò il mio path…
Se in Dos non potevo vivere senza il Norton Commander (e poi il Volkov Commander) e se negli Unix il primo programma che installo è sempre Midnight Commander, come fare sotto Windows?
Semplice, usiamo Far Commander, a mio avviso il miglior file manager a due pannelli per terminale sotto Win.
Lo troviamo qua:
https://www.farmanager.com/
Lavora con i nomi di files lunghi, consente di fare ftp, ed è espandibile con un sacco di utili plugin, che trovate qua:
https://plugring.farmanager.com
Dategli un’occhiata…ricorda nulla?
Ora siamo pronti: è giunto il momento di installare sua maestà VI. Di tutti i possibili cloni, scelgo uno dei più diffusi, vim. Io preferisco usare una versione portabile, ma la scelta è solo questione di gusti. La pagina da cui partire è questa:
https://vim.sourceforge.io/download.php#pc
una raccomandazione: usate la versione dalla serie 8 in poi, perchè sulla 7 ho riscontrato qualche problema in fase di attivazione dell’evidenziazione della sintassi.
Siamo pronti a usare vi…ma questa è storia per un prossimo post…
I test statistici sono strumenti fondamentali per l’analisi dei dati e la presa di decisioni informate. Scegliere…
Gli Alberi Decisionali sono un tipo di algoritmo di apprendimento automatico che utilizza una struttura…
Immaginiamo di voler trovare il percorso più veloce per raggiungere una destinazione in auto. Si…
Nel 1847, il matematico francese Augustin-Louis Cauchy stava lavorando su calcoli astronomici, quando ideò un…
La simulazione Monte Carlo è un metodo utilizzato per quantificare il rischio associato a un…
Abbiamo visto che la distribuzione binomiale si basa sull’ipotesi di una popolazione infinita N, condizione che si…