From 7031bb7e1ac3c26c3e2837b10805c34d399de1fd Mon Sep 17 00:00:00 2001 From: Hsieh Chin Fan Date: Thu, 4 Jul 2024 14:00:41 +0800 Subject: Update --- vim/init/basic.vim | 4 ++-- vim/init/keymaps.vim | 7 +++++-- vim/lazy.lua | 2 ++ vim/lua/configs/telescope.lua | 11 ++++++++++ vim/lua/mappings.lua | 8 +++----- vim/lua/plugins/init.lua | 47 ++++++++++++++++++++++++------------------- 6 files changed, 49 insertions(+), 30 deletions(-) (limited to 'vim') diff --git a/vim/init/basic.vim b/vim/init/basic.vim index 945c134..cdb5210 100644 --- a/vim/init/basic.vim +++ b/vim/init/basic.vim @@ -108,7 +108,7 @@ function! ToggleQuit() echo message endfunction -nnoremap gl :call ToggleQuit() +nnoremap gl :call ToggleQuit() " Simply exit when closing the last buffer @@ -117,7 +117,7 @@ function! Bye() if g:quitVimWhenPressingCtrlC :silent! quit else - :echo "Press gl to allow quit with " + :echo "Press gl to allow quit with " endif else :bdelete diff --git a/vim/init/keymaps.vim b/vim/init/keymaps.vim index 26a3787..048b737 100644 --- a/vim/init/keymaps.vim +++ b/vim/init/keymaps.vim @@ -83,10 +83,13 @@ vnoremap , :terminal " Toggle paste mode on and off map pp :setlocal paste! -" Switch CDW to root git directory -nnoremap cdg :execute 'cd' fnameescape(fnamemodify(finddir('.git', escape(expand('%:p:h'), ' ') . ';'), ':h')):pwd " Switch CWD to the directory of the open buffer nnoremap cd :cd %:p:h:pwd +" Switch CDW to root git directory +nnoremap cdg :execute 'cd' fnameescape(fnamemodify(finddir('.git', escape(expand('%:p:h'), ' ') . ';'), ':h')):pwd +" alias for cd +nnoremap cd.. :cd .. :pwd +nnoremap cd... :cd ../.. :pwd " Move one line up and down nnoremap ddp diff --git a/vim/lazy.lua b/vim/lazy.lua index ebe7766..148592a 100644 --- a/vim/lazy.lua +++ b/vim/lazy.lua @@ -1,3 +1,5 @@ +-- This RCfile is based on Lazy.nvim, and apply Nvchad config + vim.g.mapleader = "," vim.g.base46_cache = vim.fn.stdpath "data" .. "/nvchad/base46/" diff --git a/vim/lua/configs/telescope.lua b/vim/lua/configs/telescope.lua index 6efa391..08c4d10 100644 --- a/vim/lua/configs/telescope.lua +++ b/vim/lua/configs/telescope.lua @@ -20,6 +20,9 @@ return { -- other layout configuration here preview_cutoff = 0, }, + file_ignore_patterns = { + "node_modules" + }, }, pickers = { buffers = { @@ -40,6 +43,13 @@ return { }, extensions_list = {}, extensions = { + fzf = { + fuzzy = true, -- false will only do exact matching + override_generic_sorter = true, -- override the generic sorter + override_file_sorter = true, -- override the file sorter + case_mode = "smart_case", -- or "ignore_case" or "respect_case" + -- the default case_mode is "smart_case" + }, aerial = { -- Display symbols as .. show_nesting = { @@ -50,6 +60,7 @@ return { }, }, on_attach = function() + require("telescope").load_extension("fzf") require("telescope").load_extension("aerial") end } diff --git a/vim/lua/mappings.lua b/vim/lua/mappings.lua index ad4824b..e9a20f5 100644 --- a/vim/lua/mappings.lua +++ b/vim/lua/mappings.lua @@ -181,8 +181,6 @@ vim.keymap.set('n', '', ':HopChar1') -- [ Configure vim-surround ] vim.cmd('vmap s S') --- [ Aerial ] -vim.keymap.set("n", "{", "AerialPrev", {}) -vim.keymap.set("n", "}", "AerialNext", {}) -vim.keymap.set("n", "a", "Telescope aerial") -vim.keymap.set("n", "", function() require("aerial").toggle({ direction = "left" }) end) +-- [ Aerial ]"" "AerialNext", {}) +vim.keymap.set("n", "gL", "Telescope aerial") +vim.keymap.set("n", "gl", function() require("aerial").toggle({ direction = "left" }) end) diff --git a/vim/lua/plugins/init.lua b/vim/lua/plugins/init.lua index a0a972c..8c7a049 100644 --- a/vim/lua/plugins/init.lua +++ b/vim/lua/plugins/init.lua @@ -53,27 +53,27 @@ return { 'lewis6991/gitsigns.nvim', opts = function() return { - -- See `:help gitsigns.txt` - signs = { - add = { text = '+' }, - change = { text = '~' }, - delete = { text = '_' }, - topdelete = { text = '‾' }, - changedelete = { text = '~' }, - }, - on_attach = function(bufnr) - local gs = require('gitsigns') - vim.keymap.set('n', 'gp', gs.prev_hunk, { buffer = bufnr, desc = '[G]o to [P]revious Hunk' }) - vim.keymap.set('n', 'gn', gs.next_hunk, { buffer = bufnr, desc = '[G]o to [N]ext Hunk' }) - vim.keymap.set('n', 'hp', gs.preview_hunk, { buffer = bufnr, desc = '[P]review [H]unk' }) - vim.keymap.set('n', 'hd', gs.diffthis, { buffer = bufnr, desc = '[h]unk [d]iff' }) - vim.keymap.set('n', 'hD', function() gs.diffthis('~') end, - { buffer = bufnr, desc = '[h]unk [d]iff for ~' }) - -- vim.keymap.set("n", "gb", gs.blame_line{full=true}, { desc = "Git Blame" }) - vim.keymap.set("n", "gb", gs.toggle_current_line_blame, { desc = "Blame Line" }) - vim.keymap.set('v', 'hr', gs.reset_hunk, { buffer = bufnr, desc = '[h]unk [r]eset' }) - end - } + -- See `:help gitsigns.txt` + signs = { + add = { text = '+' }, + change = { text = '~' }, + delete = { text = '_' }, + topdelete = { text = '‾' }, + changedelete = { text = '~' }, + }, + on_attach = function(bufnr) + local gs = require('gitsigns') + vim.keymap.set('n', 'gp', gs.prev_hunk, { buffer = bufnr, desc = '[G]o to [P]revious Hunk' }) + vim.keymap.set('n', 'gn', gs.next_hunk, { buffer = bufnr, desc = '[G]o to [N]ext Hunk' }) + vim.keymap.set('n', 'hp', gs.preview_hunk, { buffer = bufnr, desc = '[P]review [H]unk' }) + vim.keymap.set('n', 'hd', gs.diffthis, { buffer = bufnr, desc = '[h]unk [d]iff' }) + vim.keymap.set('n', 'hD', function() gs.diffthis('~') end, + { buffer = bufnr, desc = '[h]unk [d]iff for ~' }) + -- vim.keymap.set("n", "gb", gs.blame_line{full=true}, { desc = "Git Blame" }) + vim.keymap.set("n", "gb", gs.toggle_current_line_blame, { desc = "Blame Line" }) + vim.keymap.set('v', 'hr', gs.reset_hunk, { buffer = bufnr, desc = '[h]unk [r]eset' }) + end + } end, }, @@ -173,6 +173,11 @@ return { end, }, + { + 'nvim-telescope/telescope-fzf-native.nvim', + build = 'cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release && cmake --build build --config Release' + }, + { "nvim-treesitter/nvim-treesitter", dependencies = { -- cgit v1.2.3-70-g09d2