新增 lazy.nvim 與 packer.nvim 使用評估
parent
f012c46af2
commit
0676e23eb3
@ -0,0 +1,78 @@
|
||||
> 因為我是nvim新手,其實還不太曉得lazy.nvim有什麼實質上的好處。
|
||||
>
|
||||
> 2. 配置方式:比較起來,我反而還比較習慣packer.nvim的語法,而且和我平常寫PHP, nodejs, python定義套件的時候語法比較接近。
|
||||
> 3. 效能:因為我完全是nvim新手,所以對於lazy.nvim的效能優化還不太了解。
|
||||
> 4. 社群支持:目前看起來lazy.nvim的社群支援好像偏少,反而vim.plug還比較多。而且我照著lazy.nvim官方教學一步步照做,都還會出錯。官方範例有 `{ import = "plugins" },` 卻沒提到還要建立空檔案,搞到我還要問AI和爬文才知道。
|
||||
> 5. 適合的用戶:我還在評估中,要重新開始就直接碰lazy.nvim好?還是packer.nvim比較容易上手?有點擔心lazy.nvim會浪費太多學習時間,又擔心packer.nvim之後會不好轉換。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
根據你的情況與疑問,以下是針對 **`lazy.nvim`** 和 **`packer.nvim`** 的進一步分析與建議:
|
||||
|
||||
---
|
||||
|
||||
### **1. 配置方式**
|
||||
- **`lazy.nvim`** 的配置方式更現代化,專注於條件載入與效能優化,但對新手來說可能有點陌生,尤其是需要建立額外的檔案(如 `plugins` 資料夾)來進行插件管理。
|
||||
- **`packer.nvim`** 的語法更接近傳統的插件管理器,對於熟悉 `vim-plug` 或其他語言(如 PHP、Node.js)的用戶來說更直觀。
|
||||
|
||||
**建議**:如果你更習慣類似 `packer.nvim` 的語法,可以先嘗試 `packer.nvim`,等熟悉 Neovim 的 Lua 配置後再考慮轉換到 `lazy.nvim`。
|
||||
|
||||
---
|
||||
|
||||
### **2. 效能**
|
||||
- **`lazy.nvim`** 的效能優化是其核心賣點,特別是啟動時間的減少。它內建了延遲載入(lazy loading)功能,並且可以根據事件、檔案類型、命令等條件載入插件。
|
||||
- **`packer.nvim`** 雖然也支援延遲載入,但需要手動配置,且效能優化不如 `lazy.nvim` 自動化。
|
||||
|
||||
**建議**:如果效能是你的主要考量,`lazy.nvim` 是更好的選擇。但如果你目前對效能的需求不高,`packer.nvim` 也完全足夠。
|
||||
|
||||
---
|
||||
|
||||
### **3. 社群支持**
|
||||
- **`lazy.nvim`** 是 Neovim 社群中的新趨勢,越來越多的教學與配置範例採用它,但目前的資源仍然比不上 `packer.nvim` 或 `vim-plug`。
|
||||
- **`packer.nvim`** 已經存在多年,穩定且成熟,大量現有的教學與插件配置仍然基於它。
|
||||
|
||||
**建議**:如果你希望有更多現成的教學與範例可以參考,`packer.nvim` 可能更適合你。
|
||||
|
||||
---
|
||||
|
||||
### **4. 適合的用戶**
|
||||
- **`lazy.nvim`** 適合希望從頭開始配置 Neovim,並追求效能最佳化的用戶。
|
||||
- **`packer.nvim`** 適合從 Vim 過渡到 Neovim,或希望穩定且易於上手的用戶。
|
||||
|
||||
**建議**:如果你對學習曲線有顧慮,`packer.nvim` 是更穩妥的選擇。等你熟悉 Neovim 的 Lua 配置後,再考慮轉換到 `lazy.nvim`。
|
||||
|
||||
---
|
||||
|
||||
### **5. 轉換的難度**
|
||||
- **從 `packer.nvim` 轉換到 `lazy.nvim`** 並不困難,因為兩者的配置邏輯相似,只是語法略有不同。
|
||||
- 如果你未來希望切換到 `lazy.nvim`,可以逐步將插件配置轉移,而不需要完全重寫。
|
||||
|
||||
---
|
||||
|
||||
### **總結建議**
|
||||
- 如果你希望快速上手,並且更習慣傳統的語法,選擇 **`packer.nvim`**。
|
||||
- 如果你願意投入時間學習,並希望追求效能最佳化,選擇 **`lazy.nvim`**。
|
||||
|
||||
---
|
||||
|
||||
### **補充:如何解決 `lazy.nvim` 的學習曲線問題**
|
||||
如果你決定嘗試 `lazy.nvim`,以下是一些建議來降低學習曲線:
|
||||
1. **建立必要的檔案結構**:
|
||||
- 在 `~/.config/nvim/lua/plugins/` 資料夾中建立插件配置檔案,例如 `init.lua`。
|
||||
- 例如:
|
||||
```lua
|
||||
-- filepath: ~/.config/nvim/lua/plugins/init.lua
|
||||
return {
|
||||
{ "nvim-treesitter/nvim-treesitter", build = ":TSUpdate" },
|
||||
{ "nvim-telescope/telescope.nvim", dependencies = { "nvim-lua/plenary.nvim" } },
|
||||
}
|
||||
```
|
||||
|
||||
2. **參考官方文件與範例**:
|
||||
- [lazy.nvim 官方文件](https://github.com/folke/lazy.nvim)
|
||||
- [Neovim 社群配置範例](https://github.com/nvim-lua)
|
||||
|
||||
3. **逐步學習**:
|
||||
- 從簡單的插件開始,逐步添加更多功能,避免一次配置過多插件。
|
||||
|
||||
如果你需要具體的配置範例或幫助,隨時可以詢問!
|
Loading…
x
Reference in New Issue
Block a user