【VSCode+LaTeX】科研写作环境搭建

文章目录

    • 0 引言
      • 为什么选择LaTeX+VSCode?
      • 为什么不选择Overleaf?
    • 1 TeXLive安装
      • 1.1 下载安装包
      • 1.2 运行安装程序
      • 1.3 通过镜像安装
    • 2 VSCode安装与配置
      • 2.1 下载VSCode安装包
      • 2.2 安装VSCode
      • 2.3 安装中文语言包
      • 2.4 配置LaTeX核心扩展
      • 2.5 加载TeX模版文件
      • 2.6 编译配置优化
      • 2.7 环境验证
    • 3 VSCode其他配置(可选)
      • 3.1 SumatraPDF
      • 3.2 Git
      • 3.3 Zotero插件
    • 参考

0 引言

为什么选择LaTeX+VSCode?

LaTeX 并非普通的文字处理工具,而是一个面向科研、出版和高质量印刷的排版系统。它的核心价值在于用“代码”代替“手工排版”,彻底解决学术场景中的复杂格式需求:

  • 数学公式的终极解决方案
  • 图表与参考文献的自动化管理
  • 跨平台文档一致性

VSCode作为微软推出的轻量级代码编辑器,在科研场景中远比传统编辑器(如Texmaker、WinEdt)更灵活:

  • 插件生态的革命性提升
  • 智能化的代码编辑体验
  • 针对学术场景的深度优化

为什么不选择Overleaf?

Overleaf必须联网,编译速度较慢报错信息不够清晰项目较大需付费,并且存在数据泄露风险。

优势:

  • 🚩 编译加速:本地多核CPU并行编译
  • 🛠️ 深度定制:支持LaTeX Workshop等20+插件
  • 🔐 版本控制:可用Git全流程追踪 + 差异对比
  • 📈 离线可用:无需依赖网络环境

对于需要长期进行学术写作的用户,本地LaTeX环境具有显著优势。

1 TeXLive安装

这里说明一下,TeX是一种基础的排版语言,由著名计算机科学家Donald E. Knuth发明。LaTeX是基于TeX的扩展版本,由美国计算机科学家Leslie Lamport在20世纪80年代初期开发。TeXLive是一个包含TeX和LaTeX的发行版,提供了一个完整的工作环境,类似于C语言的编译器。这一步,可以理解为LaTex编译器的安装。

1.1 下载安装包

进入TeXLive官网,找到下载链接

image-20250703201212406

选择Easy install,点击 install-tl-windows.exe下载安装程序

image-20250703201928080

1.2 运行安装程序

双击下载到本地的安装程序,弹出的第一个窗口一路默认,等安装程序提取完成后,进入安装GUI,修改安装根目录,取消安装TeXworks前端,并在高级中自定义语言包(去除其他用不到的语言包,只保留中文和英文)

image-20250703203501822

image-20250703203303973

配置完成后,点击安装,会弹出安装进程窗口。

1.3 通过镜像安装

安装进程报错,程序终止,部分报错信息如下:

TLPDB::_install_data: downloading did not succeed (check_file_and_remove failed) for https://mirror.ctan.org/systems/texlive/tlnet/archive/texlive-scripts.doc.tar.xz
Installation failed.

初步判断为网络下载的问题,采用Plan B,直接去国内镜像源下载镜像文件,这里推荐清华源texlive镜像下载,下载texlive.iso

image-20250703204906277

下载到本地后双击打开iso文件,以管理员身份运行install-tl-windows.bat进入和上面一样的安装界面,流程一样,配置完成后点击安装。安装时间较长,我安装的是2025版本的,安装完成GUI界面如下图所示,并没有提示“欢迎进入Tex live的世界!”

image-20250703215455692

经搜索得知这可能是新版本安装程序的BUG,打开安装路径下的日志文件install-tl.log,拉到最底部,可以看见提示,安装完毕!

image-20250703215904212

2 VSCode安装与配置

2.1 下载VSCode安装包

进入VSCode官网,点击Download for Windows,直接下载安装包到本地

image-20250703205743055

2.2 安装VSCode

双击运行安装包

image-20250703211338649

更改安装路径

image-20250703211628865

image-20250703211832376

点击安装即可。

2.3 安装中文语言包

修改插件默认安装位置

因为中文语言包其实是VSCode的一个扩展插件,而VSCode插件默认安装在C盘用户目录下,随着安装的插件数量增加,占用C盘内存较大,建议先修改默认安装位置。

参考方法:修改vscode插件安装路径

修改完成后,打开VSCode,点击左侧边栏Extensions,搜索Chinese (Simplified) Language Pack,点击install安装

image-20250703214201709

安装完成后,根据使用方法指示,完成语言切换。

image-20250703214538400

image-20250703214626936

2.4 配置LaTeX核心扩展

扩展商店搜索LaTeX Workshop,该插件支持核心编译和预览功能,点击安装。

image-20250703220146943

2.5 加载TeX模版文件

菜单栏点击文件-打开文件夹,选择TeX模板目录,这里使用springer提供的模版为例,下载链接

image-20250703221710267

