latex(一)安装与配置
2017年不到20天就到2018年了,才开始把latex用在写论文上。
原来只是学了用latex写公式,嫌latex的配置太麻烦,总想拿mardown结合latex搞事情,结果啥也没做到。
只好亲自入用latex编译论文的坑了。
latex就是为写论文带来便利。一定不能在安装和配置上花太多时间,不然就舍本逐末了。
Linux 发行版下原版 TeX Live 2017 的安装
在安装前,TeX Live 2017 的手册可以在 TUG 的 TeX Live 目录下找到:https://www.tug.org/texlive/doc/texlive-zh-cn/texlive-zh-cn.pdf。可以先阅读其中的安装部分。
在 Linux 上安装原版 TeX Live 2017,与在 Windows 等其他系统下安装并无区别。
可以从 CTAN 镜象下载 ISO 文件,然后挂载到一个目录下,运行里面的 install-tl 脚本进行安装;也可以在 CTAN 的网站上只下载 install-tl 脚本运行,在线安装。
install-tl 是一个 Perl 脚本,在绝大多数发行版下都可以直接运行。
安装
通过系统仓库
首先,对于 Arch 等滚动更新发行版的用户来说,推荐使用官方仓库来安装。
1 | sudo pacman -S texlive-most texlive-lang |
但是 Debian/Ubuntu
等的软件源往往会比较旧,为了体验最新的 TeX Live
(虽然并没有什么卵差别),因此还是要用 ISO
映像安装。
通过iso文件
下载
- 官方镜像: texlive2017.iso
- XJTU 镜像: texlive2017.iso(校内用户请选择该源)
- USTC 镜像: texlive2017.iso(校内用户请选择该源)
镜像站目录里的 texlive.iso
就是最新的 texlive2017.iso
。
下载完成后可以选择进行校验避免出错,具体来说镜像站目录里会有 md5
和 sha512
两个 hash
文件以及一个 GPG
签名文件。TeX Live 2016
以后调整了基础架构,安装时会校验包的完整性,如果有 GPG
还会校验⽹络更新的签名。
1 | # GnuPG 校验签名,不懂请跳过,根据我的校验应当无误 |
准备
如果之前系统里已经装过 TeX Live,建议先删除。
对于 Linux 来说比较简单,只需要把安装目录(默认为 /usr/local/texlive
里的文件夹丢进 trash 即可),此外用户目录里修改过的一些配置也不要忘记。
如果想把有关依赖也卸载了,参考下一篇blog
如果是包管理安装的方式,例如 Ubuntu 用户,可以按照这样卸载:
1 | sudo apt-get purge texlive* |
因为 TeX Live 里的安装脚本是 Perl 写的,如果稍后要用图形界面安装,需要更新下依赖。
1 | # Debian/Ubuntu |
安装
如果能借助软件或文管等方式解决映像挂载问题就直接跳过,否则就在下载好的镜像目录执行以下命令安装:
1 | sudo mount -o loop texlive2017.iso /mnt |
图形界面大概长这样:
默认是安装在 /usr/local/texlive
目录下,可以更改为 /home
等,否则无脑下一步即可。
根据硬件性能不同,安装过程一般不会短于 3 分钟。
安装结束后可以卸载映像。
1 | cd ~ |
通过命令行边下载边安装
去这里https://www.tug.org/texlive/找对应的安装包,我下载的是install-tl-unx.tar.gz
。
下载完后,随便找个临时目录解压。
默认是安装在 /usr/local/texlive/
路径下,需要以超级用户权限安装,在解压下的目录运行1
sudo ./install-tl
然后在文本界面下按提示进行交互式安装。当然,也可以安装在本地的用户路径下(如 ~/texlive/),这样就不再需要特殊权限。
如果是进行网络安装,默认会自动选择一个 CTAN 镜象。
这种方法在国内安装很慢,1h才下300多个文件。
国内往往需要用 -repository
选项手工指定镜象服务器地址,URL 地址需要指定到 texlive/tlnet/
路径下。
推荐用清华的镜象:1
sudo ./install-tl -repository http://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/tlnet/
这种方法安装快,1h轻松安装完毕。
更方便的方式则是在图形界面下进行安装,此时需要确保系统安装了 perl-tk
等相关 Perl 图形界面库。运行命令
1 | sudo ./install-tl -gui |
即可按界面中的提示安装。或者运行
1 | sudo ./install-tl -gui=wizard |
使用图形界面的安装向导,向导方式比前面的方式配置项少一些,但更容易使用。
不过没啥用。还是建议用清华镜像那个命令快一点,不需要这么花俏。
修改环境变量,使编辑器等能找到texlive
对于 bash
等 Bourne
兼容的 shell
,在用户目录的 ~/.bashrc
文件中添加一些环境变量,具体路径由安装的位置确定。
1 | # TeX Live 2017 |
如果是 csh
或 tcsh
,则在 ~/.cshrc
中添加内容。
1 | # TeX Live 2017 |
对于 Debian/Ubuntu
用户,可以安装下我根据 官方说明 制作的 texlive-local_2017-1_all.deb
来申明下包管理里的依赖关系,避免版本冲突。
1 | sudo dpkg -i texlive-local_2017-1_all.deb |
至于其他发行版的 texlive-dummy
可去 CTAN
搜索。
测试
安装完成后,如果一切都设置好,那么运行以下一些简单测试命令,在当前目录应该会得到正确的输出,如果有命令报错,请自行解决。
1 | # 显示 TeX 版本应为 3.14159265 |
安装之后就可以使用 texdoc 命令阅读安装在本地手册了,对 TeX Live 不甚熟悉的用户最好运行
1 | texdoc texlive-zh |
命令再次阅读 TeX Live 2017 的手册。
更新
TeX Live 的更新工具 tlmgr
(TeX Live Manager)图形性能比较差,特别是在 Windows
上,故推荐终端里直接更新。
1 | # tlmgr 只能在 root 权限下运行 |
如果钟爱图形界面,带上 -gui
参数即可。校内用户记得把默认软件包仓库改为 XJTU
的镜像源地址。
1 | su |
其它
- 关于 Linux 上的编辑器,理论上只要是文本编辑器均可。由于可选择的方案太多,取决于个人的使用习惯,这里只推荐两个适合入门的自由软件
Texmaker
和TeXstudio
(fork 自前者)。 - 关于 Linux 上的字体,因为版权问题,所以
Times New Roman
和宋体
就成了很多 LaTeX 初学者的困扰。
推荐的办法是 ctex
宏集处理中文,使用 Fandol 开源字体
,默认效果好于 Windows 的中易宋体
,另外也可使用思源宋体
;而西文和数学字符则用 mathptmx
或 newtx
宏包处理,使用开源的 Nimbus Roman No9 L
字体代替 Times New Roman
,差别不大。
对字体有严格要求,可以复制 Windows 下的字体到 ~/.fonts
目录下,记得用 fc-cache -fsv
命令更新下字体缓存。
关于 LaTeX 教程或者说手册,推荐两本 包太雷的 lnotes2 和 lshort 中文版。
配置
按照 TeX Live 手册的说明,安装之后,还有一些工作需要做:
- 如果在安装时没有选择在系统目录为可执行文件创建符号链接,就需要手工修改 ~/.profile 文件设置 PATH 环境变量。
- export MANPATH=”/usr/local/texlive/2017/texmf-dist/doc/man”
- export INFOPATH=”/usr/local/texlive/2017/texmf-dist/doc/info”
- export PATH=”/usr/local/texlive/2017/bin/x86_64-linux:$PATH”
- XeTeX 会使用 fontconfig 库来通过字体名搜索字体。TeX Live 的字体目录默认并不在 fongconfig 的搜索目录之列,因此需要按文档要求,将 TeX Live 安装目录下的
texmf-var/fonts/conf/texlive-fontconfig.conf
文件,复制到/etc/fonts/conf.d/09-texlive.conf
,然后运行 fc-cache,以确保 XeTeX 能搜索到字体。否则,TeX Live 自带的 OpenType 字体就只能以字体文件名的方式调用,非常不便。此外这样也能让系统的其他软件使用 TeX Live 安装的字体。- 建议先复制到临时文件夹,改名后,再
sudo mv
- 建议先复制到临时文件夹,改名后,再
如果需要以字体文件名调用 Linux 系统安装的字体,例如使用 CJK 宏包调用来自 Windows 的字体,那么还需要修改 TeX Live 安装目录的 texmf.cnf 文件,在其中设置 OSFONTDIR 变量,例如:
1
OSFONTDIR = ~/.fonts//;/usr/share/fonts//;/usr/share/fonts-droid//
可能需要用
sudo gedit texmf.cnf
才修改得了。当然,这一步骤对多数用户的用处并不大。- 在
/usr/bin/
目录下创建符号链接才能用pdflatex进行编译1
sudo ln -s /usr/local/texlive/2017/bin/x86_64-linux/pdflatex pdflatex
安装LaTeX编辑器:TeXstudio
去官网下deb包然后安装:1
sudo dpkg -i XXX.deb
打开TeXstudio,在倒数第二个选项(o)配置一下。首先配置语言为中文,然后编译器选pdflatex,其他的千万不要动。
其他宏包
XeLatex
XeLatex
是 texlive-xetex
包的一部分,用来支持中文。
安装的话需要运行1
sudo apt-get install texlive-xetex
加上依赖有1G大小。