Puis-je voler une session vim à partir d'un autre terminal?

13

J'ai oublié de commencer screenavant de commencer à travailler, et maintenant j'ai SSH dans ma machine depuis mon ordinateur portable. ps -ame donne l'ID de processus du processus vim. Puis-je voler la session vim de mon autre terminal et la joindre à ma session ssh?

Alex
la source
1
le tuer et récupérer le fichier d'échange ( vi -r filename) pourrait vous convenir?
Davide Berra

Réponses:

12

Le programme reptyr vous permettrait de le faire.

qqx
la source
cette chose fonctionne vraiment!
sivann
1

Vous pouvez enregistrer la session vim en utilisant :mksession ~/session.vim, et la recharger dans l'écran en utilisant vim -S ~/session.vim.

:mksession enregistre essentiellement la session vim actuelle sous forme de fichier que vous pouvez faire circuler entre les terminaux, ou rouvrir une fois que vous avez éteint votre ordinateur, etc.

Pascal Bugnion
la source
En fait, si l'option clientserver est intégrée à votre exécutable, vous devriez pouvoir envoyer à distance les commandes mentionnées par @Pascal pour sauvegarder la session en cours, puis la fermer. Vous pouvez ensuite le restaurer à terme. dans lequel vous êtes. Voir ': h remote_send ()'
pottsdl
Cela fonctionne sans avoir besoin d'installer un autre programme. Grande solution
Kyle Kochis