From 30b25709d2d8a087adbc1719804a752da830348c Mon Sep 17 00:00:00 2001 From: pagedown Date: Mon, 5 Dec 2022 14:27:50 +0800 Subject: [PATCH] Fix the base path for envinclude --- kitty/conf/utils.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/kitty/conf/utils.py b/kitty/conf/utils.py index 993711a0c..bb75e4398 100644 --- a/kitty/conf/utils.py +++ b/kitty/conf/utils.py @@ -206,7 +206,12 @@ def parse_line( for x in os.environ: if fnmatchcase(x, val): with currently_parsing.set_file(f''): - _parse(NamedLineIterator(base_path_for_includes, iter(os.environ[x].splitlines())), parse_conf_item, ans, accumulate_bad_lines) + _parse( + NamedLineIterator(os.path.join(base_path_for_includes, ''), iter(os.environ[x].splitlines())), + parse_conf_item, + ans, + accumulate_bad_lines + ) return else: if not os.path.isabs(val): @@ -240,7 +245,7 @@ def _parse( ) -> None: name = getattr(lines, 'name', None) if name: - base_path_for_includes = os.path.dirname(os.path.abspath(name)) + base_path_for_includes = os.path.abspath(name) if name.endswith(os.path.sep) else os.path.dirname(os.path.abspath(name)) else: from ..constants import config_dir base_path_for_includes = config_dir