Je sais que je peux :!
ou :r!
exécuter une commande externe et éventuellement insérer sa sortie dans le texte. Je peux même jouer :!sh
et je vais engendrer un shell qui vivra jusqu'à ce que je le quitte - mais tant que le shell est actif, Vim est «endormi» et inaccessible. Je dois quitter le shell et en générer un nouveau si je veux retourner à Vim pendant un moment - pas très utile.
Je peux accéder au shell à l'extrémité opposée, en suspendant Vim avec ^Zet gérer le travail Vim via bg
, fg
et jobs
. Cela a plus de sens mais est très lourd à long terme. Je peux utiliser Screen
s'il est disponible (ce n'est souvent pas le cas), ou ouvrir plusieurs fenêtres de mon gestionnaire de fenêtres (et ssh pour cibler l'hôte de chacune d'entre elles en séquence, pour avoir à la fois vim et shell sur l'hôte distant, encombrant à nouveau.)
Ce serait bien si Vim me permettait d'ouvrir une session shell et de la garder, disons, dans l'une de ses fenêtres (internes), ou de me permettre d'y basculer et vice versa. Est-ce que quelque chose comme ça est possible?
:split
, tout en conservant le fichier dans l'autre fenêtre? ... Cela ressemble à un travail pour tmux ou écran pour moi ...