
나는 일부 자바스크립트 코드를 강조하기 위해 minted를 사용합니다.
나는 사용한다
\documentclass{article}
\usepackage{minted}
\begin{document}
\begin{minted}{js}
const mySchema = new Schema({
name: String,
is_true: Boolean,
age: Number,
object_ids: [ObjectId],
});
\end{minted}
\end{document}
생산하는
문제는 String, Boolean 및 Number는 강조 표시되지만 ObjectId는 강조 표시되지 않는다는 것입니다.
Minted에서 javascript에 ObjectId를 키워드로 추가하려면 어떻게 해야 합니까?
답변1
에 관한 minted
대답은 다음과 같습니다. pygmentize의 JavaScript 어휘 분석기에 확장을 작성하거나 어휘 분석기의 복사본을 수정해야 합니다. 질문에 대한 답변 보기Minted에서 인식할 사용자 정의 C++ 키워드를 추가하는 방법은 무엇입니까?자세한 내용은.
꼭 사용해야 하는 것이 아니라면 minted
패키지를 이용하세요 listings
. 다음은 JavaScript 강조 표시를 정의하는 예입니다(이 답변질문에목록에서 지원되는 언어 옵션. 자신만의 키워드 클래스와 형식을 쉽게 정의할 수 있습니다.
\documentclass{article}
\usepackage{listings}
\usepackage{color}
\definecolor{lightgray}{rgb}{.9,.9,.9}
\definecolor{darkgray}{rgb}{.4,.4,.4}
\definecolor{purple}{rgb}{0.65, 0.12, 0.82}
\lstdefinelanguage{js}{
keywords={const, typeof, new, true, false, catch, function, return, null, catch, switch, var, if, in, while, do, else, case, break},
keywordstyle=\color{blue}\bfseries,
keywords=[2]{boolean, string, number, objectid},
keywordstyle=[2]\color{green}\bfseries,
identifierstyle=\color{black},
sensitive=false,
comment=[l]{//},
morecomment=[s]{/*}{*/},
commentstyle=\color{purple}\ttfamily,
stringstyle=\color{red}\ttfamily,
morestring=[b]',
morestring=[b]"
}
\lstset{
language=js,
extendedchars=true,
basicstyle=\footnotesize\ttfamily,
showstringspaces=false,
showspaces=false,
tabsize=2,
breaklines=true,
showtabs=false
}
\begin{document}
\begin{lstlisting}
const mySchema = new Schema({
name: String,
is_true: Boolean,
age: Number,
object_ids: [ObjectId],
});
\end{lstlisting}
\end{document}
답변2
한 단어에만 강조 표시가 필요하고 빠른 해결책을 찾을 수 없었기 때문에(그리고 전체 강조 표시를 다시 작성하고 싶지 않았기 때문에) 다음과 같은 (부끄럽게도) 더러운 해결 방법을 생각해 냈습니다.
먼저 강조 표시에 필요한 RGB 색상을 식별합니다. 색상 선택기(예: 웹 브라우저에 내장된 색상 선택기)를 통해 이를 얻거나 이 값을 기초로 사용하여 파일에서 정확한 rgb 값을 찾을 수 있습니다 ( 프로젝트를 컴파일한 후 폴더 <yourMintedStyle>.pygstlye
에서 찾을 수 있습니다 ._minted
그런 다음 라텍스 문서에서 이 색상을 정의하고 생성된 환경에서 이스케이프 문자를 통해 원하는 단어에 색상을 지정합니다. 다음은 trac
golang 스타일 의 최소 예입니다 .
\documentclass{article}
\usepackage{minted}
\usepackage{xcolor}
\begin{document}
\usemintedstyle{trac}
\definecolor{mblue}{rgb}{0.27,0.33,0.53}
\begin{minted}[escapeinside=||]{go}
type SomeType struct {
Foo uint64
Standard FooBar
Tweaked |\textcolor{mblue}{FooBar}|
}
\end{minted}
\end{document}