readdet lost configs..
This commit is contained in:
parent
cc2d378fe7
commit
c3c15c3cea
13 changed files with 338 additions and 163 deletions
36
lua/pika/plugins/alpha.lua
Normal file
36
lua/pika/plugins/alpha.lua
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
return {
|
||||||
|
"goolord/alpha-nvim",
|
||||||
|
event = "VimEnter",
|
||||||
|
config = function()
|
||||||
|
local alpha = require("alpha")
|
||||||
|
local dashboard = require("alpha.themes.dashboard")
|
||||||
|
|
||||||
|
-- Set header
|
||||||
|
dashboard.section.header.val = {
|
||||||
|
" ",
|
||||||
|
" ███╗ ██╗███████╗ ██████╗ ██╗ ██╗██╗███╗ ███╗ ",
|
||||||
|
" ████╗ ██║██╔════╝██╔═══██╗██║ ██║██║████╗ ████║ ",
|
||||||
|
" ██╔██╗ ██║█████╗ ██║ ██║██║ ██║██║██╔████╔██║ ",
|
||||||
|
" ██║╚██╗██║██╔══╝ ██║ ██║╚██╗ ██╔╝██║██║╚██╔╝██║ ",
|
||||||
|
" ██║ ╚████║███████╗╚██████╔╝ ╚████╔╝ ██║██║ ╚═╝ ██║ ",
|
||||||
|
" ╚═╝ ╚═══╝╚══════╝ ╚═════╝ ╚═══╝ ╚═╝╚═╝ ╚═╝ ",
|
||||||
|
" ",
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Set menu
|
||||||
|
dashboard.section.buttons.val = {
|
||||||
|
dashboard.button("e", " > New File", "<cmd>ene<CR>"),
|
||||||
|
dashboard.button("SPC ee", " > Toggle file explorer", "<cmd>NvimTreeToggle<CR>"),
|
||||||
|
dashboard.button("SPC ff", " > Find File", "<cmd>Telescope find_files<CR>"),
|
||||||
|
dashboard.button("SPC fs", " > Find Word", "<cmd>Telescope live_grep<CR>"),
|
||||||
|
dashboard.button("SPC wr", " > Restore Session For Current Directory", "<cmd>SessionRestore<CR>"),
|
||||||
|
dashboard.button("q", " > Quit NVIM", "<cmd>qa<CR>"),
|
||||||
|
}
|
||||||
|
|
||||||
|
-- Send config to alpha
|
||||||
|
alpha.setup(dashboard.opts)
|
||||||
|
|
||||||
|
-- Disable folding on alpha buffer
|
||||||
|
vim.cmd([[autocmd FileType alpha setlocal nofoldenable]])
|
||||||
|
end,
|
||||||
|
}
|
16
lua/pika/plugins/auto-session.lua
Normal file
16
lua/pika/plugins/auto-session.lua
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
return {
|
||||||
|
"rmagatti/auto-session",
|
||||||
|
config = function()
|
||||||
|
local auto_session = require("auto-session")
|
||||||
|
|
||||||
|
auto_session.setup({
|
||||||
|
auto_restore_enabled = false,
|
||||||
|
auto_session_suppress_dirs = { "~/", "~/Dev/", "~/Downloads", "~/Documents", "~/Desktop/" },
|
||||||
|
})
|
||||||
|
|
||||||
|
local keymap = vim.keymap
|
||||||
|
|
||||||
|
keymap.set("n", "<leader>wr", "<cmd>SessionRestore<CR>", { desc = "Restore session for cwd" }) -- restore last workspace session for current directory
|
||||||
|
keymap.set("n", "<leader>ws", "<cmd>SessionSave<CR>", { desc = "Save session for auto session root dir" }) -- save workspace session for current working directory
|
||||||
|
end,
|
||||||
|
}
|
|
@ -3,12 +3,11 @@ return {
|
||||||
lazy = false,
|
lazy = false,
|
||||||
priority = 1000, -- Make sure to load this before all the other start plugins.
|
priority = 1000, -- Make sure to load this before all the other start plugins.
|
||||||
config = function()
|
config = function()
|
||||||
require("bamboo.").setup({
|
require("bamboo").setup({
|
||||||
-- ────────────────────────────< optional configuration here >─────────────────────────
|
-- ────────────────────────────< optional configuration here >─────────────────────────
|
||||||
style = "multiplex",
|
|
||||||
code_style = {
|
code_style = {
|
||||||
comments = { italic = false, bold = true },
|
comments = { italic = false, bold = true },
|
||||||
conditionals = { italic = false },
|
conditionals = { italic = true },
|
||||||
keywords = { bold = true },
|
keywords = { bold = true },
|
||||||
functions = {},
|
functions = {},
|
||||||
namespaces = { italic = true },
|
namespaces = { italic = true },
|
||||||
|
|
47
lua/pika/plugins/gitsigns.lua
Normal file
47
lua/pika/plugins/gitsigns.lua
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
return {
|
||||||
|
"lewis6991/gitsigns.nvim",
|
||||||
|
event = { "BufReadPre", "BufNewFile" },
|
||||||
|
opts = {
|
||||||
|
on_attach = function(bufnr)
|
||||||
|
local gs = package.loaded.gitsigns
|
||||||
|
|
||||||
|
local function map(mode, l, r, desc)
|
||||||
|
vim.keymap.set(mode, l, r, { buffer = bufnr, desc = desc })
|
||||||
|
end
|
||||||
|
|
||||||
|
-- Navigation
|
||||||
|
map("n", "]h", gs.next_hunk, "Next Hunk")
|
||||||
|
map("n", "[h", gs.prev_hunk, "Prev Hunk")
|
||||||
|
|
||||||
|
-- Actions
|
||||||
|
map("n", "<leader>hs", gs.stage_hunk, "Stage hunk")
|
||||||
|
map("n", "<leader>hr", gs.reset_hunk, "Reset hunk")
|
||||||
|
map("v", "<leader>hs", function()
|
||||||
|
gs.stage_hunk({ vim.fn.line("."), vim.fn.line("v") })
|
||||||
|
end, "Stage hunk")
|
||||||
|
map("v", "<leader>hr", function()
|
||||||
|
gs.reset_hunk({ vim.fn.line("."), vim.fn.line("v") })
|
||||||
|
end, "Reset hunk")
|
||||||
|
|
||||||
|
map("n", "<leader>hS", gs.stage_buffer, "Stage buffer")
|
||||||
|
map("n", "<leader>hR", gs.reset_buffer, "Reset buffer")
|
||||||
|
|
||||||
|
map("n", "<leader>hu", gs.undo_stage_hunk, "Undo stage hunk")
|
||||||
|
|
||||||
|
map("n", "<leader>hp", gs.preview_hunk, "Preview hunk")
|
||||||
|
|
||||||
|
map("n", "<leader>hb", function()
|
||||||
|
gs.blame_line({ full = true })
|
||||||
|
end, "Blame line")
|
||||||
|
map("n", "<leader>hB", gs.toggle_current_line_blame, "Toggle line blame")
|
||||||
|
|
||||||
|
map("n", "<leader>hd", gs.diffthis, "Diff this")
|
||||||
|
map("n", "<leader>hD", function()
|
||||||
|
gs.diffthis("~")
|
||||||
|
end, "Diff this ~")
|
||||||
|
|
||||||
|
-- Text object
|
||||||
|
map({ "o", "x" }, "ih", ":<C-U>Gitsigns select_hunk<CR>", "Gitsigns select hunk")
|
||||||
|
end,
|
||||||
|
},
|
||||||
|
}
|
19
lua/pika/plugins/lazygit.lua
Normal file
19
lua/pika/plugins/lazygit.lua
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
return {
|
||||||
|
"kdheepak/lazygit.nvim",
|
||||||
|
cmd = {
|
||||||
|
"LazyGit",
|
||||||
|
"LazyGitConfig",
|
||||||
|
"LazyGitCurrentFile",
|
||||||
|
"LazyGitFilter",
|
||||||
|
"LazyGitFilterCurrentFile",
|
||||||
|
},
|
||||||
|
-- optional for floating window border decoration
|
||||||
|
dependencies = {
|
||||||
|
"nvim-lua/plenary.nvim",
|
||||||
|
},
|
||||||
|
-- setting the keybinding for LazyGit with 'keys' is recommended in
|
||||||
|
-- order to load the plugin when the command is run for the first time
|
||||||
|
keys = {
|
||||||
|
{ "<leader>lg", "<cmd>LazyGit<cr>", desc = "Open lazy git" },
|
||||||
|
},
|
||||||
|
}
|
|
@ -91,6 +91,8 @@ return {
|
||||||
capabilities = capabilities,
|
capabilities = capabilities,
|
||||||
filetypes = {
|
filetypes = {
|
||||||
"html",
|
"html",
|
||||||
|
"typescriptreact",
|
||||||
|
"javascriptreact",
|
||||||
"css",
|
"css",
|
||||||
"sass",
|
"sass",
|
||||||
"scss",
|
"scss",
|
||||||
|
|
|
@ -27,11 +27,16 @@ return {
|
||||||
mason_lspconfig.setup({
|
mason_lspconfig.setup({
|
||||||
-- list of servers for mason to install
|
-- list of servers for mason to install
|
||||||
ensure_installed = {
|
ensure_installed = {
|
||||||
|
"tsserver",
|
||||||
"html",
|
"html",
|
||||||
"cssls",
|
"cssls",
|
||||||
"tailwindcss",
|
"tailwindcss",
|
||||||
"svelte",
|
"svelte",
|
||||||
"lua_ls",
|
"lua_ls",
|
||||||
|
"graphql",
|
||||||
|
"emmet_ls",
|
||||||
|
"prismals",
|
||||||
|
"pyright",
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -39,6 +44,10 @@ return {
|
||||||
ensure_installed = {
|
ensure_installed = {
|
||||||
"prettier", -- prettier formatter
|
"prettier", -- prettier formatter
|
||||||
"stylua", -- lua formatter
|
"stylua", -- lua formatter
|
||||||
|
-- "isort", -- python formatter
|
||||||
|
-- "black", -- python formatter
|
||||||
|
"pylint",
|
||||||
|
"eslint_d",
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
end,
|
end,
|
||||||
|
|
|
@ -63,7 +63,7 @@ return {
|
||||||
formatting = {
|
formatting = {
|
||||||
format = lspkind.cmp_format({
|
format = lspkind.cmp_format({
|
||||||
mode = "symbol_text", -- show symbol text with icons
|
mode = "symbol_text", -- show symbol text with icons
|
||||||
maxwidth = 90,
|
maxwidth = 130,
|
||||||
ellipsis_char = "...",
|
ellipsis_char = "...",
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
|
|
@ -1,110 +1,110 @@
|
||||||
return {
|
return {
|
||||||
"nvim-treesitter/nvim-treesitter-textobjects",
|
"nvim-treesitter/nvim-treesitter-textobjects",
|
||||||
lazy = true,
|
lazy = true,
|
||||||
config = function()
|
config = function()
|
||||||
require("nvim-treesitter.configs").setup({
|
require("nvim-treesitter.configs").setup({
|
||||||
textobjects = {
|
textobjects = {
|
||||||
select = {
|
select = {
|
||||||
enable = true,
|
enable = true,
|
||||||
|
|
||||||
-- Automatically jump forward to textobj, similar to targets.vim
|
-- Automatically jump forward to textobj, similar to targets.vim
|
||||||
lookahead = true,
|
lookahead = true,
|
||||||
|
|
||||||
keymaps = {
|
keymaps = {
|
||||||
-- You can use the capture groups defined in textobjects.scm
|
-- You can use the capture groups defined in textobjects.scm
|
||||||
["a="] = { query = "@assignment.outer", desc = "Select outer part of an assignment" },
|
["a="] = { query = "@assignment.outer", desc = "Select outer part of an assignment" },
|
||||||
["i="] = { query = "@assignment.inner", desc = "Select inner part of an assignment" },
|
["i="] = { query = "@assignment.inner", desc = "Select inner part of an assignment" },
|
||||||
["l="] = { query = "@assignment.lhs", desc = "Select left hand side of an assignment" },
|
["l="] = { query = "@assignment.lhs", desc = "Select left hand side of an assignment" },
|
||||||
["r="] = { query = "@assignment.rhs", desc = "Select right hand side of an assignment" },
|
["r="] = { query = "@assignment.rhs", desc = "Select right hand side of an assignment" },
|
||||||
|
|
||||||
-- works for javascript/typescript files (custom capture I created in after/queries/ecma/textobjects.scm)
|
-- works for javascript/typescript files (custom capture I created in after/queries/ecma/textobjects.scm)
|
||||||
["a:"] = { query = "@property.outer", desc = "Select outer part of an object property" },
|
["a:"] = { query = "@property.outer", desc = "Select outer part of an object property" },
|
||||||
["i:"] = { query = "@property.inner", desc = "Select inner part of an object property" },
|
["i:"] = { query = "@property.inner", desc = "Select inner part of an object property" },
|
||||||
["l:"] = { query = "@property.lhs", desc = "Select left part of an object property" },
|
["l:"] = { query = "@property.lhs", desc = "Select left part of an object property" },
|
||||||
["r:"] = { query = "@property.rhs", desc = "Select right part of an object property" },
|
["r:"] = { query = "@property.rhs", desc = "Select right part of an object property" },
|
||||||
|
|
||||||
["aa"] = { query = "@parameter.outer", desc = "Select outer part of a parameter/argument" },
|
["aa"] = { query = "@parameter.outer", desc = "Select outer part of a parameter/argument" },
|
||||||
["ia"] = { query = "@parameter.inner", desc = "Select inner part of a parameter/argument" },
|
["ia"] = { query = "@parameter.inner", desc = "Select inner part of a parameter/argument" },
|
||||||
|
|
||||||
["ai"] = { query = "@conditional.outer", desc = "Select outer part of a conditional" },
|
["ai"] = { query = "@conditional.outer", desc = "Select outer part of a conditional" },
|
||||||
["ii"] = { query = "@conditional.inner", desc = "Select inner part of a conditional" },
|
["ii"] = { query = "@conditional.inner", desc = "Select inner part of a conditional" },
|
||||||
|
|
||||||
["al"] = { query = "@loop.outer", desc = "Select outer part of a loop" },
|
["al"] = { query = "@loop.outer", desc = "Select outer part of a loop" },
|
||||||
["il"] = { query = "@loop.inner", desc = "Select inner part of a loop" },
|
["il"] = { query = "@loop.inner", desc = "Select inner part of a loop" },
|
||||||
|
|
||||||
["af"] = { query = "@call.outer", desc = "Select outer part of a function call" },
|
["af"] = { query = "@call.outer", desc = "Select outer part of a function call" },
|
||||||
["if"] = { query = "@call.inner", desc = "Select inner part of a function call" },
|
["if"] = { query = "@call.inner", desc = "Select inner part of a function call" },
|
||||||
|
|
||||||
["am"] = {
|
["am"] = { query = "@function.outer", desc = "Select outer part of a method/function definition" },
|
||||||
query = "@function.outer",
|
["im"] = { query = "@function.inner", desc = "Select inner part of a method/function definition" },
|
||||||
desc = "Select outer part of a method/function definition",
|
|
||||||
},
|
|
||||||
["im"] = {
|
|
||||||
query = "@function.inner",
|
|
||||||
desc = "Select inner part of a method/function definition",
|
|
||||||
},
|
|
||||||
|
|
||||||
["ac"] = { query = "@class.outer", desc = "Select outer part of a class" },
|
["ac"] = { query = "@class.outer", desc = "Select outer part of a class" },
|
||||||
["ic"] = { query = "@class.inner", desc = "Select inner part of a class" },
|
["ic"] = { query = "@class.inner", desc = "Select inner part of a class" },
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
swap = {
|
swap = {
|
||||||
enable = true,
|
enable = true,
|
||||||
swap_next = {
|
swap_next = {
|
||||||
["<leader>na"] = "@parameter.inner", -- swap parameters/argument with next
|
["<leader>na"] = "@parameter.inner", -- swap parameters/argument with next
|
||||||
["<leader>n:"] = "@property.outer", -- swap object property with next
|
["<leader>n:"] = "@property.outer", -- swap object property with next
|
||||||
["<leader>nm"] = "@function.outer", -- swap function with next
|
["<leader>nm"] = "@function.outer", -- swap function with next
|
||||||
},
|
},
|
||||||
swap_previous = {
|
swap_previous = {
|
||||||
["<leader>pa"] = "@parameter.inner", -- swap parameters/argument with prev
|
["<leader>pa"] = "@parameter.inner", -- swap parameters/argument with prev
|
||||||
["<leader>p:"] = "@property.outer", -- swap object property with prev
|
["<leader>p:"] = "@property.outer", -- swap object property with prev
|
||||||
["<leader>pm"] = "@function.outer", -- swap function with previous
|
["<leader>pm"] = "@function.outer", -- swap function with previous
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
move = {
|
move = {
|
||||||
enable = true,
|
enable = true,
|
||||||
set_jumps = true, -- whether to set jumps in the jumplist
|
set_jumps = true, -- whether to set jumps in the jumplist
|
||||||
goto_next_start = {
|
goto_next_start = {
|
||||||
["]f"] = { query = "@call.outer", desc = "Next function call start" },
|
["]f"] = { query = "@call.outer", desc = "Next function call start" },
|
||||||
["]m"] = { query = "@function.outer", desc = "Next method/function def start" },
|
["]m"] = { query = "@function.outer", desc = "Next method/function def start" },
|
||||||
["]c"] = { query = "@class.outer", desc = "Next class start" },
|
["]c"] = { query = "@class.outer", desc = "Next class start" },
|
||||||
["]i"] = { query = "@conditional.outer", desc = "Next conditional start" },
|
["]i"] = { query = "@conditional.outer", desc = "Next conditional start" },
|
||||||
["]l"] = { query = "@loop.outer", desc = "Next loop start" },
|
["]l"] = { query = "@loop.outer", desc = "Next loop start" },
|
||||||
|
|
||||||
-- You can pass a query group to use query from `queries/<lang>/<query_group>.scm file in your runtime path.
|
-- You can pass a query group to use query from `queries/<lang>/<query_group>.scm file in your runtime path.
|
||||||
-- Below example nvim-treesitter's `locals.scm` and `folds.scm`. They also provide highlights.scm and indent.scm.
|
-- Below example nvim-treesitter's `locals.scm` and `folds.scm`. They also provide highlights.scm and indent.scm.
|
||||||
["]s"] = { query = "@scope", query_group = "locals", desc = "Next scope" },
|
["]s"] = { query = "@scope", query_group = "locals", desc = "Next scope" },
|
||||||
["]z"] = { query = "@fold", query_group = "folds", desc = "Next fold" },
|
["]z"] = { query = "@fold", query_group = "folds", desc = "Next fold" },
|
||||||
},
|
},
|
||||||
goto_next_end = {
|
goto_next_end = {
|
||||||
["]F"] = { query = "@call.outer", desc = "Next function call end" },
|
["]F"] = { query = "@call.outer", desc = "Next function call end" },
|
||||||
["]M"] = { query = "@function.outer", desc = "Next method/function def end" },
|
["]M"] = { query = "@function.outer", desc = "Next method/function def end" },
|
||||||
["]C"] = { query = "@class.outer", desc = "Next class end" },
|
["]C"] = { query = "@class.outer", desc = "Next class end" },
|
||||||
["]I"] = { query = "@conditional.outer", desc = "Next conditional end" },
|
["]I"] = { query = "@conditional.outer", desc = "Next conditional end" },
|
||||||
["]L"] = { query = "@loop.outer", desc = "Next loop end" },
|
["]L"] = { query = "@loop.outer", desc = "Next loop end" },
|
||||||
},
|
},
|
||||||
goto_previous_start = {
|
goto_previous_start = {
|
||||||
["[f"] = { query = "@call.outer", desc = "Prev function call start" },
|
["[f"] = { query = "@call.outer", desc = "Prev function call start" },
|
||||||
["[m"] = { query = "@function.outer", desc = "Prev method/function def start" },
|
["[m"] = { query = "@function.outer", desc = "Prev method/function def start" },
|
||||||
["[c"] = { query = "@class.outer", desc = "Prev class start" },
|
["[c"] = { query = "@class.outer", desc = "Prev class start" },
|
||||||
["[i"] = { query = "@conditional.outer", desc = "Prev conditional start" },
|
["[i"] = { query = "@conditional.outer", desc = "Prev conditional start" },
|
||||||
["[l"] = { query = "@loop.outer", desc = "Prev loop start" },
|
["[l"] = { query = "@loop.outer", desc = "Prev loop start" },
|
||||||
},
|
},
|
||||||
goto_previous_end = {
|
goto_previous_end = {
|
||||||
["[F"] = { query = "@call.outer", desc = "Prev function call end" },
|
["[F"] = { query = "@call.outer", desc = "Prev function call end" },
|
||||||
["[M"] = { query = "@function.outer", desc = "Prev method/function def end" },
|
["[M"] = { query = "@function.outer", desc = "Prev method/function def end" },
|
||||||
["[C"] = { query = "@class.outer", desc = "Prev class end" },
|
["[C"] = { query = "@class.outer", desc = "Prev class end" },
|
||||||
["[I"] = { query = "@conditional.outer", desc = "Prev conditional end" },
|
["[I"] = { query = "@conditional.outer", desc = "Prev conditional end" },
|
||||||
["[L"] = { query = "@loop.outer", desc = "Prev loop end" },
|
["[L"] = { query = "@loop.outer", desc = "Prev loop end" },
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|
||||||
local ts_repeat_move = require("nvim-treesitter.textobjects.repeatable_move")
|
local ts_repeat_move = require("nvim-treesitter.textobjects.repeatable_move")
|
||||||
|
|
||||||
-- vim way: ; goes to the direction you were moving.
|
-- vim way: ; goes to the direction you were moving.
|
||||||
vim.keymap.set({ "n", "x", "o" }, ";", ts_repeat_move.repeat_last_move)
|
vim.keymap.set({ "n", "x", "o" }, ";", ts_repeat_move.repeat_last_move)
|
||||||
vim.keymap.set({ "n", "x", "o" }, ",", ts_repeat_move.repeat_last_move_opposite)
|
vim.keymap.set({ "n", "x", "o" }, ",", ts_repeat_move.repeat_last_move_opposite)
|
||||||
end,
|
|
||||||
|
-- Optionally, make builtin f, F, t, T also repeatable with ; and ,
|
||||||
|
vim.keymap.set({ "n", "x", "o" }, "f", ts_repeat_move.builtin_f)
|
||||||
|
vim.keymap.set({ "n", "x", "o" }, "F", ts_repeat_move.builtin_F)
|
||||||
|
vim.keymap.set({ "n", "x", "o" }, "t", ts_repeat_move.builtin_t)
|
||||||
|
vim.keymap.set({ "n", "x", "o" }, "T", ts_repeat_move.builtin_T)
|
||||||
|
end,
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,60 +1,74 @@
|
||||||
return {
|
return {
|
||||||
"nvim-telescope/telescope.nvim",
|
'nvim-telescope/telescope.nvim',
|
||||||
branch = "0.1.x",
|
branch = '0.1.x',
|
||||||
dependencies = {
|
dependencies = {
|
||||||
"nvim-lua/plenary.nvim",
|
'nvim-lua/plenary.nvim',
|
||||||
{ "nvim-telescope/telescope-fzf-native.nvim", build = "make" },
|
{ 'nvim-telescope/telescope-fzf-native.nvim', build = 'make' },
|
||||||
"nvim-tree/nvim-web-devicons",
|
'nvim-tree/nvim-web-devicons',
|
||||||
"folke/todo-comments.nvim",
|
'folke/todo-comments.nvim',
|
||||||
},
|
},
|
||||||
config = function()
|
config = function()
|
||||||
local telescope = require("telescope")
|
local telescope = require 'telescope'
|
||||||
local actions = require("telescope.actions")
|
local actions = require 'telescope.actions'
|
||||||
local transform_mod = require("telescope.actions.mt").transform_mod
|
local transform_mod = require('telescope.actions.mt').transform_mod
|
||||||
|
|
||||||
telescope.setup({
|
local trouble = require 'trouble'
|
||||||
defaults = {
|
local trouble_telescope = require 'trouble.providers.telescope'
|
||||||
path_display = { "smart" },
|
|
||||||
mappings = {
|
|
||||||
i = {
|
|
||||||
["<C-k>"] = actions.move_selection_previous, -- move to prev result
|
|
||||||
["<C-j>"] = actions.move_selection_next, -- move to next result
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
telescope.load_extension("fzf")
|
-- or create your custom action
|
||||||
|
local custom_actions = transform_mod {
|
||||||
|
open_trouble_qflist = function(prompt_bufnr)
|
||||||
|
trouble.toggle 'quickfix'
|
||||||
|
end,
|
||||||
|
}
|
||||||
|
|
||||||
-- set keymaps
|
local trouble_telescope = require 'trouble.sources.telescope'
|
||||||
local map = vim.keymap.set -- for conciseness
|
|
||||||
|
|
||||||
-- Telescope mappings
|
telescope.setup {
|
||||||
map("n", "<leader>sf", "<cmd>Telescope find_files<CR>", { noremap = true, silent = true, desc = "Find Files" })
|
defaults = {
|
||||||
map("n", "<leader>sw", "<cmd>Telescope live_grep<CR>", { noremap = true, silent = true, desc = "Search Word" })
|
path_display = { 'smart' },
|
||||||
map("n", "<leader>sn", "<cmd>Telescope neovim<CR>", { noremap = true, silent = true, desc = "Neovim Files" })
|
mappings = {
|
||||||
map("n", "<leader><leader>", "<cmd>Telescope buffers<CR>", { noremap = true, silent = true, desc = "Buffers" })
|
i = {
|
||||||
local builtin = require("telescope.builtin")
|
['<C-k>'] = actions.move_selection_previous, -- move to prev result
|
||||||
|
['<C-j>'] = actions.move_selection_next, -- move to next result
|
||||||
|
['<C-q>'] = actions.send_selected_to_qflist + custom_actions.open_trouble_qflist,
|
||||||
|
['<C-t>'] = trouble_telescope.open, -- Updated line
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
map("n", "<leader>sn", function()
|
telescope.load_extension 'fzf'
|
||||||
builtin.find_files({ cwd = vim.fn.stdpath("config") })
|
|
||||||
end, { desc = "[S]earch [N]eovim files" })
|
|
||||||
map("n", "<leader>ff", builtin.find_files, { desc = "[S]earch [F]iles" })
|
|
||||||
map("n", "<leader>sh", builtin.help_tags, { desc = "[S]earch [H]elp" })
|
|
||||||
map("n", "<leader>sk", builtin.keymaps, { desc = "[S]earch [K]eymaps" })
|
|
||||||
map("n", "<leader>sg", builtin.live_grep, { desc = "[S]earch by [G]rep" })
|
|
||||||
map("n", "<leader>sd", builtin.diagnostics, { desc = "[S]earch [D]iagnostics" })
|
|
||||||
map("n", "<leader>sr", builtin.resume, { desc = "[S]earch [R]esume" })
|
|
||||||
map("n", "<leader>s.", builtin.oldfiles, { desc = '[S]earch Recent Files ("." for repeat)' })
|
|
||||||
map("n", "<leader><leader>", builtin.buffers, { desc = "[ ] Find existing buffers" })
|
|
||||||
map("n", "<leader>q", vim.cmd.q)
|
|
||||||
|
|
||||||
-- Additional custom mappings
|
-- set keymaps
|
||||||
map("n", "<leader>/", function()
|
local map = vim.keymap.set -- for conciseness
|
||||||
builtin.current_buffer_fuzzy_find(require("telescope.themes").get_dropdown())
|
|
||||||
end, { desc = "[/] Fuzzily search in current buffer" })
|
-- Telescope mappings
|
||||||
map("n", "<leader>s/", function()
|
map('n', '<leader>sf', '<cmd>Telescope find_files<CR>', { noremap = true, silent = true, desc = 'Find Files' })
|
||||||
builtin.live_grep({ grep_open_files = true, prompt_title = "Live Grep in Open Files" })
|
map('n', '<leader>sw', '<cmd>Telescope live_grep<CR>', { noremap = true, silent = true, desc = 'Search Word' })
|
||||||
end, { desc = "[S]earch [/] in Open Files" })
|
map('n', '<leader>sn', '<cmd>Telescope neovim<CR>', { noremap = true, silent = true, desc = 'Neovim Files' })
|
||||||
end,
|
map('n', '<leader><leader>', '<cmd>Telescope buffers<CR>', { noremap = true, silent = true, desc = 'Buffers' })
|
||||||
|
local builtin = require 'telescope.builtin'
|
||||||
|
|
||||||
|
map('n', '<leader>sn', function()
|
||||||
|
builtin.find_files { cwd = vim.fn.stdpath 'config' }
|
||||||
|
end, { desc = '[S]earch [N]eovim files' })
|
||||||
|
map('n', '<leader>ff', builtin.find_files, { desc = '[S]earch [F]iles' })
|
||||||
|
map('n', '<leader>sh', builtin.help_tags, { desc = '[S]earch [H]elp' })
|
||||||
|
map('n', '<leader>sk', builtin.keymaps, { desc = '[S]earch [K]eymaps' })
|
||||||
|
map('n', '<leader>sg', builtin.live_grep, { desc = '[S]earch by [G]rep' })
|
||||||
|
map('n', '<leader>sd', builtin.diagnostics, { desc = '[S]earch [D]iagnostics' })
|
||||||
|
map('n', '<leader>sr', builtin.resume, { desc = '[S]earch [R]esume' })
|
||||||
|
map('n', '<leader>s.', builtin.oldfiles, { desc = '[S]earch Recent Files ("." for repeat)' })
|
||||||
|
map('n', '<leader><leader>', builtin.buffers, { desc = '[ ] Find existing buffers' })
|
||||||
|
map('n', '<leader>q', vim.cmd.q)
|
||||||
|
|
||||||
|
-- Additional custom mappings
|
||||||
|
map('n', '<leader>/', function()
|
||||||
|
builtin.current_buffer_fuzzy_find(require('telescope.themes').get_dropdown())
|
||||||
|
end, { desc = '[/] Fuzzily search in current buffer' })
|
||||||
|
map('n', '<leader>s/', function()
|
||||||
|
builtin.live_grep { grep_open_files = true, prompt_title = 'Live Grep in Open Files' }
|
||||||
|
end, { desc = '[S]earch [/] in Open Files' })
|
||||||
|
end,
|
||||||
}
|
}
|
||||||
|
|
21
lua/pika/plugins/todo-comments.lua
Normal file
21
lua/pika/plugins/todo-comments.lua
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
return {
|
||||||
|
"folke/todo-comments.nvim",
|
||||||
|
event = { "BufReadPre", "BufNewFile" },
|
||||||
|
dependencies = { "nvim-lua/plenary.nvim" },
|
||||||
|
config = function()
|
||||||
|
local todo_comments = require("todo-comments")
|
||||||
|
|
||||||
|
-- set keymaps
|
||||||
|
local keymap = vim.keymap -- for conciseness
|
||||||
|
|
||||||
|
keymap.set("n", "]t", function()
|
||||||
|
todo_comments.jump_next()
|
||||||
|
end, { desc = "Next todo comment" })
|
||||||
|
|
||||||
|
keymap.set("n", "[t", function()
|
||||||
|
todo_comments.jump_prev()
|
||||||
|
end, { desc = "Previous todo comment" })
|
||||||
|
|
||||||
|
todo_comments.setup()
|
||||||
|
end,
|
||||||
|
}
|
12
lua/pika/plugins/trouble.lua
Normal file
12
lua/pika/plugins/trouble.lua
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
return {
|
||||||
|
"folke/trouble.nvim",
|
||||||
|
dependencies = { "nvim-tree/nvim-web-devicons", "folke/todo-comments.nvim" },
|
||||||
|
keys = {
|
||||||
|
{ "<leader>xx", "<cmd>TroubleToggle<CR>", desc = "Open/close trouble list" },
|
||||||
|
{ "<leader>xw", "<cmd>TroubleToggle workspace_diagnostics<CR>", desc = "Open trouble workspace diagnostics" },
|
||||||
|
{ "<leader>xd", "<cmd>TroubleToggle document_diagnostics<CR>", desc = "Open trouble document diagnostics" },
|
||||||
|
{ "<leader>xq", "<cmd>TroubleToggle quickfix<CR>", desc = "Open trouble quickfix list" },
|
||||||
|
{ "<leader>xl", "<cmd>TroubleToggle loclist<CR>", desc = "Open trouble location list" },
|
||||||
|
{ "<leader>xt", "<cmd>TodoTrouble<CR>", desc = "Open todos in trouble" },
|
||||||
|
},
|
||||||
|
}
|
|
@ -1,13 +1,13 @@
|
||||||
return {
|
return {
|
||||||
"folke/which-key.nvim",
|
'folke/which-key.nvim',
|
||||||
event = "VeryLazy",
|
event = 'VeryLazy',
|
||||||
init = function()
|
init = function()
|
||||||
vim.o.timeout = true
|
vim.o.timeout = true
|
||||||
vim.o.timeoutlen = 350
|
vim.o.timeoutlen = 300
|
||||||
end,
|
end,
|
||||||
opts = {
|
opts = {
|
||||||
-- your configuration comes here
|
-- your configuration comes here
|
||||||
-- or leave it empty to use the default settings
|
-- or leave it empty to use the default settings
|
||||||
-- refer to the configuration section below
|
-- refer to the configuration section below
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue