Vis 的目標是成為一個現代的、無遺留問題的、簡單而高效的編輯器,結合了 vi(m) 和 sam 的優點。
它透過對多個遊標/選擇的內建支援擴展了 vi 的模式編輯,並將其與 sam 基於結構正則表達式的命令語言結合。
它是一個通用編輯器,具有良好的 Unicode 支持,可以處理任意文件,包括大型、二進位或單行文件。
使用Parsing Expression Grammars提供了高效的語法高亮,可以方便地使用Lua以LPeg的形式表達。
編輯器核心是用合理數量的乾淨(您的情況可能會有所不同)、現代且無遺留的 C 程式碼編寫的,使其能夠在資源有限的環境中運行。該實現應該易於破解並鼓勵實驗。還有一個用於進程內擴充的 Lua API。
Vis 力求簡單,專注於其核心任務:高效率的文字管理。剪貼簿和有向圖處理以及模糊文件開啟對話方塊均由獨立實用程式提供。現有計劃使用客戶端/伺服器架構,將視窗管理委託給您的視窗系統或最喜歡的終端多工器。
其目的不是與 vi(m) 逐一錯誤相容。反而,
我們的目標是基於優雅的設計和簡潔的實現提供更強大的編輯功能。
為了建置 vis,您需要一個 C99 編譯器、一個 POSIX.1-2008 相容環境以及:
假設滿足這些依賴關係,則執行:
$ ./configure && make && sudo make install
預設情況下, configure
腳本將嘗試使用pkg-config(1)
自動偵測對 Lua 的支援。請參閱configure --help
以取得支援選項的清單。您也可以手動調整產生的config.mk
檔案。
或簡單地使用發行版提供的軟體包之一。
最終使用者文件可以在vis(1)
手冊頁和 Wiki 中找到。請閱讀常見問題以了解常見問題。了解分別與sam(1)
和vim(1)
相比的一些差異。
也提供 C API 和 Lua API 文件。
一些不會實現的功能:
#ifdef
混亂貢獻的方式很多,以下是一些想法:
:help
輸出查看開發者概述以開始使用,並隨時在 libera 上的#vis-editor
IRC 頻道中提問(透過瀏覽器加入)。