Compare commits
12 changed files with 81 additions and 125 deletions
6
.gitignore
vendored
6
.gitignore
vendored
|
|
@ -12,9 +12,3 @@ package-lock.json
|
||||||
|
|
||||||
# stt model
|
# stt model
|
||||||
ggml-*.bin
|
ggml-*.bin
|
||||||
|
|
||||||
# xdg config, only useful for test runs
|
|
||||||
mimeapps.list
|
|
||||||
|
|
||||||
# htmlhint config, not a part of nvim config
|
|
||||||
.htmlhintrc
|
|
||||||
|
|
|
||||||
5
makefile
5
makefile
|
|
@ -49,11 +49,8 @@ remove_cfg:
|
||||||
rm $(CONFIG_FILES_FILE); \
|
rm $(CONFIG_FILES_FILE); \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
update:
|
|
||||||
@ndzu --headless '+Lazy! update' '+Lazy! sync' '+MasonToolsUpdateSync' +qa
|
|
||||||
|
|
||||||
# PACMAN_DEPS: deno tree-sitter-cli nix luarocks jdk21-openjdk
|
# PACMAN_DEPS: deno tree-sitter-cli nix luarocks jdk21-openjdk
|
||||||
# CARGO_BINS: nu nu_plugin_polars
|
# CARGO_BINS: nu nu_plugin_polars
|
||||||
install: install_bin install_cfg update
|
install: install_bin install_cfg
|
||||||
|
|
||||||
remove: remove_bin remove_cfg
|
remove: remove_bin remove_cfg
|
||||||
|
|
|
||||||
|
|
@ -49,9 +49,6 @@ keymap(vm, "p", '"_dP', opts)
|
||||||
keymap(nm, "s", "<Nop>", opts)
|
keymap(nm, "s", "<Nop>", opts)
|
||||||
keymap(nm, "sw", ":lua require('dzu.macro').toggle_whitespace_helpers()<CR>", opts)
|
keymap(nm, "sw", ":lua require('dzu.macro').toggle_whitespace_helpers()<CR>", opts)
|
||||||
|
|
||||||
-- toggle line wrapping
|
|
||||||
keymap(nm, '<leader>w', ":lua require('dzu.macro').toggle_wrapping()<CR>", opts)
|
|
||||||
|
|
||||||
-- open file browser
|
-- open file browser
|
||||||
keymap(nm, '<leader>a', ':NvimTreeToggle<CR>', opts) -- open file explorer in the current folder, shirnk it a bit, and move to the left-most
|
keymap(nm, '<leader>a', ':NvimTreeToggle<CR>', opts) -- open file explorer in the current folder, shirnk it a bit, and move to the left-most
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -17,13 +17,6 @@ return {
|
||||||
telemetry = {
|
telemetry = {
|
||||||
enable = false,
|
enable = false,
|
||||||
},
|
},
|
||||||
format = {
|
}
|
||||||
enable = true,
|
}
|
||||||
defaultConfig = {
|
|
||||||
indent_style = "space",
|
|
||||||
indent_size = "4",
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,38 +14,30 @@ require("mason").setup(settings)
|
||||||
|
|
||||||
local servers = {
|
local servers = {
|
||||||
{ "rust_analyzer", "rust_analyzer" },
|
{ "rust_analyzer", "rust_analyzer" },
|
||||||
{ "pyright", "pyright" },
|
{ "pyright", "pyright", },
|
||||||
{ "ts_ls", nil },
|
{ "ts_ls", nil },
|
||||||
{ "biome", nil },
|
{ "biome", nil },
|
||||||
{ "clangd", "clangd" },
|
{ "clangd", nil },
|
||||||
{ "lua_ls", "lua_ls" },
|
{ "lua_ls", "lua_ls" },
|
||||||
|
-- { "hls", "hls" },
|
||||||
|
{ "nil_ls", nil },
|
||||||
{ "tinymist", "tinymist" },
|
{ "tinymist", "tinymist" },
|
||||||
{ "jdtls", nil },
|
{ "jdtls", nil },
|
||||||
|
-- { "nushell", nil }, -- TODO what IS the lspconfig name?
|
||||||
{ "html", nil },
|
{ "html", nil },
|
||||||
{ "dockerls", nil },
|
{ "dockerls", nil },
|
||||||
}
|
}
|
||||||
local ensure_installed = {}
|
local lspconfig_servers = {}
|
||||||
local i = 1
|
|
||||||
for _, s in pairs(servers) do
|
for _, s in pairs(servers) do
|
||||||
local s0 = s[1]
|
local s0 = s[1]
|
||||||
if s0 ~= nil then
|
if s0 ~= nil then
|
||||||
table.insert(ensure_installed, i, s0)
|
table.insert(lspconfig_servers, s0)
|
||||||
i = i + 1
|
|
||||||
vim.lsp.enable(s0, true)
|
vim.lsp.enable(s0, true)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
for tool, _ in pairs(ADDITIONAL_MASON_TOOLS) do
|
|
||||||
table.insert(ensure_installed, i, tool)
|
|
||||||
i = i + 1
|
|
||||||
end
|
|
||||||
|
|
||||||
require("mason-tool-installer").setup({
|
|
||||||
ensure_installed = ensure_installed,
|
|
||||||
auto_update = true,
|
|
||||||
run_on_start = true,
|
|
||||||
})
|
|
||||||
|
|
||||||
require("mason-lspconfig").setup({
|
require("mason-lspconfig").setup({
|
||||||
|
ensure_installed = lspconfig_servers,
|
||||||
automatic_enable = true,
|
automatic_enable = true,
|
||||||
automatic_installation = true,
|
automatic_installation = true,
|
||||||
})
|
})
|
||||||
|
|
@ -58,6 +50,7 @@ for _, s in pairs(servers) do
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
local is_ok, handlers = pcall(require, "dzu.lsp.handlers")
|
local is_ok, handlers = pcall(require, "dzu.lsp.handlers")
|
||||||
if not is_ok then
|
if not is_ok then
|
||||||
vim.notify("failed to initialize LSP handlers")
|
vim.notify("failed to initialize LSP handlers")
|
||||||
|
|
|
||||||
|
|
@ -14,12 +14,6 @@ function M.toggle_whitespace_helpers()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
-- add wrapping toggle
|
|
||||||
function M.toggle_wrapping()
|
|
||||||
local wrap = vim.opt.wrap._value
|
|
||||||
vim.opt.wrap = not wrap
|
|
||||||
end
|
|
||||||
|
|
||||||
-- limiting line must be disable in readonly windows
|
-- limiting line must be disable in readonly windows
|
||||||
vim.api.nvim_create_autocmd("BufEnter", {
|
vim.api.nvim_create_autocmd("BufEnter", {
|
||||||
callback = function(event_data)
|
callback = function(event_data)
|
||||||
|
|
|
||||||
|
|
@ -16,8 +16,13 @@ local options = {
|
||||||
},
|
},
|
||||||
-- visualbell = true, -- FLASHES THE SCREEN
|
-- visualbell = true, -- FLASHES THE SCREEN
|
||||||
-- binary - check out binary file viewing and editing
|
-- binary - check out binary file viewing and editing
|
||||||
linebreak = false,
|
linebreak = true,
|
||||||
wrap = true,
|
breakat = " ^I!@*-+;:,./?", -- where line breaks are allowed
|
||||||
|
-- breakindent = true, -- line breaks continue where the line starts
|
||||||
|
breakindentopt = {
|
||||||
|
'shift:0', -- indent by no char
|
||||||
|
'sbr', -- show line break symbol
|
||||||
|
},
|
||||||
showbreak = '↪ ', -- line break symbol itself
|
showbreak = '↪ ', -- line break symbol itself
|
||||||
cdhome = false, -- do not cd to home on :cd (won't work?)
|
cdhome = false, -- do not cd to home on :cd (won't work?)
|
||||||
cedit = '', -- no kinding to open CL window (?)
|
cedit = '', -- no kinding to open CL window (?)
|
||||||
|
|
@ -37,11 +42,15 @@ local options = {
|
||||||
errorbells = true, -- sound on errors
|
errorbells = true, -- sound on errors
|
||||||
exrc = true, -- execute possible local config
|
exrc = true, -- execute possible local config
|
||||||
fillchars = 'diff:<',
|
fillchars = 'diff:<',
|
||||||
|
foldlevelstart = 0, -- at start, close all folds...
|
||||||
|
foldminlines = 50, -- but only fold really large things...
|
||||||
|
foldmethod = 'indent', -- and identify them by indent
|
||||||
-- look into lang* (langmenu)
|
-- look into lang* (langmenu)
|
||||||
lazyredraw = true, -- might be a bad idea, IDK
|
lazyredraw = true, -- might be a bad idea, IDK
|
||||||
mouse = '',
|
mouse = 'nvi', -- enable mouse at insert and visual
|
||||||
mousehide = true,
|
mousehide = true, -- hide mouse when something is being typed
|
||||||
mousescroll = 'ver:0,hor:0',
|
-- mousefocus = true, -- focus on window where mouse is
|
||||||
|
mousescroll = 'ver:2,hor:3',
|
||||||
-- mouses = 'n:arrow,v:crosshair,i:beam', -- how mouse looks like in different modes
|
-- mouses = 'n:arrow,v:crosshair,i:beam', -- how mouse looks like in different modes
|
||||||
number = true, -- print numbers at the start
|
number = true, -- print numbers at the start
|
||||||
ruler = true, -- show row&column
|
ruler = true, -- show row&column
|
||||||
|
|
|
||||||
|
|
@ -89,11 +89,7 @@ local function config()
|
||||||
DiffviewOpen = {},
|
DiffviewOpen = {},
|
||||||
DiffviewFileHistory = {},
|
DiffviewFileHistory = {},
|
||||||
},
|
},
|
||||||
hooks = {
|
hooks = {}, -- See |diffview-config-hooks|
|
||||||
diff_buf_win_enter = function()
|
|
||||||
vim.opt_local.foldenable = false
|
|
||||||
end,
|
|
||||||
}, -- See |diffview-config-hooks|
|
|
||||||
keymaps = {
|
keymaps = {
|
||||||
disable_defaults = false, -- Disable the default keymaps
|
disable_defaults = false, -- Disable the default keymaps
|
||||||
view = {
|
view = {
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,9 @@ local function config()
|
||||||
end
|
end
|
||||||
|
|
||||||
-- js/ts fomatters
|
-- js/ts fomatters
|
||||||
local web_fmt = { "biome" }
|
local web_fmt = { "biome" };
|
||||||
local fomatters_by_ft = {
|
local fomatters_by_ft = {
|
||||||
|
lua = { "stylua" },
|
||||||
python = { "black" },
|
python = { "black" },
|
||||||
javascript = web_fmt,
|
javascript = web_fmt,
|
||||||
javascriptreact = web_fmt,
|
javascriptreact = web_fmt,
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,20 @@
|
||||||
|
local function config()
|
||||||
|
local is_ok, _ = pcall(require, 'dzu.lsp')
|
||||||
|
if not is_ok then
|
||||||
|
vim.notify("failed to setup lsp")
|
||||||
|
return
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"mason-org/mason-lspconfig.nvim",
|
"mason-org/mason-lspconfig.nvim",
|
||||||
|
opts = {},
|
||||||
dependencies = {
|
dependencies = {
|
||||||
"mason-org/mason.nvim",
|
"mason-org/mason.nvim",
|
||||||
"neovim/nvim-lspconfig",
|
"neovim/nvim-lspconfig",
|
||||||
-- lsp completions
|
-- lsp completions
|
||||||
"hrsh7th/cmp-nvim-lsp",
|
"hrsh7th/cmp-nvim-lsp",
|
||||||
},
|
},
|
||||||
|
config = config,
|
||||||
lazy = false,
|
lazy = false,
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,29 +0,0 @@
|
||||||
local function config()
|
|
||||||
local is_ok, _ = pcall(require, "mason-tool-installer")
|
|
||||||
if not is_ok then
|
|
||||||
vim.notify("Failed to setup mason tools")
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
local is_ok, _ = pcall(require, "dzu.lsp")
|
|
||||||
if not is_ok then
|
|
||||||
vim.notify("failed to setup lsp")
|
|
||||||
return
|
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
return {
|
|
||||||
"WhoIsSethDaniel/mason-tool-installer.nvim",
|
|
||||||
dependencies = {
|
|
||||||
"mason-org/mason-lspconfig.nvim",
|
|
||||||
},
|
|
||||||
config = config,
|
|
||||||
lazy = false,
|
|
||||||
opts = {
|
|
||||||
integrations = {
|
|
||||||
["mason-lspconfig"] = true,
|
|
||||||
["mason-null-ls"] = false,
|
|
||||||
["mason-nvim-dap"] = false,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
@ -1,48 +1,49 @@
|
||||||
local function config()
|
local function config()
|
||||||
local is_ok, tree_sitter = pcall(require, "nvim-treesitter")
|
local is_ok, configs = pcall(require, "nvim-treesitter.configs")
|
||||||
if not is_ok then
|
if not is_ok then
|
||||||
vim.notify("couldn't find tree sitter")
|
vim.notify("couldn't find tree sitter config")
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
||||||
local langs = {
|
local config_opts = {
|
||||||
"bash",
|
ensure_installed = {
|
||||||
"c",
|
"bash",
|
||||||
"comment",
|
"c",
|
||||||
"cpp",
|
"comment",
|
||||||
"csv",
|
"cpp",
|
||||||
"djot",
|
"csv",
|
||||||
"dockerfile",
|
-- "cuda", -- not yet; might enable in the future
|
||||||
"fish",
|
"djot",
|
||||||
"gitignore",
|
"dockerfile", -- oh yeah. I should probably figure docker out...
|
||||||
"diff",
|
"fish",
|
||||||
"git_rebase",
|
"gitignore",
|
||||||
"gitcommit",
|
"diff",
|
||||||
"haskell",
|
"git_rebase",
|
||||||
"html",
|
"gitcommit",
|
||||||
"javascript",
|
"haskell",
|
||||||
"typescript",
|
"html",
|
||||||
"tsx",
|
"javascript",
|
||||||
"json",
|
"typescript",
|
||||||
"latex",
|
-- "jsx",
|
||||||
"lua",
|
"tsx",
|
||||||
"luadoc",
|
"json",
|
||||||
"make",
|
"latex",
|
||||||
"markdown",
|
"lua",
|
||||||
"markdown_inline",
|
"luadoc",
|
||||||
"python",
|
"make",
|
||||||
"rust",
|
"markdown",
|
||||||
"sql",
|
"markdown_inline",
|
||||||
"toml",
|
"python",
|
||||||
"vim",
|
"rust",
|
||||||
"vimdoc",
|
"sql",
|
||||||
"xml",
|
"toml",
|
||||||
"nu",
|
"vim",
|
||||||
"java",
|
"vimdoc",
|
||||||
}
|
"xml",
|
||||||
local opts = {
|
"nu",
|
||||||
ensure_installed = langs,
|
"java",
|
||||||
sync_install = true,
|
},
|
||||||
|
sync_install = false,
|
||||||
ignore_install = {}, -- List of parsers to ignore installing
|
ignore_install = {}, -- List of parsers to ignore installing
|
||||||
highlight = {
|
highlight = {
|
||||||
enable = true, -- false will disable the whole extension
|
enable = true, -- false will disable the whole extension
|
||||||
|
|
@ -52,7 +53,7 @@ local function config()
|
||||||
},
|
},
|
||||||
indent = { enable = true, disable = {} },
|
indent = { enable = true, disable = {} },
|
||||||
}
|
}
|
||||||
tree_sitter.setup(opts)
|
configs.setup(config_opts)
|
||||||
|
|
||||||
vim.cmd.TSUpdate()
|
vim.cmd.TSUpdate()
|
||||||
end
|
end
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue