outwiker icon indicating copy to clipboard operation
outwiker copied to clipboard

противоречия между CyHunspellwrapper и PyHunspell

Open AlexeiKharchev opened this issue 2 years ago • 4 comments

Попробуйте, пожалуйста, сами запустить проект из исходников (желательно на чистой системе) AttributeError: module 'hunspell' has no attribute 'Hunspell' у меня стоит Python 3.9.6 - cкомпилирован из исходников командами ./configure && make -j4 && sudo checkinstall

хотел избавиться от CyHunspellwrapper и заменить на spellchecker, но недостаток опыта мешает победить циклические ссылки на функцию GetOS()

PS: Программа замечательная, очень хочется присоединиться к Вашему проекту пока придется пользоваться snap

AlexeiKharchev avatar Aug 24 '21 03:08 AlexeiKharchev

А можно полное описание ошибки? Я не уверен, что удастся избавиться от CyHunspell, потому что это единственная обертка над hunspell, которая мне попалась, которая нормально собирается под Windows и Linux.

Jenyay avatar Aug 24 '21 05:08 Jenyay

python3 src/runoutwiker.py wxPython language: LANGUAGE_RUSSIAN Traceback (most recent call last): File "/media/C/Git_docs/outwiker/src/runoutwiker.py", line 67, in starter.processGUI() File "/media/C/Git_docs/outwiker/src/outwiker/core/starter.py", line 52, in processGUI self.__openRecentWiki() File "/media/C/Git_docs/outwiker/src/outwiker/core/starter.py", line 94, in __openRecentWiki openWiki(self._application.recentWiki[0]) File "/media/C/Git_docs/outwiker/src/outwiker/core/commands.py", line 231, in openWiki Application.wikiroot = result File "/media/C/Git_docs/outwiker/src/outwiker/core/application.py", line 407, in wikiroot self.onWikiOpen(self.__wikiroot) File "/media/C/Git_docs/outwiker/src/outwiker/core/event.py", line 54, in call handler[0](*args, **kwargs) File "/media/C/Git_docs/outwiker/src/outwiker/gui/tabscontroller.py", line 246, in __onWikiOpen self.__loadTabs(root) File "/media/C/Git_docs/outwiker/src/outwiker/gui/tabscontroller.py", line 222, in __loadTabs self._application.selectedPage = self._tabsCtrl.GetPage(selectedTab) File "/media/C/Git_docs/outwiker/src/outwiker/core/application.py", line 476, in selectedPage self.__wikiroot.selectedPage = page File "/media/C/Git_docs/outwiker/src/outwiker/core/tree.py", line 425, in selectedPage self.root.onPageSelect(self._selectedPage) File "/media/C/Git_docs/outwiker/src/outwiker/core/event.py", line 54, in call handler[0](*args, **kwargs) File "/media/C/Git_docs/outwiker/src/outwiker/core/event.py", line 54, in call handler[0](*args, **kwargs) File "/media/C/Git_docs/outwiker/src/outwiker/gui/currentpagepanel.py", line 102, in __onPageSelect self.__updatePageView(page) File "/media/C/Git_docs/outwiker/src/outwiker/gui/currentpagepanel.py", line 134, in __updatePageView self.__createPageView(page) File "/media/C/Git_docs/outwiker/src/outwiker/gui/currentpagepanel.py", line 153, in __createPageView self.__createConcretePageView(page) File "/media/C/Git_docs/outwiker/src/outwiker/gui/currentpagepanel.py", line 187, in __createConcretePageView pageView = factory.getPageView(self, self._application) File "/media/C/Git_docs/outwiker/src/outwiker/pages/wiki/wikipage.py", line 84, in getPageView return WikiPageView(parent, application) File "/media/C/Git_docs/outwiker/src/outwiker/pages/wiki/wikipageview.py", line 39, in init super(WikiPageView, self).init(parent, application) File "/media/C/Git_docs/outwiker/src/outwiker/pages/wiki/basewikipageview.py", line 24, in init super(BaseWikiPageView, self).init(parent, application) File "/media/C/Git_docs/outwiker/src/outwiker/pages/html/basehtmlpanel.py", line 51, in init self._codeEditor = self.getTextEditor()(self.notebook) File "/media/C/Git_docs/outwiker/src/outwiker/pages/wiki/wikieditor.py", line 17, in init super().init(parent) File "/media/C/Git_docs/outwiker/src/outwiker/gui/texteditor.py", line 71, in init self.setDefaultSettings() File "/media/C/Git_docs/outwiker/src/outwiker/pages/wiki/wikieditor.py", line 84, in setDefaultSettings super(WikiEditor, self).setDefaultSettings() File "/media/C/Git_docs/outwiker/src/outwiker/gui/texteditor.py", line 145, in setDefaultSettings self.getSpellChecker().skipWordsWithNumbers = self.config.spellSkipDigits.value File "/media/C/Git_docs/outwiker/src/outwiker/gui/texteditor.py", line 265, in getSpellChecker spellChecker = SpellChecker(langlist, spellDirList) File "/media/C/Git_docs/outwiker/src/outwiker/core/spellchecker/spellchecker.py", line 18, in init self._realChecker = getOS().getSpellChecker(langlist, folders) File "/media/C/Git_docs/outwiker/src/outwiker/core/system.py", line 199, in getSpellChecker return CyHunspellWrapper(langlist, folders) File "/media/C/Git_docs/outwiker/src/outwiker/core/spellchecker/cyhunspellwrapper.py", line 49, in init checker = hunspell.Hunspell( AttributeError: module 'hunspell' has no attribute 'Hunspell'

AlexeiKharchev avatar Aug 28 '21 01:08 AlexeiKharchev

в общем, закомментировал несколько строк в system.py и texteditor.py сейчас запустилось

AlexeiKharchev avatar Aug 28 '21 01:08 AlexeiKharchev

I have the same problem with the latest version, what is the solution?

"/home/hli/PycharmProjects/outwiker/src/outwiker/core/spellchecker/cyhunspellwrapper.py", line 53, in __init__
   checker = hunspell.Hunspell(
AttributeError: module 'hunspell' has no attribute 'Hunspell'. Did you mean: 'HunSpell'?

lbm-services avatar Feb 14 '24 19:02 lbm-services