Notepad++ 默认保存为无扩展名或 .txt 文件,需手动输入扩展名(如 HelloWorld.java)并确保系统显示文件扩展名;可通过设置默认语言、文件关联和右下角点击切换语言来实现正确语法高亮。

Notepad++ 不会自动把新建文件存成 .py、.java 或 .sh —— 它默认保存为无扩展名的纯文本,或者带 .txt 后缀。想让文件正确被识别、高亮、甚至被编译器/解释器认出来,必须主动控制扩展名和语言绑定。
保存时手动加扩展名是最直接有效的做法
很多人卡在“点了保存就变成 xxx.txt”,其实只是没输后缀。Notepad++ 的保存对话框完全支持手写扩展名:
- 新建一个空文档 → 点击「文件 → 另存为」→ 在「文件名」输入框里直接输入
HelloWorld.java(注意带点和后缀) - 不要依赖下拉菜单里的“文本文档”或“所有文件”,它只是过滤器,不影响你手输
- 如果系统隐藏了扩展名(Windows 默认行为),你可能看到的是
HelloWorld,但实际保存成了HelloWorld.txt;务必打开「文件资源管理器 → 查看 → 勾选“文件扩展名”」来确认 - 保存后右下角状态栏应立刻显示对应语言(如
Java),否则说明扩展名没生效或映射缺失
设置默认语言能减少每次手输的麻烦
对高频使用的语言(比如 Python、Java),可以设成新建文件的默认语言,这样「新建 → 保存」时更容易记住加后缀,且状态栏初始就是目标语言:
- 菜单栏 → 设置 → 首选项 → 新建 → 「默认语言」下拉选
Python(不是Python Script) - 同时建议把「编码」设为
UTF-8(避免中文乱码和编译报错) - 这个设置只影响新创建的空白文档,不影响已打开的文件;也不会自动给你加
.py,但它会让右下角一开始显示Python,提醒你该存成.py - 如果你常写 Java,选
Java后,新建文件保存时输Main.java就能立刻获得语法高亮和类结构感知(基础层面)
扩展名没高亮?去「文件关联」里补上
即使你手动保存为 deploy(无后缀)或 config.conf,Notepad++ 也可能不着色——不是它坏了,是扩展名根本没被映射到对应语言:
- 菜单栏 → 设置 → 首选项 → 文件关联
- 左侧选目标语言(如
INI file),右侧输入框里加.conf(注意带点),回车生效 - 多个扩展名用空格分隔,例如:
.conf .cfg .ini;别用逗号、分号或引号 - 改完已打开的文件要按
Ctrl+R重载,或关闭再打开,才能触发新规则 - 特别注意:
.sh默认绑在Bat上,得先去Bat项里删掉.sh,再去Bash项里加上,否则永远高亮成批处理样式
右下角点一下就能临时切语言,但别指望它记住
遇到 Dockerfile、Rakefile、日志片段等非标文件,最省事的方式不是改配置,而是当场指定:
- 打开文件 → 看右下角状态栏(显示
Normal text或别的语言)→ 直接点击那个文字 - 在弹出菜单中选
Python、Bash、JSON等,高亮立刻刷新 - 快捷键更高效:按
Ctrl+L,再按语言首字母(Pfor Python,Jfor JSON),重复按可循环同首字母语言 - 这个操作只作用于当前标签页,关掉再开就恢复默认;它不写入任何配置,也不依赖扩展名——适合一次性查看或调试
真正容易被忽略的是:Notepad++ 的语言识别完全不分析文件内容(除非你手动启用了旧版“自动检测”且关掉了扩展名优先),它只看后缀或你点的那一下。所以别纠结“为什么它没认出我写的 Python 代码”,先检查 .py 是否存在、是否拼错、是否被其他语言抢占了映射。



















