anchor.diff:      hint_enable = true, -- virtual hint enable
       hint_prefix = "",  -- Panda for parameter
       hint_scheme = "String",
  -    use_lspsaga = true,  -- set to true if you want to use lspsaga popup
  +    use_lspsaga = false,  -- set to true if you want to use lspsaga popup
       hi_parameter = "Search", -- how your parameter will be highlight
       max_height = 12, -- max height of signature floating_window, if content is more than max_height, you can scroll down
                        -- to view the hiding contents
  
positive.code: -- end
  -- nvim_lsp["ansiblels"].setup { on_attach = on_attach; }
  
  local saga = require 'lspsaga'
  saga.init_lsp_saga()
  
  EOF
      nnoremap <silent> gh :Lspsaga lsp_finder<CR>
      nnoremap <silent> ca :Lspsaga code_action<CR>
      vnoremap <silent> ca :<C-U>Lspsaga range_code_action<CR>
      nnoremap <silent> K :Lspsaga hover_doc<CR>
      nnoremap <silent> gs :Lspsaga signature_help<CR>
      nnoremap <silent> gr :Lspsaga rename<CR>
      nnoremap <silent> gd :Lspsaga preview_definition<CR>
      nnoremap <silent> cd :Lspsaga show_line_diagnostics<CR>
      nnoremap <silent> } :Lspsaga diagnostic_jump_next<CR>
      nnoremap <silent> { :Lspsaga diagnostic_jump_prev<CR>
      nnoremap <silent> <A-d> :Lspsaga open_floaterm<CR>
      tnoremap <silent> <A-d> <C-\><C-n>:Lspsaga close_floaterm<CR>
  
      " function! OpenCompletion()
      "     if !pumvisible() && ((v:char >= 'a' && v:char <= 'z') || (v:char >= 'A' && v:char <= 'Z'))
  
negative.code: 
  nvim_lsp["kotlin_language_server"].setup { on_attach = on_attach; cmd = {"${kotlin-language-server}/bin/kotlin-language-server"} }
  nvim_lsp["rnix"].setup { on_attach = on_attach; cmd = {"${pkgs.rnix-lsp}/bin/rnix-lsp"} }
  nvim_lsp["pyright"].setup {
    on_attach = on_attach;
    cmd = {"${pyright}/bin/pyright-langserver", "--stdio"};
    settings = {
      python = {
        analysis = {
          autoSearchPaths = true,
          useLibraryCodeForTypes = true,
          diagnosticMode = 'workspace',
          typeCheckingMode = 'off',
        },
      },
    };
  }
  nvim_lsp["pylsp"].setup {
    on_attach = on_attach;
    cmd = {"${python-lsp-server}/bin/pylsp"};
    settings = {
      pylsp = {
        plugins = {
          rope_completion = {
            enabled = false,
          },
          jedi_symbols = {
            enabled = false,
          },
          jedi_signature_help = {
            enabled = false,
          },
          jedi_references = {
            enabled = false,
          },
          jedi_hover = {
            enabled = false,
          },
          jedi_definition = {
            enabled = false,
          },
          jedi_completion = {
            enabled = false,
          },
        },
      },
    };
  }
  nvim_lsp["bashls"].setup { on_attach = on_attach; cmd = {"${variables.homeDir}/.npm-packages/bin/bash-language-server", "start"} }
  nvim_lsp["dockerls"].setup { on_attach = on_attach; cmd = {"${variables.homeDir}/.npm-packages/bin/docker-langserver", "--stdio"} }
  