From 907a51c99c5e819df4d71add26588ddc7369a3d1 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 22 Feb 2023 16:09:26 +0530 Subject: [PATCH] Code to read needed options from kitty.conf in a kitten --- gen-go-code.py | 8 +++++++- tools/cmd/ssh/main.go | 1 + tools/cmd/ssh/utils.go | 23 +++++++++++++++++++++++ tools/cmd/ssh/utils_test.go | 17 +++++++++++++++++ 4 files changed, 48 insertions(+), 1 deletion(-) diff --git a/gen-go-code.py b/gen-go-code.py index 4bec19271..402b5fe6a 100755 --- a/gen-go-code.py +++ b/gen-go-code.py @@ -441,6 +441,7 @@ def load_ref_map() -> Dict[str, Dict[str, str]]: def generate_constants() -> str: + from kitty.options.types import Options ref_map = load_ref_map() dp = ", ".join(map(lambda x: f'"{serialize_as_go_string(x)}"', kc.default_pager_for_help)) return f'''\ @@ -464,6 +465,11 @@ var CharacterKeyNameAliases = map[string]string{serialize_go_dict(character_key_ var ConfigModMap = map[string]uint16{serialize_go_dict(config_mod_map)} var RefMap = map[string]string{serialize_go_dict(ref_map['ref'])} var DocTitleMap = map[string]string{serialize_go_dict(ref_map['doc'])} +var KittyConfigDefaults = struct {{ +Term, Shell_integration string +}}{{ +Term: "{Options.term}", Shell_integration: "{Options.shell_integration}", +}} ''' # }}} @@ -682,7 +688,7 @@ def generate_ssh_kitten_data() -> None: buf.write(data) size = len(data) fmap[f] = pos, size - mapping = ','.join(f'{name} {pos[0]} {pos[1]}' for name, pos in fmap.items()).encode('ascii') + mapping = ','.join(f'{name} {pos[0]} {pos[1]}' for name, pos in sorted(fmap.items())).encode('ascii') data = struct.pack('