HexViewer 是 Sublime Text 的第三方插件,非内置功能;需通过 Package Control 安装 facelessuser 版本,安装后用命令“HexViewer: View in Hex”打开二进制文件,支持大文件配置与只读十六进制查看。

Sublime Text 本身不支持直接以十六进制视图打开二进制文件,HexViewer 是一个第三方插件,不是 Sublime 内置功能 —— 这是很多人搜到“Sublime 内置 HexViewer”后踩的第一个坑。
如何确认 HexViewer 是否已安装
按下 Ctrl+Shift+P(Windows/Linux)或 Cmd+Shift+P(macOS)调出命令面板,输入 HexViewer。如果看到 HexViewer: View in Hex 或类似选项,说明已安装;若无任何匹配项,说明尚未安装。
- 不要在 Package Control 中搜索 “HexViewer 内置”——它根本不存在
- 官方插件仓库中唯一广泛使用的版本作者是
facelessuser,GitHub 项目名为HexViewer - 安装后需重启 Sublime 或至少重新加载插件(
Ctrl+Shift+P→Package Control: Satisfy Dependencies)
用 HexViewer 打开二进制文件的正确流程
直接双击打开 .bin、.exe、.png 等文件时,Sublime 默认会拒绝加载(显示空标签页或报错 Error loading file)。必须通过命令触发解析:
- 先用 Sublime 打开一个空白文件(或任意文本文件)
- 按
Ctrl+Shift+P→ 输入并选择HexViewer: View in Hex - 此时会弹出文件选择对话框,选中你的二进制文件(如
firmware.bin) - 成功后左侧显示十六进制字节(2列16进制值),右侧为 ASCII 解码(不可见字符显示为
.)
常见错误与绕过限制的方法
遇到 Unable to open file: invalid start byte 或直接无响应?大概率是文件过大或含非法编码前缀。HexViewer 默认对超 10MB 文件启用流式加载,但某些嵌入式固件头部含非标准字节会导致解析中断:
- 编辑
Preferences → Package Settings → HexViewer → Settings,添加:"max_file_size": 104857600
(单位字节,此处设为 100MB) - 若仍失败,尝试用
xxd -g1 yourfile.bin | subl -命令行预处理(需系统已装xxd) - 注意:HexViewer 不支持编辑十六进制内容,仅只读查看;想修改需用
HxD(Windows)或xxd + vim流程
替代方案:不用插件快速看 hex 头部
只是想确认文件 Magic Number 或前几十字节?不用装插件也能应急:
- 在终端执行:
head -c 64 yourfile.bin | xxd(Linux/macOS)或certutil -encodehex -f yourfile.bin stdout 4 | head -n 16(Windows) - 把输出复制粘贴进 Sublime 新建窗口,人工比对(比如
PK\x03\x04对应 ZIP,\x7fELF对应 ELF 可执行文件) - 这种做法避开了 Sublime 的二进制加载限制,也更轻量
HexViewer 的核心价值在于可视化对齐和滚动浏览,但它对文件格式无感知、不校验结构、也不支持搜索十六进制模式(比如搜 ff d8 ff 找 JPEG 起始)。真要分析协议或固件,终究得切到专用工具。










