2009年10月22日 星期四

Emacs的calendar-mode

.emacs 設定
;;;; calendar
(setq calendar-week-start-day 1) ; 第一天為星期一
(setq view-diary-entries-initially t) ; 開calendar時也顯示diary
(setq mark-holidays-in-calendar t) ; 開calendar時也顯示 holiday

;; 隱藏跟我無關的節日
(setq holiday-general-holidays nil)
(setq christian-holidays nil)
(setq hebrew-holidays nil)
(setq islamic-holidays nil)
(setq solar-holidays nil)
(setq bahai-holidays nil)

; 按p C顯示天干地支, from http://forum.slime.com.tw/post1100258-1.html
(setq chinese-calendar-celestial-stem
["甲" "乙" "丙" "丁" "戊" "已" "庚" "辛" "壬" "癸"])
(setq chinese-calendar-terrestrial-branch
["子" "丑" "寅" "卯" "辰" "巳" "午" "未" "申" "酉" "戌" "亥"])

;; diary
(setq diary-file "~/mydiary") ; 設diary檔案路徑(預設是diary)
; diary-mode fancy display 炫麗顯示
(setq view-diary-entries-initially t
mark-diary-entries-in-calendar t
number-of-diary-entries 7)
(add-hook 'diary-display-hook 'fancy-diary-display)
(add-hook 'today-visible-calendar-hook 'calendar-mark-today)
(add-hook 'fancy-diary-display-mode-hook
'(lambda ()
(alt-clean-equal-signs)))
; via http://www.emacswiki.org/emacs/DiaryMode

; set date format
(setq calendar-date-display-form '(year "-" month "-" day))
; diary檔用iso日期格式(預設是美國式)
(setq calendar-date-style 'iso)

(setq local-holidays '((holiday-fixed 10 2 "我生日")
));加很多人的生日


操作

. (today)
M-}/{ (上/下個月的同一天)
M-a/M-e (上/下個月的頭/尾)
M->/< (去/明年)
d (show diary date)
s (show diary file)
i d (insert date)
i a (insert anniversary)

The Calendar and the Diary (Emacs Manual)

漸漸捨棄google calendar...

沒有留言: