Skip to content

neoclide/coc-json

Folders and files

NameName
Last commit message
Last commit date
Apr 14, 2025
Sep 13, 2023
Apr 8, 2025
Sep 12, 2019
Dec 22, 2021
Feb 26, 2025
Feb 26, 2025
Oct 26, 2022
Apr 14, 2025
Apr 14, 2025
Sep 13, 2020

Repository files navigation

coc-json

Json language server extension for coc.nvim.

The server code is extracted from VSCode, which uses vscode-json-languageservice

For highlight of jsonc filetype, you may need jsonc.vim

Install

In your vim/neovim, run the following command:

:CocInstall coc-json

Features

Same as VSCode.

All features of vscode-json-languageservice are supported.

  • doCompletion for JSON properties and values based on the document's JSON schema.
  • doHover for values based on descriptions in the document's JSON schema.
  • Document Symbols for quick navigation to properties in the document.
  • Document Colors for showing color decorators on values representing colors.
  • Code Formatting supporting ranges and formatting the whole document.
  • Diagnostics (Validation) are pushed for all open documents
    • syntax errors
    • structural validation based on the document's JSON schema.

Commands

  • json.clearCache: Clear schema cache.
  • json.retryResolveSchema: Retry resolve schema of current buffer.
  • json.sort: Sort json document.

Configuration options

  • json.enable: Enable json server default: true
  • json.enableDefaultSchemas: Enable builtin schemas from https://raw.githubusercontent.com/SchemaStore/schemastore/master/src/api/json/catalog.json default: true
  • json.trace.server: default: "off" Valid options: ["off","messages","verbose"]
  • json.execArgv: default: []
  • json.validate.enable: Enable/disable JSON validation. default: true
  • json.format.enable: Enable format for json server default: true
  • json.format.keepLines: Keep all existing new lines when formatting. default: false
  • json.maxItemsComputed: The maximum number of outline symbols and folding regions computed (limited for performance reasons). default: 5000
  • json.schemaDownload.enable: When enabled, JSON schemas can be fetched from http and https locations. default: true
  • json.schemas: Schemas associations for json files default: []

FAQ

How to suppress error [json 521] [e] Comments are not permitted in JSON?

You can configure your vim to make that file with jsonc filetype to allow comment.

How to add custom schema definitions/properties?

You have two choices:

  • use $schema in your json.
  • create json schema file and then configure json.schemas in your coc-settings.json, check out
    "json.schemas": {

Quotes are hidden?

This is not caused by coc-json, you may checkout the conceallevel option.

License

MIT