Emacs 这是什么;文件局部变量";什么意思?
我正在阅读emacs手册中的Emacs 这是什么;文件局部变量";什么意思?,emacs,elisp,Emacs,Elisp,我正在阅读emacs手册中的kill emacs hook变量。 它说: kill-emacs-hook是在“C源代码”中定义的变量。 它的价值是 (org babel remove temporary directory migemo pattern alist save) 当用作文件局部变量时,此变量可能存在风险 文档: 调用“kill emacs”时要运行的钩子。 …缩写 我不明白这句话:“一个文件局部变量”。“文件局部变量”是什么意思?Emacs有一个工具,可以在文件内容中指定缓冲区变量
kill emacs hook
变量。
它说:
kill-emacs-hook
是在“C源代码”中定义的变量。它的价值是
(org babel remove temporary directory migemo pattern alist save)
当用作文件局部变量时,此变量可能存在风险
文档:调用“
kill emacs
”时要运行的钩子。…缩写
我不明白这句话:“一个文件局部变量”。“文件局部变量”是什么意思?Emacs有一个工具,可以在文件内容中指定缓冲区变量
这通常用于指定文件的模式
-*-python-*-
,例如,首选缩进样式或制表符宽度;但如果您允许,它可能会让文件的作者完全控制您的Emacs。但是,对于被认为不安全的变量,默认行为是在允许设置生效之前要求用户确认。有关进一步的讨论,请参阅手册。由defaul编写,当您使用setq
设置变量时,该值为全局值。这意味着所有缓冲区都将看到新值
但是,某些变量(称为缓冲区局部变量)的工作方式不同。设置缓冲区局部变量时,其值仅针对发生setq
的缓冲区更改。其他缓冲区看不到更改
这些缓冲区局部变量可以从缓冲区当前访问的文件内容中获取其值。如果文件包含格式正确的字符串(请参见@tripleee的答案),则当文件打开时,将使用该值初始化缓冲区局部变量
另外,还存在目录局部变量,它为访问目录中文件的每个缓冲区设置一个缓冲区局部变量