ubuntu环境中安装latex并使用vscode
参考:https://blog.csdn.net/Hacker_MAI/article/details/130334821
https://zhuanlan.zhihu.com/p/136209984
论文最好的格式还是使用latex进行编写,尤其是公式那块,所以就需要在ubuntu开发环境中安装好latex进行学习。
1texlive安装
这是一个镜像文件,可以从清华源下载https://mirrors.tuna.tsinghua.edu.cn/CTAN/systems/texlive/Images/
为了显示图形化界面,先安装图形化界面(可选):
sudo apt-get install perl-tk
下载好texlive.ios后进行挂载:
sudo mount texlive2024.iso/mnt
启动图形界面安装(可选)
sudo ./install-tl -gui
或者
sudo perl ./install-tl --no-interaction
安装完成后卸载镜像文件
sudo umount /mnt
接下来添加texlive的环境变量,我们打开bashrc:
sudo gedit ~/.bashrc
添加内容为
export PATH=/usr/local/texlive/2024/bin/x86_64-linux:$PATH
export PATH=/usr/local/texlive/2024/texmf-dist/scripts/latexindent:$PATH
export MANPATH=/usr/local/texlive/2024/texmf-dist/doc/man:$MANPATH
export INFOPATH=/usr/local/texlive/2024/texmf-dist/doc/info:$INFOPATH
完成后重新加载配置:
source /etc/profile
然后就可以查看安装是否成功了:
tex --version
我们可以额外安装一下依赖支持
sudo apt-get install texlive-latex-extra
sudo apt-get install texlive-latex-recommended
sudo apt-get install texlive-science
sudo apt-get install texlive-xetex
sudo apt-get install chktex
vscode也需要安装一些插件
注意,由于ubuntu中的字体有限,所以latex容易编译失败,此时需要我们先去win获取一些字体!!!!!!!
在 windows 下进入 C 盘下的 C:/windows/Fonts 下将需要的字体拷贝出来,放到新建的文件夹中
下一步将拷贝出来的字体文件通过 U 盘拷贝至 Ubuntu 下
在vscode中新建一个tex文件,即可看到不错的效果:
%中文模板:版本 v2020.4.28 作者:Bang
%操作系统 Ubuntu(20.04 LTS) 编辑器 VS Code
%切换编译器为xelatex以输入中文
%! TEX program=xelatex
\documentclass[UTF8,11pt,a4paper]{ctexart}%UTF-8编码,文字大小11,纸张类型A4
\usepackage[T1]{fontenc}% 加载宏包 fontenc 防止某些符号显示不正常
\usepackage[textwidth=18cm]{geometry} % 设置页宽=18
%加载数学宏包
\usepackage{amsmath}
\usepackage{amssymb}
%加载插图宏包 graphicx 以在 pdf 中插入图片
\usepackage{graphicx}
\usepackage{blindtext}
\usepackage{bm}
\parindent=0pt
\begin{document}
\begin{sloppypar} % geometry 宏包命令
你好,世界!
\end{sloppypar} % geometry 宏包命令
\end{document}
当然我们也可以去配置一下对应的环境
配置1
setting.json:
{
"latex-workshop.view.pdf.viewer": "tab", //tab:使用VSCode自带的pdf阅读器
"latex-workshop.latex.autoClean.run": "onBuilt", //何时应删除LaTeX辅助文件,要清理的文件夹在latex-workshop.latex.outDir中定义,onFailed:在编译失败时清除项目,onBuild:不论编译成功与否都在编译终止时清除项目
"latex-workshop.latex.autoBuild.run": "never", //onFileChange:在检测到任何文件中的更改(甚至被其他应用程序修改)时编译(默认),never:当你命令编译时才编译
"[latex]": {
"editor.formatOnSave": false, //true:在保存时格式化文件。格式化程序必须可用,延迟后文件不能保存,并且编辑器不能关闭
},
"latex-workshop.latex.clean.fileTypes": [ //要清理的文件,此属性必须是字符串数组 例如 *.removemable
"*.aux",
"*.bbl",
"*.blg",
"*.idx",
"*.ind",
"*.lof",
"*.lot",
"*.out",
"*.toc",
"*.acn",
"*.acr",
"*.alg",
"*.glg",
"*.glo",
"*.gls",
"*.ist",
"*.fls",
"*.log",
"*.fdb_latexmk",
],
}
配置2
setting.json:
{
"latex-workshop.latex.autoBuild.run":"onSave",
"latex-workshop.latex.autoBuild.interval":10000,
"latex-workshop.latex.recipes":
[
{
"name": "xelatex",
"tools":
[
"xelatex"
]
},
{
"name": "pdflatex",
"tools":
[
"pdflatex"
]
},
{
"name": "xelatex(double)",
"tools":
[
"xelatex",
"xelatex"
]
},
{
"name": "xe->bib->xe(double)",
"tools":
[
"xelatex",
"bibtex",
"xelatex",
"xelatex"
]
}
],
"latex-workshop.latex.tools":
[
{
"name": "xelatex",
"command": "xelatex",
"args":
[
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"%DOCFILE%"
]
},
{
"name": "pdflatex",
"command": "pdflatex",
"args":
[
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"%DOCFILE%"
]
},
{
"name": "bibtex",
"command": "bibtex",
"args": [
"%DOCFILE%"
]
}
],
"latex-workshop.latex.autoClean.run": "onBuilt",//这个其实可要可不要.
"latex-workshop.latex.clean.fileTypes": [//事实上写个makefile直接make clean就好了
"*.aux", //而且万一编译错误的话这些文件都会被清除,log文件里面的报错信息也没了
"*.bbl",
"*.blg",
"*.idx",
"*.ind",
"*.lof",
"*.lot",
"*.out",
"*.toc",
"*.acn",
"*.acr",
"*.alg",
"*.glg",
"*.glo",
"*.gls",
"*.ist",
"*.fls",
"*.log",
"*.fdb_latexmk"
]
}