深度科技报道
深度科技编辑部
近期在 GitHub 平台上备受瞩目的开源项目,是一款专为视觉障碍用户设计的十六进制编辑器。该编辑器自发布以来,仅用短短五天时间便吸引了超过2500个星标,而在最近24小时内,其星标数量更是激增了1600个。
十六进制编辑器是一种专门用于处理字节数据的软件工具,主要服务于程序员和系统管理员等专业人士。这类编辑器能够以十六进制格式展示和修改文件的二进制内容,同时提供用户友好的界面,使得编辑二进制数据变得更加便捷。对于需要深入操作二进制数据的用户群体来说,十六进制编辑器具有极高的实用价值,例如在游戏开发中,可以通过此类工具调整游戏内的特定参数。
市面上常见的十六进制编辑器包括 Bless Hex Editor、GNOME Hex Editor 以及 Okteta 等。与大多数编辑软件类似,用户对十六进制编辑器的核心需求包括强大的功能支持、高度的可定制性以及美观的界面设计。近期,GitHub 上推出了一款名为 ImHex 的十六进制编辑器,该工具上线仅5天便获得了2500个星标的支持。
项目地址:https://github.com/WerWolv/ImHex

十六进制编辑器 ImHex 的核心特性
项目开发者在其官方文档中详细列出了 ImHex 编辑器的各项功能特性。
功能亮点
- 十六进制视图模式
- 字节级补丁功能
- 补丁管理模块
- 字节特征复制工具
- 字节精确编辑
- 十六进制字符串处理
- 支持C、C++、c#、Rust、Python、Java 和 JavaScript等多种语言的数组格式
- ASCII-Art风格的十六进制展示
- HTML自包含div展示
- 字符串与十六进制搜索功能
- 彩色高亮显示
- 全局位置导航(从起始位置、结束位置及当前光标位置快速跳转)
- 类似C++的自定义语言语法高亮
- 基于MIME类型的自动文件加载
- 数组、指针、结构体、共用体、枚举、位段等数据类型支持,以及大小端格式处理
- 详细的错误提示、语法高亮与错误标记
- 数据导入功能
- Base64文件处理
- IPS和IPS32补丁支持
- 数据导出功能
- IPS和IPS32补丁支持
- 数据导出功能
- 数据检查器,支持多种数据类型解析(包括小端和大端格式)
- 高效的大型文件加载支持
- 字符串搜索功能
- 字符串复制工具
- demangled字符串复制
- 文件哈希算法支持
- 自定义初始值和多项式的CRC16与CRC32校验
- MD4与MD5哈希算法支持
- SHA-1、SHA-224、SHA-256、SHA-384、SHA-512等多种哈希算法支持
- 支持多种架构的反汇编器
- ARM32 (ARM、Thumb、Cortex-M、aarch32)架构支持
- ARM64架构支持
- MIPS (MIPS32、MIPS64、MIPS32R6、Micro)架构支持
- x86 (16位、32位、64位)架构支持
- PowerPC (32位、64位)架构支持
- Sparc架构支持
- SystemZ架构支持
- XCore架构支持
- M68K架构支持
- TMS320C64X架构支持
- M680X架构支持
- Ethereum架构支持
- 自定义视图模式
- 区域高亮显示
- 注释功能
- 数据分析工具
- 基于文件解析器和MIME类型的file magic识别
- 字节分布图
- 熵图
- 最大熵与平均熵计算
- 加密/压缩文件检测
- 实用工具集
- Itanium和MSVC demangler工具
- ASCII表
- 正则表达式替换功能
- 数学表达式评估器(计算器)
- 十六进制颜色选择器
- 模式语言和数学评估的速查表
- 夜间模式下的视网膜友好显示
界面设计
不同的编辑器拥有独特的视觉风格,越来越多的开发者倾向于采用黑色背景搭配彩色高亮显示的界面设计。ImHex正是符合这一趋势的编辑器:
编译指南
假设您使用的是Windows系统或Arch Linux系统,并且安装了支持C++20的mingw编译器(如GCC 10.2.0),那么您可以使用这些工具来编译ImHex。编译过程中所需的库都可以通过pacman包管理器获取,具体如下所示:
在成功安装上述库之后,您可以通过执行以下命令来构建ImHex:
该项目的开发者WerWolv是一位来自瑞士的21岁本科生,目前正在就读大学本科课程。
参考链接:
https://zhuanlan.zhihu.com/p/59119723
https://www.howtoing.com/best-hex-editors-for-linux