blob: 5fd60508a4fd1107b76f9821179b3350a1cc12f5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
|
{
pkgs,
inputs,
}: let
# Get the markdown table mode plugin
markdown-table-mode-nvim-git = pkgs.vimUtils.buildVimPlugin {
name = "markdown-table-mode.nvim";
version = "git";
src = pkgs.fetchFromGitHub {
owner = "Kicamon";
repo = "markdown-table-mode.nvim";
rev = "bb1ea9b76c1b29e15e14806fdfbb2319df5c06f1";
sha256 = "sha256-Pwsp9QQiADvzMjn2jSiQ/MPVCYjVnugKu55gbjvlYDk=";
};
};
in
inputs.mnw.lib.wrap pkgs {
neovim = pkgs.neovim-unwrapped;
plugins = with pkgs.vimPlugins; {
dev.config = {
pure = ./config;
impure = "/home/culsans/Sync/setup/pkgs/custom-neovim/config";
};
start = [
lz-n # Lazy loader
];
opt = [
# Can be lazy loaded.
# UI Plugins
nvim-treesitter.withAllGrammars # All treesitter grammars
fzf-lua
mini-pick
mini-extra
mini-clue
mini-files
mini-icons
mini-base16
mini-indentscope
mini-completion
blink-cmp
# Completion Plugins
luasnip
friendly-snippets
# Utility Plugins
mini-pairs
mini-bracketed
mini-jump
mini-ai
mini-splitjoin
mini-surround
vim-nix # Indentation for nix files
comment-box-nvim
auto-session
# Git Plugins
mini-git
mini-diff
# Markdown Plugns
render-markdown-nvim
markdown-nvim
markdown-table-mode-nvim-git
img-clip-nvim
# Colorschemes
# nightfox-nvim
# vim-gruvbox8
# oxocarbon-nvim
];
};
luaFiles = [./config/init.lua];
extraLuaPackages = ps: [
ps.magick
];
extraBinPath = with pkgs; [
# LSP Servers
lua-language-server # LS for Lua
marksman # LS for Markdown
nixd # LS for Nix
ccls # LS for C languages
# Extra Utils
wl-clipboard
fzf
# ripgrep
# gcc
fd
lazygit
# Misc Dependencies
python312Packages.pylatexenc
];
}
|