{
    "dictionaries": [
        "css",
        "github",
        "html",
        "names",
        "npm",
        "svg",
        "vscode",
        "networking-terms",
        "lorem-ipsum"
    ],
    "dictionaryDefinitions": [
        {
            "addWords": false,
            "name": "css",
            "path": "./dict/css.txt"
        },
        {
            "addWords": false,
            "name": "github",
            "path": "./dict/github.txt"
        },
        {
            "addWords": false,
            "name": "html",
            "path": "./dict/html.txt"
        },
        {
            "addWords": false,
            "name": "names",
            "path": "./dict/names.txt"
        },
        {
            "addWords": false,
            "name": "npm",
            "path": "./dict/npm.txt"
        },
        {
            "addWords": false,
            "name": "svg",
            "path": "./dict/svg.txt"
        },
        {
            "addWords": false,
            "name": "vscode",
            "path": "./dict/vscode.txt"
        }
    ],
    "files": [
        "**/{*,.*}/**/*"
    ],
    "ignorePaths": [
        "**/.git/**",
        "**/node_modules/**",
        "**/vscode-extension/**",
        "**/dist/**",
        "**/lib/**",
        "**/build/**",
        "**/public/**",
        "**/.vercel/**",
        "**/__snapshots__/**",
        "**/*.snap",
        "**/package-lock.json",
        "**/yarn.lock",
        "**/pnpm-lock.yaml",
        "**/bun.lockb",
        "**/*.css"
    ],
    "ignoreRegExpList": [
        "SpellCheckerDisable",
        "SpellCheckerIgnoreInDocSetting",
        "Urls",
        "Email",
        "RsaCert",
        "SshRsa",
        "Base64MultiLine",
        "Base64SingleLine",
        "CommitHash",
        "CommitHashLink",
        "CStyleHexValue",
        "CSSHexValue",
        "SHA",
        "HashStrings",
        "UnicodeRef",
        "UUID",
        "\\[.*\\]\\(.*#(.*)\\)",
        "@[a-zA-Z0-9-]+"
    ],
    "import": [
        "@cspell/dict-en_us/cspell-ext.json",
        "@cspell/dict-de-ch/cspell-ext.json",
        "@cspell/dict-typescript/cspell-ext.json",
        "@cspell/dict-html/cspell-ext.json",
        "@cspell/dict-html-symbol-entities/cspell-ext.json",
        "@cspell/dict-bash/cspell-ext.json",
        "@cspell/dict-npm/cspell-ext.json",
        "@cspell/dict-node/cspell-ext.json",
        "@cspell/dict-lorem-ipsum/cspell-ext.json",
        "@cspell/dict-css/cspell-ext.json",
        "@cspell/dict-markdown/cspell-ext.json",
        "@cspell/dict-software-terms/cspell-ext.json",
        "@cspell/dict-public-licenses/cspell-ext.json",
        "@cspell/dict-fullstack/cspell-ext.json",
        "@cspell/dict-companies/cspell-ext.json",
        "@cspell/dict-fr-fr/cspell-ext.json",
        "@cspell/dict-it-it/cspell-ext.json"
    ],
    "language": "en, de",
    "loadDefaultConfiguration": false,
    "maxNumberOfProblems": 10000,
    "numSuggestions": 10,
    "overrides": [
        {
            "caseSensitive": false,
            "filename": [
                "**/locales/**/*.json"
            ],
            "language": "en, de, fr, it"
        }
    ],
    "patterns": [
        {
            "name": "CommitHash",
            "pattern": "/\\b(?![a-f]+\\b)(?:0x)?[0-9a-f]{7,}\\b/gi"
        },
        {
            "name": "CommitHashLink",
            "pattern": "/\\[[0-9a-f]{7,}\\]/gi"
        },
        {
            "name": "CStyleHexValue",
            "pattern": "/\\b0x[0-9a-f_]+n?\\b/gi"
        },
        {
            "name": "CSSHexValue",
            "pattern": "/#[0-9a-f]{3,8}\\b/gi"
        },
        {
            "name": "Urls",
            "pattern": "/(?:https?|ftp):\\/\\/[^\\s\"]+/gi"
        },
        {
            "name": "HexValues",
            "pattern": "/(?:#[0-9a-f]{3,8})|(?:0x[0-9a-f]+)|(?:\\\\u[0-9a-f]{4})|(?:\\\\x\\{[0-9a-f]{4}\\})/gi"
        },
        {
            "name": "SpellCheckerDisable",
            "pattern": [
                "/(\\bc?spell(?:-?checker)?::?)\\s*disable(?!-line|-next)\\b(?!-)[\\s\\S]*?((?:\\1\\s*enable\\b)|$)/gi",
                "/^.*\\bc?spell(?:-?checker)?::?\\s*disable-line\\b.*/gim",
                "/\\bc?spell(?:-?checker)?::?\\s*disable-next\\b.*\\s\\s?.*/gi"
            ]
        },
        {
            "name": "PublicKey",
            "pattern": "/-{5}BEGIN\\s+((?:RSA\\s+)?PUBLIC\\s+KEY)[\\w=+\\-/=\\\\\\s]+?END\\s+\\1-{5}/g"
        },
        {
            "name": "RsaCert",
            "pattern": "/-{5}BEGIN\\s+(CERTIFICATE|(?:RSA\\s+)?(?:PRIVATE|PUBLIC)\\s+KEY)[\\w=+\\-/=\\\\\\s]+?END\\s+\\1-{5}/g"
        },
        {
            "name": "SshRsa",
            "pattern": "/ssh-rsa\\s+[a-z0-9/+]{28,}={0,3}(?![a-z0-9/+=])/gi"
        },
        {
            "name": "EscapeCharacters",
            "pattern": "/\\\\(?:[anrvtbf]|[xu][a-f0-9]+)/gi"
        },
        {
            "name": "Base64",
            "pattern": "/(?<![A-Za-z0-9/+])(?:[A-Za-z0-9/+]{40,})(?:\\s^\\s*[A-Za-z0-9/+]{40,})*(?:\\s^\\s*[A-Za-z0-9/+]+=*)?(?![A-Za-z0-9/+=])/gm"
        },
        {
            "name": "Base64SingleLine",
            "pattern": "/(?<=[^A-Za-z0-9/+_]|^)(?=[A-Za-z]{0,80}[0-9+/])(?=[A-Za-z0-9/+]{0,80}?[A-Z][a-z][A-Z])(?=[A-Za-z0-9/+]{0,80}?(?:[A-Z][0-9][A-Z]|[a-z][0-9][a-z]|[A-Z][0-9][a-z]|[a-z][0-9][A-Z]|[0-9][A-Za-z][0-9]))(?=[A-Za-z0-9/+]{0,80}?(?:[a-z]{3}|[A-Z]{3}))(?:[A-Za-z0-9/+]{40,})=*/gm"
        },
        {
            "name": "Base64MultiLine",
            "pattern": "/(?<![A-Za-z0-9/+])[\"']?(?:[A-Za-z0-9/+]{40,})[\"']?(?:\\s^\\s*[\"']?[A-Za-z0-9/+]{40,}[\"']?)+(?:\\s^\\s*[\"']?[A-Za-z0-9/+]+={0,3}[\"']?)?(?![A-Za-z0-9/+=])/gm"
        },
        {
            "name": "Email",
            "pattern": "/<?\\b[\\w.\\-+]{1,128}@\\w{1,63}(\\.\\w{1,63}){1,4}\\b>?/gi"
        },
        {
            "name": "SHA",
            "pattern": "/\\bsha\\d+-[a-z0-9+/]{25,}={0,3}/gi"
        },
        {
            "name": "HashStrings",
            "pattern": "/(?:\\b(?:sha\\d+|md5|base64|crypt|bcrypt|scrypt|security-token|assertion)[-,:$=]|#code[/])[-\\w/+%.]{25,}={0,3}(?:(['\"])\\s*\\+?\\s*\\1?[-\\w/+%.]+={0,3})*(?![-\\w/+=%.])/gi"
        },
        {
            "name": "UnicodeRef",
            "pattern": "/\\bU\\+[0-9a-f]{4,5}(?:-[0-9a-f]{4,5})?/gi"
        },
        {
            "name": "UUID",
            "pattern": "/\\b[0-9a-fx]{8}-[0-9a-fx]{4}-[0-9a-fx]{4}-[0-9a-fx]{4}-[0-9a-fx]{12}\\b/gi"
        },
        {
            "name": "href",
            "pattern": "/\\bhref\\s*=\\s*\".*?\"/gi"
        },
        {
            "name": "SpellCheckerDisableBlock",
            "pattern": "/(\\bc?spell(?:-?checker)?::?)\\s*disable(?!-line|-next)\\b(?!-)[\\s\\S]*?((?:\\1\\s*enable\\b)|$)/gi"
        },
        {
            "name": "SpellCheckerDisableLine",
            "pattern": "/^.*\\bc?spell(?:-?checker)?::?\\s*disable-line\\b.*/gim"
        },
        {
            "name": "SpellCheckerDisableNext",
            "pattern": "/\\bc?spell(?:-?checker)?::?\\s*disable-next\\b.*\\s\\s?.*/gi"
        },
        {
            "name": "SpellCheckerIgnoreInDocSetting",
            "pattern": "/\\bc?spell(?:-?checker)?::?\\s*(ignoreRegExp|word|ignore).*/gim"
        },
        {
            "name": "PhpHereDoc",
            "pattern": "/<<<['\"]?(\\w+)['\"]?[\\s\\S]+?^\\1;/gm"
        },
        {
            "name": "string",
            "pattern": "/(?:(['\"]).*?(?<![^\\\\]\\\\(\\\\\\\\)*)\\1)|(?:`[\\s\\S]*?(?<![^\\\\]\\\\(\\\\\\\\)*)`)/g"
        },
        {
            "name": "CStyleComment",
            "pattern": "/(?<!\\w:)(?:\\/\\/.*)|(?:\\/\\*[\\s\\S]*?\\*\\/)/g"
        },
        {
            "name": "Everything",
            "pattern": ".*"
        },
        {
            "name": "CSS-url",
            "pattern": "/\\burl\\((?:\"data:[^\"]*\"|'data:[^']*')\\)/gm"
        },
        {
            "name": "HTML-id",
            "pattern": "/\\bid=\"[^\"]*\"/gi"
        },
        {
            "name": "HTML-src",
            "pattern": "/\\bsrc=\"[^\"]*\"/gi"
        },
        {
            "name": "HTML-class",
            "pattern": "/\\bclass=\"[^\"]*\"/gi"
        },
        {
            "name": "HTML-IDREF-aria-activedescendant",
            "pattern": "/\\baria-activedescendant=\"[^\"]*\"/gi"
        },
        {
            "name": "HTML-IDREF-aria-controls",
            "pattern": "/\\baria-controls=\"[^\"]*\"/gi"
        },
        {
            "name": "HTML-IDREF-aria-describedby",
            "pattern": "/\\baria-describedby=\"[^\"]*\"/gi"
        },
        {
            "name": "HTML-IDREF-aria-details",
            "pattern": "/\\baria-details=\"[^\"]*\"/gi"
        },
        {
            "name": "HTML-IDREF-aria-errormessage",
            "pattern": "/\\baria-errormessage=\"[^\"]*\"/gi"
        },
        {
            "name": "HTML-IDREF-aria-flowto",
            "pattern": "/\\baria-flowto=\"[^\"]*\"/gi"
        },
        {
            "name": "HTML-IDREF-aria-labelledby",
            "pattern": "/\\baria-labelledby=\"[^\"]*\"/gi"
        },
        {
            "name": "HTML-IDREF-aria-owns",
            "pattern": "/\\baria-owns=\"[^\"]*\"/gi"
        },
        {
            "name": "HTML-IDREF-for",
            "pattern": "/\\bfor=\"[^\"]*\"/gi"
        },
        {
            "name": "HTML-symbol-entity",
            "description": "Matches on HTML symbols like `&clubs;`",
            "pattern": "/&[a-z]+;/gi"
        },
        {
            "name": "java-statement-import",
            "description": "Matches the import statement",
            "pattern": "/^\\s*import\\s+[\\w.]+/gm"
        },
        {
            "name": "java-member-function",
            "description": "Ignore member functions etc, these are checked by the compiler.",
            "pattern": "/(\\.\\w+)+(?=\\()/g"
        },
        {
            "name": "MARKDOWN-link-reference",
            "description": "Markdown reference link: `[This is a link][reference]`, matches `[reference]`",
            "pattern": "/(?<=\\])\\[[-\\w.`'\"*&;#@ ]+\\]/g"
        },
        {
            "name": "MARKDOWN-link-footer",
            "description": "Markdown referenced link: `[reference]: https://www.google.com`, matches the entire reference.",
            "pattern": "/\\[[-\\w.`'\"*&;#@ ]+\\]:( [^\\s]*)?/g"
        },
        {
            "name": "MARKDOWN-link",
            "description": "Markdown link: `[link text](link)`, matches `link`",
            "pattern": "/(?<=\\]\\()[^)\\s]+/g"
        },
        {
            "name": "MARKDOWN-anchor",
            "description": "Markdown Anchors: `<a id=\"my_link\"></a>`, matches `my_link`",
            "pattern": "/(?<=<a\\s+id=\")[^\"\\s]+/g"
        },
        {
            "name": "sql-hex-number",
            "pattern": "/0x[a-f0-9]*/gi"
        },
        {
            "name": "sql-unicode-string-prefix",
            "pattern": "/\\bN'/g"
        },
        {
            "name": "js-hex-number",
            "pattern": "/\\b0[xX][a-fA-F0-9]+n?\\b/g",
            "description": "JavaScript Hexadecimal Number including BigInt."
        },
        {
            "name": "js-hex-escape",
            "pattern": "/\\\\x[a-f0-9]{2}/gi",
            "description": "JavaScript String Hexadecimal Escape sequence."
        },
        {
            "name": "js-unicode-escape",
            "pattern": "/\\\\u[a-f0-9]{4}/gi",
            "description": "JavaScript String Unicode Escape sequence."
        },
        {
            "name": "js-regexp-flags",
            "pattern": "/\\/[dgimsuy]{1,7}\\b(?=(?:\\.flags\\b)|\\s*$|[;),])/g",
            "description": "JavaScript Match Regular Expression Flags"
        },
        {
            "name": "HTML-symbol-entity",
            "description": "Matches on HTML symbols like `&clubs;`",
            "pattern": {}
        },
        {
            "name": "MARKDOWN-link-reference",
            "description": "Markdown reference link: `[This is a link][reference]`, matches `[reference]`",
            "pattern": {}
        },
        {
            "name": "MARKDOWN-link-footer",
            "description": "Markdown referenced link: `[reference]: https://www.google.com`, matches the entire reference.",
            "pattern": {}
        },
        {
            "name": "MARKDOWN-link",
            "description": "Markdown link: `[link text](link)`, matches `link`",
            "pattern": {}
        },
        {
            "name": "MARKDOWN-anchor",
            "description": "Markdown Anchors: `<a id=\"my_link\"></a>`, matches `my_link`",
            "pattern": {}
        }
    ],
    "suggestionNumChanges": 3,
    "suggestionsTimeout": 500,
    "version": "0.2"
}