Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Emacs:菜单栏模式和工具栏模式自动设置为t_Emacs_Elisp_Emacs24 - Fatal编程技术网

Emacs:菜单栏模式和工具栏模式自动设置为t

Emacs:菜单栏模式和工具栏模式自动设置为t,emacs,elisp,emacs24,Emacs,Elisp,Emacs24,我已经在我的系统上编译并构建了Emacs24。在那之后,我的一些.emacs定制已经停止工作 最重要的问题是:我已经将菜单栏模式和工具栏模式设置为零 ;;;没有菜单栏 (菜单栏模式无) ;;; 无工具栏 (工具栏模式无) ;;; 没有滚动条 (滚动条模式无) 但是如果我启动Emacs,它们总是设置为t 更糟糕的是:如果我使用mini buffer将其设置为nil,然后转到scratch并键入菜单栏模式并计算表达式,它总是将其更改为t 你知道为什么会出现这个问题吗?我该如何解决它?试试这些 (工

我已经在我的系统上编译并构建了Emacs24。在那之后,我的一些.emacs定制已经停止工作

最重要的问题是:我已经将菜单栏模式和工具栏模式设置为零

;;;没有菜单栏
(菜单栏模式无)
;;; 无工具栏
(工具栏模式无)
;;; 没有滚动条
(滚动条模式无)
但是如果我启动Emacs,它们总是设置为t

更糟糕的是:如果我使用mini buffer将其设置为nil,然后转到scratch并键入菜单栏模式并计算表达式,它总是将其更改为t

你知道为什么会出现这个问题吗?我该如何解决它?

试试这些

(工具栏模式-1)
(菜单栏模式-1)
(滚动条模式-1)
更新:

按照惯例,应该给出否定的参数来禁用次要模式。请参阅emacs手册。(在emacs类型中:
C-h r m
minor modes
RET

历史上,传递给minor mode的nil参数意味着切换minor mode(即,您使用的代码可能启用或禁用这些mior模式,具体取决于加载.emacs之前的初始值)。 在Emacs-24中,我对其进行了更改,使nil表示无条件地“启用”


之所以做出这一决定,是因为在(flyspell模式)或(add hook‘text mode hook’flyspell模式)中,如果根本不提供arg,则通常会出现nil,在这些情况下,用户的真正意思是“启用”而不是“切换”.

我没有调用函数,而是将全局变量工具栏模式设置为nil,这似乎有效。否则,正如@kindahero所说,使用负数调用函数。您可以在使用M-x的工具栏模式文档中看到这一点。谢谢!nil没有被识别的原因是什么?