move scripts, update other things
This commit is contained in:
1 parent
8be9fe6370
commit
0c79acd431
61 files changed
+2728
-539
No files matched your search
@@ -1,12 +1,29 @@
|
||||
require("coq_3p").setup()({
|
||||
require("coq_3p")({
|
||||
{ src = "nvimlua", short_name = "nLUA", conf_only = true },
|
||||
{ src = "bc", short_name = "MATH", precision = 6 }, -- scientific calculator
|
||||
{ src = "bc", short_name = "MATH", precision = 2 }, -- scientific calculator
|
||||
{
|
||||
src = "repl",
|
||||
-- sh = "bash",
|
||||
sh = "fish",
|
||||
shell = { p = "perl", n = "node", g = "git", ... },
|
||||
max_lines = 20,
|
||||
arg = "-c",
|
||||
shell = { p = "perl" },
|
||||
max_lines = 99,
|
||||
deadline = 500,
|
||||
unsafe = { "rm", "poweroff", "mv", "cp", "systemctl", "sudo", ... },
|
||||
unsafe = {
|
||||
"rm",
|
||||
"mv",
|
||||
"cp",
|
||||
"git",
|
||||
"exec",
|
||||
"sed",
|
||||
"eval",
|
||||
"sudo",
|
||||
"poweroff",
|
||||
"restart",
|
||||
"halt",
|
||||
"systemctl",
|
||||
},
|
||||
},
|
||||
{ src = "dap" },
|
||||
{ src = "figlet", short_name = "BIG", trigger = "!big" },
|
||||
})
|
||||
@@ -11,10 +11,10 @@ require("plug_init.mini_init")
|
||||
require("plug_init.ft_autocmds")
|
||||
require("plug_init.godot_editor")
|
||||
|
||||
--require("plug_init.lsp_init")
|
||||
require("plug_init.coq_third_party")
|
||||
--require("plug_init.which_key_init")
|
||||
-- require("plug_init.wilder_init")
|
||||
|
||||
--require("plug_init.color-picker_init")
|
||||
|
||||
--require("plug_init.neovide_conf")
|
||||
require("plug_init.neovide_conf")
|
||||
@@ -1,17 +1,17 @@
|
||||
-- Bootstrap lazy.nvim
|
||||
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
|
||||
if not (vim.uv or vim.loop).fs_stat(lazypath) then
|
||||
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
|
||||
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
|
||||
if vim.v.shell_error ~= 0 then
|
||||
vim.api.nvim_echo({
|
||||
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
|
||||
{ out, "WarningMsg" },
|
||||
{ "\nPress any key to exit..." },
|
||||
}, true, {})
|
||||
vim.fn.getchar()
|
||||
os.exit(1)
|
||||
end
|
||||
local lazyrepo = "https://github.com/folke/lazy.nvim.git"
|
||||
local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
|
||||
if vim.v.shell_error ~= 0 then
|
||||
vim.api.nvim_echo({
|
||||
{ "Failed to clone lazy.nvim:\n", "ErrorMsg" },
|
||||
{ out, "WarningMsg" },
|
||||
{ "\nPress any key to exit..." },
|
||||
}, true, {})
|
||||
vim.fn.getchar()
|
||||
os.exit(1)
|
||||
end
|
||||
end
|
||||
vim.opt.rtp:prepend(lazypath)
|
||||
|
||||
|
||||
@@ -1,3 +1,28 @@
|
||||
require("coq_3p")({
|
||||
{
|
||||
src = "repl",
|
||||
-- sh = "bash",
|
||||
sh = "fish",
|
||||
arg = "-c",
|
||||
shell = { p = "perl" },
|
||||
max_lines = 99,
|
||||
deadline = 500,
|
||||
unsafe = {
|
||||
"rm",
|
||||
"mv",
|
||||
"cp",
|
||||
"git",
|
||||
"exec",
|
||||
"sed",
|
||||
"eval",
|
||||
"sudo",
|
||||
"poweroff",
|
||||
"restart",
|
||||
"halt",
|
||||
"systemctl",
|
||||
},
|
||||
},
|
||||
})
|
||||
-- vim.api.nvim_create_autocmd("LspAttach", {
|
||||
-- group = vim.api.nvim_create_augroup("UserLspConfig", {}),
|
||||
-- callback = function(ev)
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
vim.g.neovide_refresh_rate = 60
|
||||
vim.g.neovide_refresh_rate_idle = 5
|
||||
vim.g.neovide_refresh_rate = 120
|
||||
vim.g.neovide_refresh_rate_idle = 2
|
||||
vim.g.neovide_no_idle = false
|
||||
vim.g.neovide_cursor_trail_size = 0.05
|
||||
vim.g.neovide_cursor_animation_length = 0.01
|
||||
vim.g.neovide_cursor_trail_size = 0.2
|
||||
vim.g.neovide_cursor_animation_length = 0.07
|
||||
vim.g.neovide_cursor_short_animation_length = 0.02
|
||||
vim.g.neovide_cursor_unfocused_outline_width = 0.1
|
||||
vim.g.neovide_cursor_vfx_mode = "railgun" -- pixiedust, railgun, ripple, sonicboom, torpedo, wireframe
|
||||
vim.g.neovide_cursor_vfx_particle_speed = 100.0
|
||||
vim.g.neovide_cursor_vfx_particle_phase = 1.0 -- mass of particles, only railgun
|
||||
vim.g.neovide_cursor_vfx_particle_speed = 150.0
|
||||
vim.g.neovide_cursor_vfx_particle_phase = 1.1 -- mass of particles, only railgun
|
||||
vim.g.neovide_cursor_vfx_particle_curl = 1.0 -- rotation of particles, only railgun
|
||||
vim.g.neovide_cursor_vfx_particle_lifetime = 1.0
|
||||
vim.g.neovide_cursor_vfx_particle_density = 7
|
||||
vim.g.neovide_cursor_vfx_particle_lifetime = 0.6
|
||||
vim.g.neovide_cursor_vfx_particle_density = 15
|
||||
@@ -25,6 +25,11 @@ vim.o.updatetime = 30
|
||||
vim.o.colorcolumn = "79"
|
||||
vim.o.cmdheight = 0 -- remove the last interface line under statusline
|
||||
vim.o.showmode = false -- stop noice from showing mode, lualine will show mode anyway
|
||||
vim.o.foldlevel = 10
|
||||
|
||||
vim.wo.foldexpr = "v:lua.vim.treesitter.foldexpr()"
|
||||
vim.bo.indentexpr = "v:lua.vim.treesitter.indentexpr()"
|
||||
|
||||
---
|
||||
vim.g.netrw_preview = 1
|
||||
vim.g.netrw_liststyle = 3
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
return {
|
||||
{
|
||||
"lewis6991/gitsigns.nvim",
|
||||
event = "UIEnter",
|
||||
opts = {
|
||||
signs = {
|
||||
add = { text = "│" },
|
||||
change = { text = "│" },
|
||||
delete = { text = "_" },
|
||||
topdelete = { text = "‾" },
|
||||
changedelete = { text = "~" },
|
||||
untracked = { text = "┆" },
|
||||
},
|
||||
signcolumn = true, -- Toggle with `:Gitsigns toggle_signs`
|
||||
numhl = true, -- Toggle with `:Gitsigns toggle_numhl`
|
||||
linehl = false, -- Toggle with `:Gitsigns toggle_linehl`
|
||||
word_diff = false, -- Toggle with `:Gitsigns toggle_word_diff`
|
||||
watch_gitdir = {
|
||||
follow_files = true,
|
||||
},
|
||||
attach_to_untracked = true,
|
||||
current_line_blame = true, -- Toggle with `:Gitsigns toggle_current_line_blame`
|
||||
current_line_blame_opts = {
|
||||
virt_text = true,
|
||||
virt_text_pos = "eol", -- 'eol' | 'overlay' | 'right_align'
|
||||
delay = 150,
|
||||
ignore_whitespace = false,
|
||||
virt_text_priority = 0,
|
||||
},
|
||||
current_line_blame_formatter = "<author>, <author_time:%Y-%m-%d> - <summary>",
|
||||
sign_priority = 6,
|
||||
update_debounce = 100,
|
||||
status_formatter = nil, -- Use default
|
||||
max_file_length = 40000, -- Disable if file is longer than this (in lines)
|
||||
preview_config = {
|
||||
-- Options passed to nvim_open_win
|
||||
border = "single",
|
||||
style = "minimal",
|
||||
relative = "cursor",
|
||||
row = 0,
|
||||
col = 1,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
"NeogitOrg/neogit",
|
||||
lazy = true,
|
||||
dependencies = {
|
||||
-- Only one of these is needed.
|
||||
"sindrets/diffview.nvim", -- optional
|
||||
-- "esmuellert/codediff.nvim", -- optional
|
||||
|
||||
-- For a custom log pager
|
||||
"m00qek/baleia.nvim", -- optional
|
||||
|
||||
-- Only one of these is needed.
|
||||
-- "nvim-telescope/telescope.nvim", -- optional
|
||||
-- "ibhagwan/fzf-lua", -- optional
|
||||
-- "nvim-mini/mini.pick", -- optional
|
||||
-- "folke/snacks.nvim", -- optional
|
||||
},
|
||||
cmd = "Neogit",
|
||||
keys = {
|
||||
{ "<leader>gg", "<cmd>Neogit<cr>", desc = "Show Neogit UI" },
|
||||
},
|
||||
},
|
||||
}
|
||||
@@ -2,6 +2,7 @@ return {
|
||||
{
|
||||
"mason-org/mason.nvim",
|
||||
lazy = false,
|
||||
-- event = { "UIEnter" },
|
||||
--cmd = { "Mason", "MasonInstall", "MasonUninstall", "MasonUpdate", "MasonUninstallAll", "MasonLog" },
|
||||
opts = {},
|
||||
},
|
||||
@@ -9,7 +10,7 @@ return {
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
lazy = false,
|
||||
build = ":TSUpdate",
|
||||
event = { "BufRead" },
|
||||
-- event = { "UIEnter" },
|
||||
opts = {
|
||||
sync_install = false,
|
||||
auto_install = true,
|
||||
@@ -28,6 +29,7 @@ return {
|
||||
},
|
||||
ensure_installed = {
|
||||
"bash",
|
||||
-- "dart",
|
||||
"html",
|
||||
"javascript",
|
||||
"gdscript",
|
||||
@@ -43,20 +45,21 @@ return {
|
||||
{
|
||||
"mason-org/mason-lspconfig.nvim",
|
||||
lazy = false,
|
||||
-- events = { "UIEnter" }
|
||||
opts = {
|
||||
ensure_installed = {
|
||||
"rust_analyzer",
|
||||
"ruff",
|
||||
-- "ruff",
|
||||
"biome",
|
||||
--"quick_lint_js",
|
||||
--"eslint",
|
||||
"html",
|
||||
"cssls",
|
||||
"sqls",
|
||||
"hyprls",
|
||||
-- "sqls",
|
||||
-- "hyprls",
|
||||
"lua_ls",
|
||||
-- "pylyzer",
|
||||
"vimls",
|
||||
-- "vimls",
|
||||
"ts_ls",
|
||||
},
|
||||
automatic_enable = { true, rust_analyzer = false },
|
||||
@@ -74,24 +77,30 @@ return {
|
||||
|
||||
-- lua & third party sources -- See https://github.com/ms-jpq/coq.thirdparty
|
||||
-- Need to **configure separately**
|
||||
--{ "ms-jpq/coq.thirdparty", branch = "3p", lazy = false },
|
||||
{ "ms-jpq/coq.thirdparty", branch = "3p", lazy = false },
|
||||
-- - shell repl
|
||||
-- - nvim lua api
|
||||
-- - scientific calculator
|
||||
-- - comment banner
|
||||
-- - etc
|
||||
},
|
||||
opts = {
|
||||
-- inlay_hint = { enabled = true },
|
||||
-- lsp = {
|
||||
-- inlay_hint = { enabled = true },
|
||||
-- },
|
||||
},
|
||||
init = function()
|
||||
vim.g.coq_settings = {
|
||||
auto_start = true, -- if you want to start COQ at startup
|
||||
-- Your COQ settings here
|
||||
display = { statusline = { helo = false } }, -- disable greeting notification
|
||||
}
|
||||
vim.g.coq_settings = {} -- Your COQ settings here
|
||||
|
||||
-- vim.lsp.inlay_hints.enable()
|
||||
end,
|
||||
--coq.nvim: lsp_ensure_capabilities is a no-op in v2. neovim 0.12's vim.lsp.protocol.make_client_capabilities() already covers what v1 used to inject. Drop the wrapping call.
|
||||
---@type vim.lsp.Config
|
||||
config = function()
|
||||
vim.lsp.config(
|
||||
"rust_analyzer",
|
||||
coq.lsp_ensure_capabilities({
|
||||
vim.lsp.protocol.make_client_capabilities({
|
||||
settings = {
|
||||
["rust-analyzer"] = {
|
||||
imports = {
|
||||
@@ -109,22 +118,27 @@ return {
|
||||
enable = true,
|
||||
},
|
||||
},
|
||||
-- inlay_hint = { enabled = true },
|
||||
},
|
||||
})
|
||||
)
|
||||
vim.lsp.config("gdscript", coq.lsp_ensure_capabilities({}))
|
||||
|
||||
--vim.lsp.enable({ "lua_ls" })
|
||||
-- vim.lsp.enable("gdscript")
|
||||
-- vim.lsp.enable({ "gdscript" })
|
||||
-- vim.lsp.enable({ "lua_ls" })
|
||||
vim.api.nvim_create_autocmd("LspAttach", {
|
||||
group = vim.api.nvim_create_augroup("UserLspConfig", {}),
|
||||
callback = function(ev)
|
||||
-- Enable completion triggered by <c-x><c-o>
|
||||
vim.bo[ev.buf].omnifunc = "v:lua.vim.lsp.omnifunc"
|
||||
-- vim.o[ev.buf].omnifunc = vim.lsp.omnifunc -- TODO: fix this
|
||||
-- vim.o.omnifunc.set(vim.lsp.omnifunc)
|
||||
vim.keymap.set("n", "[d", vim.diagnostic.goto_prev)
|
||||
vim.keymap.set("n", "]d", vim.diagnostic.goto_next)
|
||||
vim.keymap.set("n", "<leader>le", vim.diagnostic.open_float)
|
||||
-- vim.keymap.set("n", "<leader>lh", vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled()))
|
||||
vim.keymap.set("n", "gD", vim.lsp.buf.declaration, opts)
|
||||
vim.keymap.set("n", "gd", vim.lsp.buf.definition, opts)
|
||||
vim.keymap.set("n", "gi", vim.lsp.buf.incoming_calls, opts)
|
||||
vim.keymap.set("n", "go", vim.lsp.buf.outgoing_calls, opts)
|
||||
vim.keymap.set("n", "<leader>K", vim.lsp.buf.hover, opts)
|
||||
vim.keymap.set("n", "<leader>wa", vim.lsp.buf.add_workspace_folder, opts)
|
||||
vim.keymap.set("n", "<leader>wr", vim.lsp.buf.remove_workspace_folder, opts)
|
||||
@@ -132,6 +146,13 @@ return {
|
||||
end,
|
||||
})
|
||||
end,
|
||||
-- keys = {
|
||||
-- {
|
||||
-- "<leader>lh",
|
||||
-- function() vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled()) end,
|
||||
-- desc = "toggle inlay hints",
|
||||
-- },
|
||||
-- },
|
||||
},
|
||||
{
|
||||
"mfussenegger/nvim-lint",
|
||||
@@ -140,6 +161,7 @@ return {
|
||||
opts = {
|
||||
linters_by_ft = {
|
||||
cpp = { "cpplint" },
|
||||
dart = { "flutter" },
|
||||
gdscript = { "gdlint" },
|
||||
gitcommit = { "commitlint" },
|
||||
lua = { "ast-grep" },
|
||||
@@ -162,17 +184,17 @@ return {
|
||||
-- supposedly faster formatter
|
||||
{
|
||||
"stevearc/conform.nvim",
|
||||
event = { "BufWritePost" },
|
||||
event = { "BufWritePre" },
|
||||
keys = {
|
||||
{
|
||||
"<leader>i",
|
||||
function() require("conform").format({ async = true }) end,
|
||||
--function() require("conform").format({ async = true }) end,
|
||||
desc = "Auto format file with formatter, also on F3",
|
||||
},
|
||||
{
|
||||
"F3",
|
||||
function() require("conform").format({ async = true }) end,
|
||||
mode = { "n", "i" },
|
||||
--function() require("conform").format({ async = true }) end,
|
||||
--mode = { "n", "i" },
|
||||
desc = "Auto format file with formatter",
|
||||
},
|
||||
},
|
||||
@@ -224,10 +246,11 @@ return {
|
||||
end,
|
||||
},
|
||||
},
|
||||
{ "nvim-treesitter/nvim-treesitter-textobjects", lazy = true, event = "BufRead" },
|
||||
-- { "nvim-treesitter/nvim-treesitter-textobjects", lazy = true, event = "BufRead" },
|
||||
{
|
||||
"nvim-treesitter/nvim-treesitter-context",
|
||||
lazy = true,
|
||||
branch = "master",
|
||||
event = "BufRead",
|
||||
opts = {
|
||||
enable = true, -- Enable this plugin (Can be enabled/disabled later via commands)
|
||||
@@ -246,7 +269,17 @@ return {
|
||||
},
|
||||
},
|
||||
{
|
||||
"jubnzv/virtual-types.nvim",
|
||||
"nvim-flutter/flutter-tools.nvim",
|
||||
lazy = false,
|
||||
--event = { "BufEnter" },
|
||||
--ft = "*.dart",
|
||||
dependencies = {
|
||||
"nvim-lua/plenary.nvim",
|
||||
},
|
||||
config = true,
|
||||
},
|
||||
-- {
|
||||
-- "jubnzv/virtual-types.nvim",
|
||||
-- lazy = false,
|
||||
-- },
|
||||
}
|
||||
@@ -2,7 +2,7 @@ return {
|
||||
"nvim-lualine/lualine.nvim",
|
||||
dependencies = { "nvim-tree/nvim-web-devicons" },
|
||||
lazy = true,
|
||||
event = { "VeryLazy" },
|
||||
event = { "UIEnter" },
|
||||
opts = {
|
||||
options = {
|
||||
icons_enabled = true,
|
||||
@@ -87,7 +87,7 @@ return {
|
||||
},
|
||||
},
|
||||
"filetype",
|
||||
'require"lsp-status".status()',
|
||||
-- require("lsp-status").status.get,
|
||||
},
|
||||
lualine_y = { "searchcount", "progress" },
|
||||
lualine_z = { "selectioncount", "location" },
|
||||
|
||||
@@ -43,7 +43,7 @@ return {
|
||||
{ "rcarriga/nvim-notify", lazy = true }, -- dep of noice.nvim
|
||||
{
|
||||
"nvim-mini/mini.nvim",
|
||||
lazy = true,
|
||||
event = { "UIEnter" },
|
||||
version = false,
|
||||
},
|
||||
{
|
||||
@@ -54,13 +54,100 @@ return {
|
||||
modes = { ":", "/", "?" },
|
||||
},
|
||||
},
|
||||
-- {
|
||||
-- "OXY2DEV/markview.nvim",
|
||||
-- lazy = true,
|
||||
-- ft = "Markdown",
|
||||
-- -- keys = { "<leader>M", mode = { "n" }, "<cmd>Markview toggle<cr>", desc = "Toggle Markdown render" },
|
||||
-- cmd = "Markview",
|
||||
-- event = { "BufRead *.md" },
|
||||
-- },
|
||||
{
|
||||
"OXY2DEV/markview.nvim",
|
||||
lazy = true,
|
||||
ft = "Markdown",
|
||||
-- keys = { "<leader>M", mode = { "n" }, "<cmd>Markview toggle<cr>", desc = "Toggle Markdown render" },
|
||||
cmd = "Markview",
|
||||
event = { "BufRead *.md" },
|
||||
"MeanderingProgrammer/render-markdown.nvim",
|
||||
dependencies = { "nvim-treesitter/nvim-treesitter", "nvim-mini/mini.nvim" }, -- if you use the mini.nvim suite
|
||||
-- dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-mini/mini.icons' }, -- if you use standalone mini plugins
|
||||
-- dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-tree/nvim-web-devicons' }, -- if you prefer nvim-web-devicons
|
||||
---@module 'render-markdown'
|
||||
---@type render.md.UserConfig
|
||||
opts = {
|
||||
checkbox = {
|
||||
enabled = true,
|
||||
render_modes = true,
|
||||
position = "inline",
|
||||
unchecked = { icon = " ", highlight = "RenderMarkdownUnchecked" },
|
||||
checked = { icon = " ", highlight = "RenderMarkdownChecked" },
|
||||
custom = {
|
||||
todo = { raw = "[-]", rendered = " Todo", highlight = "RenderMarkdownTodo" },
|
||||
},
|
||||
},
|
||||
},
|
||||
event = { "BufEnter *.md" },
|
||||
},
|
||||
{
|
||||
-- filetypes for mermaid:
|
||||
-- .mmd
|
||||
-- .mermaid
|
||||
"kevalin/mermaid.nvim",
|
||||
dependencies = {
|
||||
"nvim-treesitter/nvim-treesitter",
|
||||
},
|
||||
opts = {
|
||||
format = {
|
||||
shift_width = 4, -- Indentation size (spaces)
|
||||
},
|
||||
lint = {
|
||||
enabled = true, -- Enable diagnostics via mmdc
|
||||
command = "mmdc", -- Path to mermaid-cli executable
|
||||
},
|
||||
preview = {
|
||||
renderer = "mermaid.js", -- "mermaid.js" or "beautiful-mermaid"
|
||||
theme = "dark", -- Theme name (renderer-specific)
|
||||
},
|
||||
},
|
||||
config = {
|
||||
vim.api.nvim_create_autocmd("FileType", {
|
||||
pattern = "mermaid",
|
||||
callback = function()
|
||||
local buf = vim.api.nvim_get_current_buf()
|
||||
vim.keymap.set(
|
||||
"n",
|
||||
"<leader>mp",
|
||||
"<cmd>MermaidPreview<CR>",
|
||||
{ buffer = buf, desc = "Mermaid Preview" }
|
||||
)
|
||||
vim.keymap.set(
|
||||
"n",
|
||||
"<leader>mf",
|
||||
"<cmd>MermaidFormat<CR>",
|
||||
{ buffer = buf, desc = "Mermaid Format" }
|
||||
)
|
||||
vim.keymap.set(
|
||||
"n",
|
||||
"<leader>mr",
|
||||
"<cmd>MermaidRender<CR>",
|
||||
{ buffer = buf, desc = "Mermaid Render" }
|
||||
)
|
||||
vim.keymap.set(
|
||||
"n",
|
||||
"<leader>mc",
|
||||
"<cmd>MermaidCopyURL<CR>",
|
||||
{ buffer = buf, desc = "Mermaid Copy URL" }
|
||||
)
|
||||
vim.keymap.set(
|
||||
"n",
|
||||
"<leader>mx",
|
||||
"<cmd>MermaidPreviewStop<CR>",
|
||||
{ buffer = buf, desc = "Mermaid Stop Preview" }
|
||||
)
|
||||
end,
|
||||
}),
|
||||
},
|
||||
|
||||
-- config = function()
|
||||
-- require("mermaid").setup()
|
||||
-- -- Install the Tree-sitter parser:
|
||||
-- -- :TSInstall mermaid
|
||||
-- end
|
||||
},
|
||||
{
|
||||
"norcalli/nvim-colorizer.lua",
|
||||
@@ -126,54 +213,11 @@ return {
|
||||
},
|
||||
{
|
||||
"folke/trouble.nvim",
|
||||
opts = {},
|
||||
opts = { use_diagnostic_signs = true },
|
||||
cmd = "Trouble",
|
||||
lazy = true,
|
||||
keys = { "<leader>x" },
|
||||
},
|
||||
{
|
||||
"lewis6991/gitsigns.nvim",
|
||||
event = "UIEnter",
|
||||
opts = {
|
||||
signs = {
|
||||
add = { text = "│" },
|
||||
change = { text = "│" },
|
||||
delete = { text = "_" },
|
||||
topdelete = { text = "‾" },
|
||||
changedelete = { text = "~" },
|
||||
untracked = { text = "┆" },
|
||||
},
|
||||
signcolumn = true, -- Toggle with `:Gitsigns toggle_signs`
|
||||
numhl = true, -- Toggle with `:Gitsigns toggle_numhl`
|
||||
linehl = false, -- Toggle with `:Gitsigns toggle_linehl`
|
||||
word_diff = false, -- Toggle with `:Gitsigns toggle_word_diff`
|
||||
watch_gitdir = {
|
||||
follow_files = true,
|
||||
},
|
||||
attach_to_untracked = true,
|
||||
current_line_blame = true, -- Toggle with `:Gitsigns toggle_current_line_blame`
|
||||
current_line_blame_opts = {
|
||||
virt_text = true,
|
||||
virt_text_pos = "eol", -- 'eol' | 'overlay' | 'right_align'
|
||||
delay = 150,
|
||||
ignore_whitespace = false,
|
||||
virt_text_priority = 0,
|
||||
},
|
||||
current_line_blame_formatter = "<author>, <author_time:%Y-%m-%d> - <summary>",
|
||||
sign_priority = 6,
|
||||
update_debounce = 100,
|
||||
status_formatter = nil, -- Use default
|
||||
max_file_length = 40000, -- Disable if file is longer than this (in lines)
|
||||
preview_config = {
|
||||
-- Options passed to nvim_open_win
|
||||
border = "single",
|
||||
style = "minimal",
|
||||
relative = "cursor",
|
||||
row = 0,
|
||||
col = 1,
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
"nvzone/typr",
|
||||
dependencies = "nvzone/volt",
|
||||
|
||||
@@ -17,5 +17,54 @@ return {
|
||||
scroll = { enabled = true },
|
||||
statuscolumn = { enabled = true },
|
||||
words = { enabled = false },
|
||||
zen = {
|
||||
enabled = true,
|
||||
-- You can add any `Snacks.toggle` id here.
|
||||
-- Toggle state is restored when the window is closed.
|
||||
-- Toggle config options are NOT merged.
|
||||
---@type table<string, boolean>
|
||||
toggles = {
|
||||
dim = false,
|
||||
git_signs = false,
|
||||
mini_diff_signs = false,
|
||||
diagnostics = true,
|
||||
inlay_hints = true,
|
||||
},
|
||||
center = true,
|
||||
show = {
|
||||
statusline = false,
|
||||
tabline = false,
|
||||
windowline = false,
|
||||
},
|
||||
---@type snacks.win.Config
|
||||
win = { style = "zen" },
|
||||
--- Callback when the window is opened.
|
||||
---@param win snacks.win
|
||||
on_open = function(win) end,
|
||||
--- Callback when the window is closed.
|
||||
---@param win snacks.win
|
||||
on_close = function(win) end,
|
||||
--- Options for the `Snacks.zen.zoom()`
|
||||
---@type snacks.zen.Config
|
||||
zoom = {
|
||||
toggles = {},
|
||||
center = false,
|
||||
show = { statusline = true, tabline = true },
|
||||
win = {
|
||||
backdrop = false,
|
||||
width = 0, -- full width
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
styles = {
|
||||
zen = {
|
||||
backdrop = { transparent = false },
|
||||
keys = { q = false }, -- for enabling/disabling recording of macros
|
||||
},
|
||||
},
|
||||
keys = {
|
||||
{ "<leader>z", function() Snacks.zen() end, desc = "Toggle Zen Mode" },
|
||||
{ "<leader>Z", function() Snacks.zen.zoom() end, desc = "Toggle Zoom" },
|
||||
},
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
return {
|
||||
{
|
||||
"chomosuke/typst-preview.nvim",
|
||||
lazy = false, -- or ft = 'typst'
|
||||
version = "1.*",
|
||||
opts = {}, -- lazy.nvim will implicitly calls `setup {}`
|
||||
},
|
||||
-- {
|
||||
-- "al-kot/typst-preview.nvim",
|
||||
-- ft = { "typst" },
|
||||
-- opts = {
|
||||
-- --
|
||||
-- -- your config here
|
||||
-- },
|
||||
-- },
|
||||
}
|
||||
@@ -76,6 +76,24 @@ return {
|
||||
{ "<leader>gu", "<cmd>Gitsigns undo_stage_hunk<cr>", desc = "Undo Stage Hunk" },
|
||||
|
||||
{ "<leader>le", vim.diagnostic.open_float, desc = "Open diagnostic float" },
|
||||
{
|
||||
"<leader>lh",
|
||||
function() vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled()) end,
|
||||
desc = "toggle inlay hints",
|
||||
},
|
||||
{
|
||||
"<leader>i",
|
||||
function() require("conform").format({ async = true }) end,
|
||||
mode = "n",
|
||||
silent = true,
|
||||
desc = "Auto format file with formatter, also on F3",
|
||||
},
|
||||
{
|
||||
"F3",
|
||||
function() require("conform").format({ async = true }) end,
|
||||
mode = { "n", "i" },
|
||||
desc = "Auto format file with formatter",
|
||||
},
|
||||
{ "<leader>K", desc = "Show definition" },
|
||||
-- { "<Leader>d", group = "Debugging" },
|
||||
-- {
|
||||
@@ -85,6 +103,9 @@ return {
|
||||
-- { "<Leader>dc", require("dap").continue, desc = "Continue" },
|
||||
-- },
|
||||
|
||||
-- { "<leader>z", function() Snacks.zen() end, desc = "Toggle Zen Mode" },
|
||||
-- { "<leader>Z", function() Snacks.zen.zoom() end, desc = "Toggle Zoom" },
|
||||
|
||||
-- trouble plugin
|
||||
{ "<leader>xx", "<cmd>Trouble diagnostics toggle<cr>", desc = "Diagnostics (Trouble)" },
|
||||
{
|
||||
@@ -104,8 +125,13 @@ return {
|
||||
-- QOL shortcuts
|
||||
{ "<leader>n", "<cmd>nohl<cr>", desc = "Stop highlighting search results" },
|
||||
{ "<leader>m", "<cmd>NoiceDismiss<cr>", desc = "Dismiss notifications" },
|
||||
{ "<leader>M", "<cmd>Markview toggle<cr>", desc = "Markview toggle source view" },
|
||||
|
||||
-- { "<leader>M", "<cmd>Markview toggle<cr>", desc = "Markview toggle source view" },
|
||||
{
|
||||
"<leader>M",
|
||||
mode = { "n" },
|
||||
function() require("render-markdown").toggle() end,
|
||||
desc = "Toggle Markdown render",
|
||||
},
|
||||
{ "<leader>r", group = "Rename" },
|
||||
{ "<leader>rr", vim.lsp.buf.rename, opts, desc = "Rename Variable" },
|
||||
|
||||
@@ -127,6 +153,21 @@ return {
|
||||
{ "<leader>tn", "<cmd>tabnext<cr>", desc = "Next Tab" },
|
||||
{ "<leader>tp", "<cmd>tabprevious<cr>", desc = "Previous Tab" },
|
||||
|
||||
-- { "<leader>Ts", function() require("typst-preview").start() end, desc = "Start Typst preview" },
|
||||
-- { "<leader>Tq", function() require("typst-preview").stop() end, desc = "Stop Typst preview" },
|
||||
-- { "<leader>Tn", function() require("typst-preview").next_page() end, desc = "Next page" },
|
||||
-- {
|
||||
-- "<leader>Tp",
|
||||
-- function()
|
||||
-- require("typst-preview")
|
||||
-- prev_page()
|
||||
-- end,
|
||||
-- desc = "Previous page",
|
||||
-- },
|
||||
-- { "<leader>Tr", function() require("typst-preview").refresh() end, desc = "Refresh preview" },
|
||||
-- { "<leader>Tgg", function() require("typst-preview").first_page() end, desc = "First page" },
|
||||
-- { "<leader>TG", function() require("typst-preview").last_page() end, desc = "Last page" },
|
||||
|
||||
{ "<leader>u", desc = "Toggle undo-tree" },
|
||||
{ "<leader>w", group = "Workspaces + Whichkey" },
|
||||
{ "<leader>wa", desc = "Add workspace folder" },
|
||||
@@ -238,7 +279,7 @@ return {
|
||||
{ "gD", desc = "go to declaration" },
|
||||
{ "gd", desc = "go to definition" },
|
||||
{ "gi", desc = "show implementations" },
|
||||
{ "gr", desc = "list all references to symbol under cursor" },
|
||||
{ "gr", vim.lsp.buf.references, desc = "list all references to symbol under cursor" },
|
||||
|
||||
--undotree
|
||||
{ "j", desc = "jump to next undo node" },
|
||||
|
||||
Reference in new issue
Block a user