annotate tests/test-extra-filelog-entry @ 11297:d320e70442a5

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>.
author FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
date Sun, 06 Jun 2010 17:20:10 +0900
parents b51a8138292a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4531
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
1 #!/bin/sh
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
2 #
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
3 # test for issue351
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
4
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
5 # Environement setup for MQ
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
6 echo "[extensions]" >> $HGRCPATH
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
7 echo "mq=" >> $HGRCPATH
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
8
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
9 #Repo init
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
10 hg init
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
11 hg qinit
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
12
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
13 echo b > b
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
14 hg ci -A -m foo
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
15 echo cc > b
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
16 hg qnew -f foo.diff
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
17 echo b > b
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
18 hg qrefresh
b51a8138292a Avoid extra filelogs entries.
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
19 hg debugindex .hg/store/data/b.i