LaTeX简介--安装

本文已过时,请到 www.loggerhead.me 查看最新版


说明

  • 本文的目标是让需要对中文论文进行排版的OS X用户安装配置好中文环境,编译示例得到foo.pdf

  • 如果只需排版英文,那么中文配置部分可以跳过。

  • 如果是Linux/UnixWindows用户,需将Skim换成相应的pdf阅读器(LaTeXing默认设置中有提及),安装相应的LaTeX发行版,并对MacTeX中文配置部分的内容做对应调整。

安装

MacTeX是必备的。Skim和LaTeXing虽说不是必须的,但是强烈推荐安装。后文会介绍它们的作用,先将它们安装好:

  • 下载MacTeX.pkg
  • 使用Package Control安装LaTeXingLaTeX-cwl,并重启Sublime
  • 下载Skim。LaTeXing配合它使用效果更佳。
  • 安装中文字体

在下载MacTeX的这段时间,我们可以先了解一下LaTeXing。

LaTeXing

LaTeXing是Sublime的LaTeX插件,与之类似的还有LaTeXTools。两者功能类似,只不过LaTeXing更容易配置和简单易用,而且某些功能更加出色。它的特点包括:

  • LaTeX命令自动补全
  • 丰富的snippet
  • 填充引用、宏包、文档类型等任何东西
  • 快捷键跳转到生成的pdf
  • 可读性更高的出错提示

注意:

  • 自动补全功能需要安装LaTeXing的插件——LaTeX-cwl
  • 跳转pdf需要照下图设置Skim
  • 双击出错信息可以跳转到出错行

中文配置

安装中文字体

下载STXihei、STSong、STKaiti、STHeiti、STFangsong,双击它们,系统会调用字体册(Font Book)打开它们,点击安装即可。

配置MacTeX

在终端输入
sudo subl /usr/local/texlive/2014/texmf-dist/tex/latex/ctex/fontset/ctex-xecjk-winfonts.def
ctex-xecjk-winfonts.def文件修改成:

% ctex-xecjk-winfonts.def: Windows 的 xeCJK 字体设置,默认为六种中易字体
\setCJKmainfont[BoldFont={STHeiti},ItalicFont=STKaiti]{STSong}
\setCJKsansfont{STHeiti}
\setCJKmonofont{STFangsong}

\setCJKfamilyfont{zhsong}{STSong}
\setCJKfamilyfont{zhhei}{STHeiti}
\setCJKfamilyfont{zhkai}{STKaiti}
\setCJKfamilyfont{zhfs}{STFangsong}
\setCJKfamilyfont{zhli}{LiSu}
\setCJKfamilyfont{zhyou}{YouYuan}

\newcommand*{\songti}{\CJKfamily{zhsong}} % 宋体
\newcommand*{\heiti}{\CJKfamily{zhhei}}   % 黑体
\newcommand*{\kaishu}{\CJKfamily{zhkai}}  % 楷书
\newcommand*{\fangsong}{\CJKfamily{zhfs}} % 仿宋
\newcommand*{\lishu}{\CJKfamily{zhli}}    % 隶书
\newcommand*{\youyuan}{\CJKfamily{zhyou}} % 幼圆

\endinput

如果文件不存在,看看是不是命令中的2014要修改。

配置LaTeXing

点击Sublime Text => Preferences => Package Settings => LaTeXing => Settings - User打开LaTeXing.sublime-settings,填入以下内容:

{
    "debug": false,
    "fallback_encoding": "utf_8",
    // 打开.tex的同时打开.pdf文件
    "open_pdf_on_load": false,
    // 某些宏包需要这个参数,如:minted
    "build_arguments": ["-shell-escape"],
    // 使用xelatex而不是pdflatex进行编译
    "quick_build": [
        {
            "name": "Default Build: latexmk",
            "primary": true,
            "cmds": ["xelatex"]
        },
        {
            "name": "Quick Build 1: xelatex + bibtex + xelatex (2x)",
            "cmds": ["xelatex", "bibtex", "xelatex", "xelatex"]
        },
        {
            "name": "Quick Build 2: xelatex + biber + xelatex (2x)",
            "cmds": ["xelatex", "biber", "xelatex", "xelatex"]
        }
    ],
}

测试

用Sublime创建foo.tex,输入以下内容:

\documentclass{minimal}
\usepackage{xeCJK}
\setCJKmainfont[BoldFont=STHeiti,ItalicFont=STKaiti]{STSong}
\setCJKsansfont[BoldFont=STHeiti]{STXihei}
\setCJKmonofont{STFangsong}
\begin{document}
你好,世界
\end{document}

Cmd+B进行编译(3083以上版本的sublime在弹出框中选择LaTeX - Primary Quick Build),如果配置成功,控制台的输出应该是这样

Cmd+L, Cmd+J跳转到生成的foo.pdf(红点是修动位置)。

如果没能成功编译出foo.pdf,那么问题很可能是:

  • 没有安装相应的中文字体
  • foo.tex的文件编码不是UTF-8。如果你不能确定文件编码,点击File => Save with Encoding => UTF-8
  • LaTeXing使用pdflatex而不是xelatex进行编译

为了确定问题的所在,我们在终端输入命令xelatex foo.tex

  1. 如果能生成foo.pdf,那么是LaTeXing没有配置正确。
  2. 如果xelatex输出一堆错误信息,那么是中文字体没有安装或配置成功。
  3. 如果提示xelatex命令不存在,输入sudo ln -s /Library/TeX/Distributions/Programs/texbin/xelatex /usr/xelatex,重启终端,重新输入xelatex foo.tex

FAQ

TeX与LaTeX

TeX不仅是一个排版程序,而且是一种程序语言。LaTeX就是用这种语言写成的一个"TeX宏包",它扩展了TeX的功能,使我们很方便的逻辑的进行创作而不是专心于字体,缩进这些烦人的东西。类似C++与MFC、Ruby与Ruby on Rails的关系。

LaTeX与LaTeX2e

LaTeX2$$$\varepsilon$$$是LaTeX目前的版本。以前的LaTeX叫做LaTeX 2.09。现在随便下载一个TeX系统,里面带的 LaTeX都是LaTeX2$$$\varepsilon$$$。

MacTeX与MikTeX

不同的TeX发行版本而已,比如OS X下有MacTeX,Windows下有MikTeX,Linux和UNIX下有teTeX。TeX与它们的关系就像Linux内核与Debian、Redhat、Arch的关系一样。所以每个TeX发行版里都包含了TeX,LaTeX等等。

LaTeX与CJK、xeCJK

CJK、xeCJK都是LaTeX的宏包,MacTeX.pkg里面已经包含了它们,不必再自行安装。

你可能感兴趣的:(LaTeX简介--安装)