繁体   English   中英

有没有办法在 emacs 组织模式中隐藏除最后一个标题星号之外的所有内容?

[英]Is there a way to hide all but the last header asterisk in emacs org-mode?

我真的很喜欢 org 和 org-bullets,我想完全隐藏标题的前导星号,以便标题(及其漂亮的图标/项目符号)与窗口左侧齐平。

我在 Reddit 线程中发现了这个函数,它似乎主要做我想做的,除了它删除了所有的星号。 我想保留最后一个。

(defun me-org-mode-remove-stars ()
  (font-lock-add-keywords
   nil
   '(("^\\*+ "
      (0
       (prog1 nil
         (put-text-property (match-beginning 0) (match-end 0)
                            'invisible t)))))))

(add-hook 'org-mode-hook #'me-org-mode-remove-stars)

作为 emacs 和 lisp 的新手,我的第一个想法是只修改正则表达式,但事实证明这里没有前瞻,所以我无法表达“选择系列中的所有星号,除了星号后跟一个空格字符”或类似的东西。

有没有正确的方法来解决这个问题?

您可以将变量org-hide-leading-stars设置为t ,然后它将隐藏标题中的所有主星。 您甚至可以使用 org-mode 指令为特定文件启用或禁用它。 有关更多详细信息,请参阅内置文档 ( Ch v org-hide-leading-stars ) 和信息页面 (我个人使用它)

PS 还有另一种方法可以做到这一点 - 通过org-ident-mode ,但我还没有尝试过。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM