phpstorm自定义词典文件(.dic)不固定存放于config目录,而是由用户指定任意本地路径,如~/phpstorm-dicts/technical.dic或c:\users\yourname\phpstormdicts\php.dic,ide仅记录路径并递归扫描该目录下所有.dic文件,要求路径无中文空格、文件utf-8无bom、每行一词且无不可见字符。

自定义词典文件(.dic)存在哪?
PhpStorm 的拼写检查词典不是存在 config 目录下的某个子目录里,而是由 IDE 在启动时从你指定的**任意本地路径**读取。它不参与 Export Settings 流程,也不会随版本升级自动迁移——你手动创建的 my-words.dic 文件,如果没备份或没重新指向,就彻底“消失”了。
典型存放位置(你可能用过的):
-
~/phpstorm-dicts/technical.dic(Linux/macOS 常见) -
C:\Users\YourName\PhpStormDicts\php.dic(Windows) - 甚至就在项目根目录下:
.phpstorm-dict.dic
关键点:IDE 只记路径,不打包内容。迁移前先确认这个路径是否还在、文件是否可读。
怎么让新 PhpStorm 找到你的 .dic 文件?
打开 Settings → Editor → Spelling,在 Custom dictionaries 区域点击 +,然后选中你存放 .dic 文件的**整个目录**(不是单个文件)。IDE 会递归扫描该目录下所有 *.dic 文件。
注意几个易错细节:
- 路径不能含中文或空格(比如
C:\我的词典\或~/Dropbox/My Dicts/都可能加载失败) - 文件编码必须是 UTF-8 无 BOM;用 VS Code 或 Notepad++ 检查并转存
- 每行只能有一个单词,不能有注释、空行或 tab 缩进(否则整行被跳过)
- 如果用了相对路径(如
./dicts/php.dic),迁移后路径失效,必须重选绝对路径
跨机器/重装后词典不生效?先查日志
如果添加路径后仍提示“no custom dictionary found”,别急着重试。打开 Help → Show Log in Explorer,看 idea.log 里有没有类似这样的报错:
WARN - #com.intellij.spellchecker.dictionary.CustomDictionaryLoader - Cannot load dictionary from /path/to/my.dic: java.nio.file.NoSuchFileException
这说明路径错了,或者文件权限不足(Linux/macOS 下常见于挂载盘或 snap 安装的 PhpStorm)。临时验证方法:把 .dic 文件复制到 ~/tmp/ 这类肯定可读的路径,再重新添加一次。
真正麻烦的是那种“看似加载成功但单词仍标红”的情况——大概率是词典文件里混入了不可见字符(比如从网页复制粘贴的 en dash `–` 被当成了非法符号),建议用 cat -v my.dic(Linux/macOS)或 PowerShell 的 Get-Content my.dic -Encoding UTF8 | Format-Hex 检查控制字符。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!










