Closed1
tcblisting環境でlatexindentがフォーマットしないようにする
VSCodeのLaTeX Workshopで自動フォーマット(latexindentを使用)を有効にしていると, tcblisting
のようにフォーマットして欲しくない環境内部でもフォーマットされてしまう:
\begin{tcblisting}{
title=Deserialization,
listing only,
listing options={
language=C,
basicstyle=\ttfamily,
keywordstyle=\color{blue}\ttfamily,
stringstyle=\color{red}\ttfamily,
commentstyle=\color{green}\ttfamily,
morecomment={[l][\color{magenta}]{\#}},
}
}
#include<stdio.h>
int main(int argc, char **argv){
printf("Hello World!\n");
return 0;
}
\end{tcblisting}
これをなんとかしたい.
$ readlink `which latexindent`
../../texmf-dist/scripts/latexindent/latexindent.pl
などで, latexindent
がある場所を探す.
latexindent.pl
と同じ場所に defaultSettings.yaml
があるはずなので, これを編集する.
verbatimEnvironments
という項目があるはずなので, これに tcblisting
を追加する.
defaultSettings.yml
verbatimEnvironments:
verbatim: 1
lstlisting: 1
minted: 1
tcblisting: 1 # <-追加
これで tcblisting
環境内ではフォーマットされなくなる.
\begin{tcblisting}{
title=Deserialization,
listing only,
listing options={
language=C,
basicstyle=\ttfamily,
keywordstyle=\color{blue}\ttfamily,
stringstyle=\color{red}\ttfamily,
commentstyle=\color{green}\ttfamily,
morecomment={[l][\color{magenta}]{\#}},
}
}
#include<stdio.h>
int main(int argc, char **argv){
printf("Hello World!\n");
return 0;
}
\end{tcblisting}
このスクラップは2022/04/30にクローズされました