diff --git a/init.lua b/init.lua index 5477a28..f8809d6 100644 --- a/init.lua +++ b/init.lua @@ -44,23 +44,23 @@ vim.cmd("set nohlsearch") vim.o.background = "light" -- or "dark" for dark mode vim.cmd("colorscheme gruvbox") --- Telescope setup (Like emacs ivy-mode) -require('telescope').setup{ - defaults = { - -- ... - }, - pickers = { - find_files = { - theme = "ivy", - } - }, - extensions = { - -- ... - } -} +-- Telescope setup (Like emacs ivy-mode) NOW USING SNACKS PICKERS INSTEAD +--require('telescope').setup{ +-- defaults = { +-- -- ... +-- }, +-- pickers = { +-- find_files = { +-- theme = "ivy", +-- } +-- }, +-- extensions = { +-- -- ... +-- } +--} -- To get telescope-file-browser loaded and working with telescope, -- you need to call load_extension, somewhere after setup function: -require("telescope").load_extension "file_browser" +--require("telescope").load_extension "file_browser" -- Custom statusline (modeline) require('mini.statusline').setup() @@ -388,17 +388,22 @@ dap.configurations.c = { -- Remake of emacs which-key mode, I'll add all custom keybinds here -- TODO: The DAP related functions should be moved into their own respective file/modularised better! require("which-key").add ({ - { "", "Telescope live_grep" , desc = "Swiper", mode = "n" }, + --{ "", "Telescope live_grep" , desc = "Swiper", mode = "n" }, + { "/", function () Snacks.picker.lines() end , desc = "Swiper", mode = "n" }, + { "", function () Snacks.picker.lines() end , desc = "Swiper", mode = "n" }, -- This does not allow you to make a new file only search existing, but good enough for now. - { "", "Telescope find_files find_command=rg,--ignore,--hidden,--files" , desc = "Find File", mode = "n" }, + --{ "", "Telescope find_files find_command=rg,--ignore,--hidden,--files" , desc = "Find File", mode = "n" }, + { "", function() Snacks.picker.files() end, desc = "Find File", mode = "n" }, - { "f", "Telescope file_browser" , desc = "File Browser", mode = "n" }, + --{ "f", "Telescope file_browser" , desc = "File Browser", mode = "n" }, -- To properly remake the Emacs ivy buffer command, we should figure out how to combine Telescope buffers and Telescope oldfiles -- This is good enough for now - { "b", "Telescope oldfiles" , desc = "Recently opened files", mode = "n" }, - { "", "Telescope buffers" , desc = "Buffers", mode = "n" }, + -- { "b", "Telescope oldfiles" , desc = "Recently opened files", mode = "n" }, + -- { "", "Telescope buffers" , desc = "Buffers", mode = "n" }, + -- SNACKS NOW GOOD ENOUGH TO PROVIDE EXACT BEHAVIOUR + { "b", function () Snacks.picker.smart() end , desc = "Recently opened files", mode = "n" }, { "k", "bp|bd#" , desc = "Close current buffer", mode = "n" }, { "0", "close", desc = "Close focused window" }, diff --git a/lazy-lock.json b/lazy-lock.json index ae6cd48..f7d4c82 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,28 +1,28 @@ { - "LuaSnip": { "branch": "master", "commit": "c9b9a22904c97d0eb69ccb9bab76037838326817" }, - "cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" }, + "LuaSnip": { "branch": "master", "commit": "787dee55ca364cc9119787165418fe93b74c1842" }, + "cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" }, "cord.nvim": { "branch": "master", "commit": "df8f4fc28299ec33f884a8b44d1a126e2659e0fb" }, - "dashboard-nvim": { "branch": "master", "commit": "ae309606940d26d8c9df8b048a6e136b6bbec478" }, - "firenvim": { "branch": "master", "commit": "dd2d6f6b3b87b3726d5ef59adfe8a6c444889dda" }, - "gruvbox.nvim": { "branch": "main", "commit": "68c3460a5d1d1a362318960035c9f3466d5011f5" }, - "lazy.nvim": { "branch": "main", "commit": "7e6c863bc7563efbdd757a310d17ebc95166cef3" }, - "lsp-zero.nvim": { "branch": "v3.x", "commit": "ab2a3413646fedd77aa0eab4214a6473e62f6a64" }, - "mini.statusline": { "branch": "main", "commit": "1b0edf76fe2af015f8c989385ff949f1db7aade2" }, + "dashboard-nvim": { "branch": "master", "commit": "d2c5a4d1341f5ca1ed2ecb4ecfcff2bc8ea18b14" }, + "firenvim": { "branch": "master", "commit": "64f9389b88c8b0c7667d45c171a5f25c42d852fb" }, + "gruvbox.nvim": { "branch": "main", "commit": "49d9c0b150ba70efcd831ec7b3cb8ee740067045" }, + "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, + "lsp-zero.nvim": { "branch": "v3.x", "commit": "56db3d5ce5476b183783160e6045f7337ba12b83" }, + "mini.statusline": { "branch": "main", "commit": "813854243156472c9d0bc9c64ea0af159b9b37ca" }, "neogen": { "branch": "main", "commit": "d7f9461727751fb07f82011051338a9aba07581d" }, "nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" }, - "nvim-cmp": { "branch": "main", "commit": "8c82d0bd31299dbff7f8e780f5e06d2283de9678" }, - "nvim-dap": { "branch": "master", "commit": "b768c8d0ce6da614ac17ed097bf2d94e35fe1a58" }, - "nvim-lspconfig": { "branch": "master", "commit": "8121483b8132b7053120fafd83728178fb3febf6" }, + "nvim-cmp": { "branch": "main", "commit": "29fb4854573355792df9e156cb779f0d31308796" }, + "nvim-dap": { "branch": "master", "commit": "7ff6936010b7222fea2caea0f67ed77f1b7c60dd" }, + "nvim-lspconfig": { "branch": "master", "commit": "edd9591199d1c78c0cb20514231f7f936f9412a2" }, "nvim-tree.lua": { "branch": "master", "commit": "68fc4c20f5803444277022c681785c5edd11916d" }, "nvim-treesitter": { "branch": "master", "commit": "10a9464a82fb540cca912a1d25810f242cb97b5f" }, - "nvim-web-devicons": { "branch": "master", "commit": "5740b7382429d20b6ed0bbdb0694185af9507d44" }, + "nvim-web-devicons": { "branch": "master", "commit": "19d257cf889f79f4022163c3fbb5e08639077bd8" }, "oil.nvim": { "branch": "master", "commit": "7041528bdedb350ad66e650684deec8456e053cc" }, - "plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" }, - "telescope-file-browser.nvim": { "branch": "master", "commit": "626998e5c1b71c130d8bc6cf7abb6709b98287bb" }, + "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, + "snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" }, "telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, "tiny-inline-diagnostic.nvim": { "branch": "main", "commit": "cd401038de4cbae37651cfe02510294ccf5cdc98" }, "vim-jsdoc": { "branch": "master", "commit": "6e5bc2a1f98a69e4902081c9f5969b228a7a5fd6" }, - "vim-suda": { "branch": "master", "commit": "9adda7d195222d4e2854efb2a88005a120296c47" }, - "which-key.nvim": { "branch": "main", "commit": "1f8d414f61e0b05958c342df9b6a4c89ce268766" }, + "vim-suda": { "branch": "master", "commit": "b97fab52f9cdeabe2bbb5eb98d82356899f30829" }, + "which-key.nvim": { "branch": "main", "commit": "8badb359f7ab8711e2575ef75dfe6fbbd87e4821" }, "xcodebuild.nvim": { "branch": "main", "commit": "d30627c0df5b71e358a08581cb7129d06cfbdfda" } } diff --git a/lua/plugins/snacks.lua b/lua/plugins/snacks.lua new file mode 100644 index 0000000..b49235c --- /dev/null +++ b/lua/plugins/snacks.lua @@ -0,0 +1,33 @@ +return { + "folke/snacks.nvim", + priority = 1000, + lazy = false, + ---@type snacks.Config + opts = { + -- your configuration comes here + -- or leave it empty to use the default settings + -- refer to the configuration section below + bigfile = { enabled = true }, + dashboard = { enabled = false }, + explorer = { enabled = false }, + indent = { enabled = false }, + input = { enabled = true }, + picker = { + enabled = true, + layout = "ivy", + win = { + input = { + keys = { + [""] = { "close", mode = { "n", "i" } }, + } + }, + }, + }, + notifier = { enabled = false }, + quickfile = { enabled = true }, + scope = { enabled = false }, + scroll = { enabled = false }, + statuscolumn = { enabled = false }, + words = { enabled = false }, + }, +} diff --git a/lua/plugins/telescope-file-browser.lua b/lua/plugins/telescope-file-browser.lua.disabled similarity index 100% rename from lua/plugins/telescope-file-browser.lua rename to lua/plugins/telescope-file-browser.lua.disabled diff --git a/lua/plugins/telescope.lua b/lua/plugins/telescope.lua.disabled similarity index 100% rename from lua/plugins/telescope.lua rename to lua/plugins/telescope.lua.disabled