大哥 这个优化下 吓死我了 以为插件那么大
没有,.git 里有很多历史遗留,我已经清理一波,怎么还有这么多呢?
新增:标签继承 (Tag Extends)
现在,你可以让一个标签(如 #bug-report)继承另一个标签(如 #task)。子标签将自动拥有父标签的所有字段(如 Status, Deadline),无需重复定义。同时,子标签可以自行设定其它的字段。或者直接定义同名字段也可以,这样子会覆盖掉从父标签调用的同名字段。
-
新增交互式命令:你可以通过 M-x supertag-set-child 和 M-x supertag-ui-clear-parent 命令,批量设置或清除标签的继承关系。
-
Schema 视图升级,你现在可以在这个视图中:
- 通过缩进显示子标签
- 查看每个标签最终的、完整的字段列表(包含所有继承来的字段)
- 直接使用快捷键(e)来交互式地设置或清除继承关系。
新版,有个报错 Debugger entered–Lisp error: (void-variable <<<<<<<) load-with-code-conversion(“~/.emacs.d/site-lisp/org-supertag/org-…” “~/.emacs.d/site-lisp/org-supertag/org-…” nil t) require(org-supertag)
没这错误了。
目前好消息是,Mac合盖后再打开,切换到emacs时supertag在modeline显示的运行速度很快,没有卡顿了。
鼓掌(zsbd
更新:
-
嵌入功能
- 修复
supertag-insert-embed命令,可直接插入嵌入块。 - 新增
supertag-convert-link-to-embed命令,可将 org-link 转换为嵌入块。
- 修复
-
表格视图
- 新增底部快捷键提示。
- 修复过滤器字段值解析,支持“未保存过滤器”配置。
o键可在右侧窗口打开节点并自动定位上下文。- 表格支持水平滚动并禁用换行,防止内容折行。
这几天用下来反馈下,卡顿有但不像以前要卡好几秒。后面有时间我再排查下自己的插件,现在用下来完全可以接受。 ![]()
好的, 情况有了改善就好。我还是挺迷茫的,因为在我本地完全无法复现你的情形。
总之,期待你后续测试的结果,感谢你对 org-supertag 的帮助。
更新:
- 新增: supertag-add-reference 命令在添加引用时,会自动在目标节点处添加以 org-link 的形式添加反链
- 修复:修复 supertag-add-tag 时,会破坏数据库记录(导致 node,field,field value 记录丢失)的问题
更新(最新版本 5.1.4):
-
修复:解决 org-sueprtag 数据库文件意外清零的问题。原因是,
supertag-sync-auto-start启动过早,导致对比state-sync.el这个记录同步文件目录时扫描不到文件,此时,org-supertag将大量节点标记为“孤儿节点”,清理了之后,将内存里的数据记录标记为dirty然后保存到硬盘。最终,内存里空的数据库文件,则覆盖了硬盘上的数据库文件,结果数据库文件里的记录意外清零。-
为解决这个问题,在 Emacs 启动时,延迟自动同步的时间;
-
新增机制,防止空的内存状态覆盖磁盘数据文件;
-
不那么激进的“孤儿节点”回收机制:
- 新增 1 小时延迟回收时间;
- 限制单次回收最高数量。
-
-
新增:将节点视图(
supertag-view-node)从 side windows 改为独立的弹出框。此修改意在避免用户的视线来回移动,让用户的视线集中屏幕的一个区域,减少注意力分散的情况,适合认为自己有 ADHD 或确诊为 ADHD 的朋友。该修改依赖 posframe,使用straight-pull-package-and-deps可以直接更新依赖。- 改进光标位置:节点视图弹出后,光标将直接位于 Field 栏,方便用户直接修改;当 Field 的值修改了之后, 光标位置不变;
- 避免 Evil-mode 冲突:节点视图内,将暂时关闭 Evil-mode 或将 Evil-mode 暂时修改为 Emacs 模式,避免节点视图自定义的案件与 Evil-mode 的案件产生冲突。
只要你创意好,坚持维护,星星都是大大的有。
嗯呐, 我现在应该就差视频的介绍了。
很是期待!

终于找到一个合理的方式,展示 node 视图,这一次做到了跟随光标的移动,显示光标所在 node 的信息。
还有一些细节需要调整,调整好就可以发布了。
如果你用eldoc实现的话,配合我的package eldoc-mouse 用户还可以在不移动光标的情况下,用鼠标hover, 信息会自动弹出到弹出框。 相当于你只需要实现基于光标的展示,就像你现在这样,加上eldoc-mouse 就自动具备了基于鼠标hover 的展示。
eldoc 不是用来展示文档的吗?可以用在这里?
我在上一个版本里实现了使用弹出框的方式,但我觉得交互还是有问题…
看你需要在右边窗口里面编辑不,如果需要编辑,用eldoc就不合适,否则,就可以。如果用eldoc 实现展示信息,就很简单,只需要写一个函数产生你右边窗口的内容,然后加入到eldoc 的buffer local hook 就行了。
另外你实现的弹出框应该是基于cursor 的自动弹出吧,那样肯定有交互问题。如果是on-demand (快捷键或者鼠标hover), 应该不存在交互问题。

