neoclide / coc.nvim

Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers.
Other
24.39k stars 954 forks source link

Signcolumn not correctly update to show git status #2474

Closed eggeek closed 3 years ago

eggeek commented 3 years ago

Result from CocInfo

versions

vim version: NVIM v0.4.4 node version: v14.12.0 coc.nvim version: 0.0.79-b1c5962f6f coc.nvim directory: /home/eggeek/.local/share/nvim/plugged/coc.nvim term: tmux-256color platform: linux

Output channel: clangd log

I[12:52:15.706] clangd version 10.0.1 I[12:52:15.706] PID: 29592 I[12:52:15.707] Working directory: /home/eggeek/workspace/test I[12:52:15.707] argv[0]: /usr/bin/clangd I[12:52:15.707] Starting LSP over stdin/stdout I[12:52:15.707] <-- initialize(0) I[12:52:15.707] --> reply:initialize(0) 0 ms I[12:52:15.709] <-- initialized I[12:52:15.709] unhandled notification initialized I[12:52:15.709] <-- textDocument/didOpen I[12:52:15.709] Failed to find compilation database for /home/eggeek/workspace/test/test.h I[12:52:15.709] --> textDocument/clangd.fileStatus I[12:52:15.709] Updating file /home/eggeek/workspace/test/test.h with command clangd fallback [/home/eggeek/workspace/test] /usr/bin/clang -xobjective-c++-header /home/eggeek/workspace/test/test.h -fsyntax-only -resource-dir=/usr/lib/clang/10.0.1 I[12:52:15.716] --> textDocument/publishDiagnostics I[12:52:15.716] --> textDocument/semanticHighlighting I[12:52:15.716] --> textDocument/clangd.fileStatus

Output channel: git

Looking for git in: git

git rev-parse --show-toplevel resolved root: /home/eggeek/workspace/test git ls-files -- test.h resolved root: /home/eggeek/workspace/test git symbolic-ref --short HEAD git diff --name-status git diff --staged --name-status git ls-files --others --exclude-standard git --no-pager show :test.h

Output channel: snippets

[Info 12:52:15 pm] Using ultisnips directories: UltiSnips /home/eggeek/.config/coc/ultisnips [Info 12:52:15 pm] Using ultisnips python command: pyx

Describe the bug

The signcolumn is not correctly updated to show git status

Reproduce the bug

We will close your issue when you don't provide minimal vimrc and we can't reproduce it

Screenshots (optional)

asciicast

Full Log

