Okay, I think I have this thing functional... At some point I'll maybe post it in its own v2 script share thread. It is essentially a more-thorough, and v2, version of the "Dead Hotstring Locator" here:
-It is slooow... There's an outter loop that runs once per line of code, and an inner loop that runs once per line of code, for each of the outer loop's loops. Additionally, each hotstring gets compared against up to 4 possible logic statements. I have just over 5k autocorrect entries, so that's 5k x 5k = 25 million loops, and many of those get passed through multiple
checks. My script of 5k takes just under 5 minutes.
-You can make it a tiny bit faster by skipping any lines of code above where your list of autocorrect items start. For example, if you are using the above posted HotString Helper 2.0, you can skip nearly 1k lines of code... There's no point scanning all of those.
-It's likely that you also have a group of "nullifier" items at the top of your autocorrect library. I recommend setting your start point below those. Those (by definition) are meant to be matches to certain word-end items, so they will get flagged if you scan them.
-If you have a large section of non-autocorrect code at the bottom of your script, you can specify that line number too.
-If you simply copy-n-paste the below ahk code into your editor, I recommend saving the ahk file to a known location on your computer... The output reports will get saved in the same location.
if you have 2 autocorrect libraries that you want to compare, paste them into the same ahk file, then scan that file.
-The report will give you the line numbers of where the items are, but my own experience is that it's easier to find the items it you paste each trigger string into the find dialog of your editor.
-Please note that the script can't identify "tripplets." If there are three identical triggers, they will appear, not as one tripplicate set, but as three duplicate sets.
. Instead they are
. This should make the scan quicker, but it means that, if an item has multiple conflicts, you'll need to fix one conflict, then scan again so see the next, because the script can only identify one conflict at a time.
FYI scanning the AutoCorrect for v2 script that is attached in the zip above, yields the following 142 pairs of conflicting items. As discussed in the zipped manual, many of the word-ending items can both be used, as long as they are in the correct order (longer one first).
I want to update the Validity checker part of hotstring helper, then I'll clean up the autocorrect library more.
Code: Select all
Found 142 item pairs in 4-min 47-sec.
Line Opt Trigger Full item
=================================
Duplicates:
---------------------------------------
Line: 5425 ineing :B0X?*:ineing::f("ining", A_ThisHotkey, A_EndChar) ; Fixes 193 words
-and: 5426 ineing :B0X?*:ineing::f("ining", A_ThisHotkey, A_EndChar) ; Fixes 193 words
Beginnings:
---------------------------------------
Line: 1775 * a English :B0X*:a English::f("an English", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 1800 * a en :B0X*:a en::f("an en", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 1777 * a Internet :B0X*:a Internet::f("an Internet", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 1823 * a in :B0X*:a in::f("an in", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 1924 * aircrafts' :B0X*:aircrafts'::f("aircraft's", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 1925 * aircrafts :B0X*:aircrafts::f("aircraft", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 1951 * alot :B0X*:alot::f("a lot", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 4635 ?* alott :B0X?*:alott::f("allott", A_ThisHotkey, A_EndChar) ; Fixes 8 words
---------------------------------------
Line: 1987 * an histor :B0X*:an histor::f("a histor", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 1988 * an historian :B0X*:an historian::f("a historian", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 2005 * an seven :B0X*:an seven::f("a seven", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 2006 * an seventh :B0X*:an seventh::f("a seventh", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 2018 * andd :B0X*:andd::f("and", A_ThisHotkey, A_EndChar) ; Fixes 73 words
-and: 6454 ? andd :B0X?:andd::f("and", A_ThisHotkey, A_EndChar) ; Fixes 251 words
---------------------------------------
Line: 2107 * atn :B0X*:atn::f("ant", A_ThisHotkey, A_EndChar) ; Fixes 704 words
-and: 6463 ? atn :B0X?:atn::f("ant", A_ThisHotkey, A_EndChar) ; Fixes 506 words
---------------------------------------
Line: 2129 * aywa :B0X*:aywa::f("away", A_ThisHotkey, A_EndChar) ; Fixes 4 words
-and: 6468 ? aywa :B0X?:aywa::f("away", A_ThisHotkey, A_EndChar) ; Fixes 24 words
---------------------------------------
Line: 2259 * bve :B0X*:bve::f("be", A_ThisHotkey, A_EndChar) ; Fixes 1565 words
-and: 6480 ? bve :B0X?:bve::f("be", A_ThisHotkey, A_EndChar) ; Fixes 127 words
---------------------------------------
Line: 2284 * cant :B0X*:cant::f("can't", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 2285 * cantalop :B0X*:cantalop::f("cantaloup", A_ThisHotkey, A_EndChar) ; Fixes 4 words
---------------------------------------
Line: 2405 * decomposit :B0X*:decomposit::f("decompose", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 2406 * decomposited :B0X*:decomposited::f("decomposed", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 2405 * decomposit :B0X*:decomposit::f("decompose", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 2407 * decompositing :B0X*:decompositing::f("decomposing", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 2405 * decomposit :B0X*:decomposit::f("decompose", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 2408 * decomposits :B0X*:decomposits::f("decomposes", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 2420 * deside :B0X*:deside::f("decide", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 5028 ?* desided :B0X?*:desided::f("decided", A_ThisHotkey, A_EndChar) ; Fixes 7 words.
---------------------------------------
Line: 2464 * discus a :B0X*:discus a::f("discuss a", A_ThisHotkey A_EndChar) ; Fixes 1 word
-and: 2465 * discus all :B0X*:discus all::f("discuss all", A_ThisHotkey A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 2464 * discus a :B0X*:discus a::f("discuss a", A_ThisHotkey A_EndChar) ; Fixes 1 word
-and: 2466 * discus any :B0X*:discus any::f("discuss any", A_ThisHotkey A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 2473 * dispell :B0X*:dispell::f("dispel", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 2474 * dispells :B0X*:dispells::f("dispels", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 2580 * expell :B0X*:expell::f("expel", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 2581 * expells :B0X*:expells::f("expels", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 2666 * frome :B0X*:frome::f("from", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 5308 ?* fromed :B0X?*:fromed::f("formed", A_ThisHotkey, A_EndChar) ; Fixes 34 words
---------------------------------------
Line: 2718 * guatamala :B0X*:guatamala::f("Guatemala", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 2719 * guatamalan :B0X*:guatamalan::f("Guatemalan", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 2723 * guilia :B0X*:guilia::f("Giulia", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 2724 * guiliani :B0X*:guiliani::f("Giuliani", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 2760 * had ran :B0X*:had ran::f("had run", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 2761 * had rang :B0X*:had rang::f("had rung", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 2795 * happend :B0X*:happend::f("happened", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 2796 * happended :B0X*:happended::f("happened", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 2886 * hge :B0X*:hge::f("he", A_ThisHotkey, A_EndChar) ; Fixes 1607 words
-and: 6557 ? hge :B0X?:hge::f("he", A_ThisHotkey, A_EndChar) ; Fixes 147 words
---------------------------------------
Line: 2888 * hier :B0X*:hier::f("heir", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 5373 ?* hierach :B0X?*:hierach::f("hierarch", A_ThisHotkey, A_EndChar) ; Fixes 14 words
---------------------------------------
Line: 2888 * hier :B0X*:hier::f("heir", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 5374 ?* hierarcic :B0X?*:hierarcic::f("hierarchic", A_ThisHotkey, A_EndChar) ; Fixes 6 words
---------------------------------------
Line: 2919 * hsa :B0X*:hsa::f("has", A_ThisHotkey, A_EndChar) ; Fixes 64 words
-and: 6560 ? hsa :B0X?:hsa::f("has", A_ThisHotkey, A_EndChar) ; Fixes 62 words
---------------------------------------
Line: 2920 * hte :B0X*:hte::f("the", A_ThisHotkey, A_EndChar) ; Fixes 402 words
-and: 6562 ? hte :B0X?:hte::f("the", A_ThisHotkey, A_EndChar) ; Fixes 44 words
---------------------------------------
Line: 2922 * humer :B0X*:humer::f("humor", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 5383 ?* humerous :B0X?*:humerous::f("humorous", A_ThisHotkey, A_EndChar) ; Fixes 6 words
---------------------------------------
Line: 2952 * ift he :B0X*:ift he::f("if the", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 2953 * ift hey :B0X*:ift hey::f("if they", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 3074 * it's entire :B0X*:it's entire::f("its entire", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 3075 * it's entirety :B0X*:it's entirety::f("its entirety", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 3089 * itr :B0X*:itr::f("it", A_ThisHotkey, A_EndChar) ; Fixes 101 words, but misspells itraconazole (Antifungal drug).
-and: 6582 ? itr :B0X?:itr::f("it", A_ThisHotkey, A_EndChar) ; Fixes 366 words, but misspells Savitr (Important Hindu god)
---------------------------------------
Line: 3125 * layed off :B0X*:layed off::f("laid off", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 3126 * layed :B0X*:layed::f("laid", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 3162 * lightyear :B0X*:lightyear::f("light year", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 3163 * lightyears :B0X*:lightyears::f("light years", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 3180 * lsit :B0X*:lsit::f("list", A_ThisHotkey, A_EndChar) ; Fixes 30 words
-and: 6598 ? lsit :B0X?:lsit::f("list", A_ThisHotkey, A_EndChar) ; Fixes 244 words
---------------------------------------
Line: 3217 * menat :B0X*:menat::f("meant", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 5592 ?* menatr :B0X?*:menatr::f("mentar", A_ThisHotkey, A_EndChar) ; Fixes 71 words
---------------------------------------
Line: 3327 * ocur :B0X*:ocur::f("occur", A_ThisHotkey, A_EndChar) ; Fixes 8 words
-and: 5719 ?* ocurran :B0X?*:ocurran::f("occurren", A_ThisHotkey, A_EndChar) ; Fixes 8 words
---------------------------------------
Line: 3374 * over hear :B0X*:over hear::f("overhear", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 3375 * over heard :B0X*:over heard::f("overheard", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 3376 * over look :B0X*:over look::f("overlook", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 3377 * over looked :B0X*:over looked::f("overlooked", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 3376 * over look :B0X*:over look::f("overlook", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 3378 * over looking :B0X*:over looking::f("overlooking", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 3730 * stpo :B0X*:stpo::f("stop", A_ThisHotkey, A_EndChar) ; Fixes 33 words
-and: 6697 ? stpo :B0X?:stpo::f("stop", A_ThisHotkey, A_EndChar) ; Fixes 8 words
---------------------------------------
Line: 3802 * thanks@! :B0X*:thanks@!::f("thanks!", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 3803 * thanks@ :B0X*:thanks@::f("thanks!", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 3876 * thn :B0X*:thn::f("then", A_ThisHotkey, A_EndChar) ; Fixes 9 words ; Fixes 1 word
-and: 3877 * thna :B0X*:thna::f("than", A_ThisHotkey, A_EndChar) ; Fixes 35 words
---------------------------------------
Line: 3876 * thn :B0X*:thn::f("then", A_ThisHotkey, A_EndChar) ; Fixes 9 words ; Fixes 1 word
-and: 3878 * thne :B0X*:thne::f("then", A_ThisHotkey, A_EndChar) ; Fixes 9 words
---------------------------------------
Line: 3876 * thn :B0X*:thn::f("then", A_ThisHotkey, A_EndChar) ; Fixes 9 words ; Fixes 1 word
-and: 6260 ?* thnig :B0X?*:thnig::f("thing", A_ThisHotkey, A_EndChar) ; Fixes 103 words
---------------------------------------
Line: 3876 * thn :B0X*:thn::f("then", A_ThisHotkey, A_EndChar) ; Fixes 9 words ; Fixes 1 word
-and: 6709 ? thn :B0X?:thn::f("then", A_ThisHotkey, A_EndChar) ; Fixes 11 words
---------------------------------------
Line: 3876 * thn :B0X*:thn::f("then", A_ThisHotkey, A_EndChar) ; Fixes 9 words ; Fixes 1 word
-and: 6710 ? thne :B0X?:thne::f("then", A_ThisHotkey, A_EndChar) ; Fixes 11 words
---------------------------------------
Line: 3878 * thne :B0X*:thne::f("then", A_ThisHotkey, A_EndChar) ; Fixes 9 words
-and: 6710 ? thne :B0X?:thne::f("then", A_ThisHotkey, A_EndChar) ; Fixes 11 words
---------------------------------------
Line: 3896 * tiem :B0X*:tiem::f("time", A_ThisHotkey, A_EndChar) ; Fixes 49 words
-and: 6715 ? tiem :B0X?:tiem::f("time", A_ThisHotkey, A_EndChar) ; Fixes 44 words
---------------------------------------
Line: 3899 * timne :B0X*:timne::f("time", A_ThisHotkey, A_EndChar) ; Fixes 49 words
-and: 6716 ? timne :B0X?:timne::f("time", A_ThisHotkey, A_EndChar) ; Fixes 44 words
---------------------------------------
Line: 4012 * tust :B0X*:tust::f("trust", A_ThisHotkey, A_EndChar) ; Fixes 33 words
-and: 6726 ? tust :B0X?:tust::f("trust", A_ThisHotkey, A_EndChar) ; Fixes 7 words
---------------------------------------
Line: 4019 * tyo :B0X*:tyo::f("to", A_ThisHotkey, A_EndChar) ; Fixes 1110 words
-and: 6728 ? tyo :B0X?:tyo::f("to", A_ThisHotkey, A_EndChar) ; Fixes 185 words
---------------------------------------
Line: 4307 *C ehr :B0X*C:ehr::f("her", A_ThisHotkey, A_EndChar) ; Fixes 233 words, Made case sensitive so not to misspell Ehrenberg (a Russian novelist) or Ehrlich (a German scientist)
-and: 6527 ? ehre :B0X?:ehre::f("here", A_ThisHotkey, A_EndChar) ; Fixes 49 words
---------------------------------------
Line: 4310 *C hsi :B0X*C:hsi::f("his", A_ThisHotkey, A_EndChar) ; Fixes 95 words, Case-sensitive to not misspell Hsian (a city in China)
-and: 6561 ? hsi :B0X?:hsi::f("his", A_ThisHotkey, A_EndChar) ; Fixes 59 words
Middles:
---------------------------------------
Line: 2229 * bigining :B0X*:bigining::f("beginning", A_ThisHotkey, A_EndChar) ; Fixes 3 words
-and: 5401 ?* igini :B0X?*:igini::f("igni", A_ThisHotkey, A_EndChar) ; Fixes 127 words
---------------------------------------
Line: 2550 * evenhtual :B0X*:evenhtual::f("eventual", A_ThisHotkey, A_EndChar) ; Fixes 4 words
-and: 5669 ?* nht :B0X?*:nht::f("nth", A_ThisHotkey, A_EndChar) ; Jack's fixes 769 words
---------------------------------------
Line: 2640 * flemmish :B0X*:flemmish::f("Flemish", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 5143 ?* emmis :B0X?*:emmis::f("emis", A_ThisHotkey, A_EndChar) ; Fixes 214 words
---------------------------------------
Line: 2865 * headquater :B0X*:headquater::f("headquarter", A_ThisHotkey, A_EndChar) ; Fixes 4 words
-and: 4597 ?* adquate :B0X?*:adquate::f("adequate", A_ThisHotkey, A_EndChar) ; Fixes 6 words
---------------------------------------
Line: 2887 * hieght :B0X*:hieght::f("height", A_ThisHotkey, A_EndChar) ; Fixes 6 words
-and: 5397 ?* iegh :B0X?*:iegh::f("eigh", A_ThisHotkey, A_EndChar) ; Fixes 186 words
---------------------------------------
Line: 2958 * illegitma :B0X*:illegitma::f("illegitima", A_ThisHotkey, A_EndChar) ; Fixes 6 words
-and: 5520 ?* legitm :B0X?*:legitm::f("legitim", A_ThisHotkey, A_EndChar) ; Fixes 67 words
---------------------------------------
Line: 3042 * ireleven :B0X*:ireleven::f("irrelevan", A_ThisHotkey, A_EndChar) ; Fixes 6 words
-and: 5996 ?* releven :B0X?*:releven::f("relevan", A_ThisHotkey, A_EndChar) ; Fixes 12 words
---------------------------------------
Line: 3043 * iresistabl :B0X*:iresistabl::f("irresistibl", A_ThisHotkey, A_EndChar) ; Fixes 3 words
-and: 6012 ?* resistab :B0X?*:resistab::f("resistib", A_ThisHotkey, A_EndChar) ; Fixes 10 words
---------------------------------------
Line: 3239 * mischeivous :B0X*:mischeivous::f("mischievous", A_ThisHotkey, A_EndChar) ; Fixes 3 words
-and: 5367 ?* heiv :B0X?*:heiv::f("hiev", A_ThisHotkey, A_EndChar) ; Fixes 49 words
---------------------------------------
Line: 3243 * misdemenor :B0X*:misdemenor::f("misdemeanor", A_ThisHotkey, A_EndChar) ; Fixes 2 words
-and: 5013 ?* demeno :B0X?*:demeno::f("demeano", A_ThisHotkey, A_EndChar) ; Fixes 8 words
---------------------------------------
Line: 3244 * misfourtunes :B0X*:misfourtunes::f("misfortunes", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 5304 ?* fourtun :B0X?*:fourtun::f("fortun", A_ThisHotkey, A_EndChar) ; Fixes 18 words
---------------------------------------
Line: 3339 * ommision :B0X*:ommision::f("omission", A_ThisHotkey, A_EndChar) ; Fixes 2 words
-and: 5607 ?* mision :B0X?*:mision::f("mission", A_ThisHotkey, A_EndChar) ; Fixes 63 words
---------------------------------------
Line: 3410 * peculure :B0X*:peculure::f("peculiar", A_ThisHotkey, A_EndChar) ; Fixes 5 words
-and: 4986 ?* culure :B0X?*:culure::f("culture", A_ThisHotkey, A_EndChar) ; Fixes 48 words
---------------------------------------
Line: 3539 * recommed :B0X*:recommed::f("recommend", A_ThisHotkey, A_EndChar) ; Fixes 12 words
-and: 4880 ?* commed :B0X?*:commed::f("comed", A_ThisHotkey, A_EndChar) ; Fixes 18 words
---------------------------------------
Line: 3585 * resturaunt :B0X*:resturaunt::f("restaurant", A_ThisHotkey, A_EndChar) ; Fixes 6 words
-and: 6333 ?* uraunt :B0X?*:uraunt::f("urant", A_ThisHotkey, A_EndChar) ; Fixes 34 words
---------------------------------------
Line: 3627 * seceeded :B0X*:seceeded::f("seceded", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 5108 ?* eceed :B0X?*:eceed::f("ecede", A_ThisHotkey, A_EndChar) ; Fixes 35 words
---------------------------------------
Line: 3836 * theives :B0X*:theives::f("thieves", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 5367 ?* heiv :B0X?*:heiv::f("hiev", A_ThisHotkey, A_EndChar) ; Fixes 49 words
---------------------------------------
Line: 3978 * tomorow :B0X*:tomorow::f("tomorrow", A_ThisHotkey, A_EndChar) ; Fixes 2 words
-and: 5624 ?* morow :B0X?*:morow::f("morrow", A_ThisHotkey, A_EndChar) ; Fixes 4 words
---------------------------------------
Line: 4030 * unconfortability :B0X*:unconfortability::f("discomfort", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 4910 ?* confort :B0X?*:confort::f("comfort", A_ThisHotkey, A_EndChar) ; Fixes 21 words
---------------------------------------
Line: 4051 * unkow :B0X*:unkow::f("unknow", A_ThisHotkey, A_EndChar) ; Fixes 14 words
-and: 5683 ?* nkow :B0X?*:nkow::f("know", A_ThisHotkey, A_EndChar) ; Fixes 66 words, but misspells Minkowski (German mathematician)
---------------------------------------
Line: 4300 *? femmin :B0X*?:femmin::f("femin", A_ThisHotkey, A_EndChar) ; Fixes 80 words
-and: 5251 ?* femmi :B0X?*:femmi::f("femi", A_ThisHotkey, A_EndChar) ; Fixes 53 words
---------------------------------------
Line: 4300 *? femmin :B0X*?:femmin::f("femin", A_ThisHotkey, A_EndChar) ; Fixes 80 words
-and: 5252 ?* femmin :B0X?*:femmin::f("femin", A_ThisHotkey, A_EndChar) ; Fixes 80 words
---------------------------------------
Line: 4697 ?* asr :B0X?*:asr::f("ase", A_ThisHotkey, A_EndChar) ; Fixes 698 words, but misspells Basra (An oil city in Iraq)
-and: 5105 ?* easr :B0X?*:easr::f("ears", A_ThisHotkey, A_EndChar) ; Fixes 102 words
---------------------------------------
Line: 4701 ?* assoicat :B0X?*:assoicat::f("associat", A_ThisHotkey, A_EndChar) ; Fixes 34 words
-and: 6122 ?* soica :B0X?*:soica::f("socia", A_ThisHotkey, A_EndChar) ; Fixes 115 words
---------------------------------------
Line: 4756 ?* blihs :B0X?*:blihs::f("blish", A_ThisHotkey, A_EndChar) ; Fixes 56 words
-and: 5405 ?* ihs :B0X?*:ihs::f("his", A_ThisHotkey, A_EndChar) ; Fixes 618 words
---------------------------------------
Line: 4830 ?* charecter :B0X?*:charecter::f("character", A_ThisHotkey, A_EndChar) ; Fixes 38 words
-and: 5985 ?* recter :B0X?*:recter::f("rector", A_ThisHotkey, A_EndChar) ; Fixes 26 words
---------------------------------------
Line: 4844 ?* ciev :B0X?*:ciev::f("ceiv", A_ThisHotkey, A_EndChar) ; Fixes 82 words
-and: 4904 ?* concieve :B0X?*:concieve::f("conceive", A_ThisHotkey, A_EndChar) ; Fixes 13 words
---------------------------------------
Line: 4876 ?* comemmorat :B0X?*:comemmorat::f("commemorat", A_ThisHotkey, A_EndChar) ; Fixes 12 words
-and: 5590 ?* memmor :B0X?*:memmor::f("memor", A_ThisHotkey, A_EndChar) ; Fixes 70 words
---------------------------------------
Line: 4890 ?* comnt :B0X?*:comnt::f("cont", A_ThisHotkey, A_EndChar) ; Fixes 587 words
-and: 6426 ?*C mnt :B0X?*C:mnt::f("ment", A_ThisHotkey, A_EndChar) ; Fixes 1763 words. Case-sensitive, to not misspell TMNT (Teenage Mutant Ninja Turtles)
---------------------------------------
Line: 4913 ?* consdider :B0X?*:consdider::f("consider", A_ThisHotkey, A_EndChar) ; Fixes 31 words
-and: 6072 ?* sdide :B0X?*:sdide::f("side", A_ThisHotkey, A_EndChar) ; Fixes 317 words
---------------------------------------
Line: 4971 ?* crti :B0X?*:crti::f("criti", A_ThisHotkey, A_EndChar) ; Fixes 59 words
-and: 4972 ?* crticis :B0X?*:crticis::f("criticis", A_ThisHotkey, A_EndChar) ; Fixes 13 words
---------------------------------------
Line: 4979 ?* cticious :B0X?*:cticious::f("ctitious", A_ThisHotkey, A_EndChar) ; Fixes 14 words
-and: 6267 ?* ticio :B0X?*:ticio::f("titio", A_ThisHotkey, A_EndChar) ; Fixes 68 words
---------------------------------------
Line: 5083 ?* docuemnt :B0X?*:docuemnt::f("document", A_ThisHotkey, A_EndChar) ; Fixes 26 words
-and: 6426 ?*C mnt :B0X?*C:mnt::f("ment", A_ThisHotkey, A_EndChar) ; Fixes 1763 words. Case-sensitive, to not misspell TMNT (Teenage Mutant Ninja Turtles)
---------------------------------------
Line: 5084 ?* documetn :B0X?*:documetn::f("document", A_ThisHotkey, A_EndChar) ; Fixes 26 words
-and: 5594 ?* metn :B0X?*:metn::f("ment", A_ThisHotkey, A_EndChar) ; Fixes 1763 words
---------------------------------------
Line: 5104 ?* easen :B0X?*:easen::f("easan", A_ThisHotkey, A_EndChar) ; Fixes 33 words
-and: 5853 ?* pleasent :B0X?*:pleasent::f("pleasant", A_ThisHotkey, A_EndChar) ; Fixes 11 words
---------------------------------------
Line: 5108 ?* eceed :B0X?*:eceed::f("ecede", A_ThisHotkey, A_EndChar) ; Fixes 35 words
-and: 6661 ? receeded :B0X?:receeded::f("receded", A_ThisHotkey, A_EndChar) ; Fixes 2 words
---------------------------------------
Line: 5125 ?* eild :B0X?*:eild::f("ield", A_ThisHotkey, A_EndChar) ; Fixes 147 words
-and: 6383 ?* weildl :B0X?*:weildl::f("wield", A_ThisHotkey, A_EndChar) ; Fixes 15 words
---------------------------------------
Line: 5196 ?* essesital :B0X?*:essesital::f("essential", A_ThisHotkey, A_EndChar) ; Fixes 18 words
-and: 6090 ?* sesi :B0X?*:sesi::f("sessi", A_ThisHotkey, A_EndChar) ; Fixes 41 words
---------------------------------------
Line: 5251 ?* femmi :B0X?*:femmi::f("femi", A_ThisHotkey, A_EndChar) ; Fixes 53 words
-and: 5252 ?* femmin :B0X?*:femmin::f("femin", A_ThisHotkey, A_EndChar) ; Fixes 80 words
---------------------------------------
Line: 5381 ?* http :B0X?*:http:\\::f("http://", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 5382 ?* httpL :B0X?*:httpL::f("http:", A_ThisHotkey, A_EndChar) ; Fixes 1 word
---------------------------------------
Line: 5442 ?* insitut :B0X?*:insitut::f("institut", A_ThisHotkey, A_EndChar) ; Fixes 42 words
-and: 5695 ?* nsitu :B0X?*:nsitu::f("nstitu", A_ThisHotkey, A_EndChar) ; Fixes 87 words
---------------------------------------
Line: 5481 ?* ivle :B0X?*:ivle::f("ivel", A_ThisHotkey, A_EndChar) ; Fixes 589 words, but misspells braaivleis (Type of S. Affrican BBQ)
-and: 5910 ?* privledg :B0X?*:privledg::f("privileg", A_ThisHotkey, A_EndChar) ; Fixes 7 words
---------------------------------------
Line: 5494 ?* juristiction :B0X?*:juristiction::f("jurisdiction", A_ThisHotkey, A_EndChar) ; Fixes 4 words
-and: 6269 ?* tiction :B0X?*:tiction::f("tinction", A_ThisHotkey, A_EndChar) ; Fixes 8 words
---------------------------------------
Line: 5594 ?* metn :B0X?*:metn::f("ment", A_ThisHotkey, A_EndChar) ; Fixes 1763 words
-and: 6604 ? metns :B0X?:metns::f("ments", A_ThisHotkey, A_EndChar) ; Fixes 577 words
---------------------------------------
Line: 5616 ?* mmorow :B0X?*:mmorow::f("morrow", A_ThisHotkey, A_EndChar) ; Fixes 4 words
-and: 5624 ?* morow :B0X?*:morow::f("morrow", A_ThisHotkey, A_EndChar) ; Fixes 4 words
---------------------------------------
Line: 5712 ?* obelm :B0X?*:obelm::f("oblem", A_ThisHotkey, A_EndChar) ; Fixes 28 words
-and: 5913 ?* probelm :B0X?*:probelm::f("problem", A_ThisHotkey, A_EndChar) ; Fixes 22 words
---------------------------------------
Line: 5808 ?* peice :B0X?*:peice::f("piece", A_ThisHotkey, A_EndChar) ; Fixes 60 words
-and: 6140 ?* speices :B0X?*:speices::f("species", A_ThisHotkey, A_EndChar) ; Fixes 8 words
---------------------------------------
Line: 5818 ?* penten :B0X?*:penten::f("pentan", A_ThisHotkey, A_EndChar) ; Fixes 12 words
-and: 6005 ?* repentent :B0X?*:repentent::f("repentant", A_ThisHotkey, A_EndChar) ; Fixes 5 words
---------------------------------------
Line: 6011 ?* residental :B0X?*:residental::f("residential", A_ThisHotkey, A_EndChar) ; Fixes 7 words
-and: 6097 ?* sidenta :B0X?*:sidenta::f("sidentia", A_ThisHotkey, A_EndChar) ; Fixes 9 words
---------------------------------------
Line: 6155 ?* ssurect :B0X?*:ssurect::f("surrect", A_ThisHotkey, A_EndChar) ; Fixes 15 words
-and: 6200 ?* surect :B0X?*:surect::f("surrect", A_ThisHotkey, A_EndChar) ; Fixes 15 words
---------------------------------------
Line: 6275 ?* tioj :B0X?*:tioj::f("tion", A_ThisHotkey, A_EndChar) ; Fixes 7052 words
-and: 6276 ?* tiojn :B0X?*:tiojn::f("tion", A_ThisHotkey, A_EndChar) ; Fixes 7052 words
Endings:
---------------------------------------
Line: 2865 * headquater :B0X*:headquater::f("headquarter", A_ThisHotkey, A_EndChar) ; Fixes 4 words
-and: 6655 ? quater :B0X?:quater::f("quarter", A_ThisHotkey, A_EndChar) ; Fixes 4 words
---------------------------------------
Line: 2940 * iconclas :B0X*:iconclas::f("iconoclas", A_ThisHotkey, A_EndChar) ; Fixes 6 words
-and: 6486 ? clas :B0X?:clas::f("class", A_ThisHotkey, A_EndChar) ; Fixes 8 words
---------------------------------------
Line: 3022 * inteh :B0X*:inteh::f("in the", A_ThisHotkey, A_EndChar) ; Fixes 1 word
-and: 6704 ? teh :B0X?:teh::f("the", A_ThisHotkey, A_EndChar) ; Fixes 44 words
---------------------------------------
Line: 3198 * managerial reign :B0X*:managerial reign::f("managerial rein", A_ThisHotkey, A_EndChar) ; Fixes 2 word
-and: 6573 ? ign :B0X?:ign::f("ing", A_ThisHotkey, A_EndChar) ; Fixes 11384 words, but misspells a bunch (which are nullified above)
---------------------------------------
Line: 3232 * minsitr :B0X*:minsitr::f("ministr", A_ThisHotkey, A_EndChar) ; Fixes 6 words
-and: 6582 ? itr :B0X?:itr::f("it", A_ThisHotkey, A_EndChar) ; Fixes 366 words, but misspells Savitr (Important Hindu god)
---------------------------------------
Line: 3475 * presed :B0X*:presed::f("presid", A_ThisHotkey, A_EndChar) ; Fixes 18 words
-and: 6665 ? resed :B0X?:resed::f("ressed", A_ThisHotkey, A_EndChar) ; Fixes 50 words
---------------------------------------
Line: 3869 * thge :B0X*:thge::f("the", A_ThisHotkey, A_EndChar) ; Fixes 402 words
-and: 6557 ? hge :B0X?:hge::f("he", A_ThisHotkey, A_EndChar) ; Fixes 147 words
---------------------------------------
Line: 3894 * thsi :B0X*:thsi::f("this", A_ThisHotkey, A_EndChar) ; Fixes 7 words
-and: 6561 ? hsi :B0X?:hsi::f("his", A_ThisHotkey, A_EndChar) ; Fixes 59 words
---------------------------------------
Line: 4557 ?* abotu :B0X?*:abotu::f("about", A_ThisHotkey, A_EndChar) ; Fixes 37 words
-and: 6641 ? otu :B0X?:otu::f("out", A_ThisHotkey, A_EndChar) ; Fixes 97 words
---------------------------------------
Line: 4631 ?* allign :B0X?*:allign::f("align", A_ThisHotkey, A_EndChar) ; Fixes 41 words
-and: 6573 ? ign :B0X?:ign::f("ing", A_ThisHotkey, A_EndChar) ; Fixes 11384 words, but misspells a bunch (which are nullified above)
---------------------------------------
Line: 4685 ?* arign :B0X?*:arign::f("aring", A_ThisHotkey, A_EndChar) ; Fixes 140 words
-and: 6573 ? ign :B0X?:ign::f("ing", A_ThisHotkey, A_EndChar) ; Fixes 11384 words, but misspells a bunch (which are nullified above)
---------------------------------------
Line: 4693 ?* asign :B0X?*:asign::f("assign", A_ThisHotkey, A_EndChar) ; Fixes 27
-and: 6573 ? ign :B0X?:ign::f("ing", A_ThisHotkey, A_EndChar) ; Fixes 11384 words, but misspells a bunch (which are nullified above)
---------------------------------------
Line: 4732 ?* awya :B0X?*:awya::f("away", A_ThisHotkey, A_EndChar) ; Fixes 46 words
-and: 6750 ? wya :B0X?:wya::f("way", A_ThisHotkey, A_EndChar) ; Fixes 113 words
---------------------------------------
Line: 4734 ?* bakc :B0X?*:bakc::f("back", A_ThisHotkey, A_EndChar) ; Fixes 410 words
-and: 6585 ? kc :B0X?:kc::f("ck", A_ThisHotkey, A_EndChar) ; Fixes 610 words. Misspells kc (thousand per second).
---------------------------------------
Line: 5009 ?* degred :B0X?*:degred::f("degrad", A_ThisHotkey, A_EndChar) ; Fixes 31 words
-and: 6551 ? gred :B0X?:gred::f("greed", A_ThisHotkey, A_EndChar) ; Fixes 6 words
---------------------------------------
Line: 5032 ?* desitn :B0X?*:desitn::f("destin", A_ThisHotkey, A_EndChar) ; Fixes 30 words
-and: 6757 ?C itn :B0X?C:itn::f("ith", A_ThisHotkey, A_EndChar) ; Fixes 70 words, Case sensitive, to not misspell ITN (Independent Television News)
---------------------------------------
Line: 5037 ?* dessign :B0X?*:dessign::f("design", A_ThisHotkey, A_EndChar) ; Fixes 51 words.
-and: 6573 ? ign :B0X?:ign::f("ing", A_ThisHotkey, A_EndChar) ; Fixes 11384 words, but misspells a bunch (which are nullified above)
---------------------------------------
Line: 5066 ?* disign :B0X?*:disign::f("design", A_ThisHotkey, A_EndChar) ; Fixes 51 words
-and: 6573 ? ign :B0X?:ign::f("ing", A_ThisHotkey, A_EndChar) ; Fixes 11384 words, but misspells a bunch (which are nullified above)
---------------------------------------
Line: 5111 ?* ecomon :B0X?*:ecomon::f("econom", A_ThisHotkey, A_EndChar) ; Fixes 50 words
-and: 6492 ? comon :B0X?:comon::f("common", A_ThisHotkey, A_EndChar) ; Fixes 33 words
---------------------------------------
Line: 5192 ?* esorce :B0X?*:esorce::f("esource", A_ThisHotkey, A_EndChar) ; Fixes 11 words
-and: 6690 ? sorce :B0X?:sorce::f("source", A_ThisHotkey, A_EndChar) ; Fixes 5 words
---------------------------------------
Line: 5500 ?* konw :B0X?*:konw::f("know", A_ThisHotkey, A_EndChar) ; Fixes 66 words
-and: 6637 ? onw :B0X?:onw::f("one", A_ThisHotkey, A_EndChar) ; Fixes 341 words
---------------------------------------
Line: 5769 ?* orign :B0X?*:orign::f("origin", A_ThisHotkey, A_EndChar) ; Fixes 37 words
-and: 6573 ? ign :B0X?:ign::f("ing", A_ThisHotkey, A_EndChar) ; Fixes 11384 words, but misspells a bunch (which are nullified above)
---------------------------------------
Line: 6037 ?* rnign :B0X?*:rnign::f("rning", A_ThisHotkey, A_EndChar) ; Fixes 77 words
-and: 6573 ? ign :B0X?:ign::f("ing", A_ThisHotkey, A_EndChar) ; Fixes 11384 words, but misspells a bunch (which are nullified above)
---------------------------------------
Line: 6082 ?* sensur :B0X?*:sensur::f("censur", A_ThisHotkey, A_EndChar) ; Fixes 12 words
-and: 6627 ? nsur :B0X?:nsur::f("nsure", A_ThisHotkey, A_EndChar) ; Fixes 10 words
---------------------------------------
Line: 6133 ?* soverign :B0X?*:soverign::f("sovereign", A_ThisHotkey, A_EndChar) ; Fixes 10 words
-and: 6573 ? ign :B0X?:ign::f("ing", A_ThisHotkey, A_EndChar) ; Fixes 11384 words, but misspells a bunch (which are nullified above)
---------------------------------------
Line: 6231 ?* tatn :B0X?*:tatn::f("tant", A_ThisHotkey, A_EndChar) ; Fixes 530 words
-and: 6463 ? atn :B0X?:atn::f("ant", A_ThisHotkey, A_EndChar) ; Fixes 506 words
---------------------------------------
Line: 6254 ?* thakn :B0X?*:thakn::f("thank", A_ThisHotkey, A_EndChar) ; Fixes 19 words
-and: 6587 ? kn :B0X?:kn::f("nk", A_ThisHotkey, A_EndChar) ; Fixes 168 words
---------------------------------------
Line: 6260 ?* thnig :B0X?*:thnig::f("thing", A_ThisHotkey, A_EndChar) ; Fixes 103 words
-and: 6620 ? nig :B0X?:nig::f("ing", A_ThisHotkey, A_EndChar) ; Fixes 11414 words. Misspells pfennig (100 pfennigs formerly equaled 1 Deutsche Mark in Germany).
---------------------------------------
Line: 6261 ?* threatn :B0X?*:threatn::f("threaten", A_ThisHotkey, A_EndChar) ; Fixes 10 words
-and: 6463 ? atn :B0X?:atn::f("ant", A_ThisHotkey, A_EndChar) ; Fixes 506 words
---------------------------------------
Line: 6271 ?* tihkn :B0X?*:tihkn::f("think", A_ThisHotkey, A_EndChar) ; Fixes 43 words
-and: 6587 ? kn :B0X?:kn::f("nk", A_ThisHotkey, A_EndChar) ; Fixes 168 words
---------------------------------------
Line: 6366 ?* visiosn :B0X?*:visiosn::f("vision", A_ThisHotkey, A_EndChar) ; Fixes 51 words
-and: 6577 ? iosn :B0X?:iosn::f("ions", A_ThisHotkey, A_EndChar) ; Fixes 3055 words
---------------------------------------
Line: 6444 ? adresing :B0X?:adresing::f("addressing", A_ThisHotkey, A_EndChar) ; Fixes 3 words
-and: 6666 ? resing :B0X?:resing::f("ressing", A_ThisHotkey, A_EndChar) ; Fixes 40 words
---------------------------------------
Line: 6525 ? efull :B0X?:efull::f("eful", A_ThisHotkey, A_EndChar) ; Fixes 74 words
-and: 6550 ? gratefull :B0X?:gratefull::f("grateful", A_ThisHotkey, A_EndChar) ; Fixes 3 words
---------------------------------------
Line: 6535 ? ficaly :B0X?:ficaly::f("fically", A_ThisHotkey, A_EndChar) ; Fixes 20 words
-and: 6568 ? icaly :B0X?:icaly::f("ically", A_ThisHotkey, A_EndChar) ; Fixes 1432 words
---------------------------------------
Line: 6568 ? icaly :B0X?:icaly::f("ically", A_ThisHotkey, A_EndChar) ; Fixes 1432 words
-and: 6686 ? sicaly :B0X?:sicaly::f("sically", A_ThisHotkey, A_EndChar) ; Fixes 24 words
EDIT: A mildly interesting conundrum regarding "duplicate" items... Note the below items that are from the above report. They are not conflicting items, because each pair matches either the beginning -or- the end of a word... But not both. None of these can be made into "word middle" items because they'll result in mutliple misspellings. Here is a screencast demonstrating the effect.
I'll work on making the above code (and the Hotstring Helper validity code) smart enough to not flag these.