Skip to content

Commit 342b510

Browse files
committed
Snacks picker :O
1 parent aabc25c commit 342b510

File tree

5 files changed

+93
-29
lines changed

5 files changed

+93
-29
lines changed

lazy-lock.json

+16-16
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"CopilotChat.nvim": { "branch": "main", "commit": "2ebe591cff06018e265263e71e1dbc4c5aa8281e" },
33
"arrow.nvim": { "branch": "master", "commit": "5438c977e729a29d96bd54c8da3103154e80dbd1" },
44
"blink-cmp-copilot": { "branch": "main", "commit": "c5c5cbce5748d21073f1d5348a92ebe6ce63f387" },
5-
"blink-ripgrep.nvim": { "branch": "main", "commit": "705069a57566a5e7427025264451c581f0bfb9c4" },
5+
"blink-ripgrep.nvim": { "branch": "main", "commit": "d93f97412462ab34d16fc04fe43b0a6170cc3834" },
66
"blink.cmp": { "branch": "main", "commit": "1cc3b1a908fbcfd15451c4772759549724f38524" },
77
"colorful-menu.nvim": { "branch": "master", "commit": "785a0d808969c1adabd4d8b039c9c548cb6f72d5" },
88
"copilot.lua": { "branch": "master", "commit": "886ee73b6d464b2b3e3e6a7ff55ce87feac423a9" },
@@ -13,44 +13,44 @@
1313
"flash.nvim": { "branch": "main", "commit": "34c7be146a91fec3555c33fe89c7d643f6ef5cf1" },
1414
"formatter.nvim": { "branch": "master", "commit": "eb89a1f3e079f1b9680bc7293b75fffccb5e1598" },
1515
"friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" },
16-
"fzf-lua": { "branch": "main", "commit": "54d505c17576f10d4c74c8e110b445369bd71548" },
17-
"gitsigns.nvim": { "branch": "main", "commit": "68114837e81ca16d06514c3a997c9102d1b25c15" },
18-
"grug-far.nvim": { "branch": "main", "commit": "08f32182335754abf461dfb77b2c4e24bfe4d614" },
16+
"fzf-lua": { "branch": "main", "commit": "e59fac8ac4188984a2b69d4a7d1375ccb866dbbb" },
17+
"gitsigns.nvim": { "branch": "main", "commit": "9541f5e8e24571723cb02a5c2bf078aeacc5a711" },
18+
"grug-far.nvim": { "branch": "main", "commit": "8e8f3429038d45a6d4144c0642d92f470e5480f3" },
1919
"lazy.nvim": { "branch": "main", "commit": "d8f26efd456190241afd1b0f5235fe6fdba13d4a" },
2020
"lspkind-nvim": { "branch": "master", "commit": "d79a1c3299ad0ef94e255d045bed9fa26025dab6" },
2121
"lualine.nvim": { "branch": "master", "commit": "2a5bae925481f999263d6f5ed8361baef8df4f83" },
2222
"marks.nvim": { "branch": "master", "commit": "bb25ae3f65f504379e3d08c8a02560b76eaf91e8" },
2323
"markview.nvim": { "branch": "main", "commit": "6e9f1840ba33e5318285ad97c22676f55b753479" },
24-
"mason-lspconfig.nvim": { "branch": "main", "commit": "97d9f1d3ad205dece6bcafd1d71cf1507608f3c7" },
24+
"mason-lspconfig.nvim": { "branch": "main", "commit": "e942edf5c85b6a2ab74059ea566cac5b3e1514a4" },
2525
"mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" },
2626
"noice.nvim": { "branch": "main", "commit": "eaed6cc9c06aa2013b5255349e4f26a6b17ab70f" },
2727
"nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" },
28-
"numb.nvim": { "branch": "master", "commit": "3f7d4a74bd456e747a1278ea1672b26116e0824d" },
29-
"nvim-autopairs": { "branch": "master", "commit": "d2f791ceeb26d04d87aa54343bc94e8ad8d7be1c" },
28+
"numb.nvim": { "branch": "master", "commit": "7f564e638d3ba367abf1ec91181965b9882dd509" },
29+
"nvim-autopairs": { "branch": "master", "commit": "3d02855468f94bf435db41b661b58ec4f48a06b7" },
3030
"nvim-dap": { "branch": "master", "commit": "99807078c5089ed30e0547aa4b52c5867933f426" },
3131
"nvim-dap-ui": { "branch": "master", "commit": "727c032a8f63899baccb42a1c26f27687e62fc5e" },
3232
"nvim-dap-virtual-text": { "branch": "master", "commit": "df66808cd78b5a97576bbaeee95ed5ca385a9750" },
33-
"nvim-lspconfig": { "branch": "master", "commit": "88157521e890fe7fdf18bee22438875edd6300a6" },
33+
"nvim-lspconfig": { "branch": "master", "commit": "339ccc81e08793c3af9b83882a6ebd90c9cc0d3b" },
3434
"nvim-navic": { "branch": "master", "commit": "8649f694d3e76ee10c19255dece6411c29206a54" },
35-
"nvim-neoclip.lua": { "branch": "main", "commit": "108ad22f284737e93f6bd4ba5614bfe9d716be60" },
35+
"nvim-neoclip.lua": { "branch": "main", "commit": "c4ce7f6c402872469795f8a47ffabe87e142f0fb" },
3636
"nvim-nio": { "branch": "master", "commit": "a428f309119086dc78dd4b19306d2d67be884eee" },
3737
"nvim-notify": { "branch": "master", "commit": "a3020c2cf4dfc4c4f390c4a21e84e35e46cf5d17" },
3838
"nvim-rip-substitute": { "branch": "main", "commit": "7be26ea5ebb0fe38fbfc3c69c22d535d02c9ab1e" },
3939
"nvim-spider": { "branch": "main", "commit": "2b38e3e95e143313d78ca098eeecda7aebfce925" },
40-
"nvim-treesitter": { "branch": "master", "commit": "306dd6e9dc806db1d79568d26e1c9b6c98b95fbc" },
40+
"nvim-treesitter": { "branch": "master", "commit": "f0c928dbe93533b7e35894a8f957f40150d1f663" },
4141
"nvim-web-devicons": { "branch": "master", "commit": "aafa5c187a15701a7299a392b907ec15d9a7075f" },
4242
"oil-vcs-status": { "branch": "main", "commit": "729f65d5ac6f115df0b54ffd24a4f3f0e8834a47" },
43-
"oil.nvim": { "branch": "master", "commit": "7041528bdedb350ad66e650684deec8456e053cc" },
43+
"oil.nvim": { "branch": "master", "commit": "09fa1d22f5edf0730824d2b222d726c8c81bbdc9" },
4444
"oklch-color-picker.nvim": { "branch": "master", "commit": "24f46c92c2d8228843a4628530ec873469650d16" },
45-
"plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" },
45+
"plenary.nvim": { "branch": "master", "commit": "3707cdb1e43f5cea73afb6037e6494e7ce847a66" },
4646
"popup.nvim": { "branch": "master", "commit": "b7404d35d5d3548a82149238289fa71f7f6de4ac" },
47-
"snacks.nvim": { "branch": "main", "commit": "14e89401da348f5d14509fca164fb7bcec83e597" },
47+
"snacks.nvim": { "branch": "main", "commit": "f06f14c4ae4d131eb5e15f4c49994f8debddff42" },
4848
"suda.vim": { "branch": "master", "commit": "9adda7d195222d4e2854efb2a88005a120296c47" },
4949
"telescope.nvim": { "branch": "master", "commit": "85922dde3767e01d42a08e750a773effbffaea3e" },
5050
"tfm.nvim": { "branch": "main", "commit": "fb0de2c96bf303216ac5d91ce9bdb7f430030f8b" },
51-
"todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" },
52-
"tokyonight.nvim": { "branch": "main", "commit": "7bb270adaa7692c2c33befc35f5567fc596a2504" },
53-
"trouble.nvim": { "branch": "main", "commit": "46cf952fc115f4c2b98d4e208ed1e2dce08c9bf6" },
51+
"todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" },
52+
"tokyonight.nvim": { "branch": "main", "commit": "775f82f08a3d1fb55a37fc6d3a4ab10cd7ed8a10" },
53+
"trouble.nvim": { "branch": "main", "commit": "50481f414bd3c1a40122c1d759d7e424d5fafe84" },
5454
"vim-abolish": { "branch": "master", "commit": "dcbfe065297d31823561ba787f51056c147aa682" },
5555
"vim-bufsurf": { "branch": "master", "commit": "e6dbc7ad66c7e436e5eb20d304464e378bd7f28c" },
5656
"vim-bundler": { "branch": "master", "commit": "c261509e78fc8dc55ad1fcf3cd7cdde49f35435c" },

