Yuan Neovim 備忘 === ## 依賴的套件 * tree-sitter * tree-sitter-bash * tree-sitter-cli * imagemagick * ueberzugpp ## 基本快速鍵 ### 重要鍵 * leader key: `\` * window key: `ctrl+w` * move cursor: (方向鍵) ### 擴充自行設定的快速鍵 * `` 可以回朔到開啟檔案以來的任何歷史,還會標出修改的地方 * ``: NeoTree: 查看已經開啟的檔案 * ``: NeoTree * ``: git status * `fT`: 浮動NeoTree * `fB`: 已開啟的檔案 #### 預計設定 * 看看你設定了哪些變數、函數,也可以快速跳轉 ### 編輯習慣(已經覆寫) * shift+方向鍵(傳統): 選取文字(傳統習慣) * PS. 不能用jk是因為 shift+j shift+k有被其他功能綁定,不覆寫是想順便習慣vim用法 * alt+方向鍵(傳統/jk):移動整行 * ctrl+alt+shaft+方向鍵(傳統/jk):向上/向下複製整行 * tab縮排(含輸入模式的shift+tab傳統習慣對應) #### 剪貼簿 * 輸入模式 * ctrl+v: 貼上 * 選取模式 * ctrl+x: 剪下 * ctrl+c: 複製 * ctrl+v: 取代貼上 ## 基本Command * :Neotree float git_status git_base=main * :verbose map * echo getchar() ## 資料夾結構 ``` dot_config/nvim ├── init.vim #主要設定進入點 傳統vim設定檔 (傳統語法兼容用) ├── lua │ ├── init.lua #主要設定進入點 新式給nvim專用設定 │ ├── config │ │ ├── gui.lua │ │ ├── lazy.lua │ │ └── options.lua │ └── plugins │ └── example.lua #LazyNvim給的範例,已經被第一段截斷掉,所以此腳本將不會執行 └── Readme.md ``` ## 代找外掛 * Align * ## neo-tree ``` { "", "Neotree toggle", desc = "NeoTree" }, { "e", "Neotree reveal" }, { "ft", "Neotree toggle", desc = "NeoTree" }, { "fT", "Neotree float", desc = "NeoTree Float" }, { "fF", "Neotree filesystem float", desc = "NeoTree Filesystem Float" }, { "fG", "Neotree git_status float", desc = "NeoTree Git Status Float" }, { "fB", "Neotree buffers float", desc = "NeoTree Buffers Float" } ``` 在當前NeoTree視窗 * `P`: 預覽開關