From e7f569e938cfd4b2748a6aa9321245bee62fc514 Mon Sep 17 00:00:00 2001 From: Nikos Papadakis Date: Wed, 14 Jun 2023 12:30:11 +0300 Subject: [PATCH] nvim --- fish/dot-config/fish/config.fish | 1 + .../nvim/after/plugin/lspconfig.lua | 13 +----- .../nvim/after/plugin/telescope.lua | 42 +++++++++++++++--- nvim/dot-config/nvim/init.lua | 3 ++ nvim/dot-config/nvim/lua/my/keymaps.lua | 17 +++++++ nvim/dot-config/nvim/lua/my/plugins.lua | 8 ++-- nvim/dot-config/nvim/spell/en.utf-8.add.spl | Bin 1186 -> 1283 bytes 7 files changed, 61 insertions(+), 23 deletions(-) diff --git a/fish/dot-config/fish/config.fish b/fish/dot-config/fish/config.fish index 125d6da..a95da1d 100644 --- a/fish/dot-config/fish/config.fish +++ b/fish/dot-config/fish/config.fish @@ -23,3 +23,4 @@ set -x -g PATH $CARGO_HOME/bin $RUSTUP_HOME/bin $HOME/.local/bin $PATH test (command -v fnm) && fnm env | source test (command -v zoxide) && zoxide init fish | source +test -e /opt/asdf-vm/asdf.fish && source /opt/asdf-vm/asdf.fish diff --git a/nvim/dot-config/nvim/after/plugin/lspconfig.lua b/nvim/dot-config/nvim/after/plugin/lspconfig.lua index def83de..92c5b7e 100644 --- a/nvim/dot-config/nvim/after/plugin/lspconfig.lua +++ b/nvim/dot-config/nvim/after/plugin/lspconfig.lua @@ -4,8 +4,6 @@ if not ok then return end -local nmap = require("my.utils").nmap - local border = { { "┌", "FloatBorder" }, { "─", "FloatBorder" }, @@ -60,12 +58,7 @@ local format_handler = function(err, result, ctx) end local on_attach = function(client, bufnr) - nmap("r", vim.lsp.buf.rename, "Rename", bufnr) - nmap("cf", vim.lsp.buf.format, "Format document", bufnr) - nmap("ca", vim.lsp.buf.code_action, "Code actions", bufnr) - nmap("ci", vim.lsp.buf.implementation, "Go to implementation", bufnr) - nmap("D", vim.lsp.buf.type_definition, "Go to type definition", bufnr) - nmap("gr", "Telescope lsp_references", "View references", bufnr) + require("my.keymaps").lsp_keymaps(client, bufnr) if client.server_capabilities.completionProvider then vim.api.nvim_buf_set_option(bufnr, "omnifunc", "v:lua.vim.lsp.omnifunc") @@ -75,10 +68,6 @@ local on_attach = function(client, bufnr) vim.api.nvim_buf_set_option(bufnr, "tagfunc", "v:lua.vim.lsp.tagfunc") end - if client.server_capabilities.hoverProvider then - nmap("K", vim.lsp.buf.hover, "LSP hover", bufnr) - end - -- Highlight on cursor hold if client.server_capabilities.documentHighlightProvider then vim.api.nvim_create_autocmd({ "CursorHold" }, { diff --git a/nvim/dot-config/nvim/after/plugin/telescope.lua b/nvim/dot-config/nvim/after/plugin/telescope.lua index 0b8310f..6299f00 100644 --- a/nvim/dot-config/nvim/after/plugin/telescope.lua +++ b/nvim/dot-config/nvim/after/plugin/telescope.lua @@ -6,14 +6,39 @@ end local nmap = require("my.utils").nmap -telescope.setup {} +telescope.setup { + extensions = { + fzf = { + fuzzy = true, + override_generic_sorter = true, + override_file_sorter = true, + case_mode = "smart_case", + } + } +} -local function project_or_files() - local opts = { show_untracked = true } - local ok = pcall(builtin.git_files, opts) - if not ok then - builtin.fd(opts) +local function project() + local exclusions = { + "**/.git/", + "*.svg", + "*.png", + "*.jpg", + } + + local find_command = nil + if FD_EXISTS then + find_command = { "fd", "--hidden", "-t", "f" } + for _, value in ipairs(exclusions) do + table.insert(find_command, "--exclude") + table.insert(find_command, value) + end + elseif RIPGREP_EXISTS then + find_command = { "rg", "--files", "--hidden", "--glob", "!**/.git/*" } end + + builtin.find_files { + find_command = find_command, + } end local function dotfiles() @@ -24,7 +49,10 @@ local function dotfiles() } end -nmap("", project_or_files, "Find project files") +nmap("", project, "Find project files") nmap("fn", dotfiles, "Dotfiles") +nmap("", builtin.git_files, "Find git files") nmap("fg", builtin.live_grep, "Live grep") nmap("gs", builtin.git_status, "Git status") + +telescope.load_extension("fzf") diff --git a/nvim/dot-config/nvim/init.lua b/nvim/dot-config/nvim/init.lua index 6b6ce23..4823ad5 100644 --- a/nvim/dot-config/nvim/init.lua +++ b/nvim/dot-config/nvim/init.lua @@ -5,6 +5,9 @@ Configuration Home: https://github.com/esprssoo/dotfiles --]] +FD_EXISTS = vim.fn.executable("fd") +RIPGREP_EXISTS = vim.fn.executable("rg") + vim.g.mapleader = " " -- vim.g.netrw_banner = 0 vim.g.loaded_netrw = 1 diff --git a/nvim/dot-config/nvim/lua/my/keymaps.lua b/nvim/dot-config/nvim/lua/my/keymaps.lua index 036c567..bdebac4 100644 --- a/nvim/dot-config/nvim/lua/my/keymaps.lua +++ b/nvim/dot-config/nvim/lua/my/keymaps.lua @@ -61,3 +61,20 @@ imap("jk", "") vmap("p", '"_dP') vmap(">", ">gv") vmap("<", "r", vim.lsp.buf.rename, "Rename", bufnr) + nmap("cf", vim.lsp.buf.format, "Format document", bufnr) + nmap("ca", vim.lsp.buf.code_action, "Code actions", bufnr) + nmap("ci", vim.lsp.buf.implementation, "Go to implementation", bufnr) + nmap("D", vim.lsp.buf.type_definition, "Go to type definition", bufnr) + nmap("gr", "Telescope lsp_references", "View references", bufnr) + + if client.server_capabilities.hoverProvider then + nmap("K", vim.lsp.buf.hover, "LSP hover", bufnr) + end +end + +return { + lsp_keymaps = lsp_keymaps, +} diff --git a/nvim/dot-config/nvim/lua/my/plugins.lua b/nvim/dot-config/nvim/lua/my/plugins.lua index 91e659e..44b7c25 100644 --- a/nvim/dot-config/nvim/lua/my/plugins.lua +++ b/nvim/dot-config/nvim/lua/my/plugins.lua @@ -25,9 +25,10 @@ require "paq" { "nvim-lualine/lualine.nvim", "windwp/nvim-autopairs", "mickael-menu/zk-nvim", - { "nvim-telescope/telescope.nvim", branch = "0.1.x" }, - { "catppuccin/nvim", as = "catppuccin" }, - { "williamboman/mason.nvim", branch = "v1.0.1" }, + { "nvim-telescope/telescope.nvim", branch = "0.1.x" }, + { "nvim-telescope/telescope-fzf-native.nvim", run = "make" }, + { "catppuccin/nvim", as = "catppuccin" }, + { "williamboman/mason.nvim", branch = "v1.0.1" }, "stevearc/oil.nvim", -- Treesitter @@ -45,5 +46,4 @@ require "paq" { "L3MON4D3/LuaSnip", "nvim-lua/lsp-status.nvim", "onsails/lspkind.nvim", - "mfussenegger/nvim-lint", } diff --git a/nvim/dot-config/nvim/spell/en.utf-8.add.spl b/nvim/dot-config/nvim/spell/en.utf-8.add.spl index 629305379785549f2d249907b8ca16e28540f48d..71a02bfd8b92cdb0d0e48825b873e63cc22aa475 100644 GIT binary patch literal 1283 zcmZ9My>1gh6oqGIgJ>uzEJU3)60eX7A(W1uf&$5wkSHv=b!^8nGT{X%cmQu!8+$S9 zANCFGC*URAkOBnfo1YX!x|zE(bI(2Z+&g~t{N?+1Z@S%Qe~rohxc%W#S=}y{^{QEK zcdb3xp=>I5N)5)mI=F1fd#6)uM|gPh#?EqOPcB=n*Th%@kc>= z2z--;H1~tmK|@U8=Nn~sP72XqF2 zpq0H_sN^u{3O(jYsq}18I8T-O(o3kUJ3%a0#OdktJH;d7CjEhN?$@BCHCdO2D$U)- Gq`!Z8I-Yz0 literal 1186 zcmZ9Lzityj5XN`cK}fWIfD{%=PnVJ+MG9IdDI%z135k~C5}#uknLGkdV8^Kj0GI$6rL+IipOiM zFSI5dfO_&4U;9{RC-RkT-Lj4sbzzv+_?Xj?Yr!im4jVB!Sk{f!Z@w$GlI?8Ar6Z9s z1IRRbJ(Ite5v#P%WV!5GMu|%8&uW)Nn!}|+RGW(63NauO3!q>H`N;I7MqLWw;Y~Z