view tests/test-encoding @ 3835:d1ce5461beed

Allow the user to specify the fallback encoding for the changelog Example: use EUC-JP instead of ISO-8859-1: [ui] fallbackencoding = EUC-JP
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Fri, 08 Dec 2006 22:01:05 -0200
parents 3674ca805a5b
children 3820385fb113
line wrap: on
line source

#!/bin/sh

hg init t
cd t

# we need a repo with some legacy latin-1 changesets
hg unbundle $TESTDIR/legacy-encoding.hg
hg co

python << EOF
f = file('latin-1', 'w'); f.write("latin-1 e' encoded: \xe9"); f.close()
f = file('utf-8', 'w'); f.write("utf-8 e' encoded: \xc3\xa9"); f.close()
f = file('latin-1-tag', 'w'); f.write("\xe9"); f.close()
EOF

echo % should fail with encoding error
echo "plain old ascii" > a
hg st
HGENCODING=ascii hg ci -l latin-1 -d "0 0"

echo % these should work
echo "latin-1" > a
HGENCODING=latin-1 hg ci -l latin-1 -d "0 0"
echo "utf-8" > a
HGENCODING=utf-8 hg ci -l utf-8 -d "0 0"

HGENCODING=latin-1 hg tag -d "0 0" `cat latin-1-tag`
cp latin-1-tag .hg/branch
HGENCODING=latin-1 hg ci -d "0 0" -m 'latin1 branch'
rm .hg/branch

echo % ascii
hg --encoding ascii log
echo % latin-1
hg --encoding latin-1 log
echo % utf-8
hg --encoding utf-8 log
echo % ascii
HGENCODING=ascii hg tags
echo % latin-1
HGENCODING=latin-1 hg tags
echo % utf-8
HGENCODING=utf-8 hg tags
echo % ascii
HGENCODING=ascii hg branches
echo % latin-1
HGENCODING=latin-1 hg branches
echo % utf-8
HGENCODING=utf-8 hg branches

echo '[ui]' >> .hg/hgrc
echo 'fallbackencoding = euc-jp' >> .hg/hgrc
echo % utf-8
HGENCODING=utf-8 hg log