这几天稍微有点空,决定把 LaTex 学一下,顺便给过程做个记录,既鞭策自己,也希望为还没出现的比我还小的 xdx 提供一点帮助
TeXlive 的安装
TeX Live 软件发行版为 Unix, Macintosh, Windows 和其他多种平台提供了一套完整的 TeX 系统。它包含了编辑、排版、预览和打印各种语言下 TeX 文档的各类程序,以及 TeX 宏与字体库的庞大集合。
我们需要一个安装包,但官方提供的下载源个人感觉速度十分感人说不定什么时候还跳出个下载失败,因此推荐使用国内镜像。
清华大学:https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/Images/texlive.iso
上海交通大学:https://mirrors.sjtug.sjtu.edu.cn/ctan/systems/texlive/Images/texlive2023.iso
下载得到的 .iso 文件可以直接解压缩,管理员权限运行其中的 install-tl-windows.bat 开始安装,跳出一个简笔画小狗画窗口之后出现安装界面。
界面中 lnstallation root 为安装路径,TeXworks 前端是否安装可以看个人需求,我 因为人菜瘾大 选择不安装,之后配置 VScode,左下角 Advance 点开后可以在 Customize 里设置安装语言,假如存储空间吃紧可以考虑 Language 选项只勾选 Chinese 和 US/UK English,点击安装,等待一段足够让人想要把电脑用来打游戏消磨时间但又不至于等到离开的时间之后就完成 TeXLive 的安装了。
在 VScode 上使用
使用 VScode 进行编写并不是必须的,在配置方面遇到困难的话可以改为使用 TeXworks 前端。
下载并完成安装后,打开 VScode,点击左侧边栏中的 四个小方块 扩展图标,搜索并安装以下扩展:
- Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code
- LaTeX
- LaTeX workshop
重启 VScode 后,应当能看到界面中的语言变为了简体中文,并且在左侧边栏中出现一个 TeX 图标,点开后提供了查看编译后的 .pdf 文件与文章结构,输入各种希腊字母等功能,说明扩展已经安装成功。之后,还可以 Shift+Control+P 对 LaTeX workshop 进行进一步配置。
风林火山,HelloWorld,然后风林火山!
\documentclass{article}
\begin{document}
Hello World!
\end{document}
填充文章
命令
在如上的 LaTeX 代码中,能发现形如 \begin{document}
以 \
开头并以第一个非字母或空格结束的语句,这被称作 控制序列 或是 命令 。如你所见,它本身不被直接地输出,但以一定的形式影响输出文档的效果。被 {}
括起的是命令的必需参数,而部分命令还具有以 [ ]
括起的可选的参数。
环境
此外,还可以发现,代码中存在着 \begin
与 \end
组成的命令对,这个命令队及其之间的内容被称作 环境 ,document 则是这个环境的环境名。环境是 LaTeX“内容与样式分离”的重要部分,它影响了环境中内容的表现形式,作为例子,smallmatrix 环境将把环境中的内容表现为行内的小矩阵。
document 环境是特殊的,就像 C 中的 main 函数。
环境内的部分被称作 正文区,该区域中的内容将以一定形式输出到文章内,如同我们在 main 函数中为变量赋值或是打印一些内容到屏幕上。
而从 \documentclass{}
到 \begin{document}
之间的区域被称作 导言区 ,在这里我们可以导入宏包 \usepackage{package_name}
、对定理环境进行一些设计等等,如 C 中在 main 函数之前导入库文件或是进行宏定义一类的操作。
正文
在正文区直接输入的非命令内容大多在编译后的文章内原样呈现,除去以下几种情况:
- 任意个连续的空格都被表达为单个的空格。
- 单个的换行也被表达为单个空格,大于等于两个的换行(大于等于一个的空行)均被表达为另起一段(两个换行或一个空行)
- 每段的首行都被自动缩进,第一段除外。
- 行中的
%
及其后的内容都会被认为是注释的一部分而被忽视。 - 文中出现
%
,{
等特殊字符,需字符在前额外加\
转义。
组织文章
字体
有一些命令帮助用户更改正文中部分文字的字体、文字形态和粗细,以下这些是无需引入额外宏包即可使用、且不同种类间可以叠加的:
字体/形态 | 命令 |
---|---|
罗马 | 默认或\textrm{text} |
无衬线 | \textsf{text} |
打字机 | \texttt{text} |
直立 | \textup{text} |
意大利 | \textit{text} |
倾斜* | \textsl{text} |
中等粗细 | 默认或\textmd{text} |
加粗 | \textbf{text} |
*倾斜与意大利体间的区别在于倾斜并不更改字体为类似手写体的风格,仅将文本向右倾斜。 |
还有一些主要用于数学领域的字体被包括在 amssymb
和 mathrsfs
宏包中,例如黑板粗体被用作表示线性空间等。
分节与页
换行与换页的工作大多直接交由 LaTeX 完成,若需要,也可在文中使用 \newpage
手动新起一页,需要新起一行但不起新段时,使用双反斜杆 \\
或命令\newline
、\par
。
LaTeX 提供了多种的文章结构可选,并为这些结构提供了自动的编号与(如果有的话)目录编辑。
不需要某一部分被编号时,可在命令后加上 *
,如 \section*{}
等。
名称 | 命令 | 最高级 |
---|---|---|
部 | \part{name} | 可选的最高级 |
章 | \chapter{name} | report/book |
节 | \section{name} | article |
小节 | \subsection{name} | | |
段 | \paragraph{name} | | |
小段 | \subparagraph{name} | | |
对段落进行修改
缩进 | 命令 |
---|---|
固定缩进 | \parindent |
禁止某段缩进 | \noindent |
声明某段缩进 | \indent |
需要修改缩进的程度时,可使用 \setlength{}
修改缩进的量,pt
、‘mm’ 等均是合法的长度单位。例如 \setlength{\parindent}{20pt}
,无需缩进时,也可将缩进长度设为 0pt 或 0mm。特别强调的是:首段的首行通常是不进行缩进的。
对齐方式 | 命令 | 环境名 |
---|---|---|
居中 | \centering | center |
左对齐 | \raggedleft | flushleft |
右对齐 | \raggedright | flushright |
施工
哦哦,LaTeX 实际玄奥?
否!否!否!只要大约 3 小时,Alexios=san 便可以体会到 LaTeX 实际容易。因为我就是在东大·超级偏僻·village 的宿舍里,仅仅花三小时内从 newbie 进化为 LaTeX 达人。
如果尚未安装好环境,可以前往 b=clan,寻求安装教程。但是这里没有视频链接,因为我嫌麻烦!
安装好环境后,就是安装 IDE!但是巨硬=clan 的 VS-code 编译实际非常麻烦重点!只能当文本编辑器重点!但是 Alexios=san 竟然成功地配置好了 VS-code,好本领!
我一般使用的是 tex studio 进行日常操作。此软件可以方便地在蒲公英=clan 找到下载。日常使用傻瓜式操作重点!aieeeee! 蒲公英=clan 早在两年前就已经被殴打至爆发四散了,何等的末法之世!但是在北邮=clan 和北洋·园依旧可以找到下载。
no project, no coding。贾瓦=clan 的开山鼻祖,同时也是编程大师,高·斯林=san 的这句格言相比大家都想起来了吧。要想学会一门语言,最好的办法就是做项目。可以尝试把一篇 word 文章手动转为 LaTeX 格式,自己排除 bug。至于数学公式的运用,那只能依靠长期的键盘·空手道练习,别无他法!
LaTeX 最为人诟病的就是经常编译报错,而 IDE 提供的报错位置很可能前言不搭后语,此时进行 debug 非常麻烦。最好的办法是每次写完一小节就要编译。“编译很多次,实际不容易报错!”
总而言之,请保重身体!
=san =clan 是什么术语吗,读了一遍没读懂