Syntax highlighting JSON configuration reference

Inspect every generated configuration field, default value and range rule used by the preview and output serializers.

Syntax highlighting JSON configuration reference

Screenshots show the English interface; controls are available in your selected website language.

One configuration, three serializers

Every presentation control updates config.json. The preview and inline/CSS/Tailwind outputs consume this same configuration. The file tab is read-only: it is not a JSON editor or an import facility. Copy the file or keep it in the downloaded ZIP as a record of your settings. It does not contain the source code, so save that separately.

Load demo replaces source and settings with a complete presentation example, while keeping the selected output format. It also resets draft range inputs and the preview panel state. It is useful for discovering controls, but not an undo or restore operation.

Fields and defaults

FieldDefaultMeaning
languagejavascriptCanonical bundled language ID
themegithub-darkBundled theme ID
outputinlineinline, css or tailwind
highlight, focus, add, remove, collapse[]Inclusive source ranges, e.g. [[3,5],[8,8]]
highlightColor, focusColor#60a5faIndependent blue backgrounds
highlightOpacity, focusOpacity25Background opacity, 0–100
addColor, addOpacity#22c55e, 20Addition background
removeColor, removeOpacity#b91c1c, 30Deletion background
lineNumbersfalseShow the number gutter
lineNumbersStart1Display offset, integer 0–999999
lineNumberColor#888888Number gutter color
diffIndicatorstrueShow plus/minus markers
diffInGutterfalseReplace changed line numbers with markers
autolinkfalseMake supported URLs clickable
summary…Fold summary suffix, up to 80 characters

Range and output semantics

Ranges use one-based source positions and include both endpoints. Source position and displayed line number are different concepts. An empty range disables its effect. The UI normalizes reversed endpoints; invalid text produces a visible validation error rather than silently selecting an unrelated line.

There is no comment-directive parser. Text such as [tl! focus] stays ordinary source text. Configure effects through controls, then inspect the JSON rather than modifying code comments. The schema describes the current application, not a published remote highlighting API.

Use HTML export to obtain styled output. To reproduce a configuration manually in another session, reopen the tool, restore your source and apply the saved settings through the controls. Automatic JSON import and session restoration are not implemented.

Open the code highlighter · All guides · Articles and comparisons