Maybaygiare.org

Blog Network

Come personalizzare il tuo desktop Linux: i3 Window Manager

Fino ad ora in questa serie ho discusso la maggior parte dei comuni ambienti desktop Linux (Xfce, KDE, Gnome 3, Cinnamon, MATE e LXDE), e un paio di Window Manager (OpenBox e Enlightenment). Ora sto andando fuori dai sentieri battuti per guardare qualcosa di completamente diverso: il Window Manager i3.

Penso che sia importante iniziare dicendo molto chiaramente che i3 non è destinato agli utenti Linux principianti, inesperti, medi o addirittura “normali”. Sì, questo significa esattamente quello che dice — la stragrande maggioranza degli utenti Linux non troverà i3 utile, o anche molto interessante.

Gli utenti Linux esperti dovrebbero esaminare cosa fa i3 e come funziona, e decidere se si adatta alle loro esigenze. Quest’ultima affermazione è importante : non è possibile, o almeno non sensato, provare a personalizzare i3 in modo che possa essere utilizzato come ambiente desktop generico. Il tentativo di farlo quasi certamente finirà per mandarti urlando nella notte.

Allora, cos’è i3, e a chi è destinato? È un window manager, nel senso più puro e semplice di quel termine. Ecco come appare la distribuzione Manjaro 15.12 i3 al primo avvio.

Manjaro i3

Manjaro Linux 15.12 i3 Distribution

Foto: J. A. Watson

A prima vista che non sembra troppo spaventoso. È diverso, certamente, ma ha qualcosa che sembra un po ‘ come un pannello nella parte inferiore dello schermo, e qualche stato e altre informazioni incluse nella carta da parati. Aggrappati a quella sensazione “non così diversa/non così spaventosa”, perché sospetto che diventerà abbastanza ben scossa prima di iniziare davvero a sentirti più a tuo agio con i3.

i3 non è un ambiente desktop nel senso di cose come KDE e Gnome, o anche il leggero Xfce e LXDE. Uno dei modi più semplici a cui posso pensare per spiegare la differenza è che mentre la maggior parte degli ambienti desktop si occupa di piacere per gli occhi, i3 è molto più interessato al finger food.

Ecco un altro modo per spiegarlo. i3 è un gestore di finestre orientato al testo (e orientato alla tastiera), in cui gli altri desktop tradizionali sono sistemi orientati alla grafica (e orientati al mouse). Ciò non significa che i3 non usi il mouse, ovviamente. Quando si arriva a gestire più finestre in seguito, sarà possibile selezionare le finestre con clic del mouse. Ma in i3 ciò che è importante è che si può facilmente manipolare Windows senza il mouse, utilizzando solo la tastiera. In realtà, questo è un obiettivo così importante per i3 che gli sviluppatori e gli utenti sono contenti e orgogliosi quando possono dire: “Ho fatto xxxxx (qualunque cosa) senza nemmeno toccare il mouse”.

Forse è meglio dare un esempio di chi è destinato a i3, piuttosto che a chi non lo è. Il mio lavoro di giorno è in ingegneria della sicurezza di rete. Io e i miei colleghi passiamo molto tempo a occuparci di dispositivi di console di testo e comandi CLI, e di solito abbiamo a che fare con più di un dispositivo alla volta, spesso molto più di uno. Quindi avere un window manager che rende veloce (molto veloce) e facile creare nuove finestre e gestire le finestre esistenti senza togliere le mani dalla tastiera è un grande vantaggio. Ho detto veloce? Bene.

OK, quindi come si usa i3? Ho intenzione di camminare attraverso alcuni esempi per mostrare i primi semplici passi di apertura e gestione di Windows.

Penso che il singolo concetto più importante in i3 sia il tasto Modificatore, a cui farò riferimento nel resto di questo post come Mod-. Questo è il tasto che tieni premuto insieme ad altri tasti per eseguire azioni di base come l’apertura di nuove finestre o lo spostamento tra le finestre. Questo è probabile che sia il tasto Alt o il tasto Super (aka tasto Window) sulla maggior parte delle installazioni e tastiere-in Manjaro i3 è Super per impostazione predefinita.

2016-01-06-1232431366x768scrot.png

Facciamo il primo salto e apriamo una finestra su i3. Uno dei più semplici è una finestra terminale, che può essere aperta premendo Mod-Enter.

