能够随堂敲出一篇精美的笔记是每一个数学系学生的幻想。而在课后试图用TikZ画出能看的插图更是一种噩梦。最近又看到了 KU Leuven 的 Gilles Castel 分享的技术方案,真的很想尝试一下。
这是他讨论他的那套方案的博客页面。
- How I'm able to take notes in mathematics lectures using LaTeX and Vim
- How I draw figures for my mathematical lecture notes using Inkscape
- How I manage my LaTeX lecture notes
他在Ubuntu环境下采用了Vim作为编辑器,并搭配合适的插件,PDF查看使用Zathura。但是,经过试验,这样的搭配在macOS环境下并不适用,原因有二:
- 预装的Vim并不具有clientserver功能,甚至MacVim的终端版本也不能支持,导致PDF反向检索TeX代码的功能根本无法实现。详见Caveat: MacVim’s terminal Vim cannot perform inverse search。
- Zathura在运行于Apple Silicon上的macOS中不能良好运行,这可能是因为dBus在Apple Silicon架构下的问题。详见Zathura on macOS
(上面两个链接都指向同一篇文章Setting Up a PDF Reader for Writing LaTeX with Vim,事无巨细地比较了在编辑器、PDF查看器、操作系统的所有组合下各种功能的适用情况。)
鉴于此,我切换到了更合适的Neovim和Skim的组合。Neovim对Vim的server机制做了改进,Skim是一个macOS平台独占的PDF查看器。幸好Neovim几乎可以完美兼容Vim的配置文件,只需将~/.vimrc文件复制到Neovim目录下的~/.config/nvim/init.vim文件即可。这是我当前的配置文件1(随时更新):init.vim。
插件安装完毕,就需要在Ultisnips的目录下写tex.snippets。在设计思路上我基本参照 Castel 的博客,而在细节上作了一些个人的改动。这是我当前的snippets文件(随时更新):tex.snippets。
TODO: 作图相关。
值得指出的是,如果使用中文作为笔记的主要语言,输入法的切换可能会对流畅度造成影响。这有待进一步试验。
我的环境:
- macOS Sequoia 15.6
- BasicTeX 2025
- Neovim v0.11.3
- Skim 1.7.11
- 关于vim-plug插件系统和Powerline字体就不多赘述了。 ↩