我用emacs、org-mode有好几年的时间了,但始终没有啥进步。一直把emacs当作一个简单的文字编辑器,把org-mode当作一个简单的日志系统,因为够用,所以没有研究。 这段时间,我想把我的各类笔记都搬到了emacs上,准备以后就用emacs+org-mode作为笔记录入系统。但我用了一段时间后,发现这套东西极其简陋,且难以使用。 目前感觉最麻烦的是无法快速在各个笔记之间快速切换,只能通过按c-x b来在缓冲区之间切换各个笔记。 ———————— 目前我解决的方法是新建一个navi.org文件,来存放所有各个笔记的本地超链接,包括每个笔记的章节超链接。比如: file:some_note.org::some_chapter_name 或者 file:some_note.org::#some_chapter_custom-_id 这个是标题中CUSTOM_ID属性的值 这样就能链接到具体笔记的某一个章节了。 我手动一个一个添加后,使用起来真的很爽!不过也真的很累! ———————————— 所以,我想问各位大佬的是: 1.有没有自动生成某个目录下所有org文件中所有标题超链接的程序? 2.有没有为每一个标题生成独一无二的custom_id中的程序,就好像生成随机的很长的文件名的那种程序?我用MobileOrg同步的时候,就会出现ID属性会有很长的唯一的值。
1 个赞
要善于搜索啊😂
-
补充一个
org-brain
- heading 跳转:
counsel-org-goto-all
/helm-org-rifle
- heading bookmark:
org-bookmark-heading
- ID generation:
org-id.el
;;;;; my-org-add-ids-to-headlines-in-file
(setq org-id-link-to-org-use-id t
org-id-method 'uuid)
(defun my-org-add-ids-to-headlines-in-file ()
"Add ID properties to all headlines in the current file"
(interactive)
(save-excursion
(widen)
(goto-char (point-min))
(org-map-entries 'org-id-get-create)))
(add-hook 'org-capture-prepare-finalize-hook 'org-id-get-create)
(add-hook 'org-mode-hook
(lambda ()
(add-hook 'before-save-hook 'my-org-add-ids-to-headlines-in-file nil 'local)))
counsel-org-goto-all
demo:
3 个赞
多谢你的解答。 中间的那一段代码,是org-id.el文件中的内容吗?是用于生成id的吗?
我想我应该先学学lisp。
不是org-id里的, 作用是在每次保存后为没有ID的heading生成ID
org-id-get-create
是org-id.el
里的function
要先启用org-id
(require 'org-id)
或者直接在M-x Customize
里搜索org module
找到id
后启用
你需要的是 Wiki,不是 Org。
如果你不需要写代码,Muse 足够满足你的需求了。