我想将长字符串(在 json 文件中标记为 url)放入框内,而不会溢出。据我所知,breaklines
选项仅在字符串由分隔的单词组成时才有用。像 url 场景中那样的较长单词怎么办?在示例中,我如何将 url 拆分成更多行,以便将它们放入页面中或最好放入框内?
\documentclass{article}
\usepackage{floatrow}
\usepackage[newfloat]{minted}%
\newenvironment{code}{\captionsetup{type=listing}}{}
\SetupFloatingEnvironment{listing}{name=Data Format}
\begin{document}
\begin{listing}[H]
\inputminted[frame=lines,
framesep=2mm,
fontsize=\footnotesize,
linenos=true,
breaklines=true,
xleftmargin=21pt,
tabsize=1]{json}{code/test.json}
\label{list:bbbbbbbbbb}
\end{listing}
\end{document}
测试文件示例内容:( test.json
)
{
"cID" : 1,
"test" : "aaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbb ccccccccccccccccccccccccccc",
"url" : "http://www.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbcccccccccccccccccccccccccccccccccc.com"
}
答案1
您还可以添加选项breakanywhere=true
(默认值为false
,这就是它不会立即激活的原因)。请参阅fvextra
包文档中的第 15 页及后续内容(与 的作者相同minted
,并minted
在后台使用此包)。
此选项也可以全局设置。您可能还对命令和类似命令感兴趣\breakanywheresymbolpre
(请参阅文档)。
这是解决方案:
\documentclass{article}
\usepackage{floatrow}
\usepackage[newfloat]{minted}%
\newenvironment{code}{\captionsetup{type=listing}}{}
\SetupFloatingEnvironment{listing}{name=Data Format}
\begin{document}
\begin{listing}[H]
\inputminted[frame=lines,
framesep=2mm,
fontsize=\footnotesize,
linenos=true,
breaklines=true,
breakanywhere=true,
xleftmargin=21pt,
tabsize=1]{json}{code/test.json}
\label{list:bbbbbbbbbb}
\end{listing}
\end{document}