Mercurial > genshi > genshi-test
annotate fixes/fix_unicode_in_strings.py @ 938:a5a1c9a11135 tip
update tags
author | convert-repo |
---|---|
date | Tue, 31 May 2011 20:05:15 +0000 |
parents | 1a86e0af2ae1 |
children |
rev | line source |
---|---|
929
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
1 """Fixer that changes expressions inside strings literals from u"..." to "...". |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
2 |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
3 """ |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
4 |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
5 import re |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
6 from lib2to3 import fixer_base |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
7 |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
8 _literal_re = re.compile(r"(.+?)\b[uU]([rR]?[\'\"])") |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
9 |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
10 class FixUnicodeInStrings(fixer_base.BaseFix): |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
11 |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
12 PATTERN = "STRING" |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
13 |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
14 def transform(self, node, results): |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
15 new = node.clone() |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
16 new.value = _literal_re.sub(r"\1\2", new.value) |
1a86e0af2ae1
Merge r1137 from py3k: add 2to3 build infrastructure to setup.py (this pulls the tests into the source distribution so that tests can be run after building with 2to3)
hodgestar
parents:
diff
changeset
|
17 return new |