1# generated by gen-config.py DO NOT edit 2# vim:fileencoding=utf-8 3 4import typing 5from kitty.conf.utils import KeyAction, KittensKeyMap 6import kitty.conf.utils 7from kitty.rgb import Color 8import kitty.rgb 9from kitty.types import ParsedShortcut 10import kitty.types 11 12 13option_names = ( # {{{ 14 'added_bg', 15 'added_margin_bg', 16 'background', 17 'diff_cmd', 18 'filler_bg', 19 'foreground', 20 'highlight_added_bg', 21 'highlight_removed_bg', 22 'hunk_bg', 23 'hunk_margin_bg', 24 'map', 25 'margin_bg', 26 'margin_fg', 27 'margin_filler_bg', 28 'num_context_lines', 29 'pygments_style', 30 'removed_bg', 31 'removed_margin_bg', 32 'replace_tab_by', 33 'search_bg', 34 'search_fg', 35 'select_bg', 36 'select_fg', 37 'syntax_aliases', 38 'title_bg', 39 'title_fg') # }}} 40 41 42class Options: 43 added_bg: Color = Color(red=230, green=255, blue=237) 44 added_margin_bg: Color = Color(red=205, green=255, blue=216) 45 background: Color = Color(red=255, green=255, blue=255) 46 diff_cmd: str = 'auto' 47 filler_bg: Color = Color(red=250, green=251, blue=252) 48 foreground: Color = Color(red=0, green=0, blue=0) 49 highlight_added_bg: Color = Color(red=172, green=242, blue=189) 50 highlight_removed_bg: Color = Color(red=253, green=184, blue=192) 51 hunk_bg: Color = Color(red=241, green=248, blue=255) 52 hunk_margin_bg: Color = Color(red=219, green=237, blue=255) 53 margin_bg: Color = Color(red=250, green=251, blue=252) 54 margin_fg: Color = Color(red=170, green=170, blue=170) 55 margin_filler_bg: typing.Optional[kitty.rgb.Color] = None 56 num_context_lines: int = 3 57 pygments_style: str = 'default' 58 removed_bg: Color = Color(red=255, green=238, blue=240) 59 removed_margin_bg: Color = Color(red=255, green=220, blue=224) 60 replace_tab_by: str = ' ' 61 search_bg: Color = Color(red=68, green=68, blue=68) 62 search_fg: Color = Color(red=255, green=255, blue=255) 63 select_bg: Color = Color(red=180, green=213, blue=254) 64 select_fg: typing.Optional[kitty.rgb.Color] = Color(red=0, green=0, blue=0) 65 syntax_aliases: typing.Dict[str, str] = {'pyj': 'py', 'pyi': 'py', 'recipe': 'py'} 66 title_bg: Color = Color(red=255, green=255, blue=255) 67 title_fg: Color = Color(red=0, green=0, blue=0) 68 map: typing.List[typing.Tuple[kitty.types.ParsedShortcut, kitty.conf.utils.KeyAction]] = [] 69 key_definitions: KittensKeyMap = {} 70 config_paths: typing.Tuple[str, ...] = () 71 config_overrides: typing.Tuple[str, ...] = () 72 73 def __init__(self, options_dict: typing.Optional[typing.Dict[str, typing.Any]] = None) -> None: 74 if options_dict is not None: 75 null = object() 76 for key in option_names: 77 val = options_dict.get(key, null) 78 if val is not null: 79 setattr(self, key, val) 80 81 @property 82 def _fields(self) -> typing.Tuple[str, ...]: 83 return option_names 84 85 def __iter__(self) -> typing.Iterator[str]: 86 return iter(self._fields) 87 88 def __len__(self) -> int: 89 return len(self._fields) 90 91 def _copy_of_val(self, name: str) -> typing.Any: 92 ans = getattr(self, name) 93 if isinstance(ans, dict): 94 ans = ans.copy() 95 elif isinstance(ans, list): 96 ans = ans[:] 97 return ans 98 99 def _asdict(self) -> typing.Dict[str, typing.Any]: 100 return {k: self._copy_of_val(k) for k in self} 101 102 def _replace(self, **kw: typing.Any) -> "Options": 103 ans = Options() 104 for name in self: 105 setattr(ans, name, self._copy_of_val(name)) 106 for name, val in kw.items(): 107 setattr(ans, name, val) 108 return ans 109 110 def __getitem__(self, key: typing.Union[int, str]) -> typing.Any: 111 k = option_names[key] if isinstance(key, int) else key 112 try: 113 return getattr(self, k) 114 except AttributeError: 115 pass 116 raise KeyError(f"No option named: {k}") 117 118 119defaults = Options() 120defaults.map = [ 121 # quit 122 (ParsedShortcut(mods=0, key_name='q'), KeyAction('quit')), 123 # quit 124 (ParsedShortcut(mods=0, key_name='ESCAPE'), KeyAction('quit')), 125 # scroll_down 126 (ParsedShortcut(mods=0, key_name='j'), KeyAction('scroll_by', (1,))), 127 # scroll_down 128 (ParsedShortcut(mods=0, key_name='DOWN'), KeyAction('scroll_by', (1,))), 129 # scroll_up 130 (ParsedShortcut(mods=0, key_name='k'), KeyAction('scroll_by', (-1,))), 131 # scroll_up 132 (ParsedShortcut(mods=0, key_name='UP'), KeyAction('scroll_by', (-1,))), 133 # scroll_top 134 (ParsedShortcut(mods=0, key_name='HOME'), KeyAction('scroll_to', ('start',))), 135 # scroll_bottom 136 (ParsedShortcut(mods=0, key_name='END'), KeyAction('scroll_to', ('end',))), 137 # scroll_page_down 138 (ParsedShortcut(mods=0, key_name='PAGE_DOWN'), KeyAction('scroll_to', ('next-page',))), 139 # scroll_page_down 140 (ParsedShortcut(mods=0, key_name=' '), KeyAction('scroll_to', ('next-page',))), 141 # scroll_page_up 142 (ParsedShortcut(mods=0, key_name='PAGE_UP'), KeyAction('scroll_to', ('prev-page',))), 143 # next_change 144 (ParsedShortcut(mods=0, key_name='n'), KeyAction('scroll_to', ('next-change',))), 145 # prev_change 146 (ParsedShortcut(mods=0, key_name='p'), KeyAction('scroll_to', ('prev-change',))), 147 # all_context 148 (ParsedShortcut(mods=0, key_name='a'), KeyAction('change_context', ('all',))), 149 # default_context 150 (ParsedShortcut(mods=0, key_name='='), KeyAction('change_context', ('default',))), 151 # increase_context 152 (ParsedShortcut(mods=0, key_name='+'), KeyAction('change_context', (5,))), 153 # decrease_context 154 (ParsedShortcut(mods=0, key_name='-'), KeyAction('change_context', (-5,))), 155 # search_forward 156 (ParsedShortcut(mods=0, key_name='/'), KeyAction('start_search', (True, False))), 157 # search_backward 158 (ParsedShortcut(mods=0, key_name='?'), KeyAction('start_search', (True, True))), 159 # next_match 160 (ParsedShortcut(mods=0, key_name='.'), KeyAction('scroll_to', ('next-match',))), 161 # next_match 162 (ParsedShortcut(mods=0, key_name='>'), KeyAction('scroll_to', ('next-match',))), 163 # prev_match 164 (ParsedShortcut(mods=0, key_name=','), KeyAction('scroll_to', ('prev-match',))), 165 # prev_match 166 (ParsedShortcut(mods=0, key_name='<'), KeyAction('scroll_to', ('prev-match',))), 167 # search_forward_simple 168 (ParsedShortcut(mods=0, key_name='f'), KeyAction('start_search', (False, False))), 169 # search_backward_simple 170 (ParsedShortcut(mods=0, key_name='b'), KeyAction('start_search', (False, True))), 171] 172