MacTeX 使用
MacTeX 是一个 TeX Live 的 macOS 定制版本。它包括:
- TeX Live
- GUI 应用程序
- Ghostscript
关于 MacTeX 的介绍可以查看 MacTex 主页
安装
brew install --cask mactex
如果你不使用 MacTeX 的 GUI 工具,比如说你想用 VS Code 编辑 .tex
文件,可以安装无 GUI 版本:
brew install --cask mactex-no-gui
这个版本只包含 MacTeX 命令行工具
MacTeX 有一个生成数学公式矢量图的小工具 LaTeXiT,可以单独安装:
brew install --cask latexit
编译 LaTeX 文档
使用命令行工具
如果要使用命令行工具进行编译,只需使用 latexmk
:
latexmk main.tex
编译之后将得到 main.dvi
文件,你可以使用 Skim 查看 .dvi
文件。
如果你想要得到 PDF 文件,使用下面的命令:
latexmk -pdf main.tex
如果你要使用 XeLaTeX 引擎进行编译,需要添加 -xelatex
选项:
latexmk -xelatex main.tex
如果 .tex
文件中使用的宏包要执行外部程序,需要添加 -shell-escape
选项:
xelatexmk -shell-escape main.tex
清理临时文件:
latexmk -c # 不清理 PDF 以及其他一些最终文件
latexmk -C # 清理所有文件(包括 PDF)
常用命令:
latexmk \
-synctex=1 \
-interaction=nonstopmode \
-file-line-error \
-xelatex \
-shell-escape \
-outdir=build \
main.tex
与 Visual Studio Code 集成
VS Code 有一款名为 LaTeX Workshop 的插件,可以很好地与 TeX Live 工具集成。
关于 LaTeX Workshop 插件的用法,网上的相关文档已经很多了。这里只记录一些个人的插件配置。
// 关闭公式鼠标悬停预览
"latex-workshop.hover.preview.enabled": false,
// 在智能感知功能中使用 biblatex 包作为参考文献和引文处理的后端
"latex-workshop.intellisense.citation.backend": "biblatex",
// 启用包智能提示
"latex-workshop.intellisense.package.enabled": true,
// 设置编译输出目录,避免输出文件污染根目录
"latex-workshop.latex.outDir": "%DIR%/build",
// 设置默认编译链为上次使用的编译链
"latex-workshop.latex.recipe.default": "lastUsed",
// 编译链,我只需要 latexmk (xelatex) 和 latexmk
"latex-workshop.latex.recipes": [
{
"name": "latexmk (xelatex)",
"tools": ["xelatexmk"]
},
{
"name": "latexmk",
"tools": ["latexmk"]
}
],
// 编译工具,加入 -shell-escape 选项
"latex-workshop.latex.tools": [
{
"name": "latexmk",
"command": "latexmk",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-pdf",
"-shell-escape",
"-outdir=%OUTDIR%",
"%DOC%"
],
"env": {}
},
{
"name": "xelatexmk",
"command": "latexmk",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-xelatex",
"-shell-escape",
"-outdir=%OUTDIR%",
"%DOC%"
],
"env": {}
}
],
// 关闭编译错误提示
"latex-workshop.message.error.show": false,
"latex-workshop.message.warning.show": false,
// 在 VS Code 右键上下文菜单中显示与 LaTeX Workshop 相关的选项
"latex-workshop.showContextMenu": true,
// 设置正向查找快捷键为双击鼠标左键
"latex-workshop.view.pdf.internal.synctex.keybinding": "double-click",
快捷键:
- 编译:
⌘
⌥
B
- 预览:
⌘
⌥
V
- 正向搜索:
⌘
⌥
J
- 反向搜索:
⇧
⌘
单击
参见:
相关工具介绍
MacTeX GUI
如果你安装了 MacTeX 的 GUI 版本,你会获得下列 5 款工具:
- TeXShop: TeX/LaTeX 编辑器
- BibDesk: 参考文献管理工具
- LaTeXiT: 一种小巧的公式编辑器
- hintview: HINT 文件查看器
- TeX Live Utility: TeX Live 的包管理器(其实就是 tlmgr 的图形前端)
LaTeXiT
LaTeXiT 是一款方便小巧的公式渲染工具。通过输入 LaTeX 代码,它可以为我们生成公式预览并能够以多种格式导出(PDF、SVG、PNG 等等)。
LaTeXiT 工具的主界面可以选择四种渲染模式。下面介绍一下这几种模式的区别:
Align 模式
在 Align 模式书写代码相当于在 LaTeX 文档的 align*
块中书写代码:
\begin{align*}
a + b & = c\\
& = d
\end{align*}
Display 模式
在 Display 模式书写代码相当于在 LaTeX 文档的 $$...$$
行间代码块中书写代码:
$$
\sum_{i=1}^n a_i = \frac{n}{2} \left(a_1 + a_n\right)
$$
Inline 模式
在 Inline 模式书写代码相当于在 LaTeX 文档的 $...$
行内代码块中书写代码:
$\sum_{i=1}^n a_i = \frac{n}{2} \left(a_1 + a_n\right)$
Text 模式
在 Text 模式书写代码相当于直接书写 LaTeX 代码:
你好,\LaTeX !
hintview
HINT 文件是一种可重排的 TeX 输出文件,它在预览时可以像 HTML 网页一样对字体放大、缩小。
使用 hitex
和 hilatex
工具构建 HINT 文件。
更多关于 HINT 文件:HiTEX: Reflowable Output for TEX
MacTeX CLI
TeX 引擎:
- tex — 原始的 TeX 引擎。
- latex — LaTeX 引擎,使用 DVI 格式输出。
- pdflatex — LaTeX 引擎,直接生成 PDF 文档。
- xelatex — 支持现代字体技术(如 Unicode 和 OpenType)的 LaTeX 引擎。
- lualatex — 集成了 Lua 脚本语言的 LaTeX 引擎。
BibTeX 相关工具:
- bibtex — BibTeX,生成参考文献列表的工具。
- biber — BibTeX 的替代品,与 biblatex 宏包配合使用。
索引生成工具:
- makeindex — 生成索引列表的工具。
- xindy — 生成索引的工具,用于更复杂的索引排版。
格式转换工具:
- dvips — 将 DVI 格式文件转换为 PostScript 文件。
- dvipdfmx — 将 DVI 格式文件转换为 PDF 文件。
- ps2pdf — 将 PostScript 转换为 PDF。
- dvi2tty — 将 DVI 文件显示为ASCII文本。
- gs — PostScript 和 PDF 解析和渲染工具
字体相关工具:
- kpsewhich — 文件查找工具,用于查找 TeX 系统中的文件。
- updmap — 更新字体映射文件的工具。
- mktexlsr 或 texhash — 更新 TeX 目录索引数据库。
LaTeX 宏包和文档管理工具:
- tlmgr — TeX Live 管理器,用于安装和更新 TeX Live 宏包。
其他工具:
- texdoc — 查看 TeX 相关文档的工具。
- texconfig — TeX 配置工具。
- mpost — 图形编程语言,用来创建矢量图形。
- pdfcrop — PDF 处理工具,可以将 PDF 的白边裁剪掉只留下核心内容。
Troubleshooting
LaTeXiT
打开 LaTeXiT 时,可能遇到如下问题:
软件语言是法语
解决方法:打开系统设置(没错,是电脑的系统设置,不是软件自身的设置),打开
通用 > 语言与地区
,在首选语言
中添加English
作为备选语言:软件提示找不到
Ghostscript
和ps2pdf
解决方法:按下 ⌘ + , 进入设置,打开 Typesetting 标签页,然后填写 Ghostscript (gs) 以及 ps2pdf 的位置。
如果你不知道 gs 和 ps2pdf 的位置,可以打开终端,输入
which gs
和which ps2pdf
来查找。无法导出 SVG
如果你在导出 SVG 时看到提示:
Warning: pdf2svg or pdftocairo was not found
说明程序找不到 pdf2svg 或者 pdftocairo 的路径。打开
File > Export image...
(⌘
+E
),选择 Format 为 SVG vector format,然后看到右边有一个 “⌥s...” 按钮,点开它,就可以配置 pdf2svg 和 pdftocairo 的路径了。无法渲染中文
首先在设置中打开 Templates,新增一个 Preamble 模板,名称可以起为
ctex
:\documentclass[fontset=founder]{ctexart}
\usepackage{xcolor} % used for font color
\usepackage{amssymb} % maths
\usepackage{amsmath} % maths
然后打开 Typesetting,选用
xelatex
设置:接下来,可以试着渲染一段含有中文的 LaTeX 代码:
TeX Live Utility
使用 TeX Live Utility 时可能遇到的问题是,如果你挂着梯子使用 TeX Live Utility,那么有几率 TeX Live Utility 会卡死(实际上是在加载网络资源)。建议使用 TeX Live Utility 时不要挂梯子。
Pygments
编译使用了 pygments
包的文档时报错:
Package minted: Missing Pygments output; \inputminted was probably given a file that does not exist--otherwise, you may need the outputdir package option, or may be using an incompatible build tool, or may be using frozencache with a missing file.
如果你在使用 latexmk
编译 .tex
文件时添加了 -outdir
选项,那么你在引入 minted
包时要添加 outputdir=<outdit>
参数:
\usepackage[outputdir=.output]{minted}
MacTeX 使用的更多相关文章
- MacTex XeLaTex xdvipdfmx:fatal: pdf_ref_obj(): passed invalid object. 报错的解决方法
在使用MacTex配合TexStudio编译beamer的时候,爆出如下错误, xdvipdfmx:fatal: pdf_ref_obj(): passed invalid object. 结果尝试其 ...
- MacTex TexStudio Configuration 配置
在Mac上使用Latex的话主流是安装MacTex,对于IDE的选择有很多,像什么自带的TexShop,或者是TexStudio,Latexian,Texpad,Texmaker等,甚至可以直接使用一 ...
- 科学计算软件——Octave安装
Octave是一个旨在提供与Matlab语法兼容的开放源代码科学计算及数值分析的工具,是Matlab商业软件的一个强有力的竞争产品. 参考:[ML:Octave Installation] Gener ...
- 最近在 OS-10.9下配置opencv, cgal, latex, qt, pillow
其实我之前使用的Mac os的版本是10.8的雪豹,可是最近想体验一下Mac os10.9新版本,于是就开始更新Mac os,经过10多个小时的下载和成功安装后,发现之前的配置全乱了,首先是发现lat ...
- LaTeX 有哪些「新手须知」的内容?
孟晨 ,在 LaTeX 话题下写错 LaTeX 名字的,一律… 陈硕等 137 人赞同 这是个好问题,虽然提问提得很大.不是很好答,权当抛砖引玉了. 天字第一号原则:不要到网上抄代码,尤其是似懂非懂的 ...
- 在Mac上通过Sublime、Skim编辑LaTeX
转自:http://painterlin.com/2014/08/10/Using-LaTeX-with-Sublime-and-Skim-for-Mac.html Sublime Text是一款非常 ...
- Linux 系统下原版 texlive 2016 的安装与配置
尽管大部分常见的linux系统的包管理器内都会包含texlive,然而最好还是安装TUG发布的原版texlive.这是由于:1,软件仓库内的texlive通常版本较陈旧:2,由于版权因素一些tex宏包 ...
- 学渣上手 LaTeX 完成毕业论文
学渣上手 LaTeX 完成毕业论文 作为一个标准的学渣,虽然经历了一系列变故但最终还是使用 LaTeX 完成了我的毕业论文.要问我感想的话,就是——如果没有做好迎接比较陡峭的学习曲线以及各种打击人的小 ...
- LaTeX排版工具使用
专业的论文,都是用Latex.CTex等相关的工具.那么,用word写论文,缺点在哪? latex 写的东西,最终要编译成pdf格式的.里面的格式,尤其是数学类符号等,比较漂亮.这是word不能比的. ...
- Mac实用技巧
1. 程序员Mac新装机必备 Mac很玄这个大家都承认,但是鄙人觉得程序员用Mac才能真正发挥它的功效.下面就说说我的Mac使用: 基本编程软件:xcode,这个东西不仅仅是对mac的界面程序开发有用 ...
随机推荐
- 嵌入式ARM端测试手册——全志T3+Logos FPGA评估板(下)
前 言 本指导文档适用开发环境: Windows开发环境:Windows 7 64bit.Windows 10 64bit Linux开发环境:Ubuntu18.04.4 64bit 虚拟机:VMwa ...
- P9576 题解
赛时没仔细想,赛后才发现并不难. 将 \(l,r\) 与 \(l',r'\) 是否相交分开讨论. 假若不相交,那么 \(l',r' < l\) 或者 \(l',r' > r\) 并且 \( ...
- 张高兴的 MicroPython 入门指南:(二)GPIO 的使用
目录 什么是 GPIO 使用方法 使用微动开关点亮板载 LED 硬件需求 电路 代码 参考 什么是 GPIO GPIO 是 General Purpose Input Output 的缩写,即&quo ...
- 开发一个微信小程序流程及需要多少费用?
流程如下: 小程序是一种新的开放能力,开发者可以快速地开发一个小程序.小程序可以在微信内被便捷地获取和传播,同时具有出色的使用体验. 开放注册范围:个人 企业 政府 媒体 其他组织 1.注册 在微信公 ...
- 使用gitea搭建源码管理【0到1架构系列】
使用开源搭建Git源码方案,gitlab和gitea是两个不错的方案,gitlab以前简单易用,现在功能复杂且对开源并不友好,gitea一直保持功能单一易用且完全开源,个人推荐gitea. 通过容器安 ...
- docker-compose创建haproxy教程
本文主要讲解通过docker-compose创建haproxy并进行代理 一.haproxy简介 HAProxy是一款基于事件驱动.单进程模型设计的四层与七层负载均衡器,它能够在TCP/UDP层面以及 ...
- 日常工作中需要避免的9个React坏习惯
前言 React是前端开发领域中最受欢迎的JavaScript库之一,但有时候在编写React应用程序时,可能陷入一些不佳的习惯和错误做法.这些不佳的习惯可能导致性能下降.代码难以维护,以及其他问题. ...
- 操作系统|C语言模拟实现首次适应和最佳适应两种内存分配算法以及内存回收
两种算法 首次适应 首次适应算法从空闲分区表的第一个表目起查找该表,把最先能够满足要求的空闲区分配给作业,这种方法目的在于减少查找时间.为适应这种算法,空闲分区表(空闲区链)中的空闲分区要按地址由低到 ...
- 【译】宣布三项新的高级 Visual Studio 订阅者福利
Visual Studio 订阅(无论是专业版还是企业版)提供的不仅仅是软件使用权:这是一个全面的工具包,旨在显著提高您的开发能力和职业发展.这些订阅每年可以为您节省数千美元,提供各种服务,从每月用于 ...
- 【SpringCloud】Nacos集群部署(Centos平台)
一.前提环境准备 Nacos 下载 https://github.com/alibaba/nacos/releases 或者使用其它博主备份的 https://blog.csdn.net/weixin ...