Vim.js 是一個使用 JavaScript 實作的 Vim 編輯器,不過實用性不高,只適合學習與研究使用。

Vim.js 是把傳統 Linux 上的 Vim 編輯器以 JavaScript 實作在一般的瀏覽器中,不過目前還在發展當中,還不是很穩定,而且這種編輯器大概只適合比較資深的 UNIX/Linux 使用者作為「娛樂」使用。


vimjs

由於真正 Vim 的功能實在太多了,如果將所有的功能都實作出來,會影響再往頁上執行的效率,所以 Vim.js 只包含了 small feature set(--with-features=small)與一些 normal set 裡面的功能而已,你可以使用 :version 來查看它所實作的功能。

這個專案基本上實用性不高,但是如果作為學習或研究的對象還算不錯,在它的 GitHub 網頁上有一段 Instructions for hackers 的說明,它告訴你如果要實作這樣的編輯器,應該要準備哪些東西(emscripten、node.js、streamline.js、closure 編譯器、GCC 編譯器與 cproto 等),以及應該具備哪些知識(Vim 的原始碼、JavaScript 與 HTML/CSS),參考別人發展專案所使用的工具與相關背景知識對於自己的軟體能力會有一定的幫助。