Compare commits
6 Commits
feature-ya
...
9bba0ddc66
| Author | SHA1 | Date | |
|---|---|---|---|
|
9bba0ddc66
|
|||
|
761067ca6e
|
|||
|
d7b58e2216
|
|||
|
6f64253c4b
|
|||
|
27b4808993
|
|||
|
2dd361ec24
|
@@ -6,9 +6,9 @@ in
|
||||
{
|
||||
# ── Steam & Printer ───────────────────────────────────────────────────
|
||||
imports = [
|
||||
./builds/steam.nix
|
||||
./builds/printer.nix
|
||||
./builds/sops.nix
|
||||
./system/steam.nix
|
||||
./system/printer.nix
|
||||
./system/sops.nix
|
||||
];
|
||||
|
||||
# ── Use the systemd-boot EFI boot loader. ─────────────────────────────
|
||||
@@ -43,11 +43,14 @@ in
|
||||
};
|
||||
|
||||
nix = {
|
||||
# ── Flakes ────────────────────────────────────────────────────────────
|
||||
settings.experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
# ── Flakes ───────────────────────────────────────────────────────────
|
||||
settings = {
|
||||
download-buffer-size = 524288000;
|
||||
experimental-features = [
|
||||
"nix-command"
|
||||
"flakes"
|
||||
];
|
||||
};
|
||||
|
||||
# ── Garbage collect ───────────────────────────────────────────────────
|
||||
gc = {
|
||||
|
||||
78
flake.lock
generated
78
flake.lock
generated
@@ -5,11 +5,11 @@
|
||||
"nixpkgs": "nixpkgs"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773403535,
|
||||
"narHash": "sha256-47MZaFrHxNO8tVUAmtVnerXUw2WWVluBOiU9MulN/yM=",
|
||||
"lastModified": 1774799062,
|
||||
"narHash": "sha256-U9RGxFsLeKivD1+7sVXj5TltHGfB4m/dkn3dENT2fSM=",
|
||||
"owner": "catppuccin",
|
||||
"repo": "nix",
|
||||
"rev": "d45b5665cc638bad1b794350de02f4dd41b0bb47",
|
||||
"rev": "948a8ee84858d053b83f01c8c168f9f4347937e6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -106,11 +106,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773962693,
|
||||
"narHash": "sha256-nf9pgktDE4E2TCavUT1vh3Nd/tfKixL1BK6P32Zp3hI=",
|
||||
"lastModified": 1775143651,
|
||||
"narHash": "sha256-S0RqAyDPMTcv9vASMaE8eY1QexFysAOdnxUxFHIPOyE=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "9d3c1d636e7b8ab10f357cd9bee653cd400437de",
|
||||
"rev": "d166a078541982a76f14d3e06e9665fa5c9ed85e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -126,11 +126,11 @@
|
||||
"nixpkgs": "nixpkgs_2"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773965157,
|
||||
"narHash": "sha256-u6Ceko/AQ30asd/P68Y7gD0x3LtsjiPwC31TlwVnsac=",
|
||||
"lastModified": 1775138742,
|
||||
"narHash": "sha256-cyipL9p0VzyZT0wa+3KkeJYvtEYzyI1PjBOnGU8z3gI=",
|
||||
"owner": "nix-community",
|
||||
"repo": "neovim-nightly-overlay",
|
||||
"rev": "7e711c5abd3b0ca9c0038606edeee6bcf09b055c",
|
||||
"rev": "0fff256cfbc6978e711c43555df210d46940e943",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -142,11 +142,11 @@
|
||||
"neovim-src": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1773942472,
|
||||
"narHash": "sha256-VRtGTA4WWgrVrjZg+XrnRgMcbAa0EkYkWV5Wcn76/0g=",
|
||||
"lastModified": 1774915197,
|
||||
"narHash": "sha256-yor+eo8CVi7wBp7CjAMQnVoK+m197gsl7MvUzaqicns=",
|
||||
"owner": "neovim",
|
||||
"repo": "neovim",
|
||||
"rev": "06befe1e348bf540bb04a8c0cafe116616e71715",
|
||||
"rev": "dbc4800dda2b0dc3290dc79955f857256e0694e2",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -162,11 +162,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1773974569,
|
||||
"narHash": "sha256-Y71Afv2mVpus+EqUj0qAwPgyaABIvEtjnUAlw5EUo3A=",
|
||||
"lastModified": 1775098553,
|
||||
"narHash": "sha256-OFWIVY1vzAbPE73ksKAMsFh11AXZ3MjIymRQ90Butnc=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-vscode-extensions",
|
||||
"rev": "5b8548f9e2cbe14146df30858bd281404957846f",
|
||||
"rev": "361b17a5b2f4536a119c794a367a29b07691f941",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -177,11 +177,11 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1773122722,
|
||||
"narHash": "sha256-FIqHByVqxCprNjor1NqF80F2QQoiiyqanNNefdlvOg4=",
|
||||
"lastModified": 1773821835,
|
||||
"narHash": "sha256-TJ3lSQtW0E2JrznGVm8hOQGVpXjJyXY2guAxku2O9A4=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "62dc67aa6a52b4364dd75994ec00b51fbf474e50",
|
||||
"rev": "b40629efe5d6ec48dd1efba650c797ddbd39ace0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -193,11 +193,11 @@
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1773628058,
|
||||
"narHash": "sha256-hpXH0z3K9xv0fHaje136KY872VT2T5uwxtezlAskQgY=",
|
||||
"lastModified": 1774701658,
|
||||
"narHash": "sha256-CIS/4AMUSwUyC8X5g+5JsMRvIUL3YUfewe8K4VrbsSQ=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "f8573b9c935cfaa162dd62cc9e75ae2db86f85df",
|
||||
"rev": "b63fe7f000adcfa269967eeff72c64cafecbbebe",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -209,11 +209,11 @@
|
||||
},
|
||||
"nixpkgs_3": {
|
||||
"locked": {
|
||||
"lastModified": 1773821835,
|
||||
"narHash": "sha256-TJ3lSQtW0E2JrznGVm8hOQGVpXjJyXY2guAxku2O9A4=",
|
||||
"lastModified": 1775036866,
|
||||
"narHash": "sha256-ZojAnPuCdy657PbTq5V0Y+AHKhZAIwSIT2cb8UgAz/U=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "b40629efe5d6ec48dd1efba650c797ddbd39ace0",
|
||||
"rev": "6201e203d09599479a3b3450ed24fa81537ebc4e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -225,11 +225,11 @@
|
||||
},
|
||||
"nixpkgs_4": {
|
||||
"locked": {
|
||||
"lastModified": 1773821835,
|
||||
"narHash": "sha256-TJ3lSQtW0E2JrznGVm8hOQGVpXjJyXY2guAxku2O9A4=",
|
||||
"lastModified": 1775036866,
|
||||
"narHash": "sha256-ZojAnPuCdy657PbTq5V0Y+AHKhZAIwSIT2cb8UgAz/U=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "b40629efe5d6ec48dd1efba650c797ddbd39ace0",
|
||||
"rev": "6201e203d09599479a3b3450ed24fa81537ebc4e",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -264,11 +264,11 @@
|
||||
"systems": "systems"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1772402258,
|
||||
"narHash": "sha256-3DmCFOdmbkFML1/G9gj8Wb+rCCZFPOQtNoMCpqOF8SA=",
|
||||
"lastModified": 1774802402,
|
||||
"narHash": "sha256-L1UJ/zxKTyyaGGmytH6OYlgQ0HGSMhvPkvU+iz4Mkb8=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"rev": "21ae25e13b01d3b4cdc750b5f9e7bad68b150c10",
|
||||
"rev": "cbd8536a05d1aae2593cb5c9ace1010c8c5845cb",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -283,11 +283,11 @@
|
||||
"nixpkgs": "nixpkgs_4"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1774003391,
|
||||
"narHash": "sha256-3wzfMk2W/r0is+A6CMlHgG44hW/vIJ0NprJPNOqHYG4=",
|
||||
"lastModified": 1775159663,
|
||||
"narHash": "sha256-KES+OClaN0Vy/BkjW60UFo3dnQWpjkd1vIKEoynnlk0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "NUR",
|
||||
"rev": "da2dd0472635372ee44134502fde664df1e5820f",
|
||||
"rev": "008b7b102054965988abf26ea261314a2e6672d5",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -337,11 +337,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1774154798,
|
||||
"narHash": "sha256-zsTuloDSdKf+PrI1MsWx5z/cyGEJ8P3eERtAfdP8Bmg=",
|
||||
"lastModified": 1774910634,
|
||||
"narHash": "sha256-B+rZDPyktGEjOMt8PcHKYmgmKoF+GaNAFJhguktXAo0=",
|
||||
"owner": "Mic92",
|
||||
"repo": "sops-nix",
|
||||
"rev": "3e0d543e6ba6c0c48117a81614e90c6d8c425170",
|
||||
"rev": "19bf3d8678fbbfbc173beaa0b5b37d37938db301",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@@ -387,11 +387,11 @@
|
||||
"rust-overlay": "rust-overlay"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1774567340,
|
||||
"narHash": "sha256-skKD1hvAvilKkK406RgNl6X/YJgkSsoZmtHmdfeoyWI=",
|
||||
"lastModified": 1775132067,
|
||||
"narHash": "sha256-JFcGvXwV9O55bUDY9MilD2+/qUPqYg9IHsdH6oJzCGw=",
|
||||
"owner": "sxyazi",
|
||||
"repo": "yazi",
|
||||
"rev": "935eb6b2989f8a7ce219a2a71a539365c8dccfbb",
|
||||
"rev": "86b8f0779ca5406fb6fead8c248d3ab23c9b1db0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
||||
0
home/programs/eww/src/scripts/audio.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/audio.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/battery.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/battery.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/cpu.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/cpu.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/memory.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/memory.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/network.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/network.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/powermenu.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/powermenu.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/ristate.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/ristate.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/ristate_read.sh
Normal file → Executable file
0
home/programs/eww/src/scripts/ristate_read.sh
Normal file → Executable file
@@ -1,4 +1,4 @@
|
||||
{ inputs, pkgs, ... }:
|
||||
{ pkgs, inputs, ... }:
|
||||
|
||||
{
|
||||
imports = [
|
||||
@@ -6,38 +6,38 @@
|
||||
./plugins
|
||||
];
|
||||
|
||||
home.sessionVariables = {
|
||||
EDITOR = "nvim";
|
||||
};
|
||||
home.sessionVariables.EDITOR = "nvim";
|
||||
|
||||
programs.nixvim = {
|
||||
enable = true;
|
||||
defaultEditor = true;
|
||||
|
||||
nixpkgs.useGlobalPackages = false;
|
||||
|
||||
clipboard = {
|
||||
providers = {
|
||||
wl-copy.enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
|
||||
lualoader.enable = true;
|
||||
|
||||
extraPackages = with pkgs; [
|
||||
extraPackages = with pkgs; [ # TODO:
|
||||
texliveFull
|
||||
texlivePackages.standalone
|
||||
texlivePackages.relsize # needed for BA
|
||||
# papis-nvim
|
||||
];
|
||||
extraConfigVim = ''
|
||||
filetype plugin on
|
||||
set nocompatible
|
||||
syntax on
|
||||
'';
|
||||
|
||||
nixpkgs.useGlobalPackages = false;
|
||||
|
||||
clipboard.providers.wl-copy.enable = true;
|
||||
keymaps = [
|
||||
{
|
||||
key = "Y";
|
||||
action = ''"+y'';
|
||||
options.silent = true;
|
||||
}
|
||||
{
|
||||
key = "P";
|
||||
action = ''"+p'';
|
||||
options.silent = true;
|
||||
}
|
||||
];
|
||||
|
||||
viAlias = true;
|
||||
vimAlias = true;
|
||||
|
||||
lualoader.enable = true;
|
||||
|
||||
globals = {
|
||||
mapleader = " ";
|
||||
|
||||
45
home/programs/nixvim/plugins/aerial.nix
Normal file
45
home/programs/nixvim/plugins/aerial.nix
Normal file
@@ -0,0 +1,45 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
aerial = {
|
||||
enable = true;
|
||||
lazyLoad.settings.cmd = [
|
||||
"AerialToggle"
|
||||
"AerialNavToggle"
|
||||
];
|
||||
};
|
||||
|
||||
which-key.settings.spec = [
|
||||
{
|
||||
__unkeyed-1 = "<leader>a";
|
||||
group = "Aerial";
|
||||
icon = " ";
|
||||
}
|
||||
];
|
||||
};
|
||||
keymaps = [
|
||||
{
|
||||
key = "<leader>at";
|
||||
action = "<cmd>AerialToggle<cr>";
|
||||
options.desc = "Aerial tab";
|
||||
}
|
||||
{
|
||||
key = "<leader>an";
|
||||
action = "<cmd>AerialNavToggle<cr>";
|
||||
options.desc = "Aerial navgation";
|
||||
}
|
||||
{
|
||||
key = "<leader>a.";
|
||||
action = "<cmd>AerialNext<cr>";
|
||||
options.desc = "Aerial next";
|
||||
}
|
||||
{
|
||||
key = "<leader>a,";
|
||||
action = "<cmd>AerialPrev<cr>";
|
||||
options.desc = "Aerial previous";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -1,13 +1,10 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
nvim-autopairs = {
|
||||
enable = true;
|
||||
settings = {
|
||||
check_ts = true;
|
||||
};
|
||||
};
|
||||
programs.nixvim.plugins.nvim-autopairs = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings.check_ts = true;
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -3,9 +3,9 @@
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
barbar = {
|
||||
enable = true;
|
||||
};
|
||||
barbar.enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
which-key.settings.spec = [
|
||||
{
|
||||
__unkeyed-1 = "<leader>b";
|
||||
@@ -22,62 +22,49 @@
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
keymaps = [
|
||||
{
|
||||
action = "<CMD>BufferPrevious<CR>";
|
||||
key = "<leader>,";
|
||||
mode = "n";
|
||||
options = {
|
||||
desc = "Tab ";
|
||||
};
|
||||
options.desc = "Tab ";
|
||||
}
|
||||
{
|
||||
action = "<CMD>BufferNext<CR>";
|
||||
key = "<leader>.";
|
||||
mode = "n";
|
||||
options = {
|
||||
desc = "Tab ";
|
||||
};
|
||||
options.desc = "Tab ";
|
||||
}
|
||||
{
|
||||
action = "<CMD>BufferMovePrevious<CR>";
|
||||
key = "<leader>b<";
|
||||
mode = "n";
|
||||
options = {
|
||||
desc = "Re-Order ";
|
||||
};
|
||||
options.desc = "Re-Order ";
|
||||
}
|
||||
{
|
||||
action = "<CMD>BufferMoveNext<CR>";
|
||||
key = "<leader>b>";
|
||||
mode = "n";
|
||||
options = {
|
||||
desc = "Re-Order ";
|
||||
};
|
||||
options.desc = "Re-Order ";
|
||||
}
|
||||
{
|
||||
action = "<CMD>BufferClose<CR>";
|
||||
key = "<leader>bc";
|
||||
mode = "n";
|
||||
options = {
|
||||
desc = "Close";
|
||||
};
|
||||
options.desc = "Close";
|
||||
}
|
||||
{
|
||||
action = "<CMD>tabnew +Telescope\\ file_browser<CR>";
|
||||
action = "<CMD>tabnew +Telescope\\ yazi<CR>"; # TODO: does not work
|
||||
key = "<leader>bn";
|
||||
mode = "n";
|
||||
options = {
|
||||
desc = "Create";
|
||||
};
|
||||
options.desc = "Create";
|
||||
}
|
||||
{
|
||||
action = "<CMD>BufferPick<CR>";
|
||||
key = "<leader>bp";
|
||||
mode = "n";
|
||||
options = {
|
||||
desc = "Pick Tab";
|
||||
};
|
||||
options.desc = "Pick Tab";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
@@ -1,68 +1,65 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
bullets = {
|
||||
enable = true;
|
||||
settings = {
|
||||
enabled_file_types = [
|
||||
"markdown"
|
||||
"text"
|
||||
"gitcommit"
|
||||
];
|
||||
set_mappings = 0;
|
||||
checkbox_markers = " -X";
|
||||
custom_mappings = [
|
||||
[
|
||||
"nmap"
|
||||
"o"
|
||||
"<Plug>(bullets-newline)"
|
||||
]
|
||||
[
|
||||
"vmap"
|
||||
"gN"
|
||||
"<Plug>(bullets-renumber)"
|
||||
]
|
||||
[
|
||||
"nmap"
|
||||
"gN"
|
||||
"<Plug>(bullets-renumber)"
|
||||
]
|
||||
[
|
||||
"imap"
|
||||
"<C-t>"
|
||||
"<Plug>(bullets-demote)"
|
||||
]
|
||||
[
|
||||
"nmap"
|
||||
">>"
|
||||
"<Plug>(bullets-demote)"
|
||||
]
|
||||
[
|
||||
"vmap"
|
||||
">"
|
||||
"<Plug>(bullets-demote)"
|
||||
]
|
||||
[
|
||||
"imap"
|
||||
"<C-d>"
|
||||
"<Plug>(bullets-promote)"
|
||||
]
|
||||
[
|
||||
"nmap"
|
||||
"<<"
|
||||
"<Plug>(bullets-promote)"
|
||||
]
|
||||
[
|
||||
"vmap"
|
||||
"<"
|
||||
"<Plug>(bullets-promote)"
|
||||
]
|
||||
];
|
||||
};
|
||||
};
|
||||
programs.nixvim.plugins.bullets = {
|
||||
enable = true;
|
||||
lazyLoad.settings.filetypes = [ "md" "txt" "gitcommit" ];
|
||||
|
||||
settings = {
|
||||
enabled_file_types = [
|
||||
"markdown"
|
||||
"text"
|
||||
"gitcommit"
|
||||
];
|
||||
set_mappings = 0;
|
||||
checkbox_markers = " -X";
|
||||
custom_mappings = [
|
||||
[
|
||||
"nmap"
|
||||
"<leader>mn"
|
||||
"<Plug>(bullets-newline)"
|
||||
]
|
||||
[
|
||||
"vmap"
|
||||
"<leader>mr"
|
||||
"<Plug>(bullets-renumber)"
|
||||
]
|
||||
[
|
||||
"nmap"
|
||||
"<leader>mr"
|
||||
"<Plug>(bullets-renumber)"
|
||||
]
|
||||
[
|
||||
"imap"
|
||||
"<C-t>"
|
||||
"<Plug>(bullets-demote)"
|
||||
]
|
||||
[
|
||||
"nmap"
|
||||
">>"
|
||||
"<Plug>(bullets-demote)"
|
||||
]
|
||||
[
|
||||
"vmap"
|
||||
">"
|
||||
"<Plug>(bullets-demote)"
|
||||
]
|
||||
[
|
||||
"imap"
|
||||
"<C-d>"
|
||||
"<Plug>(bullets-promote)"
|
||||
]
|
||||
[
|
||||
"nmap"
|
||||
"<<"
|
||||
"<Plug>(bullets-promote)"
|
||||
]
|
||||
[
|
||||
"vmap"
|
||||
"<"
|
||||
"<Plug>(bullets-promote)"
|
||||
]
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -1,73 +1,70 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
blink-cmp = {
|
||||
enable = true;
|
||||
settings = {
|
||||
keymap = {
|
||||
preset = "default";
|
||||
};
|
||||
snippets = {
|
||||
preset = "luasnip";
|
||||
};
|
||||
completion = {
|
||||
accept = {
|
||||
auto_brackets = {
|
||||
enabled = true;
|
||||
kind_resolution = {
|
||||
enabled = true;
|
||||
};
|
||||
semantic_token_resolution = {
|
||||
enabled = true;
|
||||
timeout_ms = 400;
|
||||
};
|
||||
};
|
||||
programs.nixvim.plugins = {
|
||||
blink-cmp = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings = {
|
||||
keymap.preset = "default";
|
||||
snippets.preset = "luasnip";
|
||||
|
||||
completion.accept = {
|
||||
auto_brackets = {
|
||||
enabled = true;
|
||||
kind_resolution.enabled = true;
|
||||
|
||||
semantic_token_resolution = {
|
||||
enabled = true;
|
||||
timeout_ms = 400;
|
||||
};
|
||||
};
|
||||
sources = {
|
||||
per_filetype = {
|
||||
yaml = [ "papis" ];
|
||||
};
|
||||
providers = {
|
||||
spell = {
|
||||
module = "blink-cmp-spell";
|
||||
name = "Spell";
|
||||
score_offset = 100;
|
||||
opts = { };
|
||||
};
|
||||
vimtex = {
|
||||
name = "vimtex";
|
||||
module = "blink.compat.source";
|
||||
};
|
||||
dap = {
|
||||
name = "dap";
|
||||
module = "blink.compat.source";
|
||||
};
|
||||
mkdnflow = {
|
||||
name = "mkdnflow";
|
||||
module = "blink.compat.source";
|
||||
};
|
||||
};
|
||||
default = [
|
||||
"lsp"
|
||||
"mkdnflow"
|
||||
"path"
|
||||
"snippets"
|
||||
# "dap"
|
||||
"vimtex"
|
||||
"buffer"
|
||||
"spell"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
sources = {
|
||||
per_filetype.yaml = [ "papis" ];
|
||||
|
||||
providers = {
|
||||
spell = {
|
||||
module = "blink-cmp-spell";
|
||||
name = "Spell";
|
||||
score_offset = 100;
|
||||
opts = { };
|
||||
};
|
||||
|
||||
vimtex = {
|
||||
name = "vimtex";
|
||||
module = "blink.compat.source";
|
||||
};
|
||||
|
||||
dap = {
|
||||
name = "dap";
|
||||
module = "blink.compat.source";
|
||||
};
|
||||
|
||||
mkdnflow = {
|
||||
name = "mkdnflow";
|
||||
module = "blink.compat.source";
|
||||
};
|
||||
};
|
||||
|
||||
default = [
|
||||
"lsp"
|
||||
"mkdnflow"
|
||||
"path"
|
||||
"snippets"
|
||||
# "dap"
|
||||
"vimtex"
|
||||
"buffer"
|
||||
"spell"
|
||||
];
|
||||
};
|
||||
};
|
||||
blink-cmp-spell.enable = true;
|
||||
blink-compat.enable = true;
|
||||
cmp-vimtex.enable = true;
|
||||
# cmp-dap.enable = true;
|
||||
};
|
||||
blink-cmp-spell.enable = true;
|
||||
blink-compat.enable = true;
|
||||
cmp-vimtex.enable = true;
|
||||
# cmp-dap.enable = true;
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
15
home/programs/nixvim/plugins/colorizor.nix
Normal file
15
home/programs/nixvim/plugins/colorizor.nix
Normal file
@@ -0,0 +1,15 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins.colorizer = {
|
||||
enable = true;
|
||||
lazyLoad.settings.filetypes = [
|
||||
"css"
|
||||
"scss"
|
||||
"less"
|
||||
"sass"
|
||||
"html"
|
||||
"svg"
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -5,7 +5,9 @@
|
||||
plugins = {
|
||||
comment-box = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
};
|
||||
|
||||
which-key.settings.spec = [
|
||||
{
|
||||
__unkeyed-1 = "<leader>c";
|
||||
@@ -14,41 +16,32 @@
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
keymaps = [
|
||||
{
|
||||
key = "<leader>cb";
|
||||
action = "<Cmd>CBccbox<CR>";
|
||||
options = {
|
||||
desc = "Box Title";
|
||||
};
|
||||
options.desc = "Box Title";
|
||||
}
|
||||
{
|
||||
key = "<leader>ct";
|
||||
action = "<Cmd>CBllline<CR>";
|
||||
options = {
|
||||
desc = "Titled Line";
|
||||
};
|
||||
options.desc = "Titled Line";
|
||||
}
|
||||
{
|
||||
key = "<leader>cl";
|
||||
action = "<Cmd>CBline<CR>";
|
||||
options = {
|
||||
desc = "Simple Line";
|
||||
};
|
||||
options.desc = "Simple Line";
|
||||
}
|
||||
{
|
||||
key = "<leader>cm";
|
||||
action = "<Cmd>CBllbox14<CR>";
|
||||
options = {
|
||||
desc = "Marked";
|
||||
};
|
||||
options.desc = "Marked";
|
||||
}
|
||||
{
|
||||
key = "<leader>cd";
|
||||
action = "<Cmd>CBd<CR>";
|
||||
options = {
|
||||
desc = "Remove a Box";
|
||||
};
|
||||
options.desc = "Remove a Box";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
@@ -1,16 +1,10 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
comment = {
|
||||
enable = true;
|
||||
settings = {
|
||||
mappings = {
|
||||
basic = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
programs.nixvim.plugins.comment = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings.mappings.basic = true;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -21,13 +21,13 @@
|
||||
programs.nixvim.plugins = {
|
||||
conform-nvim = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings = {
|
||||
formatters_by_ft = {
|
||||
lua = [ "stylua" ];
|
||||
rust = [ "rustfmt" ];
|
||||
python = [
|
||||
"black"
|
||||
];
|
||||
python = [ "black" ];
|
||||
haskell = [ "fourmolu" ];
|
||||
terraform = [ "hcl" ];
|
||||
elixir = [ "mix" ];
|
||||
@@ -47,9 +47,7 @@
|
||||
yaml = [ "prettierd" ];
|
||||
nu = [ "topiary_nu" ];
|
||||
nix = [ "nixfmt" ];
|
||||
tex = [
|
||||
"tex-fmt"
|
||||
];
|
||||
tex = [ "tex-fmt" ];
|
||||
"_" = [
|
||||
"squeeze_blanks"
|
||||
"trim_whitespace"
|
||||
@@ -94,9 +92,7 @@
|
||||
"2"
|
||||
];
|
||||
};
|
||||
tex-fmt = {
|
||||
command = "tex-fmt";
|
||||
};
|
||||
tex-fmt.command = "tex-fmt";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
49
home/programs/nixvim/plugins/csvview.nix
Normal file
49
home/programs/nixvim/plugins/csvview.nix
Normal file
@@ -0,0 +1,49 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
csvview = {
|
||||
enable = true;
|
||||
lazyLoad.settings.cmd = [
|
||||
"CsvViewEnable"
|
||||
"CsvViewToggle"
|
||||
];
|
||||
|
||||
settings = {
|
||||
parser.async_chunksize = 30;
|
||||
view = {
|
||||
display_mode = "border";
|
||||
spacing = 2;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
which-key.settings.spec = [
|
||||
{
|
||||
__unkeyed-1 = "<leader>z";
|
||||
group = "CSV";
|
||||
icon = " ";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
keymaps = [
|
||||
{
|
||||
key = "<leader>ze";
|
||||
action = "<Cmd>CsvViewEnable<CR>";
|
||||
options.desc = "Csv enable preview";
|
||||
}
|
||||
{
|
||||
key = "<leader>zd";
|
||||
action = "<Cmd>CsvViewDisable<CR>";
|
||||
options.desc = "Csv disable preview";
|
||||
}
|
||||
{
|
||||
key = "<leader>zt";
|
||||
action = "<Cmd>CsvViewToggle<CR>";
|
||||
options.desc = "Csv toggle preview";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -1,4 +1,4 @@
|
||||
{ config, pkgs, ... }:
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
@@ -13,10 +13,13 @@
|
||||
plugins = {
|
||||
dap-python = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
};
|
||||
|
||||
dap = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
luaConfig.post = ''
|
||||
local dap, dapui = require("dap"), require("dapui")
|
||||
dap.listeners.before.attach.dapui_config = function()
|
||||
@@ -32,11 +35,13 @@
|
||||
dapui.close()
|
||||
end
|
||||
'';
|
||||
|
||||
adapters = {
|
||||
executables = {
|
||||
lldb = {
|
||||
command = "${pkgs.lldb_19}/bin/lldb-dap";
|
||||
};
|
||||
|
||||
gdb = {
|
||||
command = "${pkgs.gdb}/bin/gdb";
|
||||
args = [
|
||||
@@ -45,6 +50,7 @@
|
||||
"set print pretty on"
|
||||
];
|
||||
};
|
||||
|
||||
rust-gdb = {
|
||||
command = "${pkgs.rustc}/bin/rust-gdb";
|
||||
args = [
|
||||
@@ -55,9 +61,8 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
signs = {
|
||||
dapBreakpoint.text = "";
|
||||
};
|
||||
|
||||
signs.dapBreakpoint.text = "";
|
||||
configurations = {
|
||||
cpp = [
|
||||
{
|
||||
@@ -104,6 +109,7 @@
|
||||
cwd = "\${workspaceFolder}";
|
||||
}
|
||||
];
|
||||
|
||||
c = [
|
||||
{
|
||||
name = "Launch file";
|
||||
@@ -136,6 +142,7 @@
|
||||
args = { };
|
||||
}
|
||||
];
|
||||
|
||||
rust = [
|
||||
{
|
||||
name = "Launch";
|
||||
@@ -182,12 +189,17 @@
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
dap-ui = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
};
|
||||
|
||||
dap-virtual-text = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
};
|
||||
|
||||
which-key.settings.spec = [
|
||||
{
|
||||
__unkeyed-1 = "<leader>d";
|
||||
@@ -196,70 +208,55 @@
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
keymaps = [
|
||||
{
|
||||
key = "<leader>dt";
|
||||
action.__raw = "function() require('dap').toggle_breakpoint() end";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Toggle Breakpoint";
|
||||
};
|
||||
options.desc = "Toggle Breakpoint";
|
||||
}
|
||||
{
|
||||
key = "<leader>dc";
|
||||
action.__raw = "function() require('dap').continue() end";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Continue";
|
||||
};
|
||||
options.desc = "Continue";
|
||||
}
|
||||
{
|
||||
key = "<leader>dc";
|
||||
action.__raw = "function() require('dap').continue() end";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Continue";
|
||||
};
|
||||
options.desc = "Continue";
|
||||
}
|
||||
{
|
||||
key = "<leader>di";
|
||||
action.__raw = "function() require('dap').step_into() end";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Step Into";
|
||||
};
|
||||
options.desc = "Step Into";
|
||||
}
|
||||
{
|
||||
key = "<leader>do";
|
||||
action.__raw = "function() require('dap').step_over() end";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Step Over";
|
||||
};
|
||||
options.desc = "Step Over";
|
||||
}
|
||||
{
|
||||
key = "<leader>du";
|
||||
action.__raw = "function() require('dap').step_out() end";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Step Out";
|
||||
};
|
||||
options.desc = "Step Out";
|
||||
}
|
||||
{
|
||||
key = "<leader>dr";
|
||||
action.__raw = "function() require('dap').repl.open() end";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Open REPL";
|
||||
};
|
||||
options.desc = "Open REPL";
|
||||
}
|
||||
{
|
||||
key = "<leader>dl";
|
||||
action.__raw = "function() require('dap').run_last() end";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Run Last";
|
||||
};
|
||||
options.desc = "Run Last";
|
||||
}
|
||||
{
|
||||
key = "<leader>dq";
|
||||
@@ -272,27 +269,21 @@
|
||||
end
|
||||
'';
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Terminate";
|
||||
};
|
||||
options.desc = "Terminate";
|
||||
}
|
||||
{
|
||||
key = "<leader>db";
|
||||
action.__raw = "function() require('dap').list_breakpoints() end";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "List Breakpoints";
|
||||
};
|
||||
options.desc = "List Breakpoints";
|
||||
|
||||
}
|
||||
{
|
||||
key = "<leader>de";
|
||||
action.__raw = "function() require('dap').set_exception_breakpoints({ ' all ' }) end";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Set Exception Breakpoints";
|
||||
};
|
||||
options.desc = "Set Exception Breakpoints";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -1,23 +1,24 @@
|
||||
{
|
||||
imports = [
|
||||
./aerial.nix
|
||||
./autopairs.nix
|
||||
./barbar.nix
|
||||
./bullets.nix
|
||||
./cmp.nix
|
||||
./colorizor.nix
|
||||
./comment-box.nix
|
||||
./comment.nix
|
||||
./conform.nix
|
||||
./csvview.nix
|
||||
./dap.nix
|
||||
./diffview.nix
|
||||
./dynomark.nix
|
||||
./edgy.nix
|
||||
./gitsigns.nix
|
||||
./haskell-tools.nix
|
||||
./img-clip.nix
|
||||
./knap.nix
|
||||
./leap.nix
|
||||
./lsp.nix
|
||||
./ltex-extra.nix
|
||||
./lualine.nix
|
||||
./lsp.nix
|
||||
./lz-n.nix
|
||||
./markdown-preview.nix
|
||||
./mkdnflow.nix
|
||||
./neoscroll.nix
|
||||
@@ -25,18 +26,16 @@
|
||||
./noice.nix
|
||||
./notify.nix
|
||||
./oil.nix
|
||||
./openscad.nix
|
||||
./otter.nix
|
||||
./papis.nix
|
||||
./peek.nix
|
||||
./markdown-preview.nix
|
||||
./rainbow.nix
|
||||
./render-markdown.nix
|
||||
./rustaceanvim.nix
|
||||
./smart-splits.nix
|
||||
./snippets.nix
|
||||
./sniprun.nix
|
||||
./startup.nix
|
||||
./surround.nix
|
||||
./telescope.nix
|
||||
./texpresso.nix
|
||||
./todo-comments.nix
|
||||
./toggleterm.nix
|
||||
./treesitter.nix
|
||||
@@ -44,10 +43,12 @@
|
||||
./typst-preview.nix
|
||||
./typst-vim.nix
|
||||
./undotree.nix
|
||||
./unified.nix
|
||||
./vimtex.nix
|
||||
./web-devicons.nix
|
||||
./which-key.nix
|
||||
./yanky.nix
|
||||
./zk.nix
|
||||
./wilder.nix
|
||||
./yazi.nix
|
||||
./yuck.nix
|
||||
];
|
||||
}
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
diffview = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -14,11 +14,7 @@ let
|
||||
in
|
||||
{
|
||||
programs.nixvim = {
|
||||
|
||||
extraPlugins = [
|
||||
dynomark-nvim
|
||||
];
|
||||
|
||||
extraPlugins = [ dynomark-nvim ];
|
||||
extraConfigLua = "require('dynomark').setup({})";
|
||||
|
||||
keymaps = [
|
||||
@@ -26,17 +22,13 @@ in
|
||||
key = "<leader>v";
|
||||
action = "<Plug>(DynomarkToggle)";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Toggle Dynomark";
|
||||
};
|
||||
options.desc = "Toggle Dynomark";
|
||||
}
|
||||
{
|
||||
key = "<leader>V";
|
||||
action = "<Plug>(DynomarkRun)";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Run Dynomark query under cursor";
|
||||
};
|
||||
options.desc = "Run Dynomark query under cursor";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
@@ -9,10 +9,12 @@
|
||||
# To prevent this, set `splitkeep` to either `screen` or `topline`.
|
||||
splitkeep = "screen";
|
||||
};
|
||||
|
||||
plugins = {
|
||||
edgy = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings = {
|
||||
bottom.__raw = ''
|
||||
{
|
||||
@@ -37,6 +39,7 @@
|
||||
}
|
||||
}
|
||||
'';
|
||||
|
||||
left.__raw = ''
|
||||
{
|
||||
-- Neo-tree filesystem always takes half the screen height
|
||||
@@ -77,4 +80,3 @@
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -1,11 +1,8 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
gitsigns = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
programs.nixvim.plugins.gitsigns = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -12,8 +12,6 @@
|
||||
haskellPackages.ghci-dap
|
||||
];
|
||||
|
||||
extraPlugins = with pkgs.vimPlugins; [
|
||||
haskell-tools-nvim
|
||||
];
|
||||
extraPlugins = with pkgs.vimPlugins; [ haskell-tools-nvim ];
|
||||
};
|
||||
}
|
||||
|
||||
22
home/programs/nixvim/plugins/img-clip.nix
Normal file
22
home/programs/nixvim/plugins/img-clip.nix
Normal file
@@ -0,0 +1,22 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins.img-clip = {
|
||||
enable = true;
|
||||
lazyLoad.settings.filetypes = [
|
||||
"md"
|
||||
"tex"
|
||||
"typ"
|
||||
];
|
||||
};
|
||||
|
||||
keymaps = [
|
||||
{
|
||||
key = "<leader>p";
|
||||
action = "<cmd>PasteImage<cr>";
|
||||
options.desc = "Paste image";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -1,6 +1,5 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
# TODO: Make filetype keybindings work
|
||||
let
|
||||
keys = [
|
||||
{
|
||||
@@ -11,9 +10,7 @@ let
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
options = {
|
||||
desc = "Close Viewer (knap)";
|
||||
};
|
||||
options.desc = "Close Viewer (knap)";
|
||||
}
|
||||
{
|
||||
action.__raw = "function() require('knap').toggle_autopreviewing() end";
|
||||
@@ -23,9 +20,7 @@ let
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
options = {
|
||||
desc = "Toggle Auto-Processing (knap)";
|
||||
};
|
||||
options.desc = "Toggle Auto-Processing (knap)";
|
||||
}
|
||||
{
|
||||
action.__raw = "function() require('knap').forward_jump() end";
|
||||
@@ -35,9 +30,7 @@ let
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
options = {
|
||||
desc = "SyncTeX Forward Search (Knap)";
|
||||
};
|
||||
options.desc = "SyncTeX Forward Search (Knap)";
|
||||
}
|
||||
];
|
||||
in
|
||||
@@ -47,22 +40,18 @@ in
|
||||
texliveFull
|
||||
rubber
|
||||
];
|
||||
|
||||
programs.nixvim = {
|
||||
extraPlugins = with pkgs.vimPlugins; [ knap ];
|
||||
globals = {
|
||||
knap_settings = {
|
||||
htmltohtmlviewerlaunch = "luakit %outputfile%";
|
||||
mdtohtmlviewerlaunch = "luakit %outputfile%";
|
||||
markdowntohtmlviewerlaunch = "luakit %outputfile%";
|
||||
};
|
||||
globals.knap_settings = {
|
||||
htmltohtmlviewerlaunch = "luakit %outputfile%";
|
||||
mdtohtmlviewerlaunch = "luakit %outputfile%";
|
||||
markdowntohtmlviewerlaunch = "luakit %outputfile%";
|
||||
};
|
||||
|
||||
files = {
|
||||
"ftplugin/latex.lua" = {
|
||||
keymaps = keys;
|
||||
};
|
||||
"ftplugin/markdown.lua" = {
|
||||
keymaps = keys;
|
||||
};
|
||||
"ftplugin/latex.lua".keymaps = keys;
|
||||
"ftplugin/markdown.lua".keymaps = keys;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
leap = {
|
||||
enable = true;
|
||||
settings = {
|
||||
case_sensitive = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
keymaps = [
|
||||
{
|
||||
key = "s";
|
||||
action = "<Plug>(leap)";
|
||||
mode = [
|
||||
"n"
|
||||
"x"
|
||||
"o"
|
||||
];
|
||||
}
|
||||
{
|
||||
key = "S";
|
||||
action = "<Plug>(leap-from-window)";
|
||||
mode = [ "n" ];
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -7,7 +7,10 @@
|
||||
];
|
||||
|
||||
programs.nixvim = {
|
||||
plugins.lsp.enable = true;
|
||||
plugins.lsp = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
};
|
||||
|
||||
lsp = {
|
||||
luaConfig = {
|
||||
@@ -17,65 +20,29 @@
|
||||
'';
|
||||
};
|
||||
servers = {
|
||||
nixd = {
|
||||
enable = false;
|
||||
};
|
||||
rust_analyzer = {
|
||||
enable = true;
|
||||
};
|
||||
leanls = {
|
||||
enable = true;
|
||||
};
|
||||
nixd.enable = false;
|
||||
rust_analyzer.enable = true;
|
||||
leanls.enable = true;
|
||||
nil_ls = {
|
||||
enable = !config.programs.nixvim.plugins.lsp.servers.nixd.enable;
|
||||
config = {
|
||||
nil = {
|
||||
formatting = {
|
||||
command = [
|
||||
"nixfmt"
|
||||
];
|
||||
};
|
||||
diagnostics = {
|
||||
ignored = [ ];
|
||||
};
|
||||
nix = {
|
||||
flake = {
|
||||
autoArchive = true;
|
||||
};
|
||||
};
|
||||
formatting.command = [ "nixfmt" ];
|
||||
diagnostics.ignored = [ ];
|
||||
nix.flake.autoArchive = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
nushell = {
|
||||
enable = true;
|
||||
};
|
||||
pylsp = {
|
||||
enable = true;
|
||||
};
|
||||
pylyzer = {
|
||||
enable = false;
|
||||
};
|
||||
pyright = {
|
||||
enable = true;
|
||||
};
|
||||
clangd = {
|
||||
enable = true;
|
||||
};
|
||||
zk = {
|
||||
enable = true;
|
||||
};
|
||||
elixirls = {
|
||||
enable = true;
|
||||
};
|
||||
marksman = {
|
||||
enable = true;
|
||||
};
|
||||
texlab = {
|
||||
enable = true;
|
||||
};
|
||||
lua_ls = {
|
||||
enable = true;
|
||||
};
|
||||
nushell.enable = true;
|
||||
pylsp.enable = true;
|
||||
pylyzer.enable = false;
|
||||
pyright.enable = true;
|
||||
clangd.enable = true;
|
||||
zk.enable = true;
|
||||
elixirls.enable = true;
|
||||
marksman.enable = true;
|
||||
texlab.enable = true;
|
||||
lua_ls.enable = true;
|
||||
ltex_plus = {
|
||||
enable = true;
|
||||
package = pkgs.ltex-ls-plus;
|
||||
@@ -93,9 +60,7 @@
|
||||
};
|
||||
};
|
||||
};
|
||||
tinymist = {
|
||||
enable = true;
|
||||
};
|
||||
tinymist.enable = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,9 +0,0 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
ltex-extra = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,48 +1,8 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
lualine = {
|
||||
enable = true;
|
||||
# settings = {
|
||||
# sections = {
|
||||
# lualine_c = [
|
||||
# {
|
||||
# __unkeyed-1 = {
|
||||
# __raw = ''
|
||||
# function()
|
||||
# require("trouble").statusline({
|
||||
# mode = "lsp_document_symbols",
|
||||
# groups = {},
|
||||
# title = false,
|
||||
# filter = { range = true },
|
||||
# format = "{kind_icon}{symbol.name:Normal}",
|
||||
# -- The following line is needed to fix the background color
|
||||
# -- Set it to the lualine section you want to use
|
||||
# hl_group = "lualine_c_normal",
|
||||
# }
|
||||
# ).get
|
||||
# end
|
||||
# '';
|
||||
# };
|
||||
# cond = {
|
||||
# __raw = ''
|
||||
# require("trouble").statusline({
|
||||
# mode = "lsp_document_symbols",
|
||||
# groups = {},
|
||||
# title = false,
|
||||
# filter = { range = true },
|
||||
# format = "{kind_icon}{symbol.name:Normal}",
|
||||
# -- The following line is needed to fix the background color
|
||||
# -- Set it to the lualine section you want to use
|
||||
# hl_group = "lualine_c_normal",
|
||||
# }).has
|
||||
# '';
|
||||
# };
|
||||
# }
|
||||
# ];
|
||||
# };
|
||||
# };
|
||||
};
|
||||
programs.nixvim.plugins.lualine = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
};
|
||||
}
|
||||
|
||||
7
home/programs/nixvim/plugins/lz-n.nix
Normal file
7
home/programs/nixvim/plugins/lz-n.nix
Normal file
@@ -0,0 +1,7 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins.lz-n = {
|
||||
enable = true;
|
||||
};
|
||||
}
|
||||
@@ -1,9 +1,8 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
markdown-preview = {
|
||||
enable = true;
|
||||
};
|
||||
programs.nixvim.plugins.markdown-preview = {
|
||||
enable = true;
|
||||
lazyLoad.settings.filetypes = [ "md" ];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
extraConfigLua = ''
|
||||
vim.api.nvim_create_autocmd("FileType", {pattern = "markdown", command = "set awa"})
|
||||
'';
|
||||
extraConfigLua = ''vim.api.nvim_create_autocmd("FileType", {pattern = "markdown", command = "set awa"})'';
|
||||
|
||||
plugins = {
|
||||
mkdnflow = {
|
||||
enable = true;
|
||||
lazyLoad.settings.filetypes = [ "md" ];
|
||||
|
||||
settings = {
|
||||
links = {
|
||||
style = "wiki";
|
||||
@@ -31,6 +31,7 @@
|
||||
end
|
||||
'';
|
||||
};
|
||||
|
||||
modules = {
|
||||
conceal = true;
|
||||
cursor = true;
|
||||
@@ -42,10 +43,12 @@
|
||||
tables = true;
|
||||
yaml = true;
|
||||
};
|
||||
|
||||
filetypes = {
|
||||
markdown = true;
|
||||
qmd = true;
|
||||
};
|
||||
|
||||
to_do = {
|
||||
symbols = [
|
||||
" "
|
||||
@@ -54,6 +57,7 @@
|
||||
];
|
||||
status_propagation.up = true;
|
||||
};
|
||||
|
||||
foldtext = {
|
||||
title_transformer.__raw = ''
|
||||
function()
|
||||
@@ -104,6 +108,7 @@
|
||||
middle = "─";
|
||||
};
|
||||
};
|
||||
|
||||
mappings = {
|
||||
MkdnEnter = [
|
||||
[
|
||||
@@ -165,6 +170,7 @@
|
||||
"<C-Space>"
|
||||
];
|
||||
};
|
||||
|
||||
create_dirs = true;
|
||||
new_file_template = {
|
||||
use_template = true;
|
||||
@@ -173,10 +179,14 @@
|
||||
date = "os_date";
|
||||
};
|
||||
template = ''
|
||||
---
|
||||
---
|
||||
title: {{ title }}
|
||||
description:
|
||||
published: true
|
||||
date: {{ date }}
|
||||
tags: []
|
||||
tags: private
|
||||
editor: markdown
|
||||
dateCreated: {{ date }}
|
||||
---
|
||||
# {{ title }}
|
||||
'';
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
programs.nixvim.plugins = {
|
||||
neoscroll = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings = {
|
||||
cursor_scrolls_alone = true;
|
||||
easing_function = "quadratic";
|
||||
@@ -22,7 +24,6 @@
|
||||
respect_scrolloff = false;
|
||||
stop_eof = true;
|
||||
};
|
||||
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,14 +1,10 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
neo-tree = {
|
||||
enable = true;
|
||||
settings = {
|
||||
enable_git_status = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
programs.nixvim.plugins.neo-tree = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings.enable_git_status = true;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,21 +1,22 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
noice = {
|
||||
enable = true;
|
||||
settings = {
|
||||
lsp.override = {
|
||||
"vim.lsp.util.convert_input_to_markdown_lines" = true;
|
||||
"vim.lsp.util.stylize_markdown" = true;
|
||||
};
|
||||
prests = {
|
||||
bottom_search = true;
|
||||
command_palette = true;
|
||||
inc_rename = false;
|
||||
long_message_to_split = true;
|
||||
lsp_doc_border = false;
|
||||
};
|
||||
programs.nixvim.plugins.noice = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings = {
|
||||
lsp.override = {
|
||||
"vim.lsp.util.convert_input_to_markdown_lines" = true;
|
||||
"vim.lsp.util.stylize_markdown" = true;
|
||||
};
|
||||
|
||||
prests = {
|
||||
bottom_search = true;
|
||||
command_palette = true;
|
||||
inc_rename = false;
|
||||
long_message_to_split = true;
|
||||
lsp_doc_border = false;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -2,16 +2,13 @@
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
notify = {
|
||||
enable = true;
|
||||
settings = {
|
||||
render = "wrapped-compact";
|
||||
};
|
||||
};
|
||||
};
|
||||
opts = {
|
||||
termguicolors = true;
|
||||
plugins.notify = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings.render = "wrapped-compact";
|
||||
};
|
||||
|
||||
opts.termguicolors = true;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
oil = {
|
||||
enable = true;
|
||||
};
|
||||
programs.nixvim.plugins.oil = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -3,6 +3,8 @@
|
||||
{
|
||||
programs.nixvim.plugins.openscad = {
|
||||
enable = true;
|
||||
lazyLoad.settings.filetype = [ "scad" ];
|
||||
|
||||
luaConfig.post = ''
|
||||
vim.g.openscad_fuzzy_finder = 'skim'
|
||||
-- when the pdf_command is run, the last argument will be the pdf filename
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
otter = {
|
||||
enable = true;
|
||||
};
|
||||
programs.nixvim.plugins.otter = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -2,15 +2,13 @@
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
papis = {
|
||||
enable = true;
|
||||
settings = {
|
||||
yq_bin = "${pkgs.yq-go}/bin/yq";
|
||||
search = {
|
||||
provider = "telescope";
|
||||
};
|
||||
};
|
||||
plugins.papis = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings = {
|
||||
yq_bin = "${pkgs.yq-go}/bin/yq";
|
||||
search.provider = "telescope";
|
||||
};
|
||||
};
|
||||
|
||||
@@ -19,9 +17,7 @@
|
||||
key = "<leader>pp";
|
||||
action = "<CMD>Papis search<CR>";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Papis";
|
||||
};
|
||||
options.desc = "Papis";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
peek = {
|
||||
enable = true;
|
||||
settings = {
|
||||
app = "firefox";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
77
home/programs/nixvim/plugins/rainbow.nix
Normal file
77
home/programs/nixvim/plugins/rainbow.nix
Normal file
@@ -0,0 +1,77 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins.rainbow = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings = {
|
||||
active = 1;
|
||||
conf = {
|
||||
guifgs = [
|
||||
"#f5c2e7"
|
||||
"#eba0ac"
|
||||
"#a6e3a1"
|
||||
"#74c7ec"
|
||||
"#f5e0dc"
|
||||
"#cba6f7"
|
||||
"#fab387"
|
||||
"#94e2d5"
|
||||
"#89b4fa"
|
||||
"#f2cdcd"
|
||||
"#f38ba8"
|
||||
"#f9e2af"
|
||||
"#89dceb"
|
||||
"#b4befe"
|
||||
];
|
||||
operators = "_,_";
|
||||
parentheses = [
|
||||
"start=/(/ end=/)/ fold"
|
||||
"start=/{/ end=/}/ fold"
|
||||
"start=/\\[/ end=/\\]/ fold"
|
||||
"start=/\\begin/ end=/\\end/ fold"
|
||||
];
|
||||
separately = {
|
||||
"*".parentheses = [
|
||||
"start=/(/ end=/)/ fold"
|
||||
"start=/{/ end=/}/ fold"
|
||||
"start=/\\[/ end=/\\]/ fold"
|
||||
];
|
||||
css = 0;
|
||||
haskell.parentheses = [
|
||||
"start=/(/ end=/)/ fold"
|
||||
"start=/\[/ end=/\]/ fold"
|
||||
"start=/\v\{\ze[^-]/ end=/}/ fold"
|
||||
];
|
||||
lisp.guifgs = [
|
||||
"#f5c2e7"
|
||||
"#eba0ac"
|
||||
"#a6e3a1"
|
||||
"#74c7ec"
|
||||
"#f5e0dc"
|
||||
"#cba6f7"
|
||||
"#fab387"
|
||||
"#94e2d5"
|
||||
"#89b4fa"
|
||||
"#f2cdcd"
|
||||
"#f38ba8"
|
||||
"#f9e2af"
|
||||
"#89dceb"
|
||||
"#b4befe"
|
||||
];
|
||||
markdown.parentheses_options = "containedin=markdownCode contained";
|
||||
nerdtree = 0;
|
||||
perl.syn_name_prefix = "perlBlockFoldRainbow";
|
||||
stylus.parentheses = [ "start=/{/ end=/}/ fold contains=@colorableGroup" ];
|
||||
tex.parentheses = [
|
||||
"start=/(/ end=/)/ fold"
|
||||
"start=/{/ end=/}/ fold"
|
||||
"start=/\\[/ end=/\\]/ fold"
|
||||
"start=/\\begin/ end=/\\end/ fold"
|
||||
];
|
||||
vim.parentheses_options = "containedin=vimFuncBody";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -3,27 +3,44 @@
|
||||
{
|
||||
home.packages = with pkgs; [ python312Packages.pylatexenc ];
|
||||
|
||||
programs.nixvim.plugins = {
|
||||
render-markdown = {
|
||||
enable = true;
|
||||
settings = {
|
||||
ft = [
|
||||
"markdown"
|
||||
"quarto"
|
||||
];
|
||||
latex = {
|
||||
enabled = false;
|
||||
};
|
||||
completions = {
|
||||
lsp = {
|
||||
enabled = true;
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
render-markdown = {
|
||||
enable = true;
|
||||
lazyLoad.settings.filetypes = [ "md" ];
|
||||
|
||||
settings = {
|
||||
ft = [ "markdown" ];
|
||||
latex.enabled = false;
|
||||
completions.lsp.enabled = true;
|
||||
|
||||
code = {
|
||||
width = "block";
|
||||
min_width = 45;
|
||||
left_pad = 2;
|
||||
language_pad = 2;
|
||||
};
|
||||
|
||||
heading.icons = [ " " " " " " " " " " " " ];
|
||||
};
|
||||
};
|
||||
|
||||
which-key.settings.spec = [
|
||||
{
|
||||
__unkeyed-1 = "<leader>m";
|
||||
group = "Markdown";
|
||||
icon = " ";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
web-devicons = {
|
||||
enable = true;
|
||||
};
|
||||
keymaps = [
|
||||
{
|
||||
action = "<CMD>RenderMarkdown toggle<CR>";
|
||||
key = "<leader>ms";
|
||||
mode = "n";
|
||||
options.desc = "Toggle markdown preview";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
44
home/programs/nixvim/plugins/rustaceanvim.nix
Normal file
44
home/programs/nixvim/plugins/rustaceanvim.nix
Normal file
@@ -0,0 +1,44 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
extraPackages = with pkgs; [ rust-analyzer ];
|
||||
|
||||
plugins.rustaceanvim = {
|
||||
enable = true;
|
||||
lazyload.settings.filetype = [ "rs" ];
|
||||
};
|
||||
|
||||
files."ftplugin/rust.lua" = {
|
||||
keymaps = [
|
||||
{
|
||||
action.__raw = ''
|
||||
function()
|
||||
vim.cmd.RustAnalyzer('codeAction')
|
||||
end
|
||||
'';
|
||||
key = "<leader>a";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Code action";
|
||||
silent = true;
|
||||
buffer.__raw = "vim.api.nvim_get_current_buf()";
|
||||
};
|
||||
}
|
||||
{
|
||||
action.__raw = ''
|
||||
function()
|
||||
vim.cmd.RustAnalyzer({'hover', 'actions'})
|
||||
end
|
||||
'';
|
||||
key = "K";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
silent = true;
|
||||
buffer.__raw = "vim.api.nvim_get_current_buf()";
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,104 +1,108 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
smart-splits = {
|
||||
enable = true;
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
smart-splits = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
};
|
||||
};
|
||||
keymaps = [
|
||||
{
|
||||
action.__raw = "require('smart-splits').move_cursor_left";
|
||||
key = "<C-S-p>h";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action.__raw = "require('smart-splits').move_cursor_right";
|
||||
key = "<C-S-p>l";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action.__raw = "require('smart-splits').move_cursor_down";
|
||||
key = "<C-S-p>j";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action.__raw = "require('smart-splits').move_cursor_up";
|
||||
key = "<C-S-p>k";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action.__raw = "require('smart-splits').resize_left";
|
||||
key = "<C-S-r>h";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action.__raw = "require('smart-splits').resize_right";
|
||||
key = "<C-S-r>l";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action.__raw = "require('smart-splits').resize_down";
|
||||
key = "<C-S-r>j";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action.__raw = "require('smart-splits').resize_up";
|
||||
key = "<C-S-r>k";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action = "<CMD>silent !kitten @ launch --location=hsplit<CR>";
|
||||
key = "<C-S-p>s";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
}
|
||||
{
|
||||
action = "<CMD>silent !kitten @ launch --location=vsplit<CR>";
|
||||
key = "<C-S-p>v";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
}
|
||||
{
|
||||
action = "<CMD>silent !kitten @ launch --location=hsplit --cwd=current --bias=35<CR>";
|
||||
key = "<C-S-p>p";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
}
|
||||
{
|
||||
action = "<CMD>silent !kitten @ close-window<CR>";
|
||||
key = "<C-S-p>q";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
}
|
||||
{
|
||||
action = "<CMD>silent !kitten @ action layout_action rotate<CR>";
|
||||
key = "<C-S-p>r";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
}
|
||||
{
|
||||
action = "<CMD>silent !kitten @ action toggle_layout stack<CR>";
|
||||
key = "<C-S-p>f";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
programs.nixvim.keymaps = [
|
||||
{
|
||||
action.__raw = "require('smart-splits').move_cursor_left";
|
||||
key = "<C-S-p>h";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action.__raw = "require('smart-splits').move_cursor_right";
|
||||
key = "<C-S-p>l";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action.__raw = "require('smart-splits').move_cursor_down";
|
||||
key = "<C-S-p>j";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action.__raw = "require('smart-splits').move_cursor_up";
|
||||
key = "<C-S-p>k";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action.__raw = "require('smart-splits').resize_left";
|
||||
key = "<C-S-r>h";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action.__raw = "require('smart-splits').resize_right";
|
||||
key = "<C-S-r>l";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action.__raw = "require('smart-splits').resize_down";
|
||||
key = "<C-S-r>j";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action.__raw = "require('smart-splits').resize_up";
|
||||
key = "<C-S-r>k";
|
||||
mode = "n";
|
||||
}
|
||||
{
|
||||
action = "<CMD>silent !kitten @ launch --location=hsplit<CR>";
|
||||
key = "<C-S-p>s";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
}
|
||||
{
|
||||
action = "<CMD>silent !kitten @ launch --location=vsplit<CR>";
|
||||
key = "<C-S-p>v";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
}
|
||||
{
|
||||
action = "<CMD>silent !kitten @ launch --location=hsplit --cwd=current --bias=35<CR>";
|
||||
key = "<C-S-p>p";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
}
|
||||
{
|
||||
action = "<CMD>silent !kitten @ close-window<CR>";
|
||||
key = "<C-S-p>q";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
}
|
||||
{
|
||||
action = "<CMD>silent !kitten @ action layout_action rotate<CR>";
|
||||
key = "<C-S-p>r";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
}
|
||||
{
|
||||
action = "<CMD>silent !kitten @ action toggle_layout stack<CR>";
|
||||
key = "<C-S-p>f";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
}
|
||||
];
|
||||
}
|
||||
|
||||
@@ -1,15 +1,17 @@
|
||||
{...}:
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
luasnip = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
fromVscode = [ { } ];
|
||||
};
|
||||
|
||||
friendly-snippets = {
|
||||
enable = true;
|
||||
lazyLoad.enable = false;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -1,26 +1,25 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
sniprun = {
|
||||
enable = true;
|
||||
settings = {
|
||||
display = [ "VirtualLine" ];
|
||||
snipruncolors = {
|
||||
SniprunVirtualTextOk = {
|
||||
bg = "#91d7e3";
|
||||
fg = "#000000";
|
||||
ctermbg = "Cyan";
|
||||
ctermfg = "Black";
|
||||
};
|
||||
SniprunVirtualTextErr = {
|
||||
bg = "#ee99a0";
|
||||
fg = "#000000";
|
||||
ctermbg = "DarkRed";
|
||||
ctermfg = "Black";
|
||||
};
|
||||
};
|
||||
programs.nixvim.plugins.sniprun = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings = {
|
||||
display = [ "VirtualLine" ];
|
||||
snipruncolors = {
|
||||
SniprunVirtualTextOk = {
|
||||
bg = "#91d7e3";
|
||||
fg = "#000000";
|
||||
ctermbg = "Cyan";
|
||||
ctermfg = "Black";
|
||||
};
|
||||
|
||||
SniprunVirtualTextErr = {
|
||||
bg = "#ee99a0";
|
||||
fg = "#000000";
|
||||
ctermbg = "DarkRed";
|
||||
ctermfg = "Black";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,69 +1,69 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
startup = {
|
||||
enable = true;
|
||||
settings = {
|
||||
theme = "dashboard";
|
||||
sections = {
|
||||
body = {
|
||||
align = "center";
|
||||
content = [
|
||||
[
|
||||
" Find File"
|
||||
"Telescope find_files"
|
||||
"<leader>ff"
|
||||
]
|
||||
[
|
||||
" Find Word"
|
||||
"Telescope live_grep"
|
||||
"<leader>lg"
|
||||
]
|
||||
[
|
||||
" Recent Files"
|
||||
"Telescope oldfiles"
|
||||
"<leader>of"
|
||||
]
|
||||
[
|
||||
" File Browser"
|
||||
"Telescope file_browser"
|
||||
"<leader>fb"
|
||||
]
|
||||
[
|
||||
" Colorschemes"
|
||||
"Telescope colorscheme"
|
||||
"<leader>cs"
|
||||
]
|
||||
[
|
||||
" New File"
|
||||
"lua require'startup'.new_file()"
|
||||
"<leader>nf"
|
||||
]
|
||||
];
|
||||
defaultColor = "";
|
||||
foldSection = true;
|
||||
highlight = "String";
|
||||
margin = 5;
|
||||
oldfilesAmount = 0;
|
||||
title = "Basic Commands";
|
||||
type = "mapping";
|
||||
};
|
||||
header = {
|
||||
align = "center";
|
||||
content = {
|
||||
__raw = "require('startup.headers').hydra_header";
|
||||
};
|
||||
defaultColor = "";
|
||||
foldSection = false;
|
||||
highlight = "Statement";
|
||||
margin = 5;
|
||||
oldfilesAmount = 0;
|
||||
title = "Header";
|
||||
type = "text";
|
||||
};
|
||||
programs.nixvim.plugins.startup = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings = {
|
||||
theme = "dashboard";
|
||||
sections = {
|
||||
body = {
|
||||
align = "center";
|
||||
content = [
|
||||
[
|
||||
" Find File"
|
||||
"Telescope find_files"
|
||||
"<leader>ff"
|
||||
]
|
||||
[
|
||||
" Find Word"
|
||||
"Telescope live_grep"
|
||||
"<leader>lg"
|
||||
]
|
||||
[
|
||||
" Recent Files"
|
||||
"Telescope oldfiles"
|
||||
"<leader>of"
|
||||
]
|
||||
[
|
||||
" Yazi"
|
||||
"Telescope file_browser"
|
||||
"<leader>yf"
|
||||
]
|
||||
[
|
||||
" Colorschemes"
|
||||
"Telescope colorscheme"
|
||||
"<leader>cs"
|
||||
]
|
||||
[
|
||||
" New File"
|
||||
"lua require'startup'.new_file()"
|
||||
"<leader>nf"
|
||||
]
|
||||
];
|
||||
|
||||
defaultColor = "";
|
||||
foldSection = true;
|
||||
highlight = "String";
|
||||
margin = 5;
|
||||
oldfilesAmount = 0;
|
||||
title = "Basic Commands";
|
||||
type = "mapping";
|
||||
};
|
||||
|
||||
header = {
|
||||
align = "center";
|
||||
content = {
|
||||
__raw = "require('startup.headers').hydra_header";
|
||||
};
|
||||
defaultColor = "";
|
||||
foldSection = false;
|
||||
highlight = "Statement";
|
||||
margin = 5;
|
||||
oldfilesAmount = 0;
|
||||
title = "Header";
|
||||
type = "text";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -1,162 +1,172 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
nvim-surround = {
|
||||
enable = true;
|
||||
luaConfig.post = # lua
|
||||
''
|
||||
local M = {}
|
||||
programs.nixvim.plugins.nvim-surround = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
M.get_input = function(prompt)
|
||||
local input = require("nvim-surround.input")
|
||||
return input.get_input(prompt)
|
||||
end
|
||||
luaConfig.post = ''
|
||||
local M = {}
|
||||
|
||||
M.get_selection = function(args)
|
||||
if args.char then
|
||||
return M.get_find(args.char)(args.char)
|
||||
elseif args.motion then
|
||||
return require("nvim-surround.motions").get_selection(args.motion)
|
||||
elseif args.node then
|
||||
return require("nvim-surround.treesitter").get_selection(args.node)
|
||||
elseif args.pattern then
|
||||
return require("nvim-surround.patterns").get_selection(args.pattern)
|
||||
elseif args.query then
|
||||
return require("nvim-surround.queries").get_selection(args.query.capture, args.query.type)
|
||||
else
|
||||
vim.notify("Invalid key provided for `:h nvim-surround.config.get_selection()`.", vim.log.levels.ERROR)
|
||||
end
|
||||
end
|
||||
M.get_input = function(prompt)
|
||||
local input = require("nvim-surround.input")
|
||||
return input.get_input(prompt)
|
||||
end
|
||||
|
||||
surrounds = {
|
||||
["("] = {
|
||||
add = { "( ", " )" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a(" })
|
||||
end,
|
||||
delete = "^(. ?)().-( ?.)()$",
|
||||
},
|
||||
[")"] = {
|
||||
add = { "(", ")" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a)" })
|
||||
end,
|
||||
delete = "^(.)().-(.)()$",
|
||||
},
|
||||
["{"] = {
|
||||
add = { "{ ", " }" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a{" })
|
||||
end,
|
||||
delete = "^(. ?)().-( ?.)()$",
|
||||
},
|
||||
["}"] = {
|
||||
add = { "{", "}" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a}" })
|
||||
end,
|
||||
delete = "^(.)().-(.)()$",
|
||||
},
|
||||
["<"] = {
|
||||
add = { "< ", " >" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a<" })
|
||||
end,
|
||||
delete = "^(. ?)().-( ?.)()$",
|
||||
},
|
||||
[">"] = {
|
||||
add = { "<", ">" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a>" })
|
||||
end,
|
||||
delete = "^(.)().-(.)()$",
|
||||
},
|
||||
["["] = {
|
||||
add = { "[ ", " ]" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a[" })
|
||||
end,
|
||||
delete = "^(. ?)().-( ?.)()$",
|
||||
},
|
||||
["]"] = {
|
||||
add = { "[", "]" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a]" })
|
||||
end,
|
||||
delete = "^(.)().-(.)()$",
|
||||
},
|
||||
["'"] = {
|
||||
add = { "'", "'" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a'" })
|
||||
end,
|
||||
delete = "^(.)().-(.)()$",
|
||||
},
|
||||
['"'] = {
|
||||
add = { '"', '"' },
|
||||
find = function()
|
||||
return M.get_selection({ motion = 'a"' })
|
||||
end,
|
||||
delete = "^(.)().-(.)()$",
|
||||
},
|
||||
["`"] = {
|
||||
add = { "`", "`" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a`" })
|
||||
end,
|
||||
delete = "^(.)().-(.)()$",
|
||||
},
|
||||
["i"] = {
|
||||
add = function()
|
||||
local left_delimiter = M.get_input("Enter the left delimiter: ")
|
||||
local right_delimiter = left_delimiter and M.get_input("Enter the right delimiter: ")
|
||||
if right_delimiter then
|
||||
return { { left_delimiter }, { right_delimiter } }
|
||||
end
|
||||
end,
|
||||
find = function() end,
|
||||
delete = function() end,
|
||||
},
|
||||
}
|
||||
'';
|
||||
settings = {
|
||||
aliases = {
|
||||
"a" = ">";
|
||||
"b" = ")";
|
||||
"B" = "}";
|
||||
"r" = "]";
|
||||
"q" = [
|
||||
"\""
|
||||
"'"
|
||||
"`"
|
||||
];
|
||||
"Q" = "''";
|
||||
"s" = [
|
||||
"}"
|
||||
"]"
|
||||
")"
|
||||
">"
|
||||
"\""
|
||||
"'"
|
||||
"`"
|
||||
];
|
||||
};
|
||||
keymaps = {
|
||||
insert = "<C-g>s";
|
||||
insert_line = "<C-g>S";
|
||||
normal = "ys";
|
||||
normal_cur = "yss";
|
||||
normal_line = "yS";
|
||||
normal_cur_line = "ySS";
|
||||
visual = "S";
|
||||
visual_line = "gS";
|
||||
delete = "ds";
|
||||
# TODO: This keymap clashed with comment boxses
|
||||
change = "cs";
|
||||
change_line = "cS";
|
||||
};
|
||||
};
|
||||
M.get_selection = function(args)
|
||||
if args.char then
|
||||
return M.get_find(args.char)(args.char)
|
||||
elseif args.motion then
|
||||
return require("nvim-surround.motions").get_selection(args.motion)
|
||||
elseif args.node then
|
||||
return require("nvim-surround.treesitter").get_selection(args.node)
|
||||
elseif args.pattern then
|
||||
return require("nvim-surround.patterns").get_selection(args.pattern)
|
||||
elseif args.query then
|
||||
return require("nvim-surround.queries").get_selection(args.query.capture, args.query.type)
|
||||
else
|
||||
vim.notify("Invalid key provided for `:h nvim-surround.config.get_selection()`.", vim.log.levels.ERROR)
|
||||
end
|
||||
end
|
||||
|
||||
surrounds = {
|
||||
["("] = {
|
||||
add = { "( ", " )" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a(" })
|
||||
end,
|
||||
delete = "^(. ?)().-( ?.)()$",
|
||||
},
|
||||
|
||||
[")"] = {
|
||||
add = { "(", ")" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a)" })
|
||||
end,
|
||||
delete = "^(.)().-(.)()$",
|
||||
},
|
||||
|
||||
["{"] = {
|
||||
add = { "{ ", " }" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a{" })
|
||||
end,
|
||||
delete = "^(. ?)().-( ?.)()$",
|
||||
},
|
||||
|
||||
["}"] = {
|
||||
add = { "{", "}" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a}" })
|
||||
end,
|
||||
delete = "^(.)().-(.)()$",
|
||||
},
|
||||
|
||||
["<"] = {
|
||||
add = { "< ", " >" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a<" })
|
||||
end,
|
||||
delete = "^(. ?)().-( ?.)()$",
|
||||
},
|
||||
|
||||
[">"] = {
|
||||
add = { "<", ">" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a>" })
|
||||
end,
|
||||
delete = "^(.)().-(.)()$",
|
||||
},
|
||||
|
||||
["["] = {
|
||||
add = { "[ ", " ]" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a[" })
|
||||
end,
|
||||
delete = "^(. ?)().-( ?.)()$",
|
||||
},
|
||||
|
||||
["]"] = {
|
||||
add = { "[", "]" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a]" })
|
||||
end,
|
||||
delete = "^(.)().-(.)()$",
|
||||
},
|
||||
|
||||
["'"] = {
|
||||
add = { "'", "'" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a'" })
|
||||
end,
|
||||
delete = "^(.)().-(.)()$",
|
||||
},
|
||||
|
||||
['"'] = {
|
||||
add = { '"', '"' },
|
||||
find = function()
|
||||
return M.get_selection({ motion = 'a"' })
|
||||
end,
|
||||
delete = "^(.)().-(.)()$",
|
||||
},
|
||||
|
||||
["`"] = {
|
||||
add = { "`", "`" },
|
||||
find = function()
|
||||
return M.get_selection({ motion = "a`" })
|
||||
end,
|
||||
delete = "^(.)().-(.)()$",
|
||||
},
|
||||
|
||||
["i"] = {
|
||||
add = function()
|
||||
local left_delimiter = M.get_input("Enter the left delimiter: ")
|
||||
local right_delimiter = left_delimiter and M.get_input("Enter the right delimiter: ")
|
||||
if right_delimiter then
|
||||
return { { left_delimiter }, { right_delimiter } }
|
||||
end
|
||||
end,
|
||||
find = function() end,
|
||||
delete = function() end,
|
||||
},
|
||||
}
|
||||
'';
|
||||
|
||||
settings.aliases = {
|
||||
"a" = ">";
|
||||
"b" = ")";
|
||||
"B" = "}";
|
||||
"r" = "]";
|
||||
"q" = [
|
||||
"\""
|
||||
"'"
|
||||
"`"
|
||||
];
|
||||
"Q" = "''";
|
||||
"s" = [
|
||||
"}"
|
||||
"]"
|
||||
")"
|
||||
">"
|
||||
"\""
|
||||
"'"
|
||||
"`"
|
||||
];
|
||||
};
|
||||
|
||||
keymaps = {
|
||||
insert = "<C-g>s";
|
||||
insert_line = "<C-g>S";
|
||||
normal = "ys";
|
||||
normal_cur = "yss";
|
||||
normal_line = "yS";
|
||||
normal_cur_line = "ySS";
|
||||
visual = "S";
|
||||
visual_line = "gS";
|
||||
delete = "ds";
|
||||
# TODO: This keymap clashed with comment boxses
|
||||
change = "cs";
|
||||
change_line = "cS";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,49 +0,0 @@
|
||||
{ pkgs, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
ripgrep
|
||||
fd
|
||||
];
|
||||
programs.nixvim.plugins = {
|
||||
telescope = {
|
||||
enable = true;
|
||||
extensions = {
|
||||
fzf-native.enable = true;
|
||||
ui-select.enable = true;
|
||||
undo.enable = true;
|
||||
file-browser = {
|
||||
enable = true;
|
||||
settings = {
|
||||
hijack_netrw = true;
|
||||
};
|
||||
};
|
||||
};
|
||||
keymaps = {
|
||||
"<leader>ff" = {
|
||||
action = "find_files";
|
||||
options.desc = "List Files";
|
||||
};
|
||||
"<leader>fb" = {
|
||||
action = "file_browser path=%:p:h select_buffer=true";
|
||||
options.desc = "File Browser";
|
||||
};
|
||||
"<leader>fs" = {
|
||||
action = "buffers";
|
||||
options.desc = "List Open Buffers";
|
||||
};
|
||||
"<leader>fu" = {
|
||||
action = "undo";
|
||||
options.desc = "Undo Tree";
|
||||
};
|
||||
};
|
||||
};
|
||||
which-key.settings.spec = [
|
||||
{
|
||||
__unkeyed-1 = "<leader>f";
|
||||
group = "Telescope";
|
||||
icon = " ";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
{ ... }:
|
||||
|
||||
# TODO: Make filetype keybindings work
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
texpresso = {
|
||||
enable = false;
|
||||
};
|
||||
};
|
||||
files = {
|
||||
"ftplugin/latex.lua" = {
|
||||
keymaps = [
|
||||
{
|
||||
action = "<CMD>Texpresso %<CR>";
|
||||
key = "<C-k>t";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
options = {
|
||||
desc = "Start Texpresso";
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -4,38 +4,47 @@
|
||||
programs.nixvim.plugins = {
|
||||
todo-comments = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings = {
|
||||
highlight = {
|
||||
comments_only = false;
|
||||
};
|
||||
|
||||
colors = {
|
||||
default = [
|
||||
"Identifier"
|
||||
"#7C3AED"
|
||||
];
|
||||
|
||||
error = [
|
||||
"DiagnosticError"
|
||||
"ErrorMsg"
|
||||
"#DC2626"
|
||||
];
|
||||
|
||||
hint = [
|
||||
"DiagnosticHint"
|
||||
"#10B981"
|
||||
];
|
||||
|
||||
info = [
|
||||
"DiagnosticInfo"
|
||||
"#2563EB"
|
||||
];
|
||||
|
||||
test = [
|
||||
"Identifier"
|
||||
"#FF00FF"
|
||||
];
|
||||
|
||||
warning = [
|
||||
"DiagnosticWarn"
|
||||
"WarningMsg"
|
||||
"#FBBF24"
|
||||
];
|
||||
};
|
||||
|
||||
keywords = {
|
||||
FIX = {
|
||||
alt = [
|
||||
@@ -47,10 +56,12 @@
|
||||
color = "error";
|
||||
icon = " ";
|
||||
};
|
||||
|
||||
HACK = {
|
||||
color = "warning";
|
||||
icon = " ";
|
||||
};
|
||||
|
||||
NOTE = {
|
||||
alt = [
|
||||
"INFO"
|
||||
@@ -58,6 +69,7 @@
|
||||
color = "hint";
|
||||
icon = " ";
|
||||
};
|
||||
|
||||
PERF = {
|
||||
alt = [
|
||||
"OPTIM"
|
||||
@@ -66,6 +78,7 @@
|
||||
];
|
||||
icon = " ";
|
||||
};
|
||||
|
||||
TEST = {
|
||||
alt = [
|
||||
"TESTING"
|
||||
@@ -75,10 +88,12 @@
|
||||
color = "test";
|
||||
icon = "⏲ ";
|
||||
};
|
||||
|
||||
TODO = {
|
||||
color = "info";
|
||||
icon = " ";
|
||||
};
|
||||
|
||||
WARN = {
|
||||
alt = [
|
||||
"WARNING"
|
||||
|
||||
@@ -5,38 +5,46 @@
|
||||
plugins = {
|
||||
toggleterm = {
|
||||
enable = true;
|
||||
lazyLoad.settings.cmd = [
|
||||
"ToggleTermSendCurrentLine"
|
||||
"ToggleTermSendVisualLines"
|
||||
"ToggleTermSendVisualSelection"
|
||||
];
|
||||
|
||||
settings = {
|
||||
open_mapping.__raw = "[[<c-,>]]";
|
||||
insert_mappings = true;
|
||||
shade_terminals = false;
|
||||
};
|
||||
};
|
||||
|
||||
which-key.settings.spec = [
|
||||
{
|
||||
__unkeyed-1 = "<leader>s";
|
||||
group = "Terminal";
|
||||
icon = " ";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
keymaps = [
|
||||
{
|
||||
action = "<CMD>ToggleTermSendCurrentLine<CR>";
|
||||
key = "<leader>sts";
|
||||
key = "<leader>sl";
|
||||
mode = "n";
|
||||
options = {
|
||||
desc = "Send Current Line";
|
||||
};
|
||||
options.desc = "Send Current Line";
|
||||
}
|
||||
{
|
||||
action = "<CMD>ToggleTermSendVisualLines<CR>";
|
||||
key = "<leader>stv";
|
||||
key = "<leader>sv";
|
||||
mode = "x";
|
||||
options = {
|
||||
desc = "Send all the (whole) lines in selection";
|
||||
};
|
||||
options.desc = "Send all the (whole) lines in selection";
|
||||
}
|
||||
{
|
||||
action = "<CMD>ToggleTermSendVisualSelection<CR>";
|
||||
key = "<leader>sts";
|
||||
key = "<leader>ss";
|
||||
mode = "x";
|
||||
options = {
|
||||
desc = "Send selection";
|
||||
};
|
||||
options.desc = "Send selection";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
programs.nixvim.plugins = {
|
||||
treesitter = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
folding.enable = false;
|
||||
settings = {
|
||||
auto_install = false;
|
||||
@@ -13,6 +15,7 @@
|
||||
|
||||
ts-context-commentstring = {
|
||||
enable = true;
|
||||
lazyLoad.enable = false;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -5,6 +5,8 @@
|
||||
plugins = {
|
||||
trouble = {
|
||||
enable = true;
|
||||
lazyLoad.settings.cmd = "Trouble";
|
||||
|
||||
settings = {
|
||||
modes = {
|
||||
diagnostics = {
|
||||
@@ -14,9 +16,7 @@
|
||||
# Diagnostics for the current buffer only
|
||||
diagnostics_buffer = {
|
||||
mode = "diagnostics";
|
||||
filter = {
|
||||
buf = 0;
|
||||
};
|
||||
filter.buf = 0;
|
||||
};
|
||||
};
|
||||
focus = false;
|
||||
|
||||
@@ -2,37 +2,29 @@
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
typst-preview = {
|
||||
enable = true;
|
||||
lazyLoad = {
|
||||
settings = {
|
||||
ft = "typst";
|
||||
cmd = "TypstPreview";
|
||||
};
|
||||
};
|
||||
plugins.typst-preview = {
|
||||
enable = true;
|
||||
lazyLoad = {
|
||||
settings = {
|
||||
open_command = "qutebrowser --target tab %s";
|
||||
ft = [ "typst" ];
|
||||
cmd = "TypstPreview";
|
||||
};
|
||||
};
|
||||
|
||||
settings.open_command = "qutebrowser --target tab %s";
|
||||
};
|
||||
files = {
|
||||
"ftplugin/typst.lua" = {
|
||||
keymaps = [
|
||||
{
|
||||
action = "<CMD>TypstPreview<CR>";
|
||||
key = "<C-k>t";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
options = {
|
||||
desc = "Typst Preview";
|
||||
};
|
||||
}
|
||||
|
||||
files."ftplugin/typst.lua".keymaps = [
|
||||
{
|
||||
action = "<CMD>TypstPreview<CR>";
|
||||
key = "<C-k>t";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
};
|
||||
};
|
||||
options.desc = "Typst Preview";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,17 +1,15 @@
|
||||
{ ... }:
|
||||
|
||||
# TODO: coneal does not work
|
||||
# TODO: conceal does not work
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
typst-vim = {
|
||||
enable = true;
|
||||
settings = {
|
||||
conceal = 1;
|
||||
conceal_math = 1;
|
||||
conceal_emoji = 1;
|
||||
};
|
||||
};
|
||||
programs.nixvim.plugins.typst-vim = {
|
||||
enable = true;
|
||||
lazyLoad.settings.filetypes = [ "typst" ];
|
||||
|
||||
settings = {
|
||||
conceal = 1;
|
||||
conceal_math = 1;
|
||||
conceal_emoji = 1;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -5,7 +5,38 @@
|
||||
plugins = {
|
||||
undotree = {
|
||||
enable = true;
|
||||
lazyLoad.settings.cmd = "UndotreeShow";
|
||||
};
|
||||
|
||||
which-key.settings.spec = [
|
||||
{
|
||||
__unkeyed-1 = "<leader>t";
|
||||
group = "Undotree";
|
||||
icon = " ";
|
||||
}
|
||||
];
|
||||
};
|
||||
keymaps = [
|
||||
{
|
||||
key = "<leader>th";
|
||||
action = "<cmd>UndotreeHide<cr>";
|
||||
options.desc = "Hide undotree";
|
||||
}
|
||||
{
|
||||
key = "<leader>tf";
|
||||
action = "<cmd>UndotreeFocus<cr>";
|
||||
options.desc = "Focus undotree";
|
||||
}
|
||||
{
|
||||
key = "<leader>tp";
|
||||
action = "<cmd>UndotreePersistUndo<cr>";
|
||||
options.desc = "Persist undo";
|
||||
}
|
||||
{
|
||||
key = "<leader>ts";
|
||||
action = "<cmd>UndotreeShow<cr>";
|
||||
options.desc = "Show undotree";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
33
home/programs/nixvim/plugins/unified.nix
Normal file
33
home/programs/nixvim/plugins/unified.nix
Normal file
@@ -0,0 +1,33 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
unified = {
|
||||
enable = true;
|
||||
lazyLoad.settings.cmd = "Unified";
|
||||
};
|
||||
|
||||
which-key.settings.spec = [
|
||||
{
|
||||
__unkeyed-1 = "<leader>u";
|
||||
group = "Unified";
|
||||
icon = " ";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
keymaps = [
|
||||
{
|
||||
key = "<leader>us";
|
||||
action = "<cmd>Unified<cr>";
|
||||
options.desc = "Start Unified";
|
||||
}
|
||||
{
|
||||
key = "<leader>uq";
|
||||
action = "<cmd>Unified reset<cr><cmd>Unified reset<cr>";
|
||||
options.desc = "Stop Unified";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
@@ -1,17 +1,45 @@
|
||||
{ ... }:
|
||||
{ pkgs,... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
extraPackages = with pkgs; [
|
||||
texliveFull
|
||||
texlivePackages.standalone
|
||||
texlivePackages.relsize # needed for BA
|
||||
# papis-nvim
|
||||
];
|
||||
|
||||
plugins = {
|
||||
vimtex = {
|
||||
enable = true;
|
||||
lazyLoad.settings.filetype = [ "tex" ];
|
||||
|
||||
settings = {
|
||||
view_automatic = false;
|
||||
mappings_disable = {
|
||||
"n" = [ "K" ];
|
||||
};
|
||||
view_method = "zathura";
|
||||
};
|
||||
};
|
||||
|
||||
ltex-extra = {
|
||||
enable = true;
|
||||
lazyLoad.settings.filetype = [ "tex" ];
|
||||
};
|
||||
|
||||
texpresso = {
|
||||
enable = true;
|
||||
lazyload.settings.filetype = [ "tex" ];
|
||||
};
|
||||
|
||||
which-key.settings.spec = [
|
||||
{
|
||||
__unkeyed-1 = "<leader>v";
|
||||
group = "Vimtex";
|
||||
icon = " ";
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
autoGroups = {
|
||||
@@ -36,5 +64,36 @@
|
||||
'';
|
||||
}
|
||||
];
|
||||
|
||||
keymaps = [
|
||||
{
|
||||
key = "<leader>vc";
|
||||
action = "<cmd>VimtexCompile<cr>";
|
||||
options.desc = "Start Vimtex";
|
||||
}
|
||||
{
|
||||
key = "<leader>vs";
|
||||
action = "<cmd>VimtexStop<cr>";
|
||||
options.desc = "Stop Vimtex";
|
||||
}
|
||||
{
|
||||
key = "<leader>vr";
|
||||
action = "<cmd>VimtexClean<cr>";
|
||||
options.desc = "Clean Vimtex";
|
||||
}
|
||||
];
|
||||
|
||||
files."ftplugin/latex.lua".keymaps = [
|
||||
{
|
||||
action = "<CMD>Texpresso %<CR>";
|
||||
key = "<C-k>t";
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
"i"
|
||||
];
|
||||
options.desc = "Start Texpresso";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
web-devicons.enable = true;
|
||||
};
|
||||
programs.nixvim.plugins.web-devicons = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -1,9 +1,8 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins = {
|
||||
which-key = {
|
||||
enable = true;
|
||||
};
|
||||
programs.nixvim.plugins.which-key = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
};
|
||||
}
|
||||
|
||||
48
home/programs/nixvim/plugins/wilder.nix
Normal file
48
home/programs/nixvim/plugins/wilder.nix
Normal file
@@ -0,0 +1,48 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins.wilder = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
|
||||
settings.modes = [
|
||||
":"
|
||||
"/"
|
||||
"?"
|
||||
];
|
||||
|
||||
# Configure the wilder engine
|
||||
options = {
|
||||
pipeline.__raw = ''
|
||||
wilder.branch(
|
||||
wilder.cmdline_pipeline({
|
||||
fuzzy = 1,
|
||||
set_device = 1,
|
||||
}),
|
||||
wilder.vim_search_pipeline()
|
||||
)
|
||||
'';
|
||||
renderer.__raw = ''
|
||||
wilder.popupmenu_renderer(
|
||||
wilder.popupmenu_border_theme({
|
||||
highlighter = wilder.basic_highlighter(),
|
||||
highlights = {
|
||||
accent = "WilderAccent",
|
||||
},
|
||||
border = "rounded",
|
||||
left = { " ", wilder.popupmenu_devicons() },
|
||||
right = { " ", wilder.popupmenu_scrollbar() },
|
||||
})
|
||||
)
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
# Define the custom highlight group for the accent color
|
||||
programs.nixvim.highlight = {
|
||||
WilderAccent = {
|
||||
fg = "#f5c2e7";
|
||||
bold = true;
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,69 +0,0 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
yanky = {
|
||||
enable = true;
|
||||
settings = {
|
||||
ring = {
|
||||
storage = "sqlite";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
sqlite-lua = {
|
||||
enable = true;
|
||||
};
|
||||
};
|
||||
|
||||
keymaps = [
|
||||
{
|
||||
key = "p";
|
||||
action = "<Plug>(YankyPutAfter)";
|
||||
mode = [
|
||||
"n"
|
||||
"x"
|
||||
];
|
||||
}
|
||||
{
|
||||
key = "P";
|
||||
action = "<Plug>(YankyPutBefore)";
|
||||
mode = [
|
||||
"n"
|
||||
"x"
|
||||
];
|
||||
}
|
||||
{
|
||||
key = "gp";
|
||||
action = "<Plug>(YankyGPutAfter)";
|
||||
mode = [
|
||||
"n"
|
||||
"x"
|
||||
];
|
||||
}
|
||||
{
|
||||
key = "gP";
|
||||
action = "<Plug>(YankyGPutBefore)";
|
||||
mode = [
|
||||
"n"
|
||||
"x"
|
||||
];
|
||||
}
|
||||
{
|
||||
key = "<c-p>";
|
||||
action = "<Plug>(YankyPreviousEntry)";
|
||||
mode = [
|
||||
"n"
|
||||
];
|
||||
}
|
||||
{
|
||||
key = "<c-n>";
|
||||
action = "<Plug>(YankyNextEntry)";
|
||||
mode = [
|
||||
"n"
|
||||
];
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
37
home/programs/nixvim/plugins/yazi.nix
Normal file
37
home/programs/nixvim/plugins/yazi.nix
Normal file
@@ -0,0 +1,37 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
yazi = {
|
||||
enable = true;
|
||||
autoLoad = true;
|
||||
};
|
||||
|
||||
which-key.settings.spec = [
|
||||
{
|
||||
__unkeyed-1 = "<leader>y";
|
||||
group = "Yazi";
|
||||
icon = " ";
|
||||
}
|
||||
];
|
||||
};
|
||||
keymaps = [
|
||||
{
|
||||
key = "<leader>yf";
|
||||
action = "<cmd>Yazi<cr>";
|
||||
options.desc = "Open yazi at the current file";
|
||||
}
|
||||
{
|
||||
key = "<leader>yw";
|
||||
action = "<cmd>Yazi cwd<cr>";
|
||||
options.desc = "Open yazi at the current working directory";
|
||||
}
|
||||
{
|
||||
key = "<leader>yl";
|
||||
action = "<cmd>Yazi toggle<cr>";
|
||||
options.desc = "Resume the last session";
|
||||
}
|
||||
];
|
||||
};
|
||||
}
|
||||
8
home/programs/nixvim/plugins/yuck.nix
Normal file
8
home/programs/nixvim/plugins/yuck.nix
Normal file
@@ -0,0 +1,8 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim.plugins.yuck = {
|
||||
enable = true;
|
||||
lazyLoad.settings.filetypes = [ "yuck" ];
|
||||
};
|
||||
}
|
||||
@@ -1,95 +0,0 @@
|
||||
{ ... }:
|
||||
|
||||
{
|
||||
programs.nixvim = {
|
||||
plugins = {
|
||||
zk = {
|
||||
enable = true;
|
||||
settings = {
|
||||
picker = "telescope";
|
||||
};
|
||||
};
|
||||
which-key.settings.spec = [
|
||||
{
|
||||
__unkeyed-1 = "<leader>z";
|
||||
group = "Zettelkasten";
|
||||
icon = " ";
|
||||
}
|
||||
];
|
||||
};
|
||||
keymaps = [
|
||||
{
|
||||
key = "<leader>zn";
|
||||
action = "<Cmd>ZkNew { title = vim.fn.input('Title: ') }<CR>";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Create";
|
||||
};
|
||||
}
|
||||
{
|
||||
key = "<leader>zo";
|
||||
action = "<Cmd>ZkNotes { sort = { 'modified' } }<CR>";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Open";
|
||||
};
|
||||
}
|
||||
{
|
||||
key = "<leader>zt";
|
||||
action = "<Cmd>ZkTags<CR>";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Open Tags";
|
||||
};
|
||||
}
|
||||
{
|
||||
key = "<leader>zf";
|
||||
action = "<Cmd>ZkNotes { sort = { 'modified' }, match = { vim.fn.input('Search: ') } }<CR>";
|
||||
mode = [ "n" ];
|
||||
options = {
|
||||
desc = "Search";
|
||||
};
|
||||
}
|
||||
{
|
||||
key = "<leader>zf";
|
||||
action = ":'<,'>ZkMatch<CR>";
|
||||
mode = [ "v" ];
|
||||
options = {
|
||||
desc = "Search (Matching the Selection)";
|
||||
};
|
||||
}
|
||||
];
|
||||
files = {
|
||||
# TODO: Add descriptions
|
||||
# TODO: Did the sytnax change?
|
||||
"ftplugin/markdown.lua" = {
|
||||
extraConfigLua = # lua
|
||||
''
|
||||
-- Add the key mappings only for Markdown files in a zk notebook.
|
||||
if require("zk.util").notebook_root(vim.fn.expand('%:p')) ~= nil then
|
||||
local function map(...) vim.api.nvim_buf_set_keymap(0, ...) end
|
||||
local opts = { noremap=true, silent=false }
|
||||
|
||||
-- Create a new note after asking for its title.
|
||||
-- This overrides the global `<leader>zn` mapping to create the note in the same directory as the current buffer.
|
||||
map("n", "<leader>zn", "<Cmd>ZkNew { dir = vim.fn.expand('%:p:h'), title = vim.fn.input('Title: ') }<CR>", opts)
|
||||
-- Create a new note in the same directory as the current buffer, using the current selection for title.
|
||||
map("v", "<leader>znt", ":'<,'>ZkNewFromTitleSelection { dir = vim.fn.expand('%:p:h') }<CR>", opts)
|
||||
-- Create a new note in the same directory as the current buffer, using the current selection for note content and asking for its title.
|
||||
map("v", "<leader>znc", ":'<,'>ZkNewFromContentSelection { dir = vim.fn.expand('%:p:h'), title = vim.fn.input('Title: ') }<CR>", opts)
|
||||
|
||||
-- Open notes linking to the current buffer.
|
||||
map("n", "<leader>zb", "<Cmd>ZkBacklinks<CR>", opts)
|
||||
-- Open notes linked by the current buffer.
|
||||
map("n", "<leader>zl", "<Cmd>ZkLinks<CR>", opts)
|
||||
|
||||
-- Preview a linked note.
|
||||
map("n", "K", "<Cmd>lua vim.lsp.buf.hover()<CR>", opts)
|
||||
-- Open the code actions for a visual selection.
|
||||
map("v", "<leader>za", ":'<,'>lua vim.lsp.buf.range_code_action()<CR>", opts)
|
||||
end
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
0
home/programs/river/src/lock.sh
Normal file → Executable file
0
home/programs/river/src/lock.sh
Normal file → Executable file
0
home/programs/river/src/logout.sh
Normal file → Executable file
0
home/programs/river/src/logout.sh
Normal file → Executable file
0
home/programs/river/src/startEww.sh
Normal file → Executable file
0
home/programs/river/src/startEww.sh
Normal file → Executable file
@@ -2,7 +2,6 @@
|
||||
|
||||
{
|
||||
imports = [
|
||||
./emanote.nix
|
||||
./flameshot.nix
|
||||
./fnott.nix
|
||||
./gpg-agent.nix
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
{ config, ... }:
|
||||
|
||||
let
|
||||
emanote = import (
|
||||
builtins.fetchTarball {
|
||||
url = "https://github.com/srid/emanote/archive/master.tar.gz";
|
||||
sha256 = "0kr8bbq1awg2c2ra1mwjxqa9m7is9b6cdksvh48g4w354h5pqbnv";
|
||||
}
|
||||
);
|
||||
in
|
||||
{
|
||||
imports = [ emanote.homeManagerModule ];
|
||||
services.emanote = {
|
||||
enable = true;
|
||||
# host = "127.0.0.1"; # default listen address is 127.0.0.1
|
||||
# port = 7000; # default http port is 7000
|
||||
notes = [
|
||||
"/home/elias/Nextcloud/zettelkasten"
|
||||
];
|
||||
# TODO: currentSystem
|
||||
package = emanote.packages."x86_64-linux".default;
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user