Ox是高級文本編輯器 具有由稱為“ Curlpipe”的英國程序員開發的內置IDE式功能。
它是使用ANSI轉義序列以Rust編寫的。 作者認為,Ox通過提供各種工具來加速和促進編程來幫助開發人員進行編碼,並且是完全輕量級的替代方案,因為與“ VS Code和JetBrains”之類的編輯器不同,Ox佔用的資源更少。
作者建議,目前這只是一個個人項目 並且您還沒有準備好替換現有工具。 Ox在終端機上工作,並在Linux和macOS等平台上工作, 但由於缺少良好的命令行,它不能直接在Windows上運行(如果使用WSL,則可以運行)。
“文本編輯器很多,每個都有其缺陷。 我希望有一個克服許多負擔和問題的文本編輯器,”開發人員說。
根據Curlpipe的說法,Ox是“超級”最小的,其目標是使用盡可能少的依賴項,從而縮短構建時間並降低破損風險。
它由Rust,Termion(Rust庫),Unicode-rs,Clap(命令行參數解析器),Regex,Ron(類似於Rust語法的簡單配置格式),Serde(用於序列化和反序列化Rust數據的框架)構建有效和通用的結構)和Shellexpand(單個依賴項庫,允許對字符串執行類似shell的擴展)。
此外,Curlpipe補充說 Ox不基於任何其他編輯器,並且是從頭開始構建的,沒有任何基礎。 在該項目的GitHub存儲庫中,我們可以看到Ox具有某些最受歡迎的編輯器的功能,尤其是在Linux上,從而力求做到最好。 以下是作者竊取了一個或多個概念的文本編輯器的列表:
- Vim的: 提供插件系統以添加功能,因為它非常少,默認情況下僅提供基本的文本編輯功能。 它是完整的,並且具有自己的編程語言來配置和編寫插件。 它具有快速的學習曲線,因為它是“模式”文本編輯器,具有用於編輯文本的特殊模式。 根據Curlpipe的說法,Ox比Vim更易於使用,因為它沒有可重新定向鍵盤的模式,但是它採用了僅鍵盤編輯器的想法,之後可以充當IDE。
- 納米: 一個易於學習的文本編輯器,具有直觀的鍵盤快捷鍵(如 Ctrl + S)。Ox 借鑒了該編輯器的鍵盤快捷鍵的想法,它們很容易記住。
微型-這是一個使用Lua編程語言編程的插件系統。 據Ox開發人員說,正是Micro使他有了增加鼠標功能和其他功能的想法。 - Emacs: 由於Emacs可以自由修改和更改源代碼,因此今天仍在積極使用。 因此,根據Curlpipe的說法,Ox從Emacs獲得了自定義和可擴展性的想法,並創建了一個配置系統,您可以在其中更改編輯器的顏色和外觀。
- 熙: 也是用 Rust 編寫的文本編輯器,但目前它純粹是一個後端。 Curlpipe 表示,他決定讓 Ox 既是前端又是後端,因為 Xi 有很多前端,但大多數都是碎片化的,缺乏很多功能。
- 紀郎: 是用Rust編寫的文本編輯器,它添加了諸如Unicode支持,更好的顏色匹配以及調整大小之類的功能。 Ox採納了Kiro的改進思想,但是以不同的方式實施了它們。 Kiro的源代碼在某些方面似乎也很先進,Curlpipe傾向於使Ox盡可能簡單。