21 歲理工男開(kāi)源的這個(gè)編輯器火遍全球附面試資源
來(lái)自:機(jī)器之心
最近在 GitHub 上最火的項(xiàng)目是一個(gè)對(duì)視力友好的十六進(jìn)制編輯器,它上線僅 5 天就收獲了 2500 star,最近 24 小時(shí)漲了 1600 star 量。
十六進(jìn)制編輯器是用于編輯單個(gè)字節(jié)數(shù)據(jù)的軟件應(yīng)用程序,主要由程序員或系統(tǒng)管理員使用。
常規(guī)文本編輯器和十六進(jìn)制編輯器之間的區(qū)別在于常規(guī)編輯器表示文件的邏輯內(nèi)容,而十六進(jìn)制編輯器表示文件的物理內(nèi)容。十六進(jìn)制編輯器可以讓你以十六進(jìn)制的形式查看或編輯文件的二進(jìn)制數(shù)據(jù),并用較為友好的界面來(lái)編輯二進(jìn)制數(shù)據(jù)。對(duì)于需要處理二進(jìn)制數(shù)據(jù)的用戶,它非常受歡迎,例如使用十六進(jìn)制編輯器可以更改游戲中的部分設(shè)置。
常用的十六進(jìn)制編輯器有 Bless Hex Editor、GNOME Hex Editor、Okteta 等。和大多數(shù)編輯器一樣,人們對(duì)于十六進(jìn)制編輯器的要求包括功能強(qiáng)大、可定制性、界面美觀。近日,GitHub 上開(kāi)源了一款名為 ImHex 的十六進(jìn)制編輯器,上線 5 天,狂攬 2500 star。
項(xiàng)目地址:https://github.com/WerWolv/ImHex
十六進(jìn)制編輯器 ImHex
項(xiàng)目作者在 readme 文件中首先介紹了 ImHex 編輯器實(shí)現(xiàn)的功能特性。
特征
十六進(jìn)制視圖
字節(jié)補(bǔ)丁
補(bǔ)丁管理
復(fù)制字節(jié)作為特征
字節(jié)
十六進(jìn)制字符串
C、C++、 c#、 Rust、Python、Java 和 JavaScript 數(shù)組
ASCII-Art 十六進(jìn)制視圖
HTML 自包含 div
字符串和十六進(jìn)制搜索
彩色高亮顯示
從開(kāi)始、結(jié)束以及當(dāng)前光標(biāo)位置 goto
類似于 C++ 的自定義語(yǔ)言,用于突出顯示文件內(nèi)容
基于 MIME 類型的自動(dòng)加載
數(shù)組、指針、結(jié)構(gòu),共用體,枚舉,位段,使用聲明,大小端支持
有用的 error 信息,語(yǔ)法高亮顯示和 error 標(biāo)記
數(shù)據(jù)導(dǎo)入
Base64 文件
IPS 和 IPS32 補(bǔ)丁
數(shù)據(jù)導(dǎo)出
IPS 和 IPS32 補(bǔ)丁
數(shù)據(jù) Exporting
數(shù)據(jù)檢查器允許將數(shù)據(jù)解析為多種類型(小端和大端)
支持并能快速有效地加載大型文件
字符串搜索
復(fù)制字符串
復(fù)制 demangled 字符串
文件哈希支持
具有自定義初始值和多項(xiàng)式的 CRC16 和 CRC32
MD4, MD5
SHA-1, SHA-224, SHA-256, SHA-384, SHA-512
支持多種架構(gòu)的反匯編器
ARM32 (ARM, Thumb, Cortex-M, aarch32)
ARM64
MIPS (MIPS32, MIPS64, MIPS32R6, Micro)
x86 (16 bit, 32 bit, 64 bit)
PowerPC (32 bit, 64 bit)
Sparc
SystemZ
XCore
M68K
TMS320C64X
M680X
Ethereum
自定義視圖
區(qū)域突出顯示
注釋
數(shù)據(jù)分析
基于文件解析器和 MIME 類型的數(shù)據(jù)庫(kù)的 file magic
字節(jié)分布圖
熵圖
最大熵和平均熵
加密 / 壓縮文件檢測(cè)
實(shí)用工具
Itanium 和 MSVC demangler
ASCII 表
正則表達(dá)式替換
數(shù)學(xué)表達(dá)式評(píng)估器(計(jì)算器)
十六進(jìn)制顏色選擇器
為模式語(yǔ)言和數(shù)學(xué)評(píng)估內(nèi)置速查表
在深夜使用時(shí)對(duì)視網(wǎng)膜友好
界面美觀
每款編輯器都有自己的風(fēng)格,越來(lái)越多的開(kāi)發(fā)者青睞于黑色背景、彩色高亮顯示的界面風(fēng)格,ImHex 就是如此:
編譯
假設(shè)你在 Windows 或者 Arch Linux 中使用 mingw,需要兼容 C++20 的編輯器(例如 GCC 10.2.0)來(lái)編譯 ImHex。編譯 ImHex 需要的庫(kù)都可以在 pacman 包中找到,如下所示:
GLFW3 ( (sudo) pacman -S glfw ) libmagic, libgnurx, libtre, libintl, libiconv ( (sudo) pacman -S file ) libcrypto ( (sudo) pacman -S openssl ) capstone ( (sudo) pacman -S capstone ) libLLVMDemangle ( (sudo) pacman -S llvm llvm-libs ) nlohmann json ( (sudo) pacman -S nlohmann-json ) Python3 ( (sudo) pacman -S python3 ) All in one for Arch Linux: sudo pacman -S glfw file openssl capstone llvm llvm-libs nlohmann-json python3 All in one for Fedora: sudo dnf install cmake gcc-c++ capstone-devel glfw-devel glm-devel json-devel llvm-devel mesa-libGL-devel openssl-devel python-devel All in one for MinGW: pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-cmake mingw-w64-x86_64-make mingw-w64-x86_64-capstone mingw-w64-x86_64-glfw mingw-w64-x86_64-glm mingw-w64-x86_64-file mingw-w64-x86_64-llvm mingw-w64-x86_64-nlohmann-json mingw-w64-x86_64-openssl mingw-w64-x86_64-polly mingw-w64-x86_64-python
安裝完這些庫(kù)之后,運(yùn)行以下命令來(lái)構(gòu)建 ImHex:
mkdir build cd build cmake .. make -j
該項(xiàng)目的作者 WerWolv 來(lái)自瑞士,今年僅 21 歲,是一名在讀本科生。
參考鏈接:
https://zhuanlan.zhihu.com/p/59119723
https://www.howtoing.com/best-hex-editors-for-linux
附:網(wǎng)盤整理面試開(kāi)發(fā)筆記,必看內(nèi)容。
鏈接: https://pan.baidu.com/s/11NwCNq4WOWMpUFi9gQHYtQ 提取碼: vsau
到此這篇關(guān)于21 歲理工男開(kāi)源的這個(gè)編輯器火遍全球的文章就介紹到這了,更多相關(guān)開(kāi)源編輯器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
鴻蒙(HarmonyOS)實(shí)現(xiàn)隱私政策彈窗效果
但在HarmonyOS中,由于系統(tǒng)彈窗的顯示優(yōu)先級(jí)高于其他組件,即使跳轉(zhuǎn)到Web頁(yè)面,彈窗依然會(huì)顯示在最上層,下面給大家分享鴻蒙(HarmonyOS)實(shí)現(xiàn)隱私政策彈窗,感興趣的朋友跟隨小編一起看看吧2024-08-08基于Python和Java實(shí)現(xiàn)單詞計(jì)數(shù)(Word Count)
Spark框架也是MapReduce-like模型,采用“分治-聚合”策略來(lái)對(duì)數(shù)據(jù)分布進(jìn)行分布并行處理,本文就來(lái)利用Spark實(shí)現(xiàn)單詞統(tǒng)計(jì)的功能,需要的可以參考一下2023-05-05K8ssandra入門教程之Linux上部署K8ssandra到Kubernetes的過(guò)程
K8ssandra不僅幫助我們可以快速可靠地在Kubernetes上部署Cassandra,同時(shí)提供了許多組件,如監(jiān)控、備份、同步、訪問(wèn)等,這篇文章給大家介紹K8ssandra入門教程之Linux上部署K8ssandra到Kubernetes的過(guò)程,一起看看吧2021-10-10將WSL系統(tǒng)更換國(guó)內(nèi)源的方法(固定路徑+國(guó)內(nèi)鏡像源+詳細(xì)教程)
這篇文章主要介紹了將WSL系統(tǒng)更換國(guó)內(nèi)源的方法(固定路徑+國(guó)內(nèi)鏡像源+詳細(xì)教程),首先找到wsl鏡像源,替換鏡像源,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-10-102019-nCoV 全國(guó)新型肺炎疫情每日動(dòng)態(tài)趨勢(shì)可視圖
大家被新型冠狀病毒搞的人心慌慌,每天宅在家里那也去不了,今天小編給大家分享2019-nCoV 全國(guó)新型肺炎疫情每日動(dòng)態(tài)趨勢(shì)可視圖,需要的朋友可以參考下2020-02-02Notepad++文本比較插件Compare詳解(最新免費(fèi))
Notepad++是一款強(qiáng)大的文本編輯器,它提供了文件對(duì)比功能,可以幫助我們快速找出兩個(gè)文件之間的差異點(diǎn),這篇文章主要介紹了Notepad++文本比較插件Compare詳解(最新免費(fèi)),感興趣的朋友一起看看吧2024-01-01關(guān)于爬蟲(chóng)和反爬蟲(chóng)的簡(jiǎn)略方案分享
這篇文章主要給大家介紹了一些關(guān)于爬蟲(chóng)和反爬蟲(chóng)的簡(jiǎn)略方案的相關(guān)資料,文中介紹的非常詳細(xì),對(duì)大家理解和學(xué)習(xí)爬蟲(chóng)與反爬蟲(chóng)具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。2018-01-01Scala項(xiàng)目構(gòu)建工具sbt和IntelliJ IDEA環(huán)境配置詳解
這篇文章主要介紹了Scala項(xiàng)目構(gòu)建工具sbt和IntelliJ IDEA環(huán)境配置,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-10-10教你免費(fèi)做一個(gè)屬于自己穩(wěn)定有效的圖床-PicGo
由于現(xiàn)在很多寫作平臺(tái)都支持了Markdown語(yǔ)法,導(dǎo)致圖床用的人越來(lái)越多。這篇文章主要介紹了如何免費(fèi)做一個(gè)屬于自己穩(wěn)定有效的圖床-PicGo,需要的朋友可以參考下2020-01-01Prometheus + Grafana 構(gòu)建強(qiáng)大的監(jiān)控和數(shù)據(jù)可視化系統(tǒng)(最新推薦)
Prometheus?是一個(gè)時(shí)間序列數(shù)據(jù)庫(kù),但是,它不僅僅是一個(gè)時(shí)間序列數(shù)據(jù)庫(kù),它涵蓋了可以綁定的整個(gè)生態(tài)系統(tǒng)工具集及其功能,非常適合Kubernetes集群的監(jiān)控,這篇文章主要介紹了Prometheus + Grafana 構(gòu)建強(qiáng)大的監(jiān)控和數(shù)據(jù)可視化系統(tǒng),需要的朋友可以參考下2024-05-05