以 Notepad++ 为 LaTeX 编辑器及以 SumatraPDF 进行正反向搜索的配置方法
编辑器
2019-11-08 01:17 浏览 :3503
Notepad++ 是一款轻量化的开源文本编辑器,它启动速度快,具有强大的编辑功能,除了可以用来制作一般的纯文字说明文件,也十分适合编写计算机程序代码,支持众多计算机程序语言。Notepad++ 不仅有语法高亮度显示,也有语法折叠功能,并且支持宏以及扩充基本功能的扩展模块。利用 Notepad++ 的插件 NppExec、Customize Toolbar 并配合 SumatraPdf,可将 Notepad++ 打造成一款优秀的 LaTeX 前端。本文将对这几款软件的配置方法做一个简要的介绍。
## 需要的环境
1. TeX 发行版: TeXLive 或 MiKTeX 均可。
2. Notepad++ V 7.8: [64位安装程序](http://download.notepad-plus-plus.org/repository/7.x/7.8/npp.7.8.Installer.x64.exe) [32位安装程序](http://download.notepad-plus-plus.org/repository/7.x/7.8/npp.7.8.Installer.exe),本文假定其安装的路径为`C:\\Program Files\\Notepad++`
3. Notepad++ 插件 NppExec:可在Notepad++ 菜单 `插件`->`插件管理` 中查找安装。
4. Notepad++ 插件 Customize Toolbar:安装方法同上。
5. SumatraPDF:本文假定其安装路径为`C:\\Program Files\\SumatraPDF`
## NppExec —— Execute
1. 首先用 Notepad++ 打开一个 `tex` 文件。
1. NppExec 安装完成后,快捷键 `F6`调出 Execute 对话框:
![execute 对话框](https://pics.latexstudio.net/data/images/201911/510ee0187426d94.png "execute 对话框")
2. 在窗口内输入如下代码:
```batch
cd $(CURRENT_DIRECTORY)
xelatex -synctex=1 -interaction=nonstopmode $(NAME_PART)
```
简要介绍一下代码含义,`$(CURRENT_DIRECTORY)` 是 NppExec 插件的设置的变量,表示当前文件所在的目录;`$(NAME_PART)` 表示当前文件文件名(不含扩展名)。这两句代码的含义就很好理解了,进入当前目录,对当前文件用 `xelatex` 以指定参数进行编译。
3. 将这段临时脚本起名保存为 `XeLaTeX`,点击 ok 按钮即开始这段脚本。
4. 类似地,我们可以创建其他编译命令的执行脚本,不一一赘述。
5. 为了实现以SumatraPDF实现正反向搜索,预览PDF文件的脚本应输入如下代码:
```batch
cd $(CURRENT_DIRECTORY)
NPP_run "C:\\Program Files\\SumatraPDF\\SumatraPDF.exe" -reuse-instance -forward-search $(NAME_PART).tex $(CURRENT_LINE) -inverse-search "\\"C:\\Program Files\\Notepad++\\Notepad++.exe\\" -n%l %f" $(NAME_PART).pdf
```
简单解释几个命令和变量:`Npp_run` 是 NppExec 附带的命令,表示执行外部程序和命令;`$(CURRENT_LINE)` 表示文件的当前行。
这一段正反向搜索的命令在[啸行的专栏](https://wenda.latexstudio.net/article-5055.html)已经进行详细介绍,这里不再赘述。
6. 若要形成编译链,连续使用几个既已保存的脚本,可以不用将脚本命令重复 copy,可以使用 NppExec 附带命令 `Npp_exec` 执行相应脚本即可。例如,已经设置保存了 `XeLaTeX`、`bibtex` 和 `View PDF` 三个脚本,若需创建一个标准的完整编译过程的脚本,可以在Execute 窗口输入如下代码并保存即可。
```batch
Npp_exec "XeLaTeX"
Npp_exec "bibtex"
Npp_exec "XeLaTeX"
Npp_exec "XeLaTeX"
Npp_exec "View PDF"
```
## NppExec —— Advanced Options
采用菜单项 `插件` -> `NppExec`-> `Advanced Options` 可以进行一些高级设置,将已经保存的脚本加入到菜单项中。如下图所示:
![高级设置](https://pics.latexstudio.net/data/images/201911/13f3f0e1dc06b3d.png "高级设置")
`Menu item` 一栏可以选择需要添加到菜单的脚本,并为菜单项设置名称;`Menu item*` 一栏中 `Place to the Macros submenu` 的 checkbox 勾选之后,菜单项将添加在 `宏(M)` 菜单项之下。
对话框的其他设置,用户可以根据自己的需要自行选择设置。
## 快捷键的设置
快捷键可以通过菜单 `宏(M)`->`管理快捷键...`进行设置,在 `插件命令` 选项卡可以找到添加到菜单项的命令,利用对话框设置快捷键即可。
![](https://pics.latexstudio.net/data/images/201911/f36454e1647931b.png)
## NppExec —— Console Output Filters
快捷键 `Shift`+`F6` 可以调出 NppExec 控制台输出过滤。
![控制台信息过滤](https://pics.latexstudio.net/data/images/201911/1844fc6a55809b0.png "控制台信息过滤")
在`HighLight` 选项卡中,我们可以设置控制台信息过滤条件:`l.%LINE%`,并设置高亮颜色和粗体下划线样式。在勾选最前面的checkbox 启用这个条件后,我们可以编辑一个简单的 `tex` 文件:
```tex
\\documentclass{article}
\\begin{document}
Hello! \\latex
\\end{document}
```
我们故意写错 `\\LaTeX` 为 `\\latex`,进行编译后,显然系统将给出报错信息,我们发现控制台回显的报错信息中:
```
l.4 Hello! \\latex
```
已经成为了我们设定的格式。双击这条报错信息,在文本编辑器内,光标将定位到出错这一行的行首。这个设置实现了错误快速定位。
## 利用 Customize Toolbar 为常用菜单项添加工具条按钮
1. Customize Toolbar 安装完成后,菜单项 `插件` -> `Customize Toolbar`-> `Custom Buttons` 可以启动用户自定义工具条按钮。按钮的配置是通过文件 `%APPDATA%\\Notepad++\\plugins\\config\\CustomizeToolbar.btn` 实现的。文件示例如下:
```
宏(M),pdfLaTeX,,,pdflatex.bmp
宏(M),XeLaTeX,,,xelatex.bmp
宏(M),bibtex,,,bibtex.bmp
宏(M),biber,,,biber.bmp
宏(M),makeindex,,,makeindex.bmp
宏(M),View PDF,,,adobe.bmp
宏(M),Clear,,,trash.bmp
宏(M),Latexmk,,,latexmk.bmp
```
其中,每一行均为4个 `,` 分隔成的5部分,前4部分为各级菜单项名称,必须与当前菜单选用的界面语言一致,最后一项为按钮显示图标文件名,图标文件必须为16×16的bmp格式图像。特别需要注意的是:`CustomizeToolbar.btn` 的文件编码格式必须保存为:**UCS-2 Little Endian 含 BOM**,文件行尾格式必须为 **Windows (CR LF)**。
至此,对 Notepad++ 的配置基本完毕,Notepad++已经被打造成一个不错的 LaTeX 前端, Happy TeXing!
微/Q:211457004办理/全澳洲各大学毕业证成绩单+真/实留/信网认证
太好了,喜欢这种轻量级的工具。
棒啊,这样就解决了很多常见编辑器的配置
请问清理过程文件的命令是什么?
太好了,赞!喜欢notepad++