diff --git a/nvim/lua/config.lua b/nvim/lua/config.lua index a5dccb25..e3e68d7f 100644 --- a/nvim/lua/config.lua +++ b/nvim/lua/config.lua @@ -25,7 +25,7 @@ require'nvim-treesitter.configs'.setup{ -- Disable folds vim.g.nofoldenable = true --- + local lsp_installer = require("nvim-lsp-installer") lsp_installer.on_server_ready(function(server) @@ -346,6 +346,22 @@ vim.cmd[[function TrimWhiteSpace() '' endfunction]] +-- Search pattern across repository files +vim.cmd[[ +function! FzfExplore(...) + let inpath = substitute(a:1, "'", '', 'g') + if inpath == "" || matchend(inpath, '/') == strlen(inpath) + execute "cd" getcwd() . '/' . inpath + let cwpath = getcwd() . '/' + call fzf#run(fzf#wrap(fzf#vim#with_preview({'source': 'ls -1ap', 'dir': cwpath, 'sink': 'FZFExplore', 'options': ['--prompt', cwpath]}))) + else + let file = getcwd() . '/' . inpath + execute "e" file + endif +endfunction]] + +vim.cmd[[command! -nargs=* FZFExplore call FzfExplore(shellescape())]] + --Removes trailing spaces on save vim.cmd[[autocmd FileWritePre * call TrimWhiteSpace()]] vim.cmd[[autocmd FileAppendPre * call TrimWhiteSpace()]] diff --git a/nvim/lua/keybindings.lua b/nvim/lua/keybindings.lua index 557467d3..bc94e491 100644 --- a/nvim/lua/keybindings.lua +++ b/nvim/lua/keybindings.lua @@ -5,9 +5,7 @@ vim.g.mapleader = "," keymap('n', '', ':NvimTreeToggle', {}) -- Tab Shortcuts -keymap('n', '', ':tabnew', {}) -keymap('n', '', ':tabprevious', {}) -keymap('n', '', ':tabnext', {}) +keymap('n', '', ':tabnew', {}) keymap('n', '', ':tabprevious', {}) keymap('n', '', ':tabnext', {}) keymap('n', '', ':tabprevious', {}) keymap('n', '', ':tabnext', {}) @@ -16,8 +14,8 @@ keymap('n', '', ':tabnext', {}) keymap('n', '', ':wincmd h', {}) keymap('n', '', ':wincmd l', {}) -- open fzf -vim.cmd[[nnoremap fzf :silent :Files]] -keymap('n', '', ':Files', {}) +vim.cmd[[nnoremap fzf :silent :FZFExplore]] +keymap('n', '', ':FZFExplore', {}) -- open ripgrep vim.cmd[[nnoremap rg :silent :Rg]] @@ -72,4 +70,3 @@ vim.cmd[[noremap k (v:count == 0 ? 'gk' : 'k')]] -- Toggle English spellcheck with F11 vim.cmd[[nnoremap :set spell!]] vim.cmd[[inoremap :set spell!]] -