5 dei migliori plugin per la produttività per Tmux

Una foto di una persona che lavora davanti a un computer.

Tmux è un ottimo multiplexore di terminale che può consolidare e gestire diverse sessioni della console. Anche se le sue funzionalità principali coprono la maggior parte dei casi d’uso, ha anche un framework di plugin che ti consente di modellare il programma secondo le tue esigenze. In questo articolo, esaminerò alcuni dei migliori plugin per Tmux che possono aiutarti a ottimizzare il tuo flusso di lavoro nel terminale.

1. tmux-menus

Se sei nuovo in Tmux, imparare ogni combinazione di tasti può essere complicato e scoraggiante. Con le sue scorciatoie a corda poco intuitive, è facile dimenticare le combinazioni di tasti per funzionalità meno conosciute di Tmux come la modalità copia e la marcatura dei pannelli.

Un terminale che mostra un'impostazione Tmux multi-pannello con un pannello contrassegnato e un pannello in modalità copia.

Tmux-menus è un plugin semplice che affronta questo problema. Fornisce un menu TUI pulito e intuitivo a cui puoi accedere premendo Ctrl + \ (Backslash). All’interno, include ogni funzione di Tmux, permettendoti di selezionare visivamente ciò di cui hai bisogno invece di memorizzare le loro scorciatoie da tastiera.

Un terminale che mostra il funzionamento del plugin tmux-menus.

Oltre a rendere Tmux accessibile, una qualità che mi piace di Tmux-menus è la configurabilità. Ogni voce di menu all’interno del plugin è semplicemente un collegamento a uno script shell. Questo significa che con un po’ di conoscenza di Bash, puoi facilmente includere funzioni personalizzate in Tmux-menus.

Un terminale che mostra il menu di configurazione

2. tmux-resurrect

Uno dei maggiori punti dolenti di Tmux è che è un programma senza stato. Questo significa che non ricorderà nulla della sessione quando la chiudi. Personalmente, trovo frustrante questo aspetto poiché mi costringe a rifare il mio layout Tmux ogni volta che riavvio il computer.

Un terminale che mostra una sessione Tmux disconnessa bruscamente.

Tmux-resurrect è uno strumento che può aiutare a risolvere questo problema. È un plugin senza fronzoli che preserva interi ambienti Tmux, inclusi l’ordine delle finestre e il layout dei pannelli. Memorizza anche istantanee incrementali delle tue sessioni, il che significa che puoi “tornare indietro nel tempo” e caricare diverse versioni della tua configurazione Tmux.

Un terminale che mostra gli interni di un layout Tmux.

Un’altra caratteristica che mi piace di Tmux-resurrect è che può salvare lo stato di un programma in esecuzione. È vero, l’implementazione non è perfetta e la funzionalità copre solo un numero limitato di app. Tuttavia, il plugin gestisce abbastanza bene questa funzione da rendere la tua configurazione Tmux più fluida.

Un terminale che mostra il processo di ripristino in tmux-resurrect che include il recupero dello stato del programma.

Buono a sapersi: sei interessato a come Tmux-resurrect fa la sua magia? Approfondisci su come Tmux gestisce finestre e pannelli in una sessione.

3. tmux-notify

Tenere traccia dei programmi in background può essere difficile se stai gestendo più pannelli e sessioni Tmux. Nella mia esperienza, questo ha portato a momenti in cui dimenticavo di avere un comando in esecuzione in background e chiudevo accidentalmente Tmux.

Un terminale che mostra sessioni Tmux recentemente chiuse.

Tmux-notify è un plugin che invia una notifica quando rileva un processo completato. Funziona controllando qualsiasi pannello Tmux attivo che è appena passato a un prompt della shell Bash. Il plugin invia quindi un messaggio libnotify, che può essere una campanella visiva del terminale o un ping udibile.

Un terminale che mostra la notifica toast libnotify per il compito Tmux in esecuzione.

Mentre questo stile di notifica funziona per la maggior parte degli utenti, Tmux-notify offre anche supporto per bot Telegram, avvisi Pushover e comandi personalizzati. Questo rende possibile integrare Tmux-notify in quasi qualsiasi flusso di lavoro, rendendolo un’opzione attraente per chi ama personalizzare la propria configurazione del terminale.

A proposito: sei nuovo nella riga di comando? Inizia il tuo viaggio con il piede giusto controllando la nostra guida per principianti all’uso del terminale Linux.

4. tmux-jump

La navigazione nel buffer è senza dubbio una delle parti più scomode di Tmux. Il multiplexore non fornisce scorciatoie da tastiera integrate per il movimento al di fuori della modalità copia e del focus della finestra. Come qualcuno che usa Tmux per compiti di produttività quotidiana, trovo questa stranezza sia noiosa che frustrante, specialmente per lunghe sessioni nel terminale.

Tmux-jump risolve questo problema rendendo la navigazione nei pannelli Tmux sia facile che intuitiva. Ispirandosi a Vimium, utilizza suggerimenti di parole chiave per creare “punti di salto” all’interno delle tue finestre Tmux. Questi ti consentono di muoverti rapidamente all’interno di Tmux senza fare affidamento sulle sue complesse scorciatoie.

Un terminale che mostra i suggerimenti di parole chiave in Tmux-jump.

Tmux-jump brilla di più quando lo combini con plugin come EasyMotion per Vim. Nel mio caso, questa configurazione crea un flusso di lavoro coerente in cui il terminale e l’editor di testo seguono le stesse combinazioni di tasti di movimento. Questo li fa comportare in modo simile a un IDE, il che è difficile da replicare per programmi completi come Emacs.

Un terminale che mostra i suggerimenti di parole chiave che funzionano in un'impostazione Tmux multi-pannello.

5. treemux

Treemux è un potente plugin che integra senza soluzione di continuità il browser di file in stile ad albero di Neovim con Tmux. Può navigare tra le cartelle, aprire file e persino visualizzare la directory di lavoro corrente. Questo lo rende un plugin prezioso se desideri creare un IDE basato su Neovim all’interno di Tmux.

Un terminale che mostra il plugin Treemux che funziona su un pannello Tmux.

Lo sviluppatore di Treemux ha anche progettato il plugin per essere il meno invadente possibile. Non appare per impostazione predefinita e regola le sue dimensioni in base al pannello a cui è collegato. Pertanto, Treemux è un ottimo plugin se preferisci un terminale “zen” con distrazioni minime.

Un terminale che mostra il plugin Treemux che funziona su pannelli individuali.

Infine, Treemux ha un paio di estensioni Neovim che espandono il set di funzionalità predefinito del plugin. Tmuxsend.vim aggiunge supporto per inviare il percorso completo da Treemux a Tmux, rendendo i riferimenti ai file rapidi e facili. Nel frattempo, nvim-tree-remote.nvim ti consente di aprire file in Treemux facendo doppio clic su di esso con il mouse.

Alla fine della giornata, Tmux è solo un programma multiplexore e questi plugin estenderanno solo ciò che fa attualmente. Se stai cercando di espandere ciò che il terminale può fare per te, dai un’occhiata a come il mio collega ha migliorato il suo terminale con un buon numero di ottime app.

Crediti immagine: Grok tramite x.ai. Tutte le modifiche e gli screenshot di Ramces Red.