dendritic migration
dendritic migration
This commit is contained in:
17
modules/_neovim/plugins/blink-cmp.nix
Normal file
17
modules/_neovim/plugins/blink-cmp.nix
Normal file
@@ -0,0 +1,17 @@
|
||||
{
|
||||
programs.nixvim.plugins.blink-cmp = {
|
||||
enable = true;
|
||||
settings = {
|
||||
signature.enabled = true;
|
||||
completion = {
|
||||
accept = {
|
||||
auto_brackets = {
|
||||
enabled = true;
|
||||
semantic_token_resolution.enabled = false;
|
||||
};
|
||||
};
|
||||
documentation.auto_show = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
14
modules/_neovim/plugins/conform.nix
Normal file
14
modules/_neovim/plugins/conform.nix
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
programs.nixvim.plugins.conform-nvim = {
|
||||
enable = true;
|
||||
settings = {
|
||||
format_on_save = {};
|
||||
formatters_by_ft = {
|
||||
nix = ["alejandra"];
|
||||
javascript = ["prettier"];
|
||||
typescript = ["prettier"];
|
||||
vue = ["prettier"];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
7
modules/_neovim/plugins/grug-far.nix
Normal file
7
modules/_neovim/plugins/grug-far.nix
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
grug-far = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
7
modules/_neovim/plugins/harpoon.nix
Normal file
7
modules/_neovim/plugins/harpoon.nix
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
harpoon = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
7
modules/_neovim/plugins/hunk.nix
Normal file
7
modules/_neovim/plugins/hunk.nix
Normal file
@@ -0,0 +1,7 @@
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
hunk = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
14
modules/_neovim/plugins/jj-diffconflicts.nix
Normal file
14
modules/_neovim/plugins/jj-diffconflicts.nix
Normal file
@@ -0,0 +1,14 @@
|
||||
{pkgs, ...}: {
|
||||
programs.nixvim.extraPlugins = [
|
||||
(pkgs.vimUtils.buildVimPlugin {
|
||||
name = "jj-diffconflicts";
|
||||
src =
|
||||
pkgs.fetchFromGitHub {
|
||||
owner = "rafikdraoui";
|
||||
repo = "jj-diffconflicts";
|
||||
rev = "main";
|
||||
hash = "sha256-nzjRWHrE2jIcaDoPbixzpvflrtLhPZrihOEQWwqqU0s=";
|
||||
};
|
||||
})
|
||||
];
|
||||
}
|
||||
17
modules/_neovim/plugins/lsp.nix
Normal file
17
modules/_neovim/plugins/lsp.nix
Normal file
@@ -0,0 +1,17 @@
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
lsp = {
|
||||
enable = true;
|
||||
inlayHints = true;
|
||||
servers = {
|
||||
cssls.enable = true;
|
||||
dockerls.enable = true;
|
||||
jsonls.enable = true;
|
||||
nil_ls.enable = true;
|
||||
vtsls.enable = true;
|
||||
yamlls.enable = true;
|
||||
zk.enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
158
modules/_neovim/plugins/mini.nix
Normal file
158
modules/_neovim/plugins/mini.nix
Normal file
@@ -0,0 +1,158 @@
|
||||
{
|
||||
programs.nixvim.plugins.mini = {
|
||||
enable = true;
|
||||
modules = {
|
||||
ai = {
|
||||
custom_textobjects = {
|
||||
B.__raw = "require('mini.extra').gen_ai_spec.buffer()";
|
||||
F.__raw = "require('mini.ai').gen_spec.treesitter({ a = '@function.outer', i = '@function.inner' })";
|
||||
};
|
||||
};
|
||||
align = {};
|
||||
basics = {
|
||||
options = {
|
||||
basic = true;
|
||||
extra_ui = true;
|
||||
};
|
||||
mappings = {
|
||||
basic = false;
|
||||
};
|
||||
autocommands = {
|
||||
basic = true;
|
||||
};
|
||||
};
|
||||
bracketed = {};
|
||||
clue = {
|
||||
clues.__raw = ''
|
||||
{
|
||||
{ mode = 'n', keys = '<Leader>e', desc = '+Explore/+Edit' },
|
||||
{ mode = 'n', keys = '<Leader>f', desc = '+Find' },
|
||||
{ mode = 'n', keys = '<Leader>g', desc = '+Git' },
|
||||
{ mode = 'n', keys = '<Leader>l', desc = '+LSP' },
|
||||
{ mode = 'x', keys = '<Leader>l', desc = '+LSP' },
|
||||
require("mini.clue").gen_clues.builtin_completion(),
|
||||
require("mini.clue").gen_clues.g(),
|
||||
require("mini.clue").gen_clues.marks(),
|
||||
require("mini.clue").gen_clues.registers(),
|
||||
require("mini.clue").gen_clues.windows({ submode_resize = true }),
|
||||
require("mini.clue").gen_clues.z(),
|
||||
}
|
||||
'';
|
||||
triggers = [
|
||||
{
|
||||
mode = "n";
|
||||
keys = "<Leader>";
|
||||
}
|
||||
{
|
||||
mode = "x";
|
||||
keys = "<Leader>";
|
||||
}
|
||||
{
|
||||
mode = "n";
|
||||
keys = "[";
|
||||
}
|
||||
{
|
||||
mode = "n";
|
||||
keys = "]";
|
||||
}
|
||||
{
|
||||
mode = "x";
|
||||
keys = "[";
|
||||
}
|
||||
{
|
||||
mode = "x";
|
||||
keys = "]";
|
||||
}
|
||||
{
|
||||
mode = "i";
|
||||
keys = "<C-x>";
|
||||
}
|
||||
{
|
||||
mode = "n";
|
||||
keys = "g";
|
||||
}
|
||||
{
|
||||
mode = "x";
|
||||
keys = "g";
|
||||
}
|
||||
|
||||
{
|
||||
mode = "n";
|
||||
keys = "\"";
|
||||
}
|
||||
{
|
||||
mode = "x";
|
||||
keys = "\"";
|
||||
}
|
||||
{
|
||||
mode = "i";
|
||||
keys = "<C-r>";
|
||||
}
|
||||
{
|
||||
mode = "c";
|
||||
keys = "<C-r>";
|
||||
}
|
||||
{
|
||||
mode = "n";
|
||||
keys = "<C-w>";
|
||||
}
|
||||
{
|
||||
mode = "n";
|
||||
keys = "z";
|
||||
}
|
||||
{
|
||||
mode = "x";
|
||||
keys = "z";
|
||||
}
|
||||
{
|
||||
mode = "n";
|
||||
keys = "'";
|
||||
}
|
||||
{
|
||||
mode = "n";
|
||||
keys = "`";
|
||||
}
|
||||
{
|
||||
mode = "x";
|
||||
keys = "'";
|
||||
}
|
||||
{
|
||||
mode = "x";
|
||||
keys = "`";
|
||||
}
|
||||
];
|
||||
};
|
||||
cmdline = {};
|
||||
comment = {};
|
||||
diff = {};
|
||||
extra = {};
|
||||
git = {};
|
||||
icons = {};
|
||||
indentscope = {
|
||||
settings = {
|
||||
symbol = "|";
|
||||
};
|
||||
};
|
||||
jump = {};
|
||||
jump2d = {
|
||||
settings = {
|
||||
spotter.__raw = "require('mini.jump2d').gen_spotter.pattern('[^%s%p]+')";
|
||||
labels = "asdfghjkl";
|
||||
view = {
|
||||
dim = true;
|
||||
n_steps_ahead = 2;
|
||||
};
|
||||
};
|
||||
};
|
||||
move = {};
|
||||
pairs = {};
|
||||
pick = {};
|
||||
starter = {};
|
||||
statusline = {};
|
||||
surround = {};
|
||||
trailspace = {};
|
||||
visits = {};
|
||||
};
|
||||
mockDevIcons = true;
|
||||
};
|
||||
}
|
||||
27
modules/_neovim/plugins/oil.nix
Normal file
27
modules/_neovim/plugins/oil.nix
Normal file
@@ -0,0 +1,27 @@
|
||||
{
|
||||
programs.nixvim.plugins.oil = {
|
||||
enable = true;
|
||||
settings = {
|
||||
keymaps = {
|
||||
"<C-r>" = "actions.refresh";
|
||||
"<leader>qq" = "actions.close";
|
||||
};
|
||||
skip_confirm_for_simple_edits = true;
|
||||
constrain_cursor = "editable";
|
||||
default_file_explorer = true;
|
||||
view_options = {
|
||||
show_hidden = true;
|
||||
};
|
||||
win_options = {
|
||||
concealcursor = "ncv";
|
||||
conceallevel = 3;
|
||||
cursorcolumn = false;
|
||||
foldcolumn = "0";
|
||||
list = false;
|
||||
signcolumn = "no";
|
||||
spell = false;
|
||||
wrap = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
20
modules/_neovim/plugins/toggleterm.nix
Normal file
20
modules/_neovim/plugins/toggleterm.nix
Normal file
@@ -0,0 +1,20 @@
|
||||
{
|
||||
programs.nixvim.plugins.toggleterm = {
|
||||
enable = true;
|
||||
settings = {
|
||||
open_mapping = null;
|
||||
direction = "float";
|
||||
float_opts = {
|
||||
border = "curved";
|
||||
winblend = 3;
|
||||
};
|
||||
size = 20;
|
||||
hide_numbers = true;
|
||||
shade_terminals = true;
|
||||
shading_factor = 2;
|
||||
start_in_insert = true;
|
||||
close_on_exit = true;
|
||||
shell = "fish";
|
||||
};
|
||||
};
|
||||
}
|
||||
40
modules/_neovim/plugins/treesitter.nix
Normal file
40
modules/_neovim/plugins/treesitter.nix
Normal file
@@ -0,0 +1,40 @@
|
||||
{pkgs, ...}: {
|
||||
programs.nixvim = {
|
||||
plugins.treesitter = {
|
||||
enable = true;
|
||||
nixGrammars = true;
|
||||
grammarPackages = pkgs.vimPlugins.nvim-treesitter.allGrammars;
|
||||
settings = {
|
||||
highlight.enable = true;
|
||||
indent.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
# Register missing treesitter predicates for compatibility with newer grammars
|
||||
extraConfigLuaPre = ''
|
||||
do
|
||||
local query = require("vim.treesitter.query")
|
||||
local predicates = query.list_predicates()
|
||||
if not vim.tbl_contains(predicates, "is-not?") then
|
||||
query.add_predicate("is-not?", function(match, pattern, source, predicate)
|
||||
local dominated_by = predicate[2]
|
||||
local dominated = false
|
||||
for _, node in pairs(match) do
|
||||
if type(node) == "userdata" then
|
||||
local current = node:parent()
|
||||
while current do
|
||||
if current:type() == dominated_by then
|
||||
dominated = true
|
||||
break
|
||||
end
|
||||
current = current:parent()
|
||||
end
|
||||
end
|
||||
end
|
||||
return not dominated
|
||||
end, { force = true, all = true })
|
||||
end
|
||||
end
|
||||
'';
|
||||
};
|
||||
}
|
||||
6
modules/_neovim/plugins/zk.nix
Normal file
6
modules/_neovim/plugins/zk.nix
Normal file
@@ -0,0 +1,6 @@
|
||||
{
|
||||
programs.nixvim.plugins.zk = {
|
||||
enable = true;
|
||||
settings = {};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user