[org-mode] org中有函数可以直接抽出所有文本列表吗?


#1

我知道的一个方法是用正则; 但是我想有没有现成的方案,查过文档,貌似没有? 不会要自己写吧?不会elisp:joy:


#2

org-mode 文件就是一个文本文件,不明白你说的 所有文本列表 是指什么,是指有序列表和无序列表,像下面这样的?

- 11111
- 22222
- 333333

#3

对,是我没说清楚,包括有序和无序列表


#4

下面是一个从李杀博客中抄过来的函数,可以解析当前文件中所有的列表。但是说实话,不知道你要干嘛,这个结果不一定会令你满意。

(defun tt-plainlist ()
  "2019-01-14"
  (interactive)
  (let ((tt (org-element-parse-buffer 'plain-list )))
    (with-output-to-temp-buffer "*xah temp out*"
      (print tt))))

原文:http://ergoemacs.org/emacs/elisp_parse_org_mode.html


#5

谢谢分享, 因为接触org没多久,刚开始的一些笔记图方便是以列表形式的,还和其他普通文本混在一起。。。 现在感觉有点乱,想重构一下笔记结构