我删除了这个包都没用。看来还跟其他包有冲突,暂时先用 org-roam-buffer
吧,你这个这个命令调出的界面也没法跳转吗?
org-roam-buffer
可以,不知为啥,但感觉没有org-roam-buffer-toggle
方便,先将就这样用吧
那个三维图可以帮助你整理笔记。通过图你可以直观地看到各个笔记直接的联系,可以发现重复的笔记,还有本来应该关关联起来但是没有建立连接的笔记。
org-roam文件名字修改后,原来的link都失效了,只有手动创建link再添加。有没有更优雅的方式,文件名修改后能自动更新相关link,还是使用姿势不对?
我还没改过文件名。关注!
我这里测试了修改文件名是没关系的啊。我用的rename-this-file-and-buffer
这个函数修改文件名。
因为你修改了文件名,后台会自动更新数据库的。
你可以试试用我上面提到的这个函数改名。
文件名改动后最好手动 M-x org-roam-db-sync 一下.
酷炫!以及沒有直接跟logseq合作用logseq做前端而是借鉴了吗?
目前看来是直接基于 org-roam 来做了。
我对 Logseq 不是很了解,据说 org-roam 社区和 Logseq 社区都有这方面讨论,希望能够在 Logseq 兼容 org-roam 的 org 文件。你可以关注下这个 Integrate with LogSeq 的issue。
好像没有这个函数,我用的spacemacs的rename-current-buffer-file (SPC f R)
,我在dir模式下修改也不行
很奇怪,sync了也不行
为啥org-roam-v2只让用id链接,同时保持用file链接无法实现吗?
用了v2,每个文件头都有个PROPERTIES,要是用header链接,PROPERTIES就更多了。 强迫症感觉很不适应
用org-noter的时候就注意到了PROPERTIES过多的问题,可以写个函数隐藏
(defun org-cycle-hide-drawers (state)
"Re-hide all drawers after a visibility state change."
(when (and (derived-mode-p 'org-mode)
(not (memq state '(overview folded contents))))
(save-excursion
(let* ((globalp (memq state '(contents all)))
(beg (if globalp
(point-min)
(point)))
(end (if globalp
(point-max)
(if (eq state 'children)
(save-excursion
(outline-next-heading)
(point))
(org-end-of-subtree t)))))
(goto-char beg)
(while (re-search-forward org-drawer-regexp end t)
(save-excursion
(beginning-of-line 1)
(when (looking-at org-drawer-regexp)
(let* ((start (1- (match-beginning 0)))
(limit
(save-excursion
(outline-next-heading)
(point)))
(msg (format
(concat
"org-cycle-hide-drawers: "
"`:END:`"
" line missing at position %s")
(1+ start))))
(if (re-search-forward "^[ \t]*:END:" limit t)
(outline-flag-region start (point-at-eol) t)
(user-error msg))))))))))
如果想在org-cycle
的时候显示,可以把
((eq org-cycle-subtree-status 'subtree)
(org-show-subtree)
(org-unlogged-message "ALL")
(setq org-cycle-subtree-status 'all))
放到org.el中 ((or children-skipped in org-cycle-internal-local
的前面。
效果:
不好意思,我用的也是个自定义的函数。不过原理应该都差不多。
按理说是会自动更新内容的,org-roam v2 都是按 id 去关联了,你改了buffer name,但是 id 应该没变吧?
另外,我用的重命名函数如下:
(defun rename-this-file-and-buffer (new-name)
"Renames both current buffer and file it's visiting to NEW-NAME."
(interactive "sNew name: ")
(let ((name (buffer-name))
(filename (buffer-file-name)))
(unless filename
(error "Buffer '%s' is not visiting a file!" name))
(progn
(when (file-exists-p filename)
(rename-file filename new-name 1))
(set-visited-file-name new-name)
(rename-buffer new-name))))
感谢分享! 我就是印象中在哪儿见过这两个团队要搞integration来着所以才有点意外
这个太棒了!PROPERTIES过多也是我用org noter和roam时候很郁闷的问题
我这还是没法复现你的问题。你可以搞个最小配置测试下试试看。估计是和别的包有冲突了。
你的感觉没有错, 事实上有人详细论证过这种关系图的无用性
看了感触很深,确实感觉之前听说 roam 的时候就是觉得它说可以双向连接,于是我就到处添加连接,听说了思维是网状的,于是就按照学习的方法去整理自己之前做的笔记,并且编制了一些自己应该如何写笔记的原则之类的,搞得自己非常难受,于是折腾完这些之后很久都没有欲望写笔记。
后面不小心删了家目录,并且没有备份这些之前的笔记(也没有啥重要的东西,那个时候真的是为了做笔记而做笔记)。重新开始使用roam,不过这次我已不再像之前那样“为了做笔记而做笔记”,而是不在意形式与内容的随手记——不管什么“双向链接”或者其它那些概念。
现在想想,我学习Emacs的过程中,“机心”始终有一点重——经常不是因为的使用过程中遇到了什么问题于是寻找了某个工具,而是因为某个工具比较炫酷所以就“创造”了自己的需求,因此,我似乎配置过非常多的配置完之后就再也没有使用过的东西。现在想想,虽然这个过程里面学习了很多,但是其实也付出了所谓的“机会成本”,这些时间我本可以去做别的有趣的事情。