A Scalable, User-Friendly Source Control System.
Go to file
FUJIWARA Katsunori 9cce255bec replace Python standard textwrap by MBCS sensitive one for i18n text
Mercurial has problem around text wrapping/filling in MBCS encoding
environment, because standard 'textwrap' module of Python can not
treat it correctly. It splits byte sequence for one character into two
lines.

According to unicode specification, "east asian width" classifies
characters into:

   W(ide), N(arrow), F(ull-width), H(alf-width), A(mbiguous)


W/N/F/H can be always recognized as 2/1/2/1 bytes in byte sequence,
but 'A' can not. Size of 'A' depends on language in which it is used.

Unicode specification says:

   If the context(= language) cannot be established reliably they
   should be treated as narrow characters by default

but many of class 'A' characters are full-width, at least, in Japanese
environment.

So, this patch treats class 'A' characters as full-width always for
safety wrapping.

This patch focuses only on MBCS safe-ness, not on writing/printing
rule strict wrapping for each languages

MBCS sensitive textwrap class is originally implemented
by ITO Nobuaki <daydream.trippers@gmail.com>.
2010-06-06 17:20:10 +09:00
contrib shrink-revlog: use util.mktempcopy() to preserve mode of index file. 2010-06-03 10:18:33 -04:00
doc hgrc: improve docs for the trusted section 2010-06-04 20:13:51 -05:00
hgext rebase: use usual util.abort rather than error.ParseError 2010-06-04 17:22:33 -05:00
i18n merge with i18n stable 2010-06-01 12:25:43 -03:00
mercurial replace Python standard textwrap by MBCS sensitive one for i18n text 2010-06-06 17:20:10 +09:00
tests replace Python standard textwrap by MBCS sensitive one for i18n text 2010-06-06 17:20:10 +09:00
.hgignore win32text: be more careful about rejecting violating changesets 2009-04-24 00:06:01 -07:00
.hgsigs Added signature for changeset b3ef44e63f53 2010-06-01 10:54:03 -05:00
CONTRIBUTORS Add note to CONTRIBUTORS file 2007-11-07 21:10:30 -06:00
COPYING Add COPYING 2005-06-17 09:32:13 -08:00
hg Update license to GPLv2+ 2010-01-19 22:20:08 -06:00
hgeditor Fixed a bashism with the use of $RANDOM in hgeditor. 2010-05-19 18:06:35 +02:00
hgweb.cgi hgweb: simplify hgweb.cgi, add help pointer 2010-04-26 11:03:40 -05:00
Makefile Respect the DESTDIR variable during 'make install' 2010-04-16 23:59:43 +02:00
README change wiki/bts URLs to point to new hostname 2009-06-24 15:32:37 +02:00
setup.py pylint, pyflakes: remove unused or duplicate imports 2010-04-14 17:58:10 +09:00

Basic install:

 $ make            # see install targets
 $ make install    # do a system-wide install
 $ hg debuginstall # sanity-check setup
 $ hg              # see help

See http://mercurial.selenic.com/ for detailed installation
instructions, platform-specific notes, and Mercurial user information.