moved nvim config options upstream
This commit is contained in:
parent
e6df94da34
commit
4c139f1a7a
7 changed files with 62 additions and 131 deletions
|
@ -17,6 +17,24 @@
|
|||
theme = {
|
||||
enable = true;
|
||||
};
|
||||
|
||||
options = {
|
||||
tabstop = 2;
|
||||
softtabstop = 2;
|
||||
shiftwidth = 2;
|
||||
undofile = true;
|
||||
swapfile = false;
|
||||
showmode = false;
|
||||
foldlevel = 99;
|
||||
foldcolumn = "1";
|
||||
foldlevelstart = 99;
|
||||
foldenable = true;
|
||||
foldmethod = "expr";
|
||||
#Default to treesitter folding
|
||||
foldexpr = "v:lua.vim.treesitter.foldexpr()";
|
||||
};
|
||||
|
||||
|
||||
visuals = {
|
||||
# notification system
|
||||
# https://github.com/j-hui/fidget.nvim
|
||||
|
@ -26,7 +44,7 @@
|
|||
highlight-undo.enable = true;
|
||||
# indentation guides
|
||||
# https://github.com/lukas-reineke/indent-blankline.nvim
|
||||
indent-blankline.enable = false;
|
||||
indent-blankline.enable = true;
|
||||
# extra icons
|
||||
nvim-web-devicons.enable = true;
|
||||
# https://github.com/petertriho/nvim-scrollbar
|
||||
|
@ -35,16 +53,41 @@
|
|||
lsp = {
|
||||
# Must be enabled for language modules to hook into the LSP API.
|
||||
enable = true;
|
||||
# enable debug adapter protocal by default
|
||||
enableDAP = true;
|
||||
|
||||
formatOnSave = true;
|
||||
# show errors inline
|
||||
# https://github.com/folke/trouble.nvim
|
||||
trouble.enable = true;
|
||||
# show lightbulb icon in gutter to indicate code actions
|
||||
# https://github.com/kosayoda/nvim-lightbulb
|
||||
lightbulb.enable = true;
|
||||
lightbulb.enable = false;
|
||||
# show icons in auto-completion menu
|
||||
# https://github.com/onsails/lspkind.nvim
|
||||
lspkind.enable = config.vim.autocomplete.blink-cmp.enable;
|
||||
# Enables inlay hints (types info in rust and shit)
|
||||
inlayHints.enable = true;
|
||||
#Nice mappings that i use :3
|
||||
mappings = {
|
||||
codeAction = "<leader>ca";
|
||||
goToDeclaration = "gD";
|
||||
goToDefinition = "gd";
|
||||
listReferences = "gr";
|
||||
goToType = "gy";
|
||||
hover = "K";
|
||||
nextDiagnostic = "<leader>d";
|
||||
openDiagnosticFloat = "<leader>df";
|
||||
renameSymbol = "rn";
|
||||
documentHighlight = null;
|
||||
listDocumentSymbols = null;
|
||||
listImplementations = null;
|
||||
listWorkspaceFolders = null;
|
||||
previousDiagnostic = null;
|
||||
removeWorkspaceFolder = null;
|
||||
signatureHelp = null;
|
||||
toggleFormatOnSave = null;
|
||||
};
|
||||
};
|
||||
treesitter = {
|
||||
enable = true;
|
||||
|
@ -73,6 +116,7 @@
|
|||
rust.enable = true;
|
||||
ts.enable = true;
|
||||
zig.enable = true;
|
||||
lua.enable = true;
|
||||
# sort-lines: off
|
||||
|
||||
ts.format.enable = false; # deno fmt is enabled elsewhere
|
||||
|
@ -207,5 +251,11 @@
|
|||
gitsigns.enable = true;
|
||||
gitsigns.codeActions.enable = false; # throws an annoying debug message
|
||||
};
|
||||
# Better help docs
|
||||
lazy.plugins."helpview.nvim" = {
|
||||
enabled = true;
|
||||
package = pkgs.vimPlugins.helpview-nvim;
|
||||
lazy = false;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,17 +1,6 @@
|
|||
_: {
|
||||
vim = {
|
||||
languages.astro.enable = true;
|
||||
options = {
|
||||
tabstop = 2;
|
||||
softtabstop = 2;
|
||||
shiftwidth = 2;
|
||||
undofile = true;
|
||||
swapfile = false;
|
||||
showmode = false;
|
||||
foldlevel = 99;
|
||||
foldcolumn = "1";
|
||||
foldlevelstart = 99;
|
||||
foldenable = true;
|
||||
linebreak = true;
|
||||
};
|
||||
git = {
|
||||
|
@ -41,11 +30,6 @@ _: {
|
|||
# Find Files
|
||||
(n "<leader><space>" ":lua require('snacks').picker.smart()<CR>" "Smart Find Files")
|
||||
(n "<leader>f" ":lua require('snacks').picker.grep()<CR>" "Grep Files")
|
||||
# Lsp
|
||||
(n "K" ":Lspsaga hover_doc<CR>" "Hover docs")
|
||||
(n "lr" ":lua vim.lsp.buf.rename()<CR>" "Rename")
|
||||
(n "gd" ":lua vim.lsp.buf.definition()<CR>" "Go to Definition")
|
||||
(n "gD" ":lua vim.lsp.buf.declaration()<CR>" "Go to Declaration")
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,21 +1,3 @@
|
|||
{ ... }:
|
||||
{
|
||||
vim.languages.astro.enable = true;
|
||||
vim.theme.extraConfig = ''
|
||||
if vim.g.neovide then
|
||||
vim.g.neovide_cursor_trail_size = 0.3
|
||||
vim.g.neovide_scroll_animation_length = 0.1;
|
||||
|
||||
vim.keymap.set('n', '<D-s>', ':w<CR>') -- Save
|
||||
vim.keymap.set('v', '<D-c>', '"+y') -- Copy
|
||||
vim.keymap.set('n', '<D-v>', '"+P') -- Paste normal mode
|
||||
vim.keymap.set('v', '<D-v>', '"+P') -- Paste visual mode
|
||||
vim.keymap.set('c', '<D-v>', '<C-R>+') -- Paste command mode
|
||||
vim.keymap.set('i', '<D-v>', '<ESC>l"+Pli') -- Paste insert mode
|
||||
end
|
||||
vim.api.nvim_set_keymap("", '<D-v>', '+p<CR>', { noremap = true, silent = true})
|
||||
vim.api.nvim_set_keymap('!', '<D-v>', '<C-R>+', { noremap = true, silent = true})
|
||||
vim.api.nvim_set_keymap('t', '<D-v>', '<C-R>+', { noremap = true, silent = true})
|
||||
vim.api.nvim_set_keymap('v', '<D-v>', '<C-R>+', { noremap = true, silent = true})
|
||||
'';
|
||||
}
|
||||
|
|
|
@ -9,21 +9,6 @@
|
|||
withPython3 = true;
|
||||
python3Packages = [ "pynvim" ];
|
||||
|
||||
options = {
|
||||
tabstop = 2;
|
||||
softtabstop = 2;
|
||||
shiftwidth = 2;
|
||||
undofile = true;
|
||||
swapfile = false;
|
||||
showmode = false;
|
||||
foldlevel = 99;
|
||||
foldcolumn = "1";
|
||||
foldlevelstart = 99;
|
||||
foldenable = true;
|
||||
foldmethod = "expr";
|
||||
#Default to treesitter folding
|
||||
foldexpr = "v:lua.vim.treesitter.foldexpr()";
|
||||
};
|
||||
|
||||
autocmds = [
|
||||
#Autocommand to fall back to treesitter folding if LSP doesnt support it
|
||||
|
@ -44,28 +29,9 @@
|
|||
tabline = {
|
||||
nvimBufferline.enable = true;
|
||||
};
|
||||
# nvf versions is VERY outdated
|
||||
# pluginOverrides = {
|
||||
# hardtime-nvim = pkgs.fetchFromGitHub {
|
||||
# owner = "m4xshen";
|
||||
# repo = "hardtime.nvim";
|
||||
# rev = "v1.0.1";
|
||||
# hash = "sha256-5tqiSuGvBJcr8l6anEBojXEaaxFS1P5T1ROr46ylVhk=";
|
||||
# };
|
||||
# };
|
||||
startPlugins = [
|
||||
"nui-nvim"
|
||||
];
|
||||
binds = {
|
||||
hardtime-nvim = {
|
||||
enable = false;
|
||||
setupOpts = {
|
||||
disable_mouse = false;
|
||||
restriction_mode = "warn";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
theme = {
|
||||
name = "catppuccin";
|
||||
style = "mocha";
|
||||
|
|
|
@ -1,26 +1,19 @@
|
|||
{ ... }:
|
||||
let
|
||||
mkKeymap = mode: key: action: desc: {
|
||||
inherit
|
||||
mode
|
||||
key
|
||||
action
|
||||
desc
|
||||
;
|
||||
};
|
||||
let
|
||||
mkKeymap = mode: key: action: desc: {
|
||||
inherit mode;
|
||||
inherit key action desc;
|
||||
};
|
||||
n = mkKeymap "n"; # normal mode
|
||||
in
|
||||
{
|
||||
vim = {
|
||||
keymaps = [
|
||||
(mkKeymap "n" "<leader>e" ":lua require('snacks').explorer()<CR>" "File Explorer")
|
||||
|
||||
(n "<leader>e" ":lua require('snacks').explorer()<CR>" "File Explorer")
|
||||
# Snacks Picker Replaces Telescope!?
|
||||
(mkKeymap "n" "<leader><space>" ":lua require('snacks').picker.smart()<CR>" "Smart Find Files")
|
||||
(mkKeymap "n" "<leader>ff" ":lua require('snacks').picker.files()<CR>" "Find File")
|
||||
(mkKeymap "n" "<leader>fg" ":lua require('snacks').picker.grep()<CR>" "Grep Files")
|
||||
# Lsp
|
||||
(mkKeymap "n" "lr" ":lua vim.lsp.buf.rename()<CR>" "Rename")
|
||||
# (mkKeymap "n" "<leader>th" ":lua function() vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled()) end<CR>" "Toggle Inlay Hints")
|
||||
(n "<leader><space>" ":lua require('snacks').picker.smart()<CR>" "Smart Find Files")
|
||||
(n "<leader>ff" ":lua require('snacks').picker.files()<CR>" "Find File")
|
||||
(n "<leader>fg" ":lua require('snacks').picker.grep()<CR>" "Grep Files")
|
||||
];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -12,17 +12,6 @@
|
|||
nixd
|
||||
];
|
||||
lsp = {
|
||||
formatOnSave = true;
|
||||
lightbulb.enable = false;
|
||||
# lspsaga = {
|
||||
# enable = true;
|
||||
# setupOpts = {
|
||||
# lightbulb = {
|
||||
# virtual_text = false;
|
||||
# };
|
||||
# };
|
||||
# };
|
||||
inlayHints.enable = true;
|
||||
servers = {
|
||||
nil = {
|
||||
settings.nil.nix.flake = {
|
||||
|
@ -58,30 +47,8 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
mappings = {
|
||||
codeAction = "<leader>ca";
|
||||
goToDeclaration = "gD";
|
||||
goToDefinition = "gd";
|
||||
listReferences = "gr";
|
||||
goToType = "gy";
|
||||
hover = "K";
|
||||
nextDiagnostic = "<leader>d";
|
||||
openDiagnosticFloat = "<leader>df";
|
||||
renameSymbol = "rn";
|
||||
documentHighlight = null;
|
||||
listDocumentSymbols = null;
|
||||
listImplementations = null;
|
||||
listWorkspaceFolders = null;
|
||||
previousDiagnostic = null;
|
||||
removeWorkspaceFolder = null;
|
||||
signatureHelp = null;
|
||||
toggleFormatOnSave = null;
|
||||
};
|
||||
};
|
||||
languages = {
|
||||
enableDAP = true;
|
||||
lua.enable = true;
|
||||
python.enable = true;
|
||||
python.format.type = "ruff";
|
||||
markdown = {
|
||||
enable = true;
|
||||
|
|
|
@ -1,11 +1,6 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
vim = {
|
||||
visuals = {
|
||||
indent-blankline = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
ui = {
|
||||
noice = {
|
||||
enable = true;
|
||||
|
@ -28,11 +23,5 @@
|
|||
};
|
||||
};
|
||||
|
||||
# Better help docs
|
||||
lazy.plugins."helpview.nvim" = {
|
||||
enabled = true;
|
||||
package = pkgs.vimPlugins.helpview-nvim;
|
||||
lazy = false;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue