dotfiles/modules/editor/neovim/default.nix

64 lines
1.5 KiB
Nix
Raw Normal View History

2022-05-07 20:54:47 +00:00
{ config, pkgs, lib, ... }: {
2022-04-28 23:11:33 +00:00
home-manager.users.${config.user} = {
2022-04-28 23:11:33 +00:00
home.packages = with pkgs; [
neovim
gcc # for tree-sitter
];
2022-04-28 23:11:33 +00:00
xdg.configFile = {
2022-05-07 21:31:19 +00:00
"nvim/init.lua".text = lib.mkMerge [
(lib.mkOrder 100 ''
2022-05-07 22:11:47 +00:00
${builtins.readFile ./bootstrap.lua}
require("packer").startup(function(use)
${builtins.readFile ./packer-basics.lua}
'')
(lib.mkOrder 200 ''
${builtins.readFile ./colors.lua}
'')
(lib.mkOrder 300 ''
${builtins.readFile ./lsp.lua}
'')
(lib.mkOrder 400 ''
${builtins.readFile ./completion.lua}
'')
(lib.mkOrder 500 ''
${builtins.readFile ./syntax.lua}
'')
(lib.mkOrder 600 ''
${builtins.readFile ./telescope.lua}
'')
(lib.mkOrder 700 ''
${builtins.readFile ./packer-sync.lua}
end)
'')
(lib.mkOrder 800 ''
2022-05-07 21:31:19 +00:00
${builtins.readFile ./settings.lua}
${builtins.readFile ./functions.lua}
${builtins.readFile ./keybinds.lua}
'')
];
};
programs.git.extraConfig.core.editor = "nvim";
2022-05-12 01:13:41 +00:00
home.sessionVariables = {
EDITOR = "nvim";
MANPAGER = "nvim +Man!";
};
2022-04-30 14:21:43 +00:00
programs.fish = {
2022-05-30 17:09:50 +00:00
shellAliases = { vim = "nvim"; };
2022-05-29 17:44:45 +00:00
shellAbbrs = {
v = lib.mkForce "nvim";
vl = lib.mkForce "nvim -c 'normal! `0'";
vll = "nvim -c 'Telescope oldfiles'";
};
2022-04-30 14:21:43 +00:00
};
};
2022-04-28 23:11:33 +00:00
2022-04-29 01:56:21 +00:00
# Used for icons in Vim
fonts.fonts = with pkgs; [ nerdfonts ];
2022-04-28 23:11:33 +00:00
}