Compare commits

...

2 Commits

Author SHA1 Message Date
808e150bc6 Merge pull request 'Add nvim' (#33) from feature/neovim into master
Reviewed-on: #33
2026-02-11 12:22:32 +01:00
f440300cea Add nvim 2026-02-11 12:21:51 +01:00
2 changed files with 68 additions and 0 deletions

View File

@@ -17,6 +17,7 @@
./programs/tmux.nix ./programs/tmux.nix
./programs/git.nix ./programs/git.nix
./programs/libreoffice.nix ./programs/libreoffice.nix
./programs/nvim.nix
./wm/rofi.nix ./wm/rofi.nix
./wm/cursor.nix ./wm/cursor.nix
./wm/dconf.nix ./wm/dconf.nix

67
programs/nvim.nix Normal file
View File

@@ -0,0 +1,67 @@
{ pkgs, ... }:
{
programs.neovim = {
enable = true;
plugins = with pkgs.vimPlugins; [
catppuccin-nvim
tokyonight-nvim
nvim-lspconfig
nvim-cmp
cmp-nvim-lsp
cmp-buffer
cmp-path
plenary-nvim
telescope-nvim
(nvim-treesitter.withAllGrammars)
vim-nix
];
extraLuaConfig = ''
vim.cmd("colorscheme catppuccin-mocha")
-- Basic settings
vim.o.number = true
vim.o.relativenumber = true
-- =========================
-- LSP (Neovim 0.11+ way)
-- =========================
-- Add cmp capabilities
local capabilities = require("cmp_nvim_lsp").default_capabilities()
vim.lsp.config("nil_ls", {
capabilities = capabilities,
})
vim.lsp.enable("nil_ls")
-- =========================
-- nvim-cmp
-- =========================
local cmp = require("cmp")
cmp.setup({
mapping = cmp.mapping.preset.insert({
["<C-Space>"] = cmp.mapping.complete(),
["<CR>"] = cmp.mapping.confirm({ select = true }),
}),
sources = {
{ name = "nvim_lsp" },
{ name = "buffer" },
{ name = "path" },
}
})
-- =========================
-- Telescope
-- =========================
local builtin = require("telescope.builtin")
vim.keymap.set("n", "<leader>ff", builtin.find_files, {})
vim.keymap.set("n", "<leader>fg", builtin.live_grep, {})
'';
};
}