def __init__(self, name, pattern={}):
self.name = name
self.pattern = pattern
self.is_fallback = False
# read functions
self.reader = {
int: lambda section, option: self.parser.getint(section, option),
bool: lambda section, option: self.parser.getboolean(section, option),
str: lambda section, option: self.parser.get(section, option),
float: lambda section, option: self.parser.getfloat(section, option),
"ilist": lambda section, option: [int(v.strip()) for v in self.parser.get(section, option).split(";")],
"hint": lambda section, option: getattr(Gdk.WindowTypeHint, self.parser.get(section, option)),
Gdk.RGBA: lambda section, option: str_to_rgba(self.parser.get(section, option)),
}
# write functions
self.writer = {
int: lambda value: str(value),
bool: lambda value: str(int(value)),
str: lambda value: value,
float: lambda value: "{:.2f}".format(value),
"ilist": lambda value: ";".join(str(i) for i in value),
"hint": lambda value: value.value_nick.upper(),
Gdk.RGBA: lambda value: rgba_to_str(value),
}
# init
self._init_config_file()
self._load_config_file()
评论列表
文章目录