优先选Material Icon Theme,它更新勤、兼容新语言、支持SVG和深浅色自动适配;安装后需手动在settings.json中配置"workbench.iconTheme": "material-icon-theme",并确保工作区未覆盖该设置。

VSCode 默认不显示文件图标,必须装插件才能启用 —— 但不是所有图标主题都兼容最新版 VSCode,部分插件已停止维护或渲染异常。
怎么选图标主题:看 vscode-icons 还是 Material Icon Theme?
目前最稳定、更新最勤的是 Material Icon Theme(作者是 Philipp Kief),它支持 SVG 图标、深色/浅色模式自动适配、自定义文件夹颜色,且对 TypeScript、Rust、TOML、YAML 等新语言图标覆盖全。而 vscode-icons 虽历史久,但近年更新慢,某些图标(比如 .astro、.svelte)缺失或错位。
- 优先装
Material Icon Theme,搜索名就是全称,别选带 “Pro” 或 “Extended” 后缀的仿品 - 安装后默认不启用,需手动在设置里打开:打开
settings.json,加一行"workbench.iconTheme": "material-icon-theme" - 如果图标没变,请确认没同时启用其他图标主题(比如
vscode-icons),VSCode 只认一个激活项
为什么改了 settings.json 还不生效?
常见原因是配置被用户级设置覆盖,或者工作区设置了独立 iconTheme。VSCode 的图标主题优先级是:工作区设置 > 用户设置 > 默认值。
- 检查当前窗口右下角状态栏,点击
Settings图标 → 查看是否显示 “Workspace Settings”;如果是,说明该文件夹有.vscode/settings.json,需在里面也写入"workbench.iconTheme" - 运行命令面板(
Ctrl+Shift+P/Cmd+Shift+P),执行Developer: Toggle Developer Tools,在 Console 里搜icon,看是否有报错如Failed to load icon theme - 某些远程开发场景(SSH / WSL)下,插件需在对应环境中重装,本地装的不会同步过去
想自定义某个文件类型图标?用 material-icon-theme.files.associations
比如把 .env.local 显示成锁形图标,或让 pnpm-lock.yaml 和 package-lock.json 用同一图标,就得靠这个配置项。
- 在
settings.json中添加:"material-icon-theme.files.associations": { ".env.local": "lock", "pnpm-lock.yaml": "package" } - 可选的图标名见插件文档里的
iconDefinitions列表(路径通常是node_modules/material-icon-theme/icons/下的 JSON 文件) - 注意:键名必须是完整文件名或带点的扩展名(如
".gitignore"),不能写"gitignore";值必须是图标 ID,不是文件名
图标主题看似简单,但真正用顺手需要确认三件事:插件是否在当前环境启用、配置是否落在正确层级、自定义映射是否拼写准确——尤其大小写和点号,漏一个就回退到默认空白图标。


