Yikes! Che cos’e’? Sembra che i3 abbia aperto un emulatore di terminale a schermo intero, con il prompt della shell nell’angolo in alto a sinistra dello schermo e il corpo traslucido della finestra che copre il resto del display. Ma è così… nudo! Sembra che i3 abbia trasformato il mio bel display grafico in un terminale VT-100!

Ok, mantieni la calma, respira. Non ci sono confini, cornice della finestra, pulsanti, controlli, omg, cosa devo fare con questo?

Cosa succede se eseguo un comando o qualcosa del genere e produco un output in quella finestra? Posso eseguire top, ad esempio, che produce un sacco di output e si aggiorna continuamente, quindi il risultato sarà molto ovvio.

2016-01-06-1242281366x768scrot.png

Questo dimostra che la nostra prima impressione era corretta: c’è una finestra terminale traslucida che copre l’intero schermo, quindi il contenuto di quella finestra viene visualizzato sul testo (e sulla grafica) dello sfondo. Gulp. Ma ancora nessun piacere per gli occhi, nessuna decorazione o controlli.

Se la tua unica esperienza fino ad ora è stata con i tradizionali gestori desktop GUI (KDE, Gnome, Windows, Mac), questo probabilmente sembra piuttosto spaventoso (o forse piuttosto inutile).

La buona notizia a questo punto è che nella mia esperienza, questo è spaventoso come si arriva. Hang duro, le cose sono gong per migliorare presto.

C’è un concetto molto semplice qui, e non appena lo afferri davvero, e lo accetti, il compito di imparare i3 diventa molto più facile – per non parlare di molto più logico e anche un po ‘ di divertimento. Il concetto è che i3 è un window manager. Tutto qui. Il suo compito è quello di riempire l’intera superficie del display con qualsiasi finestra creata. Periodo. Non li decorare, aggiungere controlli a loro, impilarli, o fare qualsiasi altra cosa a loro. Capisce solo come coprire il tuo desktop con loro.

In questo caso, al momento abbiamo solo una finestra in modo che copra l’intero desktop. Non ha un bordo, non ha un titolo, non ha controlli o pulsanti per minimizzare/massimizzare/iconificare, è solo una finestra bare-bones con un emulatore di terminale in esecuzione all’interno. Questo è ciò che i3 è qui per fare, quindi-missione compiuta.

Ok, va bene per una finestra, ma cosa succede se ce n’è più di una? Bene, proviamo semplicemente premendo di nuovo Mod-Enter. Si aprirà un’altra finestra di terminale.

2016-01-06-1303261366x768scrot.png

Esattamente ciò che accade a questo punto dipenderà dalle dimensioni e dalla forma dello schermo. Verrà creata una seconda finestra di terminale e lo schermo verrà diviso in modo che ogni finestra di terminale ottenga metà dello schermo. Se quella divisione è verticale o orizzontale dipende dalle dimensioni dello schermo, ma il risultato è concettualmente lo stesso in entrambi i casi. Sto lavorando su un display wide-screen (1366×768), quindi la divisione era verticale, e ora ho la finestra originale (ancora in esecuzione in alto), e una nuova finestra proprio accanto ad essa con un prompt della shell in attesa di input.

2016-01-06-1318311366x768scrot.png

C’è anche un po ‘ di buone notizie nel reparto eye candy, perché ora c’è un bordo molto stretto che evidenzia la finestra attiva.

Tornando al concetto che ho iniziato sopra, i3 è un gestore di finestre di piastrelle. Ciò significa che organizzerà tutte le finestre che hai aperto in modo che siano tutte interamente visibili in ogni momento e insieme coprano interamente il tuo display. Pensate a come essere come un pavimento piastrellato-tutte le piastrelle sono disposte side-by-side in due dimensioni. L’alternativa, come è implementato nei window manager per quasi tutti i comuni desktop Linux, è un window manager stacking, dove le finestre possono sovrapporsi e persino coprire completamente l’un l’altro. Questo non ha senso per le piastrelle sul tuo pavimento, e i3 dice che non ha senso per le piastrelle sul tuo display.

Quindi abbiamo già imparato un comando da tastiera i3 – Mod-Enter per aprire una finestra di terminale – e ora che ne abbiamo due, ne impariamo un altro, perché avere due finestre non è molto utile o divertente se non puoi muoverti tra di loro.

Ora, si potrebbe spostare con il mouse… ma come ho detto sopra, per la maggior parte degli utenti i3 uno degli obiettivi primari è non dover togliere le mani dalla tastiera. Quindi il modo “preferito” è usare il Mod – key insieme ai tasti freccia. Se il tuo schermo è diviso verticalmente, come il mio, allora Mod-LeftArrow e Mod-RightArrow si muovono tra di loro. Se lo schermo diviso orizzontalmente, quindi utilizzare Mod-UpArrow e Mod-DownArrow.

Per la maggior parte delle persone, avere due finestre di terminale non è terribilmente eccitante. In realtà è considerato così noioso che gli sviluppatori di Gnome 3 in realtà ha reso un dolore per aprire due della stessa finestra. (Bleah a loro.) Quindi, a scopo illustrativo, chiuderò una delle finestre del terminale-la finestra rimanente si espanderà immediatamente per riempire lo schermo-e quindi aprirò qualcos’altro.

Sembra leggermente più facile di quanto non sia, perché finora non sappiamo come avviare “qualcos’altro” -o qualsiasi altra cosa, sappiamo solo Mod-Enter per avviare un terminale. Quindi ora abbiamo bisogno di un lanciatore di applicazioni, e in i3 si chiama dmenu. Non è il tipo di menu categoria/cascata a cui siamo abituati negli altri desktop, questo è un menu sensibile all’input. Quando si preme Mod-d i3 si aprirà una barra di avvio / menu nella parte superiore dello schermo, in questo modo:

2016-01-06-1348441366x768scrot.png

L’i3 dmenu launcher

Foto: J. A. Watson

L’area di ingresso all’estremità sinistra è dove è possibile digitare il nome di ciò che si desidera eseguire; il resto della barra nella parte superiore dello schermo viene visualizzato un elenco dei file eseguibile oggetti che corrispondono ai tuoi input. È un po ‘ come avere una versione aggiornata dinamicamente della funzione shell <tab>.

Voglio eseguire il file manager i3, che si chiama ‘ranger’, quindi inizio a digitarlo, e con ogni lettera la visualizzazione dei programmi disponibili viene raffinata. Quando il nome’ ranger ‘ è evidenziato, posso premere invio per eseguirlo. Molto bello.

2016-01-06-1411481366x768scrot.png

Che ancora una volta divide lo schermo a metà, con la finestra del terminale originale su una metà e una nuova finestra per il file manager sull’altra metà, come mostrato qui.

OK, penso che questo stia andando alla grande finora. Possiamo aprire finestre, utilizzare il launcher dmenu e spostarci tra più finestre aperte. Prima di andare avanti, ho bisogno di spiegare un po ‘ di terminologia.

Quello che ho mostrato finora quando ho più finestre, dove sono disposte fianco a fianco sul display, è chiamato piastrelle orizzontali, perché le finestre sono disposte in una riga orizzontale. L’alternativa, mostrata solo una volta sopra, è la piastrellatura verticale, dove le finestre sono disposte una sopra / sotto l’altra, in una pila verticale.

Ho detto sopra che il modo in cui le finestre sono affiancate dipende dalle dimensioni dello schermo, e questo è vero, almeno per impostazione predefinita. Ma puoi sovrascriverlo con i comandi da tastiera: Mod – v per la piastrellatura verticale e Mod-h per la piastrellatura orizzontale. Quindi, se si inizia da una schermata vuota, quando si preme Mod-v si vedrà una piccola finestra di messaggio in alto a sinistra dello schermo che dice tile verticalmente. Se poi apri due finestre, saranno impilate una sopra l’altra, se premi Mod-h e poi apri le finestre, saranno disposte fianco a fianco.

Questo attributo del comportamento di piastrellatura non è globale in i3, è specifico per ciascun oggetto ed è ereditato dai figli di ciascun oggetto. Per illustrare questo, sto tornando alla schermata in cui avevo un terminale e un file manager side-by-side (orizzontalmente piastrellato) sullo schermo. Con focus sul file manager (finestra di destra), premo Mod-v, e poi apro un’altra finestra.

2016-01-06-1502251366x768scrot.png

Qui puoi vedere che quando ho avviato l’applicazione gpicview (un visualizzatore di immagini), i3 ha usato la piastrellatura verticale, posizionando la nuova finestra sotto la finestra esistente, che è stata ridotta della metà.

Se dovessi creare un’altra nuova finestra mentre l’attenzione era ancora su una di queste due finestre con piastrelle verticali, sarebbe anche affiancata verticalmente con esse. Quindi il risultato sarebbe tre finestre nella pila verticale.

2016-01-06-1509471366x768scrot.png

