nixos-configs/common/home/neovim/langs/clang.nix
matt1432 e581ce4582
All checks were successful
Discord / discord commits (push) Has been skipped
feat(nvim): set tabs to 4 spaces for c/cpp
2024-06-24 11:33:02 -04:00

47 lines
1.1 KiB
Nix

{
config,
pkgs,
lib,
...
}: let
inherit (config.vars) neovimIde;
inherit (pkgs) vimPlugins;
in
lib.mkIf neovimIde {
programs = {
neovim = {
extraPackages = with pkgs; [
gcc
clang-tools
cmake-language-server
];
extraLuaConfig =
# lua
''
vim.api.nvim_create_autocmd('FileType', {
pattern = { 'cpp' , 'c'},
command = 'setlocal ts=4 sw=4 sts=0 expandtab',
});
local lsp = require('lspconfig');
local coq = require('coq');
lsp.cmake.setup(coq.lsp_ensure_capabilities({}));
lsp.clangd.setup(coq.lsp_ensure_capabilities({
handlers = require('lsp-status').extensions.clangd.setup(),
on_attach = function(_, bufnr)
require("clangd_extensions.inlay_hints").setup_autocmd()
require("clangd_extensions.inlay_hints").set_inlay_hints()
end,
}));
'';
plugins = [
vimPlugins.clangd_extensions-nvim
];
};
};
}