Function: js-json-mode

js-json-mode is an autoloaded, interactive and byte-compiled function defined in js.el.gz.

Signature

(js-json-mode)

Documentation

Major mode derived from prog-mode by define-derived-mode.

It inherits all of the parent's attributes, but has its own keymap, abbrev table and syntax table:

  js-json-mode-map, js-json-mode-abbrev-table and
js-mode-syntax-table

which more-or-less shadow prog-mode's corresponding tables.

In addition to any hooks its parent mode might have run, this mode runs the hook js-json-mode-hook, as the final or penultimate step during initialization.

Probably introduced at or before Emacs version 29.1.

Key Bindings

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/js.el.gz
;;;###autoload
(define-derived-mode js-json-mode prog-mode "JSON"
  :syntax-table js-mode-syntax-table
  (js--mode-setup) ;Reuse most of `js-mode', but not as parent (bug#67463).
  (setq-local js-enabled-frameworks nil)
  (setq-local editorconfig-indent-size-vars '(js-indent-level))
  ;; Speed up `syntax-ppss': JSON files can be big but can't hold
  ;; regexp matchers nor #! thingies (and `js-enabled-frameworks' is nil).
  (setq-local syntax-propertize-function #'ignore))