org-indent-mode 关不掉

不知道从什么时候开始 org-mode 里的标题一直保持缩进,大概之前配置过,但是最近一翻相关配置文件,竟然没有!

以下是 C-h v org-indent-mode 的输出:

org-indent-mode is a variable defined in ‘org-indent.el’.

Its value is t
Local in buffer Emacs.org; global value is nil

以下是在配置文件目录 dired-do-find-regexp <RET> org <RET> 的输出:

src/emacs/lisp/plugins.el
14:		   ("org" . "https://orgmode.org/elpa/")))
29:(use-package org-roam)
src/emacs/lisp/settings.el
25:;;(add-hook 'org-mode-hook #'turn-on-org-cdlatex)
42:(setq org-preview-latex-image-directory "./.ltximg/")
43:(setq org-hide-emphasis-markers nil)
44:(with-eval-after-load 'org
45:  (add-to-list 'org-latex-packages-alist '("" "siunitx" t) t)
46:  (add-to-list 'org-latex-packages-alist '("" "mathtools" t) t))
78:;; Org shortcuts
79:(global-set-key (kbd "C-c l") #'org-store-link)
80:(global-set-key (kbd "C-c a") #'org-agenda)
81:(global-set-key (kbd "C-c c") #'org-capture)

可见我并没有设置 org-indent-mode 自动打开,但是它就是打开了,到底是为什么?

对 indent-mode 没有什么意见,确实挺好看的。但是不知其所以然让我实在受不了。

有谁能解这桩赛博玄案吗?

也许应该找一找 org-indent-mode 出现的地方?

Searching...
No matches for: indent

已经找过了……

你看看的你的文档里面是不是有这个

#+STARTUP: indent

有这个也会自动启动的

emm,倒还不至于犯这样的错误。至于真相……

我通过把配置文件打碎成片段,然后让 emacs 一点点加载这些片段终于找出真凶了:

是 noctalia-shell 干的!

当我在 test/init.el 中仅写入:

(add-to-list 'custom-theme-load-path "~/.config/emacs/themes/")
(load-theme 'noctalia t)
(provide 'init)

然后在命令行加载 test 启动 emacs emacs --init-directory="~/test"

打开之前的 .org 文档就能发现 org-indent-mode 设置为开启了。

以防各位不知道,noctalia-shell 是一个 wayland 上的桌面 shell ,作用是提供一些简单的 ui 界面,实现一些常用的 shell 功能,比如连接蓝牙、切换壁纸、主题之类的。为了桌面应用看起来一致它给一些软件提供了 noctalia 颜色方案,GTK、Qt、alacritty、discord 和 emacs 等等都可以用。对 emacs 启用之后它会复制一个 noctalia-theme.el~/.config/emacs/themes/ 目录下。

打开一看果然发现这个文件改了我的配置:

;; Add org-mode hooks for hiding leading stars
(with-eval-after-load 'org
  (setq org-hide-leading-stars t)
  (setq org-startup-indented t))
1 个赞