Emacs 折腾小记(二)
文章目录
最近断断续续地又为 Emacs 和系统做了一些优化,渐渐地把它作为主要的主产工具了。
1. 改进的 Golden Dict 查词
Emacs 折腾小记 中提到使用 goldendict-ng 作为离线词典来查单词,但这里只涉及到了它在 Emacs 内部用法,后来我想着把这个查词工具应用得更广泛一些,把它变成 Windows 系统下生产时的主要查词工具。
这里实现的方式比较简单,直接写了一个 AutoHotKey 脚本,监听双击后文本选中的事件,一旦双击后选中了一个英文单词,那么立马调用 goldendict 来翻译。这里最关键的是利用了 goldendict 的命令行查词接口 goldendict [word]
。
脚本如下所示,具体的逻辑参考代码注释。这里还添加了一个在 goldendict 界面点击鼠标中键快速退出的功能,方便看完词的意思后直接跳回原来的界面,防止从原文本中分心。有了这个脚本,现在就可以方便地查询浏览器、PDF中的英文单词了。现在我已经几乎不用网络搜索查词,所有需求全部都能用 goldendict 解决。
|
|
效果如下:
2. 护眼 Pro Max
经常面对电脑屏幕难免会眼疲劳,即使用了 Emacs 折腾小记 中提到的昼夜不同主题,也会因为显示器的蓝光而眼睛酸痛。通过搜索发现 Linux 上的一款开源护眼神器 redshift ,令人惊喜的是它现在已经有了构建好的 Windows 的版本,可以直接下载下来使用。 redshift 根据你所在位置的经纬度计算出日出日落时间,再根据这个时间来调节屏幕的色温。所有配置都写在 %USERPROFILE%\AppData\Local\ 下的 redshift.config 文件中。
它仓库中自带了 redshift.config 的示例,只要稍作修改,放到上面说的目录中就行。
我做的修改如下:
|
|
为了让它开机就能自动运行,我又写了一个 Powershell 脚本:
|
|
并在 startup 目录下创建快捷方式( win+r
运行,输入 shell:startup
进入这个目录),填入:
|
|
这样开机后 redshift 会自动启动并按时间来调整屏幕色温。我一直用到现在,感觉还不错。
3. 添加 pdf-tools
虽然一直以来的观念是把任务交给更适合它的工具来完成,但因为笔记一直使用 Org Mode ,所以如果能直接在 Emacs 中看 PDF 那将是一件非常棒的事情。因为这里就可以充分利用多 Buffer 的优势,可以创建两个水平并列的 Buffer,一边读 PDF 一边写 Org Mode 笔记,也可以在写笔记的时候快速切换到 PDF 进行查阅,而后返回笔记进行编写,中间不会因为切换软件而打乱思路。
Emacs 有一个著名的包 pdf-tools 能出色地完成 PDF 显示的任务。在 Windows 下编译 pdf-tools 总是一个令人头痛的问题,后来我才发现是我的方法没有掌握好。
编译 pdf-tools 需要安装 MSYS2 编译工具链,这里选择直接用 winget 安装:
|
|
安装后更新数据源,开始准备编译。打开 mingw64 终端:
|
|
这样直接就能编译出一个 epdfinfo.exe 可执行文件,如果编译失败可能是由于缺少指定的包,使用 pacman 安装再重新编译就行了。
在 Emacs 中使用 M-x package-install
安装 pdf-tools
,再将上面生成的 epdfinfo.exe 拷贝到 ~/.emacs.d/elpa/pdf-tools-[version]/ 目录下。最后在 Emacs 配置文件中加入下面的设置就完成了。
|
|
效果如下:
补充:因为 pdf-tools 有自己的文档搜索,所以如果装了 Swiper 等搜索插件的话会无法调用,因此需要在 pdf-view-mode 下将原来的 isearch 恢复:
|
|
4. 为 Org 添加番茄钟
工作时很难一直专心做一件事,经常干累了就走神很长时候,用番茄钟来控制自己的工作与休息,让工作的效率保持在一个高的状态是不错的方法。
Emacs 中的番茄钟安装很简单,但在 Windows 上无法在倒计时结束的时候弹出提醒,经过查询后使用 Emacs China 论坛上大佬的代码修复了这个问题,整体配置如下:
|
|
效果如下:
5. 为 Org 添加 Zotero 链接
在写论文笔记的时候经常需要直接从 Org 文件跳转到 Zotero 相应的论文条目,
Org Mode 中不支持 zotero://
类型的链接,需要手动添加:
|
|
另外需要在 Zotero 中安装 Zutilo 插件,并在选项中勾选 copy select item links ,这样就能直接在目录对应的论文条目上提取 zotero 链接,再把链接放到笔记中了。
6. 使用 org-download 来快速插入图片
虽然大部分时候只用 Org Mode 来处理文字,但免不了会有导出后查看的需求,这时图文并茂常常能让理解更加深刻一些。传统的插入图片的方法要将图片保存到特定目录,再在 Org 笔记中写图片链接,这对于截图、网页图片来说很不友好。 org-download 能很好地解决这个问题,它可以从链接中下载图片存到本地,再自己插入图片链接,也可以从剪贴板中提取图片,甚至直接调用截图工具。
在 Windows 下使用 org-download 不那么容易,要先安装 imagemagick 工具和
irfanview 工具,前者用来保存剪贴板中的图片,后者用来截图。这里有个坑是
irfanview 的图片保存路径是传统的 cmd 风格,所以要修改一下
org-download-screensot-file
变量。
|
|
效果如下:
写在最后
现在的 Emacs 已经基本符合我理想中的样子,还有一些有关写程序的自定义配置考虑等后续更充实后放在(三)中发布出来。终于可以暂时不折腾,把精力放在更重要的专业知识和技能的学习中了。