コード例 #1
0
ファイル: kconfig.py プロジェクト: suomela/konko
 def set_config(self, path0, val0):
     self.expect(path0, dict, val0)
     for key, v in val0.items():
         p = path0 + [key]
         if key == u"search-ignore-case":
             self.expect(p, bool, v)
             self.search_flags = re.IGNORECASE if v else 0
         elif key == u"tag-ignore-case":
             self.expect(p, bool, v)
             self.tag_flags = re.IGNORECASE if v else 0
         elif key == u"word-ignore-case":
             self.expect(p, bool, v)
             self.word_flags = re.IGNORECASE if v else 0
     for key, v in val0.items():
         p = path0 + [key]
         if key in (u"search-ignore-case", u"tag-ignore-case", u"word-ignore-case"):
             pass
         elif key == u"source":
             self.set_source(p, v)
         elif key == u"output-dir":
             self.expect(p, unicode, v)
             self.output_dir = v
         elif key == u"encoding":
             self.expect(p, unicode, v)
             self.encoding = v
         elif key == u"context":
             self.expect(p, int, v)
             self.context = v
         elif key == u"server-port":
             self.expect(p, int, v)
             self.server_port = v
         elif key == u"search":
             self.set_search(p, v)
         elif key == u"skip-files":
             self.expect_string_list(p, v)
             self.skip_files += v
         elif key == u"tag-breaks-word":
             self.expect(p, bool, v)
             self.tag_breaks_word = v
         elif key == u"separators-in-compound":
             self.expect(p, bool, v)
             self.separators_in_compound = v
         elif key == u"delete":
             self.set_delete(p, v)
         elif key == u"compound":
             self.set_compound(p, v)
         elif key == u"text":
             self.expect(p, unicode, v)
             self.text = kutil.safe_regex(v, self.tag_flags)
         elif key == u"sample":
             self.expect(p, unicode, v)
             self.sample = kutil.safe_regex(v, self.tag_flags)
         elif key == u"tag":
             self.expect(p, unicode, v)
             self.tag = kutil.safe_regex(v, self.tag_flags)
         elif key == u"word":
             self.expect(p, unicode, v)
             self.word = kutil.safe_regex(v, self.word_flags)
         else:
             self.key_error(path0, key)
コード例 #2
0
ファイル: kconfig.py プロジェクト: suomela/konko
 def set_compound_one(self, path, v):
     self.expect_string_list(path, v)
     l = [kutil.safe_regex(x, self.tag_flags) for x in v]
     if len(l) == 2:
         self.compound_pair.append(l)
     else:
         self.error(path, u"expected 2 elements")
コード例 #3
0
ファイル: kconfig.py プロジェクト: suomela/konko
 def set_search(self, path, v):
     self.expect(path, dict, v)
     for key, val in sorted(v.items()):
         p = path + [key]
         self.expect(p, unicode, val)
         re = kutil.safe_regex(val, self.search_flags)
         self.search.append((key, re))
コード例 #4
0
ファイル: kconfig.py プロジェクト: suomela/konko
 def set_delete_one(self, path, v):
     self.expect_string_list(path, v)
     l = [kutil.safe_regex(x, self.tag_flags) for x in v]
     if len(l) == 1:
         self.delete.append(l[0])
     elif len(l) == 2:
         self.delete_pair.append(l)
     else:
         self.error(path, u"expected 1 or 2 elements")