미리 정의된 장소에 브레이크라인을 나열합니다.

미리 정의된 장소에 브레이크라인을 나열합니다.

목록 목록에 작성한 코드 줄이 너무 길 때가 있습니다. 그래서 결국 줄 바꿈이 발생합니다. 그러나 때로는 이러한 구분선을 제대로 선택하지 않아 코드를 훨씬 더 읽기 어렵게 만들 수 있습니다.

방법이 있나요?미리 정의장소휴식나타나야 한다필요한 경우?

내 문서:

\documentclass{book}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}

\usepackage{listings}

\lstdefinestyle{General} {
    basicstyle=\small\ttfamily,
    breaklines=true
}

\lstset{style=General}

\begin{document}

\begin{lstlisting}
This is a very long listing which eventually needs a break at the end of this beautiful line.
\end{lstlisting}

\end{document}

이 경우 "break" 다음에 줄 바꿈이 발생합니다. 예를 들어 "목록" 뒤에 구분 기호를 정의하는 것이 좋을 것입니다. 또는 충분한 공간이 있는 경우 "beautiful" 다음에 두 번째 항목을 추가할 수도 있습니다(아마도 일부 문서 설정을 테두리나 형식으로 변경한 후일 수도 있습니다). 이 경우 첫 번째 항목은 무시되어야 합니다.

답변1

  • 아마도 귀하의 질문을 오해했을 수도 있습니다. "때때로 이러한 휴식 시간이 잘 선택되지 않았습니다"는 일반적인 목록 자료에는 적합하지 않습니다.
  • 목록의 콘텐츠는 a verbatim(문자 그대로, 있는 그대로)로 처리됩니다.
  • 따라서 원하는 곳에 수동으로 줄 바꿈을 추가할 수 있습니다.
  • 또한 listings패키지는 자동 줄바꿈 기능을 제공합니다(활성화한 경우). $\hookrightarrow$기본 들여쓰기를 추가하여 자동 줄 바꿈을 표시했습니다 .
  • 또한 linewidth옵션으로 변경할 수 있습니다(표시되지 않음).

참고: \mbox\mbox{{$\hookrightarrow$}\space}. 또한 ~대신 \space오류가 발생했습니다.


\documentclass{book}
\usepackage{listings}

\lstdefinestyle{myListingStyle} 
    {
        basicstyle = \small\ttfamily,
        breaklines = true,
        postbreak = \mbox{{$\hookrightarrow$}\space} % See https://tex.stackexchange.com/questions/116534 for example
    }

\begin{document}

\begin{lstlisting}[
    style = myListingStyle,
    caption = {Natural/Automatic line break.}
    ]
This is a very long listing which eventually needs a break at the end of this beautiful line.
\end{lstlisting}

\begin{lstlisting}[
    style = myListingStyle,
    caption = {Manual line break.}
    ]
This is a very long listing which eventually
needs a break at the end of this beautiful line.
\end{lstlisting}

\end{document}

여기에 이미지 설명을 입력하세요

관련 정보