我想在我的 LaTeX 代码中使用以下命令
\newcommand{\newsym}[2]{\newcommand{#1}{\ensuremath{#2}}}
这样我就可以轻松定义我在方程式中经常使用的新符号,例如:
\newsym{\kTq}{\frac{k_BT}{q}}.
目的是减少定义新符号所需的输入量并增强代码的可读性。
现在的问题有两个:
- TeXstudio 没有意识到我
\newsym
定义了一个新命令,并抱怨第一个参数(\kTq
)是一个无法识别的命令。 - 它也没有意识到第二个参数最终被包含在一个
\ensuremath
环境中,并且会抱怨数学环境之外的数学命令
因此,我的\newsym
定义杂乱无章,语法错误,影响了可读性,这是全部的\newsum
首先定义的目的只有一半。
我可以通过某种方式调整 TeXstudio 在这种特殊情况下突出显示错误的方式来解决这个难题吗?我不想完全禁用突出显示;它们在其他方面很有用。
或者是否存在比我的定义更明智的替代方案,从而\newsym
避免这个问题?
答案1
如何.cwl
为 TXS 创建自定义文件:
- 打开您选择的任何 ASCII 文本编辑器,例如
vi
。Notepad++
或者:使用 TXS。 - 创建并保存一个带有文件扩展名的新文本文件
.cwl
。如果为包创建,.cwl
则文件需要按照包名称命名。 添加您创建的所有命令,如下所示:
#<author> <date> \<command>{<arguments>} \begin{<environmentname>} \end{<environmentname>}
保存并复制或移动您的
.cwl
文件到 TXS 的设置目录。对于 Windows 7,它位于%AppData%\texstudio\completion\user
。如果必要的话,重新启动 TXS 并转至
Options -> Configure TeXstudio -> Completion
。选中 -file 的复选框.cwl
。
#
表示注释行,除非在分类内或与关键字一起使用。有关更多信息,请参阅TXS 手册第 4.13 节或者TXS 常见问题解答。
例子:
example.cwl
#naphaneal/2016-07-01 \begin{my-code} \end{my-code}