Emacs 状态栏中的函数
我在.emacs文件中设置了状态栏的格式:Emacs 状态栏中的函数,emacs,elisp,Emacs,Elisp,我在.emacs文件中设置了状态栏的格式: (setq-default mode-line-format '("" mode-line-modified "" mode-line-buffer-identification "-" global-mode-string "" "[" mode-name "." mode-line-process "." minor-mode-alist "" "%n"
(setq-default mode-line-format
'("" mode-line-modified ""
mode-line-buffer-identification "-"
global-mode-string ""
"[" mode-name "." mode-line-process "." minor-mode-alist "" "%n" "]"
line-number-mode "-" "L%l"
column-number-mode "-" "C%c"
"-" "%P" "-"
abbreviated-file-name
"%-"
)
)
我还使用以下命令在状态栏中显示函数名:
(add-hook 'c-mode-common-hook
(lambda ()
(which-function-mode t)))
不幸的是,这两个片段不能共存。
如果我保留第一个格式,那么我将无法看到函数名
是否有办法重新写入上述内容,使其具有格式和函数名?将
模式行杂项信息
恢复为您的模式行格式
一般来说,我会非常小心从模式行中删除数据,除非针对非常特定的数据段
i、 e.如果您仍希望明确指定全局模式字符串
,则从模式行杂项信息
中删除该字符串,而不是从模式行中删除模式行杂项信息
编辑:以上内容与Emacs 24相关;请参阅有关以前版本的评论。感谢您的回复。你能详细说明我需要做什么吗?我应该在模式行格式代码的末尾添加“模式行杂项信息”吗?最简单的方法是将
全局模式字符串
替换为模式行杂项信息
(因为后者包含前者,并且是哪个函数模式所使用的容器。我认为您应该检查默认的模式行格式
,与您的自定义格式相比,并确保您没有遗漏其他有用的组件。但是,在尝试较旧的emacs时,这在emacs 24.3.1上是有效的(23.3.1)仍然没有函数名。谷歌会不会“模式行杂项信息”查看是否在较新的emacs版本中对其进行了重命名。在emacs 23.3.1中,它看起来像默认的模式行格式中直接包含的功能模式
支持。整个模式行对于emacs 24和模式行杂项信息
(和其他)显然更加模块化以前的版本中不存在。您可能希望在Emacs 23模式行格式中包含以下组件:(哪个func模式(“哪个func格式”)
。