按文件扩展名/掩码给 Double Commander 文件面板中的文件名上色 —— 压缩包蓝色、图片品红、代码靛蓝、音频橙色……效果等同于官方设置「选项 → 颜色 → 文件类型颜色」,并附带 14 个分类、2688 条掩码的规则包、图形界面与一键安装工具。
- 免 Python 一键安装:Windows 7 SP1 / 8 / 8.1 / 10 / 11(提供 win64 与 win32 两个包)
- 兼容 Double Commander 1.1.x(
colors.json)与 1.0.x(doublecmd.xml) - 便携版 / 安装版均支持:便携版可把 DC 程序文件夹(或
settings文件夹、doublecmd.exe)直接拖到安装窗口上自动定位 - 写入前自动备份,可一键卸载 / 还原;不影响你自己的其它规则
- 不改动 Double Commander 一行源码
- 开箱即用的规则包:14 个分类 / 2688 条掩码,浅色 + 深色两套主题配色
- 免安装 Python:Releases 的压缩包内 exe 已内置 Python 运行时:解压 →
install.cmd→ 重启 DC 即可 - 图形界面:分类勾选、优先级排序、颜色编辑、实时预览、一键写入 DC 配置
- 命令行工具:探测配置目录、试运行、按分类安装/排除、卸载、备份/还原、生成预览
- 扩展名扫描(
scan):扫描磁盘上真实出现的扩展名,自动归类补全规则(认不出的进「其他·待归类」),保证所有文件类型都有颜色 - 安全的写入方式:DC 运行时拒绝写入(避免退出时被覆盖)、写入前自动备份、原子替换
-
到 Releases 下载压缩包 —— 按你的 Windows 位数选:
你的系统 下载 64 位 Windows(绝大多数情况) dcmd-filetypes-highlight-1.0.1-win64.zip32 位 Windows dcmd-filetypes-highlight-1.0.1-win32.zip不确定?打开「设置 → 系统 → 关于」(Win7:右键“计算机”→“属性”),看“系统类型”。也可以在解压后直接双击
install.cmd:装错包时它会明确提示你该换哪个。 提示:工具包的位数与你 Double Commander 的位数无关(32/64 位 DC 都可使用),只取决于你的 Windows。 -
解压到任意可写目录;完全退出 Double Commander(含托盘图标)
-
双击
install.cmd,按屏幕提示操作,看到[DONE]即安装成功 -
启动 Double Commander —— 文件面板里的文件名就会按类型着色
install.cmd 会自动探测 DC 配置目录(运行中的 DC 进程 / 解压目录附近 / 常见安装位置 / %APPDATA%),找到后会请你回车确认,也支持:
- 把 DC 的程序文件夹、
settings文件夹或doublecmd.exe从资源管理器拖进窗口后回车; - 直接回车(探测不到时)弹出文件夹选择框;
- 或者带参数运行:
install.cmd "D:\Tools\doublecmd" :: 便携版:DC 程序文件夹(自动找它的 settings)
install.cmd -c "D:\Tools\doublecmd\settings" :: 便携版:配置目录(含 colors.json / doublecmd.inf)
install.cmd -c "C:\Users\你的用户名\AppData\Roaming\doublecmd" :: 安装版等价的命令行写法:
dcmd_hl_cli.exe install "D:\Tools\doublecmd" :: 程序文件夹 / settings / doublecmd.exe 都识别
dcmd_hl_cli.exe install -c "D:\Tools\doublecmd\settings"
dcmd_hl_cli.exe install --exe "D:\Tools\doublecmd\doublecmd.exe"便携版的配置目录一般是
<DC 程序目录>\settings(判断标志:里面有doublecmd.inf或colors.json)。 便携包从未启动过 DC 也能安装(安装包自带的settings\doublecmd.inf就足以被识别);安装完成后启动 DC 即可看到颜色。
git clone https://github.com/BGGeorge/doublecmd-filetypes-highlight.git
cd doublecmd-filetypes-highlight
python src\dcmd_hl_gui.py :: 图形界面
python src\dcmd_hl.py menu :: 中文交互菜单(等价于双击 src\dcmd_hl_cli.cmd)
python src\dcmd_hl.py detect :: 探测 DC 配置目录
python src\dcmd_hl.py install :: 写入 DC 配置(自动备份)源码无第三方依赖,只用标准库(tkinter 界面)。
| 项目 | 支持范围 |
|---|---|
| Windows | 7 SP1 / 8 / 8.1 / 10 / 11;64 位用 win64 包,32 位用 win32 包(ARM64 设备建议用 win32 包,或源码方式运行) |
| Double Commander | 1.1.x(实测 1.1.32)与 1.0.x;便携版 / 安装版均可;32 / 64 位 DC 均可 |
| 运行依赖 | 无(exe 内置运行时);源码方式需要 Python 3.8+ |
- Win7:需已安装 SP1 与常规系统更新(Universal C Runtime)。首次运行 exe 若出现 SmartScreen 提示,点“更多信息 → 仍要运行”即可。
- 配置目录自动探测顺序:显式指定(
-c/--exe/ 位置参数)→ 运行中的 DC 进程 → 解压目录附近(父目录、*doublecmd*子目录,覆盖便携版)→ 上次安装记录 → 常见安装位置 →%APPDATA%\doublecmd→%LOCALAPPDATA%\doublecmd。给的是 DC 程序目录 /doublecmd.exe时会自动定位到<程序目录>\settings或%APPDATA%。
规则按列表顺序匹配,第一个命中的规则生效(与 DC/TC 行为一致)。
| id | 名称 | 掩码数 | 浅色主题 | 深色主题 |
|---|---|---|---|---|
temp |
临时·备份·产物 | 40 | #7F7F7F |
#A8A8A8 |
archives |
压缩包·软件包 | 83 | #0047CC |
#82B1FF |
diskimages |
磁盘·光盘镜像 | 25 | #00838F |
#4DD0E1 |
executables |
可执行·库文件 | 47 | #C62828 |
#FF7A7A |
scripts |
脚本·快捷方式 | 38 | #7B4B00 |
#D7A86E |
code |
源代码·网页 | 216 | #3949AB |
#9FA8FF |
documents |
文档·电子书 | 87 | #1B7F1B |
#7CD87C |
spreadsheets |
表格 | 20 | #00796B |
#66D9C8 |
audio |
音频 | 49 | #C07500 |
#FFC46B |
video |
视频·字幕 | 49 | #7B1FA2 |
#C79BFF |
images |
图片 | 100 | #B4007B |
#FF7BD5 |
fonts |
字体 | 25 | #6B7A00 |
#C9D86B |
configs |
配置·数据 | 218 | #546E7A |
#9FB8C4 |
other |
其他·待归类 | 1691 | #C2185B |
#FF80AB |
前 13 个分类手工策展(538 条掩码,覆盖常见格式);
other(其他·待归类)由scan自动维护 —— 凡是暂时认不出归属、但在你的磁盘上真实出现的扩展名都会进这里,保证“所有文件类型都有高亮”。
dcmd_hl_cli.exe scan D:\Media --top 300 :: 只出报告:未覆盖的扩展名及归类建议
dcmd_hl_cli.exe scan D:\Media --apply :: 把新扩展名归类写回规则包(自动备份)
dcmd_hl_cli.exe scan D:\Media --apply --install :: 再顺手安装到 DC 配置- 只枚举文件名,不读文件内容(个别无法判断的格式会抽样读文件头魔数),数十万文件数秒完成;自动跳过
node_modules、.git、Windows/Program Files、AppData、系统卷目录等 - 归类顺序:扩展名对照表 → 文件头魔数(PE/ZIP/PDF/PNG/MP3/Matroska/SQLite…)→ 文本启发(XML/JSON/shebang…)→ 认不出的进「其他·待归类」
- 写入规则包前自动备份为
default_rules.json.fth-backup-<时间戳>
dcmd_hl_cli.exe uninstall :: 只删本工具安装的规则,你自己的规则不受影响
dcmd_hl_cli.exe backups :: 列出所有备份
dcmd_hl_cli.exe restore <备份文件> -y- 每次写入前自动备份为
<原文件>.fth-backup-<时间戳>(就在 DC 配置目录里) - 同名规则原地更新;未勾选的旧规则自动移除;你的其它规则原样保留;默认追加到规则表末尾(优先级最低,
--prepend可插到最前) - 也可以安装后直接打开 DC:配置 → 选项 → 颜色 → 文件类型颜色,所有规则都在,可继续手工编辑
装完颜色没变化?
重启 DC(DC 在启动/退出时读写配置)。若仍无变化:dcmd_hl_cli.exe detect 确认探测到的配置目录就是 DC 实际在用的那个。
提示“Double Commander 正在运行,拒绝写入”?
DC 退出时会把内存中的设置写回配置文件、覆盖修改。请完全退出 DC(含托盘图标)后再安装。确实要强写可加 --force(不推荐)。
便携版不知道怎么装?
双击 install.cmd 后,把 DC 的程序文件夹(含 doublecmd.exe)拖进窗口再回车即可,工具会自动使用 <程序目录>\settings;也可以直接回车让工具弹出文件夹选择框。若你之前误装到了 %APPDATA%\doublecmd(安装版的位置),重装到便携版目录即可——两者互不影响,dcmd_hl_cli.exe status 可随时查看当前写入的是哪个目录。
控制台里中文乱码? 真实控制台窗口显示正常;输出重定向到文件时是 UTF-8 编码,请用支持 UTF-8 的查看器打开。
.ts 被当成源代码,我想当视频?
打开 GUI,把 *.ts 从“源代码·网页”挪到“视频·字幕”再点“安装 / 更新”;或直接编辑 rules\default_rules.json。
更多问题与技术细节见 docs/技术文档.md。
doublecmd-filetypes-highlight/
├─ src/ Python 源码(dcmd_hl.py / dcmd_hl_gui.py)+ 双击启动器(.cmd)
├─ rules/
│ └─ default_rules.json 规则包(14 分类 / 2688 条掩码,可由 scan 继续扩充)
├─ docs/
│ ├─ gui.png 界面截图
│ └─ 技术文档.md 原理、源码依据、规则格式、分类详解
├─ packaging/
│ ├─ build.ps1 构建 Windows 发行包(win64/win32 各构建一次)
│ ├─ install.cmd 包内“一键安装”脚本(随发行包分发;含位数检查、拖拽定位、文件夹选择器)
│ ├─ pick-folder.ps1 install.cmd 调用的文件夹选择对话框
│ └─ README-package.md 发行包内附的用户指南
├─ README.md
└─ LICENSE
# 需要 Python 3.8(最后支持 Win7 的版本)+ pyinstaller==4.10;
# win64 用 64 位解释器,win32 用 32 位解释器,各构建一次:
python -m pip install pyinstaller==4.10
powershell -ExecutionPolicy Bypass -File packaging\build.ps1 -Python "C:\Python38-x64\python.exe" -Arch win64 -Version 1.0.1
powershell -ExecutionPolicy Bypass -File packaging\build.ps1 -Python "C:\Python38-x86\python.exe" -Arch win32 -Version 1.0.1Double Commander 的 5 类插件(WCX/WDX/WFX/WLX/DSX)都没有“给面板文件名重新着色”的接口; 本扩展包走的是与 DC 官方设置对话框完全相同的路线 —— 把「文件类型颜色」规则写进 DC 自己的配置文件,效果、兼容性与可撤销性和手工逐条添加完全一致。详见 docs/技术文档.md。
- 本项目以 MIT 许可证开源,见 LICENSE。
- 非官方项目:与 Double Commander 官方项目无隶属关系;“Double Commander” 名称与商标归其所有者。
- 工具只写入 DC 自己的配置文件(改前自动备份、原子替换),不写注册表、不联网;修改配置的风险由使用者自行评估。
