You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用LISTINGS包为YAML语言编写\lstdefinestyle样式?

使用LaTeX listings宏包定义YAML样式

1. 导入必要宏包

先在导言区导入listings宏包,若需要彩色高亮效果,还需搭配xcolor包:

\usepackage{xcolor}
\usepackage{listings}

2. 定义YAML专属样式

通过\lstdefinestyle命令定制适配YAML的样式,可根据需求调整语法高亮、排版细节等参数:

\lstdefinestyle{yamlstyle}{
    language=YAML,
    basicstyle=\ttfamily\small,  % 基础字体:等宽+小号
    keywordstyle=\color{blue},   % YAML键(如server、host)设为蓝色
    stringstyle=\color{red},     % 字符串值(如localhost、/api)设为红色
    commentstyle=\color{gray}\itshape,  % 注释(#开头)设为灰色斜体
    numbers=left,                % 行号显示在左侧
    numberstyle=\tiny\color{gray},  % 行号用小号灰色字体
    stepnumber=1,                % 每行都显示行号
    numbersep=5pt,               % 行号与代码间距5pt
    backgroundcolor=\color{black!5},  % 浅灰背景
    frame=single,                % 代码块加单边框
    framesep=3pt,                % 边框与代码间距3pt
    rulecolor=\color{black!30},  % 边框线条为浅灰
    tabsize=2,                   % 制表符宽度设为2个字符
    showspaces=false,            % 不显示空格标记
    showstringspaces=false,      % 不显示字符串内的空格标记
    breaklines=true,             % 代码过长时自动换行
    breakatwhitespace=true       % 仅在空格处换行,避免拆分单词
}

3. 调用样式插入YAML代码

在文档正文里,用lstlisting环境并指定自定义样式即可插入YAML代码:

\begin{lstlisting}[style=yamlstyle]
# YAML示例配置
server:
  host: localhost
  port: 8080
  debug: true
  routes:
    - path: /api
      method: GET
      handler: api_handler
    - path: /admin
      method: POST
      handler: admin_handler
\end{lstlisting}

核心参数说明

  • language=YAML:指定代码语言为YAML,listings会自动识别YAML的语法元素(键、值、注释等)
  • 各类*style参数:分别控制不同语法元素的显示样式,可根据喜好调整颜色、字体格式
  • 排版类参数:如tabsize、breaklines等,用于优化代码块的可读性和排版效果

内容的提问来源于stack exchange,提问作者andreYLLI

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 06:00:17