MCPcopy
hub / github.com/mkdocs/mkdocs / __init__

Method __init__

mkdocs/theme.py:35–73  ·  view source on GitHub ↗
(
        self,
        name: str | None = None,
        *,
        custom_dir: str | None = None,
        static_templates: Collection[str] = (),
        locale: str | None = None,
        **user_config,
    )

Source from the content-addressed store, hash-verified

33 """
34
35 def __init__(
36 self,
37 name: str | None = None,
38 *,
39 custom_dir: str | None = None,
40 static_templates: Collection[str] = (),
41 locale: str | None = None,
42 **user_config,
43 ) -> None:
44 self.name = name
45 self._custom_dir = custom_dir
46 _vars: dict[str, Any] = {'name': name, 'locale': 'en'}
47 self.__vars = _vars
48
49 # MkDocs provided static templates are always included
50 package_dir = os.path.abspath(os.path.dirname(__file__))
51 mkdocs_templates = os.path.join(package_dir, 'templates')
52 self.static_templates = set(os.listdir(mkdocs_templates))
53
54 # Build self.dirs from various sources in order of precedence
55 self.dirs = []
56
57 if custom_dir is not None:
58 self.dirs.append(custom_dir)
59
60 if name:
61 self._load_theme_config(name)
62
63 # Include templates provided directly by MkDocs (outside any theme)
64 self.dirs.append(mkdocs_templates)
65
66 # Handle remaining user configs. Override theme configs (if set)
67 self.static_templates.update(static_templates)
68 _vars.update(user_config)
69
70 # Validate locale and convert to Locale object
71 if locale is None:
72 locale = _vars['locale']
73 _vars['locale'] = localization.parse_locale(locale)
74
75 name: str | None
76

Callers

nothing calls this directly

Calls 4

_load_theme_configMethod · 0.95
setFunction · 0.85
appendMethod · 0.80
updateMethod · 0.45

Tested by

no test coverage detected