orgmode tab键折叠heading有时失效

orgmode tab键循环折叠打开或关闭heading功能,很有用。不过有时候会发现突然对某些折叠失效。要重新生效必须要先关闭orgmode buffer,再次打开才有用。

不知有没有道友遇到过同样现象,有没有解决办法,谢谢

可能跟这个问题有关:org-cycle失效

可以先试试在tab失效时用下面这个命令,如果有效,那基本就可以确定跟上面的问题有关。

(defun my-org-clear-isearch-overlays()
  "清理isearch的overlays."
  (interactive)
  (with-current-buffer (current-buffer)
    (when (eq major-mode 'org-mode)
      (org-fold-core--clear-isearch-overlays))))
2 个赞

我也遇到这个问题,emacs29.1,出现的情况比较少,而且也不知道怎么复现,所以就没管。

Try to update Org to the latest dev version. Even if it is the problem others linked to, it should be resolved. If not, please consider reporting it as a bug (see Feedback (The Org Manual)).

If you do not want to update, you can set org-fold-core-style to 'overlays (before loading Org mode).


尝试将 Org 更新到最新的开发版本。 即使这是其他人所涉及的问题,也应该得到解决。 如果没有,请考虑将其报告为错误(请参阅 Feedback (The Org Manual)

如果您不想更新,可以将org-fold-core-style设置为'overlays(在加载Org模式之前)。

准备好了,等复现的时候再试一下

好的,先加上配置了,感谢!

命令有效,就是这个问题,今天什么也没做突然发现某个标题展不开,而其它标题又可以展开,然后试了你的代码,这个标题段又可以展开了 ,我没有用isearch,用的是swiper

swiper代码里也用到了isearch,所以应该是一个问题。

像上面 @yantar92 所说,把org-fold-core-style设置为'overlays也可以。我改了后用过一段时间,但是因为我用了org-appear,设置为'overlays之后链接展开有问题,所以又改回默认的'text-properties了。

实测有效,感谢

也注意到 S-Tab for “org-global-cycle” 这个组合键失效。不知道大家有没有遇到这个情况 ~

很少用这个组合键,没有碰到过它失效。不过也可以尝试下上面的方法看能不能解决。

1 个赞

(Mac) Emacs 捕捉不到这个按键 S-Tab. 可以重新绑定这个键。

Tab 键,应该怎么描述?:smile:

那看起来S-TAB的问题跟上面说的问题不是同一个。

没明白你的这个问题。

(define-key org-mode-map (kbd "S-Tab") org-global-cycle)

S-Tab, 这个应该怎么写?

S-TAB 或者 <backtab>

1 个赞

找到原因了,是因为 yas-minor-mode 的开启,S-TAB 被绑定在 yas-expand:

关掉 yas-minor-mode 这个组合键又重新绑定为 org-global-cycle:

可以改绑为 C-tab:

(require 'org)
(define-key org-mode-map (kbd "<C-tab>") 'org-global-cycle)

这个问题应该是org文件越大折叠的内容越多,越容易出现,我有个org文件把 三码郑码 的码表放进去了8000多行,每次执行搜索之后在折叠几乎必然复现,然后 m-x my-org-clear-isearch-overlays 又能坚持一小会, 只好去melpa升级org-mode到最新版,应该已解决了这个问题,升级后未在遇到

1 个赞

赞一下org-mode的维护者们。这个问题存在时间不短了,终于被解决了。