title: "Latex 文档格式化"

author: 李龙翔

date: "Nov 22, 2019"

subject: "Markdown"

keywords: [latex, format]

toc: false

CJKmainfont: 'SimSun'

Latex 文档格式化

一直以来从未注意过 latex 文档如何保持缩进的一致性,许多编辑器在提供自动补全时也无法提供正确的缩进,最终使得文档十分混乱。

在 TexLive 中包含有 tex 文档格式化工具 latexindent,但是这个脚本是使用 perl 缩写,运行时需要一些第三方模块,在 osx 系统中直接运行会出现错误。

$ latexindent
Can't locate Log/Dispatch/File.pm in @INC (you may need to install the Log::Dispatch::File module) (@INC contains: /usr/local/texlive/2019/texmf-dist/scripts/latexindent /usr/local/Cellar/perl/5.30.0/lib/perl5/site_perl/5.30.0/darwin-thread-multi-2level /usr/local/Cellar/perl/5.30.0/lib/perl5/site_perl/5.30.0 /usr/local/Cellar/perl/5.30.0/lib/perl5/5.30.0/darwin-thread-multi-2level /usr/local/Cellar/perl/5.30.0/lib/perl5/5.30.0 /usr/local/lib/perl5/site_perl/5.30.0/darwin-thread-multi-2level /usr/local/lib/perl5/site_perl/5.30.0) at /usr/local/texlive/2019/texmf-dist/scripts/latexindent/LatexIndent/LogFile.pm line 24.
BEGIN failed--compilation aborted at /usr/local/texlive/2019/texmf-dist/scripts/latexindent/LatexIndent/LogFile.pm line 24.
Compilation failed in require at /usr/local/texlive/2019/texmf-dist/scripts/latexindent/LatexIndent/Document.pm line 25.
BEGIN failed--compilation aborted at /usr/local/texlive/2019/texmf-dist/scripts/latexindent/LatexIndent/Document.pm line 25.
Compilation failed in require at /Library/TeX/texbin/latexindent line 27.
BEGIN failed--compilation aborted at /Library/TeX/texbin/latexindent line 27.

安装这些第三方模块可以使用 cpan 工具,但是 osx 自带的 perl 运行cpan 会出现一些安装错误。需要首先用 Homebrew 安装新版本的 perl

$ brew install perl

随后使用 cpan 安装缺少的第三方库

$ cpan Log::Dispatch::File

在第一次运行时 cpan 会有询问,直接回车默认即可。

安装好后在vscode中打开tex文件,单击右键弹出菜单后点击Format Document即可自动将 latex 文档格式化。

Latex 文档格式化的更多相关文章

  1. 在LaTeX文档中插入图片的几种常用的方法

    LaTeX中一般只直接支持插入eps(Encapsulated PostScript)格式的图形文件, 因此在图片插入latex文档之前应先设法得到图片的eps格式的文件. 在LaTeX文档中插入图片 ...

  2. 从Word到Latex文档

    有时,从Word文档复制到Latex文档时会编译报错,这时要检查某些特殊字符.中文输入法下的字符有时无法正确编译,要用相应的英文输入法下的字符替代.拉丁字母.希腊字母应该用转义字符实现.

  3. 用atom写LaTeX文档

    下载并安装Tex Live: 下载页面 下载并安装atom:下载页面 打开atom File -> Settings -> Install 搜索并安装: language-latex la ...

  4. Vb.Net Xml文档格式化

    最近在处理Webservice文档的时候,因为是未格式化的,需要处理,所以有了以下代码. #Region "Xml字符串转换成格式化的XML文件" 'txt_Result.Text ...

  5. LaTeX技巧22:LaTeX文档中的参考文献初级

    用 LaTeX 处理文档, 经常就要书写参考文献, 本篇就是介绍如何在 LaTeX 中使用参考文献, 注意这里讲的是LaTeX默认的 thebibliography 环境, 如果要了解 LaTeX 中 ...

  6. LaTeX文档的基本结构

    正文提纲的构建代码及注释: 显示效果: 目录结构与换行的代码及注释: 显示效果: 具体的有关的信息可以具体查看ctex文档,可以在导言区进行全局的设置,比如标题居中设置等.

  7. 调整LaTeX文档页面的大小

    看下面这张图片便一目了然!!!       借助 geometry 包,可以很方便地调整页面大小,常用的参数如图所示,这些参数都可以通过LateX支持的单位(mm, cm, pt, in)去重新设置. ...

  8. Win10使用Tex Live和VS Code和Latex Workshop插件编写Latex文档(未完成版本)

    首先取Tex Live官网下载安装包:https://www.tug.org/texlive/acquire-netinstall.html 我下载的是 http://mirror.ctan.org/ ...

  9. 五、latex文档的篇章结构

随机推荐

  1. Beta阶段第一次会议

    Beta阶段第一次例会 时间:2020.5.16 完成工作 姓名 完成任务 难度 完成度 lm 1.修订网页端信息编辑bug2.修订网页端登录bug(提前完成,相关issue已关闭) 中 100% x ...

  2. 零基础小白要如何跟好的学习嵌入式Linux

    作为一个新人,怎样学习嵌入式Linux?被问过太多次,特写这篇文章来回答一下. 在学习嵌入式Linux之前,肯定要有C语言基础.汇编基础有没有无所谓(就那么几条汇编指令,用到了一看就会). C语言要学 ...

  3. Netty:Netty的介绍以及它的核心组件(二)—— ChannelFuture与回调

    Callback 回调 一个 Callback(回调)就是一个方法,一个提供给另一个的方法的引用. 这让另一个方法可以在适当的时候回过头来调用这个 callback 方法.Callback 在很多编程 ...

  4. Python import cStringIO ImportError: No module named 'cStringIO'

    From Python 3.0 changelog; The StringIO and cStringIO modules are gone. Instead, import the io modul ...

  5. C++类的静态成员变量与静态成员函数

    1.类的静态成员变量 C++类的静态成员变量主要有以下特性: 1.静态成员变量需要类内定义,类外初始化 2.静态成员变量不依赖于类,静态成员变量属于全局区,不属于类的空间. 3.静态成员变量通过类名访 ...

  6. windows server 2012 开机运行一段时间死机的故障

    环境: 物理机:华为2288 V5 虚拟化:esxi 6.5.2 虚拟操作系统 windwos server 2012 标准版 内安装sql server 和其他应用软件 故障描述:window se ...

  7. 【Azure 存储服务】代码版 Azure Storage Blob 生成 SAS (Shared Access Signature: 共享访问签名)

    问题描述 在使用Azure存储服务,为了有效的保护Storage的Access Keys.可以使用另一种授权方式访问资源(Shared Access Signature: 共享访问签名), 它的好处可 ...

  8. centos如何上网

    问题 centos如何上网 解决方法 第一步: 打开VMware,选择菜单栏的Edit->Virtual Network Editor(虚拟网络编辑器).点击Restore Defaults(即 ...

  9. vs Code配置C++运行和调试环境以及相关问题

    vs Code配置C++运行和调试环境以及相关问题 第一步:下载c++插件 第二步:安装编译.调试环境 如果没有Dev-C++下载MinGW 下载地址:https://sourceforge.net/ ...

  10. 一个校验接口引发的思考--我真的了解Response吗

    一个校验接口 最近,我需要对接一个外部接口,基本功能是:校验指定的门店是否完善了货运信息.接口大致是这样的: POST https://******/Dealer/CheckCarrier Heads ...