歡迎光臨
每天分享高質量文章

高效使用 Org 樣式 | Linux 中國

在我 前一篇關於 Emacs 的文章中 我提到了 Org 樣式(Org-mode),這是一個筆記管理工具和組織工具。本文中,我將會描述一下我日常的 Org 樣式使用案例。

— Ayrat Badykov

 

簡介

在我 前一篇關於 Emacs 的文章中[1] 我提到了 Org 樣式Org-mode[2],這是一個筆記管理工具和組織工具。本文中,我將會描述一下我日常的 Org 樣式使用案例。

筆記和代辦串列

首先而且最重要的是,Org 樣式是一個管理筆記和待辦串列的工具,Org 樣式的所有工具都聚焦於使用純文本檔案記錄筆記。我使用 Org 樣式管理多種筆記。

一般性筆記

Org 樣式最基本的應用場景就是以筆記的形式記錄下你想記住的事情。比如,下麵是我正在學習的筆記內容:

  1. * Learn
  2. ** Emacs LISP
  3. *** Plan
  4. - [ ] Read best practices
  5. - [ ] Finish reading Emacs Manual
  6. - [ ] Finish Exercism Exercises
  7. - [ ] Write a couple of simple plugins
  8. - Notification plugin
  9. *** Resources
  10. https://www.gnu.org/software/emacs/manual/html_node/elisp/index.html
  11. http://exercism.io/languages/elisp/about
  12. [[http://batsov.com/articles/2011/11/30/the-ultimate-collection-of-emacs-resources/][The Ultimate Collection of Emacs Resources]]
  13. ** Rust gamedev
  14. *** Study [[https://github.com/SergiusIW/gate][gate]] 2d game engine with web assembly support
  15. *** [[ggez][https://github.com/ggez/ggez]]
  16. *** [[https://www.amethyst.rs/blog/release-0-8/][Amethyst 0.8 Relesed]]
  17. ** Upgrade Elixir/Erlang Skills
  18. *** Read Erlang in Anger

借助 org-bullets[3] 它看起來是這樣的:

在這個簡單的例子中,你能看到 Org 樣式的一些功能:

◈ 筆記允許嵌套
◈ 鏈接
◈ 帶複選框的串列

專案待辦

我在工作時時常會發現一些能夠改進或修複的事情。我並不會在代碼檔案中留下 TODO 註釋 (壞味道),相反我使用 org-projectile[4] 來在另一個檔案中記錄一個 TODO 事項,並留下一個快捷方式。下麵是一個該檔案的例子:

  1. * [[elisp🙁org-projectile-open-project%20"mana")][mana]] [3/9]
  2. :PROPERTIES:
  3. :CATEGORY: mana
  4. :END:
  5. ** DONE [[file:~/Development/mana/apps/blockchain/lib/blockchain/contract/create_contract.ex::insufficient_gas_before_homestead%20=][fix this check using evm.configuration]]
  6. CLOSED: [2018-08-08 Ср 09:14]
  7. [[https://github.com/ethereum/EIPs/blob/master/EIPS/eip-2.md][eip2]]:
  8. If contract creation does not have enough gas to pay for the final gas fee for
  9. adding the contract code to the state, the contract creation fails (i.e. goes out-of-gas)
  10. rather than leaving an empty contract.
  11. ** DONE Upgrade Elixir to 1.7.
  12. CLOSED: [2018-08-08 Ср 09:14]
  13. ** TODO [#A] Difficulty tests
  14. ** TODO [#C] Upgrage to OTP 21
  15. ** DONE [#A] EIP150
  16. CLOSED: [2018-08-14 Вт 21:25]
  17. *** DONE operation cost changes
  18. CLOSED: [2018-08-08 Ср 20:31]
  19. *** DONE 1/64th for a call and create
  20. CLOSED: [2018-08-14 Вт 21:25]
  21. ** TODO [#C] Refactor interfaces
  22. ** TODO [#B] Caching for storage during execution
  23. ** TODO [#B] Removing old merkle trees
  24. ** TODO do not calculate cost twice
  25. * [[elisp🙁org-projectile-open-project%20".emacs.d")][.emacs.d]] [1/3]
  26. :PROPERTIES:
  27. :CATEGORY: .emacs.d
  28. :END:
  29. ** TODO fix flycheck issues (emacs config)
  30. ** TODO use-package for fetching dependencies
  31. ** DONE clean configuration
  32. CLOSED: [2018-08-26 Вс 11:48]

它看起來是這樣的:

本例中你能看到更多的 Org 樣式的功能:

◈ 代辦串列具有 TODODONE 兩個狀態。你還可以定義自己的狀態 (WAITING 等)
◈ 關閉的事項有 CLOSED 時間戳
◈ 有些事項有優先級 – A、B、C
◈ 鏈接可以指向檔案內部 ([[file:~/。..])

捕獲模板

正如 Org 樣式的文件中所描述的,捕獲可以在不怎麼干擾你工作流的情況下讓你快速儲存筆記。

我配置了許多捕獲模板,可以幫我快速記錄想要記住的事情。

  1. (setq org-capture-templates
  2. '(("t" "Todo" entry (file+headline "~/Dropbox/org/todo.org" "Todo soon")
  3. "* TODO %? \n %^t")
  4. ("i" "Idea" entry (file+headline "~/Dropbox/org/ideas.org" "Ideas")
  5. "* %? \n %U")
  6. ("e" "Tweak" entry (file+headline "~/Dropbox/org/tweaks.org" "Tweaks")
  7. "* %? \n %U")
  8. ("l" "Learn" entry (file+headline "~/Dropbox/org/learn.org" "Learn")
  9. "* %? \n")
  10. ("w" "Work note" entry (file+headline "~/Dropbox/org/work.org" "Work")
  11. "* %? \n")
  12. ("m" "Check movie" entry (file+headline "~/Dropbox/org/check.org" "Movies")
  13. "* %? %^g")
  14. ("n" "Check book" entry (file+headline "~/Dropbox/org/check.org" "Books")
  15. "* %^{book name} by %^{author} %^g")))

做書本記錄時我需要記下它的名字和作者,做電影記錄時我需要記下標簽,等等。

規劃

Org 樣式的另一個超棒的功能是你可以用它來作日常規劃。讓我們來看一個例子:

我沒有挖空心思虛構一個例子,這就是我現在真實檔案的樣子。它看起來內容並不多,但它有助於你花時間在在重要的事情上並且幫你對抗拖延症。

習慣

根據 Org 樣式的文件,Org 能夠跟蹤一種特殊的代辦事情,稱為 “習慣”。當我想養成新的習慣時,我會將該功能與日常規劃功能一起連用:

你可以看到,目前我在嘗試每天早期並且每兩天鍛煉一次。另外,它也有助於讓我每天閱讀書籍。

議事日程視圖

最後,我還使用議事日程視圖功能。待辦事項可能分散在不同檔案中(比如我就是日常規劃和習慣分散在不同檔案中),議事日程視圖可以提供所有待辦事項的總覽:

更多 Org 樣式的功能

◈ 手機應用(Android[5]ios[6]
◈ 將 Org 樣式文件匯出為其他格式[7](html、markdown、pdf、latex 等)
◈ 使用 ledger[8] 追蹤財務狀況[9]

總結

本文我描述了 Org 樣式廣泛功能中的一小部分,我每天都用它來提高工作效率,把時間花在重要的事情上。

 

赞(0)

分享創造快樂