Staging
v0.5.0
https://foss.heptapod.net/mercurial/hgview
Revision 1ddc87097b45555523fd8b8d18874aecdee85d2f authored by Alain Leufroy on 28 May 2013, 10:34:27 UTC, committed by Alain Leufroy on 28 May 2013, 10:34:27 UTC
We were decoding strings for changeset description and file data only.  But we
also have to decode all all meta-information from Hg repo (a.k.a. usernames,
bookmarks, tags, branches, filenames).

String are decoded just at rendering times. Data are kept binary string for
other operation (eg: comparing filenames).

We use the ``hgviewlib.util.tounicode`` function everywhere now.

We also missed using utf-8 for Scintilla.

:Fix initiated by: Юрий Мандрик.

.. note:: We try to decode using utf8, iso-8859-15 and cp1252 (in this order)
          using the first that successfully decode the string. If all fail we
          use utf8 with ``replace`` strategy.

test case used::

    hg init cyrillic
    cd cyrillic
    hg branch 'ЖЗИЙФ'
    echo 'ЖЗИЙФ' > ЖЗИЙФ
    hg add ЖЗИЙФ
    hg ci -m 'ЖЗИЙФ' -u 'ЖЗИЙФ'
    hg bookmark 'ЖЗИЙФЖЗИЙФ'
    hg tag 'ЖЗИЙФ'
    hg mv 'ЖЗИЙФ' 'ЖЗИЙФЖЗИЙФ'
    hg ci -m 'move'
    echo 'hello' > ЖЗИЙФЖЗИЙФ
    hg ci -m 'back to ascii'
    hg rm ЖЗИЙФЖЗИЙФ
    hg ci -m 'remove'
1 parent d42a956
History
Tip revision: 1ddc87097b45555523fd8b8d18874aecdee85d2f authored by Alain Leufroy on 28 May 2013, 10:34:27 UTC
[qt] full support for unicode with utf-8 encoding (closes #142378)
Tip revision: 1ddc870
File Mode Size
bin
debian
debian.squeeze
doc
hgext
hgviewlib
.hgignore -rw-r--r-- 49 bytes
.hgtags -rw-r--r-- 2.1 KB
COPYING -rw-r--r-- 17.6 KB
ChangeLog -rw-r--r-- 5.7 KB
MANIFEST.in -rw-r--r-- 648 bytes
README -rw-r--r-- 1.7 KB
__pkginfo__.py l--------- 24 bytes
debian.maverick l--------- 14 bytes
debian.natty l--------- 14 bytes
setup.py -rw-r--r-- 13.5 KB

README

back to top