다음과 같은 환경이 설정되어 있습니다.
\lstdefinelanguage{prompt}{}
\lstnewenvironment{prompt}{%
\lstset{language=prompt,
frame=none,
aboveskip=1.5mm,
belowskip=1.5mm,
showstringspaces=false,
columns=fullflexible,
basicstyle={\scriptsize\ttfamily},
numbers=none,
%numbers=left,
%firstnumber=0,
numberstyle=\scriptsize\color{gray},
keywordstyle=\color{black},
commentstyle=\color{black},
stringstyle=\color{black},
breaklines=true,
breakatwhitespace=true,
postbreak={\mbox{$\hookrightarrow\space$}},
tabsize=2,
xleftmargin=1em,
xrightmargin=0pt,
breakindent=0pt,
resetmargins=true,
breakautoindent=false
}
\mdframed[%
innertopmargin=5pt,
middlelinewidth=1pt,
outerlinewidth=9pt,outerlinecolor=white,
innerleftmargin=3pt,
innerrightmargin=3pt,
leftmargin=-9pt,rightmargin=-10pt,
skipabove=\topskip,
skipbelow=\topskip,
roundcorner=3pt,
singleextra={\node[draw, fill=white,anchor=west, xshift=10pt+1pt,font=\bfseries] at (O|-P) {Prompt};},
firstextra={\node[draw, fill=white,anchor=west, xshift=10pt+1pt,font=\bfseries] at (O|-P) {Prompt};}
]%
}{\endmdframed}
인스턴스 내부의 텍스트 블록이 페이지에 들어갈 만큼 작은 경우 이 방법이 작동하고 잘 인쇄됩니다.
그러나 2개로 분할해야 하는 경우 헤더는 어색해 보이는 방식으로 뒤에 남겨지며, 3개로 분할되면 마지막 행까지 페이지당 한 줄만 인쇄됩니다.
2페이지:
3페이지 이상:
환경 설정을 만지작거렸지만 페이지 사이에 적절한 간격을 두는 방법을 찾지 못했습니다. 이 문제를 해결하는 방법이 궁금합니다.