39 lines
1.1 KiB
Nix
39 lines
1.1 KiB
Nix
{ config, lib, pkgs, inputs, ... }:
|
|
|
|
let
|
|
inherit (lib) mkEnableOption mkIf readFile;
|
|
in
|
|
{
|
|
home-manager.users.moritz = {
|
|
xdg.configFile."nvim/snippets" = {
|
|
recursive = true;
|
|
source = ../snippets;
|
|
};
|
|
programs.nixvim = {
|
|
plugins.luasnip = {
|
|
enable = true;
|
|
settings = {
|
|
history = true;
|
|
update_events = "TextChanged,TextChangedI";
|
|
delete_check_events = "TextChanged";
|
|
ext_opts.__raw = ''
|
|
{
|
|
[require("luasnip.util.types").choiceNode] = {
|
|
active = {
|
|
virt_text = { { "<--", "Error" } },
|
|
},
|
|
},
|
|
}
|
|
'';
|
|
ft_func.__raw = ''require("luasnip.extras.filetype_functions").from_pos_or_filetype'';
|
|
};
|
|
};
|
|
extraConfigLuaPost = ''
|
|
require("luasnip.loaders.from_lua").load({ paths = "~/.config/nvim/snippets" })
|
|
require("luasnip.loaders.from_snipmate").lazy_load({ paths = "~/.config/nvim/snippets" })
|
|
require("luasnip.loaders.from_vscode").lazy_load()
|
|
'';
|
|
};
|
|
};
|
|
}
|