Skip to content

Commit caa1c8b

Browse files
committed
Fix issue #2: preserve control characters in unicode format
1 parent 82f131e commit caa1c8b

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

JavaPropertiesEditor.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@ def __missing__(self, key):
2424
LOWER_TABLE = LowerTable(enumerate(MAP))
2525
IS_UPPER = re.compile('\\\\u([A-F][A-Z0-9]{3,3}|[0-9][A-F][A-F0-9]{2,2}|[0-9]{2,2}[A-F][A-F0-9]|[0-9]{3,3}[A-F])')
2626

27+
UNIC = '\\u000'
28+
CTRL = '>LRTC<'
29+
2730
class JavaPropertiesConvertCommand(sublime_plugin.TextCommand):
2831
def run(self, edit, contents):
2932
view = self.view
@@ -56,7 +59,7 @@ def on_load(self, view):
5659
return
5760
regions = sublime.Region(0, view.size())
5861
orignal_contents = view.substr(regions)
59-
contents = orignal_contents.encode('iso-8859-1', 'replace').decode('raw_unicode_escape')
62+
contents = orignal_contents.replace(UNIC, CTRL).encode('iso-8859-1', 'replace').decode('raw_unicode_escape').replace(CTRL, UNIC)
6063
if contents == orignal_contents:
6164
return
6265
if IS_UPPER.search(orignal_contents) == None:

0 commit comments

Comments
 (0)