Tuttavia, non ho cambiato la modalità di piastrellatura per la finestra del terminale originale, che occupa ancora la metà sinistra del display. Se cambio lo stato attivo su quella finestra (usando Mod-LeftArrow o il mouse) e poi apro una nuova finestra di terminale, verrà comunque creata con piastrelle orizzontali, quindi avrò due finestre di terminale molto magre.

Questa suddivisione dello spazio sullo schermo per fare spazio a nuove finestre può essere ripetuta quanto vuoi, ma ovviamente non ci vuole molto perché le finestre diventino troppo piccole per essere utilizzate in modo efficace. Per risolvere questo problema, i3 rende molto facile l’uso delle aree di lavoro.

i3-aree di lavoro.png

Il modo in cui i3 si occupa degli spazi di lavoro è molto flessibile e molto potente. Quando i3 si avvia per la prima volta, utilizza workspace 1, come indicato dalla piccola casella nell’angolo in basso a sinistra dello schermo. Per passare a un’altra area di lavoro è sufficiente premere Mod-<n> dove n è il numero dell’area di lavoro, da 1 a 8.

Le aree di lavoro vengono create (e distrutte) su richiesta da i3, quindi quando lo schermo diventa ingombra (o se si desidera solo organizzare le finestre in gruppi logici/funzionali) si può colpire Mod-2 (o il tuo numero preferito / fortunato se sei superstizioso) e si ottiene immediatamente una nuova schermata pulita da usare. Una seconda casella con il numero della nuova area di lavoro viene aggiunta nell’angolo in basso a sinistra dello schermo.

È quindi possibile creare finestre e lavorare con la nuova area di lavoro esattamente nello stesso modo dell’area di lavoro originale. La commutazione tra le aree di lavoro può essere eseguita tramite la tastiera con il comando Mod-<n> o tramite il mouse facendo clic sulle caselle numerate nell’angolo in basso a sinistra dello schermo.

È importante capire che i3 non mantiene le aree di lavoro inutilizzate inattive; se si lascia un’area di lavoro che non ha una finestra aperta, verrà chiusa e il suo numero verrà rimosso dalle caselle di riepilogo dell’area di lavoro. È ancora possibile utilizzare la tastiera per tornare a quell’area di lavoro, e sarà di nuovo lì e pronto per eseguire nuove finestre.

Oltre all’ovvia situazione di troppe finestre / troppo poco spazio sullo schermo, le aree di lavoro sono un ottimo modo per raggruppare le finestre per un accesso rapido e logico. Un raggruppamento comune consiste nell’avere uno spazio di lavoro per le finestre relative al lavoro, uno per l’accesso a Internet (navigazione, e-mail, ecc.), e uno per la ricreazione, giochi e attività ricreative.

Ci sono molte altre possibilità per le aree di lavoro. Raggruppamento per tipo di dispositivo (router su uno spazio di lavoro, firewall su un altro e così via), o quando si lavora con più dispositivi dello stesso tipo quindi utilizzando uno spazio di lavoro diverso per ogni dispositivo.

Il punto qui è che quando le aree di lavoro sono così facili da creare e il passaggio da una all’altra è così semplice e veloce, diventano davvero una parte naturale e importante del tuo ambiente. Spero che tu stia iniziando a vedere come l’utilizzo di un window manager di piastrelle, che mantiene tutte le finestre aperte e completamente visibili piuttosto che impilarle, sovrapporle o iconizzarle completamente, possa essere un vero vantaggio.

Questo è abbastanza per questo post, penso. Nel prossimo post guarderò più nel normale utilizzo del window manager i3. Fino ad ora ho solo guardato un paio di semplici utility e applicazioni, quindi vi mostrerò come installare e utilizzare alcuni dei programmi più comuni, come ad esempio un browser web.

Per saperne di più su Linux e open source:

  • Come personalizzare il tuo desktop Linux: MATE
  • Come personalizzare il tuo desktop Linux: Cinnamon
  • Come personalizzare il tuo desktop Linux: Xfce
  • Hands – On con openSUSE Leap RC1: Una passeggiata attraverso il programma di installazione
  • Hands-On: KaOS Linux 2015.10
  • Così contro Calamari: Confronto di Manjaro 15.09 installatori
  • Aggiornare la mia Linux-Windows sistema multi-boot di Windows 10
  • Hands-On: Linux UEFI multi-boot, il mio modo
  • Hands-On: Linux UEFI multi-boot, parte due

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.