Mactex+Sublime3+Skim集成环境安装及LaTeX常用命令

刚转战到mac上来工作,涉及到文本的书写离开了X软的Word还是有些许不适应,恰逢最近写paper也决心把latex好好折腾下。遂搜了一大顿帖子,发现了MacTex+Sublime3+Skim的爆炸组合,做点小总结。所以本文主要涉及以下几个核心方面:

  • MacTex+Sublime3+Skim安装
  • MacTex中文支持
  • LaTeX的一些特殊字符总结

MacTex的安装

Mactex官网进行安装即可,无脑操作,一步步往下点。值得注意的是可以只下载精简版就好,虽然我还是装了那个2G多的大胖子。

Sublime3(LaTeXTools)的安装

Sublime3官网进行安装,这里就不赘述了,它强大的工具插件集成,轻量级的架构都是很吸引人的地方,对比于之前把玩的Atom,常常卡掉也懒得弄了。这里需要做的是既然选择了Sublime作为编辑器,就需要下载一个Sublime中针对LaTeX的给力插件——LaTeXTools,支持直接编译和代码高亮。
打开Sublime,command+shift+P,输入pi(Package Control: Install Package),进入了插件安装页面输入
LaTeXTools,确认后安装就OK了。

Skim的安装

Skim是一款PDF查看软件,同样是在Skim官方网站上下载后进行无脑安装,用于tex文件编译完成后查看,同步配置是为了能和Sublime编辑器同步,在Sublime中编译后(command+B),直接可以在Skim中同步看到效果。
打开skim>点击Skim选项>选择同步>改写一些配置

预设 自定义
命令 /Applications/Sublime Text.app/Contents/SharedSupport/bin/subl
参数 “%file”:%line

MacTex的中文支持

中文支持是我很恼火的一个问题,因为早两年我在windows上用LaTeX的时候就发觉中文的支持贼差,但是现在国内一些较好的杂志(如《中国科学》《物理学报》)又纷纷推出了LaTeX的模版,好比硬要给拖拉机装上12缸😊,在mac上折腾发现也没有那么轻松,在此我也说句良心话,用LaTeX还是尽量去敲英文吧。参考了一些人的博客,大致有三种方式可以实现。

  • 最简便的方法,只需要在tex文件的最上部加上%!TEX program = xelatex就可以了,参考下文的代码和最终结果,但是这里需要多注意两个问题:
    • 一定要注意设定字体。参考下文中的 \setmainfont{Hiragino Sans GB}
    • 中文一定要多加一句代码\XeTeXlinebreaklocale "zh",这是为了中文可以正常换行。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
%!TEX program = xelatex
%!TEX TS-program = xelatex
%!TEX encoding = UTF-8 Unicode

\documentclass[12pt]{article} %这个我就不多说了,头文件
\usepackage{url} %这个我也不多说了
\usepackage{fontspec,xltxtra,xunicode} %最新的mactex都有

\defaultfontfeatures{Mapping=tex-text}
\setromanfont{Heiti SC} %设置中文字体
\XeTeXlinebreaklocale “zh”
\XeTeXlinebreakskip = 0pt plus 1pt minus 0.1pt %文章内中文自动换行,可以自行调节

\newfontfamily{\H}{Songti SC} %设定新的字体快捷命令
\newfontfamily{\E}{Weibei SC} %设定新的字体快捷命令
\begin{document}
\thispagestyle{empty}
\small{给一个比较简单的方法,在mac上折腾CJK有点麻烦,其实XeTeX就可以解决中文的问题。编码的改动其实不需要在mactex的设置里面改,写在前面然后注释掉就好了。\\
繁體字什麼的也是可以實現的。\\
当你需要打不同字体的时候,就需要用到这个\url{\newfontfamily},这样你可以在一行中显示多种字体。比如说:\\}
\Huge{{\H 宋体} {\E 魏碑} 黑体}
\end{document}

  • 比较折腾的方法,就是去折腾这个CJK。其实也没有很折腾,我下载的最新的mactex2015版,CJK已经集成在其中了,不用单独下载了,只要在文档开头加上\usepackage[encapsulated]{CJK}就可以了。具体参看下面的测试tex:
1
2
3
4
5
6
7
8
9
\documentclass[12pt]{article}
\usepackage[encapsulated]{CJK} % 1. Dec. 2009更新:使用[encapsulate]才是正確的用法
\begin{document}

\begin{CJK}{UTF8}{bsmi} % 開始 CJK 環境,設定編碼,設定字體
“互联网能造空调吗?互联网永远都只是工具,不能替代实体经济。”在互联网是万能的甚至可以颠覆、通杀一切的说法在中国商界流行之时,董明珠仍然坚持自己观点。她给在场企业家鼓劲说,不信再等两年来看,实体经济一定会崛起。无论什么企业和公司,都要有自己的核心技术。实体店也会一直存在下去,但在互联网时代发生很大变化。实体店应该在便利性等方面下功夫,让顾客感觉跟自己更近。
This is a test.
\end{CJK} % 結束 CJK 環境
\end{document}
  • 比较严谨的方法,安装latexmk,然后在LaTeXTools中更改设置,首先
1
2
sudo tlmgr update --self
sudo tlmgr install latexmk

然后在Sulime中打开Preferences——Package Settings——LaTeXTools——Settings-User,在builder-settings中进行如下设置(记住一定是在builder-settings这个选项下进行设置):

1
2
"program" : "xelatex",
"command" : ["latexmk", "-cd", "-e", "$pdflatex = 'xelatex -interaction=nonstopmode -synctex=1 %S %O'", "-f", "-pdf"],

更加具体的配置和一些问题,可以访问Readern博客,特别是如果编译出现问题可以多follow下面的评论。

LaTeX的命令总结

这部分我会在具体一边做的时候一边补充,所以我先慢慢整理。

LaTeX对应的所有希腊字母:

这部分顺便测试这个Hexo里的MathJax。

\alpha $\alpha$ \beta $\beta$ \gamma $\gamma$
\delta $\delta$ \epsilon $\epsilon$ \zeta $\zeta$
\eta $\eta$ \theta $\theta$ \iota $\iota$
\kappa $\kappa$ \lambda $\lambda$ \mu $\mu$
\nu $\nu$ \xi $\xi$ \omicron $\omicron$
\pi $\pi$ \rho $\rho$ \sigma $\sigma$
\tau $\tau$ \upsilon $\upsilon$ \phi $\phi$
\chi $\chi$ \psi $\psi$ \omega $\omega$

公式:

单行公式:

1
$$a = b + c$$

稍复杂的公式:

1
2
3
4
$$\frac{\partial u}{\partial t}
= h^2 \left( \frac{\partial^2 u}{\partial x^2} +
\frac{\partial^2 u}{\partial y^2} +
\frac{\partial^2 u}{\partial z^2}\right)$$

薛定谔方程:

1
2
3
4
$$ i\hbar\frac{\partial \psi}{\partial t}
= \frac{-\hbar^2}{2m} \left(
\frac{\partial^2}{\partial x^2} + \frac{\partial^2}{\partial y^2} + \frac{\partial^2}{\partial z^2}
\right) \psi + V \psi.$$