CSpell: separate config file, and set up CLI

main
Isaiah Odhner 2024-01-28 23:14:39 -05:00
parent e8eb18b968
commit ef2393e79d
4 changed files with 3136 additions and 571 deletions

540
.vscode/settings.json vendored
View File

@ -42,544 +42,4 @@
"node_modules/**": true,
"package-lock.json": true,
},
// @TODO: is there a way to prune this spelling list? I didn't know about the comment directives for a while,
// and accepted a lot of strings for the language names, in languages that I don't understand,
// and even with partial strings when it was buggy with Unicode.
"cSpell.words": [
"Adlm",
"Æвзаг",
"Afaan",
"Afaraf",
"airb",
"ajeļ",
"Allaire",
"allowfullscreen",
"anypalette",
"apng",
"APNGs",
"appinstalled",
"Aragonés",
"Asụsụ",
"autosave",
"autosaves",
"autoupdating",
"Avañe'ẽ",
"Avaric",
"Ayisyen",
"Aymar",
"Azərbaycan",
"Bahasa",
"Bamanankan",
"Basa",
"beforeinstallprompt",
"bepis",
"Bgau",
"bgcolor",
"Bislama",
"Bizaad",
"BMPs",
"Bokmål",
"Bopo",
"Bosanski",
"Brasileiro",
"Bresenham",
"Bresenham's",
"Brezhoneg",
"Català",
"Český",
"Čeština",
"Chamoru",
"Chewa",
"Chichewa",
"Chinyanja",
"Chuang",
"classid",
"clipart",
"Clippy",
"clsid",
"cmaps",
"colorbox",
"contenteditable",
"Corel",
"Corsa",
"Corsu",
"Cpath",
"Crect",
"Csvg",
"ctype",
"Cue",
"Cuengh",
"Cueŋƅ",
"Cymraeg",
"Cyrl",
"d'Òc",
"Dansk",
"Darude",
"datetime",
"Davvis",
"Davvisámegiella",
"desaturated",
"Deutsch",
"Dhivehi",
"DIALOGEX",
"Dili",
"Divehi",
"divs",
"djvu",
"documentedly",
"Dorerin",
"draggable",
"Dzongkha",
"Eesti",
"egbe",
"ellipticals",
"endonym",
"eqeqeq",
"equivalize",
"ertical",
"esque",
"Euskara",
"Euskera",
"Eʋegbe",
"Excelsi",
"eyedrop",
"Fa'a",
"Faka",
"farbling",
"Faroese",
"fieldset",
"fieldsets",
"firebaseapp",
"firebaseio",
"Fiteny",
"fliph",
"flippable",
"flipv",
"floodfill",
"floodfilling",
"focusables",
"focusring",
"fontbox",
"Føroyskt",
"Fran",
"Français",
"Française",
"frowny",
"Frysk",
"Fsvg",
"fudgedness",
"Fulah",
"Fulfulde",
"fullscreen",
"Fwww",
"Gaeilge",
"Gaelg",
"Gagana",
"Gàidhlig",
"Gailck",
"Galego",
"gazemouse",
"ghostwhite",
"GIFs",
"Gikuyu",
"Glag",
"gons",
"grayscale",
"gridlines",
"Grischun",
"hackily",
"hacky",
"haha",
"Hanb",
"Hant",
"hcanvas",
"hctx",
"headmouse",
"hilight",
"Hiri",
"HKEY",
"homescreen",
"hostnames",
"Hrvatski",
"hslrgb",
"hsrgb",
"humbnail",
"Icci",
"icns",
"iconify",
"idhlig",
"IFDs",
"iframe",
"iframe's",
"iframes",
"IIFE",
"Ikinyarwanda",
"Ikirundi",
"Imgur",
"Inkscape",
"Interlingue",
"Iñupiatun",
"IPFS",
"isaiahodhner",
"isded",
"Íslenska",
"Italiano",
"Jasc",
"Jawa",
"Jazyk",
"Jezik",
"Język",
"jfif",
"jnordberg",
"JSGF",
"jspaint",
"jsperf",
"Junkbot",
"Kajin",
"Kalaallisut",
"Kalaallit",
"Kalba",
"Kanuri",
"Kernewek",
"keyframes",
"keyshortcuts",
"Khoj",
"Kichwa",
"Kieli",
"Kikongo",
"Kiluba",
"Kinyarwanda",
"Kiswahili",
"Kolour",
"Konami",
"Kreyòl",
"Krita",
"Kuanyama",
"Kurdî",
"Kwanyama",
"Latine",
"Latn",
"Latvie",
"Latviešu",
"Lenga",
"lerp",
"Lëtzebuergesch",
"Letzeburgesch",
"libgconf",
"libtess",
"Lietuvių",
"Limburgan",
"Limburgish",
"Limburgs",
"Linb",
"Lingála",
"liveweb",
"llpaper",
"localdomain",
"localforage",
"localizable",
"lookpath",
"lors",
"Lospec",
"lrgb",
"lsid",
"ltres",
"Luba",
"Luciferi",
"Luxembourgish",
"Macromedia",
"Malti",
"mediump",
"megiella",
"Melayu",
"mimg",
"minifig",
"mobipaint",
"monospace",
"Mopaint",
"Motu",
"mouseleave",
"Mousewheel",
"msapplication",
"MSIE",
"mspaint",
"multitools",
"multitouch",
"multiuser",
"murl",
"Naoero",
"Nbat",
"Ndebele",
"Ndonga",
"Nederlands",
"nesw",
"nevermind",
"Nkoo",
"nomine",
"Norsk",
"nostri",
"nowrap",
"numberofcolors",
"numpad",
"Nuosu",
"Nuosuhxop",
"nwse",
"Nyanja",
"Occitan",
"occluder",
"octree",
"Odhner",
"Oʻzbek",
"oleobject",
"onwriteend",
"Optikey",
"Oqaasii",
"orizontal",
"Oromo",
"Oromoo",
"Ossetian",
"Otjiherero",
"ovaloid",
"ovaloids",
"oviforms",
"Owambo",
"paintbucket",
"pako",
"palettized",
"paypal",
"PDFs",
"peggys",
"Phlp",
"Photoshop",
"pixeling",
"PLTE",
"PNGs",
"pointerenter",
"pointerleave",
"pointermove",
"pointerup",
"Polski",
"Polszczyzna",
"Português",
"postimg",
"proxied",
"pseudorandomly",
"psppalette",
"Pulaar",
"Pular",
"Pushto",
"qtres",
"rbaycan",
"redoable",
"reenable",
"Rege",
"reimplement",
"repurposable",
"rerender",
"rerendered",
"resizer",
"retarget",
"retargeted",
"rgba",
"RGBAs",
"rightclick",
"rk",
"Română",
"rotologo",
"roundrect",
"roundrects",
"royskt",
"rrect",
"RTLCSS",
"Rumantsch",
"Runa",
"Rundi",
"Sami",
"sandboxed",
"sandboxing",
"Sango",
"Sardu",
"Satana",
"Satanas",
"Scribus",
"scrollable",
"scrollbars",
"Sesotho",
"Setswana",
"shader's",
"Shft",
"Shona",
"Shqip",
"Simi",
"Sinhala",
"Skencil",
"sketchpalette",
"skeuomorphic",
"slenska",
"Slovenčina",
"Slovenščina",
"Slovenski",
"Slovenský",
"Soomaali",
"Soomaaliga",
"sorthweast",
"Sotho",
"soundcloud",
"spacebar",
"spraycan",
"spraypaint",
"spraypainting",
"STRINGTABLE",
"styl",
"stylable",
"submenu",
"submenus",
"subrepo",
"subwindows",
"Suomen",
"Svenska",
"Swati",
"tabbable",
"tabindex",
"Tahoma",
"tbody",
"tesselator",
"tessy",
"textareas",
"textbox",
"textboxes",
"themeable",
"themepack",
"throwie",
"Tiếng",
"tileable",
"timespan",
"tina",
"titlebar",
"Toçikī",
"togglable",
"tracedata",
"tracky",
"Tshivenḓa",
"Tsonga",
"Türkçe",
"Tvcy",
"tzebuergesch",
"ufeff",
"undecagons",
"undoable",
"undoables",
"undock",
"undocked",
"undos",
"unfocusing",
"uniquify",
"unmaximize",
"unminimize",
"unpremultiplied",
"untrusted",
"upiatun",
"UPNG",
"ustom",
"UTIF",
"Uyghur",
"Uyghurche",
"Vakaviti",
"Valencian",
"Valoda",
"vaporwave",
"Venda",
"Verdana",
"verts",
"Viacam",
"Việt",
"viewports",
"Vlaams",
"Volapük",
"Vosa",
"VSNs",
"Walon",
"Wayback",
"Webamp",
"webglcontextlost",
"webglcontextrestored",
"webp",
"Wikang",
"Winamp",
"",
"woah",
"Wollof",
"xfce",
"xfconf",
"Xitsonga",
"xtras",
"Yângâ",
"youtube",
"zbek",
"Zhōngwén",
"Zhuang",
"zoomable",
"zoomer",
"zyk",
"Ελληνικά",
"Авар",
"Аҧсуа",
"Аҧсшәа",
"Башҡорт",
"Беларуская",
"Български",
"Бызшәа",
"Език",
"Ирон",
"Јазик",
"Језик",
"Коми",
"Кыргыз",
"Кыргызча",
"Қазақ",
"Македонски",
"Мова",
"Монгол",
"Мотт",
"Нохчийн",
"Русский",
"Словѣньскъ",
"Српски",
"Татар",
"Теле",
"Тили",
"Тілі",
"Тоҷикӣ",
"Түркмен",
"Ўзбек",
"Українська",
"Чӑваш",
"Чӗлхи",
"Ѩзыкъ",
"Ӏарул",
"ქართული",
"Հայերեն",
"עברית",
"أۇزبېك",
"ئۇيغۇرچە",
"اردو",
"العربية",
"بهاس",
"پښتو",
"پنجابی",
"تاجیکی",
"سندھی",
"سنڌي",
"فارسی",
"كشميري",
"کوردی",
"ملايو",
"ትግርኛ",
"አማርኛ",
"ພາສາລາວ",
"ꦧꦱꦗꦮ",
"ᐃᓄᒃᑎᑐᑦ",
"ᐊᓂᔑᓈᐯᒧᐎᓐ",
"ᓀᐦᐃᔭᐍᐏᐣ"
]
}

542
cspell.json Normal file
View File

@ -0,0 +1,542 @@
{
// @TODO: is there a way to prune this spelling list? I didn't know about the comment directives for a while,
// and accepted a lot of strings for the language names, in languages that I don't understand,
// and even with partial strings when it was buggy with Unicode.
"words": [
"Adlm",
"Æвзаг",
"Afaan",
"Afaraf",
"airb",
"ajeļ",
"Allaire",
"allowfullscreen",
"anypalette",
"apng",
"APNGs",
"appinstalled",
"Aragonés",
"Asụsụ",
"autosave",
"autosaves",
"autoupdating",
"Avañe'ẽ",
"Avaric",
"Ayisyen",
"Aymar",
"Azərbaycan",
"Bahasa",
"Bamanankan",
"Basa",
"beforeinstallprompt",
"bepis",
"Bgau",
"bgcolor",
"Bislama",
"Bizaad",
"BMPs",
"Bokmål",
"Bopo",
"Bosanski",
"Brasileiro",
"Bresenham",
"Bresenham's",
"Brezhoneg",
"Català",
"Český",
"Čeština",
"Chamoru",
"Chewa",
"Chichewa",
"Chinyanja",
"Chuang",
"classid",
"clipart",
"Clippy",
"clsid",
"cmaps",
"colorbox",
"contenteditable",
"Corel",
"Corsa",
"Corsu",
"Cpath",
"Crect",
"Csvg",
"ctype",
"Cue",
"Cuengh",
"Cueŋƅ",
"Cymraeg",
"Cyrl",
"d'Òc",
"Dansk",
"Darude",
"datetime",
"Davvis",
"Davvisámegiella",
"desaturated",
"Deutsch",
"Dhivehi",
"DIALOGEX",
"Dili",
"Divehi",
"divs",
"djvu",
"documentedly",
"Dorerin",
"draggable",
"Dzongkha",
"Eesti",
"egbe",
"ellipticals",
"endonym",
"eqeqeq",
"equivalize",
"ertical",
"esque",
"Euskara",
"Euskera",
"Eʋegbe",
"Excelsi",
"eyedrop",
"Fa'a",
"Faka",
"farbling",
"Faroese",
"fieldset",
"fieldsets",
"firebaseapp",
"firebaseio",
"Fiteny",
"fliph",
"flippable",
"flipv",
"floodfill",
"floodfilling",
"focusables",
"focusring",
"fontbox",
"Føroyskt",
"Fran",
"Français",
"Française",
"frowny",
"Frysk",
"Fsvg",
"fudgedness",
"Fulah",
"Fulfulde",
"fullscreen",
"Fwww",
"Gaeilge",
"Gaelg",
"Gagana",
"Gàidhlig",
"Gailck",
"Galego",
"gazemouse",
"ghostwhite",
"GIFs",
"Gikuyu",
"Glag",
"gons",
"grayscale",
"gridlines",
"Grischun",
"hackily",
"hacky",
"haha",
"Hanb",
"Hant",
"hcanvas",
"hctx",
"headmouse",
"hilight",
"Hiri",
"HKEY",
"homescreen",
"hostnames",
"Hrvatski",
"hslrgb",
"hsrgb",
"humbnail",
"Icci",
"icns",
"iconify",
"idhlig",
"IFDs",
"iframe",
"iframe's",
"iframes",
"IIFE",
"Ikinyarwanda",
"Ikirundi",
"Imgur",
"Inkscape",
"Interlingue",
"Iñupiatun",
"IPFS",
"isaiahodhner",
"isded",
"Íslenska",
"Italiano",
"Jasc",
"Jawa",
"Jazyk",
"Jezik",
"Język",
"jfif",
"jnordberg",
"JSGF",
"jspaint",
"jsperf",
"Junkbot",
"Kajin",
"Kalaallisut",
"Kalaallit",
"Kalba",
"Kanuri",
"Kernewek",
"keyframes",
"keyshortcuts",
"Khoj",
"Kichwa",
"Kieli",
"Kikongo",
"Kiluba",
"Kinyarwanda",
"Kiswahili",
"Kolour",
"Konami",
"Kreyòl",
"Krita",
"Kuanyama",
"Kurdî",
"Kwanyama",
"Latine",
"Latn",
"Latvie",
"Latviešu",
"Lenga",
"lerp",
"Lëtzebuergesch",
"Letzeburgesch",
"libgconf",
"libtess",
"Lietuvių",
"Limburgan",
"Limburgish",
"Limburgs",
"Linb",
"Lingála",
"liveweb",
"llpaper",
"localdomain",
"localforage",
"localizable",
"lookpath",
"lors",
"Lospec",
"lrgb",
"lsid",
"ltres",
"Luba",
"Luciferi",
"Luxembourgish",
"Macromedia",
"Malti",
"mediump",
"megiella",
"Melayu",
"mimg",
"minifig",
"mobipaint",
"monospace",
"Mopaint",
"Motu",
"mouseleave",
"Mousewheel",
"msapplication",
"MSIE",
"mspaint",
"multitools",
"multitouch",
"multiuser",
"murl",
"Naoero",
"Nbat",
"Ndebele",
"Ndonga",
"Nederlands",
"nesw",
"nevermind",
"Nkoo",
"nomine",
"Norsk",
"nostri",
"nowrap",
"numberofcolors",
"numpad",
"Nuosu",
"Nuosuhxop",
"nwse",
"Nyanja",
"Occitan",
"occluder",
"octree",
"Odhner",
"Oʻzbek",
"oleobject",
"onwriteend",
"Optikey",
"Oqaasii",
"orizontal",
"Oromo",
"Oromoo",
"Ossetian",
"Otjiherero",
"ovaloid",
"ovaloids",
"oviforms",
"Owambo",
"paintbucket",
"pako",
"palettized",
"paypal",
"PDFs",
"peggys",
"Phlp",
"Photoshop",
"pixeling",
"PLTE",
"PNGs",
"pointerenter",
"pointerleave",
"pointermove",
"pointerup",
"Polski",
"Polszczyzna",
"Português",
"postimg",
"proxied",
"pseudorandomly",
"psppalette",
"Pulaar",
"Pular",
"Pushto",
"qtres",
"rbaycan",
"redoable",
"reenable",
"Rege",
"reimplement",
"repurposable",
"rerender",
"rerendered",
"resizer",
"retarget",
"retargeted",
"rgba",
"RGBAs",
"rightclick",
"rk",
"Română",
"rotologo",
"roundrect",
"roundrects",
"royskt",
"rrect",
"RTLCSS",
"Rumantsch",
"Runa",
"Rundi",
"Sami",
"sandboxed",
"sandboxing",
"Sango",
"Sardu",
"Satana",
"Satanas",
"Scribus",
"scrollable",
"scrollbars",
"Sesotho",
"Setswana",
"shader's",
"Shft",
"Shona",
"Shqip",
"Simi",
"Sinhala",
"Skencil",
"sketchpalette",
"skeuomorphic",
"slenska",
"Slovenčina",
"Slovenščina",
"Slovenski",
"Slovenský",
"Soomaali",
"Soomaaliga",
"sorthweast",
"Sotho",
"soundcloud",
"spacebar",
"spraycan",
"spraypaint",
"spraypainting",
"STRINGTABLE",
"styl",
"stylable",
"submenu",
"submenus",
"subrepo",
"subwindows",
"Suomen",
"Svenska",
"Swati",
"tabbable",
"tabindex",
"Tahoma",
"tbody",
"tesselator",
"tessy",
"textareas",
"textbox",
"textboxes",
"themeable",
"themepack",
"throwie",
"Tiếng",
"tileable",
"timespan",
"tina",
"titlebar",
"Toçikī",
"togglable",
"tracedata",
"tracky",
"Tshivenḓa",
"Tsonga",
"Türkçe",
"Tvcy",
"tzebuergesch",
"ufeff",
"undecagons",
"undoable",
"undoables",
"undock",
"undocked",
"undos",
"unfocusing",
"uniquify",
"unmaximize",
"unminimize",
"unpremultiplied",
"untrusted",
"upiatun",
"UPNG",
"ustom",
"UTIF",
"Uyghur",
"Uyghurche",
"Vakaviti",
"Valencian",
"Valoda",
"vaporwave",
"Venda",
"Verdana",
"verts",
"Viacam",
"Việt",
"viewports",
"Vlaams",
"Volapük",
"Vosa",
"VSNs",
"Walon",
"Wayback",
"Webamp",
"webglcontextlost",
"webglcontextrestored",
"webp",
"Wikang",
"Winamp",
"",
"woah",
"Wollof",
"xfce",
"xfconf",
"Xitsonga",
"xtras",
"Yângâ",
"youtube",
"zbek",
"Zhōngwén",
"Zhuang",
"zoomable",
"zoomer",
"zyk",
"Ελληνικά",
"Авар",
"Аҧсуа",
"Аҧсшәа",
"Башҡорт",
"Беларуская",
"Български",
"Бызшәа",
"Език",
"Ирон",
"Јазик",
"Језик",
"Коми",
"Кыргыз",
"Кыргызча",
"Қазақ",
"Македонски",
"Мова",
"Монгол",
"Мотт",
"Нохчийн",
"Русский",
"Словѣньскъ",
"Српски",
"Татар",
"Теле",
"Тили",
"Тілі",
"Тоҷикӣ",
"Түркмен",
"Ўзбек",
"Українська",
"Чӑваш",
"Чӗлхи",
"Ѩзыкъ",
"Ӏарул",
"ქართული",
"Հայերեն",
"עברית",
"أۇزبېك",
"ئۇيغۇرچە",
"اردو",
"العربية",
"بهاس",
"پښتو",
"پنجابی",
"تاجیکی",
"سندھی",
"سنڌي",
"فارسی",
"كشميري",
"کوردی",
"ملايو",
"ትግርኛ",
"አማርኛ",
"ພາສາລາວ",
"ꦧꦱꦗꦮ",
"ᐃᓄᒃᑎᑐᑦ",
"ᐊᓂᔑᓈᐯᒧᐎᓐ",
"ᓀᐦᐃᔭᐍᐏᐣ"
]
}

2623
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -71,6 +71,7 @@
"@electron-forge/maker-squirrel": "^6.0.0-beta.65",
"@electron-forge/maker-zip": "^6.0.0-beta.65",
"concat-glob-cli": "^0.1.0",
"cspell-cli": "^8.3.0",
"cypress": "4.7.0",
"cypress-image-snapshot": "^4.0.1",
"electron": "^19.0.10",
@ -86,6 +87,7 @@
"electron:package": "electron-forge package",
"electron:make": "electron-forge make",
"electron:publish": "electron-forge publish",
"spellcheck": "cspell-cli lint .",
"lint": "eslint src/",
"lint-cat": "concat-glob-cli --files \"src/**/!(electron*).js\" --output concatenated-source.js && eslint --rule \"no-undef: error\" --rule \"no-unused-vars: error\" concatenated-source.js",
"lint-cat:NOTE": "Disable the eslint comment that disables ThisExpression to use this.",