Mercurial > hg
view tests/test-encoding @ 12408:78a97859b90d
revset: support raw string literals
This adds support for r'...' and r"..." as string literals. Strings
with the "r" prefix will not have their escape characters interpreted.
This is especially useful for grep(), where, with regular string
literals, \number is interpreted as an octal escape code, and \b is
interpreted as the backspace character (\x08).
author | Brodie Rao <brodie@bitheap.org> |
---|---|
date | Fri, 24 Sep 2010 15:36:53 -0500 |
parents | 4c94b6d0fb1c |
children |
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 echo % these should work echo "latin-1" > a HGENCODING=latin-1 hg ci -l latin-1 echo "utf-8" > a HGENCODING=utf-8 hg ci -l utf-8 HGENCODING=latin-1 hg tag `cat latin-1-tag` HGENCODING=latin-1 hg branch `cat latin-1-tag` HGENCODING=latin-1 hg ci -m 'latin1 branch' rm .hg/branch echo "% hg log (ascii)" hg --encoding ascii log echo "% hg log (latin-1)" hg --encoding latin-1 log echo "% hg log (utf-8)" hg --encoding utf-8 log echo "% hg tags (ascii)" HGENCODING=ascii hg tags echo "% hg tags (latin-1)" HGENCODING=latin-1 hg tags echo "% hg tags (utf-8)" HGENCODING=utf-8 hg tags echo "% hg branches (ascii)" HGENCODING=ascii hg branches echo "% hg branches (latin-1)" HGENCODING=latin-1 hg branches echo "% hg branches (utf-8)" HGENCODING=utf-8 hg branches echo '[ui]' >> .hg/hgrc echo 'fallbackencoding = koi8-r' >> .hg/hgrc echo "% hg log (utf-8)" HGENCODING=utf-8 hg log echo "% hg log (dolphin)" HGENCODING=dolphin hg log HGENCODING=ascii hg branch `cat latin-1-tag` cp latin-1-tag .hg/branch HGENCODING=latin-1 hg ci -m 'should fail' exit 0