
次のようなテキストがあります
{attribute_1=1, ARRAY=[ { "x" : 180 , "y" : 175 , "z" : 176} , { "x" : 179 , "y" : 176 , "z" : 177} , { "x" : 178 , "y" : 177 , "z" : 178} , { "x" : 177 , "y" : 177 , "z" : 179} , { "x" : 176 , "y" : 176 , "z" : 180} , { "x" : 175 , "y" : 175 , "z" : 179} , { "x" : 174 , "y" : 174 , "z" : 180} , { "x" : 173 , "y" : 173 , "z" : 181} , { "x" : 174 , "y" : 172 , "z" : 182} , { "x" : 174 , "y" : 171 , "z" : 183} , { "x" : 173 , "y" : 170 , "z" : 183} , { "x" : 172 , "y" : 171 , "z" : 184} , { "x" : 171 , "y" : 171 , "z" : 183} , { "x" : 170 , "y" : 170 , "z" : 182} , { "x" : 169 , "y" : 169 , "z" : 181} , { "x" : 168 , "y" : 168 , "z" : 180} , { "x" : 167 , "y" : 167 , "z" : 179} , { "x" : 166 , "y" : 166 , "z" : 178} , { "x" : 165 , "y" : 165 , "z" : 177} , { "x" : 164 , "y" : 164 , "z" : 176} , { "x" : 163 , "y" : 163 , "z" : 175} , { "x" : 162 , "y" : 162 , "z" : 174} , { "x" : 161 , "y" : 161 , "z" : 173} , { "x" : 160 , "y" : 160 , "z" : 172} , { "x" : 159 , "y" : 159 , "z" : 171} , { "x" : 158 , "y" : 158 , "z" : 170} , { "x" : 157 , "y" : 157 , "z" : 169} , { "x" : 157 , "y" : 158 , "z" : 170}]}
\seqsplit
これは、Tex ドキュメントに挿入する必要がある、自動的に生成されたデータです。すでにマクロを試しました{verbatim}
が、コンパイルされたドキュメントではまだ単語の折り返しが行われません。長い文字列がページの境界を超えてしまい、データの一部が見えません。
{verbatim}
影響はありませんが、\seqsplit{line}
行に"{"
と が含まれているため、コンパイル エラーが発生します"}"
。
生成されたデータの形式を変更せずにこの問題を解決するにはどうすればよいですか?
答え1
トリックとしては、文字列に含まれていない文字で文字列を区切ることです。ここでは を選択しました|
。
\documentclass{article}
\usepackage{lipsum} % for context
\makeatletter
\newcommand{\galumov}[1]{%
\begin{quote}\raggedright\footnotesize
\catcode`#1=2
\catcode`\{=12
\catcode`\}=12
\catcode`\_=12
\ttfamily
\expandafter\@galumov\expandafter{\iffalse}\fi
}
\def\@galumov#1{\expandafter#1\end{quote}}
\makeatother
\begin{document}
\lipsum[3]
\galumov|{attribute_1=1, ARRAY=[
{ "x" : 180 , "y" : 175 , "z" : 176} ,
{ "x" : 179 , "y" : 176 , "z" : 177} ,
{ "x" : 178 , "y" : 177 , "z" : 178} ,
{ "x" : 177 , "y" : 177 , "z" : 179} ,
{ "x" : 176 , "y" : 176 , "z" : 180} ,
{ "x" : 175 , "y" : 175 , "z" : 179} ,
{ "x" : 174 , "y" : 174 , "z" : 180} ,
{ "x" : 173 , "y" : 173 , "z" : 181} ,
{ "x" : 174 , "y" : 172 , "z" : 182} ,
{ "x" : 174 , "y" : 171 , "z" : 183} ,
{ "x" : 173 , "y" : 170 , "z" : 183} ,
{ "x" : 172 , "y" : 171 , "z" : 184} ,
{ "x" : 171 , "y" : 171 , "z" : 183} ,
{ "x" : 170 , "y" : 170 , "z" : 182} ,
{ "x" : 169 , "y" : 169 , "z" : 181} ,
{ "x" : 168 , "y" : 168 , "z" : 180} ,
{ "x" : 167 , "y" : 167 , "z" : 179} ,
{ "x" : 166 , "y" : 166 , "z" : 178} ,
{ "x" : 165 , "y" : 165 , "z" : 177} ,
{ "x" : 164 , "y" : 164 , "z" : 176} ,
{ "x" : 163 , "y" : 163 , "z" : 175} ,
{ "x" : 162 , "y" : 162 , "z" : 174} ,
{ "x" : 161 , "y" : 161 , "z" : 173} ,
{ "x" : 160 , "y" : 160 , "z" : 172} ,
{ "x" : 159 , "y" : 159 , "z" : 171} ,
{ "x" : 158 , "y" : 158 , "z" : 170} ,
{ "x" : 157 , "y" : 157 , "z" : 169} ,
{ "x" : 157 , "y" : 158 , "z" : 170}]}|
\lipsum[3]
\end{document}
文字列は読みやすくするために再フォーマットされていますが、それ以外は変更されていません。より適切なフォーマットにするには、他のトリックが必要です。