去年,我为您带来了 2019 年的 19 天新(对您而言)效率工具。今年,我采取了不同的方法:构建一个环境,让您在新的一年里更有效率,使用您可能已经在使用或可能没有使用的工具。
用 Vim 做(几乎)所有事情,第 1 部分
我经常使用两个文本编辑器——Vim 和 Emacs。 为什么要同时使用两者?它们有不同的用例,我将在本系列的接下来几篇文章中讨论其中的一些用例。

好的,那么为什么要用 Vim 做所有事情呢?因为如果说我能访问的每台机器上都有一个应用程序,那就是 Vim。如果您像我一样,您可能已经花费大量时间在使用 Vim。那么为什么不将它用于所有事情呢?
不过,在那之前,您需要做一些事情。首先是确保您的 Vim 中有 Ruby 支持。您可以使用 vim --version | grep ruby 来检查。如果结果不是 +ruby,则需要修复它。这可能很棘手,您应该查看您的发行版的文档,以找到要安装的正确软件包。在 MacOS 上,这是官方的 MacVim(不是来自 Brew),在大多数 Linux 发行版上,这是 vim-nox 或 vim-gtk——而不是 vim-gtk3。
我使用 Pathogen 来自动加载我的插件和捆绑包。如果您使用 Vundle 或其他 Vim 包管理器,您需要调整下面的命令以使其与它一起工作。
在 Vim 中处理您的电子邮件
使 Vim 成为您提高效率计划中更重要部分的一个好的起点是使用它来发送和接收电子邮件,使用 Notmuch 并使用 abook 访问您的联系人列表。您需要为此安装一些东西。以下所有示例代码都在 Ubuntu 上,因此如果您使用不同的发行版,则需要进行调整。使用以下命令进行设置
sudo apt install notmuch-vim ruby-mail
curl -o ~/.vim/plugin/abook --create-dirs https://raw.githubusercontent.com/dcbaker/vim-abook/master/plugin/abook.vim
到目前为止,一切顺利。现在启动 Vim 并执行 :NotMuch。由于邮件库 notmuch-vim 编写时使用的版本较旧,可能会出现一些警告,但总的来说,Vim 现在将成为功能齐全的 Notmuch 邮件客户端。

如果您想搜索特定标签,请键入 \t,输入标签名称,然后按 Enter 键。这将调出包含该标签的所有消息的列表。 \s 组合键会弹出一个 搜索: 提示符,它将对 Notmuch 数据库进行全面搜索。使用箭头键导航消息列表,按 Enter 键显示选定的项目,然后输入 \q 退出当前视图。
要撰写邮件,请使用 \c 键。您将看到一条空白消息。这就是 abook.vim 插件的用武之地。按 Esc 键并输入 :AbookQuery <SomeName>,其中 <SomeName> 是您要查找的姓名或电子邮件地址的一部分。您将获得 abook 数据库中与您的搜索匹配的条目列表。通过键入其编号来选择您想要的地址,将其添加到电子邮件的地址行。完成键入和编辑电子邮件,按 Esc 键退出编辑模式,然后输入 ,s 发送。
如果您想在 :NotMuch 启动时更改默认文件夹视图,您可以将变量 g:notmuch_folders 添加到您的 .vimrc 文件中
let g:notmuch_folders = [
\ [ 'new', 'tag:inbox and tag:unread' ],
\ [ 'inbox', 'tag:inbox' ],
\ [ 'unread', 'tag:unread' ],
\ [ 'News', 'tag:@sanenews' ],
\ [ 'Later', 'tag:@sanelater' ],
\ [ 'Patreon', 'tag:@patreon' ],
\ [ 'LivestockConservancy', 'tag:livestock-conservancy' ],
\ ]
Notmuch 插件的文档中涵盖了更多设置,包括设置标签键和使用备用邮件程序。
在 Vim 中查阅您的日历

遗憾的是,似乎没有任何 Vim 日历程序使用 vCalendar 或 iCalendar 格式。有一个 Calendar.vim,它做得非常好。使用以下命令设置 Vim 以访问您的日历
cd ~/.vim/bundle
git clone git@github.com:itchyny/calendar.vim.git
现在,您可以通过输入 :Calendar 在 Vim 中查看您的日历。您可以使用 < 和 > 键在年、月、周、日和时钟视图之间切换。如果您想从特定视图开始,请使用 -view= 标志告诉它您希望看到的视图。您还可以向任何视图添加日期。例如,如果我想查看 2020 年 7 月 4 日这一周会发生什么,我将输入 :Calendar -view week 7 4 2020。帮助非常完善,可以通过 ? 键访问。

Calendar.vim 还支持 Google 日历(我需要它),但在 2019 年 12 月,Google 禁用了对它的访问。作者在 GitHub 上的问题 中发布了一个解决方法。
这就是您所拥有的,您的邮件、地址和日历都在 Vim 中。但您还没有完成;明天您将使用 Vim 做更多的事情!
4 条评论