Notepad++ NppExec插件的使用

目录

  • [一. 简介](#一. 简介)
  • [二. 安装](#二. 安装)
  • [三. 常用脚本函数](#三. 常用脚本函数)
  • [四. 自定义脚本](#四. 自定义脚本)
    • [4.1 运行代码的脚本](#4.1 运行代码的脚本)
      • [4.1.1 代码本体](#4.1.1 代码本体)
      • [4.1.2 脚本与菜单项目关联](#4.1.2 脚本与菜单项目关联)
      • [4.1.3 运行脚本](#4.1.3 运行脚本)
    • [4.2 调用外部程序](#4.2 调用外部程序)
      • [4.2.1 脚本介绍](#4.2.1 脚本介绍)
      • [4.2.3 效果](#4.2.3 效果)
  • [五. 注意事项](#五. 注意事项)

一. 简介

🔷NppExec是一款可以让Notepad++直接执行命令、脚本、甚至编译运行程序的插件。

该插件内置了控制台窗口,还提供了脚本执行引擎。

🔷核心功能

  • 在编辑器里直接运行程序。简易程序的话,直接在Notepad++中即可开发运行
    • 运行 PowerShell / CMD 命令
    • 执行 Python / Java / C 编译
    • 调用自己的脚本
  • 提供了控制台窗口
    • 显示程序输出
    • 支持输入
    • 可以抓取输出结果
  • 👍支持脚本
    • Notepad++对宏的支持较弱,NppExec插件的脚本功能可以弥补该不足
    • 可以一键运行当前文件

二. 安装

🔷通过插件市场安装之后,插件界面如下图所示。

  • Execute NppExec Script:执行脚本
  • Advanced Options:高级设置
  • Help/Docs:参考文档,提供了脚本的使用说明

三. 常用脚本函数

  • 获取系统临时文件夹
bash 复制代码
set tmpdir = $(SYS.TEMP)
echo $(tmpdir)
  • 弹出框,弹出选中的文本
bash 复制代码
messagebox "$(SELECTED_TEXT)" : "提示"
  • 输入框,输入之后的值会存储在 $(INPUT) 变量中
bash 复制代码
inputbox "message" : "默认值"
echo $(INPUT)

四. 自定义脚本

4.1 运行代码的脚本

4.1.1 代码本体

bash 复制代码
NPP_SAVE

// 移动到当前目录下
cd $(CURRENT_DIRECTORY)

// 获取文件后缀名, 并赋值
set EXT = $(EXT_PART)

if "$(EXT)" == ".js" GOTO JS
if "$(EXT)" == ".py" GOTO PYTHON
if "$(EXT)" == ".php" GOTO PHP
if "$(EXT)" == ".java" GOTO JAVA

echo "不支持的文件类型: $(EXT)"
GOTO EXIT

// 运行js
:JS
echo Running JavaScript...
node "$(FULL_CURRENT_PATH)"
GOTO EXIT

// 运行Python
:PYTHON
echo Running Python...
python "$(FULL_CURRENT_PATH)"
GOTO EXIT

// 运行PHP
:PHP
echo Running PHP...
php "$(FULL_CURRENT_PATH)"
GOTO EXIT

// 运行Java
:JAVA
echo Compiling Java...
javac -encoding UTF-8 "$(FILE_NAME)"
if $(EXITCODE) != 0 GOTO EXIT

echo Running Java...
java -Dfile.encoding=UTF-8 "$(NAME_PART)"
GOTO EXIT


:EXIT
echo Done.

4.1.2 脚本与菜单项目关联

🔷将代码放到Execute NppExec Script中后,点击保存,然后给脚本取名之后,再次保存

🔷将脚本代码与菜单项目关联

4.1.3 运行脚本

🔷通过宏菜单运行脚本,程序的执行结果会输出到控制台上。

🔷还可以将脚本绑定到右键菜单上来运行。

4.2 调用外部程序

4.2.1 脚本介绍

🧐由于在3.1章节介绍了如何将脚本绑定到菜单上,此处只介绍代码

  • npp_console off:关闭控制台显示,不关闭的话,脚本执行之后,控制台会自动打开
  • npe_console v+:开启控制台增强模式
    • 用于将子线程的输出值保存到 $(OUTPUT) 变量中
    • 如果不开启,无法接收powershell的输出值
  • sel_settext:用于替换在Notepad++中选中的文本
bash 复制代码
npp_console off
npe_console v+

// 调用外部脚本
powershell.exe -NoProfile -ExecutionPolicy RemoteSigned -File "E:\My_Project\PowerShellStudy\获取Mac地址.ps1"

// 将子线程的输出值保存到变量中
set local content = "$(OUTPUT)"
// 替换选中的文本
sel_settext "$(content)"
  • 获取Mac地址.ps1
powershell 复制代码
$MacAddress = Get-CimInstance Win32_NetworkAdapterConfiguration | Where-Object { $_.MACAddress -ne $null } | Select-Object Description, MACAddress
Write-Output $($MacAddress | Format-Table -AutoSize)

4.2.3 效果


五. 注意事项

🔷当有多条脚本代码时,新书写代码时,需要使用trmporary script面板书写,否则会将已经保存的代码给覆盖掉。

🔷保存的代码存储在当前用户的AppData文件夹中。

相关推荐
qq57521731911 小时前
Notepad++下载和安装
笔记·notepad++·记事本
猎人在吃肉2 天前
Notepad++ 快捷键配置文件的导入和导出
notepad++·导出·快捷键·导入·配置文件
2601_962054953 天前
2026最新5款AI编程工具平替实测合集
人工智能·notepad++·ai编程
AI行业学习5 天前
Notepad++ 官方纯净下载+完整安装教程
linux·开发语言·python·html·.net·notepad++
AI行业学习6 天前
Notepad++ 官方纯净下载+完整安装教程(Windows)【2026.7.5】
开发语言·windows·python·前端框架·html·notepad++
AI行业学习6 天前
2026 版 Notepad++ 完整图文安装指南|官方渠道无捆绑,一键切换中文界面
开发语言·人工智能·python·html·notepad++
AI行业学习6 天前
Notepad++ 官方下载 + 完整安装 + 全套优化配置(2026最新)
开发语言·人工智能·python·前端框架·html·notepad++
AI行业学习7 天前
Notepad++快速下载-Notepad++下载方式【2026-7-4】
开发语言·python·前端框架·html·notepad++·html5
博客zhu虎康10 天前
小程序:微信小程序连接打印机蓝牙打印全攻略
微信小程序·小程序·notepad++
爱分享的小美1 个月前
Notepad++ 下载、安装(保姆图文教程+安装包)
notepad++