【LaTeX】环境配置以及中文支持
网页环境
Overleaf
Overleaf 是一个在线的 LaTeX 编辑环境,可以避免在本地安装和配置的过程,同时还能和他人共享编辑
本地环境
TeX Live
TeX Live 可以利用镜像安装节省下载时间
可以在安装 TeX Live 时同时勾选上安装 TeXworks 前端,然后就可以使用 TeXworks 作为 IDE 来使用了
TeXstudio
TeXstudio 也是一个很好的 LaTeX 编辑软件,可以直接去官网下载安装,并且有中文界面
VSCode
个人更喜欢 VSCode,通过安装扩展并进行相应的配置即可较好的支持 LaTeX,同时还有格式化和自动补全等功能,非常方便
安装 LaTeX Workshop 扩展
直接在 VSCode 的扩展商店中搜索 LaTeX Workshop 安装即可
编译链配置
默认配置
TeX Live 安装时会同时安装
latexmk, LaTeX Workshop 会默认使用latexmk来编译.tex,无需手动再配置手动配置(可选)
手动配置 LaTeX Workshop,在 VSCode 的配置文件
settings.json中直接手动添加如下代码:主要参考插件的官方 recipes 配置修改
// 配置编译链,可以根据需要做修改
"latex-workshop.latex.recipes": [
{
"name": "xelatex ",
"tools": [
"xelatex"
]
},
{
"name": "pdflatex ",
"tools": [
"pdflatex"
]
},
{
"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.tools": [
{
"name": "latexmk",
"command": "latexmk",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"-pdf",
"-outdir=%OUTDIR%",
"%DOC%"
]
},
{
"name": "xelatex",
"command": "xelatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"%DOC%"
]
},
{
"name": "pdflatex",
"command": "pdflatex",
"args": [
"-synctex=1",
"-interaction=nonstopmode",
"-file-line-error",
"%DOC%"
]
},
{
"name": "bibtex",
"command": "bibtex",
"args": [
"%DOCFILE%"
]
}
],
正向同步
正向同步指的是编译完成后,在 .tex 文件内通过快捷键,快速定位到光标位置在 .tex 的对应位置,方便查看 PDF 文件
推荐打开文件修改后,编译完成后自动正向同步。该功能通过 latex-workshop.synctex.afterBuild.enabled 来控制
"latex-workshop.synctex.afterBuild.enabled": true,
反向同步
反向同步指的是编译完成后,在 PDF 文件内通过快捷键,快速定位点击部分在 .tex 的位置,方便修改 .tex 源码
主要参考插件的官方 synctex 配置修改
VSCode 内部 PDF 浏览器
如果直接使用 VSCode 来浏览 PDF,不需要额外设置,可以根据需要修改
latex-workshop.view.pdf.internal.synctex.keybinding来修改反向同步的快捷键即可,默认 Ctrl 加鼠标左键// 默认 Ctrl 加鼠标左键
"latex-workshop.view.pdf.internal.synctex.keybinding": "ctrl-click",
外部 PDF 浏览器
SumatraPDF 是一款流行的小巧方便的免费 PDF 浏览软件。VSCode 支持使用外部的 PDF 浏览器来查看编译后的 PDF 文件,以及反向搜索功能。主要需要如下配置:
// 配置为使用外部 PDF 浏览软件来浏览 PDF
"latex-workshop.view.pdf.viewer": "external",
// 配置外部 PDF 浏览软件的命令行以及参数
"latex-workshop.view.pdf.external.viewer.command": "D:/Program/SumatraPDF/SumatraPDF-3.2-64.exe", // 自行修改路径
"latex-workshop.view.pdf.external.viewer.args": [
"%PDF%"
],
在 SumatraPDF 的设置-选项中设置反向搜索命令行
C:\Users\<user>\AppData\Local\Programs\Microsoft VS Code\Code.exe -g "%f:%l",Code 的路径应该为完整的绝对路径
其他可选配置
// 关闭自动编译
"latex-workshop.latex.autoBuild.run": "never",
// 默认选择上次编译链
"latex-workshop.latex.recipe.default": "lastUsed"
// 右键菜单
"latex-workshop.showContextMenu": true,
// 关闭编译出错的弹窗
"latex-workshop.message.error.show": false,
"latex-workshop.message.warning.show": false,
中文支持
该节主要参考 Overleaf Chinese 文档
推荐使用 XeLaTeX 和 LuaLaTeX 来编译含有中文字符的 .tex 文件
XeLaTeX 和 LuaLaTeX
- 直接使用
ctexart文档类即可支持中文 - 或者使用
ctex包来支持中文
参考代码如下:
\documentclass{ctexart}
\begin{document}
\tableofcontents
\begin{abstract}
这是简介及摘要。
\end{abstract}
\section{前言}
\section{关于数学部分}
数学、中英文皆可以混排。You can intersperse math, Chinese and English (Latin script) without adding extra environments.
這是繁體中文。
\end{document}
或者
\documentclass{xxx}
\usepackage{ctex}
XeLaTeX
XeLaTeX 还可以使用 xeCJK 包来支持中文
参考代码如下:
\documentclass{article}
\usepackage{xeCJK}
\begin{document}
\section{前言}
\section{关于数学部分}
数学、中英文皆可以混排。You can intersperse math, Chinese and English (Latin script) without adding extra environments.
這是繁體中文。
\end{document}
pdfLaTeX
pdfLaTeX 对中文支持不是很好,只用 pdaLaTeX 的话需要引入 CJKutf8 包,并且用 \begin{CJK*}{UTF8}{gbsn} 和 \end{CJK*} 包住所有的中文。
gbsn和gkai是简体的字体bsmi和bkai是繁体的字体
参考代码如下:
\documentclass{article}
\usepackage{CJKutf8}
\begin{document}
\begin{CJK*}{UTF8}{gbsn}
\section{前言}
\section{关于数学部分}
数学、中英文皆可以混排。You can intersperse math, Chinese and English (Latin script) without adding extra environments.
\end{CJK*}
\bigskip %% Just some white space
You can also insert Latin text in your document
\bigskip %% Just some white space
\begin{CJK*}{UTF8}{bsmi}
這是繁體中文。
\end{CJK*}
\end{document}
编译
首先
.tex文件名以及路径尽量不要含有空格以及中文字符在使用
latexmk和 VSCode 的 LaTeX Workshop 时,推荐使用第三个编译链Recipe: latexmk (lualatex)
参考资料
- 【LaTeX Workshop】依赖
- 【LaTeX Workshop】recipes 配置
- 【LaTeX Workshop】synctex 配置
- 【知乎】使用 VSCode 编写 LaTeX
- 【知乎】Visual Studio Code 配置 LaTeX
- 【Overleaf】Chinese
本文作者: ywang_wnlo
本文链接: https://ywang-wnlo.github.io/posts/4f94956.html
版权声明: 本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
【LaTeX】环境配置以及中文支持的更多相关文章
- Git环境配置+VSCode中文乱码问题
异常处理汇总-开发工具 http://www.cnblogs.com/dunitian/p/4522988.html 1.VSCode中文乱码问题 (files.autoguessEncoding= ...
- python 之路初(一):pycharm 安装 和 环境配置 和 中文乱码问题
从健身和学习中我一体会到坚持的力量.想写写东西的想法已经好久了,就是不知道怎么开始.最近生活开始给我各种攻击和磨练,我从声嘶力竭到沉默到默默坚持自己,改变自己并总结告诉自己:少说多看,看破不说破,宁愿 ...
- 配置Texmaker中文支持
在Ubuntu 12.04 LTS下安装Texmaker后,如需要支持中文环境,需要安装CJK包. 终端(Ctrl+Alt+T(Terminal))下输入命令切换到超级管理员: sudo -i 安装包 ...
- ppt/word公式LaTeX环境配置
PPT使用Latex说明 一.下载IguanaTex_v1_57 http://www.jonathanleroux.org/software/iguanatex/download.html Inst ...
- jupyter notebook 目录配置、导出 tex 和 pdf 及中文支持
环境:macbook pro, mactex, jupyter notebook, brew 安装pandoc从而支持格式转换为tex: brew install pandoc 修改tex artic ...
- LaTeX 环境安装&编译器配置
推荐网站:https://www.latexstudio.net/articles/ (基本所有的latex疑惑都可以在这里得到解决) 入门视频:两小时短小精悍,让你轻松入门,https://www. ...
- linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg)
linux环境下安装sphinx中文支持分词搜索(coreseek+mmseg) 2013-11-10 16:51:14 分类: 系统运维 为什么要写这篇文章? 答:通过常规的三大步(./confi ...
- Latex 环境下“中文字体”的使用
Latex 环境下“中文字体”的使用 使用CTex自带编辑器WinEdt,在该环境下如何使用中文字体呢?作为一个菜鸟,折腾了好几天,最终基本解决了这个问题.现在整理下,分享给后来者. 对于使用中文字体 ...
- Solr7.2.1环境搭建和配置ik中文分词器
solr7.2.1环境搭建和配置ik中文分词器 安装环境:Jdk 1.8. windows 10 安装包准备: solr 各种版本集合下载:http://archive.apache.org/dist ...
- CentOS7配置中文支持与部署GitLab服务器
给你的 CentOS 7 安装中文支持 1.首先需要中文字体以便支持命令行终端的中文显示需求: yum groupinstall "fonts" 碰到提示输入 y 回车继续安装,大 ...
随机推荐
- docker安装es和kibana,单机模式
操作系统:mac系统 1.安装es docker pull elasticsearch:7.14.0 docker run --name es -p 9200:9200 -p 9300:9300 -e ...
- vue全家桶进阶之路25:Vue2的停维通知
Vue 2 的技术支持会持续多久?从官方发文来看,Vue 2.7 是当前.同时也是最后一个 Vue 2.x 的次级版本更新.Vue 2.7 会以其发布日期,即 2022 年 7 月 1 日开始计算,提 ...
- python 之路,致那些年,我们依然没搞明白的编码
摘自:金角大王https://www.cnblogs.com/alex3714/articles/7550940.html 本节内容 编码回顾 编码转换 Python的bytes类型 编码回顾 在备编 ...
- Springboot 开启异步任务Async,邮件发送任务,定时任务
异步任务 1.主启动类开启异步注解 2.service目录下开启异步任务注解 @Service public class AsyncService { @Async//异步任务注解的标志 public ...
- Redis系列13:分布式锁实现
Redis系列1:深刻理解高性能Redis的本质 Redis系列2:数据持久化提高可用性 Redis系列3:高可用之主从架构 Redis系列4:高可用之Sentinel(哨兵模式) Redis系列5: ...
- 从 Blast2GO 本地化聊一聊 Linux 下 MySQL 的源码安装
Blast2GO 是一个基于序列相似性搜索的 GO 注释和功能分析工具,它可以直接统计分析基因功能信息,并可视化 GO 有向非循环图(DAG)上的相关功能特征,分析 BLAST.GO-mapping. ...
- 使用yaml进行数据驱动
一.需求描述 1.请求登陆接口,从登陆接口的响应头数据中获取token值,并写入yml文件: 2.读取写入yml文件中的token值作为下个接口的传参,请求查询物料列表接口,查看查询结果. yaml_ ...
- 常用的Java Enum JdbcType
常用的Java Enum JdbcType ARRAY BIGINT BINARY BIT BLOB BOOLEAN CHAR CLOB CURSOR DATE DECIMAL DOUBLE FLOA ...
- 洛谷 P5065 不归之人与望眼欲穿的人们
题意 一个长 \(n\) 的正整数序列 \(a\),支持单点修改数值,询问所有按位或值大于等于 \(k\) 的区间长度最短为多少. 数据范围:\(1\le n\le 50000, 0\le a_i, ...
- 看懂java序列化,这篇就够了
前言 相信大家日常开发中,经常看到 Java 对象 "implements Serializable".那么,它到底有什么用呢?本文带你全方位的解读序列化与反序列化这一块知识点. ...