Filtre actif, cliquez pour en enlever un tag :
Cliquez sur un tag pour affiner votre recherche :
Résultat de la recherche (2 notes) :
Journal du dimanche 26 mai 2024 à 10:52
Quand je travaille sur le refactoring de ma configuration Neovim, par exemple un passage de packer.nvim à lazy.nvim, je souhaite absolument éviter de perturber mon instance Neovim courante — que je qualifie de stable.
Pour cela, j'ai cherché des solutions pour lancer plusieurs instances de Neovim.
Mon point de départ dans cette quête était trop ambitieux : je souhaitais mettre en place un environemment de travail pour tester la globalité de mes dotfiles basé sur chezmoi.
J'ai explorer les pistes suivantes :
- Travailler dans la session d'un autre utilisateur Unix : je trouve cela vraiment pas pratique.
- J'ai testé une méthode basé sur Distrobox.
- J'ai testé une méthode basé sur Docker.
Finalement, si je me limite à un travail sur ma configuration Neovim, j'ai trouvé la solution suivante minimaliste pour lancer une instance de Neovim cloisonée :
$ export XDG_CONFIG_HOME=$PWD/config/
$ export XDG_DATA_HOME=$PWD/share/
$ nvim
Pour rendre mon quotidien plus agréable, j'exécute ce script ./start_sandboxed_neovim.sh
— qui intègre ces instructions.
Je n'utilise pas direnv dans cet environnement de travail parce que je souhaite continuer à pouvoir éditer les fichiers de configuration avec mon instance de Neovim "stable".
En pratique, j'ouvre deux panels tmux verticaux, à gauche j'édite la configuration avec mon instance Neovim stable et à droite je lance l'instance Neovim cloisonée.
Journal du mercredi 15 mai 2024 à 21:59
Je viens de modifier ma configuration (dotfiles) tmux :
https://github.com/stephane-klein/dotfiles/commit/f370721781f6ea1b72c1954f43ce50196112e72e
La configuration suivante
set -g window-status-current-format "#[fg=colour231,bg=colour33,bold] #{?window_name,#{window_name},#{b:pane_current_path}} #[nobold]"
set -g window-status-format "#[fg=colour33,bg=colour254,bold] #{?window_name,#{window_name},#{b:pane_current_path}} #[nobold]"
permet de définir cette ligne status
:
Pour chaque fenêtre est affichée soit le nom de la fenêtre, soit le nom du dossier courant du shell actif dans la fenêtre.
La syntaxe suivante est documentée ici :
#{?window_name,#{window_name},#{b:pane_current_path}}
Ce qui signife #{?condition,true_value,false_value}
.
La configuration suivante
bind-key c new-window -c "#{pane_current_path}" -n ""
-n ""
permet de définir par défaut le nom des nouvelles fenêtres avec un chaine vide.
Dernière page.