代码拉取完成,页面将自动刷新
通过Emacs提供的calendar+Appointment可以实现简单的日程管理功能. 此外Emacs其实还提供了功能更强的Org-mode,但该mode太过复杂,简单的日程管理无需用到这么复杂的东西.
使用M-x calendar就可以调用Emacs的calendar功能,这时Emacs会打开一个显示了三个月(分别是前一个月,当前月,后一个月)信息的日历,光标自动放在表示今天的那个位置. Emacs提供了大量的命令对光标所在的日期进行日程管理. 默认情况下calendar将周日作为一周的第一天,我们可以通过更改变量calendar-week-start的值来设置以星期几作为一周的第一天
(setq calendar-week-start 1) ;设置星期一为每周的第一天
一般情况下我们可以直接用上下左右方向键移动光标到其他日期处,也可以直接用鼠标点击要定位的日期. 此外,Emacs也提供了其他的移动命令,如下表所示:
命令 | 说明 |
---|---|
C-f 或者 左方向键 | 后一日 |
C-b 或者 右方向键 | 前一日 |
C-n 或者 下方向键 | 后一周 |
c-p 或者 上方向键 | 前一周 |
M-} | 后一月 |
M-{ | 前一月 |
C-x ] | 后一年 |
C-x [ | 前一年 |
C-a | 移动到一周的开始 |
C-e | 移动到一周的末尾 |
M-a | 移动到一月的开始 |
M-e | 移动到一月的末尾 |
M-< | 移动到一年的开始 |
M-> | 移动到一年的末尾 |
除了使用上诉的移动命令来定位日期外,Emacs还提供了多个命令直接定位到指定的日期处:
命令 | 说明 |
---|---|
g d | 根据日期定位 |
g D | 根据天数 |
. | 移动到当前日期 |
g C | 定位到指定的阴历 |
在Calendar中可以为指定的日期添加代办事项:
命令 | 说明 |
---|---|
i d | 添加待办事项 |
i w | 添加每周例行任务 |
i m | 添加每月例行任务 |
i y | 添加每年例行任务 |
i a | 添加周年纪念日 |
i b | 为一段时间添加待办事项 |
i c | 添加循环事项 |
将光标定位到指定的日期处后,Emacs还提供了一些命令来获取光标所处日期的信息. 常用到的命令有:
(holiday-fixed m d 节日名) ;定义m月的第d日为xx节假日
(holiday-float m w n 节日名) ;定义m月的第w个星期的第n天为xx节假日,默认周日为第0日
(setq calendar-mark-holidays-flag t) ;让calendar自动标记出节假日的日期
(setq calendar-mark-diary-entries-flag t) ;让calendar自动标记出记有待办事项的日期
值得一提的时,如果你将记录某项代办事项但却不想被标记出来,只需要在执行插入待办事项的命令前执行C-u就行了(就像C-u i d这样).
命令 | 说明 |
---|---|
p d | 显示当前日期是当年的第几天 |
p C | 显示当前日期的农历信息 |
M-= | 计算一段时间的天数 |
h | 查看当前日期的假期信息 |
a | 查看三个月内的所有节假日信息 |
x | 标记出calendar中所有为节假日的日期 |
d | 查看指定日期的待办事项 |
m | 标记出calendar中所有记有待办事项的日期 |
u | 清除calendar中的标记 |
Emacs提供了两个命令来将日历信息,节假日信息和待办事项信息一起导出成HTML文件供我们查看,这两个命令为:
命令 | 说明 |
---|---|
H m | 导出单月的日程安排信息 |
H y | 导出当年的每个月的日程安排信息 |
(setq appt-display-mode-line t) ;在mode-line上显示还有多少分钟到约会的倒计时
命令 | 说明 |
---|---|
M-x appt-activate | 开启appointment提醒功能 |
M-x appt-add | 添加一个约会提醒 |
M-x appt-delete | 删除约会提醒 |
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。