gpt4 book ai didi

Emacs -- 如何整合 :lighter(s) for minor modes

转载 作者:行者123 更新时间:2023-12-04 18:42:02 24 4
gpt4 key购买 nike

是否可以合并:lighters当存在某种事件次要模式组合时,在模式线上?如果是,那请问怎么办?

例子:

  • 次要模式 1 的 :lighter 为 " -"
  • 次要模式二的 :lighter 为 " +"

  • 如果缓冲区中的两个次要模式都处于事件状态,则合并打火机: " ±"

    最佳答案

    您可以通过修改 minor-mode-alist 来动态更改任何次要 MODE 的更亮值。 :

    (setcar (cdr (assq 'MODE minor-mode-alist)) VALUE)

    当您的任一模式被激活或停用时,请检查另一个的状态,并相应地设置较浅的文本。当两者都处于事件状态时,您可以使一个空字符串,另一个是您的“组合”打火机。

    或者,更好地利用任何模式行构造都是有效的这一事实,并使其自动化。使用 delight.el作为上述内容的包装器,并假设两种模式均由 mylibrary.el 定义你可能会说:

    (delight '((mode+ (mode- " ±" " +") "mylibrary")
    (mode- (mode+ "" " -") "mylibrary")))

    这并不完美——如果您希望相关的弹出菜单也结合两种模式的细节,还有更多工作要做;但如果你不需要,我建议你不要担心。模式线的出现是这里唾手可得的果实。

    关于Emacs -- 如何整合 :lighter(s) for minor modes,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23944477/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com