mirror of
https://github.com/dw-0/kiauh.git
synced 2025-12-25 16:53:36 +05:00
Squashed 'kiauh/core/submodules/simple_config_parser/' changes from 90081a6..7835d2b
7835d2b refactor: further improvement of adding new sections (#3) git-subtree-dir: kiauh/core/submodules/simple_config_parser git-subtree-split: 7835d2b6e37ea0de940b0e4158278f4cfc349379
This commit is contained in:
@@ -192,11 +192,24 @@ class SimpleConfigParser:
|
|||||||
self.config[section] = {"_raw": f"[{section}]\n"}
|
self.config[section] = {"_raw": f"[{section}]\n"}
|
||||||
|
|
||||||
def _check_set_section_spacing(self):
|
def _check_set_section_spacing(self):
|
||||||
prev_section: str = self.get_sections()[-1]
|
prev_section_name: str = self.get_sections()[-1]
|
||||||
prev_section_content: Dict = self.config[prev_section]
|
prev_section_content: Dict = self.config[prev_section_name]
|
||||||
last_item: str = list(prev_section_content.keys())[-1]
|
last_option_name: str = list(prev_section_content.keys())[-1]
|
||||||
if last_item.startswith("#_") and prev_section_content[last_item][-1] != "\n":
|
|
||||||
prev_section_content[last_item].append("\n")
|
if last_option_name.startswith("#_"):
|
||||||
|
last_elem: str = prev_section_content[last_option_name][-1]
|
||||||
|
|
||||||
|
# if the last section is a collector, we first check if the last element
|
||||||
|
# in the collector ends with a newline. if it does not, we append a newline.
|
||||||
|
# this can happen if the config file does not end with a newline.
|
||||||
|
if not last_elem.endswith("\n"):
|
||||||
|
last_elem = f"{last_elem}\n"
|
||||||
|
|
||||||
|
# if the last item in a collector is not a newline, we append a newline, so
|
||||||
|
# that the new section is seperated from the options of the previous section
|
||||||
|
# by a newline
|
||||||
|
if last_elem != "\n":
|
||||||
|
prev_section_content[last_option_name].append("\n")
|
||||||
else:
|
else:
|
||||||
prev_section_content[self._generate_rand_id()] = ["\n"]
|
prev_section_content[self._generate_rand_id()] = ["\n"]
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user