{
  config,
  lib,
  ...
}: let
  cfg = config.soispha.programs.nvim;
in {
  imports = [
    ./keymaps
    ./servers
  ];
  home-manager.users.soispha.programs.nixvim.plugins.lsp = lib.mkIf cfg.enable {
    enable = true;
    onAttach =
      ""
      #     + ''
      #        function(client, bufnr)
      #            -- Enable completion triggered by <c-x><c-o>
      #            -- vim.api.nvim_buf_set_option(bufnr, 'omnifunc', 'v:lua.vim.lsp.omnifunc')
      #        end
      #      ''
      ;
    preConfig = ''
      vim.diagnostic.config({
          underline = true,
          -- virtual_text = true,
          virtual_text = {
              source = "always", -- Or "if_many"
          },
          update_in_insert = true,
          severity_sort = true,
      }, nil);
    '';
  };
}