
Полнофункциональный HexEditor, совместимый с Linux/Windows/MacOS
Этот проект создан с целью разработки легкого, но полезного инструмента. Причина в том, что существующие hex-редакторы имеют различные ограничения (например, слишком много зависимостей, отсутствие цветовой разметки hex и т.д.).

Этот проект основан на движках qhexedit2, capstone и keystone. Новые функции могут быть добавлены в будущем, приветствуются PR.
CTRL + F]CTRL + B]CTRL + C и CTRL + V]CTRL + Space]Delete или CTRL + D]CTRL + Z и CTRL + Y]CTRL + S]CTRL + G]INS]CTRL + N]CTRL + T]F5]F1]F2]F3]F4]F4]CTRL + Вверх/Вниз или CTRL + -/+)Fhex может загружать при запуске файл конфигурации (из ~/fhex/config.json) в формате JSON со списком строк или байтов для подсветки и комментарием/меткой для добавления рядом с совпадениями.
Примеры:
{
"PatternMatching":
[
{
"string" : "://www.",
"color" : "rgba(250,200,200,50)",
"message" : "Найден url"
},
{
"bytes" : "414243",
"color" : "rgba(250,200,200,50)",
"message" : "Найдено ABC"
}
]
}
Для активации сопоставления шаблонов нажмите CTRL + P
В конце Fhex также покажет список смещений со всеми ссылками на результаты.
Примечание: Метки с комментариями добавляются только в том случае, если окно развернуто на весь экран; если метки отображаются некорректно, попробуйте запустить сопоставление шаблонов еще раз.
Fhex имеет функцию построения диаграммы загруженного двоичного файла (Примечание: Для компиляции проекта теперь также требуется qt5-charts, установленный в системе).
Диапазон оси Y составляет от 0 до 255 (в hex 0x0 и 0xff, т.е. значения байтов). Диапазон оси X — от 0 до размера файла.
Диаграмма отображает значения байтов двоичного файла и позволяет сосредоточиться только на соответствующих разделах. Например, если в двоичном файле есть область, заполненная нулевыми байтами, вы можете легко обнаружить ее на диаграмме.
Проект имеет следующие зависимости: qt5-charts (пакет: libqt5charts5-dev в debian/ubuntu), capstone (опционально) и keystone (опционально).
В Linux вы можете проверить наличие обязательной библиотеки с помощью ldconfig -p | grep -i qt5charts
По умолчанию Fhex компилируется с профилем MINIMAL, что означает отсутствие включения capstone и keystone. Вы можете изменить эту опцию, удалив соответствующую строку из fhex.pro.
Для сборки Fhex в Linux выполните следующие команды:
mkdir build
cd build
qmake ..
make -j$(nproc)
GPL-3