yomichan/ext/data/schemas/options-schema.json
2021-05-01 12:23:39 -04:00

1131 lines
63 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"required": [
"version",
"profiles",
"profileCurrent",
"global"
],
"properties": {
"version": {
"type": "integer",
"minimum": 0,
"default": 0
},
"profiles": {
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"required": [
"name",
"conditionGroups",
"options"
],
"properties": {
"name": {
"type": "string",
"default": "Default"
},
"conditionGroups": {
"type": "array",
"items": {
"type": "object",
"required": [
"conditions"
],
"properties": {
"conditions": {
"type": "array",
"items": {
"type": "object",
"required": [
"type",
"operator",
"value"
],
"properties": {
"type": {
"type": "string"
},
"operator": {
"type": "string"
},
"value": {}
}
}
}
}
}
},
"options": {
"type": "object",
"required": [
"general",
"popupWindow",
"audio",
"scanning",
"translation",
"dictionaries",
"parsing",
"anki",
"sentenceParsing",
"inputs",
"clipboard"
],
"properties": {
"general": {
"type": "object",
"required": [
"enable",
"resultOutputMode",
"debugInfo",
"maxResults",
"showAdvanced",
"popupDisplayMode",
"popupWidth",
"popupHeight",
"popupHorizontalOffset",
"popupVerticalOffset",
"popupHorizontalOffset2",
"popupVerticalOffset2",
"popupHorizontalTextPosition",
"popupVerticalTextPosition",
"popupScalingFactor",
"popupScaleRelativeToPageZoom",
"popupScaleRelativeToVisualViewport",
"showGuide",
"compactTags",
"glossaryLayoutMode",
"mainDictionary",
"popupTheme",
"popupOuterTheme",
"customPopupCss",
"customPopupOuterCss",
"enableWanakana",
"showPitchAccentDownstepNotation",
"showPitchAccentPositionNotation",
"showPitchAccentGraph",
"showIframePopupsInRootFrame",
"useSecurePopupFrameUrl",
"usePopupShadowDom",
"usePopupWindow",
"popupCurrentIndicatorMode",
"popupActionBarVisibility",
"popupActionBarLocation",
"frequencyDisplayMode",
"termDisplayMode"
],
"properties": {
"enable": {
"type": "boolean",
"default": true
},
"resultOutputMode": {
"type": "string",
"enum": ["group", "merge", "split"],
"default": "group"
},
"debugInfo": {
"type": "boolean",
"default": false
},
"maxResults": {
"type": "integer",
"minimum": 1,
"default": 32
},
"showAdvanced": {
"type": "boolean",
"default": false
},
"popupDisplayMode": {
"type": "string",
"enum": ["default", "full-width"],
"default": "default"
},
"popupWidth": {
"type": "number",
"minimum": 0,
"default": 400
},
"popupHeight": {
"type": "number",
"minimum": 0,
"default": 250
},
"popupHorizontalOffset": {
"type": "number",
"default": 0
},
"popupVerticalOffset": {
"type": "number",
"default": 10
},
"popupHorizontalOffset2": {
"type": "number",
"default": 10
},
"popupVerticalOffset2": {
"type": "number",
"default": 0
},
"popupHorizontalTextPosition": {
"type": "string",
"enum": ["below", "above"],
"default": "below"
},
"popupVerticalTextPosition": {
"type": "string",
"enum": ["default", "before", "after", "left", "right"],
"default": "before"
},
"popupScalingFactor": {
"type": "number",
"default": 1
},
"popupScaleRelativeToPageZoom": {
"type": "boolean",
"default": false
},
"popupScaleRelativeToVisualViewport": {
"type": "boolean",
"default": true
},
"showGuide": {
"type": "boolean",
"default": true
},
"compactTags": {
"type": "boolean",
"default": false
},
"glossaryLayoutMode": {
"type": "string",
"enum": ["default", "compact"],
"default": "default"
},
"mainDictionary": {
"type": "string"
},
"popupTheme": {
"type": "string",
"enum": ["default", "dark"],
"default": "default"
},
"popupOuterTheme": {
"type": "string",
"enum": ["default", "dark", "auto"],
"default": "default"
},
"customPopupCss": {
"type": "string",
"default": ""
},
"customPopupOuterCss": {
"type": "string",
"default": ""
},
"enableWanakana": {
"type": "boolean",
"default": true
},
"showPitchAccentDownstepNotation": {
"type": "boolean",
"default": true
},
"showPitchAccentPositionNotation": {
"type": "boolean",
"default": true
},
"showPitchAccentGraph": {
"type": "boolean",
"default": false
},
"showIframePopupsInRootFrame": {
"type": "boolean",
"default": true
},
"useSecurePopupFrameUrl": {
"type": "boolean",
"default": true
},
"usePopupShadowDom": {
"type": "boolean",
"default": true
},
"usePopupWindow": {
"type": "boolean",
"default": false
},
"popupCurrentIndicatorMode": {
"type": "string",
"enum": ["none", "asterisk", "triangle", "bar-left", "bar-right", "dot-left", "dot-right"],
"default": "triangle"
},
"popupActionBarVisibility": {
"type": "string",
"enum": ["auto", "always"],
"default": "auto"
},
"popupActionBarLocation": {
"type": "string",
"enum": ["left", "right", "top", "bottom"],
"default": "top"
},
"frequencyDisplayMode": {
"type": "string",
"enum": ["tags", "tags-grouped", "split-tags", "split-tags-grouped", "inline-list", "list"],
"default": "split-tags-grouped"
},
"termDisplayMode": {
"type": "string",
"enum": ["ruby", "ruby-and-reading", "term-and-reading"],
"default": "ruby"
}
}
},
"popupWindow": {
"type": "object",
"required": [
"width",
"height",
"left",
"top",
"useLeft",
"useTop",
"windowType",
"windowState"
],
"properties": {
"width": {
"type": "integer",
"minimum": 0,
"default": 400
},
"height": {
"type": "integer",
"minimum": 0,
"default": 250
},
"left": {
"type": "integer",
"default": 0
},
"top": {
"type": "integer",
"default": 0
},
"useLeft": {
"type": "boolean",
"default": false
},
"useTop": {
"type": "boolean",
"default": false
},
"windowType": {
"type": "string",
"enum": ["normal", "popup"],
"default": "popup"
},
"windowState": {
"type": "string",
"enum": ["normal", "maximized", "fullscreen"],
"default": "normal"
}
}
},
"audio": {
"type": "object",
"required": [
"enabled",
"sources",
"volume",
"autoPlay",
"customSourceUrl",
"customSourceType",
"textToSpeechVoice"
],
"properties": {
"enabled": {
"type": "boolean",
"default": true
},
"sources": {
"type": "array",
"items": {
"type": "string",
"enum": [
"jpod101",
"jpod101-alternate",
"jisho",
"text-to-speech",
"text-to-speech-reading",
"custom"
],
"default": "jpod101"
},
"default": [
"jpod101"
]
},
"volume": {
"type": "number",
"minimum": 0,
"maximum": 100,
"default": 100
},
"autoPlay": {
"type": "boolean",
"default": false
},
"customSourceUrl": {
"type": "string",
"default": ""
},
"customSourceType": {
"type": "string",
"enum": ["audio", "json"],
"default": "audio"
},
"textToSpeechVoice": {
"type": "string",
"default": ""
}
}
},
"scanning": {
"type": "object",
"required": [
"inputs",
"preventMiddleMouse",
"touchInputEnabled",
"pointerEventsEnabled",
"selectText",
"alphanumeric",
"autoHideResults",
"delay",
"hideDelay",
"length",
"deepDomScan",
"popupNestingMaxDepth",
"enablePopupSearch",
"enableOnPopupExpressions",
"enableOnSearchPage",
"enableSearchTags",
"layoutAwareScan"
],
"properties": {
"inputs": {
"type": "array",
"default": [
{
"include": "shift",
"exclude": "mouse0",
"types": {
"mouse": true,
"touch": false,
"pen": false
},
"options": {
"showAdvanced": false,
"searchTerms": true,
"searchKanji": true,
"scanOnTouchMove": true,
"scanOnPenHover": true,
"scanOnPenPress": true,
"scanOnPenRelease": false,
"preventTouchScrolling": false
}
},
{
"include": "",
"exclude": "",
"types": {
"mouse": false,
"touch": true,
"pen": true
},
"options": {
"showAdvanced": false,
"searchTerms": true,
"searchKanji": true,
"scanOnTouchMove": true,
"scanOnPenHover": true,
"scanOnPenPress": true,
"scanOnPenRelease": false,
"preventTouchScrolling": true
}
}
],
"items": {
"required": [
"include",
"exclude",
"types",
"options"
],
"properties": {
"include": {
"type": "string",
"default": "shift"
},
"exclude": {
"type": "string",
"default": ""
},
"types": {
"type": "object",
"required": [
"mouse",
"touch",
"pen"
],
"properties": {
"mouse": {
"type": "boolean",
"default": true
},
"touch": {
"type": "boolean",
"default": true
},
"pen": {
"type": "boolean",
"default": true
}
}
},
"options": {
"type": "object",
"required": [
"showAdvanced",
"searchTerms",
"searchKanji",
"scanOnTouchMove",
"scanOnPenHover",
"scanOnPenPress",
"scanOnPenRelease",
"preventTouchScrolling"
],
"properties": {
"showAdvanced": {
"type": "boolean",
"default": false
},
"searchTerms": {
"type": "boolean",
"default": true
},
"searchKanji": {
"type": "boolean",
"default": true
},
"scanOnTouchMove": {
"type": "boolean",
"default": true
},
"scanOnPenHover": {
"type": "boolean",
"default": true
},
"scanOnPenPress": {
"type": "boolean",
"default": true
},
"scanOnPenRelease": {
"type": "boolean",
"default": false
},
"preventTouchScrolling": {
"type": "boolean",
"default": true
}
}
}
}
}
},
"preventMiddleMouse": {
"type": "object",
"required": [
"onWebPages",
"onPopupPages",
"onSearchPages",
"onSearchQuery"
],
"properties": {
"onWebPages": {
"type": "boolean",
"default": false
},
"onPopupPages": {
"type": "boolean",
"default": false
},
"onSearchPages": {
"type": "boolean",
"default": false
},
"onSearchQuery": {
"type": "boolean",
"default": false
}
}
},
"touchInputEnabled": {
"type": "boolean",
"default": true
},
"pointerEventsEnabled": {
"type": "boolean",
"default": false
},
"selectText": {
"type": "boolean",
"default": true
},
"alphanumeric": {
"type": "boolean",
"default": true
},
"autoHideResults": {
"type": "boolean",
"default": false
},
"delay": {
"type": "number",
"minimum": 0,
"default": 20
},
"hideDelay": {
"type": "number",
"minimum": 0,
"default": 0
},
"length": {
"type": "integer",
"minimum": 1,
"default": 16
},
"deepDomScan": {
"type": "boolean",
"default": false
},
"popupNestingMaxDepth": {
"type": "integer",
"minimum": 0,
"default": 0
},
"enablePopupSearch": {
"type": "boolean",
"default": false
},
"enableOnPopupExpressions": {
"type": "boolean",
"default": false
},
"enableOnSearchPage": {
"type": "boolean",
"default": true
},
"enableSearchTags": {
"type": "boolean",
"default": false
},
"layoutAwareScan": {
"type": "boolean",
"default": false
}
}
},
"translation": {
"type": "object",
"required": [
"convertHalfWidthCharacters",
"convertNumericCharacters",
"convertAlphabeticCharacters",
"convertHiraganaToKatakana",
"convertKatakanaToHiragana",
"collapseEmphaticSequences",
"textReplacements"
],
"properties": {
"convertHalfWidthCharacters": {
"type": "string",
"enum": ["false", "true", "variant"],
"default": "false"
},
"convertNumericCharacters": {
"type": "string",
"enum": ["false", "true", "variant"],
"default": "false"
},
"convertAlphabeticCharacters": {
"type": "string",
"enum": ["false", "true", "variant"],
"default": "false"
},
"convertHiraganaToKatakana": {
"type": "string",
"enum": ["false", "true", "variant"],
"default": "false"
},
"convertKatakanaToHiragana": {
"type": "string",
"enum": ["false", "true", "variant"],
"default": "variant"
},
"collapseEmphaticSequences": {
"type": "string",
"enum": ["false", "true", "full"],
"default": "false"
},
"textReplacements": {
"type": "object",
"required": [
"searchOriginal",
"groups"
],
"properties": {
"searchOriginal": {
"type": "boolean",
"default": true
},
"groups": {
"type": "array",
"items": {
"type": "array",
"items": {
"required": [
"pattern",
"ignoreCase",
"replacement"
],
"properties": {
"pattern": {
"type": "string",
"default": ""
},
"ignoreCase": {
"type": "boolean",
"default": false
},
"replacement": {
"type": "string",
"default": ""
}
}
}
}
}
}
}
}
},
"dictionaries": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"priority",
"enabled",
"allowSecondarySearches",
"definitionsCollapsible"
],
"properties": {
"name": {
"type": "string",
"default": ""
},
"priority": {
"type": "number",
"default": 0
},
"enabled": {
"type": "boolean",
"default": true
},
"allowSecondarySearches": {
"type": "boolean",
"default": false
},
"definitionsCollapsible": {
"type": "string",
"enum": ["not-collapsible", "expanded", "collapsed"],
"default": "not-collapsible"
}
}
}
},
"parsing": {
"type": "object",
"required": [
"enableScanningParser",
"enableMecabParser",
"selectedParser",
"termSpacing",
"readingMode"
],
"properties": {
"enableScanningParser": {
"type": "boolean",
"default": true
},
"enableMecabParser": {
"type": "boolean",
"default": false
},
"selectedParser": {
"type": ["string", "null"],
"default": null
},
"termSpacing": {
"type": "boolean",
"default": true
},
"readingMode": {
"type": "string",
"enum": ["hiragana", "katakana", "romaji", "none"],
"default": "hiragana"
}
}
},
"anki": {
"type": "object",
"required": [
"enable",
"server",
"tags",
"screenshot",
"terms",
"kanji",
"duplicateScope",
"checkForDuplicates",
"fieldTemplates",
"suspendNewCards",
"displayTags"
],
"properties": {
"enable": {
"type": "boolean",
"default": false
},
"server": {
"type": "string",
"default": "http://127.0.0.1:8765"
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"default": [
"yomichan"
]
},
"screenshot": {
"type": "object",
"required": [
"format",
"quality"
],
"properties": {
"format": {
"type": "string",
"enum": ["png", "jpeg"],
"default": "png"
},
"quality": {
"type": "integer",
"minimum": 0,
"maximum": 100,
"default": 92
}
}
},
"terms": {
"type": "object",
"required": [
"deck",
"model",
"fields"
],
"properties": {
"deck": {
"type": "string",
"default": ""
},
"model": {
"type": "string",
"default": ""
},
"fields": {
"type": "object",
"additionalProperties": {
"type": "string",
"default": ""
}
}
}
},
"kanji": {
"type": "object",
"required": [
"deck",
"model",
"fields"
],
"properties": {
"deck": {
"type": "string",
"default": ""
},
"model": {
"type": "string",
"default": ""
},
"fields": {
"type": "object",
"additionalProperties": {
"type": "string",
"default": ""
}
}
}
},
"duplicateScope": {
"type": "string",
"default": "collection",
"enum": ["collection", "deck", "deck-root"]
},
"checkForDuplicates": {
"type": "boolean",
"default": true
},
"fieldTemplates": {
"type": ["string", "null"],
"default": null
},
"suspendNewCards": {
"type": "boolean",
"default": false
},
"displayTags": {
"type": "string",
"enum": ["never", "always", "non-standard"],
"default": "never"
}
}
},
"sentenceParsing": {
"type": "object",
"required": [
"scanExtent",
"enableTerminationCharacters",
"terminationCharacters"
],
"properties": {
"scanExtent": {
"type": "integer",
"minimum": 0,
"default": 200
},
"enableTerminationCharacters": {
"type": "boolean",
"default": true
},
"terminationCharacters": {
"type": "array",
"items": {
"type": "object",
"required": [
"enabled",
"character1",
"character2",
"includeCharacterAtStart",
"includeCharacterAtEnd"
],
"properties": {
"enabled": {
"type": "boolean",
"default": true
},
"character1": {
"type": "string",
"default": "\"",
"minLength": 1,
"maxLength": 1
},
"character2": {
"type": ["string", "null"],
"default": "\"",
"minLength": 1,
"maxLength": 1
},
"includeCharacterAtStart": {
"type": "boolean",
"default": false
},
"includeCharacterAtEnd": {
"type": "boolean",
"default": false
}
}
},
"default": [
{"enabled": true, "character1": "「", "character2": "」", "includeCharacterAtStart": false, "includeCharacterAtEnd": false},
{"enabled": true, "character1": "『", "character2": "』", "includeCharacterAtStart": false, "includeCharacterAtEnd": false},
{"enabled": true, "character1": "\"", "character2": "\"", "includeCharacterAtStart": false, "includeCharacterAtEnd": false},
{"enabled": true, "character1": "'", "character2": "'", "includeCharacterAtStart": false, "includeCharacterAtEnd": false},
{"enabled": true, "character1": ".", "character2": null, "includeCharacterAtStart": false, "includeCharacterAtEnd": true},
{"enabled": true, "character1": "!", "character2": null, "includeCharacterAtStart": false, "includeCharacterAtEnd": true},
{"enabled": true, "character1": "?", "character2": null, "includeCharacterAtStart": false, "includeCharacterAtEnd": true},
{"enabled": true, "character1": "", "character2": null, "includeCharacterAtStart": false, "includeCharacterAtEnd": true},
{"enabled": true, "character1": "。", "character2": null, "includeCharacterAtStart": false, "includeCharacterAtEnd": true},
{"enabled": true, "character1": "", "character2": null, "includeCharacterAtStart": false, "includeCharacterAtEnd": true},
{"enabled": true, "character1": "", "character2": null, "includeCharacterAtStart": false, "includeCharacterAtEnd": true},
{"enabled": true, "character1": "…", "character2": null, "includeCharacterAtStart": false, "includeCharacterAtEnd": true}
]
}
}
},
"inputs": {
"type": "object",
"required": [
"hotkeys"
],
"properties": {
"hotkeys": {
"type": "array",
"items": {
"type": "object",
"required": [
"action",
"argument",
"key",
"modifiers",
"scopes",
"enabled"
],
"properties": {
"action": {
"type": "string",
"default": ""
},
"argument": {
"type": "string",
"default": ""
},
"key": {
"type": ["string", "null"],
"default": null
},
"modifiers": {
"type": "array",
"items": {
"type": "string",
"enum": ["alt", "ctrl", "shift", "meta"],
"default": "alt"
}
},
"scopes": {
"type": "array",
"items": {
"type": "string",
"enum": ["popup", "search", "web"],
"default": "popup"
},
"default": ["popup", "search"]
},
"enabled": {
"type": "boolean",
"default": true
}
}
},
"default": [
{"action": "close", "argument": "", "key": "Escape", "modifiers": [], "scopes": ["popup"], "enabled": true},
{"action": "focusSearchBox", "argument": "", "key": "Escape", "modifiers": [], "scopes": ["search"], "enabled": true},
{"action": "previousEntry", "argument": "3", "key": "PageUp", "modifiers": ["alt"], "scopes": ["popup", "search"], "enabled": true},
{"action": "nextEntry", "argument": "3", "key": "PageDown", "modifiers": ["alt"], "scopes": ["popup", "search"], "enabled": true},
{"action": "lastEntry", "argument": "", "key": "End", "modifiers": ["alt"], "scopes": ["popup", "search"], "enabled": true},
{"action": "firstEntry", "argument": "", "key": "Home", "modifiers": ["alt"], "scopes": ["popup", "search"], "enabled": true},
{"action": "previousEntry", "argument": "1", "key": "ArrowUp", "modifiers": ["alt"], "scopes": ["popup", "search"], "enabled": true},
{"action": "nextEntry", "argument": "1", "key": "ArrowDown", "modifiers": ["alt"], "scopes": ["popup", "search"], "enabled": true},
{"action": "historyBackward", "argument": "", "key": "KeyB", "modifiers": ["alt"], "scopes": ["popup", "search"], "enabled": true},
{"action": "historyForward", "argument": "", "key": "KeyF", "modifiers": ["alt"], "scopes": ["popup", "search"], "enabled": true},
{"action": "addNoteKanji", "argument": "", "key": "KeyK", "modifiers": ["alt"], "scopes": ["popup", "search"], "enabled": true},
{"action": "addNoteTermKanji", "argument": "", "key": "KeyE", "modifiers": ["alt"], "scopes": ["popup", "search"], "enabled": true},
{"action": "addNoteTermKana", "argument": "", "key": "KeyR", "modifiers": ["alt"], "scopes": ["popup", "search"], "enabled": true},
{"action": "playAudio", "argument": "", "key": "KeyP", "modifiers": ["alt"], "scopes": ["popup", "search"], "enabled": true},
{"action": "viewNote", "argument": "", "key": "KeyV", "modifiers": ["alt"], "scopes": ["popup", "search"], "enabled": true},
{"action": "copyHostSelection", "argument": "", "key": "KeyC", "modifiers": ["ctrl"], "scopes": ["popup"], "enabled": true}
]
}
}
},
"clipboard": {
"type": "object",
"required": [
"enableBackgroundMonitor",
"enableSearchPageMonitor",
"autoSearchContent",
"maximumSearchLength"
],
"properties": {
"enableBackgroundMonitor": {
"type": "boolean",
"default": false
},
"enableSearchPageMonitor": {
"type": "boolean",
"default": false
},
"autoSearchContent": {
"type": "boolean",
"default": true
},
"maximumSearchLength": {
"type": "integer",
"default": 1000,
"minimum": 0
}
}
}
}
}
}
}
},
"profileCurrent": {
"type": "integer",
"minimum": 0,
"default": 0
},
"global": {
"type": "object",
"required": [
"database"
],
"properties": {
"database": {
"type": "object",
"required": [
"prefixWildcardsSupported"
],
"properties": {
"prefixWildcardsSupported": {
"type": "boolean",
"default": false
}
}
}
}
}
}
}