
いくつかのテーブルを外部 .tex ファイルのコマンド (MWE) として定義したいと思います。テーブルには設定がたくさんあるからです。この外部ファイルは、コマンドによってメイン ドキュメントにインクルードされます\input{}
。定義済みのコマンドを使用しても問題ありません。TeXStudio はメイン ドキュメントをコンパイルでき、出力も生成します。問題は、TeXStudio が自分で定義したテーブル内の\hline
コマンドと&
テーブルのセパレーターを認識しないことです (エディターはテーブル環境の外側にテーブル コマンドがあると表示します)。また、エディターでメイン ドキュメントのみを開いた場合 (myTemplate ファイルなし)、外部ドキュメントで定義した\mytable{}
と\lb
コマンドは認識されません。
構文の強調表示を単に無効にせずに、この赤い強調表示を消す方法はありますか? ここでいくつかの助けを得ました:TeXStudio は一部のコマンドを認識しませんなぜなら、以前に他のコマンドでも同じ問題が発生したことがあるからです。ただし、これらのコマンドは ctan から取得したパッケージからのコマンドなので、独自に定義したコマンドはありません。
この問題が再現可能かどうかはわかりませんが、MWE は次のとおりです。
\documentclass[]{scrartcl}
\input{myTemplate.tex}
\begin{document}
\mytable{
%% \hline A & B & C & D & E \\ \hline
a & b1 \lb b2 \lb b3 & c1 \lb c2 \lb c3 & d & e \\ \hline
& & & & \\ \hline
& & & & \\ \hline
}
\end{document}
そして、myTemplate ファイル:
\usepackage{tabularx}
\usepackage{here}
\usepackage{array}
\usepackage[table]{xcolor}
\newcolumntype{M}[1]{>{\centering\arraybackslash}m{#1}}
\newcommand{\mytable}[1]{%
\begin{center}
\rowcolors{1}{white}{pink}
\begin{tabular}{| M{.2\textwidth} | M{.15\textwidth} | M{.1\textwidth} | M{.2\textwidth} | M{.2\textwidth} | M{.15\textwidth}|} \hline
A & B & C & D & E \\ \hline
#1
\end{tabular}
\end{center}%
}
\newcommand{\lb}{\linebreak}
答え1
構文チェックの一部を選択的に切り替えすることはできません。また、パーサーが引数でテーブルのような動作を受け入れるようにすることもできません。
ただし、独自のテーブル環境を定義することもできます。
\newenvironment{mytable}{%
\begin{center}
\rowcolors{1}{white}{pink}
\begin{tabular}{| M{.2\textwidth} | M{.15\textwidth} | M{.1\textwidth} | M{.2\textwidth} | M{.2\textwidth} | M{.15\textwidth}|} \hline
A & B & C & D & E \\ \hline
}{\end{tabular}\end{center}}
カスタム .cwl で、環境を表形式として宣言します。
\begin{mytable}#\tabular
\end{mytable}
それを文書内で使用します:
\begin{mytable}
%% \hline A & B & C & D & E \\ \hline
a & b1 \lb b2 \lb b3 & c1 \lb c2 \lb c3 & d & e \\ \hline
& & & & \\ \hline
& & & & \\ \hline
\end{mytable}
答え2
この問題が発生しました。3 つのファイルがあります:
- MySty.sty (ここではいくつかの新しいコマンド、環境などが定義されています)
- 印刷.tex
\documentclass[12pt]{article}
\usepackage{MyStyle.sty}
\begin{document}
\input{1.tex}
\input{2.tex}
.............
\end{document}
- 1.tex (ここではTeXStudioで認識されないカスタムコマンド)
\usepackage{MyStyle.sty}
に変更したところです\input{MyStyle.sty}
。これですべてのプロジェクトが正常にコンパイルされ、すべてのファイルで認識されない強調表示はなくなりました。