新增 packer.nvim 基本上手
parent
87574114a2
commit
7d7d974972
85
packer.nvim-%E5%9F%BA%E6%9C%AC%E4%B8%8A%E6%89%8B.md
Normal file
85
packer.nvim-%E5%9F%BA%E6%9C%AC%E4%B8%8A%E6%89%8B.md
Normal file
@ -0,0 +1,85 @@
|
||||
> 我目前只有用過vim的經驗,之前試過nvim,感覺差異很大,尤其是多了lua語言,設定檔架構也彈性很多但也導致有點不知道要怎麼上手。> > 如果要無痛上手,當然會考慮vim-plug。但是想說既然打算把nvim當作重新開始,想直接試試最好用也是最主流的套件管理器(主要還是希望讓大部份的教學能照著做,因為光是重學nvim的負擔就不小,更何況還要對沒提供對應的套件管理程式額外做步驟上的轉換)。
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
如果你希望無痛上手 Neovim 並選擇最主流且高效的套件管理器,建議直接使用 **[packer.nvim](https://github.com/wbthomason/packer.nvim)**。它是目前 Neovim 社群中最受歡迎的套件管理工具之一,並且大多數教學與插件都支援它。
|
||||
|
||||
以下是使用 `packer.nvim` 的簡單上手步驟:
|
||||
|
||||
---
|
||||
|
||||
### 1. 安裝 `packer.nvim`
|
||||
在終端機中執行以下指令,將 `packer.nvim` 安裝到 Neovim 的插件目錄中:
|
||||
|
||||
```bash
|
||||
git clone --depth 1 https://github.com/wbthomason/packer.nvim ~/.local/share/nvim/site/pack/packer/start/packer.nvim
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 2. 建立 Neovim 的設定檔
|
||||
Neovim 的設定檔預設位於 `~/.config/nvim/init.lua`。如果你還沒有這個檔案,可以建立一個:
|
||||
|
||||
```bash
|
||||
mkdir -p ~/.config/nvim
|
||||
touch ~/.config/nvim/init.lua
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 3. 初始化 `packer.nvim`
|
||||
在 `init.lua` 中加入以下內容,這是 `packer.nvim` 的基本設定:
|
||||
|
||||
```lua
|
||||
-- 自動安裝 packer.nvim
|
||||
local ensure_packer = function()
|
||||
local fn = vim.fn
|
||||
local install_path = fn.stdpath('data') .. '/site/pack/packer/start/packer.nvim'
|
||||
if fn.empty(fn.glob(install_path)) > 0 then
|
||||
fn.system({ 'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path })
|
||||
vim.cmd([[packadd packer.nvim]])
|
||||
return true
|
||||
end
|
||||
return false
|
||||
end
|
||||
|
||||
local packer_bootstrap = ensure_packer()
|
||||
|
||||
-- 初始化插件
|
||||
require('packer').startup(function(use)
|
||||
use 'wbthomason/packer.nvim' -- packer 自身
|
||||
use 'nvim-lua/plenary.nvim' -- 常用的 Lua 函式庫
|
||||
use 'nvim-telescope/telescope.nvim' -- 模糊搜尋工具
|
||||
use 'nvim-treesitter/nvim-treesitter' -- 語法高亮與解析器
|
||||
use 'neovim/nvim-lspconfig' -- LSP 支援
|
||||
use 'hrsh7th/nvim-cmp' -- 自動補全引擎
|
||||
use 'hrsh7th/cmp-nvim-lsp' -- LSP 的補全來源
|
||||
use 'L3MON4D3/LuaSnip' -- Snippet 引擎
|
||||
use 'saadparwaiz1/cmp_luasnip' -- LuaSnip 的補全來源
|
||||
use 'nvim-lualine/lualine.nvim' -- 狀態列
|
||||
use 'kyazdani42/nvim-web-devicons' -- 圖示支援
|
||||
use 'kyazdani42/nvim-tree.lua' -- 檔案總管
|
||||
|
||||
-- 如果是第一次安裝 packer,則自動同步插件
|
||||
if packer_bootstrap then
|
||||
require('packer').sync()
|
||||
end
|
||||
end)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 4. 安裝插件
|
||||
啟動 Neovim,執行以下指令來安裝所有插件:
|
||||
|
||||
```vim
|
||||
:PackerSync
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 5. 開始使用
|
||||
完成上述步驟後,你就可以開始使用 Neovim 了!`packer.nvim` 的設定檔是用 Lua 編寫的,這與 Neovim 的現代化設計相符,並且大多數教學都會提供對應的 `packer.nvim` 配置。
|
||||
|
||||
如果你需要進一步的教學或插件推薦,可以隨時詢問!
|
||||
|
||||
找到 1 種授權類型的類似代碼
|
Loading…
x
Reference in New Issue
Block a user