Rキーワードのリスト

Rキーワードのリスト

私は LaTeX ファイルに R ソース コードを記述したいので、listings パッケージを使用しています。

問題は、R のキーワードを青で表示したいのですが、たとえば abc.log.de という変数は青で log と表示されることです。R で log がより大きな変数名の一部である場合、このような表示は避けたいのです。(以下の例)

どうすればいいでしょうか?

\documentclass{article}
\usepackage{listings}
\usepackage{color}

\definecolor{dkgreen}{rgb}{0,0.6,0}
\definecolor{gray}{rgb}{0.5,0.5,0.5}
\definecolor{mauve}{rgb}{0.58,0,0.82}

\lstset{frame=tb,
language=R,
aboveskip=3mm,
belowskip=3mm,
showstringspaces=false,
columns=flexible,
numbers=none,
keywordstyle=\color{blue},
numberstyle=\tiny\color{gray},
commentstyle=\color{dkgreen},
stringstyle=\color{mauve},
breaklines=true,
breakatwhitespace=true,
tabsize=3
}

\begin{document}

\begin{lstlisting}
L.V2<-log(V2)
dados.log<-dados
\end{lstlisting}

\end{document}

ここに画像の説明を入力してください

答え1

デフォルトでは、R マークアップリストパッケージでは、期間.他の(つまり、文字以外の)文字タイプと_およびを組み合わせること$で、それらを含むキーワード( などdata.frame)を認識できるようになります。ただし、これは、フォームで定義された変数がfoo.keyword.barピリオド間のキーワードを強調表示することも意味します。

この動作を防ぐには、リスト マークアップでピリオドを.文字として指定し、 を追加しますalsoletter={.}\lstset残念ながら、これにより、ピリオドを含む他のキーワード ( や など) も強調表示されなくなりdata.frameますread.csv

あるいは、コード内で変数に別の名前を付けることもできます(例えばdados.ln)。

\documentclass{article}
\usepackage{listings}
\usepackage{color}

\lstset{frame=tb,
language=R,
keywordstyle=\color{blue},
alsoletter={.}
}

\begin{document}

\begin{lstlisting}
L.V2<-log(V2)
dados.log<-dados
\end{lstlisting}

\end{document}

ここに画像の説明を入力してください

2つの小さな点:

  • 最小限の動作例では、 を忘れないでください\documentclass{article}
  • すべての設定を1つの画面に表示する必要はありません。最小限実例。

関連情報