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

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