双击sn-article.tex ,点击左侧边栏出现TEX工具,进入如下界面,这便是LaTeX的编写界面。

image-20250703222309833

2.6 编译配置优化

快捷键Ctrl+Shift+P 进入命令面板,输入Preferences: Open User Settings (JSON),添加如下代码

{// 设置是否自动编译"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": "XeLaTeX*2","tools": ["xelatex","xelatex"]},{"name": "PDFLaTeX","tools": ["pdflatex"]},{"name": "PDFLaTeX*2","tools": ["pdflatex","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","*.bbl","*.blg","*.idx","*.ind","*.lof","*.lot",//"*.out","*.toc","*.acn","*.acr","*.alg","*.glg","*.glo","*.gls","*.ist","*.fls","*.log","*.fdb_latexmk"],// 设置为onFaild 在构建失败后清除辅助文件"latex-workshop.latex.autoClean.run": "onFailed",// 使用上次的recipe编译组合"latex-workshop.latex.recipe.default": "lastUsed",// 用于反向同步的内部查看器的键绑定。ctrl/cmd +点击(默认)或双击"latex-workshop.view.pdf.internal.synctex.keybinding": "double-click","latex-workshop.view.pdf.viewer": "tab",
}

上述配置详细解释参见:https://zhuanlan.zhihu.com/p/166523064

2.7 环境验证

新建demo.tex,内容如下

\documentclass{article}
\title{Environment Validation}
\author{Test User}
\date{\today}\begin{document}
\maketitle\section{Basic Features}
Basic math: $a^2 + b^2 = c^2$\section{Math Environment}\label{sec:math}
\begin{equation}\sum_{n=1}^{\infty} \frac{1}{n^2} = \frac{\pi^2}{6}
\end{equation}\section{Advanced Features}
Cross-reference test: See section \ref{sec:math}\end{document}

选择XeLaTeX构建项目,生成的PDF可在VSCode中预览,点击查看日志可分析报错。

image-20250703231816532

至此,科研写作环境搭建基本完成。

3 VSCode其他配置(可选)

3.1 SumatraPDF

有的时候,由于想要看到 pdf 文件的完整展现效果,使用内置查看器已无法满足需求,这时可以使用外部查看器进行查看。 SumatraPDF作为外部查看器,该软件的优点在于在具有 pdf 阅读功能的同时很轻量,安装包不到 10MB 大小,且支持双向同步功能。通过调整其与 vscode 的窗口位置,能够在拥有这些优势的同时,达到与内置 pdf 查看具有相同的效果。

安装配置教程:https://zhuanlan.zhihu.com/p/166523064

配置完成后,PDF无法反向搜索的问题参见链接:https://blog.csdn.net/a1010026261/article/details/131446557

3.2 Git

使用Git进行版本控制:https://blog.csdn.net/wq3095435422/article/details/125010399

3.3 Zotero插件

实现点击插入参考文献:https://zhuanlan.zhihu.com/p/515335936

参考

[1] https://shutiaoz.top/写作工具/LaTeX/Latex_VSCode

[2] https://blog.csdn.net/LiLiu_YiYu/article/details/146066653

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/90914.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/90914.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Surfer软件入门与等值线绘制实操教程

本文还有配套的精品资源,点击获取 简介:本教程将指导初学者如何使用Surfer软件进行地质绘图,重点在于等值线的绘制技巧和提升图形质量。内容涵盖Surfer界面介绍、数据导入、等值线绘制方法、样式设置、地图增强技术以及输出保存方法&#…

攻防世界——Web题 very_easy_sql

目录 payload1 payload2 payload3 看到了题目是sql就猜测是sql注入和万能密码了,但怎么试貌似都没有反应,看源代码发现了use.php 访问use.php页面 可以猜测这里是SSRF,可以访问到我们本不能访问的界面,比如:服务器…

基于 SpringBoot 的 REST API 与 RPC 调用的统一封装

