例如,下面的代码math.xml
可以实现equation
环境的自动完成
<lxEnvironment name="equation"
parameters="1"
desc="Math environment"
icon="math.bmp"
index="10"
expafter="}

\label{eq:}
\end{equation}"
expbefore="\begin{"/>
这样当我输入equ
并点击Ctrl
+时Space
,以下内容就会自动完成
\begin{equation}
\label{eq:}
\end{equation}
我想确保在自动完成之后,光标停在给定的位置,例如,之后eq:
。现在,它停在空行。我无法通过使用 Xml 代码中的参数来更改行为。我正在使用 TeXnicCenter 2.02。
我依稀记得在TeXnicCenter 1中可以实现这种效果,但忘了具体怎么做了。
答案1
嗯,语法的一般规则lxEnvironment
似乎如下:
expbefore
打印变量的内容(结果为\begin{
)equation
这里添加了环境的名称。现在我们有:\begin{equation
- 变量的内容
expafter
被添加,并

更改为换行符。 - 最后,似乎在关闭后将光标设置为(第一个?)空白行或更
}
简单\begin{equation}
。
给出的完整代码:
<lxEnvironment name="equation"
parameters="1"
desc="Math environment"
icon="math.bmp"
index="10"
expafter="}

\label{eq:}
\end{equation}"
expbefore="\begin{"/>
您可以通过将内容更改expbefore
为 和expbefore="\begin{equation}

\label{eq:"
来expafter
测试这一点expafter="}
\end{equation}"
。然后您将equation
插入到后面...eg:
,并且光标停留在空白行的开头。我认为这是在 TeXnicCenter 代码中硬编码的。要更改它,请联系 TeXnicCenter 的支持,位于主页上技术中心
mycommand.xls
为了方便测试,您可以创建如下文件:
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<lxCollection version="1" xmlns:txclxp="http://schemas.ToolsCenter.org/TeXnicCenter/LaTeXCommands.xsd">
<lxPackage name="username"
path=""
desc="My commands"
>
<lxEnvironment name="testerle"
parameters="0"
desc="Math environment"
icon="math.bmp"
index="10"
expafter="}
\end{equation}"
expbefore="\begin{equation}

\label{eq:"/>
</lxPackage>
</lxCollection>
<!-- $Id$ -->
<!--
$Log: username.xml,v $
First version 2016/09/26 21:00:00 username
no message
-->
并将其复制到 Windows 安装 TeXnicCenter 的系统路径,例如C:\Program Files\TeXnicCenter\Packages
(64 位版本)。
重新启动 TeXnicCenter 后(关闭所有 TeXnicCenter 窗口,然后打开一个新窗口),您可以测试现在已加载的新环境testerle
(以避免出现实际需要和安装的问题equation
)...