2024-05-08 23:04:16 -04:00
|
|
|
{
|
|
|
|
config,
|
|
|
|
lib,
|
|
|
|
pkgs,
|
|
|
|
...
|
|
|
|
}: let
|
|
|
|
inherit (config.vars) neovimIde;
|
|
|
|
inherit (pkgs) vimPlugins;
|
|
|
|
in {
|
2024-05-07 22:49:00 -04:00
|
|
|
imports = [
|
|
|
|
./bash.nix
|
|
|
|
./clang.nix
|
2024-05-08 20:26:57 -04:00
|
|
|
./hyprlang.nix
|
2024-05-07 22:49:00 -04:00
|
|
|
./java.nix
|
|
|
|
./lua.nix
|
|
|
|
./markdown.nix
|
|
|
|
./nix.nix
|
|
|
|
./python.nix
|
|
|
|
./web.nix
|
|
|
|
];
|
2024-05-08 23:04:16 -04:00
|
|
|
|
|
|
|
programs = lib.mkIf neovimIde {
|
|
|
|
neovim = {
|
|
|
|
extraLuaConfig = lib.mkBefore
|
|
|
|
/*
|
|
|
|
lua
|
|
|
|
*/
|
|
|
|
''
|
|
|
|
-- Start completion / snippet stuff
|
|
|
|
vim.g.coq_settings = { auto_start = true };
|
|
|
|
|
|
|
|
-- Add formatting cmd
|
|
|
|
vim.api.nvim_create_user_command(
|
|
|
|
'Format',
|
|
|
|
function()
|
|
|
|
vim.lsp.buf.format({ async = true });
|
|
|
|
end,
|
|
|
|
{}
|
|
|
|
);
|
|
|
|
|
|
|
|
-- Remove LSP highlighting to use Treesitter
|
|
|
|
vim.api.nvim_create_autocmd("LspAttach", {
|
|
|
|
callback = function(args)
|
|
|
|
local client = vim.lsp.get_client_by_id(args.data.client_id)
|
|
|
|
client.server_capabilities.semanticTokensProvider = nil
|
|
|
|
end,
|
|
|
|
});
|
|
|
|
'';
|
|
|
|
plugins = [
|
|
|
|
vimPlugins.nvim-lspconfig
|
|
|
|
vimPlugins.coq_nvim
|
|
|
|
vimPlugins.coq-artifacts
|
|
|
|
vimPlugins.coq-thirdparty
|
|
|
|
];
|
|
|
|
};
|
|
|
|
};
|
2024-05-07 22:49:00 -04:00
|
|
|
}
|