From f6827ca287f47554be953eb3a5cc71c0ea7d4b0f Mon Sep 17 00:00:00 2001 From: OnkarRuikar <87750369+OnkarRuikar@users.noreply.github.com> Date: Sat, 28 Sep 2024 12:09:01 +0530 Subject: [PATCH] fix(cspell): sort and uniq ignore lists --- .github/workflows/auto-cleanup-bot.yml | 2 + .github/workflows/pr-check_cspell_lists.yml | 33 + .github/workflows/spelling-check-bot.yml | 2 +- .lintstagedrc.js | 6 + .vscode/ignore-list.txt | 632 ++++++++++---------- .vscode/terms-abbreviations.txt | 2 +- scripts/sort_and_unique_file_lines.js | 50 ++ 7 files changed, 409 insertions(+), 318 deletions(-) create mode 100644 .github/workflows/pr-check_cspell_lists.yml create mode 100644 scripts/sort_and_unique_file_lines.js diff --git a/.github/workflows/auto-cleanup-bot.yml b/.github/workflows/auto-cleanup-bot.yml index 485f6b7a7207600..620555d775b641a 100644 --- a/.github/workflows/auto-cleanup-bot.yml +++ b/.github/workflows/auto-cleanup-bot.yml @@ -31,6 +31,8 @@ jobs: yarn content fix-flaws yarn fix:md yarn fix:fm + node scripts/sort_and_unique_file_lines.js .vscode/ignore-list.txt + node scripts/sort_and_unique_file_lines.js .vscode/terms-abbreviations.txt - name: Create PR with only fixable issues if: success() diff --git a/.github/workflows/pr-check_cspell_lists.yml b/.github/workflows/pr-check_cspell_lists.yml new file mode 100644 index 000000000000000..a40d41797fd9669 --- /dev/null +++ b/.github/workflows/pr-check_cspell_lists.yml @@ -0,0 +1,33 @@ +name: Check cSpell lists + +on: + pull_request: + branches: + - main + paths: + - .vscode/ignore-list.txt + - .vscode/terms-abbreviations.txt + +jobs: + docs: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + sparse-checkout-cone-mode: false + sparse-checkout: | + .vscode/ignore-list.txt + .vscode/terms-abbreviations.txt + .nvmrc + package.json + scripts/sort_and_unique_file_lines.js + + - name: Setup Node.js environment + uses: actions/setup-node@v4 + with: + node-version-file: ".nvmrc" + + - name: Check if cSpell word lists are in correct order + run: | + node scripts/sort_and_unique_file_lines.js .vscode/ignore-list.txt --check + node scripts/sort_and_unique_file_lines.js .vscode/terms-abbreviations.txt --check diff --git a/.github/workflows/spelling-check-bot.yml b/.github/workflows/spelling-check-bot.yml index cc04cb4776acc40..f8eacc8444f979d 100644 --- a/.github/workflows/spelling-check-bot.yml +++ b/.github/workflows/spelling-check-bot.yml @@ -44,7 +44,7 @@ jobs: env: GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} TITLE: Weekly spelling check - LABELS: reported by automation,good first issue + LABELS: reported by automation BODY: | Typos and unknown words: diff --git a/.lintstagedrc.js b/.lintstagedrc.js index 4204b0b0beb4f16..decfb9664873fbd 100644 --- a/.lintstagedrc.js +++ b/.lintstagedrc.js @@ -17,4 +17,10 @@ export default { `yarn filecheck ${filenames.join(" ")}`, ], "*": (filenames) => [`node scripts/log-url-issues.js`], + ".vscode/ignore-list.txt": (filenames) => [ + `node scripts/sort_and_unique_file_lines.js .vscode/ignore-list.txt`, + ], + ".vscode/terms-abbreviations.txt": (filenames) => [ + `node scripts/sort_and_unique_file_lines.js .vscode/terms-abbreviations.txt`, + ], }; diff --git a/.vscode/ignore-list.txt b/.vscode/ignore-list.txt index 8910def71fe49c5..80797e93d6c6a44 100644 --- a/.vscode/ignore-list.txt +++ b/.vscode/ignore-list.txt @@ -1,257 +1,19 @@ -aaabcc -aabaac -aacbbbcac -ACCEPTEDTOS -accname -adduser -adjtimescapheight -adjtimesexheight -adrianroselli -advertisementreceived -aggregatable -alastairc -alistapart -ALLOWFROM -alphanumerals -Animometer -Annonay -antialiasing -apacheconf -apachectl -ASCIIID -assetlinks -audiocontext -beforeinstallpromptevent -beforetoggle -belgin -blockable -brians -Browsersync -browsingtopics -bytestring -CACHEDIR -catchable -Caterina -characterboundsupdate -Cheatsheet -checkboard -checkmarks -clipboardchange -Codelab -collectability -collinearity -concatenator -contenido -contentlost -contentscripts -contentvisibilityautostatechange -controlbar -cookieless -cooluser -crashextensions -credentialled -crookedtimber -cssgridgarden -csstricks -Cubehelix -cubemaps -currentscreenchange -customstateset -cycletracker -davidwalsh -demuxing -Descripton -dropshow -enablei -Engish -Ethere -everytime -evilsite -examplestyles -Fairchild -fencedframe -fencedframeconfig -fencedframes -filetext -filterfunctions -Flagfox -forwidth -gattserverdisconnected -generatable -GETMATCHEDRULES -givenname -greenblue -greenzero -growshrink -harpercollins -highspeed -imagebad -imagegrid -infobox -infoboxes -infobox's -innertext -interarrival -ipados -jamiedoe -Jinping -Kobabe -lazyloaded -letmein -lightpurple -Lindenberg -linecaps -longwinded -loopstarted -lowdelay -macaron -Malala -mathit -maxplaybackrate -megastore -metastring -miplevel -Miroslav -Misparsed -modulepreloaded -montecarlo -mouseentry -multifactor -multimemory -mygroupmarker -mysampler -mystatename -navigables -nextslide -Nodepad -noteblocks -notrendered -Nowrapping -offsetted -ontextformatupdate -ontextupdate -pagereveal -pageswap -paintable -paintsize -papermakers -permissionspolicy -pipline -Platformer -playbackrate -popovertarget -popovertargetaction -precache -precached -precaches -precaching -preconnects -preloaders -premultiplication -prerenderingchange -prerenders -previousslide -pricelist -properities -pythonanywhere -pythonaware -rawupdate -readonlyinline -realpython -redblue -redyellow -redzero -requireinteraction -reselecting -Resizeable -resnapped -Ronaldo -rtctransform -samplepay -scanability -screenreaders -screenschange -seecompattable -selectchange -selectedness -Serpentina -shadowrootdelegatesfocus -shadowrootmode -shadowrootserializable -sharedmem -sharpyuv -shortlinks -shrinkwap -shrinkwrapping -sinkchange -smashingmagazine -Snapshotting -somestate -srihash -stackexchange -Stormys -Stratford -styleable -subformula -subformulas -subheaders -subpattern -subpopover -subproject -Subsentence -subsetting -subteam -subteams -sunsetting -supersets -swashoff -targettable -textformatupdate -textupdate -timeframe -truthyness -tunetheweb -tutsplus -underliner -underlyingly -usecase -useinbandfec -valuechange -viewbox -virtualkeyboardpolicy -webappmanifest -webbundle -webcodecs -webdav -webdesignerdepot -webidentity -webtransport -whitepoint -wisedog -workgroups -writingsuggestions -zeroblue -zeroyellow -zerozero -Amit -Scrimba -rvfc -Azarath -Tamaran AAAAAAABAAE AAAAD AAABAAEAEBAAA +aaabcc aaba +aabaac AABB +AABB's aabbcc aabbccdd -AABB's +aacbbbcac AAEC AAFEI AAGUID AAQAB aarch -Áaron abaac Ababa ABAQ @@ -300,10 +62,12 @@ accentlightesthighlight accentlightshadow accentregularhighlight accentregularshadow +ACCEPTEDTOS Accessibilità Accessibles accesskeys acclmtr +accname accountnum accu accumsan @@ -316,9 +80,7 @@ achromatopsia acknowl acknowled acodec -𝚊𝚌𝚘𝚜 acosh -𝚊𝚌𝚘𝚜𝚑 Acrosync ACSS activatable @@ -333,6 +95,7 @@ addressbar addsourcebuffer addstream addtrack +adduser Addy ADHD Adilah @@ -341,16 +104,19 @@ adipiscing adipisicing adipscing adjtimes +adjtimescapheight +adjtimesexheight Adlam adlm ADPCM +adrianroselli ADSR adtech +advertisementreceived AEDT aeio AEIOU aeiouy -ˈælfa Aenean AEST afes @@ -363,6 +129,7 @@ afterprint afterscriptexecute afunkydomainname agere +aggregatable aggregately Agnostify AGWG @@ -370,6 +137,7 @@ Ahom AIAAAA Akhgari ALAC +alastairc alaw albumicon Alem @@ -387,6 +155,7 @@ aliquid aliquip aliquyam alispivak +alistapart ality allbooks ALLCAPS @@ -394,10 +163,12 @@ Allons allowdirs allowdropevent allowevents +ALLOWFROM ALLPASS allsettled allsmallcaps Alman +alphanumerals alphatransparency ALPN alternatingbackground @@ -407,6 +178,7 @@ ambisonic Amet Amete Amiri +Amit Amit's amore Amorim @@ -420,10 +192,10 @@ analyser's analyzability anana Anand -André Andreas Andreessen Andrzej +André Anek angleminus ANGLETYPE @@ -435,7 +207,9 @@ animationend animationiteration animationstart animi +Animometer ANMF +Annonay annunaki anonid Anonymization @@ -445,11 +219,14 @@ anotherscript anothertarget Ansari Ansyari +antialiasing antitracking Anurag anyfunc anypage Anytown +apacheconf +apachectl Apapou APCA aperiam @@ -508,18 +285,18 @@ Arun Asana ASCAP ascendingly +ASCIIID Asclepias ASGI Ashita Ashlyn Ashok's -𝚊𝚜𝚒𝚗 asinh -𝚊𝚜𝚒𝚗𝚑 asintn ASLR asmo Assemblée +assetlinks associationlist associationlistitemkey associationlistitemvalue @@ -529,10 +306,8 @@ asuintn asynchrony asynciterator ATAG -𝚊𝚝𝚊𝚗 Atanassov atanh -𝚊𝚝𝚊𝚗𝚑 atexits atlasing Atmark @@ -545,6 +320,7 @@ Attributs Attrx auctor Audiocogs +audiocontext audioend Audiofile audioinput @@ -603,6 +379,7 @@ Axess AXQB Aylin Ayşe +Azarath Azeri AZERTY Aziz @@ -655,12 +432,15 @@ beforeend beforeevicted beforeinput beforeinstallprompt +beforeinstallpromptevent beforematch beforeprint beforescriptexecute +beforetoggle beforeunload beforexrselect Beihang +belgin belowbreve belowcircumflex belowcomma @@ -677,8 +457,6 @@ Bernouilli beststartupever Beverloo's Bezier -Bézier -Béziers bezje bfalse bfcache @@ -736,6 +514,7 @@ blit blitting blobconstructor Blobular +blockable blockified blockiness blocklists @@ -788,13 +567,13 @@ Boxrender boxtitle BPPV BPTC -ˈbraːˈvo braceless brah Brai braillelabel brailleroledescription bram +brians brickfield brighttext Broadcastchannel @@ -804,7 +583,9 @@ browserless Browsershots browserslistrc BROWSERSTACK +Browsersync browsertabbar +browsingtopics Bruant brucelindbloom BSAC @@ -843,11 +624,15 @@ byterange byteranges bytestream Bytestreams +bytestring +Bézier +Béziers caaaaaaandy caaandy caandy Cachable Cacheable +CACHEDIR CAFEBABE CAIND caitmuenster @@ -886,6 +671,8 @@ Cassini caststatus Català Catan +catchable +Caterina catfishhead catflap catfront @@ -898,7 +685,6 @@ CBDT CBJS CBOR cbrt -𝚌𝚋𝚛𝚝 ccall CCITT CCPA @@ -907,7 +693,6 @@ cdbbdbsbz CDLR cdylib Ceci -Célestes cellhighlight cellhighlighttext CELP @@ -921,6 +706,7 @@ Chakra Chakra's Chamakh changeme +characterboundsupdate characteristicvaluechanged characterset charat @@ -933,10 +719,13 @@ chatbox chatserver chbox chbx +Cheatsheet +checkboard checkedness checkiandj checkin checkj +checkmarks checkmenuitem Chiki childlist @@ -986,6 +775,7 @@ clienthello clientkey clig clike +clipboardchange Clippy clipspace cliptext @@ -996,8 +786,8 @@ cloneable closebutton closeme Cloudinary -Clóvis CLREQ +Clóvis CMAMBAAAAAA CMYK cndy @@ -1008,6 +798,7 @@ codebases Codecademy Codedread Codeinput +Codelab codementor CODEOWNERS codepaths @@ -1028,8 +819,10 @@ colex colexographical colindextext collapser +collectability Collectn collectstatic +collinearity Colomb colorbox colorchange @@ -1065,6 +858,7 @@ compositionend compositionstart compositionupdate CONCAT +concatenator Cond Conde Condei @@ -1091,22 +885,29 @@ consetetur Consolas constructio Containerless +contenido contentaccessible contentarea contentdelete Contentful +contentlost +contentscripts contenttypes +contentvisibilityautostatechange contentvisibilityautostatechanged contextlost contextrestored +controlbar controllerchange controlslist conubia convallis Convolutional cookiechange +cookieless coolexample coolmodule +cooluser Coprime copysign copywithin @@ -1115,9 +916,7 @@ CORB Corber CORSM Cortana -𝐜𝐨𝐬 COSE -𝚌𝚘𝚜𝚑 couleur countername Coursera @@ -1129,16 +928,18 @@ cpuworker cqmax cqmin Cras +crashextensions Cratchit crbug createpattern createreader createsuperuser +credentialled Credentialless -crédit creds cript Crockford +crookedtimber cros crossbrowser crossdomain @@ -1148,6 +949,7 @@ cryptokey CRYPTOMINING cryptosystem cryptosystems +crédit csbig Cscript cseuckr @@ -1170,6 +972,7 @@ csscomputed cssdb cssfontstack cssgrid +cssgridgarden cssgridlegacy csshiftjis cssinfo @@ -1182,6 +985,7 @@ cssremedy cssruleview csssubgrid csssyntax +csstricks cssvisual CSSWG CSSX @@ -1193,7 +997,9 @@ ctlr ctron ctrz ctypes +Cubehelix cubemap +cubemaps cubetexture cubilia cuechange @@ -1206,15 +1012,19 @@ Curlz curr currentcolor currententrychange +currentscreenchange cursus Curveto CUSEL customelements customshapes +customstateset CWND cwrap Cyberduck +cycletracker Cylon +Célestes DAAA daala dafont @@ -1246,6 +1056,7 @@ datetimeformat datetimes Datumizer davbrito +davidwalsh davidwalshblog dbbd DBFF @@ -1280,17 +1091,16 @@ delectus deleniti deleteoperator deleteproperty -ˈdeltɑ Demi -démonstration demozilla demultiplexing demux +demuxing Denicola Denicola's Deno -denormalized Deno's +denormalized deoptimize depreceted deprioritized @@ -1305,6 +1115,7 @@ Desaulniers descendingly descr descript +Descripton deserunt desinis Desproges @@ -1471,6 +1282,7 @@ Dreamweaver dropevent dropmarker dropshadow +dropshow droptarget DSCP DSLs @@ -1498,6 +1310,7 @@ Dyno Dynos dyscalculia Dyslexi +démonstration Eader EAEFF Ealert @@ -1555,7 +1368,6 @@ elot elts emailme emailoptin -Émanuel embeddable Embedder Embedders @@ -1572,6 +1384,7 @@ Emptytext EMSCRIPTEN Emscripting emsdk +enablei Encod encodeuri encodeuricomponent @@ -1586,6 +1399,7 @@ Endtest endtime engageability engageable +Engish enim ENLW ENOENT @@ -1630,6 +1444,7 @@ Esta Etag etags Etarget +Ethere ethertank ethi ethioaa @@ -1642,6 +1457,8 @@ eveniet evenodd eventname eventtarget +everytime +evilsite Examp examplebutton examplecheckbox @@ -1665,6 +1482,7 @@ exampleradio examplerange examplereset examplesearch +examplestyles examplesubmit exampletel exampletext @@ -1681,11 +1499,9 @@ Exfiltration EXIF exitpictureinpicture Exljbris -𝚎𝚡𝚙 Expando expedita expm -𝚎𝚡𝚙𝚖 expressjs expresstests exprgen @@ -1716,6 +1532,7 @@ factfile factit Factsheet failovers +Fairchild fakeid fakepath falsey @@ -1743,6 +1560,9 @@ fedcm feedforward FEFD felis +fencedframe +fencedframeconfig +fencedframes feoffset fermentum fers @@ -1769,9 +1589,11 @@ filesharing filesize filestream Filesystems +filetext Filezilla FILLMODE fillstyle +filterfunctions filteron fina finalizer @@ -1803,13 +1625,14 @@ flabada FLAC FLAC's flagcolors +Flagfox flashtext flatmap Flavio fleurons Flexbox -Flexboxes flexbox's +Flexboxes Flexbugs flexy Flickr @@ -1868,6 +1691,7 @@ forof Fortnite Forw forwardonly +forwidth FOSS Foti FOUC @@ -1908,8 +1732,8 @@ fromentries frontmatter frontmost fround -Früh fruitbear +Früh Fscreen Fscript fugiat @@ -1969,6 +1793,7 @@ gangnam Gannen gatheringstatechange Gato +gattserverdisconnected Gayatri Gbps GCLI @@ -1980,6 +1805,7 @@ geckoversion geckoview Gedit gement +generatable generix geng geolocate @@ -1991,11 +1817,11 @@ geor GEOSTD GEQUAL Gerd -GESÄSS -Gesäß gesturechange gestureend gesturestart +GESÄSS +Gesäß getbigint getbiguint getcanonicallocales @@ -2007,6 +1833,7 @@ getfloat getfullyear gethours getint +GETMATCHEDRULES getmilliseconds getminutes getmonth @@ -2039,6 +1866,7 @@ Gillenwater's gims giphy Gitbash +givenname glanceable Glat glcanvas @@ -2076,9 +1904,11 @@ graylevel Grayscale Grayscaling Graywolf +greenblue Greenify Greensock greentoggle +greenzero grek greklow greon @@ -2101,6 +1931,7 @@ groupbytomap groupingoperator groupname growsandstays +growshrink GSAP GSSAPI Gstreamer @@ -2117,7 +1948,6 @@ gzipped Gzipping Gzzh habitasse -háček halehame HALFWIDTH Halloumi @@ -2136,6 +1966,7 @@ HANKAKU hansfin hantfin harissa +harpercollins harum Hashbang hashchange @@ -2189,6 +2020,7 @@ HIGHPASS highres Highrise HIGHSHELF +highspeed Hijri Hildy hilite @@ -2226,7 +2058,6 @@ Holzman Homescreen homothetic Honigswald -Hönigswald hoosteeno horizontalstrike horzvert @@ -2291,7 +2122,8 @@ Hyperaudio's hyperlinktext hypertexts hypot -𝚑𝚢𝚙𝚘𝚝 +háček +Hönigswald iaculis iarc ICAI @@ -2383,7 +2215,9 @@ Ilter Ilya imag imageattr +imagebad imagedata +imagegrid imagemaps IMAGESET imageurl @@ -2396,8 +2230,8 @@ impedit imperdiet importmap IMSC -imscjs IMSC's +imscjs imul inactivetitlebarcolor inceptos @@ -2409,6 +2243,9 @@ indexeddb indexof infile infobar +infobox +infobox's +infoboxes inga initialimage Initialise @@ -2418,6 +2255,7 @@ Inkscape's inlinable Inlines innerht +innertext innolitics inoperator inputdevices @@ -2441,6 +2279,7 @@ Intelli Intellifont Interactability interactable +interarrival interceptable intercooler Interdimensional @@ -2462,6 +2301,7 @@ invidunt Invision Ionos ipaddr +ipados IPFS ipns ipsa @@ -2522,6 +2362,7 @@ iyqi Jaenisch Jalad Jalkhov +jamiedoe Jank janking Jankord @@ -2539,7 +2380,6 @@ Jehl's Jeni's Jeonja Jeremie -Jérémie jeremiepat Jewett jfgd @@ -2547,7 +2387,7 @@ JFIF jgndmic jhokmfdskl jibbering -jícama +Jinping JISHO Jitsi Jjom @@ -2596,16 +2436,18 @@ jswebm jsxref jumpless jumpterm -Júnior JUNJA justo justone juxtaposi JXON +Jérémie +jícama +Júnior Kadir Kadlec -kaios Kahlo +kaios Kakao Kaku Kaply @@ -2677,6 +2519,7 @@ Kneeland Knocky Knolwedgement Knowbility +Kobabe Kokoro Kolkata kombu @@ -2691,9 +2534,12 @@ Kravets Kulikov KUMA kumascript -Kütük kwargs Kyouko +Kütük +L'homme +l'oignon +l'âge labelable labeledby labore @@ -2702,7 +2548,6 @@ laboris laborum lacinia lacus -l'âge Lagerblad laggy Laing @@ -2731,6 +2576,7 @@ laudatur Lauke lazify lazyload +lazyloaded lazysizes Lbitfield Lclampf @@ -2754,13 +2600,12 @@ Lempel LENGTHADJUST LENGTHTYPE Lennart -Léonie -Léonie's leopardskin lepc Lepcha LEQUAL Lesh +letmein letterboxed letterboxing letterform @@ -2770,7 +2615,6 @@ levelchange levent Lexi Leyla -L'homme Lianghekou Libav Libertinus @@ -2787,16 +2631,19 @@ liga Lightbox lightgoldenrod lightnesses +lightpurple lightshow Lighttpd Limbu Limin Lindbloom's +Lindenberg Lindesay lineargradient Linearize lineboundary linebreak +linecaps linename Lineto linewidth @@ -2820,7 +2667,6 @@ Llanfair LLLLLLLLLLLLLLLLRRRRRRRRRRRRRRRR LMENU lmodern -𝙻𝙽 lname lnum loadeddata @@ -2847,12 +2693,9 @@ localtime locationbar lockscreens lofi -𝚕𝚘𝚐 -𝙻𝙾𝙶 logarithmed logline Logpoints -l'oignon longdiv longhands longspan @@ -2860,15 +2703,18 @@ longtask longtasks Longterm longwave +longwinded Lookaheads lookbehinds loopend loopstart +loopstarted Losslessly lostcapture lostpackets lostpointercapture Lovie +lowdelay lowlights lowp LOWPASS @@ -2900,6 +2746,9 @@ lvmax lvmin LWIN lwtheme +Léonie +Léonie's +macaron Macarons Machrek Macknik @@ -2924,6 +2773,7 @@ Majestatis Majumdar makemigrations Makey +Malala malesuada malloc Mamitiana @@ -2943,7 +2793,6 @@ MARKERUNITS Markmarkimark Martell martinfowler -März Masaram Masayuki Maski @@ -2951,11 +2800,11 @@ MASSHOU Massieux matchall MATF -𝙼𝚊𝚝𝚑 mathbb mathbold mathdbl mathfont +mathit MATHML mathmono Mathoid @@ -2977,6 +2826,7 @@ maxgreen maxime Maximiliano maximus +maxplaybackrate maxrow maxsafeinteger maxvalue @@ -3002,6 +2852,7 @@ mediump Medline Meetei MEETORSLICE +megastore Meggin meinheld memcpy @@ -3034,6 +2885,7 @@ messagebox messageerror Metafile metalness +metastring meterbar meterchunk METHODTYPE @@ -3075,16 +2927,19 @@ minimalistic minmax minuto minutos +miplevel MIPMAP mipmapped Mipmapping Mipmaps Miracast +Miroslav mirrorable mirunacurtean misissuance misissuances misissued +Misparsed mitigations MITM Mitzie @@ -3108,6 +2963,7 @@ Moderna Modernizr Modernizr's Modif +modulepreloaded Moin Moiré Mojibake @@ -3122,6 +2978,7 @@ momot monkeypatch monoscopic Montag +montecarlo moof Moonrocks Mooog @@ -3135,6 +2992,7 @@ Mork morx Mothman MOUSEDOWN +mouseentry MOUSEHWHEEL mouseleave mouselook @@ -3192,13 +3050,14 @@ MUAT Mufasa MUHENKAN Mullany -Müller mult Multicol multicolumn multicolumns multicore +multifactor multihomed +multimemory multimessaging multipage multipass @@ -3218,12 +3077,12 @@ Multiview Mundo Munsell muscaria -Musée musicdsp Musicogenic musicplayer Musicr Mustafa +Musée MVVM myaddon MYAGE @@ -3263,6 +3122,7 @@ myfoot myform myframe mygraphic +mygroupmarker myhead myhost myid @@ -3303,12 +3163,14 @@ myrenderpassencoder myrenderpipeline myroutine myrows +mysampler myscript myserver myshader myshov mysprite mystate +mystatename mystring mystunserver mystylesheet @@ -3328,10 +3190,11 @@ myview myweb mywindow myworkerurl +März +Müller Nacl Nada Naeher -naïvely Nakamura Nakano's Nally @@ -3348,11 +3211,13 @@ nativehyperlinktext natoque natus Navara +navigables navigateerror navigatesuccess Navigations -Nazário Nazarrudin +Nazário +naïvely NCBI NCLX ndata @@ -3397,6 +3262,7 @@ newtab newtarget newtext newval +nextslide nextstep NEXTTRACK nextul @@ -3405,9 +3271,9 @@ NFKC NFKD nguy nibh +NIC's nicezero nicht -NIC's niform nightlies nightwatch @@ -3422,6 +3288,7 @@ nobis nobooks nobullets nocache +Nodepad nodeset nodownload noemit @@ -3463,6 +3330,7 @@ notanaudio Notar notaurl notavideo +noteblocks notebox notecard notfound @@ -3471,11 +3339,13 @@ notificationbox notificationclick notificationclose Noto +notrendered notservice NOTSUPPORTEDERR nourl nowledge nowledgement +Nowrapping NPAPI npmjs NPNVDOM @@ -3525,6 +3395,7 @@ offmainthreadcomposition offscreencanvas offsetblur offsetleft +offsetted oggz Ogonek OIDC @@ -3579,6 +3450,8 @@ onscreenschange onscrollend onsinkchange ontent +ontextformatupdate +ontextupdate ontrol onum onuncapturederror @@ -3630,7 +3503,6 @@ osma Osmani Osmani's Osmanya -Österreich otation othercompany otherdoc @@ -3678,15 +3550,19 @@ pageinfo Pagella pageload pageloadtime +pagereveal pageshow -páginas +pageswap Pahawh +paintable +paintsize paintworklet paintworklet's pais Palatino Paletton pantherina +papermakers paragraaf paragraphboundary paragraphe @@ -3738,8 +3614,8 @@ Pedestaling peerconnection peerjs Pelientesque -Pellentesque Pell's +Pellentesque Penadés penatibus Pereira @@ -3749,6 +3625,7 @@ periodicsync perispomeni Perlin permessage +permissionspolicy pers personalbar personaltoolbar @@ -3769,7 +3646,6 @@ phonorecords photopic Photoshop PHPSESSID -𝙿𝙸 Picryl Picturefill PIDOM @@ -3783,6 +3659,7 @@ Pinia PINP Pinterest Piotrek +pipline Pissuti Pitstop Pixabay @@ -3794,9 +3671,11 @@ placeat placerat Platane platea +Platformer platformers platformversion playbackorder +playbackrate playbackspeed playbutton playcanvas @@ -3846,6 +3725,8 @@ pomm pomr popcnt popout +popovertarget +popovertargetaction popstate populatedb popuponclick @@ -3874,7 +3755,6 @@ potappo potenti potl potr -𝚙𝚘𝚠 Powerbook powerefficient Powermapper's @@ -3886,9 +3766,14 @@ Praesent pranswer Prateek preactivate +precache +precached +precaches +precaching precoded Precomposed preconnecting +preconnects predeclared preffed prefixless @@ -3900,7 +3785,9 @@ prefwindow preg preinstall prelighting +preloaders premkproject +premultiplication PREMULTIPLY preorder prepopulate @@ -3911,9 +3798,10 @@ preprocessors Prerender prerendered prerendering +prerenderingchange +prerenders preresolved presentationml -présenté PRESERVEASPECTRATIO presnap pressable @@ -3925,9 +3813,11 @@ pretium prettyping preventdefault preventextensions +previousslide PREVIOUSTRACK PREVUNIQUE prflx +pricelist primarykey primcount primis @@ -3951,6 +3841,7 @@ proident Proin proinde promobutton +properities propertyaccessors propertyisenumerable propfind @@ -3965,6 +3856,7 @@ proxify proxyfied proxyhandler Proxying +présenté pseudoclass pseudoclasses Pseudocode @@ -3988,16 +3880,19 @@ purejsgame purgecaches pushsubscriptionchange PVRTC +PWA's pwabuilder pwamp pwas -PWA's pwid pwllgwyngyllgogerychwyrngogogoch PXHQTXP pylint Pythagora +pythonanywhere +pythonaware pyxpidl +páginas Qbsshxk QCIF QCMS @@ -4058,6 +3953,7 @@ ratechange ratione Rauschmayer Rauschmayer's +rawupdate Raytracer RBGA rcap @@ -4071,10 +3967,12 @@ Readablestream readback readdir readingerror +readonlyinline readwrite readwriteflush READYSTATE realid +realpython Realtek Rearrangeable reate @@ -4085,6 +3983,7 @@ receivebox Recep Rects recvonly +redblue reddinate Redeclaration Redeclarations @@ -4097,14 +3996,14 @@ redsquare redtext redtoggle redtogreen +redyellow +redzero reen Reeza -Référence referenceable referer referralpolicy reflectionchange -Régagnon regexes regionless reimplementation @@ -4145,19 +4044,22 @@ reprioritize reproject repudiandae requirable +requireinteraction requireuserinteraction Reregister rerum rescan rescoping +reselecting resends -réservé resh Resig Resig's resizability +Resizeable resizer resizerpanel +resnapped resolvedoptions resourcetimingbufferfull respecified @@ -4168,7 +4070,6 @@ restcookbook restofurl restparameters resultobj -résumé retarget retargeted retargeting @@ -4214,6 +4115,7 @@ roletype rolloff Romaji romanlow +Ronaldo Roselli Rossen Rossum @@ -4245,6 +4147,7 @@ RTCICE RTCIP RTCP RTCRTP +rtctransform RTCWEB RTMP RTMPE @@ -4264,8 +4167,14 @@ Runtimes rustc Rustup rutrum +rvfc RWIN Ryuno +Référence +Régagnon +réservé +résumé +s'écrase sadipscing Saepe safariextz @@ -4282,6 +4191,7 @@ Saltasaurus Salva SAMEORIGIN Samesite +samplepay Samplerate samplesize samr @@ -4308,6 +4218,7 @@ scalethumbend scalethumbstart scalethumbtick scalex +scanability scancode scanf scangamepads @@ -4320,10 +4231,10 @@ Schiff Schola Scholz schon -schön Schonheit schreibt Schwarz +schön scooby scopable scottohara @@ -4333,8 +4244,11 @@ screenful screenleft screenorientation screenreader +screenreaders +screenschange screentop Scribie +Scrimba Scriptable Scripters scriptname @@ -4366,12 +4280,12 @@ SECAM Sechelt secmetadata secp -s'écrase sectionhead Securecontext securityheaders securitypolicy securitypolicyviolation +seecompattable Seekable seekbackward seeked @@ -4383,7 +4297,9 @@ Segoe segundos Seizureless selectables +selectchange selectedcandidatepairchange +selectedness selectend selectionchange selectrepo @@ -4402,14 +4318,15 @@ senectus sentenceboundary Separatei sequi -será serialno serialnumber +Serpentina serverhello Serverside serverstart SERVFAIL serviceworker +será SESAC sess sessionhistory @@ -4447,10 +4364,14 @@ SFNT Shadeed shadowdom shadowrootclonable -shān +shadowrootdelegatesfocus +shadowrootmode +shadowrootserializable Sharada sharedarraybuffer +sharedmem sharedworker +sharpyuv Shazaam Sheppy shexp @@ -4462,12 +4383,16 @@ shippingoptionchange Shireen Shoeshop shortlink +shortlinks showable showbf shrd +shrinkwap +shrinkwrapping shtm SHTTP Shumway +shān sidebox sideload sideloaded @@ -4485,8 +4410,8 @@ SIGTERM Silf Silverlight SIMD -𝚜𝚒𝚗𝚑 Sinhala +sinkchange Sino sint Sintel @@ -4513,7 +4438,6 @@ skjfndskjfnbdskjfb skybox skyboxes Skywalker -𝔰𝔩 slabcraft Slaght slideheading @@ -4530,6 +4454,7 @@ smakar smallcaps SMARTPOSTER smartquotes +smashingmagazine smbps smcp SMIL @@ -4542,6 +4467,7 @@ Smus Snackbars snapport snapshotted +Snapshotting snapsvg SNES snews @@ -4585,6 +4511,7 @@ someroute Somers somescript somesite +somestate somesystem someusername somevideo @@ -4645,8 +4572,6 @@ spritesheets sprop sqlzoo Sqrd -𝚜𝚚𝚛𝚝 -𝚂𝚀𝚁𝚃 squarefree squeezeend squeezestart @@ -4659,6 +4584,7 @@ sref srflx SRGB srgba +srihash SRTP sscanf ssedemo @@ -4666,6 +4592,7 @@ SSIDs SSML SSRC ssthresh +stackexchange Stackoverflow Stalybridge Starcraft @@ -4689,6 +4616,8 @@ steponup STITCHTYPE STIX Storei +Stormys +Stratford strawman strcat strcmp @@ -4720,6 +4649,7 @@ studiorum stunprotocol stunserver Stylable +styleable styleeditor styleguide stylemap @@ -4742,12 +4672,15 @@ subexpression subexpressions subfeature subfolders +subformula +subformulas subframe subframes Subgrid -subgridded subgrid's +subgridded subgrids +subheaders Subinstruction subkey sublicensable @@ -4765,7 +4698,10 @@ subpage Subpages subpanels subpaths +subpattern subpatterns +subpopover +subproject subprojects subproperty subrectangle @@ -4776,6 +4712,8 @@ Subresource subresources subsampled Subsampling +Subsentence +subsetting substate substeps substr @@ -4783,6 +4721,8 @@ substream substreams Subtag Subtags +subteam +subteams subtr Subtractor subvalue @@ -4799,6 +4739,7 @@ sund sundried Sundström sunhpark +sunsetting sunt suntheme Superc @@ -4807,6 +4748,7 @@ superdomain superfast Supermedium superscaling +supersets superspeed supportedlocalesof supportedvaluesof @@ -4841,6 +4783,7 @@ svgz svmax svmin Svpf +swashoff swashon swimjiy Swisswatch @@ -4868,13 +4811,14 @@ takimata takr Takri talu +Tamaran tamen taml tamldec -𝚝𝚊𝚗𝚑 Tanx targetable TARGETDURATION +targettable taskattribution taskbars taskboard @@ -4916,10 +4860,12 @@ textarget textboxes textcolor textencoder +textformatupdate textnode TEXTPATH texttop texttrack +textupdate TEXTUREI tgfe Thaana @@ -4960,6 +4906,7 @@ timecodes Timecount timedelta timefield +timeframe Timepicker timerange timeslice @@ -5115,16 +5062,18 @@ truedoc truetype Trunc Trustwave +truthyness trycatch tsize TSLÍ -ˈtʃɑːli TTFB TTML TTSI +tunetheweb turnpassword turnserver turpis +tutsplus tvkeys tvremote tweened @@ -5189,6 +5138,8 @@ undecoded undeletable underflowing underflows +underliner +underlyingly underover Underscript Underscripts @@ -5303,7 +5254,9 @@ urlscheme urna urpmi Uruk +usecase usedtx +useinbandfec usepackage useragentstring userbase @@ -5336,6 +5289,7 @@ vaii validlink Vallejoanderson vals +valuechange valueof Vanderheiden Vandermonde @@ -5385,6 +5339,7 @@ videooutput videoplayer vidi Vieno +viewbox Viewmodel Viewports viewsource @@ -5394,6 +5349,7 @@ VIRTUALENV virtualenvs VIRTUALENVWRAPPER virtualizes +virtualkeyboardpolicy Virtuals visibilitychange visibilitystate @@ -5490,14 +5446,19 @@ weakmap weakset Weathersby weba +webappmanifest Webapps webassembly webaudio webauthn +webbundle webcal +webcodecs Webcompat webcomponents webconsole +webdav +webdesignerdepot Webdev webdeveloper webext @@ -5514,6 +5475,7 @@ webglreport webglsamples webgpu webhint +webidentity Webidl webkitdirectory webkitmouseforcechanged @@ -5542,6 +5504,7 @@ webshell Websniffer Websockets webspeech +webtransport Webvr WEBVTT webxr @@ -5561,6 +5524,7 @@ WHATWG's Whereami wherearemyglasses Whitenoise +whitepoint whitespaces Whitlock Whittaker @@ -5583,6 +5547,7 @@ wireframed wirelessly Wireshark Wirfs +wisedog Wisen wisi Wolenetz @@ -5591,6 +5556,7 @@ Wordmark wordmarks wordprocessingml workfile +workgroups Worklet worklet's Worklets @@ -5605,6 +5571,7 @@ writability writeln WRITEMASK writemasks +writingsuggestions wrnogly Wrox WSCTRL @@ -5715,6 +5682,9 @@ Zehe Zenevich ZENKAKU Zepto +zeroblue +zeroyellow +zerozero zfail Zheng zhuyin @@ -5737,6 +5707,13 @@ Zstandard zvon ZWNBSP ZWSP +Áaron +Émanuel +Österreich +ˈbraːˈvo +ˈdeltɑ +ˈtʃɑːli +ˈælfa ζήτα θdeg Θεϊκό @@ -5780,13 +5757,13 @@ ZWSP לדוגמא עִבְרִית أحلامك -اَلأَعْشَى الانتقال التطبيق العربية الفقرة اليسار اليمين +اَلأَعْشَى باللغة تحقيق تطبيق @@ -5796,4 +5773,27 @@ ZWSP شسيبتنمك طولا مرحبا +𝐜𝐨𝐬 +𝔰𝔩 +𝙻𝙽 +𝙻𝙾𝙶 +𝙼𝚊𝚝𝚑 +𝙿𝙸 +𝚂𝚀𝚁𝚃 +𝚊𝚌𝚘𝚜 +𝚊𝚌𝚘𝚜𝚑 +𝚊𝚜𝚒𝚗 +𝚊𝚜𝚒𝚗𝚑 +𝚊𝚝𝚊𝚗 +𝚊𝚝𝚊𝚗𝚑 +𝚌𝚋𝚛𝚝 +𝚌𝚘𝚜𝚑 +𝚎𝚡𝚙 +𝚎𝚡𝚙𝚖 +𝚑𝚢𝚙𝚘𝚝 +𝚕𝚘𝚐 +𝚙𝚘𝚠 +𝚜𝚒𝚗𝚑 +𝚜𝚚𝚛𝚝 +𝚝𝚊𝚗𝚑 𞤲𞥋𞤣𞤫 diff --git a/.vscode/terms-abbreviations.txt b/.vscode/terms-abbreviations.txt index e297fc75815e594..917bcc4a462c317 100644 --- a/.vscode/terms-abbreviations.txt +++ b/.vscode/terms-abbreviations.txt @@ -2,10 +2,10 @@ affordance affordances APNG Axess -bézier Bhattacharya Brosset Brotli +bézier callouts Caniuse cdylib diff --git a/scripts/sort_and_unique_file_lines.js b/scripts/sort_and_unique_file_lines.js new file mode 100644 index 000000000000000..ca103257bb41f58 --- /dev/null +++ b/scripts/sort_and_unique_file_lines.js @@ -0,0 +1,50 @@ +import fs from "node:fs"; +import path from "node:path"; + +const filePath = process.argv[2]; +const check = process.argv[3] === "--check"; + +if (!fs.existsSync(filePath)) { + console.error(`File ${filePath} doesn't exist.`); + console.warn( + "Usage:\n\tnode scripts/sort_and_unique_file_lines.js [--check]", + ); + process.exit(1); +} + +function equalsIgnoreCase(string1, string2) { + return new RegExp(`^${string1}$`, "gi").test(string2); +} + +const uniq = []; +const content = fs.readFileSync(filePath, "utf-8"); +const lines = content.split("\n").sort((a, b) => { + a = a.toUpperCase(); + b = b.toUpperCase(); + return a < b ? -1 : a > b ? 1 : 0; +}); + +for (let i = 0; i < lines.length; ) { + const line = lines[i]; + if (line.trim() !== "") { + uniq.push(line); + while (equalsIgnoreCase(line, lines[++i])); + } else { + i++; + } +} + +const sortedContent = uniq.join("\n") + "\n"; +if (check) { + if (content !== sortedContent) { + console.error( + `The file is not formatted properly. Run 'node scripts/sort_and_unique_file_lines.js ${filePath}' to format the file.`, + ); + process.exit(1); + } else { + console.log("The file looks good."); + process.exit(0); + } +} + +fs.writeFileSync(filePath, sortedContent);