From 84f11353e62c6a7dcc9721ad3e47b7a2b7a505b4 Mon Sep 17 00:00:00 2001 From: David JULIEN Date: Mon, 26 Dec 2022 18:45:40 +0100 Subject: [PATCH 1/9] [nvim] feat: display packer in a floating window --- .config/nvim/lua/plugin/packer.lua | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.config/nvim/lua/plugin/packer.lua b/.config/nvim/lua/plugin/packer.lua index b1afd3b..54b0989 100644 --- a/.config/nvim/lua/plugin/packer.lua +++ b/.config/nvim/lua/plugin/packer.lua @@ -29,6 +29,9 @@ packer.init({ removed_sym = '- ', -- The symbol for an unused plugin which was removed moved_sym = '→ ', -- The symbol for a plugin which was moved (e.g. from opt to start) header_sym = '━ ', -- The symbol for the header line in packer's display + open_fn = function() + return require('packer.util').float({ border = "single" }) + end, -- Display in a floating window }, }) From 791919d05889db7a02fc8134907b4c8b6b1e6914 Mon Sep 17 00:00:00 2001 From: David JULIEN Date: Mon, 26 Dec 2022 18:49:45 +0100 Subject: [PATCH 2/9] [nvim] feat: change telescope comment in packer.lua --- .config/nvim/lua/plugin/packer.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/nvim/lua/plugin/packer.lua b/.config/nvim/lua/plugin/packer.lua index 54b0989..39252fa 100644 --- a/.config/nvim/lua/plugin/packer.lua +++ b/.config/nvim/lua/plugin/packer.lua @@ -54,7 +54,7 @@ return require("packer").startup(function() config = function() require("plugin.treesitter") end } - -- fuzzy finder + -- telescope use { "nvim-telescope/telescope.nvim", requires = { From 3c7f8a29a70aa679ed7e8c1ae3db0793762c80ca Mon Sep 17 00:00:00 2001 From: David JULIEN Date: Mon, 26 Dec 2022 18:50:57 +0100 Subject: [PATCH 3/9] [nvim] nvim: actually use fzf extension --- .config/nvim/lua/plugin/packer.lua | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.config/nvim/lua/plugin/packer.lua b/.config/nvim/lua/plugin/packer.lua index 39252fa..49e4137 100644 --- a/.config/nvim/lua/plugin/packer.lua +++ b/.config/nvim/lua/plugin/packer.lua @@ -64,8 +64,11 @@ return require("packer").startup(function() { "nvim-telescope/telescope-fzf-native.nvim", run = "make" - } + }, }, + config = function() + require("telescope").load_extension("fzf") + end } -- LSP From a9cb5afdcaa92704252cac4b4687903b30a59b57 Mon Sep 17 00:00:00 2001 From: David JULIEN Date: Mon, 26 Dec 2022 19:04:56 +0100 Subject: [PATCH 4/9] [nvim] feat: add telescope-file-browser extension properly setup Telescope in telescope.lua provide a new keybinding --- .config/nvim/lua/maps.lua | 2 ++ .config/nvim/lua/plugin/packer.lua | 5 +++++ .config/nvim/lua/plugin/telescope.lua | 22 ++++++++++++++++++++++ 3 files changed, 29 insertions(+) create mode 100644 .config/nvim/lua/plugin/telescope.lua diff --git a/.config/nvim/lua/maps.lua b/.config/nvim/lua/maps.lua index e675aee..d0bcbd8 100644 --- a/.config/nvim/lua/maps.lua +++ b/.config/nvim/lua/maps.lua @@ -20,6 +20,8 @@ vim.keymap.set("n", "u", function() require("packer").sync() end) -- telescope vim.keymap.set("n", "tf", function() require("telescope.builtin").find_files() end) +vim.keymap.set("n", "tef", + function() require("telescope").extensions.file_browser.file_browser() end) vim.keymap.set("n", "tb", function() require("telescope.builtin").buffers() end) vim.keymap.set("n", "tg", diff --git a/.config/nvim/lua/plugin/packer.lua b/.config/nvim/lua/plugin/packer.lua index 49e4137..8c53feb 100644 --- a/.config/nvim/lua/plugin/packer.lua +++ b/.config/nvim/lua/plugin/packer.lua @@ -65,9 +65,14 @@ return require("packer").startup(function() "nvim-telescope/telescope-fzf-native.nvim", run = "make" }, + { + "nvim-telescope/telescope-file-browser.nvim", + } }, config = function() + require("telescope") require("telescope").load_extension("fzf") + require("telescope").load_extension("file_browser") end } diff --git a/.config/nvim/lua/plugin/telescope.lua b/.config/nvim/lua/plugin/telescope.lua new file mode 100644 index 0000000..10c1cad --- /dev/null +++ b/.config/nvim/lua/plugin/telescope.lua @@ -0,0 +1,22 @@ +-- Author : swytch +-- Created : Monday Dec. 26, 2022 18:39:16 CET +-- License : GPLv3 +-- Description : treesitter config file + +require("telescope").setup { + extensions = { + file_browser = { + theme = "ivy", + -- disables netrw and use telescope-file-browser in its place + hijack_netrw = true, + mappings = { + ["i"] = { + -- your custom insert mode mappings + }, + ["n"] = { + -- your custom normal mode mappings + }, + }, + }, + }, +} From 4419ce90b13a708435e1d4eb04a03229b8298827 Mon Sep 17 00:00:00 2001 From: David JULIEN Date: Mon, 26 Dec 2022 19:07:58 +0100 Subject: [PATCH 5/9] [system] cleanup: export PATH in the right place --- .config/zsh/.zprofile | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.config/zsh/.zprofile b/.config/zsh/.zprofile index a0783b6..aec055e 100644 --- a/.config/zsh/.zprofile +++ b/.config/zsh/.zprofile @@ -1,10 +1,11 @@ #!/bin/zsh # This file is sourced when launching a DM from startx/xinit -# path -export PATH="$(find $HOME/.local/bin -type d | tr '\n' ':' | sed 's/:$//'):$PATH" # environment variables +## path +export PATH="$(find $HOME/.local/bin -type d | tr '\n' ':' | sed 's/:$//'):$PATH" + ## custom paths export DOTFILES="$HOME/.dotfiles.git" export LATEX_RESOURCES="$HOME/documents/latex" From 6d5fa385d24399852dfdfd5d555e5c73dbe75c22 Mon Sep 17 00:00:00 2001 From: David JULIEN Date: Mon, 2 Jan 2023 19:47:28 +0100 Subject: [PATCH 6/9] [nvim] feat: add descriptions to mappings --- .config/nvim/lua/maps.lua | 69 ++++++++++++++++++++++++++++++--------- 1 file changed, 54 insertions(+), 15 deletions(-) diff --git a/.config/nvim/lua/maps.lua b/.config/nvim/lua/maps.lua index d0bcbd8..c0414ab 100644 --- a/.config/nvim/lua/maps.lua +++ b/.config/nvim/lua/maps.lua @@ -3,35 +3,74 @@ -- License : GPLv3 -- Description : neovim mappings file -vim.keymap.set({ "n", "v" }, "", "", { silent = true }) +vim.keymap.set({ "n", "v" }, "", + "", + { + silent = true, + desc = "leader key" + }) vim.g.mapleader = " " -- Dealing with word wrap -vim.keymap.set("n", "k", "v:count == 0 ? 'gk' : 'k'", - { expr = true, silent = true }) -vim.keymap.set("n", "j", "v:count == 0 ? 'gj' : 'j'", - { expr = true, silent = true }) +vim.keymap.set("n", "k", + "v:count == 0 ? 'gk' : 'k'", + { + expr = true, + silent = true, + desc = "Smart up motion" + }) +vim.keymap.set("n", "j", + "v:count == 0 ? 'gj' : 'j'", + { + expr = true, + silent = true, + desc = "Smart down motion" + }) -vim.keymap.set("n", "y", "\"+y") -vim.keymap.set("n", "p", "\"+P") -vim.keymap.set("n", "", "w! | !compiler %") -vim.keymap.set("n", "u", function() require("packer").sync() end) +vim.keymap.set("n", "y", + "\"+y", + { desc = "Yank to clipboard"} +) +vim.keymap.set("n", "p", + "\"+P", + { desc = "Copy from clipboard"} +) +vim.keymap.set("n", "", + "w! | !compiler %", + { desc = "Compile current file using ~/.local/bin/compiler"} +) +vim.keymap.set("n", "u", + function() require("packer").sync() end, + { desc = "Sync packer config and update plugins"} +) -- telescope vim.keymap.set("n", "tf", - function() require("telescope.builtin").find_files() end) + function() require("telescope.builtin").find_files() end, + { desc = "Fuzzy find files" } +) vim.keymap.set("n", "tef", - function() require("telescope").extensions.file_browser.file_browser() end) + function() require("telescope").extensions.file_browser.file_browser() end, + { desc = "Open file browser" } +) vim.keymap.set("n", "tb", - function() require("telescope.builtin").buffers() end) + function() require("telescope.builtin").buffers() end, + { desc = "Grep through buffers" } +) vim.keymap.set("n", "tg", - function() require("telescope.builtin").grep_string() end) + function() require("telescope.builtin").grep_string() end, + { desc = "Grep current word" } +) vim.keymap.set("n", "tl", - function() require("telescope.builtin").live_grep() end) + function() require("telescope.builtin").live_grep() end, + { desc = "Grep interactively" } +) -- colorscheme vim.keymap.set("n", "", - function() require("astronomy").toggle_variant() end) + function() require("astronomy").toggle_variant() end, + { desc = "Switch between dark and light colorscheme" } +) -- snippets vim.keymap.set({ "i", "s" }, "", "luasnip-next-choice") From 4ad4d956745ec6aac50acc42f7be19d0cbfecffd Mon Sep 17 00:00:00 2001 From: David JULIEN Date: Mon, 2 Jan 2023 19:56:23 +0100 Subject: [PATCH 7/9] [nvim] feat: remap telescope functionalities --- .config/nvim/lua/maps.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.config/nvim/lua/maps.lua b/.config/nvim/lua/maps.lua index c0414ab..68de4d6 100644 --- a/.config/nvim/lua/maps.lua +++ b/.config/nvim/lua/maps.lua @@ -49,11 +49,11 @@ vim.keymap.set("n", "tf", function() require("telescope.builtin").find_files() end, { desc = "Fuzzy find files" } ) -vim.keymap.set("n", "tef", +vim.keymap.set("n", "tb", function() require("telescope").extensions.file_browser.file_browser() end, { desc = "Open file browser" } ) -vim.keymap.set("n", "tb", +vim.keymap.set("n", "t/", function() require("telescope.builtin").buffers() end, { desc = "Grep through buffers" } ) From 2445f4dc23d238b4ac0d6038745722f7bb6cecbe Mon Sep 17 00:00:00 2001 From: David JULIEN Date: Mon, 2 Jan 2023 19:56:45 +0100 Subject: [PATCH 8/9] [nvim] feat: add telescope.help_tags() mapping --- .config/nvim/lua/maps.lua | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.config/nvim/lua/maps.lua b/.config/nvim/lua/maps.lua index 68de4d6..0c8e12a 100644 --- a/.config/nvim/lua/maps.lua +++ b/.config/nvim/lua/maps.lua @@ -61,6 +61,10 @@ vim.keymap.set("n", "tg", function() require("telescope.builtin").grep_string() end, { desc = "Grep current word" } ) +vim.keymap.set("n", "th", + function() require("telescope.builtin").help_tags() end, + { desc = "Search through help" } +) vim.keymap.set("n", "tl", function() require("telescope.builtin").live_grep() end, { desc = "Grep interactively" } From 13ddf74c92af8577071519d4f970bd2a3c62a3f3 Mon Sep 17 00:00:00 2001 From: David JULIEN Date: Mon, 2 Jan 2023 20:17:56 +0100 Subject: [PATCH 9/9] [nvim] fix: use as prefix to switch colorscheme --- .config/nvim/lua/maps.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.config/nvim/lua/maps.lua b/.config/nvim/lua/maps.lua index 0c8e12a..a6afe95 100644 --- a/.config/nvim/lua/maps.lua +++ b/.config/nvim/lua/maps.lua @@ -71,7 +71,7 @@ vim.keymap.set("n", "tl", ) -- colorscheme -vim.keymap.set("n", "", +vim.keymap.set("n", "s", function() require("astronomy").toggle_variant() end, { desc = "Switch between dark and light colorscheme" } )