codespell-project / codespell Goto Github PK
View Code? Open in Web Editor NEWcheck code for common misspellings
License: GNU General Public License v2.0
check code for common misspellings
License: GNU General Public License v2.0
Please update README.md. On a CentOS 6.6 system (python 2.6.6), I received the following message after attempting to execute codespell.py:
$ python codespell.py
File "codespell.py", line 146
file=sys.stderr)
^
SyntaxError: invalid syntax
$ ./codespell.py
/usr/bin/env: python3: No such file or directory
Also, in the Usage section, it should be './codespell.py -h' and not './codespell -h'.
In the source we see this: (https://github.com/lucasdemarchi/codespell/blob/master/codespell_lib/_codespell.py#L55-L61)
class QuietLevels(object):
NONE = 0
ENCODING = 1
BINARY_FILE = 2
DISABLED_FIXES = 4
NON_AUTOMATIC_FIXES = 8
FIXES = 16
I'd like to understand better what this means. Also there are words like iff
and gonna
that I'd like to understand how they are categorized.
I downloaded the script and ran it as:
$ ./vendor/lucasdemarchi/codespell/bin/codespell.py -h
but it gives:
Traceback (most recent call last):
File "./vendor/lucasdemarchi/codespell/bin/codespell.py", line 6, in <module>
import codespell_lib
ImportError: No module named codespell_lib
If I copy codespell.py one directory up and run that, it works.
make: *** [check-dictionary] Error 1
System specs:
Linux 3.2.0-4-amd64
Debian 7.8
Python 3.2.3-7
I get a lot of false positives with dum
over multiple FOSS projects. I say we get rid of it or do the same as we did in #163
Thoughts?
I found out, that codespell gives wrong answers in case of a tab is used within a C/C++ string. For example:
test.c:
int main()
{
std::cout<< "\tTest\n";
}
dict.txt:
ttest->test
Scanning with test.c with codespell gives a wrong result:
$ ../codespell.py dict.txt test.c
test.c:3: tTest ==> test
README says:
Check usage with
./codespell.py -h
But there is no ./codespell.py
(unless you cd into bin
, in which case the command doesn't work either).
codespell.py
was moved from .
to bin
in b400e42, but I don't understand why. The commit message is enigmatic.
An idea to add functionality that checks for the latest dictionary.txt file on GitHub and downloads it if needed.
The term wasn\'t
is being recognized as wasn
by codespell. There should be logic to distinguish this better.
isnt
is a command in CoffeScript and therefore no spelling mistake for .coffee
(or .jade
) files. Is it possible to add something like whitelists depending on the file type?
Thanks to @thdot per #100 we can now use -I <file name>
to ignore certain words. Each word needs to be on a separate line in the file. That is great when there is a place to save a whitelist file to so codespell can read it.
But say we were in a Buildbot environment, an automated testing framework, where we've setup codespell as a unit test... and so there isn't an easy possibility to save a whitelist file somewhere? Or another scenario, we're trying to quickly filter out a ginormous list of false positives from a codespell result, one needs to open their favorite editor and add each word on a separate line and link said file. It's not the most efficient.
It would be then useful to then have the the ability to pass the whitelisted words sequentially ex. codespell -I 'nto,ans,pres,ot,amin'
Thoughts?
multy-thread->multithread
Currently codespell does not support these kind of entries.
Thanks and best regards
Martin Ettl
The makefile is no longer working, since there is no longer a codespell.py
Hi Lucas!
pep8 --ignore W191 .
generates lots of warnings.
Could you fix them?
Greetings
Peter
./codespell.py:37:14: E201 whitespace after '['
./codespell.py:37:36: E202 whitespace before ']'
./codespell.py:40:80: E501 line too long (104 > 79 characters)
./codespell.py:42:1: E265 block comment should start with '# '
./codespell.py:44:1: E265 block comment should start with '# '
./codespell.py:49:1: E302 expected 2 blank lines, found 1
./codespell.py:57:1: E302 expected 2 blank lines, found 1
./codespell.py:74:1: E302 expected 2 blank lines, found 1
./codespell.py:80:1: E302 expected 2 blank lines, found 1
./codespell.py:93:1: E302 expected 2 blank lines, found 1
./codespell.py:107:80: E501 line too long (116 > 79 characters)
./codespell.py:109:1: E302 expected 2 blank lines, found 1
./codespell.py:146:57: E127 continuation line over-indented for visual indent
./codespell.py:150:33: E127 continuation line over-indented for visual indent
./codespell.py:158:5: E303 too many blank lines (2)
./codespell.py:170:57: E127 continuation line over-indented for visual indent
./codespell.py:172:57: E127 continuation line over-indented for visual indent
./codespell.py:173:57: E127 continuation line over-indented for visual indent
./codespell.py:174:80: E501 line too long (80 > 79 characters)
./codespell.py:175:57: E127 continuation line over-indented for visual indent
./codespell.py:191:1: E302 expected 2 blank lines, found 1
./codespell.py:194:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:194:33: E251 unexpected spaces around keyword / parameter equals
./codespell.py:196:25: E127 continuation line over-indented for visual indent
./codespell.py:196:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:196:33: E251 unexpected spaces around keyword / parameter equals
./codespell.py:196:53: E251 unexpected spaces around keyword / parameter equals
./codespell.py:196:55: E251 unexpected spaces around keyword / parameter equals
./codespell.py:197:25: E127 continuation line over-indented for visual indent
./codespell.py:197:29: E251 unexpected spaces around keyword / parameter equals
./codespell.py:197:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:199:25: E127 continuation line over-indented for visual indent
./codespell.py:199:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:199:33: E251 unexpected spaces around keyword / parameter equals
./codespell.py:199:52: E251 unexpected spaces around keyword / parameter equals
./codespell.py:199:54: E251 unexpected spaces around keyword / parameter equals
./codespell.py:200:25: E127 continuation line over-indented for visual indent
./codespell.py:200:29: E251 unexpected spaces around keyword / parameter equals
./codespell.py:200:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:200:80: E501 line too long (82 > 79 characters)
./codespell.py:202:25: E127 continuation line over-indented for visual indent
./codespell.py:202:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:202:33: E251 unexpected spaces around keyword / parameter equals
./codespell.py:202:55: E251 unexpected spaces around keyword / parameter equals
./codespell.py:202:57: E251 unexpected spaces around keyword / parameter equals
./codespell.py:203:25: E127 continuation line over-indented for visual indent
./codespell.py:203:29: E251 unexpected spaces around keyword / parameter equals
./codespell.py:203:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:205:25: E127 continuation line over-indented for visual indent
./codespell.py:205:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:205:33: E251 unexpected spaces around keyword / parameter equals
./codespell.py:206:25: E127 continuation line over-indented for visual indent
./codespell.py:206:32: E251 unexpected spaces around keyword / parameter equals
./codespell.py:206:34: E251 unexpected spaces around keyword / parameter equals
./codespell.py:207:25: E127 continuation line over-indented for visual indent
./codespell.py:207:29: E251 unexpected spaces around keyword / parameter equals
./codespell.py:207:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:207:80: E502 the backslash is redundant between brackets
./codespell.py:208:77: E502 the backslash is redundant between brackets
./codespell.py:213:25: E127 continuation line over-indented for visual indent
./codespell.py:213:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:213:33: E251 unexpected spaces around keyword / parameter equals
./codespell.py:213:55: E251 unexpected spaces around keyword / parameter equals
./codespell.py:213:57: E251 unexpected spaces around keyword / parameter equals
./codespell.py:214:25: E127 continuation line over-indented for visual indent
./codespell.py:214:29: E251 unexpected spaces around keyword / parameter equals
./codespell.py:214:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:217:25: E127 continuation line over-indented for visual indent
./codespell.py:217:29: E251 unexpected spaces around keyword / parameter equals
./codespell.py:217:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:217:76: E502 the backslash is redundant between brackets
./codespell.py:218:75: E502 the backslash is redundant between brackets
./codespell.py:219:73: E502 the backslash is redundant between brackets
./codespell.py:223:25: E127 continuation line over-indented for visual indent
./codespell.py:223:29: E251 unexpected spaces around keyword / parameter equals
./codespell.py:223:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:224:25: E127 continuation line over-indented for visual indent
./codespell.py:227:25: E127 continuation line over-indented for visual indent
./codespell.py:228:25: E127 continuation line over-indented for visual indent
./codespell.py:228:29: E251 unexpected spaces around keyword / parameter equals
./codespell.py:228:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:228:79: E502 the backslash is redundant between brackets
./codespell.py:229:33: E127 continuation line over-indented for visual indent
./codespell.py:229:79: E502 the backslash is redundant between brackets
./codespell.py:230:79: E502 the backslash is redundant between brackets
./codespell.py:231:73: E502 the backslash is redundant between brackets
./codespell.py:235:25: E127 continuation line over-indented for visual indent
./codespell.py:236:25: E127 continuation line over-indented for visual indent
./codespell.py:236:29: E251 unexpected spaces around keyword / parameter equals
./codespell.py:236:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:236:80: E502 the backslash is redundant between brackets
./codespell.py:237:33: E127 continuation line over-indented for visual indent
./codespell.py:237:77: E502 the backslash is redundant between brackets
./codespell.py:238:76: E502 the backslash is redundant between brackets
./codespell.py:239:78: E502 the backslash is redundant between brackets
./codespell.py:240:79: E502 the backslash is redundant between brackets
./codespell.py:241:75: E502 the backslash is redundant between brackets
./codespell.py:242:78: E502 the backslash is redundant between brackets
./codespell.py:246:25: E127 continuation line over-indented for visual indent
./codespell.py:246:53: E251 unexpected spaces around keyword / parameter equals
./codespell.py:246:55: E251 unexpected spaces around keyword / parameter equals
./codespell.py:247:25: E127 continuation line over-indented for visual indent
./codespell.py:247:29: E251 unexpected spaces around keyword / parameter equals
./codespell.py:247:31: E251 unexpected spaces around keyword / parameter equals
./codespell.py:247:77: E502 the backslash is redundant between brackets
./codespell.py:248:25: E127 continuation line over-indented for visual indent
./codespell.py:248:75: E502 the backslash is redundant between brackets
./codespell.py:249:77: E502 the backslash is redundant between brackets
./codespell.py:253:5: E303 too many blank lines (2)
./codespell.py:265:1: E302 expected 2 blank lines, found 1
./codespell.py:270:1: E302 expected 2 blank lines, found 1
./codespell.py:291:1: E302 expected 2 blank lines, found 1
./codespell.py:295:50: E127 continuation line over-indented for visual indent
./codespell.py:309:1: E302 expected 2 blank lines, found 1
./codespell.py:318:1: E302 expected 2 blank lines, found 1
./codespell.py:326:44: E222 multiple spaces after operator
./codespell.py:326:80: E501 line too long (80 > 79 characters)
./codespell.py:328:21: E701 multiple statements on one line (colon)
./codespell.py:367:1: E302 expected 2 blank lines, found 1
./codespell.py:411:44: E713 test for membership should be 'not in'
./codespell.py:425:80: E501 line too long (82 > 79 characters)
./codespell.py:430:80: E501 line too long (90 > 79 characters)
./codespell.py:443:45: E128 continuation line under-indented for visual indent
./codespell.py:444:45: E128 continuation line under-indented for visual indent
./codespell.py:452:73: E502 the backslash is redundant between brackets
./codespell.py:453:29: E127 continuation line over-indented for visual indent
./codespell.py:456:74: E202 whitespace before '}'
./codespell.py:458:69: E502 the backslash is redundant between brackets
./codespell.py:459:29: E127 continuation line over-indented for visual indent
./codespell.py:460:32: E201 whitespace after '{'
./codespell.py:462:32: E128 continuation line under-indented for visual indent
./codespell.py:462:74: E202 whitespace before '}'
./codespell.py:472:80: E501 line too long (81 > 79 characters)
./codespell.py:473:65: E127 continuation line over-indented for visual indent
./codespell.py:473:80: E501 line too long (80 > 79 characters)
./codespell.py:478:1: E302 expected 2 blank lines, found 1
./codespell.py:486:26: E703 statement ends with a semicolon
Even when there are spelling errors, codespell will exit with a 0. That makes it hard to fail a build step if the spell check fails.
I think it would be nice to exit with a value different than 0 in case of errros. Maybe optional behind a flag to not change the behaviour for existing users.
Currently codespell dictionary.txt has iff->if
as an entry.
Iff in mathematics means if and only if
see https://en.wikipedia.org/wiki/iff
I get a ton of false positives with it.
I suggest we to either remove it or designate it as
iff->if, disabled due to a valid mathematical concept
or something...
Thoughts?
This entry in dictionary.txt is wrong:
guarrenteed->guarenteed
It should be:
guarrenteed->guaranteed
When running interactive lvl 1, once a potential spelling fix is rejected, it is automatically accepted for subsequent matches. The cause is that once a fix is rejected, that match is handled as a list of available fixes.
It would be preferred behavior to either skip subsequent matches altogether, or to prompt for confirmation each time.
no errors = 0 and errors found should give >0.
for now it always succeeds:
user@box:~# ./codespell.py -i 0 $FILE
(several mistakes)
user@box:~# echo $?
0
but i exspect e.g. '1'
codespell.py -d -q 3 --skip="*.po,*.ts,src/3rdParty/*"
doesn't ignore searching src/3rdParty/
i want to add 'churchs' as a good word (a shoebrand!)
to my private dictionary, but codespell always want
to correct it with churchs->churches
what is the proposed way to do this?
Codespell does not work with an empty line in the dictionary. This error can easily reproduced by added an empty line into the dictionary.txt -file an run codespell. The output will be:
Traceback (most recent call last):
File "/usr/bin/codespell.py", line 526, in
sys.exit(main(*sys.argv))
File "/usr/bin/codespell.py", line 473, in main
build_dict(args[0])
File "/usr/bin/codespell.py", line 265, in build_dict
[key, data] = line.split('->')
ValueError: need more than 1 value to unpack
If this is an intentional behaviour, feel free to close this issue.
Best regards
Martin Ettl
vagrant@debian:/.codespell (master)$ make install/.codespell (master)$ make sort-dictionary
sort: data/dictionary.txt:274: disorder: Amercia->America
Dictionary not sorted. Sort with 'make sort-dictionary'
make: *** [check-dictionary] Error 1
vagrant@debian:
LANG=C sort -f -u -o data/dictionary.txt data/dictionary.txt
vagrant@debian:~/.codespell (master)$ make install --debug=v
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
This program built for x86_64-pc-linux-gnu
Reading makefiles...
Reading makefile Makefile'... Updating goal targets.... Considering target file
install'.
File install' does not exist. Considering target file
codespell'.
File codespell' does not exist. Considering target file
codespell.py'.
Finished prerequisites of target file codespell.py'. No need to remake target
codespell.py'.
Considering target file check-dictionary'. File
check-dictionary' does not exist.
Finished prerequisites of target file check-dictionary'. Must remake target
check-dictionary'.
sort: data/dictionary.txt:274: disorder: Amercia->America
Dictionary not sorted. Sort with 'make sort-dictionary'
make: *** [check-dictionary] Error 1
vagrant@debian:/.codespell (master)$ ./codespell/.codespell (master)$ ls -lA
-bash: ./codespell: No such file or directory
vagrant@debian:
total 72
-rw-r--r-- 1 vagrant vagrant 439 Sep 9 21:25 codespell.1.include
-rwxr-xr-x 1 vagrant vagrant 17900 Sep 9 21:25 codespell.py
-rw-r--r-- 1 vagrant vagrant 18092 Sep 9 21:25 COPYING
drwxr-xr-x 2 vagrant vagrant 4096 Sep 9 21:25 data
drwxr-xr-x 2 vagrant vagrant 4096 Sep 9 21:25 example
drwxr-xr-x 8 vagrant vagrant 4096 Sep 9 21:26 .git
-rw-r--r-- 1 vagrant vagrant 2223 Sep 9 21:25 Makefile
-rw-r--r-- 1 vagrant vagrant 294 Sep 9 21:25 NEWS
-rw-r--r-- 1 vagrant vagrant 3035 Sep 9 21:25 README.md
-rw-r--r-- 1 vagrant vagrant 107 Sep 9 21:25 TODO
Codespell result looked like:
./App/AreaPyImp.cpp:163: nTo ==> not | disable due to \n
The code in question:
"\nTo ensure no stray abortion is left in the previous operation, it is advised to manually clear\n"
Installed with a raspberry pi running Raspian Stretch and I'm getting the error:
bash: codespell: command not found
trying to run the following command:
codespell -h
I ran
pip install codespell
and the build was successful and I made sure to check in ~/.local/bin to see if codespell was in there and it was indeed located there.
Any ideas?
README says:
The Python script
codespell.py
is available with the following terms:
But currently codespell.py
is just a thin wrapper over codespell_lib
, with little to no creativity.
This sentence should probably read something like this:
The Python code is available with the following terms:
Would the devs be interested in me adding support for Python2? I've worked on a number of packages with support for Python2 and Python3, so I don't expect it would be too bad.
Context #139
I'm wanting to install the most up to date dev version of codespell via apt-get. I want this because in the travisci sequence addon:
is the first.
I'd like to run the equivalent of pip3 install --user --upgrade git+https://github.com/lucasdemarchi/codespell.git
as an apt-get
command...how do I do this?
Previously running codespell
without file parameter starts the check. Now codespell.py
does nothing. The behavior should stay the same as before - if file/dir argument is not specefied then current directory should be used as a default parameter.
Is it possible to treat camel case class names etc. as separate words, so that spelling errors could be found?
Has anyone seen or used codespell as a unit test that gets triggered in TravisCI when a new PR submitted ?
Downstream ticket: https://freecadweb.org/tracker/view.php?id=3205
After initiating codespell -i 3 -w
sometimes the results that codespell offers does not fit the context exactly. Would it be possible for codespell to invoke some sort of editor that would give the user the option to customize the result?
I hope add some examples soon to further illustrate the need. Thanks!
Currently the dictionary changes modeled
to modelled
. However, both spellings are correct, though modeled
is preferred. Is the best way to handle this to remove the line, or to reverse it so that the preferred spelling, modeled
, is used?
$ more test.cpp
enum
{
ID_ESTABLISED = 0;
};
$ more dictionary.txt
establised->established
$ codespell.py dictionary.txt
$
In this case codespell does not detect the error. But if i remove the preceeding ID_ from the enum definition, codespell is able
to detect the error. Is it possible to detect the errror without modification of the code?
Many thanks in advance
Martin Ettl
Some projects decide to use British spelling over American. Can there be a flag to choose one of them exclusively?
$ python3 --version
Python 3.2.1
Here is the traceback:
$./codespell.py dictionary.txt dictionary.txt
Traceback (most recent call last):
File "./codespell.py", line 526, in
sys.exit(main(*sys.argv))
File "./codespell.py", line 473, in main
build_dict(args[0])
File "./codespell.py", line 264, in build_dict
for line in f:
File "/usr/local/lib/python3.2/encodings/ascii.py", line 26, in decode
return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 3170: ordinal not in range(128)
What do you suggest?
Many thanks
Martin
Recently the following entries were added to the dictionary.txt
german->German
[link]
russian->Russian
[link]
Now when codespell encounters German
it still reports it as incorrect:
./windows/netgen.rc:16: German ==> German
./windows/netgen.rc:95: German ==> German
// German (Germany) resources
German ==> German (Y/n)
Same for Russian
I using codespell on scrutinizer which is a ci
unfortunately it doesn't work
My commands are:
pip install codespell
Collecting codespell
Downloading codespell-1.9.2.tar.gz (45kB)
100% |████████████████████████████████| 51kB 4.2MB/s
25hBuilding wheels for collected packages: codespell
Running setup.py bdist_wheel for codespell ... 25l- done
25h Stored in directory: /home/scrutinizer/.cache/pip/wheels/20/42/eb/32e6da9b97cf208b6e9cecaaf9c08e324f1826a136c721637f
Successfully built codespell
Installing collected packages: codespell
Successfully installed codespell-1.9.2
if I then try to run the command with something like:
python ../bin/codespell.py app/Config/core.php
The command exited with code 1.
Traceback (most recent call last):
File "../bin/codespell.py", line 6, in
import codespell_lib
ImportError: No module named 'codespell_lib'
it doesn't work untill I add a full path to PYTHONPATH which I dont think is expected
QGIS has a typo detection tool in their repo with a list that they have created for well known typos. It lives at: https://github.com/qgis/QGIS/blob/master/scripts/spell_check/spelling.dat
Notice though they do prefer British English spelling.
I was trying to write a script that would diff out all non-duplicate entries so I could add them to codespell. But I've been hitting snags so I opened up this issue.
One minor change in behavior that could be made: Right now, if a file is empty it prints something like:
ERROR: Could not detect encoding: ./__init__.py
It should probably just pass over these files and not print anything.
Hi Lucas!
Thank you for providing codespell, I use it almost every day.
I recognized that there is no manpage for this tool. It would be nice to have one. However Paul Wise hinted that there might occur inconsistencies between the manpage and the --help option.
See here: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=779900
What do you think about adding a git help
like approach for --help and the manpage?
Greetings
Peter
When there're full of typo, a directly generated patch will be great!
Our project installs tools via pip to keep things nice and clean and virtualenv friendly--It would be great if codespell was added to Pypi.
Some entries in the dictionary will never be used by codespell, because they contain uppercase letters or spaces or punctuation characters:
$ LC_ALL=C grep -v -E "^[a-z0-9_'-]+->" codespell_lib/data/dictionary.txt
Amercia->America
Bernouilli->Bernoulli
Blitzkreig->Blitzkrieg
Bonnano->Bonanno
Brasillian->Brazilian
Britian->Britain
Brittish->British
Buddah->Buddha
Buddist->Buddhist
Cambrige->Cambridge
Capetown->Cape Town
Carmalite->Carmelite
Carnagie->Carnegie
Carnagie-Mellon->Carnegie-Mellon
Carnigie->Carnegie
Carnigie-Mellon->Carnegie-Mellon
Carribbean->Caribbean
Carribean->Caribbean
Carthagian->Carthaginian
Cataline->Catiline, Catalina,
Ceasar->Caesar
Celcius->Celsius
Champange->Champagne
Cincinatti->Cincinnati
Cincinnatti->Cincinnati
Coca Cola->Coca-Cola
Conneticut->Connecticut
Dardenelles->Dardanelles
Dravadian->Dravidian
Enlish->English, enlist,
Europian->European
Europians->Europeans
Eurpean->European
Eurpoean->European
Farenheit->Fahrenheit
Febuary->February
Feburary->February
Flemmish->Flemish
Formalhaut->Fomalhaut
Foundland->Newfoundland
Fransiscan->Franciscan
Fransiscans->Franciscans
Galations->Galatians
Gameboy->Game Boy
Ghandi->Gandhi
Godounov->Godunov
Gothenberg->Gothenburg
Gottleib->Gottlieb
Guaduloupe->Guadalupe, Guadeloupe,
Guadulupe->Guadalupe, Guadeloupe,
Guatamala->Guatemala
Guatamalan->Guatemalan
Guilia->Giulia
Guilio->Giulio
Guiness->Guinness
Guiseppe->Giuseppe
Habsbourg->Habsburg
Hallowean->Hallowe'en, Halloween,
Hatian->Haitian
Heidelburg->Heidelberg
Ihaca->Ithaca
Israelies->Israelis
Janurary->January
Januray->January
Japanes->Japanese
Johanine->Johannine
Jospeh->Joseph
Juadaism->Judaism
Juadism->Judaism
Lybia->Libya
Malcom->Malcolm
Massachussets->Massachusetts
Massachussetts->Massachusetts
Mediteranean->Mediterranean
Michagan->Michigan
MingGW->MinGW
Misouri->Missouri
Missisipi->Mississippi
Missisippi->Mississippi
Monserrat->Montserrat
Montnana->Montana
Morisette->Morissette
Morrisette->Morissette
Mythraic->Mithraic
Naploeon->Napoleon
Napolean->Napoleon
Napoleonian->Napoleonic
Nazereth->Nazareth
Newyorker->New Yorker
nightfa;;->nightfall
Novermber->November
Nullabour->Nullarbor
Nuremburg->Nuremberg
Palistian->Palestinian
Palistinian->Palestinian
Palistinians->Palestinians
Papanicalou->Papanicolaou
Peloponnes->Peloponnesus
Pennyslvania->Pennsylvania
Pharoah->Pharaoh
Philipines->Philippines
Phillipine->Philippine
Phillipines->Philippines
Phillippines->Philippines
Phonecian->Phoenecian
Portugese->Portuguese
Postdam->Potsdam
Premonasterians->Premonstratensians
Pucini->Puccini
Puertorrican->Puerto Rican
Puertorricans->Puerto Ricans
Queenland->Queensland
Rockerfeller->Rockefeller
Russion->Russian
Sacremento->Sacramento
Sanhedrim->Sanhedrin
Saterday->Saturday
Saterdays->Saturdays
Sionist->Zionist
Sionists->Zionists
Sixtin->Sistine
Skagerak->Skagerrak
Tolkein->Tolkien
Tuscon->Tucson
Ukranian->Ukrainian
UnitesStates->UnitedStates
Yementite->Yemenite, Yemeni,
In the latest release (1.7) make check
is failing.
The version of codespell on pypi is 1.9.2, which is almost 9 months old (and doesn't have support for loading multiple dictionaries).
Could we have a new release please? :-)
In case if output of 'codespell' is redirected (e.g. to file or to pager) then it should avoid using ASCII color codes
Hello,
I would like to ignore everything that's in (or anywhere below) a specific directory. This currently doesn't seem to be supported, though.
Would you mind implementing it?
Thanks for the useful tool!
So as to include the bdc95ed and other dictionary additions ?
-x
--exclude
works. Thanks!--regex
flagA declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.