다양한 언어로 코드의 구문 강조를 수행하는 LaTeX 패키지
코드에서 구문 강조를 수행하는 LaTeX 패키지를 찾고 있습니다. 예를 들어, 지금은 그대로 블록을 사용하여 코드를 작성합니다.
\begin{verbatim}
<html>
<head>
<title>Hello</title>
</head>
<body>Hello</body>
</html>
\end{verbatim}
그리고 이것은 내 문서에 코드를 표시하는 데 효과적입니다. 그러나 출력 문서에서 IDE가하는 방식으로 HTML 마크 업을 강조하고 싶습니까? 도움이 될만한 패키지가 있습니까?
Java, C #, HTML, CSS 등과 같은 다양한 언어에 대해서도 동일하게 수행하고 싶습니다.
리스팅 패키지를 사용할 수 있습니다 . 다양한 언어를 지원하며 출력을 사용자 정의하기위한 많은 옵션이 있습니다.
\documentclass{article}
\usepackage{listings}
\begin{document}
\begin{lstlisting}[language=html]
<html>
<head>
<title>Hello</title>
</head>
<body>Hello</body>
</html>
\end{lstlisting}
\end{document}
비슷한 질문을 한 후에 Pygments를 사용하는 다른 패키지를 만들었으며보다 많은 옵션을 제공합니다 texments
. 호출 minted
되고 상당히 안정적이며 사용 가능합니다.
이를 보여주기 위해 다음은 강조 표시된 코드입니다.
나는 피그먼트를 추천 한다 . 모든 언어로 된 코드를 받아들이고 LaTeX 코드로 강조 표시된 구문을 출력합니다. 그것은 사용 fancyvrb 및 컬러 출력을 생산하기 위해 패키지를. 나는 개인적으로 목록 패키지보다 선호합니다. fancyvrb 가 훨씬 더 예쁘게 보인다고 생각 합니다.
LGrind 는 이것을합니다. 아담이 카우보이 였고 많은 프로그래밍 언어를 지원 한 이후로 사용되어 온 성숙한 LaTeX 패키지입니다.
리스팅 패키지 대신 개발자 Konrad Rudolph가 언급 한대로 민트 패키지 를 사용합니다 . 이유는 다음과 같습니다.
리스팅 패키지
리스팅 패키지는 기본적으로 색상을 지원하지 않습니다. 색상을 사용하려면 여기 에서 matlab 코드에 대해 설명 된대로 \ lstset 명령 을 사용하여 색상 패키지를 포함하고 색상 규칙을 직접 정의해야합니다 .
또한 목록 패키지는 유니 코드에서 제대로 작동하지 않지만 여기 및 여기에 설명 된대로 이러한 문제를 해결할 수 있습니다 .
다음 코드
\documentclass{article}
\usepackage{listings}
\begin{document}
\begin{lstlisting}[language=html]
<html>
<head>
<title>Hello</title>
</head>
<body>Hello</body>
</html>
\end{lstlisting}
\end{document}
다음 이미지를 생성합니다.
민트 패키지
The minted package supports colors, unicode and looks awesome. However, in order to use it, you need to have python 2.6 and pygments. In Ubuntu, you can check your python version in the terminal with
python --version
and you can install pygments with
sudo apt-get install python-pygments
Then, since minted makes calls to pygments, you need to compile it with -shell-escape like this
pdflatex -shell-escape yourfile.tex
If you use a latex editor like TexMaker or something, I would recommend to add a user-command, so that you can still compile it in the editor.
The following code
\documentclass{article}
\usepackage{minted}
\begin{document}
\begin{minted}{html}
<!DOCTYPE html>
<html>
<head>
<title>Hello</title>
</head>
<body>Hello</body>
</html>
\end{minted}
\end{document}
produces the following image:
I mostly use lstlistings in papers, but for coloured output (for slides) I use pygments instead.
다음 tex 코드를 기반으로 자신의 패키지를 정의하는 것이 좋습니다. 이것은 당신에게 완전한 자유를줍니다. http://ubuntuforums.org/archive/index.php/t-331602.html
'programing tip' 카테고리의 다른 글
"foo"를 포함하는 속성을 선택하기위한 올바른 XPath는 무엇입니까? (0) | 2020.06.03 |
---|---|
Jinja2에서 변수가 정의되어 있지 않은지 어떻게 테스트합니까? (0) | 2020.06.03 |
장고 휴식 프레임 워크, 동일한 ModelViewSet에서 다른 직렬 변환기 사용 (0) | 2020.06.03 |
출력에서 개행을 수행하는 방법 (0) | 2020.06.03 |
Node.js UnhandledPromiseRejectionWarning에서 처리되지 않은 약속을 찾는 방법은 무엇입니까? (0) | 2020.06.03 |