LaTeX语法、工具及模板大全(持续更新ing...)
我之前把Markdown和LaTeX的语法写在一个博文里了,但是现在感觉还是应该拆开来比较合适,因为LaTeX太复杂了……
LaTex核心其实是套模板,但是为了套好模版,也需要学习一些具体的语法。
文章目录
1. LaTeX编辑器的选择、安装与使用
我一般用的编辑器是在线的Overleaf, Online LaTeX Editor或者离线的TeXLive原生编辑器、或者VSCode。overleaf其实用的也是TeXLive,但是用法跟TeXLive不一样。编辑器指的是这个,compiler/编译器指的是pdfLaTeX etc. 见后文。
TeXLive和结合VSCode的安装教程:使用TeXLive+VSCode实现Windows系统本地读写、编译LaTeX文件
1. overleaf
overleaf中可以从零开始新建LaTeX项目,也可以上传zip压缩包上传LaTeX项目。
在项目中,menu:
点击这里编译,或者Ctrl + S自动编译:
2. TeXLive原生编辑器
安装好TeXLive后会默认用TeXWorks打开.tex
文件,点击这个位置进行编译:
3. TeXLive + VSCode
点击这个位置进行编译,或者默认设置保存时自动编译:
2. LaTeX项目整体布局
(具体的标题都是可以改的,文件名后缀不能改)
main.tex
:主LaTeX代码文件,在这个文件里面设置LaTeX排版布局、写内容等。也可以放在其他文件里面,然后在main.tex
里面引用
overleaf中在Menu中的这个位置改主文档:
reference.bib
:如果用的是BibTeX,会引用BibTeX格式的参考文献,放到reference.bib
里,然后在main.tex
中引用。
也可以放到多个文件中,分别引用。
3. LaTeX文件格式
LaTeX文件的整体格式:
- 导言区:从
\documentclass{...}
到\begin{document}
之间的部分称为导言区,此部分通常用于全文样式设定
4. LaTeX基础语法
- 字体
加粗:\textbf{文字}
斜体:\emph{文字}
或\textit{文字}
下划线:underline{文字}
或者uline{文字}
(可以换行)1 - 插入超链接:
\href{链接}
\url{链接}
或\href{链接}{显示文字}
2 - 插入脚注:
\footnote{脚注文字}
- 在特殊符号前加
\
就能使其不产生渲染效果
5. compiler/编译器的选择
我一般用的是pdfLaTeX或者XeLaTeX。不过一般来说其实是看原模版用的是什么格式,就用什么格式。
6. 参考文献
在想要被注明的文字后加\cite{id}
,在文末添加\bibitem{id}: 参考文献
或使用bib文件。
还有2种做法是\citep{}
和\citet{}
,但是我至今还不知道区别是啥……
使用bib的操作:以Re5:读论文 TWAG: A Topic-guided Wikipedia Abstract Generator_诸神缄默不语的博客-CSDN博客这篇论文为例,在其论文ACL官网TWAG: A Topic-Guided Wikipedia Abstract Generator - ACL Anthology上可以下载到bib格式的引用文献:
@inproceedings{zhu-etal-2021-twag,
title = "{TWAG}: A Topic-Guided {W}ikipedia Abstract Generator",
author = "Zhu, Fangwei and
Tu, Shangqing and
Shi, Jiaxin and
Li, Juanzi and
Hou, Lei and
Cui, Tong",
booktitle = "Proceedings of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing (Volume 1: Long Papers)",
month = aug,
year = "2021",
address = "Online",
publisher = "Association for Computational Linguistics",
url = "https://aclanthology.org/2021.acl-long.356",
doi = "10.18653/v1/2021.acl-long.356",
pages = "4623--4635",
abstract = "Wikipedia abstract generation aims to distill a Wikipedia abstract from web sources and has met significant success by adopting multi-document summarization techniques. However, previous works generally view the abstract as plain text, ignoring the fact that it is a description of a certain entity and can be decomposed into different topics. In this paper, we propose a two-stage model TWAG that guides the abstract generation with topical information. First, we detect the topic of each input paragraph with a classifier trained on existing Wikipedia articles to divide input documents into different topics. Then, we predict the topic distribution of each abstract sentence, and decode the sentence from topic-aware representations with a Pointer-Generator network. We evaluate our model on the WikiCatSum dataset, and the results show that TWAG outperforms various existing baselines and is capable of generating comprehensive abstracts.",
}
将这个文本文件存储为bib文件,如bibexample.bib。以overleaf为例,上传该文件,在正文中引用时调用\cite{zhu-etal-2021-twag}
,在后文参考文献部分调用:
\bibliographystyle{IEEEtran}
\bibliography{IEEEabrv,bibexample}
\nocite{zhu-etal-2021-twag}
事实上相当于自动写了bibitem
后面的参考文献格式。
如果需要引用多条参考文献,就在bib文件后面继续叠bibtext格式文献条目就行。
如果只有ris格式的参考文献,将其转换为bibtex可以使用:Online RIS to BibTeX converter3
对于nbib格式的文件,可以在这个网站上搜索论文标题,下载对应的bib文件:TeXMed - Exporting PubMed to BibTeX4
7. 表格
- 给一个代码示例(可以用来测试LaTeX模板能不能打印表格):
\begin{table}[]
\begin{tabular}{lllll}
1 & 2 & 3 & 4 & 5 \\
1 & 2 & 3 & 4 & 5 \\
9 & 8 & 9 & 7 & 6 \\
1 & 2 & 3 & 4 & 5
\end{tabular}
\end{table}
- 加横线边框
\hline
- 部分水平边框
\cline{i-j}
- 三线表的第一条线是
\toprule
,第二条是\hline
,第三条是\bottomrule
- 如果需要加竖线就在
\begin{tabular}
后面加竖线,比如{ll}
就是两行无竖线,{|l|l|}
就是全加竖线。 - 如果需要改表格单元的宽度就把
l
改成p{10em}
(这个数字就是宽度,单位可以改成in之类的) \\
换行,&
跳到下一单元,这一点跟数学公式里画矩阵时的操作比较像- 在表格下方添加注释5:
\begin{table*}[!ht]
\centering
\caption{表格上方的标题}
\begin{tabular}{p{8em}p{7em}p{7em}p{8em}p{7em}}
\toprule
表头 & 表头 & 表头 & 表头 & 表头 \\ \hline
内容 & 内容 & 内容 & 内容 & 内容 \\ \bottomrule
\end{tabular}
\begin{tablenotes}
\footnotesize
脚注内容\\
会显示在表格下方
\end{tablenotes}
\label{这个是~\ref{这个花括号里面就写这个label花括号里面的内容}}
\end{table*}
8. LaTeX对中文的支持
官方介绍:Chinese - Overleaf, Online LaTeX Editor
总之很复杂,据我观察,这是需要根据每个模板不同的情况来进行具体调整的。以爱思唯尔的https://www.overleaf.com/latex/templates/elsevier-article-elsarticle-template/vdzfjgjbckgz为例,想要在LaTeX中渲染中文,需要在导言区加:\usepackage{CJKutf8}
然后在\begin{document}
后加:\begin{CJK*}{UTF8}{gbsn}
在\end{document}
前加:\end{CJK*}
然后就能渲染中文了
一般来说直接使用支持中文的模版就行
其他支持中文的包:
\usepackage{ctex}
9. LaTeX特殊字符
LaTex{}
- ①
\textcircled{1}
- 反斜杠:
\textbackslash
10. LaTeX其他辅助工具
- LaTeX自动转换模板工具(这个我也想写,这里是收集市面上的竞品)
11. LaTeX overleaf模板
overleaf官方模版集合:Templates - Journals, CVs, Presentations, Reports and More - Overleaf, Online LaTeX Editor)
- IEEE会议(双栏)IEEE Conference Template - Overleaf, Online LaTeX Editor
- CVPR2022会议(双栏)[CVPR2022] Official LaTeX Template - Overleaf, Online LaTeX Editor
- NeurIPS2021会议(单栏)NeurIPS 2021 - Overleaf, Online LaTeX Editor
- ICML2021会议(双栏)ICML2021 Template - Overleaf, Online LaTeX Editor
- ICLR2021会议(单栏)Template for ICLR 2021 Conference Submission - Overleaf, Online LaTeX Editor
- AAAI会议(双栏)AAAI Press LaTeX Template - Overleaf, Online LaTeX Editor
- ACL会议 https://www.overleaf.com/latex/templates/acl-2023-proceedings-template/qjdgcrdwcnwp
- 爱思唯尔期刊
可以参考这篇博客:Elsevier(爱思唯尔)LaTex 模板详细说明_爱思唯尔latex模板-CSDN博客- 简单(单栏)Elsevier Article (elsarticle) Template - Overleaf, Online LaTeX Editor
- (单栏)Elsevier’s CAS LaTeX Single-Column Template - Overleaf, Online LaTeX Editor
- (双栏)Elsevier’s CAS LaTeX Double-Column Template - Overleaf, Online LaTeX Editor
- Astronomy and Computing期刊(双栏)Elsevier Astronomy & Computing journal template - Overleaf, Online LaTeX Editor
- (中文)Elegant paper(单栏)ElegantPaper Template - Overleaf, Online LaTeX Editor(这个模板的官方项目:ElegantLaTeX/ElegantPaper: Elegant LaTeX Template for Working Papers,他们项目组还有中文LaTeX书籍和notes的模板)
- 一些使用这个模板时会遇到的问题:参考文献bib文件中月份如果不用整型数值的话会报error;参考文献排序可以在导言区添加
\ExecuteBibliographyOptions{sorting=none}
,sorting方式的选择参考:(图源6)
- 一些使用这个模板时会遇到的问题:参考文献bib文件中月份如果不用整型数值的话会报error;参考文献排序可以在导言区添加
- (中文)计算机学报(双栏)官方LaTeX模板直接转为overleaf可用的版本(是我调的,所以有bug请直接找我):计算机学报官方LaTeX模板-修改为overleaf可用版 - Overleaf, Online LaTeX Editor
- 简历(我现在用的是中文版):一个简洁优雅的 XeLaTeX 简历模板 - Tiankui Zhang
这个模版可以用fontAwesome5(在http://ctan.math.illinois.edu/fonts/fontawesome5/doc/fontawesome5.pdf中可以直接查到具体的图标对应的ID),修改方案是将resume.cls中第18行直接改成\RequirePackage{fontawesome5}
(参考标题前的小图标有哪些可选 · Issue #26 · billryan/resume)
13. 教程
我还没看过:
- 【永久更新地址】一份不太简短的Latex2e介绍:The Not So Short In-tro-duc-tion To LATEX (Chi-nese Edi-tion)_府学路18号车神的博客-CSDN博客
一份不太简短的 LATEX 2ε 介绍 - Documentation - Overleaf, Online LaTeX Editor
14. 文中没有引用的其他参考资料
- LaTex文本部分如何输入反斜杠:symbols - How does one insert a backslash or a tilde (~) into LaTeX? - TeX - LaTeX Stack Exchange
- Latex教程: [13]插入表格水平,竖直边框-百度经验
- 如何用LaTeX打出各种箭头? - 知乎
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!