12:33:03 pm DEBUG [transport] - request to nvim: 1,nvim_get_api_info,[]
12:33:03 pm DEBUG [transport] - request to nvim: 2,nvim_call_function,[
  "coc#util#path_replace_patterns",
  []
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_set_var,[
  "coc_process_pid",
  26361
]
12:33:03 pm DEBUG [transport] - receive notification: [
  "VimEnter",
  []
]
12:33:03 pm DEBUG [transport] - receive notification: [
  "registNotification",
  [
    "cquery",
    "$cquery/publishSemanticHighlighting"
  ]
]
12:33:03 pm DEBUG [transport] - receive notification: [
  "registNotification",
  [
    "cquery",
    "$cquery/setInactiveRegions"
  ]
]
12:33:03 pm DEBUG [transport] - receive notification: [
  "registNotification",
  [
    "ccls",
    "$ccls/publishSemanticHighlight"
  ]
]
12:33:03 pm DEBUG [transport] - receive notification: [
  "registNotification",
  [
    "ccls",
    "$ccls/publishSkippedRanges"
  ]
]
12:33:03 pm DEBUG [transport] - response of nvim: 1,43ms,[
  3,
  {
    "version": {
      "major": 0,
      "minor": 4,
      "patch": 4,
      "api_level": 6,
      "api_compatible": 0,
      "api_prerelease": false
    },
    "functions": [
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ]
        ],
        "method": true,
        "return_type": "Integer",
        "name": "nvim_buf_line_count",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "index"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "String",
        "name": "buffer_get_line",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Boolean",
            "send_buffer"
          ],
          [
            "Dictionary",
            "opts"
          ]
        ],
        "method": true,
        "return_type": "Boolean",
        "name": "nvim_buf_attach",
        "since": 4
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ]
        ],
        "method": true,
        "return_type": "Boolean",
        "name": "nvim_buf_detach",
        "since": 4
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "index"
          ],
          [
            "String",
            "line"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "buffer_set_line",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "index"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "buffer_del_line",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "start"
          ],
          [
            "Integer",
            "end"
          ],
          [
            "Boolean",
            "include_start"
          ],
          [
            "Boolean",
            "include_end"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "ArrayOf(String)",
        "name": "buffer_get_line_slice",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "start"
          ],
          [
            "Integer",
            "end"
          ],
          [
            "Boolean",
            "strict_indexing"
          ]
        ],
        "method": true,
        "return_type": "ArrayOf(String)",
        "name": "nvim_buf_get_lines",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "start"
          ],
          [
            "Integer",
            "end"
          ],
          [
            "Boolean",
            "include_start"
          ],
          [
            "Boolean",
            "include_end"
          ],
          [
            "ArrayOf(String)",
            "replacement"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "buffer_set_line_slice",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "start"
          ],
          [
            "Integer",
            "end"
          ],
          [
            "Boolean",
            "strict_indexing"
          ],
          [
            "ArrayOf(String)",
            "replacement"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_buf_set_lines",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "index"
          ]
        ],
        "method": true,
        "return_type": "Integer",
        "name": "nvim_buf_get_offset",
        "since": 5
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "return_type": "Object",
        "name": "nvim_buf_get_var",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ]
        ],
        "method": true,
        "return_type": "Integer",
        "name": "nvim_buf_get_changedtick",
        "since": 2
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "mode"
          ]
        ],
        "method": true,
        "return_type": "ArrayOf(Dictionary)",
        "name": "nvim_buf_get_keymap",
        "since": 3
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "mode"
          ],
          [
            "String",
            "lhs"
          ],
          [
            "String",
            "rhs"
          ],
          [
            "Dictionary",
            "opts"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_buf_set_keymap",
        "since": 6
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "mode"
          ],
          [
            "String",
            "lhs"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_buf_del_keymap",
        "since": 6
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Dictionary",
            "opts"
          ]
        ],
        "method": true,
        "return_type": "Dictionary",
        "name": "nvim_buf_get_commands",
        "since": 4
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_buf_set_var",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_buf_del_var",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "buffer_set_var",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "buffer_del_var",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "return_type": "Object",
        "name": "nvim_buf_get_option",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_buf_set_option",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ]
        ],
        "method": true,
        "deprecated_since": 2,
        "return_type": "Integer",
        "name": "nvim_buf_get_number",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ]
        ],
        "method": true,
        "return_type": "String",
        "name": "nvim_buf_get_name",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_buf_set_name",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ]
        ],
        "method": true,
        "return_type": "Boolean",
        "name": "nvim_buf_is_loaded",
        "since": 5
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ]
        ],
        "method": true,
        "return_type": "Boolean",
        "name": "nvim_buf_is_valid",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "lnum"
          ],
          [
            "ArrayOf(String)",
            "lines"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "buffer_insert",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "return_type": "ArrayOf(Integer, 2)",
        "name": "nvim_buf_get_mark",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "ns_id"
          ],
          [
            "String",
            "hl_group"
          ],
          [
            "Integer",
            "line"
          ],
          [
            "Integer",
            "col_start"
          ],
          [
            "Integer",
            "col_end"
          ]
        ],
        "method": true,
        "return_type": "Integer",
        "name": "nvim_buf_add_highlight",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "ns_id"
          ],
          [
            "Integer",
            "line_start"
          ],
          [
            "Integer",
            "line_end"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_buf_clear_namespace",
        "since": 5
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "ns_id"
          ],
          [
            "Integer",
            "line_start"
          ],
          [
            "Integer",
            "line_end"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_buf_clear_highlight",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "ns_id"
          ],
          [
            "Integer",
            "line"
          ],
          [
            "Array",
            "chunks"
          ],
          [
            "Dictionary",
            "opts"
          ]
        ],
        "method": true,
        "return_type": "Integer",
        "name": "nvim_buf_set_virtual_text",
        "since": 5
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ]
        ],
        "method": true,
        "return_type": "ArrayOf(Window)",
        "name": "nvim_tabpage_list_wins",
        "since": 1
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "return_type": "Object",
        "name": "nvim_tabpage_get_var",
        "since": 1
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ],
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_tabpage_set_var",
        "since": 1
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_tabpage_del_var",
        "since": 1
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ],
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "tabpage_set_var",
        "since": 0
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "tabpage_del_var",
        "since": 0
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ]
        ],
        "method": true,
        "return_type": "Window",
        "name": "nvim_tabpage_get_win",
        "since": 1
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ]
        ],
        "method": true,
        "return_type": "Integer",
        "name": "nvim_tabpage_get_number",
        "since": 1
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ]
        ],
        "method": true,
        "return_type": "Boolean",
        "name": "nvim_tabpage_is_valid",
        "since": 1
      },
      {
        "parameters": [
          [
            "Integer",
            "width"
          ],
          [
            "Integer",
            "height"
          ],
          [
            "Dictionary",
            "options"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_ui_attach",
        "since": 1
      },
      {
        "parameters": [
          [
            "Integer",
            "width"
          ],
          [
            "Integer",
            "height"
          ],
          [
            "Boolean",
            "enable_rgb"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "ui_attach",
        "since": 0
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "void",
        "name": "nvim_ui_detach",
        "since": 1
      },
      {
        "parameters": [
          [
            "Integer",
            "width"
          ],
          [
            "Integer",
            "height"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_ui_try_resize",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_ui_set_option",
        "since": 1
      },
      {
        "parameters": [
          [
            "Integer",
            "grid"
          ],
          [
            "Integer",
            "width"
          ],
          [
            "Integer",
            "height"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_ui_try_resize_grid",
        "since": 6
      },
      {
        "parameters": [
          [
            "Integer",
            "height"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_ui_pum_set_height",
        "since": 6
      },
      {
        "parameters": [
          [
            "String",
            "command"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_command",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ],
          [
            "Boolean",
            "rgb"
          ]
        ],
        "method": false,
        "return_type": "Dictionary",
        "name": "nvim_get_hl_by_name",
        "since": 3
      },
      {
        "parameters": [
          [
            "Integer",
            "hl_id"
          ],
          [
            "Boolean",
            "rgb"
          ]
        ],
        "method": false,
        "return_type": "Dictionary",
        "name": "nvim_get_hl_by_id",
        "since": 3
      },
      {
        "parameters": [
          [
            "String",
            "keys"
          ],
          [
            "String",
            "mode"
          ],
          [
            "Boolean",
            "escape_csi"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_feedkeys",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "keys"
          ]
        ],
        "method": false,
        "return_type": "Integer",
        "name": "nvim_input",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "button"
          ],
          [
            "String",
            "action"
          ],
          [
            "String",
            "modifier"
          ],
          [
            "Integer",
            "grid"
          ],
          [
            "Integer",
            "row"
          ],
          [
            "Integer",
            "col"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_input_mouse",
        "since": 6
      },
      {
        "parameters": [
          [
            "String",
            "str"
          ],
          [
            "Boolean",
            "from_part"
          ],
          [
            "Boolean",
            "do_lt"
          ],
          [
            "Boolean",
            "special"
          ]
        ],
        "method": false,
        "return_type": "String",
        "name": "nvim_replace_termcodes",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "command"
          ]
        ],
        "method": false,
        "return_type": "String",
        "name": "nvim_command_output",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "expr"
          ]
        ],
        "method": false,
        "return_type": "Object",
        "name": "nvim_eval",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "code"
          ],
          [
            "Array",
            "args"
          ]
        ],
        "method": false,
        "return_type": "Object",
        "name": "nvim_execute_lua",
        "since": 3
      },
      {
        "parameters": [
          [
            "String",
            "fn"
          ],
          [
            "Array",
            "args"
          ]
        ],
        "method": false,
        "return_type": "Object",
        "name": "nvim_call_function",
        "since": 1
      },
      {
        "parameters": [
          [
            "Object",
            "dict"
          ],
          [
            "String",
            "fn"
          ],
          [
            "Array",
            "args"
          ]
        ],
        "method": false,
        "return_type": "Object",
        "name": "nvim_call_dict_function",
        "since": 4
      },
      {
        "parameters": [
          [
            "String",
            "text"
          ]
        ],
        "method": false,
        "return_type": "Integer",
        "name": "nvim_strwidth",
        "since": 1
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "ArrayOf(String)",
        "name": "nvim_list_runtime_paths",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "dir"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_set_current_dir",
        "since": 1
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "String",
        "name": "nvim_get_current_line",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "line"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_set_current_line",
        "since": 1
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "void",
        "name": "nvim_del_current_line",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ]
        ],
        "method": false,
        "return_type": "Object",
        "name": "nvim_get_var",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_set_var",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_del_var",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "vim_set_var",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "vim_del_var",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ]
        ],
        "method": false,
        "return_type": "Object",
        "name": "nvim_get_vvar",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_set_vvar",
        "since": 6
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ]
        ],
        "method": false,
        "return_type": "Object",
        "name": "nvim_get_option",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_set_option",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "str"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_out_write",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "str"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_err_write",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "str"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_err_writeln",
        "since": 1
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "ArrayOf(Buffer)",
        "name": "nvim_list_bufs",
        "since": 1
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "Buffer",
        "name": "nvim_get_current_buf",
        "since": 1
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_set_current_buf",
        "since": 1
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "ArrayOf(Window)",
        "name": "nvim_list_wins",
        "since": 1
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "Window",
        "name": "nvim_get_current_win",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_set_current_win",
        "since": 1
      },
      {
        "parameters": [
          [
            "Boolean",
            "listed"
          ],
          [
            "Boolean",
            "scratch"
          ]
        ],
        "method": false,
        "return_type": "Buffer",
        "name": "nvim_create_buf",
        "since": 6
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Boolean",
            "enter"
          ],
          [
            "Dictionary",
            "config"
          ]
        ],
        "method": false,
        "return_type": "Window",
        "name": "nvim_open_win",
        "since": 6
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "ArrayOf(Tabpage)",
        "name": "nvim_list_tabpages",
        "since": 1
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "Tabpage",
        "name": "nvim_get_current_tabpage",
        "since": 1
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_set_current_tabpage",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ]
        ],
        "method": false,
        "return_type": "Integer",
        "name": "nvim_create_namespace",
        "since": 5
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "Dictionary",
        "name": "nvim_get_namespaces",
        "since": 5
      },
      {
        "parameters": [
          [
            "String",
            "data"
          ],
          [
            "Boolean",
            "crlf"
          ],
          [
            "Integer",
            "phase"
          ]
        ],
        "method": false,
        "return_type": "Boolean",
        "name": "nvim_paste",
        "since": 6
      },
      {
        "parameters": [
          [
            "ArrayOf(String)",
            "lines"
          ],
          [
            "String",
            "type"
          ],
          [
            "Boolean",
            "after"
          ],
          [
            "Boolean",
            "follow"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_put",
        "since": 6
      },
      {
        "parameters": [
          [
            "String",
            "event"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_subscribe",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "event"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_unsubscribe",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ]
        ],
        "method": false,
        "return_type": "Integer",
        "name": "nvim_get_color_by_name",
        "since": 1
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "Dictionary",
        "name": "nvim_get_color_map",
        "since": 1
      },
      {
        "parameters": [
          [
            "Dictionary",
            "opts"
          ]
        ],
        "method": false,
        "return_type": "Dictionary",
        "name": "nvim_get_context",
        "since": 6
      },
      {
        "parameters": [
          [
            "Dictionary",
            "dict"
          ]
        ],
        "method": false,
        "return_type": "Object",
        "name": "nvim_load_context",
        "since": 6
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "Dictionary",
        "name": "nvim_get_mode",
        "since": 2
      },
      {
        "parameters": [
          [
            "String",
            "mode"
          ]
        ],
        "method": false,
        "return_type": "ArrayOf(Dictionary)",
        "name": "nvim_get_keymap",
        "since": 3
      },
      {
        "parameters": [
          [
            "String",
            "mode"
          ],
          [
            "String",
            "lhs"
          ],
          [
            "String",
            "rhs"
          ],
          [
            "Dictionary",
            "opts"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_set_keymap",
        "since": 6
      },
      {
        "parameters": [
          [
            "String",
            "mode"
          ],
          [
            "String",
            "lhs"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_del_keymap",
        "since": 6
      },
      {
        "parameters": [
          [
            "Dictionary",
            "opts"
          ]
        ],
        "method": false,
        "return_type": "Dictionary",
        "name": "nvim_get_commands",
        "since": 4
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "Array",
        "name": "nvim_get_api_info",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ],
          [
            "Dictionary",
            "version"
          ],
          [
            "String",
            "type"
          ],
          [
            "Dictionary",
            "methods"
          ],
          [
            "Dictionary",
            "attributes"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_set_client_info",
        "since": 4
      },
      {
        "parameters": [
          [
            "Integer",
            "chan"
          ]
        ],
        "method": false,
        "return_type": "Dictionary",
        "name": "nvim_get_chan_info",
        "since": 4
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "Array",
        "name": "nvim_list_chans",
        "since": 4
      },
      {
        "parameters": [
          [
            "Array",
            "calls"
          ]
        ],
        "method": false,
        "return_type": "Array",
        "name": "nvim_call_atomic",
        "since": 1
      },
      {
        "parameters": [
          [
            "String",
            "expr"
          ],
          [
            "String",
            "flags"
          ],
          [
            "Boolean",
            "highlight"
          ]
        ],
        "method": false,
        "return_type": "Dictionary",
        "name": "nvim_parse_expression",
        "since": 4
      },
      {
        "parameters": [],
        "method": false,
        "return_type": "Array",
        "name": "nvim_list_uis",
        "since": 4
      },
      {
        "parameters": [
          [
            "Integer",
            "pid"
          ]
        ],
        "method": false,
        "return_type": "Array",
        "name": "nvim_get_proc_children",
        "since": 4
      },
      {
        "parameters": [
          [
            "Integer",
            "pid"
          ]
        ],
        "method": false,
        "return_type": "Object",
        "name": "nvim_get_proc",
        "since": 4
      },
      {
        "parameters": [
          [
            "Integer",
            "item"
          ],
          [
            "Boolean",
            "insert"
          ],
          [
            "Boolean",
            "finish"
          ],
          [
            "Dictionary",
            "opts"
          ]
        ],
        "method": false,
        "return_type": "void",
        "name": "nvim_select_popupmenu_item",
        "since": 6
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "return_type": "Buffer",
        "name": "nvim_win_get_buf",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "Buffer",
            "buffer"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_win_set_buf",
        "since": 5
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "return_type": "ArrayOf(Integer, 2)",
        "name": "nvim_win_get_cursor",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "ArrayOf(Integer, 2)",
            "pos"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_win_set_cursor",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "return_type": "Integer",
        "name": "nvim_win_get_height",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "Integer",
            "height"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_win_set_height",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "return_type": "Integer",
        "name": "nvim_win_get_width",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "Integer",
            "width"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_win_set_width",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "return_type": "Object",
        "name": "nvim_win_get_var",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_win_set_var",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_win_del_var",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "window_set_var",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "window_del_var",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "return_type": "Object",
        "name": "nvim_win_get_option",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_win_set_option",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "return_type": "ArrayOf(Integer, 2)",
        "name": "nvim_win_get_position",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "return_type": "Tabpage",
        "name": "nvim_win_get_tabpage",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "return_type": "Integer",
        "name": "nvim_win_get_number",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "return_type": "Boolean",
        "name": "nvim_win_is_valid",
        "since": 1
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "Dictionary",
            "config"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_win_set_config",
        "since": 6
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "return_type": "Dictionary",
        "name": "nvim_win_get_config",
        "since": 6
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "Boolean",
            "force"
          ]
        ],
        "method": true,
        "return_type": "void",
        "name": "nvim_win_close",
        "since": 6
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Integer",
        "name": "buffer_line_count",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "start"
          ],
          [
            "Integer",
            "end"
          ],
          [
            "Boolean",
            "strict_indexing"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "ArrayOf(String)",
        "name": "buffer_get_lines",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "start"
          ],
          [
            "Integer",
            "end"
          ],
          [
            "Boolean",
            "strict_indexing"
          ],
          [
            "ArrayOf(String)",
            "replacement"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "buffer_set_lines",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "buffer_get_var",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "buffer_get_option",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "buffer_set_option",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Integer",
        "name": "buffer_get_number",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "String",
        "name": "buffer_get_name",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "buffer_set_name",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Boolean",
        "name": "buffer_is_valid",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "ArrayOf(Integer, 2)",
        "name": "buffer_get_mark",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "ns_id"
          ],
          [
            "String",
            "hl_group"
          ],
          [
            "Integer",
            "line"
          ],
          [
            "Integer",
            "col_start"
          ],
          [
            "Integer",
            "col_end"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Integer",
        "name": "buffer_add_highlight",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ],
          [
            "Integer",
            "ns_id"
          ],
          [
            "Integer",
            "line_start"
          ],
          [
            "Integer",
            "line_end"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "buffer_clear_highlight",
        "since": 0
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "ArrayOf(Window)",
        "name": "tabpage_get_windows",
        "since": 0
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "tabpage_get_var",
        "since": 0
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Window",
        "name": "tabpage_get_window",
        "since": 0
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Boolean",
        "name": "tabpage_is_valid",
        "since": 0
      },
      {
        "parameters": [],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "ui_detach",
        "since": 0
      },
      {
        "parameters": [
          [
            "Integer",
            "width"
          ],
          [
            "Integer",
            "height"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "ui_try_resize",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "command"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "vim_command",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "keys"
          ],
          [
            "String",
            "mode"
          ],
          [
            "Boolean",
            "escape_csi"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "vim_feedkeys",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "keys"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Integer",
        "name": "vim_input",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "str"
          ],
          [
            "Boolean",
            "from_part"
          ],
          [
            "Boolean",
            "do_lt"
          ],
          [
            "Boolean",
            "special"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "String",
        "name": "vim_replace_termcodes",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "command"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "String",
        "name": "vim_command_output",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "expr"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "vim_eval",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "fn"
          ],
          [
            "Array",
            "args"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "vim_call_function",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "text"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Integer",
        "name": "vim_strwidth",
        "since": 0
      },
      {
        "parameters": [],
        "method": false,
        "deprecated_since": 1,
        "return_type": "ArrayOf(String)",
        "name": "vim_list_runtime_paths",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "dir"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "vim_change_directory",
        "since": 0
      },
      {
        "parameters": [],
        "method": false,
        "deprecated_since": 1,
        "return_type": "String",
        "name": "vim_get_current_line",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "line"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "vim_set_current_line",
        "since": 0
      },
      {
        "parameters": [],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "vim_del_current_line",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "vim_get_var",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "vim_get_vvar",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "vim_get_option",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "vim_set_option",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "str"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "vim_out_write",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "str"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "vim_err_write",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "str"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "vim_report_error",
        "since": 0
      },
      {
        "parameters": [],
        "method": false,
        "deprecated_since": 1,
        "return_type": "ArrayOf(Buffer)",
        "name": "vim_get_buffers",
        "since": 0
      },
      {
        "parameters": [],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Buffer",
        "name": "vim_get_current_buffer",
        "since": 0
      },
      {
        "parameters": [
          [
            "Buffer",
            "buffer"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "vim_set_current_buffer",
        "since": 0
      },
      {
        "parameters": [],
        "method": false,
        "deprecated_since": 1,
        "return_type": "ArrayOf(Window)",
        "name": "vim_get_windows",
        "since": 0
      },
      {
        "parameters": [],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Window",
        "name": "vim_get_current_window",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "vim_set_current_window",
        "since": 0
      },
      {
        "parameters": [],
        "method": false,
        "deprecated_since": 1,
        "return_type": "ArrayOf(Tabpage)",
        "name": "vim_get_tabpages",
        "since": 0
      },
      {
        "parameters": [],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Tabpage",
        "name": "vim_get_current_tabpage",
        "since": 0
      },
      {
        "parameters": [
          [
            "Tabpage",
            "tabpage"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "vim_set_current_tabpage",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "event"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "vim_subscribe",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "event"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "vim_unsubscribe",
        "since": 0
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ]
        ],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Integer",
        "name": "vim_name_to_color",
        "since": 0
      },
      {
        "parameters": [],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Dictionary",
        "name": "vim_get_color_map",
        "since": 0
      },
      {
        "parameters": [],
        "method": false,
        "deprecated_since": 1,
        "return_type": "Array",
        "name": "vim_get_api_info",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Buffer",
        "name": "window_get_buffer",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "ArrayOf(Integer, 2)",
        "name": "window_get_cursor",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "ArrayOf(Integer, 2)",
            "pos"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "window_set_cursor",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Integer",
        "name": "window_get_height",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "Integer",
            "height"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "window_set_height",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Integer",
        "name": "window_get_width",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "Integer",
            "width"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "window_set_width",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "window_get_var",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "String",
            "name"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Object",
        "name": "window_get_option",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ],
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "void",
        "name": "window_set_option",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "ArrayOf(Integer, 2)",
        "name": "window_get_position",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Tabpage",
        "name": "window_get_tabpage",
        "since": 0
      },
      {
        "parameters": [
          [
            "Window",
            "window"
          ]
        ],
        "method": true,
        "deprecated_since": 1,
        "return_type": "Boolean",
        "name": "window_is_valid",
        "since": 0
      }
    ],
    "ui_events": [
      {
        "parameters": [
          [
            "Boolean",
            "enabled"
          ],
          [
            "Array",
            "cursor_styles"
          ]
        ],
        "name": "mode_info_set",
        "since": 3
      },
      {
        "parameters": [],
        "name": "update_menu",
        "since": 3
      },
      {
        "parameters": [],
        "name": "busy_start",
        "since": 3
      },
      {
        "parameters": [],
        "name": "busy_stop",
        "since": 3
      },
      {
        "parameters": [],
        "name": "mouse_on",
        "since": 3
      },
      {
        "parameters": [],
        "name": "mouse_off",
        "since": 3
      },
      {
        "parameters": [
          [
            "String",
            "mode"
          ],
          [
            "Integer",
            "mode_idx"
          ]
        ],
        "name": "mode_change",
        "since": 3
      },
      {
        "parameters": [],
        "name": "bell",
        "since": 3
      },
      {
        "parameters": [],
        "name": "visual_bell",
        "since": 3
      },
      {
        "parameters": [],
        "name": "flush",
        "since": 3
      },
      {
        "parameters": [],
        "name": "suspend",
        "since": 3
      },
      {
        "parameters": [
          [
            "String",
            "title"
          ]
        ],
        "name": "set_title",
        "since": 3
      },
      {
        "parameters": [
          [
            "String",
            "icon"
          ]
        ],
        "name": "set_icon",
        "since": 3
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ],
          [
            "Object",
            "value"
          ]
        ],
        "name": "option_set",
        "since": 4
      },
      {
        "parameters": [
          [
            "Integer",
            "fg"
          ]
        ],
        "name": "update_fg",
        "since": 3
      },
      {
        "parameters": [
          [
            "Integer",
            "bg"
          ]
        ],
        "name": "update_bg",
        "since": 3
      },
      {
        "parameters": [
          [
            "Integer",
            "sp"
          ]
        ],
        "name": "update_sp",
        "since": 3
      },
      {
        "parameters": [
          [
            "Integer",
            "width"
          ],
          [
            "Integer",
            "height"
          ]
        ],
        "name": "resize",
        "since": 3
      },
      {
        "parameters": [],
        "name": "clear",
        "since": 3
      },
      {
        "parameters": [],
        "name": "eol_clear",
        "since": 3
      },
      {
        "parameters": [
          [
            "Integer",
            "row"
          ],
          [
            "Integer",
            "col"
          ]
        ],
        "name": "cursor_goto",
        "since": 3
      },
      {
        "parameters": [
          [
            "Dictionary",
            "attrs"
          ]
        ],
        "name": "highlight_set",
        "since": 3
      },
      {
        "parameters": [
          [
            "String",
            "str"
          ]
        ],
        "name": "put",
        "since": 3
      },
      {
        "parameters": [
          [
            "Integer",
            "top"
          ],
          [
            "Integer",
            "bot"
          ],
          [
            "Integer",
            "left"
          ],
          [
            "Integer",
            "right"
          ]
        ],
        "name": "set_scroll_region",
        "since": 3
      },
      {
        "parameters": [
          [
            "Integer",
            "count"
          ]
        ],
        "name": "scroll",
        "since": 3
      },
      {
        "parameters": [
          [
            "Integer",
            "rgb_fg"
          ],
          [
            "Integer",
            "rgb_bg"
          ],
          [
            "Integer",
            "rgb_sp"
          ],
          [
            "Integer",
            "cterm_fg"
          ],
          [
            "Integer",
            "cterm_bg"
          ]
        ],
        "name": "default_colors_set",
        "since": 4
      },
      {
        "parameters": [
          [
            "Integer",
            "id"
          ],
          [
            "Dictionary",
            "rgb_attrs"
          ],
          [
            "Dictionary",
            "cterm_attrs"
          ],
          [
            "Array",
            "info"
          ]
        ],
        "name": "hl_attr_define",
        "since": 5
      },
      {
        "parameters": [
          [
            "String",
            "name"
          ],
          [
            "Integer",
            "id"
          ]
        ],
        "name": "hl_group_set",
        "since": 6
      },
      {
        "parameters": [
          [
            "Integer",
            "grid"
          ],
          [
            "Integer",
            "width"
          ],
          [
            "Integer",
            "height"
          ]
        ],
        "name": "grid_resize",
        "since": 5
      },
      {
        "parameters": [
          [
            "Integer",
            "grid"
          ]
        ],
        "name": "grid_clear",
        "since": 5
      },
      {
        "parameters": [
          [
            "Integer",
            "grid"
          ],
          [
            "Integer",
            "row"
          ],
          [
            "Integer",
            "col"
          ]
        ],
        "name": "grid_cursor_goto",
        "since": 5
      },
      {
        "parameters": [
          [
            "Integer",
            "grid"
          ],
          [
            "Integer",
            "row"
          ],
          [
            "Integer",
            "col_start"
          ],
          [
            "Array",
            "data"
          ]
        ],
        "name": "grid_line",
        "since": 5
      },
      {
        "parameters": [
          [
            "Integer",
            "grid"
          ],
          [
            "Integer",
            "top"
          ],
          [
            "Integer",
            "bot"
          ],
          [
            "Integer",
            "left"
          ],
          [
            "Integer",
            "right"
          ],
          [
            "Integer",
            "rows"
          ],
          [
            "Integer",
            "cols"
          ]
        ],
        "name": "grid_scroll",
        "since": 5
      },
      {
        "parameters": [
          [
            "Integer",
            "grid"
          ]
        ],
        "name": "grid_destroy",
        "since": 6
      },
      {
        "parameters": [
          [
            "Integer",
            "grid"
          ],
          [
            "Window",
            "win"
          ],
          [
            "Integer",
            "startrow"
          ],
          [
            "Integer",
            "startcol"
          ],
          [
            "Integer",
            "width"
          ],
          [
            "Integer",
            "height"
          ]
        ],
        "name": "win_pos",
        "since": 6
      },
      {
        "parameters": [
          [
            "Integer",
            "grid"
          ],
          [
            "Window",
            "win"
          ],
          [
            "String",
            "anchor"
          ],
          [
            "Integer",
            "anchor_grid"
          ],
          [
            "Float",
            "anchor_row"
          ],
          [
            "Float",
            "anchor_col"
          ],
          [
            "Boolean",
            "focusable"
          ]
        ],
        "name": "win_float_pos",
        "since": 6
      },
      {
        "parameters": [
          [
            "Integer",
            "grid"
          ],
          [
            "Window",
            "win"
          ]
        ],
        "name": "win_external_pos",
        "since": 6
      },
      {
        "parameters": [
          [
            "Integer",
            "grid"
          ]
        ],
        "name": "win_hide",
        "since": 6
      },
      {
        "parameters": [
          [
            "Integer",
            "grid"
          ]
        ],
        "name": "win_close",
        "since": 6
      },
      {
        "parameters": [
          [
            "Integer",
            "grid"
          ],
          [
            "Integer",
            "row"
          ],
          [
            "Boolean",
            "scrolled"
          ],
          [
            "String",
            "sep_char"
          ]
        ],
        "name": "msg_set_pos",
        "since": 6
      },
      {
        "parameters": [
          [
            "Array",
            "items"
          ],
          [
            "Integer",
            "selected"
          ],
          [
            "Integer",
            "row"
          ],
          [
            "Integer",
            "col"
          ],
          [
            "Integer",
            "grid"
          ]
        ],
        "name": "popupmenu_show",
        "since": 3
      },
      {
        "parameters": [],
        "name": "popupmenu_hide",
        "since": 3
      },
      {
        "parameters": [
          [
            "Integer",
            "selected"
          ]
        ],
        "name": "popupmenu_select",
        "since": 3
      },
      {
        "parameters": [
          [
            "Tabpage",
            "current"
          ],
          [
            "Array",
            "tabs"
          ]
        ],
        "name": "tabline_update",
        "since": 3
      },
      {
        "parameters": [
          [
            "Array",
            "content"
          ],
          [
            "Integer",
            "pos"
          ],
          [
            "String",
            "firstc"
          ],
          [
            "String",
            "prompt"
          ],
          [
            "Integer",
            "indent"
          ],
          [
            "Integer",
            "level"
          ]
        ],
        "name": "cmdline_show",
        "since": 3
      },
      {
        "parameters": [
          [
            "Integer",
            "pos"
          ],
          [
            "Integer",
            "level"
          ]
        ],
        "name": "cmdline_pos",
        "since": 3
      },
      {
        "parameters": [
          [
            "String",
            "c"
          ],
          [
            "Boolean",
            "shift"
          ],
          [
            "Integer",
            "level"
          ]
        ],
        "name": "cmdline_special_char",
        "since": 3
      },
      {
        "parameters": [
          [
            "Integer",
            "level"
          ]
        ],
        "name": "cmdline_hide",
        "since": 3
      },
      {
        "parameters": [
          [
            "Array",
            "lines"
          ]
        ],
        "name": "cmdline_block_show",
        "since": 3
      },
      {
        "parameters": [
          [
            "Array",
            "lines"
          ]
        ],
        "name": "cmdline_block_append",
        "since": 3
      },
      {
        "parameters": [],
        "name": "cmdline_block_hide",
        "since": 3
      },
      {
        "parameters": [
          [
            "Array",
            "items"
          ]
        ],
        "name": "wildmenu_show",
        "since": 3
      },
      {
        "parameters": [
          [
            "Integer",
            "selected"
          ]
        ],
        "name": "wildmenu_select",
        "since": 3
      },
      {
        "parameters": [],
        "name": "wildmenu_hide",
        "since": 3
      },
      {
        "parameters": [
          [
            "String",
            "kind"
          ],
          [
            "Array",
            "content"
          ],
          [
            "Boolean",
            "replace_last"
          ]
        ],
        "name": "msg_show",
        "since": 6
      },
      {
        "parameters": [],
        "name": "msg_clear",
        "since": 6
      },
      {
        "parameters": [
          [
            "Array",
            "content"
          ]
        ],
        "name": "msg_showcmd",
        "since": 6
      },
      {
        "parameters": [
          [
            "Array",
            "content"
          ]
        ],
        "name": "msg_showmode",
        "since": 6
      },
      {
        "parameters": [
          [
            "Array",
            "content"
          ]
        ],
        "name": "msg_ruler",
        "since": 6
      },
      {
        "parameters": [
          [
            "Array",
            "entries"
          ]
        ],
        "name": "msg_history_show",
        "since": 6
      }
    ],
    "ui_options": [
      "rgb",
      "ext_cmdline",
      "ext_popupmenu",
      "ext_tabline",
      "ext_wildmenu",
      "ext_messages",
      "ext_linegrid",
      "ext_multigrid",
      "ext_hlstate",
      "ext_termcolors"
    ],
    "error_types": {
      "Exception": {
        "id": 0
      },
      "Validation": {
        "id": 1
      }
    },
    "types": {
      "Buffer": {
        "id": 0,
        "prefix": "nvim_buf_"
      },
      "Window": {
        "id": 1,
        "prefix": "nvim_win_"
      },
      "Tabpage": {
        "id": 2,
        "prefix": "nvim_tabpage_"
      }
    }
  }
],null
12:33:03 pm DEBUG [transport] - response of nvim: 2,32ms,null,null
12:33:03 pm DEBUG [transport] - nvim notification: nvim_set_client_info,[
  "coc",
  {
    "major": 0,
    "minor": 0,
    "patch": 79
  },
  "remote",
  {},
  {}
]
12:33:03 pm DEBUG [transport] - request to nvim: 3,nvim_get_vvar,[
  "vim_did_enter"
]
12:33:03 pm DEBUG [transport] - response of nvim: 3,1ms,1,null
12:33:03 pm DEBUG [transport] - request to nvim: 4,nvim_eval,[
  "&runtimepath"
]
12:33:03 pm DEBUG [transport] - response of nvim: 4,0ms,/home/eggeek/.config/nvim,/home/eggeek/.fzf,/home/eggeek/.local/share/nvim/plugged/fzf.vim,/home/eggeek/.local/share/nvim/plugged/nvim-colorizer.lua,/home/eggeek/.local/share/nvim/plugged/onedark.vim,/home/eggeek/.local/share/nvim/plugged/lightline.vim,/home/eggeek/.local/share/nvim/plugged/vim-sneak,/home/eggeek/.local/share/nvim/plugged/LeaderF,/home/eggeek/.local/share/nvim/plugged/indentLine,/home/eggeek/.local/share/nvim/plugged/vista.vim,/home/eggeek/.local/share/nvim/plugged/nerdcommenter,/home/eggeek/.local/share/nvim/plugged/vim-choosewin,/home/eggeek/.local/share/nvim/plugged/vim-matchup,/home/eggeek/.local/share/nvim/plugged/vimwiki,/home/eggeek/.local/share/nvim/plugged/vim-wakatime,/home/eggeek/.local/share/nvim/plugged/coc.nvim,/home/eggeek/.local/share/nvim/plugged/vim-textobj-user,/home/eggeek/.local/share/nvim/plugged/vim-textobj-indent,/home/eggeek/.local/share/nvim/plugged/vim-textobj-syntax,/home/eggeek/.local/share/nvim/plugged/vim-textobj-function,/home/eggeek/.local/share/nvim/plugged/vim-textobj-parameter,/home/eggeek/.local/share/nvim/plugged/vim-textobj-python,/home/eggeek/.local/share/nvim/plugged/vim-textobj-uri,/home/eggeek/.local/share/nvim/plugged/vim-minizinc,/home/eggeek/.local/share/nvim/plugged/vimspector,/home/eggeek/.local/share/nvim/plugged/vim-fugitive,/home/eggeek/.local/share/nvim/plugged/vim-lsp-cxx-highlight,/etc/xdg/nvim,/home/eggeek/.local/share/nvim/site,/home/eggeek/.local/share/flatpak/exports/share/nvim/site,/var/lib/flatpak/exports/share/nvim/site,/usr/local/share/nvim/site,/usr/share/nvim/site,/var/lib/snapd/desktop/nvim/site,/usr/share/nvim/runtime,/usr/share/nvim/runtime/pack/dist/opt/matchit,/var/lib/snapd/desktop/nvim/site/after,/usr/share/nvim/site/after,/usr/local/share/nvim/site/after,/var/lib/flatpak/exports/share/nvim/site/after,/home/eggeek/.local/share/flatpak/exports/share/nvim/site/after,/home/eggeek/.local/share/nvim/site/after,/etc/xdg/nvim/after,/home/eggeek/.config/nvim/after,/usr/share/vim/vimfiles,/home/eggeek/.local/share/nvim/plugged/indentLine/after,/home/eggeek/.local/share/nvim/plugged/vim-matchup/after,/home/eggeek/.local/share/nvim/plugged/vim-textobj-function/after,/home/eggeek/.local/share/nvim/plugged/vim-textobj-python/after,s:home,null
12:33:03 pm DEBUG [transport] - request to nvim: 5,nvim_call_function,[
  "coc#util#vim_info",
  []
]
12:33:03 pm DEBUG [transport] - response of nvim: 5,1ms,{
  "pid": 26358,
  "version": "0.4.4",
  "background": "dark",
  "columns": 174,
  "completeOpt": "menu,preview",
  "mode": "n",
  "textprop": false,
  "runtimepath": "/home/eggeek/.config/nvim,/home/eggeek/.fzf,/home/eggeek/.local/share/nvim/plugged/fzf.vim,/home/eggeek/.local/share/nvim/plugged/nvim-colorizer.lua,/home/eggeek/.local/share/nvim/plugged/onedark.vim,/home/eggeek/.local/share/nvim/plugged/lightline.vim,/home/eggeek/.local/share/nvim/plugged/vim-sneak,/home/eggeek/.local/share/nvim/plugged/LeaderF,/home/eggeek/.local/share/nvim/plugged/indentLine,/home/eggeek/.local/share/nvim/plugged/vista.vim,/home/eggeek/.local/share/nvim/plugged/nerdcommenter,/home/eggeek/.local/share/nvim/plugged/vim-choosewin,/home/eggeek/.local/share/nvim/plugged/vim-matchup,/home/eggeek/.local/share/nvim/plugged/vimwiki,/home/eggeek/.local/share/nvim/plugged/vim-wakatime,/home/eggeek/.local/share/nvim/plugged/coc.nvim,/home/eggeek/.local/share/nvim/plugged/vim-textobj-user,/home/eggeek/.local/share/nvim/plugged/vim-textobj-indent,/home/eggeek/.local/share/nvim/plugged/vim-textobj-syntax,/home/eggeek/.local/share/nvim/plugged/vim-textobj-function,/home/eggeek/.local/share/nvim/plugged/vim-textobj-parameter,/home/eggeek/.local/share/nvim/plugged/vim-textobj-python,/home/eggeek/.local/share/nvim/plugged/vim-textobj-uri,/home/eggeek/.local/share/nvim/plugged/vim-minizinc,/home/eggeek/.local/share/nvim/plugged/vimspector,/home/eggeek/.local/share/nvim/plugged/vim-fugitive,/home/eggeek/.local/share/nvim/plugged/vim-lsp-cxx-highlight,/etc/xdg/nvim,/home/eggeek/.local/share/nvim/site,/home/eggeek/.local/share/flatpak/exports/share/nvim/site,/var/lib/flatpak/exports/share/nvim/site,/usr/local/share/nvim/site,/usr/share/nvim/site,/var/lib/snapd/desktop/nvim/site,/usr/share/nvim/runtime,/usr/share/nvim/runtime/pack/dist/opt/matchit,/var/lib/snapd/desktop/nvim/site/after,/usr/share/nvim/site/after,/usr/local/share/nvim/site/after,/var/lib/flatpak/exports/share/nvim/site/after,/home/eggeek/.local/share/flatpak/exports/share/nvim/site/after,/home/eggeek/.local/share/nvim/site/after,/etc/xdg/nvim/after,/home/eggeek/.config/nvim/after,/usr/share/vim/vimfiles,/home/eggeek/.local/share/nvim/plugged/indentLine/after,/home/eggeek/.local/share/nvim/plugged/vim-matchup/after,/home/eggeek/.local/share/nvim/plugged/vim-textobj-function/after,/home/eggeek/.local/share/nvim/plugged/vim-textobj-python/after,s:home",
  "progpath": "/usr/bin/nvim",
  "isCygwin": false,
  "disabledSources": {},
  "isMacvim": false,
  "floating": true,
  "extensionRoot": "/home/eggeek/.config/coc/extensions",
  "lines": 48,
  "cmdheight": 1,
  "config": {},
  "isVim": false,
  "workspaceFolders": null,
  "pumevent": 1,
  "isiTerm": 0,
  "filetypeMap": {},
  "globalExtensions": [],
  "locationlist": 1,
  "colorscheme": "onedark",
  "vimCommands": [],
  "watchExtensions": [],
  "guicursor": "n-v-c-sm:block,i-ci-ve:ver25,r-cr-o:hor20"
},null
12:33:03 pm DEBUG [transport] - request to nvim: 6,nvim_list_bufs,[]
12:33:03 pm DEBUG [transport] - response of nvim: 6,1ms,[
  "[nvim_buf_1]"
],null
12:33:03 pm DEBUG [transport] - request to nvim: 7,nvim_call_function,[
  "bufnr",
  [
    "%"
  ]
]
12:33:03 pm DEBUG [transport] - response of nvim: 7,0ms,1,null
12:33:03 pm DEBUG [transport] - request to nvim: 8,nvim_call_function,[
  "coc#util#get_bufoptions",
  [
    1
  ]
]
12:33:03 pm DEBUG [transport] - response of nvim: 8,0ms,{
  "changedtick": 3,
  "variables": {},
  "winid": 1000,
  "eol": 1,
  "previewwindow": false,
  "bufname": "test.h",
  "fullpath": "/home/eggeek/workspace/test/test.h",
  "filetype": "cpp",
  "buftype": "",
  "iskeyword": "@,48-57,_,192-255",
  "size": 43
},null
12:33:03 pm DEBUG [transport] - request to nvim: 9,nvim_buf_attach,[
  "[nvim_buf_1]",
  false,
  {}
]
12:33:03 pm DEBUG [transport] - receive notification: [
  "nvim_buf_changedtick_event",
  [
    "[nvim_buf_1]",
    3
  ]
]
12:33:03 pm DEBUG [transport] - response of nvim: 9,1ms,true,null
12:33:03 pm DEBUG [transport] - request to nvim: 10,nvim_buf_get_lines,[
  "[nvim_buf_1]",
  0,
  -1,
  true
]
12:33:03 pm DEBUG [transport] - response of nvim: 10,0ms,[
  "class C {",
  "  public:",
  "    C();",
  "    ~C();",
  "};"
],null
12:33:03 pm DEBUG [transport] - request to nvim: 11,nvim_call_function,[
  "win_getid",
  []
]
12:33:03 pm DEBUG [transport] - response of nvim: 11,3ms,1000,null
12:33:03 pm DEBUG [transport] - nvim notification: nvim_call_function,[
  "coc#_watch",
  [
    "coc_sources_disable_map"
  ]
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_call_atomic,[
  [
    [
      "nvim_command",
      [
        "sign define CocError linehl=CocErrorLine texthl=CocErrorSign text=>> numhl=CocErrorSign"
      ]
    ],
    [
      "nvim_command",
      [
        "sign define CocWarning linehl=CocWarningLine texthl=CocWarningSign text=⚠ numhl=CocWarningSign"
      ]
    ],
    [
      "nvim_command",
      [
        "sign define CocInfo linehl=CocInfoLine texthl=CocInfoSign text=>> numhl=CocInfoSign"
      ]
    ],
    [
      "nvim_command",
      [
        "sign define CocHint linehl=CocHintLine texthl=CocHintSign text=>> numhl=CocHintSign"
      ]
    ]
  ]
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "sign define CocSelected text=* texthl=CocSelectedText linehl=CocSelectedLine"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_set_var,[
  "coc_workspace_initialized",
  1
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_set_var,[
  "WorkspaceFolders",
  [
    "/home/eggeek/workspace/test"
  ]
]
12:33:03 pm DEBUG [transport] - request to nvim: 12,nvim_call_function,[
  "exists",
  [
    "g:lsp_cxx_hl_loaded"
  ]
]
12:33:03 pm DEBUG [transport] - response of nvim: 12,0ms,1,null
12:33:03 pm DEBUG [transport] - nvim notification: nvim_call_atomic,[
  [
    [
      "nvim_command",
      [
        "sign define CocGitChanged text=~ texthl=CocGitChangedSign"
      ]
    ],
    [
      "nvim_command",
      [
        "hi default link CocGitChangedSign DiffChange"
      ]
    ],
    [
      "nvim_command",
      [
        "sign define CocGitAdded text=+ texthl=CocGitAddedSign"
      ]
    ],
    [
      "nvim_command",
      [
        "hi default link CocGitAddedSign DiffAdd"
      ]
    ],
    [
      "nvim_command",
      [
        "sign define CocGitRemoved text=_ texthl=CocGitRemovedSign"
      ]
    ],
    [
      "nvim_command",
      [
        "hi default link CocGitRemovedSign DiffDelete"
      ]
    ],
    [
      "nvim_command",
      [
        "sign define CocGitTopRemoved text=‾ texthl=CocGitTopRemovedSign"
      ]
    ],
    [
      "nvim_command",
      [
        "hi default link CocGitTopRemovedSign DiffDelete"
      ]
    ],
    [
      "nvim_command",
      [
        "sign define CocGitChangeRemoved text=≃ texthl=CocGitChangeRemovedSign"
      ]
    ],
    [
      "nvim_command",
      [
        "hi default link CocGitChangeRemovedSign DiffChange"
      ]
    ]
  ]
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "nnoremap <silent> <Plug>(coc-git-nextchunk) :<C-U>call coc#rpc#notify('doKeymap', ['git-nextchunk'])<cr>"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "nnoremap <silent> <Plug>(coc-git-prevchunk) :<C-U>call coc#rpc#notify('doKeymap', ['git-prevchunk'])<cr>"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "nnoremap <silent> <Plug>(coc-git-chunkinfo) :<C-U>call coc#rpc#notify('doKeymap', ['git-chunkinfo'])<cr>"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "nnoremap <silent> <Plug>(coc-git-commit) :<C-U>call coc#rpc#notify('doKeymap', ['git-commit'])<cr>"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "onoremap <silent> <Plug>(coc-git-chunk-inner) :<C-U>call coc#rpc#request('doKeymap', ['git-chunk-inner'])<cr>"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "xnoremap <silent> <Plug>(coc-git-chunk-inner) :<C-U>call coc#rpc#request('doKeymap', ['git-chunk-inner'])<cr>"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "onoremap <silent> <Plug>(coc-git-chunk-outer) :<C-U>call coc#rpc#request('doKeymap', ['git-chunk-outer'])<cr>"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "xnoremap <silent> <Plug>(coc-git-chunk-outer) :<C-U>call coc#rpc#request('doKeymap', ['git-chunk-outer'])<cr>"
]
12:33:03 pm DEBUG [transport] - request to nvim: 13,nvim_call_function,[
  "maparg",
  [
    "<bs>",
    "i"
  ]
]
12:33:03 pm DEBUG [transport] - response of nvim: 13,5ms,,null
12:33:03 pm DEBUG [transport] - nvim notification: nvim_call_atomic,[
  [
    [
      "nvim_command",
      [
        "inoremap <silent><expr> ( coc#_insert_key('request', 'iKA==0')"
      ]
    ],
    [
      "nvim_command",
      [
        "inoremap <silent><expr> ) coc#_insert_key('request', 'iKQ==0')"
      ]
    ],
    [
      "nvim_command",
      [
        "inoremap <silent><expr> [ coc#_insert_key('request', 'iWw==0')"
      ]
    ],
    [
      "nvim_command",
      [
        "inoremap <silent><expr> ] coc#_insert_key('request', 'iXQ==0')"
      ]
    ],
    [
      "nvim_command",
      [
        "inoremap <silent><expr> { coc#_insert_key('request', 'iew==0')"
      ]
    ],
    [
      "nvim_command",
      [
        "inoremap <silent><expr> } coc#_insert_key('request', 'ifQ==0')"
      ]
    ],
    [
      "nvim_command",
      [
        "inoremap <silent><expr> ' coc#_insert_key('request', 'iJw==0')"
      ]
    ],
    [
      "nvim_command",
      [
        "inoremap <silent><expr> \" coc#_insert_key('request', 'iIg==0')"
      ]
    ],
    [
      "nvim_command",
      [
        "inoremap <silent><expr> ` coc#_insert_key('request', 'iYA==0')"
      ]
    ],
    [
      "nvim_command",
      [
        "inoremap <silent><expr> <bs> coc#_insert_key('request', 'iPGJzPg==0')"
      ]
    ]
  ]
]
12:33:03 pm DEBUG [transport] - request to nvim: 14,nvim_get_option,[
  "runtimepath"
]
12:33:03 pm DEBUG [transport] - request to nvim: 15,nvim_call_function,[
  "has",
  [
    "pythonx"
  ]
]
12:33:03 pm DEBUG [transport] - request to nvim: 16,nvim_eval,[
  "&rtp"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "xnoremap <silent> <Plug>(coc-convert-snippet) :<C-U>call coc#rpc#notify('doKeymap', ['convert-snippet'])<cr>"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "inoremap <silent><expr> <Plug>(coc-snippets-expand) coc#_insert_key('request', 'snippets-expand', 1)"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "inoremap <silent><expr> <Plug>(coc-snippets-expand-jump) coc#_insert_key('request', 'snippets-expand-jump', 1)"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "vnoremap <silent> <Plug>(coc-snippets-select) :<C-U>call coc#rpc#notify('doKeymap', ['snippets-select'])<cr>"
]
12:33:03 pm DEBUG [transport] - request to nvim: 17,nvim_command,[
  "source /tmp/nvimp8qjvf/coc.nvim-26361/coc-26361.vim"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_set_var,[
  "coc_service_initialized",
  1
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_call_function,[
  "coc#util#do_autocmd",
  [
    "CocNvimInit"
  ]
]
12:33:03 pm DEBUG [transport] - request to nvim: 18,nvim_get_current_buf,[]
12:33:03 pm DEBUG [transport] - request to nvim: 19,nvim_eval,[
  "[bufnr(\"%\"),line(\".\")]"
]
12:33:03 pm DEBUG [transport] - response of nvim: 14,10ms,/home/eggeek/.config/nvim,/home/eggeek/.fzf,/home/eggeek/.local/share/nvim/plugged/fzf.vim,/home/eggeek/.local/share/nvim/plugged/nvim-colorizer.lua,/home/eggeek/.local/share/nvim/plugged/onedark.vim,/home/eggeek/.local/share/nvim/plugged/lightline.vim,/home/eggeek/.local/share/nvim/plugged/vim-sneak,/home/eggeek/.local/share/nvim/plugged/LeaderF,/home/eggeek/.local/share/nvim/plugged/indentLine,/home/eggeek/.local/share/nvim/plugged/vista.vim,/home/eggeek/.local/share/nvim/plugged/nerdcommenter,/home/eggeek/.local/share/nvim/plugged/vim-choosewin,/home/eggeek/.local/share/nvim/plugged/vim-matchup,/home/eggeek/.local/share/nvim/plugged/vimwiki,/home/eggeek/.local/share/nvim/plugged/vim-wakatime,/home/eggeek/.local/share/nvim/plugged/coc.nvim,/home/eggeek/.local/share/nvim/plugged/vim-textobj-user,/home/eggeek/.local/share/nvim/plugged/vim-textobj-indent,/home/eggeek/.local/share/nvim/plugged/vim-textobj-syntax,/home/eggeek/.local/share/nvim/plugged/vim-textobj-function,/home/eggeek/.local/share/nvim/plugged/vim-textobj-parameter,/home/eggeek/.local/share/nvim/plugged/vim-textobj-python,/home/eggeek/.local/share/nvim/plugged/vim-textobj-uri,/home/eggeek/.local/share/nvim/plugged/vim-minizinc,/home/eggeek/.local/share/nvim/plugged/vimspector,/home/eggeek/.local/share/nvim/plugged/vim-fugitive,/home/eggeek/.local/share/nvim/plugged/vim-lsp-cxx-highlight,/etc/xdg/nvim,/home/eggeek/.local/share/nvim/site,/home/eggeek/.local/share/flatpak/exports/share/nvim/site,/var/lib/flatpak/exports/share/nvim/site,/usr/local/share/nvim/site,/usr/share/nvim/site,/var/lib/snapd/desktop/nvim/site,/usr/share/nvim/runtime,/usr/share/nvim/runtime/pack/dist/opt/matchit,/var/lib/snapd/desktop/nvim/site/after,/usr/share/nvim/site/after,/usr/local/share/nvim/site/after,/var/lib/flatpak/exports/share/nvim/site/after,/home/eggeek/.local/share/flatpak/exports/share/nvim/site/after,/home/eggeek/.local/share/nvim/site/after,/etc/xdg/nvim/after,/home/eggeek/.config/nvim/after,/usr/share/vim/vimfiles,/home/eggeek/.local/share/nvim/plugged/indentLine/after,/home/eggeek/.local/share/nvim/plugged/vim-matchup/after,/home/eggeek/.local/share/nvim/plugged/vim-textobj-function/after,/home/eggeek/.local/share/nvim/plugged/vim-textobj-python/after,s:home,null
12:33:03 pm DEBUG [transport] - response of nvim: 15,9ms,1,null
12:33:03 pm DEBUG [transport] - response of nvim: 16,9ms,/home/eggeek/.config/nvim,/home/eggeek/.fzf,/home/eggeek/.local/share/nvim/plugged/fzf.vim,/home/eggeek/.local/share/nvim/plugged/nvim-colorizer.lua,/home/eggeek/.local/share/nvim/plugged/onedark.vim,/home/eggeek/.local/share/nvim/plugged/lightline.vim,/home/eggeek/.local/share/nvim/plugged/vim-sneak,/home/eggeek/.local/share/nvim/plugged/LeaderF,/home/eggeek/.local/share/nvim/plugged/indentLine,/home/eggeek/.local/share/nvim/plugged/vista.vim,/home/eggeek/.local/share/nvim/plugged/nerdcommenter,/home/eggeek/.local/share/nvim/plugged/vim-choosewin,/home/eggeek/.local/share/nvim/plugged/vim-matchup,/home/eggeek/.local/share/nvim/plugged/vimwiki,/home/eggeek/.local/share/nvim/plugged/vim-wakatime,/home/eggeek/.local/share/nvim/plugged/coc.nvim,/home/eggeek/.local/share/nvim/plugged/vim-textobj-user,/home/eggeek/.local/share/nvim/plugged/vim-textobj-indent,/home/eggeek/.local/share/nvim/plugged/vim-textobj-syntax,/home/eggeek/.local/share/nvim/plugged/vim-textobj-function,/home/eggeek/.local/share/nvim/plugged/vim-textobj-parameter,/home/eggeek/.local/share/nvim/plugged/vim-textobj-python,/home/eggeek/.local/share/nvim/plugged/vim-textobj-uri,/home/eggeek/.local/share/nvim/plugged/vim-minizinc,/home/eggeek/.local/share/nvim/plugged/vimspector,/home/eggeek/.local/share/nvim/plugged/vim-fugitive,/home/eggeek/.local/share/nvim/plugged/vim-lsp-cxx-highlight,/etc/xdg/nvim,/home/eggeek/.local/share/nvim/site,/home/eggeek/.local/share/flatpak/exports/share/nvim/site,/var/lib/flatpak/exports/share/nvim/site,/usr/local/share/nvim/site,/usr/share/nvim/site,/var/lib/snapd/desktop/nvim/site,/usr/share/nvim/runtime,/usr/share/nvim/runtime/pack/dist/opt/matchit,/var/lib/snapd/desktop/nvim/site/after,/usr/share/nvim/site/after,/usr/local/share/nvim/site/after,/var/lib/flatpak/exports/share/nvim/site/after,/home/eggeek/.local/share/flatpak/exports/share/nvim/site/after,/home/eggeek/.local/share/nvim/site/after,/etc/xdg/nvim/after,/home/eggeek/.config/nvim/after,/usr/share/vim/vimfiles,/home/eggeek/.local/share/nvim/plugged/indentLine/after,/home/eggeek/.local/share/nvim/plugged/vim-matchup/after,/home/eggeek/.local/share/nvim/plugged/vim-textobj-function/after,/home/eggeek/.local/share/nvim/plugged/vim-textobj-python/after,s:home,null
12:33:03 pm DEBUG [transport] - response of nvim: 17,7ms,null,null
12:33:03 pm DEBUG [transport] - receive notification: [
  "registNotification",
  [
    "cquery",
    "$cquery/publishSemanticHighlighting"
  ]
]
12:33:03 pm DEBUG [transport] - receive notification: [
  "registNotification",
  [
    "cquery",
    "$cquery/setInactiveRegions"
  ]
]
12:33:03 pm DEBUG [transport] - receive notification: [
  "registNotification",
  [
    "ccls",
    "$ccls/publishSemanticHighlight"
  ]
]
12:33:03 pm DEBUG [transport] - receive notification: [
  "registNotification",
  [
    "ccls",
    "$ccls/publishSkippedRanges"
  ]
]
12:33:03 pm DEBUG [transport] - response of nvim: 18,4ms,[nvim_buf_1],null
12:33:03 pm DEBUG [transport] - response of nvim: 19,1ms,[
  1,
  5
],null
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "autocmd BufNewFile,BufRead *.snippets setf snippets"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_command,[
  "execute 'noa set rtp+='.fnameescape('/home/eggeek/.config/coc/extensions/node_modules/coc-snippets')"
]
12:33:03 pm DEBUG [transport] - request to nvim: 20,nvim_call_function,[
  "lsp_cxx_hl#hl#notify_symbols",
  [
    1,
    [
      {
        "id": 0,
        "kind": "Class",
        "ranges": [
          {
            "start": {
              "line": 0,
              "character": 6
            },
            "end": {
              "line": 0,
              "character": 7
            }
          }
        ],
        "parentKind": "Unknown",
        "storage": "None"
      },
      {
        "id": 0,
        "kind": "Class",
        "ranges": [
          {
            "start": {
              "line": 2,
              "character": 4
            },
            "end": {
              "line": 2,
              "character": 5
            }
          }
        ],
        "parentKind": "Unknown",
        "storage": "None"
      },
      {
        "id": 0,
        "kind": "Class",
        "ranges": [
          {
            "start": {
              "line": 3,
              "character": 5
            },
            "end": {
              "line": 3,
              "character": 6
            }
          }
        ],
        "parentKind": "Unknown",
        "storage": "None"
      }
    ]
  ]
]
12:33:03 pm DEBUG [transport] - response of nvim: 20,8ms,0,null
12:33:03 pm DEBUG [transport] - nvim notification: nvim_call_atomic,[
  [
    [
      "nvim_set_var",
      [
        "coc_git_status",
        " master●"
      ]
    ],
    [
      "nvim_call_function",
      [
        "coc#util#do_autocmd",
        [
          "CocGitStatusChange"
        ]
      ]
    ]
  ]
]
12:33:03 pm DEBUG [transport] - request to nvim: 21,nvim_eval,[
  "get(g:, \"UltiSnipsSnippetDirectories\", [])"
]
12:33:03 pm DEBUG [transport] - response of nvim: 21,1ms,[],null
12:33:03 pm DEBUG [transport] - request to nvim: 22,nvim_get_var,[
  "snips_author"
]
12:33:03 pm DEBUG [transport] - response of nvim: 22,0ms,null,[
  1,
  "Key not found: snips_author"
]
12:33:03 pm DEBUG [transport] - request to nvim: 23,nvim_set_var,[
  "snips_author",
  ""
]
12:33:03 pm DEBUG [transport] - response of nvim: 23,1ms,null,null
12:33:03 pm DEBUG [transport] - request to nvim: 24,nvim_command,[
  "exe 'pyxfile '.fnameescape('/tmp/nvimp8qjvf/coc.nvim-26361/coc-ultisnips-VYJJHiNEhe.py')"
]
12:33:03 pm DEBUG [transport] - nvim notification: nvim_call_atomic,[
  [
    [
      "nvim_set_var",
      [
        "coc_status",
        " clangd: idle ⠴ loading snippets"
      ]
    ],
    [
      "nvim_call_function",
      [
        "coc#util#do_autocmd",
        [
          "CocStatusChange"
        ]
      ]
    ]
  ]
]
12:33:03 pm DEBUG [transport] - response of nvim: 24,60ms,null,null
12:33:03 pm DEBUG [transport] - nvim notification: nvim_call_atomic,[
  [
    [
      "nvim_set_var",
      [
        "coc_status",
        " clangd: idle"
      ]
    ],
    [
      "nvim_call_function",
      [
        "coc#util#do_autocmd",
        [
          "CocStatusChange"
        ]
      ]
    ]
  ]
]
12:33:03 pm DEBUG [transport] - request to nvim: 25,nvim_eval,[
  "[coc#util#check_refresh(1),mode(),bufnr(\"%\"),line(\".\"),getloclist(bufwinid(1),{'title':1})]"
]
12:33:03 pm DEBUG [transport] - response of nvim: 25,1ms,[
  1,
  "n",
  1,
  5,
  {
    "title": ""
  }
],null
12:33:03 pm DEBUG [transport] - request to nvim: 26,nvim_call_atomic,[
  [
    [
      "nvim_call_function",
      [
        "coc#util#set_buf_var",
        [
          1,
          "coc_diagnostic_info",
          {
            "error": 0,
            "warning": 0,
            "information": 0,
            "hint": 0,
            "lnums": [
              0,
              0,
              0,
              0
            ]
          }
        ]
      ]
    ],
    [
      "nvim_call_function",
      [
        "coc#util#do_autocmd",
        [
          "CocDiagnosticChange"
        ]
      ]
    ]
  ]
]
12:33:03 pm DEBUG [transport] - response of nvim: 26,6ms,[
  [
    0,
    0
  ],
  null
],null
12:33:03 pm DEBUG [transport] - request to nvim: 27,nvim_eval,[
  "[bufnr(\"%\"),coc#util#cursor(),&filetype,mode(),get(b:,\"coc_diagnostic_disable\",0),get(w:,\"float\",0)]"
]
12:33:03 pm DEBUG [transport] - response of nvim: 27,1ms,[
  1,
  [
    4,
    0
  ],
  "cpp",
  "n",
  0,
  0
],null
12:33:04 pm DEBUG [transport] - receive notification: [
  "highlight",
  []
]
12:33:04 pm DEBUG [transport] - request to nvim: 28,nvim_eval,[
  "[bufnr('%'),coc#util#cursor(),win_getid()]"
]
12:33:04 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "CursorHold",
    1
  ]
]
12:33:04 pm DEBUG [transport] - request to nvim: 29,nvim_eval,[
  "[bufnr('%'),coc#util#cursor(),win_getid()]"
]
12:33:04 pm DEBUG [transport] - response of nvim: 28,3ms,[
  1,
  [
    4,
    0
  ],
  1000
],null
12:33:04 pm DEBUG [transport] - response of nvim: 29,1ms,[
  1,
  [
    4,
    0
  ],
  1000
],null
12:33:04 pm DEBUG [transport] - nvim notification: nvim_call_function,[
  "coc#util#clear_highlights",
  [
    1000
  ]
]
12:33:04 pm DEBUG [transport] - nvim notification: nvim_buf_set_var,[
  "[nvim_buf_1]",
  "coc_current_function",
  "C"
]
12:33:04 pm DEBUG [transport] - nvim notification: nvim_call_function,[
  "coc#util#do_autocmd",
  [
    "CocStatusChange"
  ]
]
12:33:05 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "VimResized",
    174,
    24
  ]
]
12:33:06 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "FocusGained"
  ]
]
12:33:06 pm DEBUG [transport] - request to nvim: 30,nvim_get_current_buf,[]
12:33:06 pm DEBUG [transport] - request to nvim: 31,nvim_eval,[
  "[bufnr(\"%\"),line(\".\")]"
]
12:33:06 pm DEBUG [transport] - response of nvim: 30,5ms,[nvim_buf_1],null
12:33:06 pm DEBUG [transport] - response of nvim: 31,0ms,[
  1,
  5
],null
12:33:06 pm DEBUG [transport] - request to nvim: 32,nvim_get_current_win,[]
12:33:06 pm DEBUG [transport] - response of nvim: 32,1ms,[nvim_win_1000],null
12:33:08 pm DEBUG [transport] - receive notification: [
  "highlight",
  []
]
12:33:08 pm DEBUG [transport] - request to nvim: 33,nvim_eval,[
  "[bufnr('%'),coc#util#cursor(),win_getid()]"
]
12:33:08 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "CursorHold",
    1
  ]
]
12:33:08 pm DEBUG [transport] - request to nvim: 34,nvim_eval,[
  "[bufnr('%'),coc#util#cursor(),win_getid()]"
]
12:33:08 pm DEBUG [transport] - response of nvim: 33,2ms,[
  1,
  [
    4,
    0
  ],
  1000
],null
12:33:08 pm DEBUG [transport] - nvim notification: nvim_call_function,[
  "coc#util#clear_highlights",
  [
    1000
  ]
]
12:33:08 pm DEBUG [transport] - response of nvim: 34,2ms,[
  1,
  [
    4,
    0
  ],
  1000
],null
12:33:08 pm DEBUG [transport] - nvim notification: nvim_buf_set_var,[
  "[nvim_buf_1]",
  "coc_current_function",
  "C"
]
12:33:08 pm DEBUG [transport] - nvim notification: nvim_call_function,[
  "coc#util#do_autocmd",
  [
    "CocStatusChange"
  ]
]
12:33:18 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "FocusGained"
  ]
]
12:33:18 pm DEBUG [transport] - request to nvim: 35,nvim_get_current_buf,[]
12:33:18 pm DEBUG [transport] - request to nvim: 36,nvim_eval,[
  "[bufnr(\"%\"),line(\".\")]"
]
12:33:18 pm DEBUG [transport] - response of nvim: 35,4ms,[nvim_buf_1],null
12:33:18 pm DEBUG [transport] - response of nvim: 36,1ms,[
  1,
  5
],null
12:33:19 pm DEBUG [transport] - request to nvim: 37,nvim_get_current_win,[]
12:33:19 pm DEBUG [transport] - response of nvim: 37,2ms,[nvim_win_1000],null
12:33:19 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "CursorMoved",
    1,
    [
      4,
      1
    ]
  ]
]
12:33:19 pm DEBUG [transport] - request to nvim: 38,nvim_eval,[
  "[bufnr(\"%\"),coc#util#cursor(),&filetype,mode(),get(b:,\"coc_diagnostic_disable\",0),get(w:,\"float\",0)]"
]
12:33:19 pm DEBUG [transport] - response of nvim: 38,1ms,[
  1,
  [
    3,
    0
  ],
  "cpp",
  "n",
  0,
  0
],null
12:33:19 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "CursorMoved",
    1,
    [
      3,
      1
    ]
  ]
]
12:33:19 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "CursorMoved",
    1,
    [
      2,
      1
    ]
  ]
]
12:33:19 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "CursorMoved",
    1,
    [
      1,
      1
    ]
  ]
]
12:33:19 pm DEBUG [transport] - request to nvim: 39,nvim_eval,[
  "[bufnr(\"%\"),coc#util#cursor(),&filetype,mode(),get(b:,\"coc_diagnostic_disable\",0),get(w:,\"float\",0)]"
]
12:33:19 pm DEBUG [transport] - response of nvim: 39,1ms,[
  1,
  [
    0,
    0
  ],
  "cpp",
  "n",
  0,
  0
],null
12:33:20 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "CursorMoved",
    1,
    [
      2,
      1
    ]
  ]
]
12:33:20 pm DEBUG [transport] - request to nvim: 40,nvim_eval,[
  "[bufnr(\"%\"),coc#util#cursor(),&filetype,mode(),get(b:,\"coc_diagnostic_disable\",0),get(w:,\"float\",0)]"
]
12:33:20 pm DEBUG [transport] - response of nvim: 40,1ms,[
  1,
  [
    1,
    0
  ],
  "cpp",
  "n",
  0,
  0
],null
12:33:20 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "CursorMoved",
    1,
    [
      3,
      1
    ]
  ]
]
12:33:20 pm DEBUG [transport] - request to nvim: 41,nvim_eval,[
  "[bufnr(\"%\"),coc#util#cursor(),&filetype,mode(),get(b:,\"coc_diagnostic_disable\",0),get(w:,\"float\",0)]"
]
12:33:20 pm DEBUG [transport] - response of nvim: 41,1ms,[
  1,
  [
    2,
    0
  ],
  "cpp",
  "n",
  0,
  0
],null
12:33:20 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "CursorMoved",
    1,
    [
      4,
      1
    ]
  ]
]
12:33:20 pm DEBUG [transport] - request to nvim: 42,nvim_eval,[
  "[bufnr(\"%\"),coc#util#cursor(),&filetype,mode(),get(b:,\"coc_diagnostic_disable\",0),get(w:,\"float\",0)]"
]
12:33:20 pm DEBUG [transport] - response of nvim: 42,1ms,[
  1,
  [
    3,
    0
  ],
  "cpp",
  "n",
  0,
  0
],null
12:33:21 pm DEBUG [transport] - receive notification: [
  "nvim_buf_lines_event",
  [
    "[nvim_buf_1]",
    4,
    4,
    4,
    [
      "    "
    ],
    false
  ]
]
12:33:21 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "InsertEnter",
    1
  ]
]
12:33:21 pm DEBUG [transport] - nvim notification: nvim_call_function,[
  "coc#util#clear_highlights",
  []
]
12:33:21 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "CursorMovedI",
    1,
    [
      5,
      5
    ]
  ]
]
12:33:21 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "TextChangedI",
    1,
    {
      "lnum": 5,
      "col": 5,
      "changedtick": 4,
      "pre": "    "
    }
  ]
]
12:33:21 pm DEBUG [transport] - nvim notification: nvim_call_atomic,[
  [
    [
      "nvim_buf_set_var",
      [
        "[nvim_buf_1]",
        "coc_git_status",
        "  +1 "
      ]
    ],
    [
      "nvim_call_function",
      [
        "coc#util#do_autocmd",
        [
          "CocGitStatusChange"
        ]
      ]
    ]
  ]
]
12:33:21 pm DEBUG [transport] - request to nvim: 43,nvim_call_atomic,[
  [
    [
      "nvim_command",
      [
        "sign place 99 line=5 name=CocGitAdded buffer=1"
      ]
    ]
  ]
]
12:33:21 pm DEBUG [transport] - response of nvim: 43,1ms,[
  [
    null
  ],
  null
],null
12:33:21 pm DEBUG [transport] - nvim notification: nvim_call_atomic,[
  [
    [
      "nvim_set_var",
      [
        "coc_status",
        " clangd: file is queued"
      ]
    ],
    [
      "nvim_call_function",
      [
        "coc#util#do_autocmd",
        [
          "CocStatusChange"
        ]
      ]
    ]
  ]
]
12:33:21 pm DEBUG [transport] - receive notification: [
  "nvim_buf_lines_event",
  [
    "[nvim_buf_1]",
    5,
    4,
    5,
    [
      "   "
    ],
    false
  ]
]
12:33:21 pm DEBUG [transport] - receive notification: [
  "nvim_buf_lines_event",
  [
    "[nvim_buf_1]",
    6,
    4,
    5,
    [
      "  "
    ],
    false
  ]
]
12:33:21 pm DEBUG [transport] - receive notification: [
  "nvim_buf_lines_event",
  [
    "[nvim_buf_1]",
    7,
    4,
    5,
    [
      " "
    ],
    false
  ]
]
12:33:21 pm DEBUG [transport] - receive notification: [
  "nvim_buf_lines_event",
  [
    "[nvim_buf_1]",
    8,
    4,
    5,
    [
      ""
    ],
    false
  ]
]
12:33:21 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "InsertLeave",
    1
  ]
]
12:33:21 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "CursorMoved",
    1,
    [
      5,
      1
    ]
  ]
]
12:33:21 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "TextChanged",
    1,
    8
  ]
]
12:33:21 pm DEBUG [transport] - receive request: [
  1,
  "CocAutocmd",
  [
    "BufWritePre",
    1
  ]
]
12:33:21 pm DEBUG [transport] - request to nvim: 44,nvim_call_atomic,[
  [
    [
      "nvim_call_function",
      [
        "coc#util#unplace_signs",
        [
          1,
          [
            99
          ]
        ]
      ]
    ],
    [
      "nvim_command",
      [
        "sign place 99 line=5 name=CocGitAdded buffer=1"
      ]
    ]
  ]
]
12:33:21 pm DEBUG [transport] - response of nvim: 44,0ms,[
  [
    0,
    null
  ],
  null
],null
12:33:21 pm DEBUG [transport] - response of client: 1,64ms,undefined,false
12:33:21 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "BufWritePost",
    1
  ]
]
12:33:21 pm DEBUG [transport] - request to nvim: 45,nvim_call_function,[
  "execute",
  [
    "sign place buffer=1"
  ]
]
12:33:21 pm DEBUG [transport] - response of nvim: 45,1ms,
--- Signs ---
Signs for test.h:
    line=5  id=99  name=CocGitAdded  priority=10
