notepad++ 运行 ruby 脚本需系统已安装并正确配置 ruby 环境,cmd 中能执行 ruby -v 是前提;通过 run → f5 配置 ruby "$(full_current_path)" 并保存,注意路径引号和编码问题,且必须手动保存文件才能运行最新代码。

Notepad++ 本身不运行 Ruby 脚本,它只是调用你系统里已装好的 ruby 解释器。所有“运行失败”,90% 是因为 ruby 命令在 CMD 里都跑不通,而不是 Notepad++ 设置错了。
确认 ruby 命令能否在 CMD 中直接执行
这是最常跳过的一步,但它是后续一切的前提。打开 CMD,输入:
ruby -v
如果返回版本号(如 ruby 3.1.4),说明环境就绪;如果报错 'ruby' 不是内部或外部命令,那就别往下配了——先解决这个。
- 重装 RubyInstaller 时,必须勾选 Add Ruby executables to your PATH
- 若已安装但漏勾,手动把 Ruby 的
bin目录(如C:\Ruby31-x64\bin)加进系统环境变量PATH - 改完
PATH后,必须关闭并重启 Notepad++——它启动时就缓存了环境变量,只重启 CMD 没用
用 Run → Run(F5) 配置 ruby "$(FULL_CURRENT_PATH)"
这是最轻量、最可靠的方式,不用装插件,也不依赖交互式输入。
操作路径:菜单栏 → 运行 → 运行…(快捷键 F5),输入以下命令:
ruby "$(FULL_CURRENT_PATH)"
-
"$(FULL_CURRENT_PATH)"是 Notepad++ 内置变量,带双引号才能正确处理含空格或中文的路径 - 千万别写成
ruby $(FULL_CURRENT_PATH)(缺引号)或ruby "$FULL_CURRENT_PATH"(语法错) - 保存时起个名字,比如
Run Ruby,建议绑定快捷键(如 F6),否则每次都要点菜单
中文输出乱码?别改文件编码声明,要切终端编码
Windows 控制台默认用 GBK,而 Ruby 默认输出 UTF-8,两者不匹配就会显示 涓枃 或 \xE4\xBD\xA0 这类乱码。这不是脚本的问题,是终端的问题。
- 临时方案:把命令改成
chcp 65001 && ruby "$(FULL_CURRENT_PATH)",chcp 65001切到 UTF-8 编码页 - 更稳做法:在 Ruby 脚本开头加两行(尤其 Ruby 2.4+):
Encoding.default_external = Encoding::UTF_8<br>Encoding.default_internal = Encoding::UTF_8
- 不推荐改系统区域设置或强制 Notepad++ 启动
cmd /utf-8——副作用大,且新版 Windows 对/utf-8支持不稳定
为什么改了代码却还是运行旧结果?
Notepad++ 不会自动保存当前文件再运行。如果你写了新逻辑,但没按 Ctrl+S 手动保存,ruby 执行的仍是磁盘上旧的版本。
这点容易被忽略,尤其在快速调试时。只要发现行为和代码对不上,第一反应应该是检查是否真的保存了。
另外,ruby 解释器不感知 Notepad++ 的编辑状态,它只读取磁盘文件——没有“热重载”,也没有“内存中执行”这回事。











