ttempe / chinese-support-addon

Addon for Anki2 that makes easier to input Chinese, in the spirit of batterseapower’s pinyin-toolkit for Anki1
https://github.com/ttempe/chinese-support-addon/wiki
47 stars 19 forks source link

Special characters in the username (Mornir's bug) #29

Closed ttempe closed 11 years ago

ttempe commented 11 years ago

On Windows, when you have a nonalphabetic (Chinese, accented...) character in your Windows username, you will encounter the following bug when running Anki.

Traceback (most recent call last):

File "C:\cygwin\home\dae\win\build\pyi.win32\anki\outPYZ1.pyz/aqt.addons", line 38, in loadAddons

File "c:\pyi\iu.py", line 436, in importHook

File "c:\pyi\iu.py", line 521, in doimport

File "C:\Users\Ren�\Documents\Anki\addons\Chinese_support.py", line 59, in

import chinese.edit

File "c:\pyi\iu.py", line 436, in importHook

File "c:\pyi\iu.py", line 521, in doimport

File "C:\Users\Ren�\Documents\Anki\addons\chinese\edit.py", line 25, in

import edit_behavior

File "c:\pyi\iu.py", line 436, in importHook

File "c:\pyi\iu.py", line 521, in doimport

File "C:\Users\Ren�\Documents\Anki\addons\chinese\edit_behavior.py", line 13, in

from edit_functions import *

File "c:\pyi\iu.py", line 436, in importHook

File "c:\pyi\iu.py", line 521, in doimport

File "C:\Users\Ren�\Documents\Anki\addons\chinese\edit_functions.py", line 496, in

characterLookup = characterlookup.CharacterLookup('C')

File "C:\Users\Ren�\Documents\Anki\addons\chinese\cjklib\characterlookup.py", line 110, in init

self.db = dbconnector.getDBConnector(databaseUrl)

File "C:\Users\Ren�\Documents\Anki\addons\chinese\cjklib\dbconnector.py", line 84, in getDBConnector

_dbconnectInst = DatabaseConnector(databaseSettings)

File "C:\Users\Ren�\Documents\Anki\addons\chinese\cjklib\dbconnector.py", line 199, in init

self.connection = self.engine.connect()

File "C:\Users\Ren�\Documents\Anki\addons\chinese\sqlalchemy\engine\base.py", line 1811, in connect

return self.Connection(self, **kwargs)

File "C:\Users\Ren�\Documents\Anki\addons\chinese\sqlalchemy\engine\base.py", line 832, in init

self.__connection = connection or engine.raw_connection()

File "C:\Users\Ren�\Documents\Anki\addons\chinese\sqlalchemy\engine\base.py", line 1874, in raw_connection

return self.pool.unique_connection()

File "C:\Users\Ren�\Documents\Anki\addons\chinese\sqlalchemy\pool.py", line 142, in unique_connection

return _ConnectionFairy(self).checkout()

File "C:\Users\Ren�\Documents\Anki\addons\chinese\sqlalchemy\pool.py", line 369, in init

rec = self._connection_record = pool.get()

File "C:\Users\Ren�\Documents\Anki\addons\chinese\sqlalchemy\pool.py", line 213, in get

return self.do_get()

File "C:\Users\Ren�\Documents\Anki\addons\chinese\sqlalchemy\pool.py", line 600, in do_get

c = self.create_connection()

File "C:\Users\Ren�\Documents\Anki\addons\chinese\sqlalchemy\pool.py", line 147, in create_connection

return _ConnectionRecord(self)

File "C:\Users\Ren�\Documents\Anki\addons\chinese\sqlalchemy\pool.py", line 253, in init

self.connection = self.__connect()

File "C:\Users\Ren�\Documents\Anki\addons\chinese\sqlalchemy\pool.py", line 319, in __connect

connection = self.__pool._creator()

File "C:\Users\Ren�\Documents\Anki\addons\chinese\sqlalchemy\engine\strategies.py", line 82, in connect

return dialect.connect(_cargs, *_cparams)

File "C:\Users\Ren�\Documents\Anki\addons\chinese\sqlalchemy\engine\default.py", line 249, in connect

return self.dbapi.connect(_cargs, *_cparams)

OperationalError: (OperationalError) unable to open database file None None

ttempe commented 11 years ago

Not an easy one to fix. 0.7.3 will detect the issue and display a link to the wiki, with a workaround. Sorry to all inconvenienced, but I hope that will be good enough until cjklib gets maintained again, or someone other than me gets a good look at it.