notepad++ 不能直接运行 swift 脚本,需依赖外部 swift 工具链:必须安装官方 swift-5.10-release-windows10.exe,将 d:\swift\usr\bin 加入 path,notepad++ 中配置 cmd /k cd $(current_directory) & swiftc -o "$(name_part).exe" "$(full_current_path)" & "$(name_part).exe" & del "$(name_part).exe" & pause 命令,并确保文件编码为 utf-8 无 bom、换行符为 unix 格式。

Notepad++ 本身不能直接运行 Swift 脚本 —— 它只是个文本编辑器,不带编译器或运行时。想在 Windows 上用 Notepad++ 编写并执行 Swift 程序,必须依赖外部 Swift 工具链,并通过 Notepad++ 的「运行」功能调用命令行编译执行。这可行,但容易卡在路径、环境变量或编码环节。
Swift Windows 工具链必须独立安装,Notepad++ 不提供任何 Swift 支持
官方 Swift for Windows(swift-5.10-RELEASE-windows10.exe)是唯一稳定来源,需手动下载安装(约 490MB),默认装到 C:\Library\Developer\Toolchains\ 或自定义路径如 D:\Swift\。安装后必须把 swiftc 和 swift 所在目录(通常是 D:\Swift\usr\bin)加入系统 PATH 环境变量,否则 Notepad++ 调用命令会报 'swiftc' is not recognized as an internal or external command。
- 验证是否成功:打开任意 CMD,输入
swiftc -v,应返回版本信息 - 若失败,检查
PATH是否包含D:\Swift\usr\bin(注意不是安装根目录) -
Notepad++启动后不会自动读取新设的环境变量,需重启软件
Notepad++ 中配置「运行」命令编译并执行 .swift 文件
关键在于构造一条能同时完成编译、运行、清理的单行命令。推荐使用如下模板(适配 swiftc + .exe 输出):
cmd /k cd $(CURRENT_DIRECTORY) & swiftc -o "$(NAME_PART).exe" "$(FULL_CURRENT_PATH)" & "$(NAME_PART).exe" & del "$(NAME_PART).exe" & pause
-
$(CURRENT_DIRECTORY)确保编译时工作路径正确,避免找不到依赖或输出乱放 -
$(NAME_PART)自动提取文件名(不含扩展名),用于生成同名.exe,避免硬编码 - 末尾
del清理临时可执行文件,防止多次运行残留多个.exe - 务必勾选「总是以提升权限运行」(右键快捷方式 → 属性 → 兼容性 → 勾选)——某些 Swift 运行时组件需要管理员级访问
中文字符、换行符、BOM 导致 Swift 编译失败的典型表现
Swift 编译器对源码格式敏感:Notepad++ 默认保存为 UTF-8 with BOM 或 ANSI(GB2312),都会触发 error: invalid UTF-8 byte sequence 或 unexpected character。
- 必须设置:设置 → 首选项 → 新建 → 编码 → UTF-8 无 BOM
- 必须转换已有文件:编码 → 转为 UTF-8 无 BOM(不是“转为 UTF-8”)
- 换行符必须为 LF(Unix 格式):编辑 → 文档格式转换 → 转为 UNIX 格式;否则
swiftc可能解析失败 - 含中文字符串的代码(如
print("你好"))必须确保文件保存为 UTF-8 无 BOM,否则编译直接报错
Notepad++ 插件无法替代 Swift 工具链,别浪费时间装 NppExec 或 Python 插件
NppExec 插件看似能封装命令,但它本质仍是调用系统 shell,仍需你已配好 swiftc 和环境变量。它不解决路径问题、编码问题、权限问题,反而增加一层抽象导致错误更难定位。
- 不要尝试用
NppExec运行swift build—— Windows 下 Swift Package Manager(SPM)支持极弱,swift build在 Windows 上基本不可用 - 不要指望插件自动识别
.swift语法高亮 ——Notepad++8.6 已原生支持 Julia,但 仍不支持 Swift 语法高亮,需手动导入用户定义语言(UDL)XML 文件 - 真正省事的做法:用
Notepad++写、改、查,用 CMD/PowerShell 手动编译,比折腾插件更可靠
实际跑通的关键就三点:Swift 工具链装对路径、PATH 加对、Notepad++ 文件存成 UTF-8 无 BOM + UNIX 换行。其余都是障眼法。











