Emacs: попытка что-то записать после сохранения вызывает сообщение "файл изменен на диске. Действительно редактировать буфер?"

Emacs 24 в Ubuntu 14. У меня есть файл, открытый только в emacs, и он дает мне это постоянно, после каждого сохранения. это раздражает Это странно, потому что раньше все работало нормально. Я с трудом догадываюсь, что я мог сломать за это время. Я новичок в Ubuntu, использую его в соответствии с инструкциями, найденными в интернете. Сейчас я использую emacs 23, все хорошо. Думаю, мне нужна автосинхронизация открытого буфера с сохраненным файлом сразу после сохранения. В любом случае, как я могу это исправить?

2 ответа

Похоже, что какая-то другая программа на вашем компьютере читает файл, когда он изменяется, и, возможно, даже вносит изменения (возможно, только во время модификации, а не в содержимое). Трудно сказать, что бы это было.

Обходной путь M-x global-auto-revert-mode, Он будет автоматически возвращаться, если у вас нет локальных изменений с момента последнего сохранения. Как правило, это хороший режим для включения, если вы используете несколько редакторов, и я поддерживаю его все время.

Другие идеи:

  1. Проверьте, есть ли у какого-либо другого процесса файл, открытый в данный момент fuser /path/to/filename.txt (примечание: он показывает только открытые файловые дескрипторы, а не процессы, которые хранят содержимое файла в памяти и записывают его позже)
  2. Используете ли вы какую-либо нестандартную файловую систему? (проверить с df -h /path/to/filename.txt а также mount)
  3. Ваше системное время стабильно? (Проверьте вручную date, отсканируйте вывод dmesg для очевидных ошибок, касающихся хронометража, и искать ошибки, связанные с NTP в лог-файлах в /var/log/,
Другие вопросы по тегам