diff options
author | Soispha <soispha@vhack.eu> | 2023-08-25 12:30:36 +0200 |
---|---|---|
committer | Soispha <soispha@vhack.eu> | 2023-08-25 12:31:09 +0200 |
commit | bc198142d4897f48cb914445490ce45de0d75a34 (patch) | |
tree | 917ea2f91dfb25673071f19bad663042dcd21551 /home-manager/soispha/config/neovim/nixvim/plugins/telescope | |
parent | Fix(hm/conf/leap): Squas (diff) | |
download | nixos-config-bc198142d4897f48cb914445490ce45de0d75a34.zip |
Fix(hm/conf/neovim/plugins/telescope): Init
Diffstat (limited to 'home-manager/soispha/config/neovim/nixvim/plugins/telescope')
7 files changed, 115 insertions, 0 deletions
diff --git a/home-manager/soispha/config/neovim/nixvim/plugins/telescope/default.nix b/home-manager/soispha/config/neovim/nixvim/plugins/telescope/default.nix new file mode 100644 index 00000000..b5054ed0 --- /dev/null +++ b/home-manager/soispha/config/neovim/nixvim/plugins/telescope/default.nix @@ -0,0 +1,10 @@ +{...}: { + imports = [ + ./defaults + ./keymaps + ./extensions + ]; + programs.nixvim.plugins.telescope = { + enable = true; + }; +} diff --git a/home-manager/soispha/config/neovim/nixvim/plugins/telescope/defaults/default.nix b/home-manager/soispha/config/neovim/nixvim/plugins/telescope/defaults/default.nix new file mode 100644 index 00000000..e8dffca8 --- /dev/null +++ b/home-manager/soispha/config/neovim/nixvim/plugins/telescope/defaults/default.nix @@ -0,0 +1,31 @@ +{...}: { + programs.nixvim.plugins.telescope.defaults = { + mappings = let + insert_and_normal_mappings = { + # map actions.which_key to <c-h> (default: <c-/>) + # actions.which_key shows the mappings for your picker, + # e.g. git_{create, delete, ...}_branch for the git_branches picker + "<C-h>" = "which_key"; + }; + in { + i = + insert_and_normal_mappings; + n = + { + "t" = "move_selection_next"; + "n" = "move_selection_previous"; + "<Space>" = "toggle_all"; + + "<C-d>" = "preview_scrolling_up"; + "<C-u>" = "preview_scrolling_down"; + "<Left>" = "preview_scrolling_left"; + "<Right>" = "preview_scrolling_right"; + + "<Esc>" = "close"; + "q" = "close"; + } + // insert_and_normal_mappings; + }; + + }; +} diff --git a/home-manager/soispha/config/neovim/nixvim/plugins/telescope/extensions/default.nix b/home-manager/soispha/config/neovim/nixvim/plugins/telescope/extensions/default.nix new file mode 100644 index 00000000..ddaf47ee --- /dev/null +++ b/home-manager/soispha/config/neovim/nixvim/plugins/telescope/extensions/default.nix @@ -0,0 +1,6 @@ +{...}: { + imports = [ + ./frecency + ./fzy-native + ]; +} diff --git a/home-manager/soispha/config/neovim/nixvim/plugins/telescope/extensions/frecency/default.nix b/home-manager/soispha/config/neovim/nixvim/plugins/telescope/extensions/frecency/default.nix new file mode 100644 index 00000000..ab7b9205 --- /dev/null +++ b/home-manager/soispha/config/neovim/nixvim/plugins/telescope/extensions/frecency/default.nix @@ -0,0 +1,22 @@ +{...}: { + programs.nixvim = { + maps = { + normal = { + "gff" = { + action = "function() require('telescope').extensions.frecency.frecency() end"; + lua = true; + desc = "activate the frecency file selection"; + }; + }; + }; + plugins.telescope = { + extensions.frecency = { + enable = true; + showUnindexed = true; + showScores = true; + # TODO add this: + #db_safe_mode = true; + }; + }; + }; +} diff --git a/home-manager/soispha/config/neovim/nixvim/plugins/telescope/extensions/fzy-native/default.nix b/home-manager/soispha/config/neovim/nixvim/plugins/telescope/extensions/fzy-native/default.nix new file mode 100644 index 00000000..9653177c --- /dev/null +++ b/home-manager/soispha/config/neovim/nixvim/plugins/telescope/extensions/fzy-native/default.nix @@ -0,0 +1,5 @@ +{...}: { + programs.nixvim.plugins.telescope.extensions.fzy-native = { + enable = true; + }; +} diff --git a/home-manager/soispha/config/neovim/nixvim/plugins/telescope/extensions/symbols/default.nix b/home-manager/soispha/config/neovim/nixvim/plugins/telescope/extensions/symbols/default.nix new file mode 100644 index 00000000..bbe19fb6 --- /dev/null +++ b/home-manager/soispha/config/neovim/nixvim/plugins/telescope/extensions/symbols/default.nix @@ -0,0 +1,20 @@ +{...}: { + programs.nixvim.maps = { + normal = { + "gff" = { + action = "function() require('telescope').extensions.frecency.frecency() end"; + lua = true; + desc = "activate the frecency file selection"; + }; + }; + }; + programs.nixvim.plugins.telescope = { + extensions.frecency = { + enable = true; + showUnindexed = true; + showScores = true; + # TODO add this: + #db_safe_mode = true; + }; + }; +} diff --git a/home-manager/soispha/config/neovim/nixvim/plugins/telescope/keymaps/default.nix b/home-manager/soispha/config/neovim/nixvim/plugins/telescope/keymaps/default.nix new file mode 100644 index 00000000..a0ffdd5e --- /dev/null +++ b/home-manager/soispha/config/neovim/nixvim/plugins/telescope/keymaps/default.nix @@ -0,0 +1,21 @@ +{...}: { + programs.nixvim.plugins.telescope.keymaps = { + # TODO add diagnostics and workspace symbols here + "<space>gd" = { + action = "lsp_definitions"; + desc = "[G]oto [D]efinition (Telescope)"; + }; + "<space>gtd" = { + action = "lsp_type_definitions"; + desc = "[G]oto the [t]ype [D]efinition (Telescope)"; + }; + "<space>gi" = { + action = "lsp_implementations"; + desc = "[G]oto [I]mplementations (Telescope)"; + }; + "<space>gr" = { + action = "lsp_references"; + desc = "[G]o to all [R]eferences of the symbol (Telescope)"; + }; + }; +} |