A match made in heaven
Décembre 2022
Où, quoi, quand, comment?
TMuxUn multiplexer de terminal qu’il est bien
NVimUn éditeur basé sur Vim qu’il est bien
Des exemples de configurations sont partagés dans cette présentation.
Copier-coller revient à s’imposer les choix d’autrui.
Mieux vaut les comprendre et s’en inspirer que les appliquer aveuglément.
TMuxLa configuration de TMux va
dans
~/.tmux.conf
Un exemple accessible ici
TMux se
contrôle au clavier via un PrefixPrefix est <C-b>Prefix + Commande dirigent TMuxToute action TMux
s’effectue dans une session
Prefix + d
<C-b>dpar défaut
Prefix + west interactif
S’attacher à une session si elle existe, la créer sinon
Une session contient des fenêtres
Création
Prefix + c
Suppression
Prefix + &
Précédente
Prefix + p
Suivante
Prefix + n
Une fenêtre contient des panneaux
Précédent
Prefix + ;
Suivant
Prefix + o
Plus à ce propos par la suite
Zoom toggle
Prefix + z
De panneau à fenêtre
Prefix + !
Il est possible d’étendre TMux avec des
plugins
NVimNVim évolue plus vite
que certaines distributions.
Il est parfois nécessaire d’ajouter des dépôts pour avoir une version à jour.
👋 Debian 👋 Ubuntu 👋
La configuration de NVim va dans
~/.config/nvim/init.lua
Un exemple accessible ici
Tout comme dans Vim
Verticaux
:vsplit $path<CR>
:vsp $path<CR>
Horizontaux
:split $path<CR>
:sp $path<CR>
<C-w>k ⬆️
|
||
⬅️
<C-w>h
|
<C-w>l ➡️
|
|
<C-w>j ⬇️
|
Plus à ce propos par la suite
NVim c’est bien
NVim boosté aux
plugins, c’est mieux
PackerPacker
est un plugin et un gestionnaire de
plugins
Il permet de déclarer les plugins désirés en lua
Un exemple accessible ici
TreeSitterConfiguration pour la colloration syntaxique
Ajout d’une syntaxe
:TSInstall $syntaxe<CR>
Mise à jour des syntaxes
:TSUpdate<CR>
Une configuration accessible ici
MasonGestion des linters, formatters et LSP
Ajout d’une fonctionnalité
:MasonInstall $syntaxe<CR>
LSP ConfigUne configuration accessible ici
Ils vont si bien ensemble
NVimCréer une session
:mksession<CR>
:mksession $file_name<CR>
Charger une session
nvim -S
nvim -S $file_name
L’immense Tim
POPE propose le plugin Obsession
Il permet de mettre à jour automatiquement le fichier de session à
chaque changement dans NVim
Se déplacer différement entre TMux et NVim est vite lassant.
Chose promise, chose due.
NavigatorUnifie les déplacements entre les deux
<C-k> ⬆️
|
||
⬅️
<C-h>
|
<C-l> ➡️
|
|
<C-j> ⬇️
|
L’émulateur de terminal Alacritty peut lancer TMux au
démarrage.
TMux et
NVim sont chacun des
outils en console extrêmement puissants.
Ensemble, ils décuplent leurs potentiels et apportent une nouvelle expérience de travail sobre et efficace.
Bien intégrés à l’émulateur de terminal, aucun effort n’est à fournir.