diff --git a/modules/home-manager/cli/neovim/default.nix b/modules/home-manager/cli/neovim/default.nix index 1960e4f..808762b 100644 --- a/modules/home-manager/cli/neovim/default.nix +++ b/modules/home-manager/cli/neovim/default.nix @@ -68,11 +68,6 @@ in cmp-path cmp-cmdline cmp_luasnip - { - plugin = fzf-lua; - type = "lua"; - config = (builtins.readFile ./files/fzf-lua.lua); - } { plugin = gitsigns-nvim; type = "lua"; @@ -145,6 +140,11 @@ in type = "lua"; config = ( builtins.readFile ./files/treesitter.lua); } + { + plugin = telescope-nvim; + type = "lua"; + config = ( builtins.readFile ./files/telescope.lua ); + } { plugin = nvim-treesitter-context; type = "lua"; diff --git a/modules/home-manager/cli/neovim/files/fzf-lua.lua b/modules/home-manager/cli/neovim/files/fzf-lua.lua deleted file mode 100644 index a186a12..0000000 --- a/modules/home-manager/cli/neovim/files/fzf-lua.lua +++ /dev/null @@ -1 +0,0 @@ -require('fzf-lua').setup() diff --git a/modules/home-manager/cli/neovim/files/neotree.lua b/modules/home-manager/cli/neovim/files/neotree.lua index da3b336..f1d1728 100644 --- a/modules/home-manager/cli/neovim/files/neotree.lua +++ b/modules/home-manager/cli/neovim/files/neotree.lua @@ -1,6 +1,5 @@ local neotree = require 'neo-tree' neotree.setup({ - close_if_last_window = true, filesystem = { filtered_items = { -- when true, they will just be displayed differently @@ -19,7 +18,8 @@ neotree.setup({ } }) +vim.keymap.set('n', 'ns', ':Neotree show', {desc='Neotree [S]how'}) vim.keymap.set('n', 'nc', ':Neotree close', {desc='Neotree [C]lose'}) -vim.keymap.set('n', 'nf', ':Neotree focus filesystem', {desc='Neotree [F]ocus'}) -vim.keymap.set('n', 'nb', ':Neotree focus buffers', {desc='Neotree Nvim [B]uffers'}) -vim.keymap.set('n', 'ng', ':Neotree focus git_status', {desc='Neotree [G]it status'}) +vim.keymap.set('n', 'nf', ':Neotree focus', {desc='Neotree [F]ocus'}) +vim.keymap.set('n', 'nb', ':Neotree show buffers', {desc='Neotree Nvim [B]uffers'}) +vim.keymap.set('n', 'ng', ':Neotree show git_status', {desc='Neotree [G]it status'}) diff --git a/modules/home-manager/cli/neovim/files/telescope.lua b/modules/home-manager/cli/neovim/files/telescope.lua new file mode 100644 index 0000000..0fb3871 --- /dev/null +++ b/modules/home-manager/cli/neovim/files/telescope.lua @@ -0,0 +1,49 @@ +require('telescope').setup{ + defaults = { + mappings = { + i = { + -- map actions.which_key to (default: ) + -- actions.which_key shows the mappings for your picker, + -- e.g. git_{create, delete, ...}_branch for the git_branches picker + [""] = "which_key" + } + } + }, + pickers = { + -- Default configuration for builtin pickers goes here: + -- picker_name = { + -- picker_config_key = value, + -- ... + -- } + -- Now the picker_config_key will be applied every time you call this + -- builtin picker + find_files = { + theme = "dropdown", + } + }, + extensions = { + -- Your extension configuration goes here: + -- extension_name = { + -- extension_config_key = value, + -- } + -- please take a look at the readme of the extension you want to configure + } +} + +-- Define keybinging for Telescope + +local builtin = require('telescope.builtin') +vim.keymap.set('n', 'ff', builtin.find_files, { + table.unpack(opts), desc = 'Telescope: find files' +}) +vim.keymap.set('n', 'fb', builtin.buffers, { + table.unpack(opts), desc = 'Telescope: find Nvim buffers' +}) + +-- Git actions +vim.keymap.set('n', 'fgf', builtin.git_files, { + table.unpack(opts), desc = 'Telescope: find Git files' +}) +vim.keymap.set('n', 'fgc', builtin.git_commits, { + table.unpack(opts), desc = 'Telescope: find Git commits' +}) diff --git a/modules/home-manager/cli/utils/default.nix b/modules/home-manager/cli/utils/default.nix index 58dc031..a30c0e7 100644 --- a/modules/home-manager/cli/utils/default.nix +++ b/modules/home-manager/cli/utils/default.nix @@ -15,26 +15,17 @@ in theme = "base16"; }; }; - programs.eza = { - enable = true; - icons = true; - }; - programs.fd = { - enable = true; - - }; - programs.fzf = { - enable = true; - }; - programs.ripgrep = { - enable = true; - }; + home.packages = with pkgs; [ + eza + ]; + home = { sessionVariables = { EXA_COLORS = "xx=2"; }; shellAliases = { + ls = "eza"; cat = "bat"; }; };