Start work on porting docs generation

This commit is contained in:
Kovid Goyal
2021-05-31 13:29:29 +05:30
parent 3e598a17cf
commit 46b3f71b8f
3 changed files with 145 additions and 101 deletions

View File

@@ -7,11 +7,15 @@ import importlib
import os
import sys
from functools import partial
from typing import Any, Dict, FrozenSet, List
from typing import Any, Dict, FrozenSet, List, TYPE_CHECKING, cast
from kitty.types import run_once
aliases = {'url_hints': 'hints'}
if TYPE_CHECKING:
from kitty.conf.types import Definition
else:
Definition = object
def resolved_kitten(k: str) -> str:
@@ -151,12 +155,12 @@ def get_kitten_cli_docs(kitten: str) -> Any:
return ans
def get_kitten_conf_docs(kitten: str) -> Any:
setattr(sys, 'all_options', None)
def get_kitten_conf_docs(kitten: str) -> Definition:
setattr(sys, 'options_definition', None)
run_kitten(kitten, run_name='__conf__')
ans = getattr(sys, 'all_options')
delattr(sys, 'all_options')
return ans
ans = getattr(sys, 'options_definition')
delattr(sys, 'options_definition')
return cast(Definition, ans)
def main() -> None: