Возобновление сеанса VIM, от которого я случайно отключился

Сегодня я столкнулся с необычной проблемой:

Я использовал vim, создал новый псевдоним в bash и хотел попробовать его.

Итак, я ctrl- z , exec bash (я делаю это, потому что мне не нравится вкладывать его в bash).

И моя работа ушла. И теперь я не могу возобновить vim.

Единственный вариант, который я могу придумать, - убить vim и начать новый сеанс.

vim

ctrl - z

exec bash
fg  

Редактировать : Это независимо от используя screen / tmux.

6
задан 23 April 2018 в 10:43

3 ответа

Рассмотрите reptyr:

NAME
       reptyr - Reparent a running program to a new terminal

SYNOPSIS
       reptyr PID

Находят идентификатор процесса энергии с pidof vim или ps aux | grep vim.

также возможно видеть идентификатор процесса, при попытке открыть файл, который все еще открыт энергией. Используя показанное изодромное с предварением необходимо быть в состоянии повторно прикрепить к предыдущей сессии.

, Если Вы получаете ошибку:

Unable to attach to pid 12345: Operation not permitted

Гарантируют, что эти ptrace scope установлен на 0 (вместо 1):

echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope

После выполнения reptyr, Вам, вероятно, придется нажать Входят или другой ключ для обновления терминала (консоль) окно.

9
ответ дан 23 April 2018 в 10:43

vim -r {file} то, что Вы хотите, "r" для "Режима Recovery". См. man vim:

Recovery mode.  The swap file is used to recover a  crashed 
editing  session.   The  swap  file is a file with the same
filename as the text file with ".swp" appended.  See ":help
recovery".
6
ответ дан 23 April 2018 в 10:43

Вы захотите использовать что-то как 'экран' или 'tmux' утилита для хранения терминальных сеансов, идущих в фоновом режиме.

0
ответ дан 23 April 2018 в 10:43

Другие вопросы по тегам:

Похожие вопросы: