gkroam.el v2.0 released, 欢迎试用!

随意取名坑死人:-)

https://baijiahao.baidu.com/s?id=1677520763377755997&wfr=spider&for=pc

:joy: :joy: 一开始起名字的时候有考虑过 gkroam,只是觉得这个词没有什么实际含义。gk-roam参考的李杀的插件用自己的英文名 xah 开头。

哈哈, 李杀用 xah, 最大的可能是,他写的插件其实都是他的配置的一部分,而他的配置使用 xah 前缀,就像我的配置叫 emacs-helper, 所以我都用 eh 作为前缀。

人知道的多了,就有了意义

1 个赞

windows下能不能用呢?

你可以试试, ripgrep 能够正常工作应该就没有问题。

更新 v2.1.1: 修改包名为 “gkroam”

根据 @tumashu 的建议,修改了包名。以及修复若干bug。

更新:实现了类似 roam 的 sidebar。

在保留当前 page 的情况下,使用 gkroam-edit 命令可以弹出一个 side window。在 side window 中可以同时编辑多个page,并一次保存所有修改。

光标位于 gkroam link 或 hashtag 时默认在side window 打开光标所在位置的page; 光标位于不存在的 page 的单词或 region 时,创建新的页面; 光标位于空白处时调用 minibuffer 补全打开已经存在的 page 。对页面的修改(创建)只有在按下 C-c C-c 时保存到对应的page中,C-c C-k 放弃所有修改。

gkroam-edit

体验新功能,请 pull 最新的 develop 分支。

2 个赞

更新: 在 side window 中点击 page link or hashtag 会在 man window 中打开 page。

master分支主要用于Melpa的提交,以后最新的功能会发布在develop分支。

develop branch:

这个用的什么主题?

material

更新: 解决了上面的问题,现在 gkroam 可以很漂亮的显示和隐藏 double brackets。

更新: Melpa 审核通过了 :blush:, 现在可以使用 package-install 下载使用 gkroam 了。

待优化:

  • 当括号处于隐藏状态时,鼠标需要点击两次 page link 才能打开page。使用回车或其他方式没有问题。这里推荐大家使用 link-hint 这个插件,可以快速的打开链接。
  • 从 side window 中点击 page link 并在主窗口打开 page ,当光标切回 side window 时,有时不能正常设置 link 的 overlay。
5 个赞

支持已有的org文件的headline吗 单独的零散文件感觉以后挺难管理的

暂时不支持,以后会支持,最近没时间搞。后面也可能会使用数据库缓存,rg + database,超多文件时效率应该也还可以。

不知道有没有大佬知道 rg 的正则如何匹配多行(不是使用 -A , -B, -C 这种,是精确的多行正则匹配),我在正则中 使用 “\n”,提示不可以出现换行符。

如果上面的问题解决了,生成 linked references 的效率还可以提升一大截,如果rg搜索匹配的效率比 org文档解析(org-roam的办法) 效率高的话。

另外:link补全现在还有不稳定的bug,如果有人在用感觉体验不好的话,建议直接用 gkroam-insert 插入链接。

这是也要加sqlite?

其实一直有个疑问就是跟org-roam比起来lightweight在哪儿?如果是在跟org-roam比的话。因为没试过gkroam,所以就知道少了sqlite算是轻量一些。

2 个赞

不一定非得是数据库,主要是缓存,存在文件里也可以,只是数据库的检索效率要高很多。这似乎是解决海量文件检索的唯一办法?

Lightweight 指的是 Roam Research,一开始就不是和 org-roam 在对标,我自己也基本没用过 org-roam。所有的设计逻辑和交互方式完全参考的 Roam Research。当然,我做的只是表层的交互,Roam 最厉害的是背后的非线性的 “图状数据库”,这也是文件超多时,检索效率也还可以的原因。

了解,谢谢。是我以前理解错了。

1 个赞

echo ‘apple\norange\nbanana\nkiwi’ | rg --multiline ‘(?s)e.*?k’ 多行匹配,这种?

1 个赞