Messages in this thread |  | | Subject | Re: Codespell dictionary path is no longer absolute | From | Joe Perches <> | Date | Sun, 09 May 2021 10:02:38 -0700 |
| |
On Sun, 2021-05-09 at 21:12 +0530, Dwaipayan Ray wrote: > A year ago, the codespell dictionary was moved from > /usr/share/codespell/dictionary.txt to data/dictionary.txt under > the codespell_lib installation directory. > > checkpatch.pl still has the default codespell path as > /usr/share/codespell/dictionary.txt. > Any new installations will now also need to specify --codespellfile > option along with --codespell. > > Can auto detection of the dictionary path be enabled with something > like this? [] > diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl [] > @@ -889,6 +889,9 @@ if (open(my $spelling, '<', $spelling_file)) { > } > > if ($codespell) { > + if (! -e "$codespellfile" && which("python") ne "") { > + $codespellfile = `python -c "import os.path as op; import code > spell_lib; print(op.join(op.dirname(codespell_lib.__file__), 'data', 'dictiona > ry.txt'), end='')"`; > + }
Maybe, but it doesn't work with python2
And it's likely better to do as few things in python as possible so maybe ditch the op.join and use perl instead
if (! -e "$codespellfile" && which("python") ne "" && `python -c "import sys; print(sys.version_info.major)"` >= "3") { $codespellfile = dirname(`python -c "import codespell_lib; print(codespell_lib.__file__);"`) . "/data/dictionary.txt"; }
|  |