diff --git a/.coveragerc b/.coveragerc
index 12579ab..dae3013 100644
--- a/.coveragerc
+++ b/.coveragerc
@@ -2,4 +2,4 @@
 branch = True
 source = codespell_lib
 include = */codespell_lib/*
-omit =
+omit = */codespell_lib/tests/*
diff --git a/codespell_lib/_codespell.py b/codespell_lib/_codespell.py
index 706805a..343ba66 100755
--- a/codespell_lib/_codespell.py
+++ b/codespell_lib/_codespell.py
@@ -840,7 +840,7 @@
                 # skip (relative) directories
                 dirs[:] = [dir_ for dir_ in dirs if not glob_match.match(dir_)]
 
-        else:
+        elif not glob_match.match(filename):  # skip files
             bad_count += parse_file(
                 filename, colors, summary, misspellings, exclude_lines,
                 file_opener, word_regex, ignore_word_regex, context, options)
diff --git a/codespell_lib/data/dictionary.txt b/codespell_lib/data/dictionary.txt
index 29bd529..a2d569b 100644
--- a/codespell_lib/data/dictionary.txt
+++ b/codespell_lib/data/dictionary.txt
@@ -4282,7 +4282,10 @@
 buuilds->builds
 bve->be
 bwtween->between
-byteoder->byte order
+bypas->bypass
+bypased->bypassed
+bypasing->bypassing
+byteoder->byteorder, byte order,
 cacahe->cache
 cacahes->caches
 cace->cache
@@ -6401,7 +6404,11 @@
 confety->confetti
 conffiguration->configuration
 confgiuration->configuration
+confgiure->configure
 confgiured->configured
+confguration->configuration
+confgure->configure
+confgured->configured
 confict->conflict
 conficted->conflicted
 conficts->conflicts
@@ -11336,11 +11343,17 @@
 errorprone->error-prone
 errorr->error
 erros->errors
+errot->error
+errots->errors
 errro->error
 errror->error
 errrors->errors
 errros->errors
 errupted->erupted
+ertoneous->erroneous
+ertoneously->erroneously
+ertor->error, terror,
+ertors->errors, terrors,
 ervery->every
 erverything->everything
 esacpe->escape
@@ -11427,6 +11440,10 @@
 ethnocentricm->ethnocentrism
 ethose->those, ethos,
 etiher->either
+etroneous->erroneous
+etroneously->erroneously
+etror->error, terror,
+etrors->errors, terrors,
 etsablishment->establishment
 etsbalishment->establishment
 etst->test
@@ -13249,6 +13266,8 @@
 flusing->flushing
 flyes->flies, flyers,
 fo->of, for,
+focu->focus
+focued->focused
 focument->document
 focuse->focus
 focusf->focus
@@ -25864,6 +25883,9 @@
 Sionist->Zionist
 Sionists->Zionists
 siply->simply
+sircle->circle
+sircles->circles
+sircular->circular
 sirect->direct
 sirected->directed
 sirecting->directing
@@ -27648,6 +27670,12 @@
 sychronmode->synchronmode
 sychronous->synchronous
 sychronously->synchronously
+sycle->cycle
+sycled->cycled
+sycles->cycles
+syclic->cyclic, psychic,
+syclical->cyclical, physical,
+sycling->cycling
 sycn->sync
 sycology->psychology
 sycronise->synchronise
@@ -27668,6 +27696,8 @@
 syle->style
 syles->styles
 sylibol->syllable
+sylinder->cylinder
+sylinders->cylinders
 syllabills->syllabus, syllabification,
 sylog->syslog
 symantics->semantics
diff --git a/codespell_lib/tests/test_basic.py b/codespell_lib/tests/test_basic.py
index 2e8fd73..52253f8 100644
--- a/codespell_lib/tests/test_basic.py
+++ b/codespell_lib/tests/test_basic.py
@@ -288,10 +288,12 @@
 def test_ignore(tmpdir, capsys):
     """Test ignoring of files and directories."""
     d = str(tmpdir)
-    with open(op.join(d, 'good.txt'), 'w') as f:
+    goodtxt = op.join(d, 'good.txt')
+    with open(goodtxt, 'w') as f:
         f.write('this file is okay')
     assert cs.main(d) == 0
-    with open(op.join(d, 'bad.txt'), 'w') as f:
+    badtxt = op.join(d, 'bad.txt')
+    with open(badtxt, 'w') as f:
         f.write('abandonned')
     assert cs.main(d) == 1
     assert cs.main('--skip=bad*', d) == 0
@@ -305,6 +307,9 @@
     assert cs.main('--skip=*ignoredir*', d) == 1
     assert cs.main('--skip=ignoredir', d) == 1
     assert cs.main('--skip=*ignoredir/bad*', d) == 1
+    badjs = op.join(d, 'bad.js')
+    copyfile(badtxt, badjs)
+    assert cs.main('--skip=*.js', goodtxt, badtxt, badjs) == 1
 
 
 def test_check_filename(tmpdir, capsys):
