У меня есть проблема, когда я пытаюсь выполнить некоторые случайные операции Emacs, такие как org-capture
или переименовать файл в другой (локальный) каталог, в котором dired
Emacs пытается связаться с другой машиной, используя tramp, предположительно для какого-либо автозаполнения или истории рассуждения. Это вызывает много зависаний и ожиданий, потому что машина, к которой пытается подключиться бродяга, недоступна.
Как я могу запретить Emacs искать файлы / местоположения бродяги, когда я выполняю другие элементарные операции? Как я могу определить, где и как Emacs получает представление о том, что ему нужно искать в удаленном файле / местоположении такие операции, как org-capture
и dired-do-rename
?
C-f
сразу после нажатияR
. Это помогает?(setq recentf-exclude '("~$" "/tmp/" "/ssh:" "/sudo:"))
Я создал это несколько лет назад. Наличие удаленных файлов в недавнем списке файлов вызывало у меня некоторые проблемы, но я не помню деталей. Возможно, вам придется удалить все удаленные файлы из списка последних файлов вручную. Его местоположение определяется переменнойrecentf-save-file
.debug-on-quit
, выполнивM-x
toggle-debug-on-quit,RET
а затем нажмите,C-g
когда emacs зависнет. Это напечатало бы трассировку стека, это могло бы помочь отладить проблемуОтветы:
Я подозреваю, что какой-то код срабатывает из-за ловушки или совета, который следует использовать
remote-file-p
вместоtramp-tramp-file-p
. Прочтите документацию по обоим, а затем выполните grep установленных пакетов для последнего символа, заменив его соответствующим образом. Если это решит проблему, начните открывать запросы на извлечение.источник