Files
my_nixos/home/yaroslav/nvim.nix
T
2025-09-23 10:22:20 +03:00

82 lines
1.7 KiB
Nix

{ pkgs, lib, config, ... }:
{
home.packages = with pkgs; [
pyright
python312Packages.pynvim-pp
];
programs.neovim = {
enable = true;
defaultEditor = true;
viAlias = true;
vimAlias = true;
plugins = with pkgs.vimPlugins; [
nvim-lspconfig
nvim-treesitter.withAllGrammars
plenary-nvim
gruvbox-material
mini-nvim
nvim-tree-lua
nvim-lspconfig
vim-nix
cmp-nvim-lsp
cmp-buffer
cmp-path
cmp-cmdline
nvim-cmp
vimtex
coq_nvim
coq-artifacts
transparent-nvim
zenbones-nvim
];
extraLuaConfig = ''
local function my_on_attach(bufnr)
local api = require "nvim-tree.api"
local function opts(desc)
return { desc = "nvim-tree: " .. desc, buffer = bufnr, noremap = true, silent = true, nowait = true }
end
-- default mappings
api.config.mappings.default_on_attach(bufnr)
-- custom mappingse
vim.keymap.set('n', '?', api.tree.toggle_help, opts('Help'))
end
-- pass to setup along with your other options
require("nvim-tree").setup {
on_attach = my_on_attach,
sort = {
sorter = "case_sensitive",
},
view = {
width = 30,
},
renderer = {
group_empty = true,
},
filters = {
dotfiles = false,
},
}
vim.lsp.enable('pyright')
vim.lsp.enable('nil_ls')
-- local cmp = require 'cmp'
-- cmp.setup({
-- snippet = {
-- expand = function(args)
-- vim.fn["vsnip#anonymous"](args.body)
-- end,
-- },
--})
'';
};
}