MobileRead Forums

MobileRead Forums (https://www.mobileread.com/forums/index.php)
-   Editor (https://www.mobileread.com/forums/forumdisplay.php?f=262)
-   -   Spell Check not working at all (https://www.mobileread.com/forums/showthread.php?t=261649)

shadowThief 06-11-2015 06:01 PM

Spell Check not working at all
 
Hi,
I have some trouble with spell checking. It does not seem to work for me in any book I tried, even after deleting all config files and with a fresh install. (At some point it did work, but I can't pinpoint when it started to fail. I don't use the option that much.)
I used the build-in dictionaries, but tried to install one from openoffice too, with the same result (failure).

I always get this error message:
Code:

calibre, version 2.30.0
ERROR: Failed to check spelling: Failed to check spelling, click "Show details" for the full error information.

Traceback (most recent call last):
  File "/usr/lib/calibre/calibre/gui2/tweak_book/spell.py", line 1184, in get_words
    words = get_all_words(current_container(), dictionaries.default_locale)
  File "/usr/lib/calibre/calibre/ebooks/oeb/polish/spell.py", line 194, in get_all_words
    read_words_from_opf(root, words, file_name, book_locale)
  File "/usr/lib/calibre/calibre/ebooks/oeb/polish/spell.py", line 124, in read_words_from_opf
    add_words_from_escaped_html(tag.text, words, file_name, tag, 'text', book_locale)
  File "/usr/lib/calibre/calibre/ebooks/oeb/polish/spell.py", line 103, in add_words_from_escaped_html
    root = parse('<html><body><div>%s</div></body></html>' % text, decoder=lambda x:x.decode('utf-8'))
  File "/usr/lib/calibre/calibre/ebooks/oeb/polish/parsing.py", line 671, in parse
    return parse_html5(raw, log=log, line_numbers=line_numbers, linenumber_attribute=linenumber_attribute, replace_entities=False, fix_newlines=False)
  File "/usr/lib/calibre/calibre/ebooks/oeb/polish/parsing.py", line 611, in parse_html5
    parser = HTMLParser(tree=builder, track_positions=line_numbers, namespaceHTMLElements=not discard_namespaces)
TypeError: __init__() got an unexpected keyword argument 'track_positions'

If I ignore the error message I can see on the right side of the spell-checking window: "You have no active user dictionaries. You must choose at least one active user dictionary via Preferences->Editor->Manage spelling dictionaries"
If I go there, the US dictionary is the default for the english language. Under "Manage user dictionaries" exist the "Default" dictionary which is marked as active. I tried adding a new dictionary and marked it active, but that neither worked.
Misspelled words are (correctly) marked in the editor though.


What am I missing??


System is Archlinux/Gnome 3.16.2 and latest kernel.

Ah and the Reports tool failes, too. But I guess thats related to the dictionary problem (at least the error traceback has a dictionary call in it).

kovidgoyal 06-11-2015 11:49 PM

Uninstall the distro provided calibre, and install the official binary from the calibre website. This is yet another example of distro maintainers destroying software.

eschwartz 06-12-2015 01:28 AM

Is this due to Arch patching out your modified html5lib?

kovidgoyal 06-12-2015 01:33 AM

yes .

eschwartz 06-12-2015 01:48 AM

@shadowThief -- see my outstanding bugreport on the Arch bugtracker. :(

shadowThief 06-12-2015 07:35 AM

Thanks, it's working now. ::)
I didn't know that arch was patching out :(

@ eschwartz: From what I read in the bug report, there seems to not be any hope for the arch package. They should really move the package to AUR and leave everything inside.

eschwartz 06-12-2015 10:04 AM

They should. Or quarantine it to /opt or just unpatch it or anything really -- its not like it interferes with other packages.
I'd be happy to maintain it in the AUR if there are ethical objections.

Double standards are everywhere, Arch is no exception. What can you do. :rolleyes:


All times are GMT -4. The time now is 09:33 PM.

Powered by: vBulletin
Copyright ©2000 - 3.8.5, Jelsoft Enterprises Ltd.
MobileRead.com is a privately owned, operated and funded community.