New package : consult-todo

目前实现了在已打开的 buffer 中的 搜索,过滤和跳转,需要的可以试一下。

7 个赞

期待上melpa,还没审核通过吧?

melpa要等两天,他们都是隔几天批量合并的。

挺好的包! 我先加到自己的 ELPA 了! :smirk: :joy:

JCS-ELPA

2 个赞

不错,之前用的是一个自己糊的函数,没有实现给不同的 TODO,FIXME等分组以及额外高亮的功能。这个插件式我自己糊的函数的全面升级版。

看起来是org-agenda-todo-list的minubuffer版本?

似乎不是,它展示的是 hl-todo 里定义的关键字

有了这个我准备删除magit-todos了,经常出bug。

consult-todo 目前只能搜索buffer,magit-todo 好像还可以搜索项目里未打开文件包含的 keywords 吧。hl-todo 自己有一个类似的 hl-todo-rgrep 的命令,也许可以用 consult 的 grep 命令改写一下,不过我不太熟悉。我现在是够用了。

搜项目中所有的TODO是最好了

不错,准备用上了。不过觉得要是能支持项目的话应该就是很好了

我糊了个hl-todo-rg

写了两个命令 consult-todo-dirconsult-todo-project, 大家可以试试看。项目不大的话可以用,太大了搜索还是慢。

1 个赞

:smile: 正好缺个这功能 然后在git commit之前检测一下 就和idea上一样了

遇到个问题,提了issue,作者有空的话看下哈

刚刚提了个 PR,用来忽略关键字搜索路径和文件,大佬看下有没有必要。

find -H . -type d \( -path \*/SCCS -o -path \*/RCS -o -path \*/CVS -o -path \*/MCVS -o -path \*/.src -o -path \*/.svn -o -path \*/.git -o -path \*/.hg -o -path \*/.bzr -o -path \*/_MTN -o -path \*/_darcs -o -path \*/\{arch\} \) -prune -o \! -type d \( -name .\#\* -o -name \*.beam -o -name \*.vee -o -name \*.jam -o -name \*.o -o -name \*\~ -o -name \*.bin -o -name \*.lbin -o -name \*.so -o -name \*.a -o -name \*.ln -o -name \*.blg -o -name \*.bbl -o -name \*.elc -o -name \*.lof -o -name \*.glo -o -name \*.idx -o -name \*.lot -o -name \*.fmt -o -name \*.tfm -o -name \*.class -o -name \*.fas -o -name \*.lib -o -name \*.mem -o -name \*.x86f -o -name \*.sparcf -o -name \*.dfsl -o -name \*.pfsl -o -name \*.d64fsl -o -name \*.p64fsl -o -name \*.lx64fsl -o -name \*.lx32fsl -o -name \*.dx64fsl -o -name \*.dx32fsl -o -name \*.fx64fsl -o -name \*.fx32fsl -o -name \*.sx64fsl -o -name \*.sx32fsl -o -name \*.wx64fsl -o -name \*.wx32fsl -o -name \*.fasl -o -name \*.ufsl -o -name \*.fsl -o -name \*.dxl -o -name \*.lo -o -name \*.la -o -name \*.gmo -o -name \*.mo -o -name \*.toc -o -name \*.aux -o -name \*.cp -o -name \*.fn -o -name \*.ky -o -name \*.pg -o -name \*.tp -o -name \*.vr -o -name \*.cps -o -name \*.fns -o -name \*.kys -o -name \*.pgs -o -name \*.tps -o -name \*.vrs -o -name \*.pyc -o -name \*.pyo \) -prune -o  -type f \( -name \* -o -name .\* \) -exec grep --color=auto -n --null -e \\\(\\\<\\\(HOLD\\\|TODO\\\|NEXT\\\|THEM\\\|PROG\\\|OKAY\\\|DONT\\\|FAIL\\\|DONE\\\|NOTE\\\|KLUDGE\\\|HACK\\\|TEMP\\\|FIXME\\\|XXXX\*\\\)\\\>\\\) /dev/null \{\} +

这个命令是 consult-todo 默认的搜索命令,你可以拿去项目下面执行下看看有什么结果。

issue中回复你啦

这个提示提示应该是 consult-todo--format 函数里的那个,看着应该是 consult-todo 没有正确拿到 find|grep 的结果。这样的话你可以试试 Debug 一下 consult-todo--candidates-rgrep 这个函数。

好用,已经用上了,同样去掉了 magit-todo