使用 Emacs 進行社交併跟蹤你的待辦事項列表

Kevin Sonney發表於2020-03-04

在 2020 年用開源實現更高生產力的二十種方式的第十九篇文章中,訪問 Twitter、Reddit、 交談、電子郵件 、RSS 和你的待辦事項列表。

去年,我在 19 天裡給你介紹了 19 個新(對你而言)的生產力工具。今年,我換了一種方式:使用你在使用或者還沒使用的工具,構建一個使你可以在新一年更加高效的環境。

使用 Emacs 做(幾乎)所有的事情,第 2 部分

昨天,我談到了如何在 Emacs 中讀取電子郵件、訪問電子郵件地址和顯示日曆。Emacs 功能繁多,你還可以將它用於 Twitter、交談、待辦事項列表等等!

在 Emacs 中處理所有事情

要完成所有這些,你需要安裝一些 Emacs 包。和昨天一樣,用 Meta+x package-manager 開啟 Emacs 包管理器(Meta 鍵在大多數鍵盤上是 Alt,在 MacOS 上是 Option)。然後通過 i 選擇以下帶有的軟體包,然後輸入 x 進行安裝:

nnreddit
todotxt
twittering-mode

安裝之後,按下 Ctrl+x ctrl+f 開啟 ~/.emacs.d/init.el,並在 (custom-set-variables 行前加上:

;; Todo.txt
(require 'todotxt)
(setq todotxt-file (expand-file-name "~/.todo/todo.txt"))

;; Twitter
(require 'twittering-mode)
(setq twittering-use-master-password t)
(setq twittering-icon-mode t)

;; Python3 for nnreddit
(setq elpy-rpc-python-command "python3")

按下 Ctrl+x Ctrl+s 儲存檔案,使用 Ctrl+x Ctrl+c 退出 Emacs,然後重啟 Emacs。

使用 twittering-mode 在 Emacs 中發推

Emacs 中的 Twitter

Twittering-mode 是 Twitter 最好的 Emacs 介面之一。它幾乎支援 Twitter 的所有功能,並且鍵盤快捷鍵也易於使用。

首先,輸入 Meta+x twit 來啟動 twittering-mode。它會提供一個 URL 並提示你啟動瀏覽器來訪問它,你登入該 URL 後就能獲得授權令牌。將令牌複製並貼上到 Emacs 中,你的 Twitter 時間線就會載入了。你可以使用箭頭鍵滾動,使用 Tab 從一個專案移動到另一個專案,並按回車訪問游標所在的 URL。如果游標在使用者名稱上,按回車將在 web 瀏覽器中開啟時間軸。如果你在一條推文的文字上,按回車將回復該推文。你可以用 u 建立一個新的推文,用 Ctrl+c+Enter 轉發一些內容,然後用 d 傳送一條即時訊息——它開啟的對話方塊中有關於如何傳送、取消和縮短 URL 的說明。

V 會開啟一個提示讓你跳轉到其他時間線。輸入 :mentions 開啟你的提及。輸入 :home 開啟你的主時間線,輸入使用者名稱將進入該使用者的時間線。最後,按 q 會退出 twittering-mode 並關閉視窗。

twitter-mode 還有更多功能,我鼓勵你閱讀它 GitHub 頁面上的完整功能列表

在 Emacs 上使用 Todotxt.el 追蹤你的待辦事項

Emacs 中的 todo.txt

Todotxt.el 是一個很棒的 todo.txt 待辦列表管理器介面。它的快捷鍵幾乎無所不包。

輸入 Meta+x todotxt 啟動它將載入 todotxt-file 變數中指定的 todo.txt 檔案(本文的第一部分中設定了該檔案)。在 todo.txt 的緩衝區(視窗),你可以按 a 新增新任務並和按 c 標記它已被完成。你還可以使用 r 設定優先順序,並使用 t 新增專案和上下文。完成事項後只需要按下 A 即可將任務移如 done.txt。你可以使用 / 過濾列表,也可以使用 l 重新整理完整列表。同樣,你可以按 q 退出。

在 Emacs 中使用 ERC 進行交談

使用 ERC 與人交談

Vim 的缺點之一是很難用它與人交談。另一方面,Emacs 則將 ERC 客戶端內建到預設發行版中。使用 Meta+x ERC 啟動 ERC,系統將提示你輸入伺服器、使用者名稱和密碼。你可以使用幾天前介紹設定 BitlBee 時使用的相同資訊:伺服器為 localhost,埠為 6667,相同使用者名稱,無需密碼。

ERC 使用起來與其他 IRC 客戶端一樣。每個頻道單獨一個緩衝區(視窗),你可以使用 Ctrl+x ctrl+b 進行頻道間切換,這也可以在 Emacs 中的其他緩衝區之間進行切換。/quit 命令將退出 ERC。

使用 Gnus 閱讀電子郵件,Reddit 和 RSS

Mail,Reddit,and RSS feeds with Gnus

我相信昨天在我提及在 Emacs 中閱讀郵件時,許多 Emacs 的老使用者會問,“怎麼沒有 Gnus 呢?”

這個疑問很合理。Gnus 是一個內建在 Emacs 中的郵件和新聞閱讀器,儘管它這個郵件閱讀器不支援以 Notmuch 作為搜尋引擎。但是,如果你將其配置來閱讀 Reddit 和 RSS feed(稍後你將這樣做),那麼同時使用它來閱讀郵件是個聰明的選擇。

Gnus 是為閱讀 Usenet 新聞而建立的,並從此發展而來。因此,它的很多外觀和感覺(以及術語)看起來很像 Usenet 的新聞閱讀器。

Gnus 以 ~/.gnus 作為自己的配置檔案。(該配置也可以包含在 ~/.emacs.d/init.el 中)。使用 Ctrl+x Ctrl+f 開啟 ~/.gnus,並新增以下內容:

;; Required packages
(require 'nnir)
(require 'nnrss)

;; Primary Mailbox
(setq gnus-select-method
      '(nnmaildir "Local"
                  (directory "~/Maildir")
                  (nnir-search-engine notmuch)
      ))
(add-to-list 'gnus-secondary-select-methods
             '(nnreddit ""))

Ctrl+x Ctrl+s 儲存檔案。這分配置告訴 Gnus 從 ~/Maildir 這個本地郵箱中讀取郵件作為主源(參見 gnus-select-method 變數),並使用 nnreddit 外掛新增輔源(gnus-secondary-select-methods 變數)。你還可以定義多個輔助源,包括 Usenet 新聞(nntp)、IMAP (nnimap)、mbox(nnmbox)和虛擬集合(nnvirtual)。你可以在 Gnus 手冊 中瞭解更多有關所有選項的資訊。

儲存檔案後,使用 Meta+x Gnus 啟動 Gnus。第一次執行將在 Python 虛擬環境中安裝 Reddit 終端檢視器,Gnus 通過它獲取 Reddit 上的文章。然後它會啟動瀏覽器來登入 Reddit。之後,它會掃描並載入你訂閱的 Reddit 群組。你會看到一個有新郵件的郵件夾列表和一個有新內容的看板列表。在任一列表上按回車將載入該組中的訊息列表。你可以使用箭頭鍵導航並按回車載入和讀取訊息。在檢視訊息列表時,按 q 將返回到前一個檢視,從主視窗按 q 將退出 Gnus。在閱讀 Reddit 群組時,a 會建立一條新訊息;在郵件組中,m 建立一個新的電子郵件;並且在任何一個檢視中按 r 回覆郵件。

你還可以向 Gnus 介面中新增 RSS 流,並像閱讀郵件和新聞組一樣閱讀它們。要新增 RSS 流,輸入 G+R 並填寫 RSS 流的 URL。會有提示讓你輸入 RSS 的標題和描述,這些資訊可以從流中提取出來並填充進去。現在輸入 g 來檢查新訊息(這將檢查所有組中的新訊息)。閱讀 RSS 流 就像閱讀 Reddit 群組和郵件一樣,它們使用相同的快捷鍵。

Gnus 中有很多功能,還有大量的鍵組合。Gnus 參考卡為每個檢視列出了所有這些鍵組合(以非常小的字型顯示在 5 頁紙上)。

使用 nyan-mode 檢視位置

最後,你可能會一些截圖底部注意到 Nyan cat。這是 nyan-mode,它指示了你在緩衝區中的位置,因此當你接近文件或緩衝區的底部時,它會變長。你可以使用包管理器安裝它,並在 ~/.emacs.d/init.el 中使用以下程式碼進行設定:

;; Nyan Cat
(setq nyan-wavy-trail t)
(setq nyan-bar-length 20)
(nyan-mode)

Emacs 的基本功能

這只是 Emacs 所有功能的皮毛。Emacs 非常強大,是我用來提高工作效率的必要工具之一,無論我是在追蹤待辦事項、閱讀和回覆郵件、編輯文字,還是與朋友和同事交流我都用它。這需要一點時間來適應,但是一旦你習慣了,它就會成為你桌面上最有用的工具之一。


via: https://opensource.com/article/20/1/emacs-social-track-todo-list

作者:Kevin Sonney 選題:lujun9972 譯者:lujun9972 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

使用 Emacs 進行社交併跟蹤你的待辦事項列表

訂閱“Linux 中國”官方小程式來檢視

相關文章