lua/plugins/fzf-lua.lua

+11-11
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,19 @@
11
return {
22
"ibhagwan/fzf-lua",
33
lazy = false,
4-
enabled = true,
4+
enabled = false,
55
dependencies = { "nvim-tree/nvim-web-devicons" },
66
keys = {
7-
{ "<leader>r", ":FzfLua live_grep<CR>", noremap = true, silent = true, desc = "Live grep" },
8-
{ "<leader>#", ":FzfLua grep_cword<CR>", noremap = true, silent = true, desc = "Grep current word" },
9-
{ "<leader>m", ":FzfLua marks<CR>", noremap = true, silent = true, desc = "Marks" },
10-
{ "<leader>b", ":FzfLua buffers<CR>", noremap = true, silent = true, desc = "Buffers" },
11-
{ "<leader>l", ":FzfLua blines<CR>", noremap = true, silent = true, desc = "Buffer lines" },
12-
{ "<leader>f", ":FzfLua files<CR>", noremap = true, silent = true, desc = "Files" },
13-
{ "<leader>ts", ":FzfLua lsp_document_symbols<CR>", noremap = true, silent = true, desc = "Files" },
14-
{ "<leader>fp", ":FzfLua git_files<CR>", noremap = true, silent = true, desc = "Git files" },
15-
{ "<leader>p", ":GitProjects<CR>", noremap = true, silent = true, desc = "Git files" },
16-
{ "<leader>g", ":FzfLua git_status<CR>", noremap = true, silent = true, desc = "Git status" },
7+
-- { "<leader>r", ":FzfLua live_grep<CR>", noremap = true, silent = true, desc = "Live grep" },
8+
-- { "<leader>#", ":FzfLua grep_cword<CR>", noremap = true, silent = true, desc = "Grep current word" },
9+
-- { "<leader>m", ":FzfLua marks<CR>", noremap = true, silent = true, desc = "Marks" },
10+
-- { "<leader>b", ":FzfLua buffers<CR>", noremap = true, silent = true, desc = "Buffers" },
11+
-- { "<leader>l", ":FzfLua blines<CR>", noremap = true, silent = true, desc = "Buffer lines" },
12+
-- { "<leader>f", ":FzfLua files<CR>", noremap = true, silent = true, desc = "Files" },
13+
-- { "<leader>ts", ":FzfLua lsp_document_symbols<CR>", noremap = true, silent = true, desc = "Files" },
14+
-- { "<leader>fp", ":FzfLua git_files<CR>", noremap = true, silent = true, desc = "Git files" },
15+
-- { "<leader>p", ":GitProjects<CR>", noremap = true, silent = true, desc = "Git files" },
16+
-- { "<leader>g", ":FzfLua git_status<CR>", noremap = true, silent = true, desc = "Git status" },
1717
{ "<leader>ll", ":FzfLua grep { search = vim.fn.input('GREP -> ') }<CR>", noremap = true, silent = true, desc = "Grep a word" },
1818
{ "<leader>y", ":lua require('neoclip.fzf')('a')<CR>", noremap = true, silent = true, desc = "Neoclip" },
1919
{ "<leader>ns", ":FzfLua live_grep({ prompt='Note', cwd = '~/Notes'})<CR>", noremap = true, silent = true, desc = "Note" },

lua/plugins/init.lua

+7-2
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,13 @@ return {
4949
},
5050
{
5151
"folke/todo-comments.nvim",
52-
event = 'VeryLazy',
53-
opts = {}
52+
lazy = false,
53+
opts = {},
54+
keys = {
55+
{ "<leader>tT", function () Snacks.picker.todo_comments({ keywords = { "TODO" } }) end, desc = "Todo" },
56+
{ "<leader>tF", function () Snacks.picker.todo_comments({ keywords = { "FIX", "FIXME" } }) end, desc = "Fix/Fixme" },
57+
{ "<leader>tN", function () Snacks.picker.todo_comments({ keywords = { "NOTE" } }) end, desc = "Note" },
58+
},
5459
},
5560
{
5661
"jeffkreeftmeijer/vim-numbertoggle",

lua/plugins/snacks.lua

+39
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,30 @@ return {
1717
notifier = {
1818
timeout = 3000,
1919
},
20+
picker = {
21+
layout = {
22+
reverse = true,
23+
layout = {
24+
box = "horizontal",
25+
backdrop = false,
26+
width = 0.8,
27+
height = 0.9,
28+
border = "none",
29+
{
30+
box = "vertical",
31+
{ win = "list", title = " Results ", title_pos = "center", border = "rounded" },
32+
{ win = "input", height = 1, border = "rounded", title = "{source} {live}", title_pos = "center" },
33+
},
34+
{
35+
win = "preview",
36+
width = 0.45,
37+
border = "rounded",
38+
title = " Preview ",
39+
title_pos = "center",
40+
},
41+
},
42+
},
43+
},
2044
quickfile = { },
2145
rename = { enabled = false },
2246
scope = { },
@@ -149,6 +173,21 @@ return {
149173
{ "<leader>.", function() Snacks.scratch() end, desc = "Toggle Scratch Buffer" },
150174
{ "<leader>S", function() Snacks.scratch.select() end, desc = "Select Scratch Buffer" },
151175
{ "<F8>", function() Snacks.zen() end, desc = "ZEN" },
176+
-- PICKER
177+
{ "<leader>b", function() Snacks.picker.buffers() end, desc = "Buffers" },
178+
{ "<leader>r", function() Snacks.picker.grep() end, desc = "Grep" },
179+
{ "<leader>f", function() Snacks.picker.files() end, desc = "Find Files" },
180+
{ "<leader>fp", function() Snacks.picker.git_files() end, desc = "Find Git Files" },
181+
{ "<leader>g", function() Snacks.picker.git_status() end, desc = "Git Status" },
182+
{ "<leader>l", function() Snacks.picker.lines() end, desc = "Buffer Lines" },
183+
{ "<leader>rb", function() Snacks.picker.grep_buffers() end, desc = "Grep Open Buffers" },
184+
{ "<leader>#", function() Snacks.picker.grep_word() end, desc = "Visual selection or word", mode = { "n", "x" } },
185+
{ "<leader>y", function() Snacks.picker.registers() end, desc = "Registers" },
186+
{ "<leader>sj", function() Snacks.picker.jumps() end, desc = "Jumps" },
187+
{ "<leader>m", function() Snacks.picker.marks() end, desc = "Marks" },
188+
{ "<leader>p", function() Snacks.picker.projects() end, desc = "Projects" },
189+
{ "<leader>ss", function() Snacks.picker.lsp_symbols() end, desc = "LSP Symbols" },
190+
{ "<leader>z", function() Snacks.picker.zoxide() end, desc = "Zoxide" },
152191
},
153192
init = function()
154193
vim.api.nvim_create_autocmd("User", {

lua/plugins/trouble.lua

+20
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,24 @@ return {
1313
{ "<leader>tl", "<cmd>Trouble lsp_references<cr>", desc="Trouble lsp" }
1414
},
1515
opts = {},
16+
specs = {
17+
"folke/snacks.nvim",
18+
opts = function(_, opts)
19+
return vim.tbl_deep_extend("force", opts or {}, {
20+
picker = {
21+
actions = require("trouble.sources.snacks").actions,
22+
win = {
23+
input = {
24+
keys = {
25+
["<c-t>"] = {
26+
"trouble_open",
27+
mode = { "n", "i" },
28+
},
29+
},
30+
},
31+
},
32+
},
33+
})
34+
end,
35+
},
1636
}

0 commit comments

Comments
 (0)