转换为pdf时,pandoc不会对代码块进行文本换行

 勿忘 发布于 2023-02-08 08:16

我正在使用pandoc和xelatex引擎将markdown转换为pdf.我正在运行像这样的pandoc:

pandoc -s 'backbone-fundamentals'.md -o 'backbone-fundamentals'.pdf \
    --title-prefix 'Developing Backbone.js Applications' \
    --normalize \
    --smart \
    --toc \
    --latex-engine=`which xelatex`

如果代码行长于pdf文档宽度,它就会被截止.反正有没有pandoc文本换长代码行?

1 个回答
  • 如果您最近安装了包含fvextra软件包的LaTeX,那么jannick0最近提出了一个简单的解决方案.

    修改您的YAML标题选项以包含

    \usepackage{fvextra}
    \begin{Highlighting}[breaklines,numbers=left]
    

    并使用xelatex进行编译.

    例如,

    ---
    header-includes:
     - \usepackage{fvextra}
     - \DefineVerbatimEnvironment{Highlighting}{Verbatim}{breaklines,commandchars=\\\{\}}
    ---
    
    ~~~~~{.java}
    this is a very long long long long long long long long long long long long long line which is broken
    ~~~~~~
    

    编译时

    pandoc input.md --pdf-engine=xelatex -o output.pdf
    

    在此输入图像描述

    如果你有.numberLines选择权,即

    ---
    header-includes:
     - \usepackage{fvextra}
     - \DefineVerbatimEnvironment{Highlighting}{Verbatim}{breaklines,commandchars=\\\{\}}
    ---
    
    
    ~~~~~{.java .numberLines}
    this is a very long long long long long long long long long long long long long line which is broken
    ~~~~~~
    

    那么同样的命令就会产生

    在此输入图像描述

    2023-02-08 08:23 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有