Как emacs компилирует файл и редактирует его?

#emacs #text-editor

#emacs #текстовый редактор

Вопрос:

В emacs есть эта функция. Всякий раз, когда вы компилируете свой код (имя файла:hello.cpp ) запустите программу, а затем отредактируйте свой код, после чего emcas сохранит ваш предыдущий неотредактированный код в другом файле с именем hello.cpp ~ . hello.cpp ~ всегда будет содержать первый скомпилированный вами код, и всякий раз, когда вы пишете, редактируете свой код в emacs, он выдает имя файла .#hello.cpp. Он автоматически удаляется .#hello.cpp когда вы сохраняете этот код, но hello.cpp ~ останется прежним. .#hello.cpp файл содержит информацию. например username@DESKTOP-FN20BRU.13000:1597860074. Итак, кто-нибудь может, пожалуйста, объяснить мне этот рабочий процесс emacs?

Ответ №1:

Emacs выполняет следующее при редактировании имени файла

  • # : когда вы изменяете файл (в памяти), Emacs создает # файл (на диске) и продолжает обновлять его вашими изменениями, пока вы не сохраните отредактированную версию. Этот черновик на диске можно восстановить в случае сбоя Emacs или компьютера до того, как вы успели сохранить свои изменения.

  • ~ : как только вы сохраняете отредактированную версию, Emacs сначала переименовывает вашу старую версию на диске (ту, которую вы открыли Emacs), добавляя к имени файла завершающий символ ~ , указывающий filename~ (это делается только при первом сохранении в текущем сеансе), затем он перезаписывает имя файла измененной версией и, наконец, удаляет # черновик на диске.

Затем, когда вы вносите дальнейшие изменения, создается другой # файл и т.д.

Комментарии:

1. Также обратитесь к C-h i g (emacs)Auto Save и (emacs)Backup