将所有打开的组织模式文件放在一个列表中,最终与 helm lists 一起使用

Put all opened org mode files in a list to be used eventually with helm lists

我试图将所有(打开的)org 文件放在一个列表中,这样我就可以将它们添加到 helm-projectile-switch-to-file 列表中。

我能够得到这段代码:

  (->> (buffer-list)
       (--select (with-current-buffer it
                   (derived-mode-p 'org-mode)))
       (mapc #'kill-buffer))

但这会杀死缓冲区而不是将它们放入聚合列表中。

如果您不想终止缓冲区,我建议不要对每个元素应用 kill-buffer。除此之外,您几乎已经完成了所有工作。这是一个不需要任何外部库的版本:

(seq-filter '(lambda (buffer)                                                                                                                                                            
               (with-current-buffer buffer
                 (derived-mode-p 'org-mode)))
            (buffer-list))