LaTeX写作加餐——MacOS下的LaTeX写作全新的无缝连接体验

终于发现了Mac下最爽的办法了

用过CTeX的人一定会被WinEdt编辑器+SumatraPDF浏览器的“无缝连接”印象深刻,在WinEdt里编辑好,编译后,SumatraPDF就会自动更新,在阅读器里双击,就会自动定位到WinEdt里的相应文字的那行,非常方便文章修改,这是一个极好的功能,可惜的是WinEdt实在是很难调整字体和主题,长时间写作非常累。并且,SumatraPDF虽然也是我很喜欢的一款轻量级阅读器,但是只支持Windows系统。

后来我主要还是在Mac电脑上写文章,转战了Sublime,却一直对WinEdt和Sumatra这个无缝连接念念不忘。Mac自带的预览app其实是很优秀的,是可以自动更新修改后的PDF,但需要用鼠标点一下。我之前也一直都忍了。直到最近有同学发信息给我说觉得不能动态更新让新手觉得很难,我一下子又想起来Windows下的无缝连接了。感觉Mac下一定会实现的。

说实话,如果是我自己用根本没动力去探索,而事实上Sublime下的LaTeXTools插件早就给出了解决方案,只是被我忽略了。但是,我也看了很多网上用LaTeX+Sublime的教程,确实也没有提到无缝连接的事情。

言归正传,无缝连接的关键点在于PDF阅读器和编辑器的配合,我们需要一个可以动态刷新并且支持从PDF阅读器调用Sublime的接口来定位到*.tex文件的某一行。我其实并不知道该怎么描述这项功能,在谷歌搜索也没有得到很好的结果。然而在一次无意中执行LaTeXTools的System Check功能时,我突然发现Mac下对应的PDF阅读器应该是“Skim”。就赶忙下载了“Skim”。一试果然对!就因为这功能我真想再多读一年PhD再多写几篇Paper。

下面我们来具体介绍怎么配置。首先,确认自己使用的是苹果电脑并且没有换成Windoes系统。目前我的系统版本是10.13.1。然后,请下载“Skim” PDF阅读器,其官方下载网页是 http://skim-app.sourceforge.net,打开看起来确实是有点山寨,但是不要紧,确实很好用。下载不了的同学请通过我提供的百度云盘下载:http://pan.baidu.com/s/1pKHF28V。安装完请至少运行一次,因为MacOS的安全机制会阻止程序的运行,系统偏好设置的安全性与隐私中运行“Skim”的运行。总体上“Skim”的性能和Mac自带的预览工具很接近了,渲染很流畅,而且比预览工具功能强大。

运行了Skim之后,请点击系统任务栏上的Skim->选项…

Skim选项

选择同步选项卡,勾选“检查文件变化”,将PDF-TeX同步支持选择为Sublime Text。Skim的配置工作就完成了。

下面需要解决Sublime如何在命令行里执行的问题了,Sublime官方给出了解决方案:https://www.sublimetext.com/docs/3/osx_command_line.html。但是实际使用中会发现并没有办法在Terminal里直接输入subl就运行sublime。我实际使用的指令是:

sudo ln -s "/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl" /usr/local/bin/subl

(页面可能不够宽,复制到的地址是 /usr/local/bin/subl)
就可以在Terminal里直接输入 subl 打开Sublime了。

最后一步,去Sublime里,使用 P事儿快捷键 shift+command+p,输入命令 check system,查找到的第一个应该就和LaTeXTools有关,执行之。稍等之后,在弹出的结果的最后一部分如果看到了
Viewer Status Location
------ ------ --------
skim available /Applications/Skim.app

就说明成功了。

下面请自由的编译几个TeX文件试试,看会不会自动打开Skim进行预览,然后在PDF里按住 shift+command 然后鼠标点击相应的文本位置,会自动回到Sublime里的相应位置去。虽然不是100%准,但是段落定位肯定是对的。

这项功能在Windows下的CTeX已经集成了很久了,但是是WinEdt编辑器下才行。用Sublime必然也是可以的。

继续求打赏,我这还在因斯布鲁克浪呢,还在夜里更文章。支付宝13584435676,不给比特币钱包了,也没人给我打比特币。


作者: 程飞, 未经作者允许请勿转载|3,600 次浏览

发表评论