summaryrefslogtreecommitdiff
path: root/setup/main.py
diff options
context:
space:
mode:
Diffstat (limited to 'setup/main.py')
-rw-r--r--setup/main.py36
1 files changed, 25 insertions, 11 deletions
diff --git a/setup/main.py b/setup/main.py
index d05c015..47fa53b 100644
--- a/setup/main.py
+++ b/setup/main.py
@@ -525,33 +525,39 @@ class AnthySetup(object):
has_mbcs = True
break
if has_mbcs:
- import urllib
- id = urllib.quote(id)
+ id = id.encode('hex')
if id.find('/') >=0:
id = id[id.rindex('/') + 1:]
if id.find('.') >=0:
id = id[:id.rindex('.')]
+
+ if id.startswith('0x'):
+ id = id.encode('hex')
+ has_mbcs = True
+ if has_mbcs:
+ id = '0x' + id
return id
def __get_dict_file_from_id(self, selected_id):
- found = False
- files = self.prefs.get_value('dict', 'files')
-
if selected_id == 'anthy_zipcode':
return self.prefs.get_value('dict', 'anthy_zipcode')[0]
elif selected_id == 'ibus_symbol':
return self.prefs.get_value('dict', 'ibus_symbol')[0]
elif selected_id == 'ibus_oldchar':
return self.prefs.get_value('dict', 'ibus_oldchar')[0]
+
+ files = self.prefs.get_value('dict', 'files')
+ retval = None
+
for file in files:
+ file = str(file)
id = self.__get_quoted_id(file)
+ # The selected_id is already quoted.
if selected_id == id:
- found = True
+ retval = file
break
- if found:
- return file
- return None
+ return retval
def __is_system_dict_file_from_id(self, selected_id):
prefs = self.prefs
@@ -583,6 +589,7 @@ class AnthySetup(object):
def __append_dicts_in_model(self):
prefs = self.prefs
for file in prefs.get_value('dict', 'files'):
+ file = str(file)
if not path.exists(file):
continue
if file in prefs.get_value('dict', 'anthy_zipcode'):
@@ -1085,7 +1092,10 @@ class AnthySetup(object):
file = self.__get_dict_file_from_id(selected_id)
if file != None:
- files = self.prefs.get_value('dict', 'files')
+ files = []
+ values = self.prefs.get_value('dict', 'files')
+ for dbus_file in values:
+ files.append(str(dbus_file))
files.remove(file)
self.prefs.set_value('dict', 'files', files)
self.xml.get_widget('btn_apply').set_sensitive(True)
@@ -1113,6 +1123,7 @@ class AnthySetup(object):
if dict_file == None:
return
+ # The selected id is already quoted.
section = 'dict/file/' + selected_id
if 'preview_lines' not in self.prefs.keys(section):
section = 'dict/file/default'
@@ -1170,7 +1181,10 @@ class AnthySetup(object):
l.swap(it, next_it)
dict_file = self.__get_dict_file_from_id(selected_id)
- files = self.prefs.get_value('dict', 'files')
+ files = []
+ values = self.prefs.get_value('dict', 'files')
+ for dbus_file in values:
+ files.append(str(dbus_file))
if dict_file == None:
return