linux安装texlive并使用vscode远程连接
本来一直都是在windows上写latex, 奈何实在感觉编译太慢了, 虽然也有一些优化方法(下面会讲), 但切换为linux才是更加geek的方式, 正巧我家里就有一台N100的零刻的小主机, 系统为Ubuntu, 硬盘为M.2 PCIe SSD, 内存是DDR5 4800. 秒杀我的R7 6800H的windows笔记本!
提高LaTeX的编译速度
取消压缩
1
| \special{dvipdfmx:config z 0}
|
确实提升很大, 但是让我原本15M的pdf变成了160+M, 打开查看都要转圈圈的那种
对比测试: 只使用xelatex命令(不用xelatex -> bibtex -> xelatex*2)
|
压缩 |
取消压缩 |
| windows |
36.57s |
9.53s |
| linux |
21.73s |
3.47s |
使用批处理模式,即编译时加上 -interaction=batchmode 参数
使用预编译技术,涉及到一个宏包(mylatexformat)和两条命令:
etex -initialize -jobname="hello" "&pdflatex" "mylatexformat.ltx" "hello.tex"
pdflatex -shell-escape "&hello" hello.tex
没有仔细研究, 可参考[tikz-intro/t001 speedup tex/speedup-tex.md at master · Hansimov/tikz-intro (github.com)](https://github.com/Hansimov/tikz-intro/blob/master/t001 speedup tex/speedup-tex.md)
linux安装texlive
首先奉劝想在实验室服务器上安装的研究生(比如我)考虑清楚, 致命的问题是没有root权限. texlive确实能安装成功, 但缺失的字体就很让人难受了. 虽然部分字体也能手动安装, 但latex编译好像还是失败, 比如Arial.

无root安装
依然是先下载.iso文件, 由于无root, 不可能直接挂载iso文件, 只能先解压出来再安装(服务器没有能解压iso的命令, 我是电脑解压再压缩成zip上传服务器的…)
进入到目录, 执行perl install-tl, 自己更改安装路径, 然后安装, 就是等, 实验室服务器安装了快半个小时, 我家的服务器安装10分钟? 可能服务器安装到机械盘了吧.
配置环境变量!!!
各种都试一遍, 什么.zshrc .bashrc .profile /etc/environment, 因为vscode的LaTeX Workshop插件好像识别不了新添加的PATH

还有终极大杀器, 直接把texlive的所有可执行文件都软链接到已有的PATH里!
虽然他还是这样提示, 但亲测完全可以编译, pdf也能出来(只是缺字体), LaTeX Workshop的作者还坚称这不是插件的问题.
手动安装字体
看编译log, 缺啥字体, 啥字体报错就去你C:\Windows\Fontscopy到服务器~/.local/share/fonts/上, 执行
1 2
| fc-cache -f -v fc-list | grep "Arial"
|
root安装
1 2 3
| mount -o loop texlive2023.iso /mnt/texlive cd /mnt/texlive ./install-tl
|
既然都root了, 别改安装目录了, 以免再有什么幺蛾子, 直接安装
环境变量参考上方, 经过我一番操作, 包括重启, LaTeX Workshop能识别到我的texlive路径了
字体安装
1 2 3 4 5
| apt install ttf-mscorefonts-installer apt-get install texlive-fonts-extra texlive-fonts-recommended texlive-math-extra apt-get install cm-super tlmgr install cm-super tlmgr install ec
|
都安装一下吧, 不知道有没有用, 然后再缺字体, 也要手动安装, 进入/usr/share/fonts/chinese, 字体上传到这
1 2 3 4
| mkfontscale mkfontdir fc-cache fc-list :lang=zh|grep 华文细黑
|
也可以尝试上面的字体安装方法, 不知道什么区别
成功!
正值考试周, 耽误两天复习时间, gan
LaTeX Workshop
只安装这一个插件就可以了, 别的看个人需要
贴一个配置, 广为流传
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
| "latex-workshop.latex.autoBuild.run": "never", "latex-workshop.showContextMenu": true, "latex-workshop.intellisense.package.enabled": true, "latex-workshop.message.error.show": false, "latex-workshop.message.warning.show": false, "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": "latexmk", "command": "latexmk", "args": [ "-synctex=1", "-interaction=nonstopmode", "-file-line-error", "-pdf", "-outdir=%OUTDIR%", "%DOCFILE%" ] }, { "name": "bibtex", "command": "bibtex", "args": [ "%DOCFILE%" ] } ], "latex-workshop.latex.recipes": [ { "name": "XeLaTeX", "tools": [ "xelatex" ] }, { "name": "PDFLaTeX", "tools": [ "pdflatex" ] }, { "name": "BibTeX", "tools": [ "bibtex" ] }, { "name": "LaTeXmk", "tools": [ "latexmk" ] }, { "name": "xelatex -> bibtex -> xelatex*2", "tools": [ "xelatex", "bibtex", "xelatex", "xelatex" ] }, { "name": "pdflatex -> bibtex -> pdflatex*2", "tools": [ "pdflatex", "bibtex", "pdflatex", "pdflatex" ] }, ], "latex-workshop.latex.clean.fileTypes": [ "*.aux", "*.blg", "*.idx", "*.ind", "*.lof", "*.lot", "*.out", "*.toc", "*.acn", "*.acr", "*.alg", "*.glg", "*.glo", "*.gls", "*.ist", "*.fls", "*.log", "*.fdb_latexmk" ], "latex-workshop.latex.autoClean.run": "onFailed", "latex-workshop.latex.recipe.default": "lastUsed", "latex-workshop.view.pdf.internal.synctex.keybinding": "double-click",
|