飄在空氣中調(diào)皮的精靈
空氣,我們沉浸在各式各樣的空氣之中烁焙。無論我們帶著何種情緒航邢,或嫌惡、或貪婪骄蝇、或欣喜膳殷、或悲哀,到了那一刻到了的時候九火,我們不得不服從于本能赚窃,或深或淺册招、或急促或悠長的呼吸一口,空氣勒极,哪怕是霧霾爆表的日子是掰,也不能阻擋我們服從于潛伏于血脈之中,強(qiáng)大的本能辱匿。
各式各樣的“靈感”键痛,如同在空氣中隱現(xiàn)的精靈,忽而出現(xiàn)在腦海中掀鹅,忽而又湮沒在思維的迷霧里不見蹤影散休。上一刻媒楼,我們還為之頭疼不已的問題乐尊,在下一刻,靈感涌現(xiàn)划址,解決起來似乎就那么的簡單扔嵌,完全的不值一哂;然而又一刻夺颤,或許是天邊的彩虹吸引了我們的注意力痢缎,靈感倏然隱沒,不見了蹤影世澜。
多么的可惜独旷!當(dāng)我們抓耳撓腮,頭發(fā)變成了雞窩的時候寥裂,深深的后悔嵌洼,如果當(dāng)初把那個想法記錄下來了多好?封恰!然而麻养,靈感終究還是隱沒了,我們只能頹然的期待下一次靈思涌現(xiàn)的時刻诺舔。
使用Org Capture完成靈感收集
呃鳖昌,好吧,抒情的時間結(jié)束了低飒。不過說實(shí)在的许昨,隨時將腦海中的突發(fā)奇想記錄下來,對于生活在碎片化日益嚴(yán)重的今天的我們來說褥赊,要想找一個時間做浸入式的思考糕档,不容易。
同樣崭倘,要不受干擾的坐下來做一件事情翼岁,也不容易类垫。
話說樓主剛剛想洗去“技術(shù)絲”的氣息,咋就有人扔西紅柿了琅坡?呃悉患,不對,是領(lǐng)導(dǎo)來交辦任務(wù)了榆俺∈墼辏看起來是一大坨一時半會弄不完的東西。咋辦茴晋?樓主這正在文思泉涌的絕世好文陪捷,難道就要就此罷手?
Emacs诺擅,一個出現(xiàn)在上世紀(jì)70年代初的編輯器市袖,配合著org mode,出色的解決了這個問題烁涌。究竟是什么辦法苍碟?答案就是:
org Capture ,一看就是一個透著靈氣的名字撮执,仿佛一個巨大的捕蟲網(wǎng)微峰,饑渴的看著你的周圍,等待命令抒钱,把那些頭腦中突然出現(xiàn)的想法蜓肆、領(lǐng)導(dǎo)突然交辦的事情都統(tǒng)統(tǒng)的攔截下來,盡可能不打斷當(dāng)前正在進(jìn)行的工作谋币。
哦仗扬,這是多么的貼心!好似身邊多了一個小蜜瑞信,唯一需要的就是別忘了打開咱們的捕蟲網(wǎng)厉颤,看看里面都收集了些啥?
什么是Capture
Capture是Org Mode中為了盡可能降低工作過程中的一些干擾而設(shè)計(jì)的一種快速記錄信息的方式凡简。它的工作適用場景基本是這樣的:
- 我正在進(jìn)行一項(xiàng)重要的工作逼友,最好不要有其他事情打擾
- 嗯~,有事情出現(xiàn)需要我去處理秤涩。
- 我需要盡快處理完帜乞,以便盡快的返回到我的工作中來,把手頭的事情做好
那么筐眷,在這個場景下黎烈,Capture的工作流程是:
- 調(diào)用Emacs的Capture功能,可以為調(diào)用功能設(shè)定一個你喜歡的快捷鍵,方便調(diào)用照棋。
- 在新的窗口中资溃,可以看到一系列設(shè)定后的模板,每個記錄模板都關(guān)聯(lián)了一個“字母”的快捷鍵。比如用“n”代表“筆記”,用“t”代表“待辦事項(xiàng)”等等助琐。
- 選擇適用的快捷鍵,例如趴捅,輸入“t”,準(zhǔn)備記錄剛才領(lǐng)導(dǎo)過來交辦的事情
- 輸入待辦事項(xiàng)的具體內(nèi)容
- 按下組合鍵序列(Ctrl-C Ctrl-C)完成記錄的過程
- 好了霹疫,我們可以安心的回到原有的工作上了拱绑。領(lǐng)導(dǎo)剛剛過來交辦的事情已經(jīng)記錄下來了,可以在手頭的工作告一段落之后丽蝎,再處理了猎拨。不會有遺漏。
Capture的模板
在Capture的基本使用流程之中征峦,我們提到了一個名詞“模板”迟几。什么是模板消请?
我們來試著定義一下栏笆,所謂的模板是:
- 一個記錄事件的加速系統(tǒng),通過簡單的幾個按鍵就可以定位到一個具體的記錄類別
- 一個快速記錄事件的框架臊泰,類似網(wǎng)站的表單蛉加,通些必要的字段即可完成事件記錄。
- 一個歸檔位置的快速定義缸逃,不同類別的記錄可以按設(shè)定記錄在不同的文件里针饥,方便查詢。
一個有效的模板由以下幾個部分組成:
- 快捷鍵 - keys
用于在列表中快速選擇模板需频。支持單個字符丁眼。嗯,多個字符的快捷鍵有待進(jìn)一步研究昭殉。 - 描述 - description
簡單的描述模板的用途苞七。這部分設(shè)定會出現(xiàn)在選擇模板的過程中 - 類型 - type
模板的種類。目前支持的取值為:- entry
Org Mode的標(biāo)題節(jié)點(diǎn)挪丢。使用中須指定Org文件的名稱 - item
一個簡單列表中的項(xiàng)目蹂风。同樣,這個類型的模板最終需要存儲在org文件中乾蓬。 - checkitem
一個帶有checkbox的項(xiàng)目惠啄。與item類型的模板相比,多了一個checkbox。 - table-line
在指定位置表格添加一行新的記錄撵渡。 - plain
一段文字融柬。如何輸入的,就如何記錄下來趋距。
- entry
注:org文件:擴(kuò)展名為org的文本文件丹鸿。遵循org mode定義的各類文本文件編寫規(guī)則。目前Emacs對org mode的支持最好(org mode就是在emacs中用elisp編寫開發(fā)的)棚品。
- 目標(biāo) - target
用于定義收集得到的文字片段在文件的存儲方式靠欢。一般來說,目標(biāo)文件為一個org文件铜跑。收集得到的相關(guān)內(nèi)容也會記錄到相應(yīng)的標(biāo)題之下门怪。最常用的target是:-
指定文件名和文件中唯一的標(biāo)題
(file+headline "path/to/file" "node headline")
-
指定文件名和完整的標(biāo)題路徑(如果需要存放片段的標(biāo)題不唯一)
(file+olp "path/to/file" "Level 1 heading" "Level 2" ...)
-
指定日期方式的標(biāo)題路徑,在今天的日期下添加片段
(file+datetree "path/to/file")
-
Emacs的配置
org capture的啟用設(shè)定
在emacs的啟動配置文件中锅纺,使用如下代碼完成org capture的啟用掷空。
(setq org-default-notes-file (concat org-directory "~/notes.org"))
(define-key global-map "\C-cc" 'org-capture)
代碼解釋如下:
(setq org-default-notes-file (concat org-directory "~/notes.org"))
設(shè)定默認(rèn)的片段存放文件名為Home目錄中的“notes.org”文件。在Windows中“~/notes.org”也可以寫做“d:/home/notes.org”(define-key global-map "\C-cc" 'org-capture)
使用組合鍵“Ctrl-c c”激活org capture功能囤锉。當(dāng)然坦弟,如果使用“Alt-x”組合鍵后輸入org-capture <enter>
也可以達(dá)到同樣的目的。
配置模板
利用我們上面介紹的內(nèi)容官地,我們可以開始定義我們要用到的模板信息:
(setq org-capture-templates
'(("l" "靈感" entry (file+headline "~/寫作創(chuàng)意.org" "創(chuàng)意")
"* %?\n %i\n %a")
("j" "Journal" entry (file+datetree "~/journal.org")
"* %?\n輸入于: %U\n %i\n %a")))
將上述代碼寫入到Emacs的啟動配置文件中后酿傍,我們看看運(yùn)行的效果:
-
啟動Emacs后,輸入組合鍵“Ctrl-c c”驱入,我們看到了Template的列表赤炒,如下圖:
啟動Capture -
我們來捕捉第一個寫作靈感,在上圖的列表中按下快捷鍵“l(fā)”(靈的拼音首字母)如下圖:
記錄第一個寫作靈感 -
我們來寫第一篇日記吧亏较。在上圖的列表中按下快捷鍵“j”(靈的拼音首字母)如下圖:
記錄一篇日記吧 -
打開兩個文件莺褒,我們看到了我們當(dāng)時輸入的內(nèi)容。如下圖:
看看成果
小結(jié):
好吧雪情,我們已經(jīng)得到了第一個簡單的靈感收集工具遵岩,今后的日子里,我們來逐漸豐富模板定義巡通。讓這個“捕蟲網(wǎng)”讓我們的生活更簡單尘执。