Я использую компьютер с Windows 7 и не имею доступа администратора. Поэтому я не могу поместить точечный файл Emacs в корневой каталог. Есть ли способ указать другое местоположение для файла dot emacs?
init-file
microsoft-windows
Startec
источник
источник
site-start.el
своей загрузки,init.el
и вам больше не нужно а.emacs
. В этом примере вам не нужно возиться с домашним каталогом (если кто-то на компьютере не помещает туда что-то, что повлияет на то, что вы делаете). Другими словами, он может быть пустым, и вам никогда не нужно его трогать.Ответы:
Emacs имеет несколько мест, где он ищет файлы инициализации, как описано в руководстве . Если вы хотите настроить Emacs, вы должны начать с одного из этих файлов.
Обычный подход заключается в использовании файла
init.el
в вашемuser-emacs-directory
, а не.emacs
в вашем домашнем каталоге.По
user-emacs-directory
умолчанию~/.emacs.d
, так что он все еще относится к вашему HOME, но выгода этого подхода в том, что вы можете хранить все, что связано с вашей конфигурацией Emacs, в одном месте. Этот каталог может находиться под контролем версий, иметь резервные копии, совместно использоваться несколькими компьютерами и т. Д. Вы можете использовать символическую ссылку (mklink
в Windows), чтобы хранить файлы в другом месте.Например, довольно часто можно увидеть, как люди поддерживают свою конфигурацию Emacs на Github. Вы можете найти множество примеров этого путем поиска Github для Elisp проектов с init.el файлами .
источник
user-emacs-directory
При каждой установке Windows, в которой я использую Emacs, у меня есть следующий код в
.emacs
файле в указанном месте:Таким образом, я могу поставить свой
.emacs
и.emacs.d/
где угодно.источник
Ваш файл .emacs попадает в ваш
HOME
каталог. Из руководства Emacs:источник
HOME
каталогом, на что-то совершенно другое. Следовательно, почему я называю это изменение взломать. Установка его в соответствующее значение, очевидно, хорошо.Ты говоришь:
Ваш файл инициализации находится в вашем домашнем каталоге, который вы можете поместить куда угодно. Очевидно, вы хотите иметь другой каталог для вещей, которые загружает Emacs. Это не проблема. Поместите файл инициализации в свой домашний каталог, и пусть этот файл добавит другой каталог к значению переменной,
load-path
а затем потребует любые другие библиотеки Emacs, которые вы хотите использовать. Поместите эти библиотеки в этот другой каталог.Итак, ваш файл инициализации не должен содержать ничего, кроме установки каталога, в котором вы храните библиотеки Emacs, которые вы хотите загрузить.
источник
Просто для полноты я приведу ссылку на:
https://www.gnu.org/software/emacs/manual/html_node/efaq-w32/Location-of-init-file.html
Который говорит, что вы можете установить
HOME
значение в пути реестра:HKCU\SOFTWARE\GNU\Emacs\HOME
Но это значение переопределяется переменной окружения
HOME
.источник
Думаю, вы могли бы поместить
(setq user-init-file "C:/path/to/.emacs")
и другие строки, предложенные @ryan в site-start.elисточник