test-encoding-align.t
154 lines
| 5.4 KiB
| text/troff
|
Tads3Lexer
/ tests / test-encoding-align.t
Matt Mackall
|
r12418 | Test alignment of multibyte characters | ||
$ HGENCODING=utf-8 | ||||
$ export HGENCODING | ||||
$ hg init t | ||||
$ cd t | ||||
Matt Harbison
|
r39743 | $ "$PYTHON" << EOF | ||
Augie Fackler
|
r41381 | > from mercurial import pycompat | ||
Matt Mackall
|
r12418 | > # (byte, width) = (6, 4) | ||
Pulkit Goyal
|
r36069 | > s = b"\xe7\x9f\xad\xe5\x90\x8d" | ||
Matt Mackall
|
r12418 | > # (byte, width) = (7, 7): odd width is good for alignment test | ||
Pulkit Goyal
|
r36069 | > m = b"MIDDLE_" | ||
Matt Mackall
|
r12418 | > # (byte, width) = (18, 12) | ||
Pulkit Goyal
|
r36069 | > l = b"\xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d" | ||
> f = open('s', 'wb'); f.write(s); f.close() | ||||
> f = open('m', 'wb'); f.write(m); f.close() | ||||
> f = open('l', 'wb'); f.write(l); f.close() | ||||
Matt Mackall
|
r12418 | > # instant extension to show list of options | ||
Pulkit Goyal
|
r36069 | > f = open('showoptlist.py', 'wb'); f.write(b"""# encoding: utf-8 | ||
Yuya Nishihara
|
r32337 | > from mercurial import registrar | ||
Gregory Szorc
|
r21254 | > cmdtable = {} | ||
Yuya Nishihara
|
r32337 | > command = registrar.command(cmdtable) | ||
Gregory Szorc
|
r21254 | > | ||
Pulkit Goyal
|
r33097 | > @command(b'showoptlist', | ||
Augie Fackler
|
r41381 | > [(b's', b'opt1', b'', b'short width' + (b' ' +%(s)s) * 8, %(s)s), | ||
> (b'm', b'opt2', b'', b'middle width' + (b' ' + %(m)s) * 8, %(m)s), | ||||
> (b'l', b'opt3', b'', b'long width' + (b' ' + %(l)s) * 8, %(l)s)], | ||||
> b'') | ||||
Matt Mackall
|
r12418 | > def showoptlist(ui, repo, *pats, **opts): | ||
> '''dummy command to show option descriptions''' | ||||
> return 0 | ||||
Augie Fackler
|
r41381 | > """ % {b's': pycompat.byterepr(s), | ||
> b'm': pycompat.byterepr(m), | ||||
> b'l': pycompat.byterepr(l), | ||||
> }) | ||||
Matt Mackall
|
r12418 | > f.close() | ||
> EOF | ||||
$ S=`cat s` | ||||
$ M=`cat m` | ||||
$ L=`cat l` | ||||
alignment of option descriptions in help | ||||
$ cat <<EOF > .hg/hgrc | ||||
> [extensions] | ||||
> ja_ext = `pwd`/showoptlist.py | ||||
> EOF | ||||
check alignment of option descriptions in help | ||||
$ hg help showoptlist | ||||
Matt Mackall
|
r15203 | hg showoptlist | ||
Matt Mackall
|
r12418 | |||
dummy command to show option descriptions | ||||
options: | ||||
Matt Mackall
|
r15145 | -s --opt1 \xe7\x9f\xad\xe5\x90\x8d short width \xe7\x9f\xad\xe5\x90\x8d \xe7\x9f\xad\xe5\x90\x8d \xe7\x9f\xad\xe5\x90\x8d \xe7\x9f\xad\xe5\x90\x8d \xe7\x9f\xad\xe5\x90\x8d \xe7\x9f\xad\xe5\x90\x8d \xe7\x9f\xad\xe5\x90\x8d \xe7\x9f\xad\xe5\x90\x8d (esc) | ||
-m --opt2 MIDDLE_ middle width MIDDLE_ MIDDLE_ MIDDLE_ MIDDLE_ MIDDLE_ | ||||
MIDDLE_ MIDDLE_ MIDDLE_ | ||||
-l --opt3 \xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d long width \xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d \xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d \xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d (esc) | ||||
\xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d \xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d \xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d \xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d (esc) | ||||
\xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d (esc) | ||||
Matt Mackall
|
r12418 | |||
Matt Mackall
|
r22110 | (some details hidden, use --verbose to show complete help) | ||
Matt Mackall
|
r12418 | |||
$ rm -f s; touch s | ||||
$ rm -f m; touch m | ||||
$ rm -f l; touch l | ||||
add files | ||||
$ cp s $S | ||||
$ hg add $S | ||||
$ cp m $M | ||||
$ hg add $M | ||||
$ cp l $L | ||||
$ hg add $L | ||||
commit(1) | ||||
$ echo 'first line(1)' >> s; cp s $S | ||||
$ echo 'first line(2)' >> m; cp m $M | ||||
$ echo 'first line(3)' >> l; cp l $L | ||||
$ hg commit -m 'first commit' -u $S | ||||
commit(2) | ||||
$ echo 'second line(1)' >> s; cp s $S | ||||
$ echo 'second line(2)' >> m; cp m $M | ||||
$ echo 'second line(3)' >> l; cp l $L | ||||
$ hg commit -m 'second commit' -u $M | ||||
commit(3) | ||||
$ echo 'third line(1)' >> s; cp s $S | ||||
$ echo 'third line(2)' >> m; cp m $M | ||||
$ echo 'third line(3)' >> l; cp l $L | ||||
$ hg commit -m 'third commit' -u $L | ||||
check alignment of user names in annotate | ||||
$ hg annotate -u $M | ||||
Mads Kiilerich
|
r12941 | \xe7\x9f\xad\xe5\x90\x8d: first line(2) (esc) | ||
Matt Mackall
|
r12418 | MIDDLE_: second line(2) | ||
Mads Kiilerich
|
r12941 | \xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d: third line(2) (esc) | ||
Matt Mackall
|
r12418 | |||
check alignment of filenames in diffstat | ||||
$ hg diff -c tip --stat | ||||
MIDDLE_ | 1 + | ||||
Mads Kiilerich
|
r12941 | \xe7\x9f\xad\xe5\x90\x8d | 1 + (esc) | ||
\xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d | 1 + (esc) | ||||
Matt Mackall
|
r12418 | 3 files changed, 3 insertions(+), 0 deletions(-) | ||
add branches/tags | ||||
$ hg branch $S | ||||
Mads Kiilerich
|
r12941 | marked working directory as branch \xe7\x9f\xad\xe5\x90\x8d (esc) | ||
Matt Mackall
|
r15615 | (branches are permanent and global, did you want a bookmark?) | ||
Matt Mackall
|
r12418 | $ hg tag $S | ||
Matt Mackall
|
r21571 | $ hg book -f $S | ||
Matt Mackall
|
r12418 | $ hg branch $M | ||
marked working directory as branch MIDDLE_ | ||||
$ hg tag $M | ||||
Matt Mackall
|
r21571 | $ hg book -f $M | ||
Matt Mackall
|
r12418 | $ hg branch $L | ||
Mads Kiilerich
|
r12941 | marked working directory as branch \xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d (esc) | ||
Matt Mackall
|
r12418 | $ hg tag $L | ||
Matt Mackall
|
r21571 | $ hg book -f $L | ||
Matt Mackall
|
r12418 | |||
check alignment of branches | ||||
Matt Mackall
|
r21570 | $ hg branches | ||
\xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d 5:d745ff46155b (esc) | ||||
MIDDLE_ 4:9259be597f19 (inactive) | ||||
\xe7\x9f\xad\xe5\x90\x8d 3:b06c5b6def9e (inactive) (esc) | ||||
default 2:64a70663cee8 (inactive) | ||||
Matt Mackall
|
r12418 | |||
check alignment of tags | ||||
$ hg tags | ||||
tip 5:d745ff46155b | ||||
Mads Kiilerich
|
r12941 | \xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d 4:9259be597f19 (esc) | ||
Matt Mackall
|
r12418 | MIDDLE_ 3:b06c5b6def9e | ||
Mads Kiilerich
|
r12941 | \xe7\x9f\xad\xe5\x90\x8d 2:64a70663cee8 (esc) | ||
Mads Kiilerich
|
r16913 | |||
Matt Mackall
|
r21571 | check alignment of bookmarks | ||
$ hg book | ||||
MIDDLE_ 5:d745ff46155b | ||||
\xe7\x9f\xad\xe5\x90\x8d 4:9259be597f19 (esc) | ||||
* \xe9\x95\xb7\xe3\x81\x84\xe9\x95\xb7\xe3\x81\x84\xe5\x90\x8d\xe5\x89\x8d 5:d745ff46155b (esc) | ||||