Могу ли я украсть сеанс vim с другого терминала?

13

Я забыл начать screenдо того, как начал работать, и теперь у меня есть SSH в мою машину с моего ноутбука. ps -aдает мне идентификатор процесса vim. Могу ли я украсть сеанс vim из моего другого терминала и подключить его к моему сеансу ssh?

Alex
источник
1
убить его и восстановить файл подкачки ( vi -r filename) может быть хорошо для вас?
Давиде Берра

Ответы:

12

Программа reptyr позволит вам сделать это.

qqx
источник
эта вещь действительно работает!
Сиванн
1

Вы можете сохранить сеанс vim, используя :mksession ~/session.vim, и перезагрузить его на экране, используя vim -S ~/session.vim.

:mksession по сути, сохраняет текущий сеанс vim в виде файла, который вы можете передать между терминалами или открыть заново после выключения компьютера и т. д.

Паскаль Бюньон
источник
На самом деле, если у вас есть опция clientserver, встроенная в ваш исполняемый файл, вы должны иметь возможность удаленно отправлять команды, которые @Pascal упоминает, чтобы сохранить от запущенного сеанса, а затем закрывать его. Затем вы можете восстановить его в срок. в котором вы находитесь. Смотрите ': h remote_send ()'
pottsdl
Это работает без необходимости устанавливать другую программу. Отличное решение
Кайл Кочис