diff --git a/dot_config/nvim/Readme.md b/dot_config/nvim/Readme.md index b16eb1a..a331133 100644 --- a/dot_config/nvim/Readme.md +++ b/dot_config/nvim/Readme.md @@ -3,16 +3,33 @@ Yuan Neovim 備忘 ## 基本快速鍵 -重要鍵 +### 重要鍵 * leader key: `\` * window key: `ctrl+w` * move cursor: (方向鍵) -擴充自行設定的快速鍵 -* `F9`: NeoTree +### 擴充自行設定的快速鍵 +* ``: NeoTree +* `fT`: 叫出git status -編輯習慣(已經覆寫) -* +#### 預計設定 +* 看看你設定了哪些變數、函數,也可以快速跳轉 +* 可以回朔到開啟檔案以來的任何歷史,還會標出修改的地方 + +### 編輯習慣(已經覆寫) +* 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 diff --git a/dot_config/nvim/lua/config/options.lua b/dot_config/nvim/lua/config/options.lua index a3362d3..0fe4b13 100644 --- a/dot_config/nvim/lua/config/options.lua +++ b/dot_config/nvim/lua/config/options.lua @@ -23,6 +23,13 @@ vim.opt.scrolloff = 3 -- 捲動時保留 n 行彈性 require("config.listchars") -- 顯示行尾符號 vim.opt.list = true +-- 處理剪貼簿習慣對應(在Insert模式可使用慣用的快速鍵) +vim.opt.keymodel = "startsel" -- 啟用 Shift + 方向鍵選取功能 +vim.api.nvim_set_keymap('i', '', '"+pa', { noremap = true, silent = true }) -- Insert Mode 下的 Ctrl+V 貼上 +vim.api.nvim_set_keymap('v', '', '"+y', { noremap = true, silent = true }) -- Visual Mode 下的 Ctrl+C 複製 +vim.api.nvim_set_keymap('v', '', '"+d', { noremap = true, silent = true }) -- Visual Mode 下的 Ctrl+X 剪下 +vim.api.nvim_set_keymap('v', '', '"+p', { noremap = true, silent = true }) -- Visual Mode 下的 Ctrl+V 貼上 + -- 整行移動的快速鍵 vim.api.nvim_set_keymap('n', '', ':m .+1==', { noremap = true, silent = true }) vim.api.nvim_set_keymap('n', '', ':m .-2==', { noremap = true, silent = true }) @@ -43,7 +50,6 @@ vim.api.nvim_set_keymap('n', '', 'yyP', { noremap = true, silent = true -- Ctrl+Alt+Shift+方向鍵 複製整行並向下/向上貼上 vim.api.nvim_set_keymap('n', '', 'yyp', { noremap = true, silent = true }) vim.api.nvim_set_keymap('n', '', 'yyP', { noremap = true, silent = true }) --- Insert Mode 下的 Ctrl+Alt+Shift+方向鍵 複製整行並向下/向上貼上 vim.api.nvim_set_keymap('i', '', 'yypgi', { noremap = true, silent = true }) vim.api.nvim_set_keymap('i', '', 'yyPgi', { noremap = true, silent = true }) @@ -76,13 +82,6 @@ vim.api.nvim_set_keymap('i', '', 'O', { noremap = true, silent = tr vim.api.nvim_set_keymap('i', '', 'o', { noremap = true, silent = true }) vim.api.nvim_set_keymap('i', '', 'O', { noremap = true, silent = true }) -- xterm-256color 吃不到shift --- 處理剪貼簿習慣對應(在Insert模式可使用慣用的快速鍵) -vim.opt.keymodel = "startsel" -- 啟用 Shift + 方向鍵選取功能 -vim.api.nvim_set_keymap('i', '', '"+pa', { noremap = true, silent = true }) -- Insert Mode 下的 Ctrl+V 貼上 -vim.api.nvim_set_keymap('v', '', '"+y', { noremap = true, silent = true }) -- Visual Mode 下的 Ctrl+C 複製 -vim.api.nvim_set_keymap('v', '', '"+d', { noremap = true, silent = true }) -- Visual Mode 下的 Ctrl+X 剪下 -vim.api.nvim_set_keymap('v', '', '"+p', { noremap = true, silent = true }) -- Visual Mode 下的 Ctrl+V 貼上 - -- 啟用 Tab 縮排 vim.api.nvim_set_keymap('n', '', 'v>', { noremap = true, silent = true }) vim.api.nvim_set_keymap('n', '', 'v<', { noremap = true, silent = true })