当使用org-mode作为日常记录时,有时会设置一些没有scheduled或deadline的任务,例如读一本书。
这样的话就会导致,如果我使用org-agenda-list,那就看不到这些任务;但是使用org-todo-list的话,就会隐藏对应的timestamp,有没有什么好的方法改造agenda-list或todo-list,能够在org-agenda-list中显示没有分配时间的任务,或者在org-todo-list中显示相应的时间戳?
(看了org-super-agenda,但似乎也是基于事先分配了schedule或deadline的情况,还是说我的workflow应该改进,即使是书籍阅读这样的任务也应该设置时间戳?)
可以标记一个 TODO,然后对这些任务指定一个 CATEGORY 然后通过 org-super-agenda 的 :category 来过滤 alltodo 里面的东西。
wd1
2020 年12 月 29 日 10:49
3
Custom Agenda Views (The Org Manual) 你可以自己定义 agenda,然后看看是不是可以过滤出来你想要的东西。
比如我这个,会在 agenda 下面显示出来所有的 TODO 之类的。。
(setq org-agenda-custom-commands
'(("h" "Agenda and tasks"
((agenda "14d")
(todo "")
(tags "+reading")))
))
感谢回复。这样确实可以同时调出agenda与todo了,但在todo中还是看不到对应的deadline或者schedule。
M-x org-agenda n
,是你想要的吗,我一般用这个
其实差不多就是这个意思
就和我楼上说的一样,这里如果todo有schedule或者deadline显示不出来,感觉可能这是唯一的遗憾了。
你是想在这个基础之上在todolist那里加个时间是吗?
虽然可能还有些别的想做的tweak,但是主要就是这个!
另一个可能的方案或许是org-agenda-columns
但目前来看,似乎也有一定的缺陷:
1 中英文混排导致的竖线不对齐
2 可能是doom emacs自身设置带来的奇怪间隔
是否需要从更底层的地方hack起呢?
org-agenda-columns
里面不是也没有显示 Deadlines
, Scheduled
吗?
我找到了一个奇奇怪怪的东西,org-agenda
里面 E
可以显示 entry
的内容,它使用了 org-agenda-get-some-entry-text
函数获取的这些内容,但是它把 Drawer
以及 Deadlines
, Scheduled
都删了,如果稍微更改一下,就可以显示出时间
我觉得可以仿照它的这个方式来写一个只显示时间的
SPQR
2020 年12 月 30 日 11:35
11
这个应该是通过自定org-agenda-custom-commands 这个变量来搞,agenda里面每一行的显示格式和内容都可以自定义,,就是需要写一堆函数来配合。。。
这就要提起这篇老博客了 Org Mode - Organize Your Life In Plain Text! ,建议花时间看看。虽然写的很多很杂,但是完整的演示了怎么从自己的需求出发配置好org里面的每一个功能,他的org-todo, org-agenda, org-archive, org-refile这些设置都是一环扣一环,看懂了会很有帮助。
1 个赞
感谢!这篇文章之前看到过,但没看下去,后来想要仔细研究的时候反而找不到了,多谢!
laub
2021 年1 月 15 日 15:10
13
这篇文章太好了,我刚才胡乱点进去看到键绑定那段,哎呀,就是我要的。这文章是功力深厚的人弄的。
谢谢推荐!