Notepad++ 自动完成 \begin{env} \end{env}

Notepad++ 自动完成 \begin{env} \end{env}

有没有办法配置 Notepad++ 来执行以下操作:

  • 在我输入\begin{env}(也许还有一些快捷键)之后,它会自动关闭环境,\end{env}并将光标移动到环境打开和关闭之间的一行。这里env是任何环境名称。

我知道这可以在 Emacs 中完成,如下所示让 emacs 在 \begin{} 命令后自动插入 \end{} 命令。我想知道是否有 Notepad++ 等效产品。

答案1

根据@Fuzzy的回答,我相信这是代码片段参数这将有所帮助,详情如下https://github.com/erinata/FingerText/wiki/Snippet-parameters

从 notepad++ 开始,使用Fingertext安装插件(详情见Fuzzy 的回答), 去:

Plugins-> Fingertext-> Toggle On/off SnippetDock-> Open Snippet Editor

现在输入,例如,envas triggertext,保留3GLOBAL,并在Snippet Content

\begin{$[![envname]!]}
    $[![(environment body)]!]
\end{$[![envname]!]}$[![after environment]!][>END<]

截屏

这意味着当你输入例如

 env(myenvironment)<TAB>

你收到

\begin{myenvironment}
    (environment body)
\end{myenvironment}$[![after environment]!]

光标突出显示。完成后,(environment body)您可以进入环境。TAB

很多更多内容可在 Wiki 上探索,https://github.com/erinata/FingerText/wiki

答案2

有两种不同的方法可以实现这一点。一种是仅使用空白 Notepad++,另一种是使用附加 AddOn

  1. 带有 AddOn(非常酷!!!)

在 Notepad++ 中打开 Plugins->PluginManager。安装插件“FingerText”现在在 FingerText 插件中单击“打开代码片段编辑器”并定义“触发文本”(不好用 \。因此只需使用“begin”即可)在“代码片段内容”下添加您的代码,包括一个附加命令以强制光标位于打开和关闭之间。应该看起来像这样:

\begin{env}
$[0[]0]
\end{env}[>END<]

保存代码片段并打开 Tex 文件。
单击 FingerText-SnippetDock 插入代码。
或者,如果您现在输入 begin 并按 Tab 键,代码将自动完成,光标将停留在所需位置 ;-)


  1. 没有 AddOn(不太方便,因为光标停止在代码末尾)

打开 Notepad++ 安装目录的 /Plugins/APIs 文件夹,然后打开包含所有 TeX-Autocomplete 信息的文件“tex.xml”。现在只需添加所需的自动完成命令:

它看起来应该是这样的:

<KeyWord name="begin{env}\end{env}" />

现在在 Notepad++ 中激活自动完成功能(设置->首选项->自动完成)

如果您现在在文档中输入 \begi...,Notepad++ 将自动完成代码。

相关内容