一、为何需要统一封装? 在讨论统一封装之前,我们先看看 REST 和 RPC 各自的适用场景。 REST API 基于 HTTP 协议,采用 JSON 作为数据交换格式,可读性好且跨语言,非常适合对外提供服务。 RPC(如 Dubbo、gRPC…

【SpringBoot】 整合MyBatis+Postgresql

MyBatis 是一个轻量级的持久化框架,用于简化数据库访问和操作。它通过将 SQL 语句与 Java 代码分离,允许开发者使用 XML 或注解来配置 SQL 语句,并将结果映射为 Java 对象。MyBatis 提供了灵活的 SQL 控制,适合需要精细控制 SQL 的…

无缝衔接直播流体验

文章目录前言🧠 1. 为什么能“无缝衔接”?🧰 2. Flutter 实现方案✅ 总体策略🎯 核心技术点✅ a. 使用全局播放器管理器(单例模式)✅ b. 广场页中的直播卡片使用播放器✅ c. 详情页复用控制器✅ d. 页面切换…

[论文阅读] 软件工程 | 首个德语软件工程情感分析黄金标准数据集:构建与价值解析

首个德语软件工程情感分析黄金标准数据集:构建与价值解析 论文标题:A German Gold-Standard Dataset for Sentiment Analysis in Software EngineeringarXiv:2507.07325 A German Gold-Standard Dataset for Sentiment Analysis in Software Engineering…

PyTorch编程实践:一文就入门的上手开发!

引言 PyTorch作为当今深度学习领域最流行的框架之一,以其动态计算图、直观的Python接口和强大的GPU加速能力,赢得了众多研究人员和工程师的青睐。本文将深入探讨PyTorch的编程实践,从基础概念到高级应用,帮助读者全面掌握这一强大…

关于学习docker中遇到的问题

Cannot connect to the Docker daemon at unix:///home/pc/.docker/desktop/docker.sock. Is the docker daemon running?如何配置新的路径 #运行这条命令,查看docker状态 sudo systemctl status docker如图所示表示监听路径不对,因此修改路径即可&…

无法打开windows安全中心解决方案

系统还原或重置:如果以上方法均无效,可尝试系统还原,使用之前创建的还原点恢复系统。或在设置中选择 “系统> 恢复 > 重置此电脑”,选择 “保留我的文件” 以避免数据丢失。创建新用户账户:按下 Win I 打开设置…

复习笔记 33

绪论 《幻术》 张叶蕾 我该怎么承认, 一切都是幻境。 函数的基本性质和无穷小量及其阶的比较 我感觉强化课我要跟上的话,我需要把基础,强化的讲义,还有练习册上面的所有题都刷烂。不然我感觉自己考 140 完全就是痴人说梦。搞笑呢。…

算法学习笔记:12.快速排序 ——从原理到实战,涵盖 LeetCode 与考研 408 例题

快速排序是计算机科学中最经典的排序算法之一,由 Tony Hoare 在 1960 年提出。它凭借平均时间复杂度 O (nlogn)、原地排序(空间复杂度 O (logn),主要来自递归栈)以及良好的实际性能,成为工业界处理大规模数据排序的首选…

unity 有打击感的图片,怎么做动画,可以表现出良好的打击效果

完整实现脚本:using UnityEngine; using UnityEngine.UI; using System.Collections;[RequireComponent(typeof(Image))] public class HitEffectController : MonoBehaviour {[Header("基础设置")]public float hitDuration 0.5f; // 打击效果总时长[Header("…

cuda编程笔记(7)--多GPU上的CUDA

零拷贝内存 在流中,我们介绍了cudaHostAlloc这个函数,它有一些标志,其中cudaHostAllocMapped允许内存映射到设备,也即GPU可以直接访问主机上的内存,不用额外再给设备指针分配内存 通过下面的操作,即可让设…

IP地址混乱?监控易IPAM实现全网地址自动化管理与非法接入告警

IP地址出现混乱状况?监控易IPAM能够达成对全网地址予以自动化管理的目标,同时还可针对非法接入的情况发出告警信息。办公室毫无预兆地突然断网了,经过一番仔细排查之后,发现原来是IP地址出现了冲突的情况。有人私自接了路由器&…

安全监测预警平台的应用场景

随着城市化进程加快和基础设施规模扩大,各类安全风险日益突出。安全监测预警平台作为现代安全管理的重要工具,通过整合物联网、大数据、人工智能等先进技术,实现对各类安全隐患的实时监测、智能分析和精准预警。本文将详细探讨安全监测预警平…

007_用例与应用场景

用例与应用场景 目录 内容创作编程开发数据分析客户服务教育培训商业智能研究辅助 内容创作 文案撰写 应用场景: 营销文案和广告语产品描述和说明书社交媒体内容邮件营销内容 实际案例: 任务:为新款智能手表撰写产品描述 输入&#x…

Unity物理系统由浅入深第一节:Unity 物理系统基础与应用

Unity物理系统由浅入深第一节:Unity 物理系统基础与应用 Unity物理系统由浅入深第二节:物理系统高级特性与优化 Unity物理系统由浅入深第三节:物理引擎底层原理剖析 Unity物理系统由浅入深第四节:物理约束求解与稳定性 Unity 引擎…

《[系统底层攻坚] 张冬〈大话存储终极版〉精读计划启动——存储架构原理深度拆解之旅》-系统性学习笔记(适合小白与IT工作人员)

🔥 致所有存储技术探索者笔者近期将系统攻克存储领域经典巨作——张冬老师编著的《大话存储终极版》。这部近千页的存储系统圣经,以庖丁解牛的方式剖析了:存储硬件底层架构、分布式存储核心算法、超融合系统设计哲学等等。喜欢研究数据存储或…

flutter鸿蒙版 环境配置

flutter支持开发鸿蒙,但是需要专门的flutter鸿蒙项目, Flutter鸿蒙化环境配置(windows)_flutter config --ohos-sdk-CSDN博客

Java 高级特性实战:反射与动态代理在 spring 中的核心应用

在 Java 开发中,反射和动态代理常被视为 “高级特性”,它们看似抽象,却支撑着 Spring、MyBatis 等主流框架的核心功能。本文结合手写 spring 框架的实践,从 “原理” 到 “落地”,详解这两个特性如何解决实际问题&…