fresh
This commit is contained in:
commit
0cbbf662e3
473 files changed
+40489
No files matched your search
@@ -0,0 +1,43 @@
|
||||
return {
|
||||
"tomasky/bookmarks.nvim",
|
||||
config = function()
|
||||
require("bookmarks").setup({
|
||||
save_file = vim.fn.stdpath("state") .. "/bookmarks",
|
||||
keywords = {
|
||||
["@t"] = " ",
|
||||
["@w"] = " ",
|
||||
["@f"] = " ",
|
||||
["@n"] = " ",
|
||||
},
|
||||
})
|
||||
require("lazyvim.util").on_load("telescope.nvim", function()
|
||||
require("telescope").setup({
|
||||
extensions = {
|
||||
repo = {
|
||||
list = {
|
||||
fd_opts = {
|
||||
"--no-ignore-vcs",
|
||||
},
|
||||
search_dirs = {
|
||||
"~/Repos/",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
require("telescope").load_extension("bookmarks")
|
||||
end)
|
||||
end,
|
||||
-- stylua: ignore
|
||||
keys = {
|
||||
{ "<leader>fB", "<cmd>Telescope bookmarks list<cr>", desc = "Bookmarks" },
|
||||
{ "mm", function() require("bookmarks").bookmark_toggle() end, desc = "Toggle Bookmark" },
|
||||
{ "ml", function() require("bookmarks").bookmark_ann() end, desc = "Add/Edit Current Line" },
|
||||
{ "mc", function() require("bookmarks").bookmark_clean() end, desc = "Clear All Bookmarks" },
|
||||
{ "mn", function() require("bookmarks").bookmark_next() end, desc = "Next Bookmark" },
|
||||
{ "mp", function() require("bookmarks").bookmark_prev() end, desc = "Previous Bookmark" },
|
||||
{ "]k", function() require("bookmarks").bookmark_next() end, desc = "Next Bookmark" },
|
||||
{ "[k", function() require("bookmarks").bookmark_prev() end, desc = "Previous Bookmark" },
|
||||
{ "mL", function() require("bookmarks").bookmark_list() end, desc = "List Bookmarks" },
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
return {
|
||||
"uga-rosa/ccc.nvim",
|
||||
init = function()
|
||||
vim.api.nvim_create_autocmd("BufReadPost", {
|
||||
callback = function()
|
||||
local firstline = vim.api.nvim_buf_get_lines(0, 0, 1, false)[1]
|
||||
if vim.endswith(firstline, "vim-pseudo-modeline: buffer_has_colors") then
|
||||
vim.cmd.CccHighlighterEnable()
|
||||
end
|
||||
end,
|
||||
})
|
||||
end,
|
||||
ft = { "css", "scss", "sh" },
|
||||
cmd = { "CccPick", "CccConvert", "CccHighlighterEnable", "CccHighlighterDisable", "CccHighlighterToggle" },
|
||||
keys = {
|
||||
{ "<leader>up", "<cmd>CccHighlighterToggle<cr>", desc = "Toggle Paint/Colorizer" },
|
||||
{ "<A-C>", "<cmd>CccConvert<cr>", desc = "Convert color" },
|
||||
{ "<S-c>", "<cmd>CccPick<cr>", desc = "Pick Color" },
|
||||
},
|
||||
opts = {
|
||||
highlighter = {
|
||||
auto_enable = true,
|
||||
lsp = true,
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
return {
|
||||
"luckasRanarison/nvim-devdocs",
|
||||
cmd = {
|
||||
"DevdocsFetch",
|
||||
"DevdocsInstall",
|
||||
"DevdocsUninstall",
|
||||
"DevdocsOpen",
|
||||
"DevdocsOpenFloat",
|
||||
"DevdocsOpenCurrent",
|
||||
"DevdocsOpenCurrentFloat",
|
||||
"DevdocsUpdate",
|
||||
"DevdocsUpdateAll",
|
||||
},
|
||||
keys = {
|
||||
{ "<leader>sE", "<cmd>DevdocsOpen<cr>", desc = "Devdocs" },
|
||||
{ "<leader>se", "<cmd>DevdocsOpenCurrent<cr>", desc = "Devdocs Current" },
|
||||
},
|
||||
opts = {
|
||||
dir_path = vim.fn.stdpath("data") .. "/devdocs", -- installation directory
|
||||
telescope = {}, -- passed to the telescope picker
|
||||
float_win = { -- passed to nvim_open_win(), see :h api-floatwin
|
||||
relative = "editor",
|
||||
height = 25,
|
||||
width = 100,
|
||||
border = "rounded",
|
||||
},
|
||||
wrap = false, -- text wrap, only applies to floating window
|
||||
previewer_cmd = nil, -- for example: "glow"
|
||||
cmd_args = {}, -- example using glow: { "-s", "dark", "-w", "80" }
|
||||
cmd_ignore = {}, -- ignore cmd rendering for the listed docs
|
||||
picker_cmd = false, -- use cmd previewer in picker preview
|
||||
picker_cmd_args = {}, -- example using glow: { "-s", "dark", "-w", "50" }
|
||||
after_open = function(bufnr)
|
||||
vim.api.nvim_buf_set_keymap(bufnr, "n", "q", ":close<CR>", {})
|
||||
end,
|
||||
ensure_installed = {
|
||||
"javascript",
|
||||
"lua-5.4",
|
||||
"fish-3.6",
|
||||
"git",
|
||||
"npm",
|
||||
"node",
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
return {
|
||||
"nvim-neorg/neorg",
|
||||
build = ":Neorg sync-parsers",
|
||||
dependencies = { "nvim-lua/plenary.nvim" },
|
||||
event = "VeryLazy",
|
||||
opts = {
|
||||
load = {
|
||||
["core.defaults"] = {}, -- Loads default behaviour
|
||||
["core.concealer"] = {}, -- Adds pretty icons to your documents
|
||||
["core.keybinds"] = {}, -- Adds default keybindings
|
||||
["core.completion"] = {
|
||||
config = {
|
||||
engine = "nvim-cmp",
|
||||
},
|
||||
}, -- Enables support for completion plugins
|
||||
["core.journal"] = {}, -- Enables support for the journal module
|
||||
["core.dirman"] = { -- Manages Neorg workspaces
|
||||
config = {
|
||||
workspaces = {
|
||||
notes = "~/projects/notes",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,95 @@
|
||||
return {
|
||||
"epwalsh/obsidian.nvim",
|
||||
event = { "BufReadPre" .. vim.fn.expand("~") .. "Documentos/Obsidian/obsidianVault/root/**.md" },
|
||||
keys = {
|
||||
{
|
||||
"gf",
|
||||
function()
|
||||
if require("obsidian").util.cursor_on_markdown_link() then
|
||||
return "<cmd>ObsidianFollowLink<CR>"
|
||||
else
|
||||
return "gf"
|
||||
end
|
||||
end,
|
||||
noremap = false,
|
||||
expr = true,
|
||||
},
|
||||
},
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
"hrsh7th/nvim-cmp",
|
||||
"nvim-telescope/telescope.nvim",
|
||||
},
|
||||
opts = {
|
||||
dir = vim.env.HOME .. "Documentos/Obsidian/obsidianVault/root", -- specify the vault location. no need to call 'vim.fn.expand' here
|
||||
use_advanced_uri = true,
|
||||
finder = "telescope.nvim",
|
||||
mappings = {},
|
||||
|
||||
templates = {
|
||||
subdir = "templates",
|
||||
date_format = "%Y-%m-%d-%a",
|
||||
time_format = "%H:%M",
|
||||
},
|
||||
|
||||
backlinks = { height = 10, wrap = true },
|
||||
|
||||
-- Optional, by default when you use `:ObsidianFollowLink` on a link to an external
|
||||
-- URL it will be ignored but you can customize this behavior here.
|
||||
follow_url_func = function(url)
|
||||
-- Open the URL in the default web browser.
|
||||
vim.fn.jobstart({ "xdg-open", url }) -- linux
|
||||
end,
|
||||
|
||||
-- Optional, set to true if you use the Obsidian Advanced URI plugin.
|
||||
-- https://github.com/Vinzent03/obsidian-advanced-uri
|
||||
use_advanced_uri = false,
|
||||
|
||||
-- Optional, set to true to force ':ObsidianOpen' to bring the app to the foreground.
|
||||
open_app_foreground = false,
|
||||
|
||||
-- Optional, by default commands like `:ObsidianSearch` will attempt to use
|
||||
-- telescope.nvim, fzf-lua, and fzf.nvim (in that order), and use the
|
||||
-- first one they find. By setting this option to your preferred
|
||||
-- finder you can attempt it first. Note that if the specified finder
|
||||
-- is not installed, or if it the command does not support it, the
|
||||
-- remaining finders will be attempted in the original order.
|
||||
finder = "telescope.nvim",
|
||||
|
||||
-- Optional, determines whether to open notes in a horizontal split, a vertical split,
|
||||
-- or replacing the current buffer (default)
|
||||
-- Accepted values are "current", "hsplit" and "vsplit"
|
||||
open_notes_in = "current",
|
||||
|
||||
daily_notes = {
|
||||
folder = "journal/daily",
|
||||
date_format = "%Y-%m-%d",
|
||||
},
|
||||
|
||||
completion = {
|
||||
nvim_cmp = true,
|
||||
min_chars = 2,
|
||||
-- Where to put new notes created from completion. Valid options are
|
||||
-- * "current_dir" - put new notes in same directory as the current buffer.
|
||||
-- * "notes_subdir" - put new notes in the default notes subdirectory.
|
||||
new_notes_location = "current_dir",
|
||||
|
||||
-- Whether to add the output of the node_id_func to new notes in autocompletion.
|
||||
-- E.g. "[[Foo" completes to "[[foo|Foo]]" assuming "foo" is the ID of the note.
|
||||
prepend_note_id = false,
|
||||
},
|
||||
|
||||
note_frontmatter_func = function(note)
|
||||
-- This is equivalent to the default frontmatter function.
|
||||
local out = { id = note.id, aliases = note.aliases, tags = note.tags }
|
||||
-- `note.metadata` contains any manually added fields in the frontmatter.
|
||||
-- So here we just make sure those fields are kept in the frontmatter.
|
||||
if note.metadata ~= nil and require("obsidian").util.table_length(note.metadata) > 0 then
|
||||
for k, v in pairs(note.metadata) do
|
||||
out[k] = v
|
||||
end
|
||||
end
|
||||
return out
|
||||
end,
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
return {
|
||||
{
|
||||
"sindrets/diffview.nvim",
|
||||
keys = {
|
||||
{ "<leader>gd", "<cmd>DiffviewFileHistory<CR>", desc = "Diff File History" },
|
||||
{ "<leader>gD", "<cmd>DiffviewOpen<CR>", desc = "Diff View Open" },
|
||||
},
|
||||
opts = function(_, opts)
|
||||
local actions = require("diffview.actions")
|
||||
|
||||
opts.keymaps = {
|
||||
--stylua: ignore
|
||||
view = {
|
||||
{ "n", "<leader>gCo", actions.conflict_choose("ours"), { desc = "Choose the OURS version of a conflict" } },
|
||||
{ "n", "<leader>gCt", actions.conflict_choose("theirs"), { desc = "Choose the THEIRS version of a conflict" } },
|
||||
{ "n", "<leader>gCb", actions.conflict_choose("base"), { desc = "Choose the BASE version of a conflict" } },
|
||||
{ "n", "<leader>gCa", actions.conflict_choose("all"), { desc = "Choose all the versions of a conflict" } },
|
||||
{ "n", "<leader>gCx", actions.conflict_choose("none"), { desc = "Delete the conflict region" } },
|
||||
{ "n", "<leader>gCO", actions.conflict_choose_all("ours"), { desc = "Choose the OURS version of a conflict for the whole file" } },
|
||||
{ "n", "<leader>gCT", actions.conflict_choose_all("theirs"), { desc = "Choose the THEIRS version of a conflict for the whole file" } },
|
||||
{ "n", "<leader>gCB", actions.conflict_choose_all("base"), { desc = "Choose the BASE version of a conflict for the whole file" } },
|
||||
{ "n", "<leader>gCA", actions.conflict_choose_all("all"), { desc = "Choose all the versions of a conflict for the whole file" } },
|
||||
{ "n", "<leader>gCX", actions.conflict_choose_all("none"), { desc = "Delete the conflict region for the whole file" } },
|
||||
},
|
||||
--stylua: ignore
|
||||
file_panel = {
|
||||
{ "n", "<leader>gCO", actions.conflict_choose_all("ours"), { desc = "Choose the OURS version of a conflict for the whole file" } },
|
||||
{ "n", "<leader>gCT", actions.conflict_choose_all("theirs"), { desc = "Choose the THEIRS version of a conflict for the whole file" } },
|
||||
{ "n", "<leader>gCB", actions.conflict_choose_all("base"), { desc = "Choose the BASE version of a conflict for the whole file" } },
|
||||
{ "n", "<leader>gCA", actions.conflict_choose_all("all"), { desc = "Choose all the versions of a conflict for the whole file" } },
|
||||
{ "n", "<leader>gCX", actions.conflict_choose_all("none"), { desc = "Delete the conflict region for the whole file" } },
|
||||
},
|
||||
}
|
||||
end,
|
||||
},
|
||||
{
|
||||
"folke/which-key.nvim",
|
||||
opts = {
|
||||
defaults = {
|
||||
["<leader>gC"] = { name = "conflicts" },
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
return {
|
||||
{
|
||||
"akinsho/git-conflict.nvim",
|
||||
opts = {
|
||||
default_mappings = false,
|
||||
},
|
||||
version = "v1.0.0",
|
||||
cmd = { "GitConflictChooseTheirs", "GitConflictChooseOurs", "GitConflictChooseBoth", "GitConflictListQf" },
|
||||
keys = {
|
||||
{ "<leader>gCt", "<cmd>GitConflictChooseTheirs<cr>", desc = "Choose Their Changes" },
|
||||
{ "<leader>gCo", "<cmd>GitConflictChooseOurs<cr>", desc = "Choose Our Changes" },
|
||||
{ "<leader>gCb", "<cmd>GitConflictChooseBoth<cr>", desc = "Choose Both changes" },
|
||||
{ "<leader>gCl", "<cmd>GitConflictListQf<cr>", desc = "Git Conflict Quicklist" },
|
||||
{ "[g", "<cmd>GitConflictPrevConflict<cr>", desc = "Prev Git Conflict" },
|
||||
{ "]g", "<cmd>GitConflictPrevConflict<cr>", desc = "Next Git Conflict" },
|
||||
},
|
||||
},
|
||||
{
|
||||
"folke/which-key.nvim",
|
||||
opts = {
|
||||
defaults = {
|
||||
["<leader>gC"] = { name = "conflicts" },
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,103 @@
|
||||
local prefix = "<leader>G"
|
||||
|
||||
return {
|
||||
{
|
||||
"almo7aya/openingh.nvim",
|
||||
cmd = { "OpenInGHRepo", "OpenInGHFile", "OpenInGHFileLines" },
|
||||
keys = {
|
||||
{ prefix .. "ro", "<cmd>OpenInGHRepo<CR>", desc = "Open git repo in web", mode = { "n" } },
|
||||
{ prefix .. "rf", "<cmd>OpenInGHFile<CR>", desc = "Open git file in web", mode = { "n" } },
|
||||
{ prefix .. "rc", "<cmd>OpenInGHFileLines<CR>", desc = "Open current line in web", mode = { "n", "x", "v" } },
|
||||
},
|
||||
},
|
||||
{
|
||||
"folke/which-key.nvim",
|
||||
opts = {
|
||||
defaults = {
|
||||
["<leader>G"] = { name = " github" },
|
||||
["<leader>Gc"] = { name = "comments" },
|
||||
["<leader>Gt"] = { name = "threads" },
|
||||
["<leader>Gi"] = { name = "issues" },
|
||||
["<leader>Gp"] = { name = "pull requests" },
|
||||
["<leader>Gpm"] = { name = "merge current PR" },
|
||||
["<leader>Gr"] = { name = "repo" },
|
||||
["<leader>Ga"] = { name = "assignee/reviewer" },
|
||||
["<leader>Gl"] = { name = "label" },
|
||||
["<leader>Ge"] = { name = "reaction" },
|
||||
["<leader>GR"] = { name = "review" },
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
"pwntester/octo.nvim",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
"nvim-telescope/telescope.nvim",
|
||||
"nvim-tree/nvim-web-devicons",
|
||||
},
|
||||
cmd = { "Octo" },
|
||||
opts = {
|
||||
use_diagnostic_signs = true,
|
||||
mappings = {},
|
||||
},
|
||||
keys = {
|
||||
{ prefix .. "ca", "<cmd>Octo comment add<CR>", desc = "Add a new comment" },
|
||||
{ prefix .. "cd", "<cmd>Octo comment delete<CR>", desc = "Delete a comment" },
|
||||
|
||||
{ prefix .. "ta", "<cmd>Octo thread resolve<CR>", desc = "Mark thread as resolved" },
|
||||
{ prefix .. "td", "<cmd>Octo thread unresolve<CR>", desc = "Mark thread as unresolved" },
|
||||
|
||||
{ prefix .. "ic", "<cmd>Octo issue close<CR>", desc = "Close current issue" },
|
||||
{ prefix .. "ir", "<cmd>Octo issue reopen<CR>", desc = "Reopen current issue" },
|
||||
{ prefix .. "il", "<cmd>Octo issue list<CR>", desc = "List open issues" },
|
||||
{ prefix .. "iu", "<cmd>Octo issue url<CR>", desc = "Copies URL of current issue" },
|
||||
{ prefix .. "io", "<cmd>Octo issue browser<CR>", desc = "Open current issue in browser" },
|
||||
|
||||
{ prefix .. "pp", "<cmd>Octo pr checkout<CR>", desc = "Checkout PR" },
|
||||
{ prefix .. "pmm", "<cmd>Octo pr merge commit<CR>", desc = "Merge commit PR" },
|
||||
{ prefix .. "pms", "<cmd>Octo pr merge squash<CR>", desc = "Squash merge PR" },
|
||||
{ prefix .. "pmd", "<cmd>Octo pr merge delete<CR>", desc = "Delete merge PR" },
|
||||
{ prefix .. "pmr", "<cmd>Octo pr merge rebase<CR>", desc = "Rebase merge PR" },
|
||||
{ prefix .. "pc", "<cmd>Octo pr close<CR>", desc = "Close current PR" },
|
||||
{ prefix .. "pn", "<cmd>Octo pr create<CR>", desc = "Create PR for current branch" },
|
||||
{ prefix .. "pd", "<cmd>Octo pr diff<CR>", desc = "Show PR diff" },
|
||||
{ prefix .. "ps", "<cmd>Octo pr list<CR>", desc = "List open PRs" },
|
||||
{ prefix .. "pr", "<cmd>Octo pr ready<CR>", desc = "Mark draft as ready for review" },
|
||||
{ prefix .. "po", "<cmd>Octo pr browser<CR>", desc = "Open current PR in browser" },
|
||||
{ prefix .. "pu", "<cmd>Octo pr url<CR>", desc = "Copies URL of current PR" },
|
||||
{ prefix .. "pt", "<cmd>Octo pr commits<CR>", desc = "List PR commits" },
|
||||
{ prefix .. "pl", "<cmd>Octo pr commits<CR>", desc = "List changed files in PR" },
|
||||
|
||||
{ prefix .. "rl", "<cmd>Octo repo list<CR>", desc = "List repo user stats" },
|
||||
{ prefix .. "rF", "<cmd>Octo repo fork<CR>", desc = "Fork repo" },
|
||||
{ prefix .. "ru", "<cmd>Octo repo url<CR>", desc = "Copies URL of current repo" },
|
||||
|
||||
{ prefix .. "aa", "<cmd> Octo assignee add<CR>", desc = "Assign a user" },
|
||||
{ prefix .. "ar", "<cmd> Octo assignee remove<CR>", desc = "Remove a user" },
|
||||
{ prefix .. "ap", "<cmd> Octo reviewer add<CR>", desc = "Assign a PR reviewer" },
|
||||
|
||||
{ prefix .. "la", "<cmd> Octo label add<CR>", desc = "Assign a label" },
|
||||
{ prefix .. "lr", "<cmd> Octo label remove<CR>", desc = "Remove a label" },
|
||||
{ prefix .. "lc", "<cmd> Octo label create<CR>", desc = "Create a label" },
|
||||
|
||||
{ prefix .. "e1", "<cmd>Octo reaction thumbs_up<CR>", desc = "Add 👍 reaction" },
|
||||
{ prefix .. "e2", "<cmd>Octo reaction thumbs_down<CR>", desc = "Add 👎 reaction" },
|
||||
{ prefix .. "e3", "<cmd>Octo reaction eyes<CR>", desc = "Add 👀 reaction" },
|
||||
{ prefix .. "e4", "<cmd>Octo reaction laugh<CR>", desc = "Add 😄 reaction" },
|
||||
{ prefix .. "e5", "<cmd>Octo reaction confused<CR>", desc = "Add 😕 reaction" },
|
||||
{ prefix .. "e6", "<cmd>Octo reaction rocket<CR>", desc = "Add 🚀 reaction" },
|
||||
{ prefix .. "e7", "<cmd>Octo reaction heart<CR>", desc = "Add ❤️ reaction" },
|
||||
{ prefix .. "e8", "<cmd>Octo reaction party<CR>", desc = "Add 🎉 reaction" },
|
||||
|
||||
{ prefix .. "x", "<cmd>Octo actions<CR>", desc = "Run an action" },
|
||||
|
||||
{ prefix .. "ss", "<cmd> Octo review start<CR>", desc = "Start review" },
|
||||
{ prefix .. "sf", "<cmd> Octo review submit<CR>", desc = "Submit review" },
|
||||
{ prefix .. "sr", "<cmd> Octo review resume<CR>", desc = "Submit resume" },
|
||||
{ prefix .. "sd", "<cmd> Octo review discard<CR>", desc = "Delete pending review" },
|
||||
{ prefix .. "sc", "<cmd> Octo review comments<CR>", desc = "View pending comments" },
|
||||
{ prefix .. "sp", "<cmd> Octo review commit<CR>", desc = "Select commit to review" },
|
||||
{ prefix .. "sc", "<cmd> Octo review close<CR>", desc = "Return to PR" },
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
return {
|
||||
{
|
||||
"ThePrimeagen/git-worktree.nvim",
|
||||
opts = {},
|
||||
config = function()
|
||||
require("lazyvim.util").on_load("telescope.nvim", function()
|
||||
require("telescope").load_extension("git_worktree")
|
||||
end)
|
||||
end,
|
||||
-- stylua: ignore
|
||||
keys = {
|
||||
{ "<leader>gwm", function() require("telescope").extensions.git_worktree.git_worktrees() end, desc = "Manage Worktrees" },
|
||||
{ "<leader>gwc", function() require("telescope").extensions.git_worktree.create_git_worktree() end, desc = "Create Worktree" },
|
||||
},
|
||||
},
|
||||
{
|
||||
"folke/which-key.nvim",
|
||||
opts = {
|
||||
defaults = {
|
||||
["<leader>gw"] = { name = "worktrees" },
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,74 @@
|
||||
return {
|
||||
{
|
||||
"ThePrimeagen/harpoon",
|
||||
branch = "harpoon2",
|
||||
dependencies = { "nvim-lua/plenary.nvim" },
|
||||
--stylua: ignore
|
||||
keys = {
|
||||
{ "<leader>ha", function() require("harpoon"):list():append() end, desc = "Add Mark" },
|
||||
{ "<leader>hh", function() require("harpoon").ui:toggle_quick_menu(require("harpoon"):list()) end, desc = "Menu" },
|
||||
{ "<leader>hf", "<cmd>Telescope harpoon marks<CR>", desc = "Files" },
|
||||
{ "<leader>h1", function() require("harpoon"):list():select(1) end, desc = "File 1" },
|
||||
{ "<leader>h2", function() require("harpoon"):list():select(2) end, desc = "File 2" },
|
||||
{ "<leader>h3", function() require("harpoon"):list():select(3) end, desc = "File 3" },
|
||||
{ "<leader>h4", function() require("harpoon"):list():select(4) end, desc = "File 4" },
|
||||
{ "<leader>h5", function() require("harpoon"):list():select(5) end, desc = "File 5" },
|
||||
{ "<leader>h6", function() require("harpoon"):list():select(6) end, desc = "File 6" },
|
||||
{ "<leader>h7", function() require("harpoon"):list():select(7) end, desc = "File 7" },
|
||||
{ "<leader>h8", function() require("harpoon"):list():select(8) end, desc = "File 8" },
|
||||
{ "<leader>h9", function() require("harpoon"):list():select(9) end, desc = "File 9" },
|
||||
{ "]H", function() require("harpoon"):list():next() end, desc = "Next Harpoon File" },
|
||||
{ "[H", function() require("harpoon"):list():prev() end, desc = "Prev Harpoon File" },
|
||||
{ "<M-]>", function() require("harpoon"):list():next() end, desc = "Next Harpoon File" },
|
||||
{ "<M-[>", function() require("harpoon"):list():prev() end, desc = "Prev Harpoon File" },
|
||||
},
|
||||
opts = {
|
||||
globalsettings = {
|
||||
save_on_toggle = true,
|
||||
enter_on_sendcmd = true,
|
||||
},
|
||||
},
|
||||
config = function(_, opts)
|
||||
require("harpoon").setup(opts)
|
||||
|
||||
require("lazyvim.util").on_load("telescope.nvim", function()
|
||||
require("telescope").load_extension("harpoon")
|
||||
end)
|
||||
end,
|
||||
},
|
||||
{
|
||||
"goolord/alpha-nvim",
|
||||
optional = true,
|
||||
opts = function(_, dashboard)
|
||||
local button = dashboard.button("h", " " .. " Harpoon", "<cmd>Telescope harpoon marks<CR>")
|
||||
button.opts.hl = "AlphaButtons"
|
||||
button.opts.hl_shortcut = "AlphaShortcut"
|
||||
table.insert(dashboard.section.buttons.val, 5, button)
|
||||
end,
|
||||
},
|
||||
{
|
||||
"nvimdev/dashboard-nvim",
|
||||
optional = true,
|
||||
opts = function(_, opts)
|
||||
local harpoon = {
|
||||
action = "Telescope harpoon marks",
|
||||
desc = " Harpoon",
|
||||
icon = " ",
|
||||
key = "h",
|
||||
}
|
||||
|
||||
harpoon.desc = harpoon.desc .. string.rep(" ", 43 - #harpoon.desc)
|
||||
harpoon.key_format = " %s"
|
||||
|
||||
table.insert(opts.config.center, 5, harpoon)
|
||||
end,
|
||||
},
|
||||
{
|
||||
"folke/which-key.nvim",
|
||||
opts = {
|
||||
defaults = {
|
||||
["<leader>h"] = { name = " harpoon" },
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
return {
|
||||
{
|
||||
import = "lazyvim.plugins.extras.editor.leap",
|
||||
},
|
||||
{
|
||||
"ggandor/leap.nvim",
|
||||
dependencies = {
|
||||
"ggandor/leap-spooky",
|
||||
},
|
||||
opts = {
|
||||
prefix = true,
|
||||
paste_on_remote_yank = true,
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
return {
|
||||
"aurum77/live-server.nvim",
|
||||
build = function()
|
||||
require("live_server.util").install()
|
||||
end,
|
||||
cmd = { "LiveServer", "LiveServerStart", "LiveServerStop" },
|
||||
keys = {
|
||||
{ "<leader>cV", ft = "html", "<cmd>LiveServer<CR>", desc = "Live Server" },
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
return {
|
||||
"Zeioth/markmap.nvim",
|
||||
build = "yarn global add markmap-cli",
|
||||
cmd = { "MarkmapOpen", "MarkmapSave", "MarkmapWatch", "MarkmapWatchStop" },
|
||||
opts = {},
|
||||
keys = {
|
||||
{ "<leader>cm", "<cmd>MarkmapOpen<cr>", desc = "Markmap" },
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
return {
|
||||
"nacro90/numb.nvim",
|
||||
event = "CmdlineEnter",
|
||||
opts = {},
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
return {
|
||||
"stevearc/oil.nvim",
|
||||
dependencies = "nvim-tree/nvim-web-devicons",
|
||||
opts = {
|
||||
delete_to_trash = true,
|
||||
keymaps = {
|
||||
["q"] = "actions.close",
|
||||
},
|
||||
},
|
||||
-- stylua: ignore
|
||||
keys = {
|
||||
{ "<leader>;", function() require("oil").toggle_float() end, desc = "Toggle oil" },
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
return {
|
||||
{
|
||||
"hedyhli/outline.nvim",
|
||||
cmd = { "Outline", "OutlineOpen" },
|
||||
keys = { { "<leader>cs", "<cmd>Outline<CR>", desc = "Symbols Outline" } },
|
||||
opts = {
|
||||
outline_window = {
|
||||
show_symbol_lineno = true,
|
||||
auto_jump = true,
|
||||
jump_highlight_duration = 150,
|
||||
},
|
||||
symbol_folding = {
|
||||
autofold_depth = 1,
|
||||
},
|
||||
symbols = {
|
||||
filter = require("lazyvim.config").kind_filter,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
"folke/edgy.nvim",
|
||||
optional = true,
|
||||
opts = function(_, opts)
|
||||
opts.right = opts.right or {}
|
||||
table.insert(opts.right, {
|
||||
title = "Symbols Outline",
|
||||
ft = "Outline",
|
||||
pinned = true,
|
||||
open = "OutlineOpen",
|
||||
size = { width = 0.15 },
|
||||
})
|
||||
end,
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
return {
|
||||
{
|
||||
"vuki656/package-info.nvim",
|
||||
event = {
|
||||
"BufRead package.json",
|
||||
"BufRead package-lock.json",
|
||||
},
|
||||
opts = {},
|
||||
-- stylua: ignore
|
||||
keys = {
|
||||
{ "<leader>ps", "<cmd>lua require('package-info').show({ force = true })<cr>", desc = "Show Package Versions" },
|
||||
{ "<leader>pu", "<cmd>lua require('package-info').update()<cr>", desc = "Update Package" },
|
||||
{ "<leader>pr", "<cmd>lua require('package-info').delete()<cr>", desc = "Remove Package" },
|
||||
{ "<leader>pv", "<cmd>lua require('package-info').change_version()<cr>", desc = "Change Package Version" },
|
||||
{ "<leader>pn", "<cmd>lua require('package-info').install()<cr>", desc = "Install New Dependency" },
|
||||
},
|
||||
},
|
||||
{
|
||||
"voldikss/vim-floaterm",
|
||||
optional = true,
|
||||
-- stylua: ignore
|
||||
keys = {
|
||||
{ "<leader>pp", "<cmd>FloatermNew --disposable --name=lazynpm --opener=edit --titleposition=center --height=0.85 --width=0.85 --cwd=<root> lazynpm<CR>", desc = "Lazynpm", },
|
||||
},
|
||||
},
|
||||
{
|
||||
"folke/which-key.nvim",
|
||||
opts = {
|
||||
defaults = {
|
||||
["<leader>p"] = { name = " packages" },
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
return {
|
||||
"TobinPalmer/rayso.nvim",
|
||||
cmd = { "Rayso" },
|
||||
keys = {
|
||||
{ "<leader>cS", "<cmd>Rayso<cr>", mode = { "n" }, desc = "Screenshot Code" },
|
||||
{ "<leader>cS", "<cmd>'<,'>Rayso<cr>", mode = { "v" }, desc = "Screenshot Selection" },
|
||||
},
|
||||
opts = {
|
||||
open_cmd = "librewolf",
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
return {
|
||||
"bennypowers/nvim-regexplainer",
|
||||
dependencies = {
|
||||
"MunifTanjim/nui.nvim",
|
||||
},
|
||||
opts = {
|
||||
auto = "true",
|
||||
},
|
||||
-- stylua: ignore
|
||||
keys = {
|
||||
{
|
||||
"gR",
|
||||
function()
|
||||
require("regexplainer").show()
|
||||
end,
|
||||
desc = "Regexplainer",
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,67 @@
|
||||
return {
|
||||
{
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
opts = function(_, opts)
|
||||
if type(opts.ensure_installed) == "table" then
|
||||
vim.list_extend(opts.ensure_installed, { "http" })
|
||||
end
|
||||
end,
|
||||
},
|
||||
{
|
||||
"rest-nvim/rest.nvim",
|
||||
dependencies = {
|
||||
{
|
||||
"gennaro-tedesco/nvim-jqx",
|
||||
ft = { "json", "yaml" },
|
||||
},
|
||||
},
|
||||
ft = { "http" },
|
||||
opts = {
|
||||
-- Open request results in a horizontal split
|
||||
result_split_horizontal = true,
|
||||
-- Keep the http file buffer above|left when split horizontal|vertical
|
||||
result_split_in_place = false,
|
||||
-- Skip SSL verification, useful for unknown certificates
|
||||
skip_ssl_verification = false,
|
||||
-- Encode URL before making request
|
||||
encode_url = true,
|
||||
-- Highlight request on run
|
||||
highlight = {
|
||||
enabled = true,
|
||||
timeout = 150,
|
||||
},
|
||||
result = {
|
||||
-- toggle showing URL, HTTP info, headers at top the of result window
|
||||
show_url = true,
|
||||
show_http_info = true,
|
||||
show_headers = true,
|
||||
-- executables or functions for formatting response body [optional]
|
||||
-- set them to false if you want to disable them
|
||||
formatters = {
|
||||
json = "jq",
|
||||
html = function(body)
|
||||
return vim.fn.system({ "tidy", "-i", "-q", "-" }, body)
|
||||
end,
|
||||
},
|
||||
},
|
||||
-- Jump to request line on run
|
||||
jump_to_request = false,
|
||||
env_file = ".env",
|
||||
custom_dynamic_variables = {},
|
||||
yank_dry_run = true,
|
||||
},
|
||||
-- stylua: ignore
|
||||
keys = {
|
||||
{ "<leader>thp", function() require("rest-nvim").run(true) end, desc = "Preview Request" },
|
||||
{ "<leader>thr", function() require("rest-nvim").run() end, desc = "Run Request" },
|
||||
},
|
||||
},
|
||||
{
|
||||
"folke/which-key.nvim",
|
||||
opts = {
|
||||
defaults = {
|
||||
["<leader>th"] = { name = "http" },
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
return {
|
||||
"chrisgrieser/nvim-early-retirement",
|
||||
event = "VeryLazy",
|
||||
opts = {
|
||||
retirementAgeMins = 30,
|
||||
ignoreUnsavedChangesBufs = false,
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
return {
|
||||
"roobert/search-replace.nvim",
|
||||
opts = {
|
||||
default_replace_single_buffer_options = "gcI",
|
||||
default_replace_multi_buffer_options = "egcI",
|
||||
},
|
||||
-- stylua: ignore
|
||||
keys = {
|
||||
{ "<leader>srb", "<CMD>SearchReplaceSingleBufferVisualSelection<CR>", desc = "Buffer", mode = "v" },
|
||||
{ "<leader>srv", "<CMD>SearchReplaceWithinVisualSelection<CR>", desc = "Visual Selection", mode = "v" },
|
||||
{ "<leader>srw", "<CMD>SearchReplaceWithinVisualSelectionCWord<CR>", desc = "Word on Buffer", mode = "v" },
|
||||
|
||||
{ "<leader>srb", "<CMD>SearchReplaceSingleBufferOpen<CR>", desc = "Buffer", mode = "n" },
|
||||
{ "<leader>srw", "<CMD>SearchReplaceSingleBufferCWord<CR>", desc = "Word on Buffer", mode = "n" },
|
||||
{ "<leader>srW", "<CMD>SearchReplaceSingleBufferCWORD<CR>", desc = "WORD on Buffer", mode = "n" },
|
||||
{ "<leader>sre", "<CMD>SearchReplaceSingleBufferCExpr<CR>", desc = "Expression on Buffer", mode = "n" },
|
||||
{ "<leader>srf", "<CMD>SearchReplaceSingleBufferCFile<CR>", desc = "File on Buffer", mode = "n" },
|
||||
|
||||
-- { "n", "<leader>rbs", "<CMD>SearchReplaceMultiBufferSelections<CR>", desc = "Search and Replace in Multi Buffer Selections" },
|
||||
-- { "n", "<leader>rbo", "<CMD>SearchReplaceMultiBufferOpen<CR>", desc = "Search and Replace in Multi Buffer, Open" },
|
||||
-- { "n", "<leader>rbw", "<CMD>SearchReplaceMultiBufferCWord<CR>", desc = "Search and Replace in Multi Buffer (Current Word)" },
|
||||
-- { "n", "<leader>rbW", "<CMD>SearchReplaceMultiBufferCWORD<CR>", desc = "Search and Replace in Multi Buffer (Current WORD)" },
|
||||
-- { "n", "<leader>rbe", "<CMD>SearchReplaceMultiBufferCExpr<CR>", desc = "Search and Replace in Multi Buffer (Current Expression)" },
|
||||
-- { "n", "<leader>rbf", "<CMD>SearchReplaceMultiBufferCFile<CR>", desc = "Search and Replace in Multi Buffer (Current File)" },
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
return {
|
||||
"mrjones2014/smart-splits.nvim",
|
||||
build = "./kitty/install-kittens.bash",
|
||||
-- stylua: ignore
|
||||
keys = {
|
||||
{ "<C-A-Left>", function() require("smart-splits").resize_left() end, desc = "Resize left", mode = "n" },
|
||||
{ "<C-A-Down>", function() require("smart-splits").resize_down() end, desc = "Resize down", mode = "n" },
|
||||
{ "<C-A-Up>", function() require("smart-splits").resize_up() end, desc = "Resize up", mode = "n" },
|
||||
{ "<C-A-Right>", function() require("smart-splits").resize_right() end, desc = "Resize right", mode = "n" },
|
||||
{ "<C-h>", function() require("smart-splits").move_cursor_left() end, desc = "Move cursor left", mode = "n" },
|
||||
{ "<C-j>", function() require("smart-splits").move_cursor_down() end, desc = "Move cursor down", mode = "n" },
|
||||
{ "<C-k>", function() require("smart-splits").move_cursor_up() end, desc = "Move cursor up", mode = "n" },
|
||||
{ "<C-l>", function() require("smart-splits").move_cursor_right() end, desc = "Move cursor right", mode = "n" },
|
||||
{ "<C-A-h>", function() require("smart-splits").swap_buf_left() end, desc = "Swap buffer left", mode = "n" },
|
||||
{ "<C-A-j>", function() require("smart-splits").swap_buf_down() end, desc = "Swap buffer down", mode = "n" },
|
||||
{ "<C-A-k>", function() require("smart-splits").swap_buf_up() end, desc = "Swap buffer up", mode = "n" },
|
||||
{ "<C-A-l>", function() require("smart-splits").swap_buf_right() end, desc = "Swap buffer right", mode = "n" },
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
return {
|
||||
"cshuaimin/ssr.nvim",
|
||||
opts = {},
|
||||
-- stylua: ignore
|
||||
keys = {
|
||||
{ "<leader>srs", function() require("ssr").open() end, desc = "Structural" },
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
return {
|
||||
"lambdalisue/suda.vim",
|
||||
-- stylua: ignore
|
||||
keys = {
|
||||
{ "<leader>W", ":SudaWrite<CR>", desc = "Suda Write" },
|
||||
},
|
||||
cmd = {
|
||||
"SudaRead",
|
||||
"SudaWrite",
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,7 @@
|
||||
return {
|
||||
"akinsho/bufferline.nvim",
|
||||
dependencies = {
|
||||
"backdround/tabscope.nvim",
|
||||
opts = {},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
return {
|
||||
"nvim-telescope/telescope.nvim",
|
||||
dependencies = {
|
||||
"prochri/telescope-all-recent.nvim",
|
||||
dependencies = {
|
||||
"kkharji/sqlite.lua",
|
||||
},
|
||||
opts = {
|
||||
pickers = {
|
||||
["workspaces.nvim#workspaces"] = {
|
||||
disable = false,
|
||||
sorting = "frecency",
|
||||
},
|
||||
["project.nvim#projects"] = {
|
||||
disable = false,
|
||||
sorting = "frecency",
|
||||
},
|
||||
["yanky.nvim#yank_history"] = {
|
||||
disable = true,
|
||||
},
|
||||
["zoxide.nvim#zoxide"] = {
|
||||
disable = true,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
return {
|
||||
"piersolenski/telescope-import.nvim",
|
||||
opts = {},
|
||||
config = function()
|
||||
require("lazyvim.util").on_load("telescope.nvim", function()
|
||||
require("telescope").setup({
|
||||
extensions = {
|
||||
import = {
|
||||
insert_at_top = true,
|
||||
},
|
||||
},
|
||||
})
|
||||
require("telescope").load_extension("import")
|
||||
end)
|
||||
end,
|
||||
keys = {
|
||||
{ "<leader>sI", "<cmd>Telescope import<CR>", desc = "Imports" },
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
return {
|
||||
"tsakirist/telescope-lazy.nvim",
|
||||
config = function()
|
||||
require("lazyvim.util").on_load("telescope.nvim", function()
|
||||
require("telescope").load_extension("lazy")
|
||||
end)
|
||||
end,
|
||||
keys = {
|
||||
{ "<leader>sp", "<cmd>Telescope lazy<CR>", desc = "Plugins (Lazy)" },
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
return {
|
||||
"benfowler/telescope-luasnip.nvim",
|
||||
config = function()
|
||||
require("lazyvim.util").on_load("telescope.nvim", function()
|
||||
require("telescope").load_extension("luasnip")
|
||||
end)
|
||||
end,
|
||||
keys = {
|
||||
{ "<leader>sl", "<cmd>Telescope luasnip<CR>", desc = "Luasnip (Snippets)" },
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
return {
|
||||
"dharmx/telescope-media.nvim",
|
||||
config = function()
|
||||
require("lazyvim.util").on_load("telescope.nvim", function()
|
||||
require("telescope").setup({
|
||||
extensions = {
|
||||
media = {
|
||||
backend = "ueberzug", -- image/gif backend
|
||||
},
|
||||
},
|
||||
})
|
||||
require("telescope").load_extension("media")
|
||||
end)
|
||||
end,
|
||||
keys = {
|
||||
{ "<leader>sM", "<cmd>Telescope media<CR>", desc = "Media" },
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
return {
|
||||
{
|
||||
"cljoly/telescope-repo.nvim",
|
||||
event = "VeryLazy",
|
||||
dependencies = {
|
||||
{
|
||||
"airblade/vim-rooter",
|
||||
init = function()
|
||||
vim.g["rooter_cd_cmd"] = "lcd"
|
||||
vim.g["rooter_silent_chdir"] = 1
|
||||
end,
|
||||
},
|
||||
{ "nvim-telescope/telescope.nvim" },
|
||||
{ "nvim-lua/plenary.nvim" },
|
||||
},
|
||||
opts = {},
|
||||
config = function()
|
||||
require("lazyvim.util").on_load("telescope.nvim", function()
|
||||
require("telescope").setup({
|
||||
extensions = {
|
||||
repo = {
|
||||
list = {
|
||||
fd_opts = {
|
||||
"--no-ignore-vcs",
|
||||
},
|
||||
search_dirs = {
|
||||
"~/Repos/",
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
require("telescope").load_extension("repo")
|
||||
end)
|
||||
end,
|
||||
-- stylua: ignore
|
||||
keys = {
|
||||
{ "<leader>fp", "<cmd>Telescope repo list<cr>", desc = "Projects (~/Repos)" },
|
||||
{ "<leader>fP", "<cmd>lua require'telescope'.extensions.repo.list{search_dirs = { '~/' }}<cr>", desc = "Projects (System)" },
|
||||
},
|
||||
},
|
||||
{
|
||||
"goolord/alpha-nvim",
|
||||
optional = true,
|
||||
opts = function(_, dashboard)
|
||||
local button = dashboard.button("r", " " .. " Repos", "<cmd>Telescope repo list<CR>")
|
||||
button.opts.hl = "AlphaButtons"
|
||||
button.opts.hl_shortcut = "AlphaShortcut"
|
||||
table.insert(dashboard.section.buttons.val, 4, button)
|
||||
end,
|
||||
},
|
||||
{
|
||||
"nvimdev/dashboard-nvim",
|
||||
optional = true,
|
||||
opts = function(_, opts)
|
||||
local projects = {
|
||||
action = "Telescope repo list",
|
||||
desc = " Repos",
|
||||
icon = " ",
|
||||
key = "r",
|
||||
}
|
||||
|
||||
projects.desc = projects.desc .. string.rep(" ", 43 - #projects.desc)
|
||||
projects.key_format = " %s"
|
||||
|
||||
table.insert(opts.config.center, 4, projects)
|
||||
end,
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
return {
|
||||
{
|
||||
"debugloop/telescope-undo.nvim",
|
||||
opts = {},
|
||||
config = function()
|
||||
require("lazyvim.util").on_load("telescope.nvim", function()
|
||||
require("telescope").setup({
|
||||
extensions = {
|
||||
undo = {
|
||||
use_delta = true,
|
||||
side_by_side = true,
|
||||
layout_strategy = "vertical",
|
||||
layout_config = {
|
||||
preview_height = 0.6,
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
require("telescope").load_extension("undo")
|
||||
end)
|
||||
end,
|
||||
keys = {
|
||||
{ "<leader>su", "<cmd>Telescope undo<cr>", desc = "Undos" },
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,8 @@
|
||||
return {
|
||||
"axieax/urlview.nvim",
|
||||
cmd = { "UrlView" },
|
||||
keys = { { "<leader>sU", "<cmd>UrlView<cr>", desc = "Search Urls" } },
|
||||
opts = {
|
||||
default_picker = "telescope",
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
return {
|
||||
{
|
||||
"natecraddock/workspaces.nvim",
|
||||
event = "VeryLazy",
|
||||
cmd = {
|
||||
"Telescope workspaces",
|
||||
"WorkspacesAdd",
|
||||
"WorkspacesAddDir",
|
||||
"WorkspacesRemove",
|
||||
"WorkspacesRename",
|
||||
"WorkspacesOpen",
|
||||
"WorkspacesList",
|
||||
"WorkspacesListDirs",
|
||||
},
|
||||
config = function()
|
||||
require("workspaces").setup({
|
||||
hooks = {
|
||||
open = { "Telescope find_files" },
|
||||
},
|
||||
})
|
||||
require("lazyvim.util").on_load("telescope.nvim", function()
|
||||
require("telescope").load_extension("workspaces")
|
||||
end)
|
||||
end,
|
||||
keys = {
|
||||
{ "<leader>fw", "<cmd>Telescope workspaces<cr>", desc = "Workspaces" },
|
||||
},
|
||||
},
|
||||
{
|
||||
"goolord/alpha-nvim",
|
||||
optional = true,
|
||||
opts = function(_, dashboard)
|
||||
local button = dashboard.button("w", " " .. " Workspaces", "<cmd>Telescope workspaces<CR>")
|
||||
button.opts.hl = "AlphaButtons"
|
||||
button.opts.hl_shortcut = "AlphaShortcut"
|
||||
table.insert(dashboard.section.buttons.val, 4, button)
|
||||
end,
|
||||
},
|
||||
{
|
||||
"nvimdev/dashboard-nvim",
|
||||
optional = true,
|
||||
opts = function(_, opts)
|
||||
local projects = {
|
||||
action = "Telescope workspaces",
|
||||
desc = " Workspaces",
|
||||
icon = " ",
|
||||
key = "w",
|
||||
}
|
||||
|
||||
projects.desc = projects.desc .. string.rep(" ", 43 - #projects.desc)
|
||||
projects.key_format = " %s"
|
||||
|
||||
table.insert(opts.config.center, 4, projects)
|
||||
end,
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
return {
|
||||
{
|
||||
"jvgrootveld/telescope-zoxide",
|
||||
config = function()
|
||||
require("lazyvim.util").on_load("telescope.nvim", function()
|
||||
require("telescope").setup({
|
||||
extensions = {
|
||||
zoxide = {
|
||||
mappings = {
|
||||
default = {
|
||||
after_action = function(selection)
|
||||
require("telescope.builtin").find_files({ cwd = selection.path })
|
||||
end,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
require("telescope").load_extension("zoxide")
|
||||
end)
|
||||
end,
|
||||
keys = {
|
||||
{ "<leader>fz", "<cmd>Telescope zoxide list<CR>", desc = "Zoxide" },
|
||||
},
|
||||
},
|
||||
{
|
||||
"goolord/alpha-nvim",
|
||||
optional = true,
|
||||
opts = function(_, dashboard)
|
||||
local button = dashboard.button("z", " " .. " Zoxide", "<cmd>Telescope zoxide list <CR>")
|
||||
button.opts.hl = "AlphaButtons"
|
||||
button.opts.hl_shortcut = "AlphaShortcut"
|
||||
table.insert(dashboard.section.buttons.val, 5, button)
|
||||
end,
|
||||
},
|
||||
{
|
||||
"nvimdev/dashboard-nvim",
|
||||
optional = true,
|
||||
opts = function(_, opts)
|
||||
local zoxide = {
|
||||
action = "Telescope zoxide list",
|
||||
desc = " Zoxide",
|
||||
icon = " ",
|
||||
key = "z",
|
||||
}
|
||||
|
||||
zoxide.desc = zoxide.desc .. string.rep(" ", 43 - #zoxide.desc)
|
||||
zoxide.key_format = " %s"
|
||||
|
||||
table.insert(opts.config.center, 4, zoxide)
|
||||
end,
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,97 @@
|
||||
return {
|
||||
{
|
||||
"voldikss/vim-floaterm",
|
||||
cmd = { "FloatermNew", "FloatermToggle", "FloatermNext", "FloatermPrev", "FloatermLast", "FloatermFirst" },
|
||||
--stylua: ignore
|
||||
keys = {
|
||||
{ "<leader>Ts", "<cmd>FloatermNew --disposable --name=duaroot --opener=edit --titleposition=center --height=0.85 --width=0.85 --cwd=<root> dua i<CR>", desc = "Workspace Size (root dir)" },
|
||||
{ "<leader>TS", "<cmd>FloatermNew --disposable --name=duabuffer --opener=edit --titleposition=center --height=0.85 --width=0.85 --cwd=<buffer> dua i<CR>", desc = "Workspace Size (cwd)" },
|
||||
{ "<A-e>", "<cmd>FloatermNew --disposable --name=yaziroot --opener=edit --titleposition=center --height=0.85 --width=0.85 --cwd=<root> yazi<CR>", desc = "File Explorer (root dir)" },
|
||||
{ "<leader>gg", "<cmd>FloatermNew --disposable --name=lazygitroot --opener=edit --titleposition=center --height=0.85 --width=0.85 --cwd=<root> lazygit<CR>", desc = "Lazygit (root dir)" },
|
||||
{ "<leader>gG", "<cmd>FloatermNew --disposable --name=lazygitbuffer --opener=edit --titleposition=center --height=0.85 --width=0.85 --cwd=<buffer> lazygit<CR>", desc = "Lazygit (cwd)" },
|
||||
{ "<leader>Td", "<cmd>FloatermNew --disposable --name=lazydocker --opener=edit --titleposition=center --height=0.85 --width=0.85 lazydocker<CR>", desc = "Lazydocker" },
|
||||
{ "<leader>Tb", "<cmd>FloatermNew --disposable --name=btop --opener=edit --titleposition=center --height=0.85 --width=0.85 btop<CR>", desc = "Btop" },
|
||||
{ "<leader>fd", "<cmd>FloatermNew --disposable --name=dots --opener=edit --titleposition=center --height=0.85 --width=0.85 dots<CR>", desc = "Dotfiles" },
|
||||
{ "<leader>Tn", "<cmd>FloatermNew --disposable --name=navi --opener=edit --titleposition=center --height=0.85 --width=0.85 pages<CR>", desc = "Navi Pages" },
|
||||
{ "<leader>Tp", "<cmd>FloatermNew --disposable --name=proc --opener=edit --titleposition=center --height=0.85 --width=0.85 proc<CR>", desc = "Systemd Processes" },
|
||||
{ "<leader>TB", "<cmd>FloatermNew --disposable --name=bandwhich --opener=edit --titleposition=center --height=0.85 --width=0.85 bandwhich<CR>", desc = "Bandwidth" },
|
||||
{ "<leader>gF", "<cmd>FloatermNew --disposable --name=forgit --opener=edit --titleposition=center --height=0.85 --width=0.85 fgit<CR>", desc = "Forgit" },
|
||||
{ "<leader>gf", "<cmd>FloatermNew! --disposable --name=onefetch --opener=edit --titleposition=center --height=0.85 --width=0.85 --cwd=<root> gfetch<CR>", desc = "Gitfetch" },
|
||||
{ "<leader>cen", "<cmd>FloatermNew --name=node --opener=edit --titleposition=center --wintype=split --height=0.35 node<CR>", desc = "Node" },
|
||||
{ "<leader>cep", "<cmd>FloatermNew --name=python --opener=edit --titleposition=center --wintype=split --height=0.35 python<CR>", desc = "Python" },
|
||||
{ "<S-Right>", "<Esc><Esc><cmd>FloatermNext<CR>", mode = { "t" }, desc = "Next Terminal" },
|
||||
{ "<S-Left>", "<Esc><Esc><cmd>FloatermPrev<CR>", mode = { "t" }, desc = "Prev Terminal" },
|
||||
{ "<A-Right>", "<Esc><Esc><cmd>FloatermLast<CR>", mode = { "t" }, desc = "Last Terminal" },
|
||||
{ "<A-Left>", "<Esc><Esc><cmd>FloatermFirst<CR>", mode = { "t" }, desc = "First Terminal" },
|
||||
{ [[<c-\>]], "<cmd>FloatermToggle<cr>", mode = { "n", "t" }, desc = "Toggle Terminal" },
|
||||
{ "<leader>ftf", "<cmd>FloatermNew --name=floatroot --opener=edit --titleposition=center --height=0.85 --width=0.85 --cwd=<root><cr>", desc = "Floating (root dir)" },
|
||||
{ "<leader>ftF", "<cmd>FloatermNew --name=floatbuffer --opener=edit --titleposition=center --height=0.85 --width=0.85 --cwd=<buffer><cr>", desc = "Floating (cwd)" },
|
||||
{ "<leader>fts", "<cmd>FloatermNew --name=splitroot --opener=edit --titleposition=center --height=0.35 --wintype=split --cwd=<root><cr>", desc = "Split (root dir)" },
|
||||
{ "<leader>ftS", "<cmd>FloatermNew --name=splitbuffer --opener=edit --titleposition=center --height=0.35 --wintype=split --cwd=<buffer><cr>", desc = "Split (cwd)" },
|
||||
},
|
||||
},
|
||||
{
|
||||
"dawsers/telescope-floaterm.nvim",
|
||||
config = function()
|
||||
require("lazyvim.util").on_load("telescope.nvim", function()
|
||||
require("telescope").load_extension("floaterm")
|
||||
end)
|
||||
end,
|
||||
keys = {
|
||||
{ "<c-/>", "<cmd>Telescope floaterm<cr>", desc = "Terminals" },
|
||||
},
|
||||
},
|
||||
{
|
||||
"folke/which-key.nvim",
|
||||
opts = {
|
||||
defaults = {
|
||||
["<leader>ce"] = { name = "r[e]pl" },
|
||||
["<leader>ft"] = { name = "terminals" },
|
||||
["<leader>T"] = { name = " tools" },
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
"folke/edgy.nvim",
|
||||
optional = true,
|
||||
opts = function(_, opts)
|
||||
table.insert(opts.bottom, {
|
||||
ft = "floaterm",
|
||||
title = "Floaterm",
|
||||
size = { height = 0.4 },
|
||||
filter = function(buf, win)
|
||||
return vim.api.nvim_win_get_config(win).relative == ""
|
||||
end,
|
||||
})
|
||||
end,
|
||||
},
|
||||
{
|
||||
"goolord/alpha-nvim",
|
||||
optional = true,
|
||||
opts = function(_, dashboard)
|
||||
-- stylua: ignore
|
||||
local button = dashboard.button("G", " " .. " Git", "<cmd>FloatermNew --disposable --name=lazygitroot --opener=edit --titleposition=center --height=0.85 --width=0.85 --cwd=<root> lazygit<CR>")
|
||||
button.opts.hl = "AlphaButtons"
|
||||
button.opts.hl_shortcut = "AlphaShortcut"
|
||||
table.insert(dashboard.section.buttons.val, 7, button)
|
||||
return dashboard
|
||||
end,
|
||||
},
|
||||
{
|
||||
"nvimdev/dashboard-nvim",
|
||||
optional = true,
|
||||
opts = function(_, opts)
|
||||
local git = {
|
||||
action = "FloatermNew --disposable --name=lazygitroot --opener=edit --titleposition=center --height=0.85 --width=0.85 --cwd=<root> lazygit",
|
||||
desc = " Git",
|
||||
icon = " ",
|
||||
key = "G",
|
||||
}
|
||||
|
||||
git.desc = git.desc .. string.rep(" ", 43 - #git.desc)
|
||||
git.key_format = " %s"
|
||||
|
||||
table.insert(opts.config.center, 7, git)
|
||||
end,
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,58 @@
|
||||
return {
|
||||
{
|
||||
"akinsho/toggleterm.nvim",
|
||||
cmd = {
|
||||
"ToggleTerm",
|
||||
"ToggleTermSetName",
|
||||
"ToggleTermToggleAll",
|
||||
"ToggleTermSendVisualLines",
|
||||
"ToggleTermSendCurrentLine",
|
||||
"ToggleTermSendVisualSelection",
|
||||
},
|
||||
opts = {
|
||||
size = function(term)
|
||||
if term.direction == "horizontal" then
|
||||
return 30
|
||||
elseif term.direction == "vertical" then
|
||||
return vim.o.columns * 0.4
|
||||
end
|
||||
end,
|
||||
open_mapping = [[<c-\>]],
|
||||
hide_numbers = true, -- hide the number column in toggleterm buffers
|
||||
shade_filetypes = {},
|
||||
shade_terminals = true, -- NOTE: this option takes priority over highlights specified so if you specify Normal highlights you should set this to false
|
||||
shading_factor = "-10", -- the percentage by which to lighten terminal background, default: -30 (gets multiplied by -3 if background is light)
|
||||
start_in_insert = true,
|
||||
insert_mappings = true, -- whether or not the open mapping applies in insert mode
|
||||
terminal_mappings = true, -- whether or not the open mapping applies in the opened terminals
|
||||
persist_size = true,
|
||||
persist_mode = true, -- if set to true (default) the previous terminal mode will be remembered
|
||||
direction = "float",
|
||||
close_on_exit = true, -- close the terminal window when the process exits
|
||||
-- Change the default shell. Can be a string or a function returning a string
|
||||
shell = vim.o.shell,
|
||||
-- This field is only relevant if direction is set to 'float'
|
||||
float_opts = {
|
||||
-- The border key is *almost* the same as 'nvim_open_win'
|
||||
-- see :h nvim_open_win for details on borders however
|
||||
-- the 'curved' border is a custom border type
|
||||
-- not natively supported but implemented in this plugin.
|
||||
border = "curved",
|
||||
-- like `size`, width and height can be a number or function which is passed the current terminal
|
||||
highlights = { border = "Normal", background = "Normal" },
|
||||
winblend = 3,
|
||||
},
|
||||
},
|
||||
-- stylua: ignore
|
||||
keys = {
|
||||
{ [[<c-\>]], "<cmd>ToggleTerm<cr>", mode = "n", desc = "Toggle Terminal" },
|
||||
},
|
||||
},
|
||||
{
|
||||
"ryanmsnyder/toggleterm-manager.nvim",
|
||||
opts = {},
|
||||
keys = {
|
||||
{ "<c-/>", "<cmd>Telescope toggleterm_manager<cr>", desc = "Terminals" },
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
if vim.fn.has("nvim-0.10") == 1 then
|
||||
return {
|
||||
{
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
dependencies = {
|
||||
"nvim-treesitter/playground",
|
||||
},
|
||||
build = ":TSInstall query",
|
||||
opts = {
|
||||
playground = {
|
||||
enable = true,
|
||||
},
|
||||
query_linter = {
|
||||
enable = true,
|
||||
use_virtual_text = true,
|
||||
lint_events = { "BufWrite", "CursorHold" },
|
||||
},
|
||||
},
|
||||
keys = {
|
||||
{ "<leader>ciT", "<Cmd>TSHighlightCapturesUnderCursor<CR>", desc = "Treesitter Highlight Groups" },
|
||||
{ "<leader>cit", "<Cmd>TSPlaygroundToggle<CR>", desc = "Treesitter Playground" },
|
||||
},
|
||||
},
|
||||
{
|
||||
"folke/edgy.nvim",
|
||||
optional = true,
|
||||
opts = function(_, opts)
|
||||
opts.right = opts.right or {}
|
||||
table.insert(opts.right, {
|
||||
title = "TS Playground",
|
||||
ft = "tsplayground",
|
||||
pinned = true,
|
||||
open = "TSPlaygroundToggle",
|
||||
size = { width = 0.3 },
|
||||
})
|
||||
end,
|
||||
},
|
||||
}
|
||||
else
|
||||
vim.notify("Treesitter Playground only works with the nightly build")
|
||||
end
|
||||
@@ -0,0 +1,6 @@
|
||||
return {
|
||||
"sindrets/winshift.nvim",
|
||||
cmd = "WinShift",
|
||||
opts = { highlight_moving_win = true },
|
||||
keys = { { "<leader>ws", "<CMD>WinShift<CR>", desc = "Win Shift/Swap" } },
|
||||
}
|
||||
Reference in new issue
Block a user