Scille / parsec-cloud

Open source Dropbox-like file sharing with full client encryption !
https://parsec.cloud
Other
268 stars 40 forks source link

Disable `allowCompoundWords` in cspell configuration #5081

Closed FirelightFlagboy closed 1 year ago

FirelightFlagboy commented 1 year ago

Currently the cspell configuration has a setting to allow for compound word (allowCompoundWords) set to true.

This setting was set to allow word like runned (run+ned) but it also word that are invalid like accross (acc+ross) instead of across.

_Originally posted in https://github.com/Scille/parsec-cloud/pull/5078#discussion_r1307445569_

FirelightFlagboy commented 1 year ago

With allowCompoundWords == false, cspell detect $918$ possible typos, here is a list of the unique typos detected:

Unique typos detected ```txt Unknown word (accesslog) Unknown word (accors) Unknown word (accross) fix: (across) Unknown word (addoption) Unknown word (adminguide) Unknown word (allprojects) Unknown word (ALLSPHINXOPTS) Unknown word (allways) Unknown word (Alternally) Unknown word (anynous) Unknown word (asyncness) Unknown word (autobuild) Unknown word (Autobuild) Unknown word (autojump) Unknown word (autotools) Unknown word (autouse) Unknown word (Autouse) Unknown word (backpressure) Unknown word (Backpressure) Unknown word (badorg) Unknown word (binded) Unknown word (Binded) Unknown word (bitwarden) Unknown word (Bitwarden) Unknown word (blockmeta) Unknown word (blockstores) Unknown word (blokstore) Unknown word (bootstarp) Unknown word (broadcastable) Unknown word (Broadcastable) Unknown word (bruteforce) Unknown word (BUILDDIR) Unknown word (BUILDKIT) Unknown word (buildscript) Unknown word (byteslike) Unknown word (canditate) Unknown word (caplog) Unknown word (capsentry) Unknown word (capturemanager) Unknown word (certifcate) Unknown word (checkiconhandler) Unknown word (CHECKICONHANDLER) Unknown word (clusterfuck) Unknown word (cmdlint) Unknown word (CODEOWNERS) Unknown word (codeql) Unknown word (CODEQL) Unknown word (codespace) Unknown word (confdir) Unknown word (containts) Unknown word (convertion) fix: (conversion) Unknown word (coordinatorlayout) Unknown word (corofn) Unknown word (Couroutine) Unknown word (cpsell) Unknown word (cryptolockers) Unknown word (datetimes) Unknown word (decorelated) Unknown word (derivated) Unknown word (detailmenu) Unknown word (developping) Unknown word (devhelp) Unknown word (Devhelp) Unknown word (dirhtml) Unknown word (distdir) Unknown word (doctests) Unknown word (doctrees) Unknown word (documentclass) Unknown word (dotfiles) Unknown word (downcasted) Unknown word (dropcaches) Unknown word (DSTDIR) Unknown word (endlocal) Unknown word (endmacro) Unknown word (eurosys) Unknown word (everytime) fix: (every time) Unknown word (examplecom) Unknown word (exceptiongroup) Unknown word (excute) Unknown word (execnet) Unknown word (executescript) Unknown word (expiredorgalice) Unknown word (expurged) Unknown word (fatptr) Unknown word (fileprovider) Unknown word (firecode) Unknown word (fixint) Unknown word (fixturenames) Unknown word (Flagboy) Unknown word (fontpkg) Unknown word (fontspec) Unknown word (footnotesize) Unknown word (formated) Unknown word (freeline) Unknown word (Freeline) Unknown word (fullfiled) Unknown word (genindex) Unknown word (getcapacitor) Unknown word (getplugin) Unknown word (handsake) Unknown word (headerlink) Unknown word (humantime) Unknown word (imgconverter) Unknown word (instantation) Unknown word (interractions) Unknown word (intiate) Unknown word (introducting) Unknown word (JAVACMD) Unknown word (jetbrains) Unknown word (jsonerror) Unknown word (KEEPALICE) Unknown word (keepattributes) Unknown word (keepclassmembers) Unknown word (knownledge) Unknown word (latexpdf) Unknown word (lemail) Unknown word (letterpaper) Unknown word (linkcheck) Unknown word (logreport) Unknown word (longrepr) Unknown word (loopcontrols) Unknown word (lspconfig) Unknown word (makeinfo) Unknown word (Manraj) Unknown word (mastor) Unknown word (metadatas) Unknown word (metaschema) Unknown word (middleground) Unknown word (mindepth) Unknown word (mkdirs) Unknown word (modelvalue) Unknown word (modifyitems) Unknown word (modindex) Unknown word (moduleauthor) Unknown word (Moiron) Unknown word (monkeypatching) Unknown word (monothreaded) Unknown word (mountdir) Unknown word (naturalsize) Unknown word (newers) Unknown word (Nihilanth) Unknown word (nondeterminated) Unknown word (nonextensible) Unknown word (nonstopmode) Unknown word (nosetests) Unknown word (NOTIFS) Unknown word (notuptodate) Unknown word (numtype) Unknown word (occuring) fix: (occurring) Unknown word (oldpath) Unknown word (orgname) Unknown word (ORGNAME) Unknown word (originalname) Unknown word (otheralice) Unknown word (otherorg) Unknown word (outbond) Unknown word (overwritted) Unknown word (overwritting) Unknown word (Overwritting) Unknown word (pagerefs) Unknown word (PAPEROPT) Unknown word (parnotsec) Unknown word (parseable) Unknown word (parsecdoc) Unknown word (patchelf) Unknown word (pathes) Unknown word (pdflatex) Unknown word (picasa) Unknown word (pluginmanager) Unknown word (Podfile) Unknown word (podspec) Unknown word (Poedit) Unknown word (pointsize) Unknown word (popleft) Unknown word (postgre) Unknown word (POSTGRE) Unknown word (Prepapre) Unknown word (printindex) Unknown word (proguard) Unknown word (Proguard) Unknown word (PROJNAME) Unknown word (provent) Unknown word (provite) Unknown word (pseudoxml) Unknown word (quickstart) Unknown word (Quickstart) Unknown word (randdata) Unknown word (readthedoc) Unknown word (Redactod) Unknown word (refreshiconhandler) Unknown word (REFRESHICONHANDLER) Unknown word (registergin) Unknown word (remaning) Unknown word (renamesourcefileattribute) Unknown word (responsability) fix: (responsibility) Unknown word (retreive) fix: (retrieve) Unknown word (Retreive) fix: (Retrieve) Unknown word (retreiving) Unknown word (revisison) Unknown word (rolecert) Unknown word (ROOTDIR) Unknown word (ROOTDIRS) Unknown word (ROOTDIRSRAW) Unknown word (runned) Unknown word (ruscrypto) Unknown word (sectionauthor) Unknown word (seealso) Unknown word (sendness) Unknown word (seqester) Unknown word (sessionfinish) Unknown word (sessionstart) Unknown word (setlocal) Unknown word (setmainfont) Unknown word (setmonofont) Unknown word (setsansfont) Unknown word (shabang) Unknown word (Siging) Unknown word (singlehtml) Unknown word (Sinogram) Unknown word (snackbars) Unknown word (snakecase) Unknown word (softprops) Unknown word (sourcelink) Unknown word (sourcemaps) Unknown word (SPHINXBUILD) Unknown word (SPHINXOPTS) Unknown word (spywares) Unknown word (SRCDIR) Unknown word (stateles) Unknown word (statemachine) Unknown word (strbuf) Unknown word (struclog) Unknown word (subblockstore) Unknown word (subconf) Unknown word (suddent) Unknown word (sufficent) fix: (sufficient) Unknown word (targetver) Unknown word (testreport) Unknown word (texlive) Unknown word (TEXTINCLUDE) Unknown word (textinfo) Unknown word (theorical) Unknown word (thinptr) Unknown word (toctree) Unknown word (topbar) Unknown word (torndown) Unknown word (towncrier) Unknown word (tracebackhide) Unknown word (Trademeet) Unknown word (trollface) Unknown word (trustchains) Unknown word (typekit) Unknown word (udpate) Unknown word (Unexpectedd) Unknown word (usecase) Unknown word (usecases) Unknown word (usepackage) Unknown word (vacuumming) Unknown word (verifiation) Unknown word (verifycation) Unknown word (verrsrc) Unknown word (viewcode) Unknown word (wathever) Unknown word (websockets) Unknown word (weeksday) Unknown word (wentry) Unknown word (windowsiconhandler) Unknown word (WINDOWSICONHANDLER) Unknown word (winres) Unknown word (Wokspace) Unknown word (workdir) Unknown word (Workdir) Unknown word (WORKDIR) Unknown word (workerfinished) Unknown word (workerready) Unknown word (yieldfrom) ```

Here is the full output of cspell cspell-no-compound.txt

mmmarcos commented 1 year ago

I took a quick look and I have the impression that there are a lot of typos accepted with the allowCompoundWords.

Regarding the false positives, we should probably look for other common dictionaries to cover our needs (or improve the ones that we are using).

If the option is disabled, we should probably want to turn cspell "errors" into "warnings". At least temporarily so no one gets blocked in the meantime.

FirelightFlagboy commented 1 year ago

Fixed in #5131