,null
12:33:21 pm DEBUG [transport] - request to nvim: 46,nvim_call_function,[
  "coc#util#unplace_signs",
  [
    1,
    []
  ]
]
12:33:21 pm DEBUG [transport] - response of nvim: 46,0ms,0,null
12:33:21 pm DEBUG [transport] - request to nvim: 47,nvim_eval,[
  "[bufnr(\"%\"),coc#util#cursor(),&filetype,mode(),get(b:,\"coc_diagnostic_disable\",0),get(w:,\"float\",0)]"
]
12:33:21 pm DEBUG [transport] - response of nvim: 47,0ms,[
  1,
  [
    4,
    0
  ],
  "cpp",
  "n",
  0,
  0
],null
12:33:22 pm DEBUG [transport] - request to nvim: 48,nvim_eval,[
  "[coc#util#check_refresh(1),mode(),bufnr(\"%\"),line(\".\"),getloclist(bufwinid(1),{'title':1})]"
]
12:33:22 pm DEBUG [transport] - response of nvim: 48,1ms,[
  1,
  "n",
  1,
  5,
  {
    "title": ""
  }
],null
12:33:22 pm DEBUG [transport] - request to nvim: 49,nvim_call_atomic,[
  [
    [
      "nvim_call_function",
      [
        "coc#util#set_buf_var",
        [
          1,
          "coc_diagnostic_info",
          {
            "error": 0,
            "warning": 0,
            "information": 0,
            "hint": 0,
            "lnums": [
              0,
              0,
              0,
              0
            ]
          }
        ]
      ]
    ],
    [
      "nvim_call_function",
      [
        "coc#util#do_autocmd",
        [
          "CocDiagnosticChange"
        ]
      ]
    ]
  ]
]
12:33:22 pm DEBUG [transport] - response of nvim: 49,3ms,[
  [
    0,
    0
  ],
  null
],null
12:33:22 pm DEBUG [transport] - request to nvim: 50,nvim_eval,[
  "[bufnr(\"%\"),coc#util#cursor(),&filetype,mode(),get(b:,\"coc_diagnostic_disable\",0),get(w:,\"float\",0)]"
]
12:33:22 pm DEBUG [transport] - response of nvim: 50,1ms,[
  1,
  [
    4,
    0
  ],
  "cpp",
  "n",
  0,
  0
],null
12:33:22 pm DEBUG [transport] - request to nvim: 51,nvim_call_function,[
  "lsp_cxx_hl#hl#notify_symbols",
  [
    1,
    [
      {
        "id": 0,
        "kind": "Class",
        "ranges": [
          {
            "start": {
              "line": 0,
              "character": 6
            },
            "end": {
              "line": 0,
              "character": 7
            }
          }
        ],
        "parentKind": "Unknown",
        "storage": "None"
      },
      {
        "id": 0,
        "kind": "Class",
        "ranges": [
          {
            "start": {
              "line": 2,
              "character": 4
            },
            "end": {
              "line": 2,
              "character": 5
            }
          }
        ],
        "parentKind": "Unknown",
        "storage": "None"
      },
      {
        "id": 0,
        "kind": "Class",
        "ranges": [
          {
            "start": {
              "line": 3,
              "character": 5
            },
            "end": {
              "line": 3,
              "character": 6
            }
          }
        ],
        "parentKind": "Unknown",
        "storage": "None"
      }
    ]
  ]
]
12:33:22 pm DEBUG [transport] - response of nvim: 51,1ms,0,null
12:33:22 pm DEBUG [transport] - nvim notification: nvim_call_atomic,[
  [
    [
      "nvim_set_var",
      [
        "coc_status",
        " clangd: idle"
      ]
    ],
    [
      "nvim_call_function",
      [
        "coc#util#do_autocmd",
        [
          "CocStatusChange"
        ]
      ]
    ]
  ]
]
12:33:22 pm DEBUG [transport] - request to nvim: 52,nvim_eval,[
  "[coc#util#check_refresh(1),mode(),bufnr(\"%\"),line(\".\"),getloclist(bufwinid(1),{'title':1})]"
]
12:33:22 pm DEBUG [transport] - response of nvim: 52,1ms,[
  1,
  "n",
  1,
  5,
  {
    "title": ""
  }
],null
12:33:22 pm DEBUG [transport] - request to nvim: 53,nvim_call_atomic,[
  [
    [
      "nvim_call_function",
      [
        "coc#util#set_buf_var",
        [
          1,
          "coc_diagnostic_info",
          {
            "error": 0,
            "warning": 0,
            "information": 0,
            "hint": 0,
            "lnums": [
              0,
              0,
              0,
              0
            ]
          }
        ]
      ]
    ],
    [
      "nvim_call_function",
      [
        "coc#util#do_autocmd",
        [
          "CocDiagnosticChange"
        ]
      ]
    ]
  ]
]
12:33:22 pm DEBUG [transport] - response of nvim: 53,6ms,[
  [
    0,
    0
  ],
  null
],null
12:33:22 pm DEBUG [transport] - request to nvim: 54,nvim_eval,[
  "[bufnr(\"%\"),coc#util#cursor(),&filetype,mode(),get(b:,\"coc_diagnostic_disable\",0),get(w:,\"float\",0)]"
]
12:33:22 pm DEBUG [transport] - response of nvim: 54,1ms,[
  1,
  [
    4,
    0
  ],
  "cpp",
  "n",
  0,
  0
],null
12:33:22 pm DEBUG [transport] - receive notification: [
  "highlight",
  []
]
12:33:22 pm DEBUG [transport] - request to nvim: 55,nvim_eval,[
  "[bufnr('%'),coc#util#cursor(),win_getid()]"
]
12:33:22 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "CursorHold",
    1
  ]
]
12:33:22 pm DEBUG [transport] - request to nvim: 56,nvim_eval,[
  "[bufnr('%'),coc#util#cursor(),win_getid()]"
]
12:33:22 pm DEBUG [transport] - response of nvim: 55,2ms,[
  1,
  [
    4,
    0
  ],
  1000
],null
12:33:22 pm DEBUG [transport] - response of nvim: 56,1ms,[
  1,
  [
    4,
    0
  ],
  1000
],null
12:33:22 pm DEBUG [transport] - nvim notification: nvim_call_function,[
  "coc#util#clear_highlights",
  [
    1000
  ]
]
12:33:22 pm DEBUG [transport] - nvim notification: nvim_buf_set_var,[
  "[nvim_buf_1]",
  "coc_current_function",
  "C"
]
12:33:22 pm DEBUG [transport] - nvim notification: nvim_call_function,[
  "coc#util#do_autocmd",
  [
    "CocStatusChange"
  ]
]
12:33:32 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "FocusGained"
  ]
]
12:33:32 pm DEBUG [transport] - request to nvim: 57,nvim_get_current_buf,[]
12:33:32 pm DEBUG [transport] - request to nvim: 58,nvim_eval,[
  "[bufnr(\"%\"),line(\".\")]"
]
12:33:32 pm DEBUG [transport] - response of nvim: 57,4ms,[nvim_buf_1],null
12:33:32 pm DEBUG [transport] - response of nvim: 58,1ms,[
  1,
  5
],null
12:33:32 pm DEBUG [transport] - request to nvim: 59,nvim_get_current_win,[]
12:33:32 pm DEBUG [transport] - response of nvim: 59,1ms,[nvim_win_1000],null
12:33:33 pm DEBUG [transport] - receive notification: [
  "nvim_buf_detach_event",
  [
    "[nvim_buf_1]"
  ]
]
12:33:33 pm DEBUG [transport] - nvim notification: nvim_call_atomic,[
  [
    [
      "nvim_call_function",
      [
        "coc#util#set_buf_var",
        [
          1,
          "coc_diagnostic_info",
          {
            "error": 0,
            "warning": 0,
            "information": 0,
            "hint": 0,
            "lnums": [
              0,
              0,
              0,
              0
            ]
          }
        ]
      ]
    ],
    [
      "nvim_call_function",
      [
        "coc#util#do_autocmd",
        [
          "CocDiagnosticChange"
        ]
      ]
    ]
  ]
]
12:33:33 pm DEBUG [transport] - request to nvim: 60,nvim_buf_detach,[
  "[nvim_buf_1]"
]
12:33:33 pm DEBUG [transport] - receive request: [
  2,
  "CocAutocmd",
  [
    "BufUnload",
    1
  ]
]
12:33:33 pm DEBUG [transport] - response of client: 2,0ms,undefined,false
12:33:33 pm DEBUG [transport] - response of nvim: 60,2ms,true,null
12:33:33 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "FileType",
    "cpp",
    1
  ]
]
12:33:33 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "BufCreate",
    1
  ]
]
12:33:33 pm DEBUG [transport] - request to nvim: 61,nvim_call_function,[
  "coc#util#get_bufoptions",
  [
    1
  ]
]
12:33:33 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "BufEnter",
    1
  ]
]
12:33:33 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "BufWinEnter",
    1,
    1000
  ]
]
12:33:33 pm DEBUG [transport] - response of nvim: 61,4ms,{
  "changedtick": 11,
  "variables": {
    "coc_current_function": "C",
    "coc_git_status": "  +1 ",
    "coc_diagnostic_info": {
      "information": 0,
      "hint": 0,
      "lnums": [
        0,
        0,
        0,
        0
      ],
      "warning": 0,
      "error": 0
    }
  },
  "winid": 1000,
  "eol": 1,
  "previewwindow": false,
  "bufname": "test.h",
  "fullpath": "/home/eggeek/workspace/test/test.h",
  "filetype": "cpp",
  "buftype": "",
  "iskeyword": "@,48-57,_,192-255",
  "size": 43
},null
12:33:33 pm DEBUG [transport] - request to nvim: 62,nvim_buf_attach,[
  "[nvim_buf_1]",
  false,
  {}
]
12:33:33 pm DEBUG [transport] - receive notification: [
  "nvim_buf_changedtick_event",
  [
    "[nvim_buf_1]",
    11
  ]
]
12:33:33 pm DEBUG [transport] - response of nvim: 62,0ms,true,null
12:33:33 pm DEBUG [transport] - request to nvim: 63,nvim_buf_get_lines,[
  "[nvim_buf_1]",
  0,
  -1,
  true
]
12:33:33 pm DEBUG [transport] - response of nvim: 63,0ms,[
  "class C {",
  "  public:",
  "    C();",
  "    ~C();",
  "};"
],null
12:33:33 pm DEBUG [transport] - request to nvim: 64,nvim_get_current_buf,[]
12:33:33 pm DEBUG [transport] - response of nvim: 64,3ms,[nvim_buf_1],null
12:33:33 pm DEBUG [transport] - request to nvim: 65,nvim_call_function,[
  "lsp_cxx_hl#hl#notify_symbols",
  [
    1,
    [
      {
        "id": 0,
        "kind": "Class",
        "ranges": [
          {
            "start": {
              "line": 0,
              "character": 6
            },
            "end": {
              "line": 0,
              "character": 7
            }
          }
        ],
        "parentKind": "Unknown",
        "storage": "None"
      },
      {
        "id": 0,
        "kind": "Class",
        "ranges": [
          {
            "start": {
              "line": 2,
              "character": 4
            },
            "end": {
              "line": 2,
              "character": 5
            }
          }
        ],
        "parentKind": "Unknown",
        "storage": "None"
      },
      {
        "id": 0,
        "kind": "Class",
        "ranges": [
          {
            "start": {
              "line": 3,
              "character": 5
            },
            "end": {
              "line": 3,
              "character": 6
            }
          }
        ],
        "parentKind": "Unknown",
        "storage": "None"
      }
    ]
  ]
]
12:33:33 pm DEBUG [transport] - response of nvim: 65,3ms,0,null
12:33:33 pm DEBUG [transport] - nvim notification: nvim_call_atomic,[
  [
    [
      "nvim_buf_set_var",
      [
        "[nvim_buf_1]",
        "coc_git_status",
        ""
      ]
    ],
    [
      "nvim_call_function",
      [
        "coc#util#do_autocmd",
        [
          "CocGitStatusChange"
        ]
      ]
    ]
  ]
]
12:33:34 pm DEBUG [transport] - request to nvim: 66,nvim_eval,[
  "[coc#util#check_refresh(1),mode(),bufnr(\"%\"),line(\".\"),getloclist(bufwinid(1),{'title':1})]"
]
12:33:34 pm DEBUG [transport] - response of nvim: 66,1ms,[
  1,
  "n",
  1,
  5,
  {
    "title": ""
  }
],null
12:33:34 pm DEBUG [transport] - request to nvim: 67,nvim_call_atomic,[
  [
    [
      "nvim_call_function",
      [
        "coc#util#set_buf_var",
        [
          1,
          "coc_diagnostic_info",
          {
            "error": 0,
            "warning": 0,
            "information": 0,
            "hint": 0,
            "lnums": [
              0,
              0,
              0,
              0
            ]
          }
        ]
      ]
    ],
    [
      "nvim_call_function",
      [
        "coc#util#do_autocmd",
        [
          "CocDiagnosticChange"
        ]
      ]
    ]
  ]
]
12:33:34 pm DEBUG [transport] - response of nvim: 67,5ms,[
  [
    0,
    0
  ],
  null
],null
12:33:34 pm DEBUG [transport] - request to nvim: 68,nvim_eval,[
  "[bufnr(\"%\"),coc#util#cursor(),&filetype,mode(),get(b:,\"coc_diagnostic_disable\",0),get(w:,\"float\",0)]"
]
12:33:34 pm DEBUG [transport] - response of nvim: 68,1ms,[
  1,
  [
    4,
    0
  ],
  "cpp",
  "n",
  0,
  0
],null
12:33:34 pm DEBUG [transport] - receive notification: [
  "highlight",
  []
]
12:33:34 pm DEBUG [transport] - request to nvim: 69,nvim_eval,[
  "[bufnr('%'),coc#util#cursor(),win_getid()]"
]
12:33:34 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "CursorHold",
    1
  ]
]
12:33:34 pm DEBUG [transport] - request to nvim: 70,nvim_eval,[
  "[bufnr('%'),coc#util#cursor(),win_getid()]"
]
12:33:34 pm DEBUG [transport] - response of nvim: 69,2ms,[
  1,
  [
    4,
    0
  ],
  1000
],null
12:33:34 pm DEBUG [transport] - response of nvim: 70,1ms,[
  1,
  [
    4,
    0
  ],
  1000
],null
12:33:34 pm DEBUG [transport] - nvim notification: nvim_call_function,[
  "coc#util#clear_highlights",
  [
    1000
  ]
]
12:33:34 pm DEBUG [transport] - nvim notification: nvim_buf_set_var,[
  "[nvim_buf_1]",
  "coc_current_function",
  "C"
]
12:33:34 pm DEBUG [transport] - nvim notification: nvim_call_function,[
  "coc#util#do_autocmd",
  [
    "CocStatusChange"
  ]
]
12:33:36 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "FocusGained"
  ]
]
12:33:36 pm DEBUG [transport] - request to nvim: 71,nvim_get_current_buf,[]
12:33:36 pm DEBUG [transport] - request to nvim: 72,nvim_eval,[
  "[bufnr(\"%\"),line(\".\")]"
]
12:33:36 pm DEBUG [transport] - response of nvim: 71,7ms,[nvim_buf_1],null
12:33:36 pm DEBUG [transport] - response of nvim: 72,1ms,[
  1,
  5
],null
12:33:36 pm DEBUG [transport] - request to nvim: 73,nvim_get_current_win,[]
12:33:36 pm DEBUG [transport] - response of nvim: 73,1ms,[nvim_win_1000],null
12:33:40 pm DEBUG [transport] - receive notification: [
  "CocAutocmd",
  [
    "FocusGained"
  ]
]
12:33:40 pm DEBUG [transport] - request to nvim: 74,nvim_get_current_buf,[]
12:33:40 pm DEBUG [transport] - request to nvim: 75,nvim_eval,[
  "[bufnr(\"%\"),line(\".\")]"
]
12:33:40 pm DEBUG [transport] - response of nvim: 74,4ms,[nvim_buf_1],null
12:33:40 pm DEBUG [transport] - response of nvim: 75,1ms,[
  1,
  5
],null
12:33:40 pm DEBUG [transport] - request to nvim: 76,nvim_get_current_win,[]
12:33:40 pm DEBUG [transport] - response of nvim: 76,1ms,[nvim_win_1000],null
chemzqm commented 3 years ago

Reproduced on NVIM v0.4.4, but not NVIM v0.5.0

chemzqm commented 3 years ago

Fixed on latest coc-git