Hi,
I am using the ColumnSorterMixin under wxp 3.0.1.1
2014-12-18 13:29:42 DEBUG gm.main (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/wxpython/gmGuiMain.py::<module>() #35): wxPython versions available on this machine: ['3.0-gtk2', '2.8-gtk2-unicode']
2014-12-18 13:29:42 INFO gm.main (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/wxpython/gmGuiMain.py::<module>() #49): wxPython version loaded: 3.0.1.1 ('__WXGTK__', 'wxGTK', 'unicode', 'gtk2', 'wx-assertions-on', 'SWIG-1.3.29')
and Python 2.7
2014-12-18 13:29:42 INFO gm.launcher (gnumed.py::log_startup_info() #280): Platform: ('Linux', 'hermes', '3.16.0-4-686-pae', '#1 SMP Debian 3.16.7-ckt2-1 (2014-12-08)', 'i686', '')
2014-12-18 13:29:42 INFO gm.launcher (gnumed.py::log_startup_info() #281): Python 2.7.8 (default, Oct 18 2014, 16:20:11)
in a list ctrl with report mode. All my list items are forced
to be unicode strings upon insertion. My locale settings are
"de_DE.UTF-8" everywhere:
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #122): unmodified startup locale settings (should be [C])
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #124): current locale settings:
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #125): locale.get_locale(): (None, None)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #127): locale.get_locale(LC_NUMERIC): (None, None)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #127): locale.get_locale(LC_MESSAGES): (None, None)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #127): locale.get_locale(LC_MONETARY): (None, None)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #127): locale.get_locale(LC_COLLATE): (None, None)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #127): locale.get_locale(LC_CTYPE): (None, None)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #127): locale.get_locale(LC_TIME): (None, None)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #130): (locale.set_locale(LC_NUMERIC): C)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #130): (locale.set_locale(LC_MESSAGES): C)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #130): (locale.set_locale(LC_MONETARY): C)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #130): (locale.set_locale(LC_COLLATE): C)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #130): (locale.set_locale(LC_CTYPE): C)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #130): (locale.set_locale(LC_ALL): C)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #130): (locale.set_locale(LC_TIME): C)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #133): locale.getdefaultlocale() - default (user) locale: ('de_DE', 'UTF-8')
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #137): encoding sanity check (also check "locale.nl_langinfo(CODESET)" below):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #142): sys.getdefaultencoding(): [ascii]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #143): locale.getpreferredencoding(): [ANSI_X3.4-1968]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #144): locale.getlocale()[1]: [None]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #145): sys.getfilesystemencoding(): [UTF-8]
2014-12-18 13:29:42 WARNING gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #152): encoding suggested by locale (ANSI_X3.4-1968) does not match encoding currently set in locale (None)
2014-12-18 13:29:42 WARNING gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #153): this might lead to encoding errors
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #158): <codecs> module CAN handle encoding [ANSI_X3.4-1968]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #158): <codecs> module CAN handle encoding [ascii]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #158): <codecs> module CAN handle encoding [UTF-8]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #161): on Linux you can determine a likely candidate for the encoding by running "locale charmap"
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #163): locale related environment variables (${LANG} is typically used):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #166): ${LANGUAGE}=
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #168): ${LC_ALL} not set
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #168): ${LC_CTYPE} not set
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #166): ${LANG}=de_DE.UTF-8
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #170): database of locale conventions:
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(mon_decimal_point):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(int_frac_digits): 127
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(p_sep_by_space): 127
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(frac_digits): 127
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(thousands_sep):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(n_sign_posn): 127
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(decimal_point): .
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(int_curr_symbol):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(n_cs_precedes): 127
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(p_sign_posn): 127
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(mon_thousands_sep):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(negative_sign):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(currency_symbol):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(n_sep_by_space): 127
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(mon_grouping): []
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(p_cs_precedes): 127
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(positive_sign):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #174): locale.localeconv(grouping): []
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #189): locale.nl_langinfo(D_FMT): %m/%d/%y
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #189): locale.nl_langinfo(D_T_FMT): %a %b %e %H:%M:%S %Y
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #189): locale.nl_langinfo(YESEXPR): ^[yY]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #189): locale.nl_langinfo(ALT_DIGITS):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #189): locale.nl_langinfo(T_FMT_AMPM): %I:%M:%S %p
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #189): locale.nl_langinfo(RADIXCHAR): .
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #189): locale.nl_langinfo(ERA_D_FMT):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #189): locale.nl_langinfo(T_FMT): %H:%M:%S
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #189): locale.nl_langinfo(NOEXPR): ^[nN]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #189): locale.nl_langinfo(CRNCYSTR): -
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #189): locale.nl_langinfo(ERA):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #189): locale.nl_langinfo(CODESET): ANSI_X3.4-1968
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #189): locale.nl_langinfo(THOUSEP):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #189): locale.nl_langinfo(ERA_D_T_FMT):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::get_encoding() #418): *actual* encoding of locale is None, using encoding *recommended* by locale
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #198): gmI18N.get_encoding(): ANSI_X3.4-1968
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::activate_locale() #249): activating user-default locale with <locale.setlocale(locale.LC_ALL, '')> returns: [de_DE.UTF-8]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #122): locale settings after activating user-default locale
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #124): current locale settings:
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #125): locale.get_locale(): ('de_DE', 'UTF-8')
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #127): locale.get_locale(LC_NUMERIC): ('de_DE', 'UTF-8')
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #127): locale.get_locale(LC_MESSAGES): ('de_DE', 'UTF-8')
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #127): locale.get_locale(LC_MONETARY): ('de_DE', 'UTF-8')
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #127): locale.get_locale(LC_COLLATE): ('de_DE', 'UTF-8')
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #127): locale.get_locale(LC_CTYPE): ('de_DE', 'UTF-8')
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #127): locale.get_locale(LC_TIME): ('de_DE', 'UTF-8')
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #130): (locale.set_locale(LC_NUMERIC): de_DE.UTF-8)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #130): (locale.set_locale(LC_MESSAGES): de_DE.UTF-8)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #130): (locale.set_locale(LC_MONETARY): de_DE.UTF-8)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #130): (locale.set_locale(LC_COLLATE): de_DE.UTF-8)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #130): (locale.set_locale(LC_CTYPE): de_DE.UTF-8)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #130): (locale.set_locale(LC_ALL): de_DE.UTF-8)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #130): (locale.set_locale(LC_TIME): de_DE.UTF-8)
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #133): locale.getdefaultlocale() - default (user) locale: ('de_DE', 'UTF-8')
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #137): encoding sanity check (also check "locale.nl_langinfo(CODESET)" below):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #142): sys.getdefaultencoding(): [ascii]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #143): locale.getpreferredencoding(): [UTF-8]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #144): locale.getlocale()[1]: [UTF-8]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #145): sys.getfilesystemencoding(): [UTF-8]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #158): <codecs> module CAN handle encoding [UTF-8]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #158): <codecs> module CAN handle encoding [UTF-8]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #158): <codecs> module CAN handle encoding [ascii]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #158): <codecs> module CAN handle encoding [UTF-8]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #161): on Linux you can determine a likely candidate for the encoding by running "locale charmap"
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #163): locale related environment variables (${LANG} is typically used):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #166): ${LANGUAGE}=
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #168): ${LC_ALL} not set
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #168): ${LC_CTYPE} not set
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #166): ${LANG}=de_DE.UTF-8
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #170): database of locale conventions:
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(mon_decimal_point): ,
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(int_frac_digits): 2
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(p_sep_by_space): 1
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(frac_digits): 2
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(thousands_sep): .
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(n_sign_posn): 1
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(decimal_point): ,
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(int_curr_symbol): EUR
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(n_cs_precedes): 0
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(p_sign_posn): 1
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(mon_thousands_sep): .
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(negative_sign): -
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #179): locale.localeconv(currency_symbol): €
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(n_sep_by_space): 1
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(mon_grouping): [3, 3, 0]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(p_cs_precedes): 0
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(positive_sign):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #177): locale.localeconv(grouping): [3, 3, 0]
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #192): locale.nl_langinfo(D_FMT): %d.%m.%Y
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #192): locale.nl_langinfo(D_T_FMT): %a %d %b %Y %T %Z
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #192): locale.nl_langinfo(YESEXPR): ^[jJyY].*
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #192): locale.nl_langinfo(ALT_DIGITS):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #192): locale.nl_langinfo(T_FMT_AMPM):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #192): locale.nl_langinfo(RADIXCHAR): ,
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #192): locale.nl_langinfo(ERA_D_FMT):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #192): locale.nl_langinfo(T_FMT): %T
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #192): locale.nl_langinfo(NOEXPR): ^[nN].*
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #194): locale.nl_langinfo(CRNCYSTR): +€
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #192): locale.nl_langinfo(ERA):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #192): locale.nl_langinfo(CODESET): UTF-8
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #192): locale.nl_langinfo(THOUSEP): .
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #192): locale.nl_langinfo(ERA_D_T_FMT):
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__log_locale_settings() #198): gmI18N.get_encoding(): UTF-8
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__split_locale_into_levels() #95): splitting canonical locale [de_DE] into levels
2014-12-18 13:29:42 DEBUG gm.i18n (/home/ncq/Projekte/gm-git/gnumed/gnumed/Gnumed/pycommon/gmI18N.py::__split_locale_into_levels() #104): system locale levels: {'country': 'de_DE', 'full': 'de_DE', 'language': 'de'}
According to
http://trac.wxwidgets.org/ticket/10999
there might be a problem with the mixin sorting unicode
strings. Hence I created my own sorter like so:
···
#------------------------------------------------------------
def _unicode_aware_column_sorter(self, item1, item2):
sort_col, is_ascending = self.GetSortState()
data1 = self.itemDataMap[item1][sort_col]
data2 = self.itemDataMap[item2][sort_col]
if type(data1) == type(u'') and type(data2) == type(u''):
cmp_result = locale.strcoll(data1, data2)
elif type(data1) == type('') or type(data2) == type(''):
cmp_result = locale.strcoll(str(data1), str(data2))
else:
cmp_result = cmp(data1, data2)
direction = u'ASC'
if not is_ascending:
cmp_result = -1 * cmp_result
direction = u'DESC'
# debug:
if cmp_result < 0:
op1 = u'\u2191 ' # up
op2 = u'\u2193' # down
elif cmp_result > 0:
op2 = u'\u2191 ' # up
op1 = u'\u2193' # down
else:
op1 = u' = '
op2 = u''
print u'%s: [%s]%s[%s]%s (%s)' % (direction, data1, op1, data2, op2, cmp_result)
return cmp_result
def GetColumnSorter(self):
return self._unicode_aware_column_sorter
#------------------------------------------------------------
which, however, generates a sort order which I don't
understand (see the screenshots). It looks like strcoll is
ignoring the "writing hand" \u270d part ?
The following code (with the same locale initialization)
#----------------------------------------------------------------------
def test_strcoll():
candidates = [
(u'\u270d', u'\u270d'),
(u'4', u'\u270d' + u'4'),
(u'4.4', u'\u270d' + u'4.4'),
(u'4', u'\u270d' + u'9'),
(u'4', u'\u270d' + u'2'),
]
for cands in candidates:
print cands[0], u'<vs>', cands[1], '=', locale.strcoll(cands[0], cands[1])
#----------------------------------------------------------------------
shows rather interesting results as well: Notice the lines
with 4 and 4.4, respectively, which - regardless of whether
certain unicode code points are ignored or not - seems like
an outright bug (as opposed to 4 vs 9 and 4 vs 2 which makes
sense if the unicode character is simply ignored before
comparison).
Does anyone know how to do better ?
Karsten
--
GPG key ID E4071346 @ eu.pool.sks-keyservers.net
E167 67FD A291 2BEA 73BD 4537 78B9 A9F9 E407 1346