歡迎來到 Neovim 的第二份每月電子報,這個專案的夢想是成為我們都會喜歡的下一代文字編輯器。
在關於 預設 Neovim 設定 的討論中,提出了使用預設色彩配置的想法。後來啟動了一個 議題 來決定將使用哪種色彩配置。
最終決定為 Neovim 建立一個新的色彩配置會很棒。為此,Neovim 的協作者將舉辦一個競賽,允許提交色彩配置。經過一段時間,提交將會關閉,然後將啟動一個新的投票,讓社群選出獲勝者。
獲勝者將獲得獎金,他們的色彩配置將永遠被納入 Neovim 的發行版本中。
請隨時關注 Neovim Twitter,以獲知何時公布提交指南和流程。
有人 關切 Neovim 使用 Vim 的許可證。雖然 Vim 許可證仍然適用於原始的 Vim 程式碼,但新編寫的程式碼並未明確處理,並且可以重新授權。
社群決定使用 Apache 2.0。然後 更新 了許可證資訊,並要求所有貢獻者填寫 此文件,並將您的名字新增到 此 Wiki 頁面 來簽署一份 CLA (貢獻者授權協議)。
這表示如果您在切換到 Apache 2.0 *之前* 貢獻了程式碼,您的程式碼仍然受到舊的 Vim 許可證的約束。*除非* 您簽署 CLA,否則它不會成為 Apache 2.0 的一部分。
@tarruda 完成了 他的實作,提供了一個 channel_send_call
函數,允許在其他腳本引擎(例如 Python、Ruby 等)中執行程式碼。
正如 @tarruda 指出,程式碼在另一個程序中執行,會阻塞直到客戶端回應,有一個 3 秒的超時時間,並且呼叫堆疊限制為 20。
@tarruda 開啟了 一個拉取請求,其中提出了對他過去的一些工作進行各種修復和改進。這些變更針對了 jobs API、streams API 以及最後的 events API。所有這些過去的功能都在上個月的電子報中討論過。
這些變更包括能夠透過 streams 發送大量數據、為 msgpack 解析失敗添加程式碼,以及能夠鎖定一組事件來源。
在 Windows 上建置 Neovim 的能力一直很受歡迎,並且是 幾個月來的目標。整個討論可以在 這個議題 中查看。
@equalsraf 最近在嘗試使用 MinGW 建置 Neovim 時取得了 進展。
有關在其他平台上建置的協助,請務必查看 Wiki 上新建立的 建置 Neovim 頁面,以取得與編譯相關的所有資訊。
Garray.c 是來自 Vim 的資料結構,為編輯器提供了一個「可成長的陣列」。它過去一直是許多 拉取請求 的目標。
@philix 的 最新新增 提供了一種更簡單的方式來附加到陣列。雖然 garray
仍在改進中,但最終它將被更穩健的解決方案取代。
在一些清理過程中,一個名為 mch_libcall()
的函數被臨時刪除。它在 Vim 中透過使用 libcall()
函數呼叫,並被某些外掛程式使用。
開始 討論 關於它的臨時移除以及如何重新添加它以保持與 Vim 的相容性。@aktau 提出了一個解決方案,然後建立了一個 拉取請求,其中包含已合併的新變更。
在上個月的議題中,我們討論了 對 mch_stat
呼叫的變更。這個重構由 @stefan991 繼續 進行,以新增一個新的結構,該結構封裝了 libuv 的 uv_stat_t
的 st_dev
和 st_ino
。
Neovim 的貢獻者遍布世界各地。許多母語人士一直忙於更新其母語的翻譯。
已更新的翻譯包括 德語 和 巴西葡萄牙語。其他語言,如 西班牙語 和 瑞典語 也正在進行中。
@stefan991 自訂了 Doxygen 主題,使其樣式看起來與 Neovim.io 相似。然後,它被 添加到程式碼庫 中,以供未來建置使用。
有人 努力 將 vim_strncpy
替換為 strlcpy
,並且已成功合併。但是,這些變更產生了一些 影響。
作為回應,@aktau 建立了一個 主要議題 來協作處理該流程並討論前進的最佳方式。
引用 @philix 的話,他在 他的評論 中做了最好的總結
字串處理在文字編輯器中非常重要,而目前的程式碼庫沒有對字串處理進行良好的抽象(儘管我們一直在慢慢改進它)。在如此少的抽象(以及許多底層程式碼)下,可以完成這麼多工作真是一個奇蹟。
Neovim 的 開發文件 是由 Doxygen 自動產生的,目前正在 移至 neovim.io 網域的過程中。
除此之外,Neovim 的使用者文件也正在 移至該處。
為了協助該流程,Neovim 新任命的常駐自動機(又名機器人) @Marvim 將被設定為自動化該流程。只是不要 跟他談論人生。
如果您想協助支持開發,您可以使用比特幣在此處捐贈:1Evu6wPrzjsjrNPdCYbHy3HT6ry2EzXFyQ
,或在 Neovim Bountysource 頁面上支持團隊。
如果您是一位經驗豐富的開發人員,或者經驗不足但想學習,請瀏覽 GitHub 儲存庫 並查看 README、CONTRIBUTING 指南,以及最後的 Wiki 以了解更多資訊。
有許多協助的機會和許多事情要做。
您對這第二份電子報有任何回饋或建議嗎?請隨時透過 Neovim Twitter 與我們聯繫。
此外,請務必訂閱 RSS 提要,以隨時了解 Neovim 世界中發生的事情。下一份電子報將在八月的第一個星期五左右發布。
直到下次。 :wq
Neovim 是一個基於 Vim 的文字編輯器,專為 可擴展性 和 可用性 而設計,旨在鼓勵新的應用程式和 貢獻。
請瀏覽 #neovim:matrix.org 或 irc.libera.chat 上的 #neovim 與團隊聊天。