为org-clock 添加提醒功能,目的有三个:
记录工作时间,方便统计在每个工作项目上花的时间
防止过渡劳累工作,周期性提醒休息
在各个项目之间合理分配时间
org-clock-watch添加的功能有:
如果计算机没有idle, 并且没有设置计时提醒,则弹出提醒,并播放声音提醒添加计时提醒
如果计算机idel超过一定时间,则停止提醒,直到计算机不idle
如果超时则周期性提醒休息,并播放声音
如果需要延时,点击相应按钮,启动延时计时
org-clock 已有功能:
统计一段时间内每个任务所花费的时间
计算机idle超过一段时间,互动式恢复计时,如减去idel时间,保留指定时间等等
开启org-clock 在modeline显示任务功能,则可显示当前任务
使用 quelpa 安装本包, 只需在emacs中eval下面的代码, quela会记忆安装的包,重启emacs并不需要重新安装包,详见quelpa repo
gitee:
(quelpa
(org-clock-watch :fetcher git :url "https://gitee.com/zongtao_wang/org-clock-watch.git" :branch "master" :files (:defaults "resources")))`
github:
(quelpa
(org-clock-watch :fetcher git :url "https://github.com/wztdream/org-clock-watch.git" :branch "master" :files (:defaults "resources")))`
设置work plan文件路径,如果你没有设置计时,它会打开这个文件,让你选择工作项目并计时
setq org-clock-watch-work-plan-file-path "/path/to/your/work/plan/org/file"
启动watcher, 在你的init文件中添加:
(org-clock-watch-toggle 'on)
使用系统idle时间
如果想要使用电脑的idle时间(而不是emacs的idle 时间) 需要安装 xprintidle
如果是ubuntu系统:
1. `sudo apt install xprintidle`
2. `M-x customize-varialbe org-clock-x11idle-program-name` 把设置改成 xprintidle 即可
其他系统请参考emacs 手册
On computers using macOS, idleness is based on actual user idleness, not just Emacs’ idle time. For X11, you can install a utility program ‘x11idle.c’, available in the ‘contrib/scripts/’ directory of the Org Git distribution, or install the xprintidle package and set it to the variable org-clock-x11idle-program-name if you are running Debian, to get the same general treatment of idleness. On other systems, idle time refers to Emacs idle time only.
快捷键
主要是设置org-clock的快捷键, 如果你喜欢hydra可以参考下面的设置
(defhydra hydra-org-clock (:color pink :hint nil)
"
org-clock hydra key
clock ^^^^effort ^^watcher
-------------------------------^^^^^^^---------------------------------
[_i_] clock in [_c_] cancel [_e_] set effort [_t_] toggle
[_L_] clock last [_o_] clock out [_E_] reset effort [_s_] start
[_r_] resolve ^^^^[_S_] stop
[_g_] goto ^^^^[_w_] status
[_J_] jump2current ^^^^[_O_] open plan
[_q_] cancel
"
("i" org-clock-in)
("o" org-clock-out :exit t)
("r" org-resolve-clocks :exit t)
("g" org-clock-goto :exit t)
("J" spacemacs/org-clock-jump-to-current-clock :exit t)
("c" org-clock-cancel :exit t)
("L" org-clock-in-last)
("e" org-set-effort :exit t)
("E" org-clock-modify-effort-estimate :exit t)
("t" org-clock-watch-toggle :exit t)
("s" (org-clock-watch-toggle 'on) :exit t)
("S" (org-clock-watch-toggle 'off) :exit t)
("w" (org-clock-watch-status))
("O" org-clock-watch-goto-work-plan)
("q" nil :color blue))
(global-set-key (kbd "C-c .") 'hydra-org-clock/body)
打开emacs
开始做你想做的事情 (不限于emacs)
忘记计时了,org-clock-watch弹出提醒,播放声音,打开工作计划文件, 你可以用org-clock-in
来计时
忘记设置提醒时长了, org-clock-watch弹出提醒,播放声音,定位到计时项目, 你可以用 org-set-effort
来设置提醒时长
如果你愿意也可以直接打开工作目录并对某个工作计时, 并设置effort, org-clock-watch 能够识别这些情景
超过时长则周期性弹出提醒,播放声音,直到你结束计时 org-clock-out
你发现时间不够,需要再多工作5分钟,点击提醒框中的 "5 min",提醒自动延后5 分钟
你发现设置的effort 不合理, 可以用 org-clock-modify-effort-estimate
重新设置effort
你临时有事离开电脑一会儿, 该包会自动识别, 停止提醒,直到你回来. org-clock 弹出恢复窗口,引导你恢复计时,比如从计时中扣除10分钟等等
一周以后,你想看看这一周你都做了什么, 打开工作计划文件, 运行 org-clock-report
则以表格方式给出花费时间分布.
总之, 你只需要运行org-clock 的计时命令,剩下的不用你管.
可以参考工作流和hydra key 的设定, 主要命令有:
开始计时. 打开工作文件 org-clock-in
设置提醒时长. org-set-effort
结束计时. org-clock-out
修改提醒时长 org-clock-modify-effort-estimate
查看org-clock-watch 状态 org-clock-watch-status
关闭 org-clock-watch C-u C-u org-clock-watch-toggle
开启 org-clock-watch C-u org-clock-watch-toggle
Toggle org-clock-watch org-clock-watch-toggle
打开工作计划文件 org-clock-watch-goto-work-plan
org-clock-watch 使用的icon, 播放的声音, 提醒周期都是可以定制的:
M-x custom-group org-clock-watch
简单的任务就让它保持简单
org-clock 非常强大,这个包只"监视"org-clock的状态,并发出提醒, 所以你可以使用org-clock的全部功能.
Enjoy it!
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。