有没有办法配置 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
现在输入,例如,env
as triggertext
,保留3
为GLOBAL
,并在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
- 带有 AddOn(非常酷!!!)
在 Notepad++ 中打开 Plugins->PluginManager。安装插件“FingerText”现在在 FingerText 插件中单击“打开代码片段编辑器”并定义“触发文本”(不好用 \。因此只需使用“begin”即可)在“代码片段内容”下添加您的代码,包括一个附加命令以强制光标位于打开和关闭之间。应该看起来像这样:
\begin{env}
$[0[]0]
\end{env}[>END<]
保存代码片段并打开 Tex 文件。
单击 FingerText-SnippetDock 插入代码。
或者,如果您现在输入 begin 并按 Tab 键,代码将自动完成,光标将停留在所需位置 ;-)
- 没有 AddOn(不太方便,因为光标停止在代码末尾)
打开 Notepad++ 安装目录的 /Plugins/APIs 文件夹,然后打开包含所有 TeX-Autocomplete 信息的文件“tex.xml”。现在只需添加所需的自动完成命令:
它看起来应该是这样的:
<KeyWord name="begin{env}\end{env}" />
现在在 Notepad++ 中激活自动完成功能(设置->首选项->自动完成)
如果您现在在文档中输入 \begi...,Notepad++ 将自动完成代码。