如何设置字节重新编译目录使用缓存目录?
How to set byte-recompile-directory use a cache directory?
我使用 (byte-recompile-directory (expand-file-name "~/.emacs.d") 0) 生成 .elc 文件,它改进了 emacs 启动,但我想设置byte-recompile-directory 使用缓存文件夹不在同一个文件中生成 .elc 文件 folder.and 我想知道我是否需要声明 emacs 使用缓存文件夹而不是 el 文件?emacs 会自动加载这些 ·.elc · 文件?像这样
├── core
│ ├── core-keybinds.el
│ ├── core-provider.el
│ └── core.el
├── early-init.el
├── init.el
但是当我使用 (byte-recompile-directory (expand-file-name "~/.emacs.d") 0)
├── core
│ ├── core-keybinds.el
│ ├── core-keybinds.elc
│ ├── core-provider.el
│ ├── core-provider.elc
│ └── core.el
│ ├── core.elc
├── early-init.el
|── early-init.elc
├── init.el
├── init.elc
也许这样是最好的方式
├── .cache
│ ├── core-keybinds.elc
│ ├── core-provider.elc
│ ├── core.elc
│ └── init.elc
│ └── early-init.elc
├── core
│ ├── core-keybinds.el
│ ├── core-provider.el
│ └── core.el
├── early-init.el
├── init.el
然后如何让 emacs 加载这些 .elc 文件...我是新来的 emacs.so 需要帮助。
您可以将byte-compile-dest-file-function
设置为将文件放入缓存目录的函数:
(defun my-bytecomp-dest-file (source)
(expand-file-name (file-name-nondirectory source) "~/.cache/"))
(setq byte-compile-dest-file-function 'my-bytecomp-dest-file)
您需要将缓存目录显式添加到要找到的 .elc
文件的加载路径:
(add-to-list 'load-path "~/.cache/")
然后您可以使用例如加载文件(require 'core)
或 (load "core")
.
我使用 (byte-recompile-directory (expand-file-name "~/.emacs.d") 0) 生成 .elc 文件,它改进了 emacs 启动,但我想设置byte-recompile-directory 使用缓存文件夹不在同一个文件中生成 .elc 文件 folder.and 我想知道我是否需要声明 emacs 使用缓存文件夹而不是 el 文件?emacs 会自动加载这些 ·.elc · 文件?像这样
├── core
│ ├── core-keybinds.el
│ ├── core-provider.el
│ └── core.el
├── early-init.el
├── init.el
但是当我使用 (byte-recompile-directory (expand-file-name "~/.emacs.d") 0)
├── core
│ ├── core-keybinds.el
│ ├── core-keybinds.elc
│ ├── core-provider.el
│ ├── core-provider.elc
│ └── core.el
│ ├── core.elc
├── early-init.el
|── early-init.elc
├── init.el
├── init.elc
也许这样是最好的方式
├── .cache
│ ├── core-keybinds.elc
│ ├── core-provider.elc
│ ├── core.elc
│ └── init.elc
│ └── early-init.elc
├── core
│ ├── core-keybinds.el
│ ├── core-provider.el
│ └── core.el
├── early-init.el
├── init.el
然后如何让 emacs 加载这些 .elc 文件...我是新来的 emacs.so 需要帮助。
您可以将byte-compile-dest-file-function
设置为将文件放入缓存目录的函数:
(defun my-bytecomp-dest-file (source)
(expand-file-name (file-name-nondirectory source) "~/.cache/"))
(setq byte-compile-dest-file-function 'my-bytecomp-dest-file)
您需要将缓存目录显式添加到要找到的 .elc
文件的加载路径:
(add-to-list 'load-path "~/.cache/")
然后您可以使用例如加载文件(require 'core)
或 (load "core")
.