LaTeX备忘——minted宏包的使用环境与配置

minted宏包的功能与listings宏包类似,用于更好的显示源代码。minted使用时略微比listings宏包麻烦一些,下面列出相关事宜。


操作系统:Ubuntu 18.04 LaTeX工具:TeXstudio 2.12.6 编译方式:LuaLaTeX python 2.7.17 pygments 2.5.2


1、安装pygments库

minted依托于pygments库,因此必须安装。

sudo -H pip install pygments

如果使用的操作系统是Ubuntu 20.04,会稍有不同。Ubuntu 20.04默认安装的是python3,可以使用以下命令来安装pygments库。

sudo apt install python3-pip
...
sudo -H pip3 install pygments

第一个命令是先安装python3的pip;第二个是使用pip3命令安装pygments库,安装时我这里经常会碰到安装不成功的问题,是网络造成的,多试几次总会成功的。

对于18.04与20.04的Ubuntu,下面的使用方法都一样。

2、修改编译参数

在TeXstudio内,点击Options->Configure TeXstudio->Commands,原来的LuaLaTeX编译命令为:

lualatex -synctex=1 -interaction=nonstopmode %.tex

添加参数-shell-escape,修改为:

lualatex -shell-escape -synctex=1 -interaction=nonstopmode %.tex
3、调用minted宏包

在minted宏包调用命令中加入cache=false参数:

\usepackage[cache=false]{minted}

下面是一个简单的示例:

% 开源中国,陆巍
\documentclass{article}%
%
\usepackage{ctex}% 中文支持
\usepackage{geometry}% 用于页面设置
\usepackage[english]{babel}% 载入美式英语断字模板
\usepackage[dvipsnames, svgnames, x11names]{xcolor}% 颜色支持
\usepackage[cache=false]{minted}


% ------------------ 开始 -------------------
%
\begin{document}

\section{minted宏包示例}

\begin{minted}[linenos=true, frame=single, breaklines=true]{cmake}
# Copyright (c) 2018, NVIDIA CORPORATION. All rights reserved.
# Full license terms provided in LICENSE.md file.

# Build with:
# Debug: cmake -DCMAKE_BUILD_TYPE=Debug ..

cmake_minimum_required(VERSION 3.5)

set(default_build_type "Release")

if (NOT CMAKE_BUILD_TYPE)
    set(CMAKE_BUILD_TYPE "Release")
endif()

if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
    set(TARGET_SUFFIX "_debug")
    message("Using ${TARGET_SUFFIX} suffix.")
endif()

set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/../bin")
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/../bin")

add_subdirectory(lib)
add_subdirectory(sample_app)
add_subdirectory(tests)
\end{minted}

\end{document}

效果如下:

minted宏包使用示例

说明:

1、在\begin{minted}[linenos=true, frame=single]{cmake}语句中,linenos用于设置行号,frame用于设置边框。

2、minted更多说明请查阅相关帮助文档。在我的另一篇日记LaTeX——部分宏包帮助文档百度网盘下载中有文档的下载地址。

3、minted目前支持三百多种语言(远超listings宏包),具体的语言名称可用命令查看:pygmentize -L lexers

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章