去年,我为您带来了 19 天的 2019 年新(对您而言)效率工具。今年,我采取了一种不同的方法:构建一个环境,让您在新的一年里更有效率,使用您可能已经或尚未使用的工具。
使用 Emacs 完成(几乎)所有事情,第 2 部分
昨天,我谈到了如何在 Emacs 中阅读电子邮件、访问您的地址和显示日历。Emacs 具有大量功能,您还可以使用它进行 Twitter、聊天、待办事项列表等等!

要完成所有这些操作,您需要安装一些 Emacs 软件包。与昨天一样,使用 Meta+x package-manager 打开 Emacs 软件包管理器(Meta 在大多数键盘上是 Alt 键,在 MacOS 上是 Option 键)。现在使用 i 选择以下软件包,然后通过键入 x 安装它们
nnreddit
todotxt
twittering-mode
安装完成后,使用 Ctrl+x Ctrl+x 打开 ~/.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+a 保存文件,使用 Ctrl+x Ctrl+c 退出 Emacs,然后重启 Emacs。
使用 twittering-mode 从 Emacs 发推文

Twittering-mode 是 Emacs 中最好的 Twitter 界面之一。它支持 Twitter 的几乎所有功能,并具有一些易于使用的键盘快捷键。
要开始使用,请键入 Meta+x twit 以启动 twittering-mode。它将提供一个 URL 以打开——如果您愿意,还会提示您使用它启动浏览器——以便您可以登录并获取授权令牌。将令牌复制并粘贴到 Emacs 中,您的 Twitter 时间线应该会加载。您可以使用 箭头 键滚动,使用 Tab 键从一个项目移动到另一个项目,然后按 Enter 键查看光标所在的 URL。如果光标位于用户名上,按 Enter 键将在 Web 浏览器中打开该时间线。如果您在推文的文本上,按 Enter 键将回复该推文。您可以使用 u 创建新推文,使用 Ctrl+c+Enter 转发内容,并使用 d 发送私信——它打开的对话框中有关于如何发送、取消和缩短 URL 的说明。
按 V 键将打开一个提示,以进入其他时间线。要打开您的提及,请键入 :mentions。主时间线是 :home,键入用户名将带您到该用户的时间线。最后,按 q 键将退出 twittering-mode 并关闭窗口。
twittering-mode 中还有更多功能可用,我鼓励您阅读其 GitHub 页面上的 完整列表。
使用 Todotxt.el 在 Emacs 中跟踪您的待办事项

Todotxt.el 是 todo.txt 待办事项列表管理器的出色界面。它几乎具有所有功能的快捷键。
要启动它,请键入 Meta+x todotxt,它将加载您在 todotxt-file 变量中指定的 todo.txt 文件(您在本文章的第一部分中设置了该变量)。在 todo.txt 的缓冲区(窗口)内,您可以按 a 添加新任务,按 c 标记为完成。您可以使用 r 设置优先级,并使用 t 向项目添加项目和上下文。当您准备好将所有内容移动到 done.txt 时,只需按 A。您可以使用 / 筛选列表,或使用 l 刷新回完整列表。同样,您可以按 q 退出。
使用 ERC 在 Emacs 中聊天

Vim 的缺点之一是尝试使用它进行聊天非常困难(充其量)。另一方面,Emacs 默认发行版中内置了 ERC 客户端。使用 Meta+x erc 启动 ERC,系统将提示您输入服务器名称、用户名和密码。您可以使用几天前设置 BitlBee 时使用的相同信息:服务器 localhost,端口 6667,以及相同的用户名,无需密码。它应该与使用几乎任何其他 IRC 客户端相同。每个频道将拆分为一个新的缓冲区(窗口),您可以使用 Ctrl+x Ctrl+b 在它们之间切换,这也可以在 Emacs 中的其他缓冲区之间切换。/quit 命令将退出 ERC。
使用 Gnus 阅读电子邮件、Reddit 和 RSS 源

我确信许多 Emacs 的长期用户会问:“但是 Gnus 呢?” 当我昨天谈到在 Emacs 中阅读邮件时。这是一个合理的问题。Gnus 是一个内置于 Emacs 的邮件和新闻阅读器,尽管它不支持 Notmuch 作为邮件阅读器,而仅作为搜索引擎。但是,如果您将其配置为 Reddit 和 RSS 源(您稍后将执行此操作),那么最好也添加邮件功能。
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 Terminal Viewer,这是它获取 Reddit 文章的方式。然后,它将启动您的浏览器以登录 Reddit。之后,它将扫描并加载您订阅的 Reddit 群组。您将看到一个邮件文件夹列表,其中包含新邮件,以及一个子版块列表,其中包含新内容。在其中任何一个上按 Enter 键将加载该组的消息列表。您可以使用 箭头 键导航,按 Enter 键加载和阅读消息。查看消息列表时,按 q 键将返回到上一个视图,从主窗口按 q 键将退出 Gnus。阅读 Reddit 群组时,a 创建新消息;在邮件群组中,m 创建新电子邮件;并且 r 回复任一视图中的消息。
您还可以将 RSS 源添加到 Gnus 界面,并像阅读邮件和新闻组一样阅读它们。要添加 RSS 源,请键入 G+R 并填写 RSS 源的 URL。系统将提示您输入源的标题和描述,这些标题和描述应该从源中自动填充。现在键入 g 以检查新消息(这将检查所有组中的新消息)。阅读源就像阅读 Reddit 群组和邮件一样,因此它使用相同的键。
Gnus 中有很多功能,并且还有很多键组合。《Gnus 参考卡》列出了每个视图的所有键组合(五页,字体非常小)。
使用 nyan-mode 查看您的位置
最后,您可能会注意到我的某些屏幕截图底部的 彩虹猫。这是 nyan-mode,它指示您在缓冲区中的位置,因此当您更接近文档或缓冲区的底部时,它会变得更长。您可以使用软件包管理器安装它,并使用 ~/.emacs.d/init.el 中的以下代码进行设置
;; Nyan Cat
(setq nyan-wavy-trail t)
(setq nyan-bar-length 20)
(nyan-mode)
Emacs 的冰山一角
这只是 Emacs 所有功能的冰山一角。它非常强大,无论我是在跟踪待办事项、阅读和回复邮件、编辑文本还是与朋友和同事聊天,它都是我提高效率的首选工具之一。它需要一点时间来适应,但是一旦你适应了,它就可以成为你桌面上最有用的工具之一。
1 条评论