httk.serve.web.templating.httk_compat

Provide legacy template resolution on top of Jinja rendering.

Attributes

Classes

HttkCompatTemplateEngine

Legacy-oriented template resolution for old httkweb projects.

Module Contents

httk.serve.web.templating.httk_compat.LEGACY_TEMPLATE_SUFFIXES: tuple[str, Ellipsis] = ('.httkweb.html', '.html', '.html.j2', '.jinja', '.j2')[source]
class httk.serve.web.templating.httk_compat.HttkCompatTemplateEngine(template_dir)[source]

Bases: httk.serve.web.templating.jinja2_engine.JinjaTemplateEngine

Legacy-oriented template resolution for old httkweb projects.

The compatibility engine keeps Jinja rendering but prioritizes legacy template suffixes so old .httkweb.html files resolve first.

Parameters:

template_dir (pathlib.Path) – Directory containing site templates.

render(render_input)[source]

Render page content using legacy-compatible template resolution.

Parameters:

render_input (httk.serve.web.templating.base.TemplateRenderInput) – Content, template names, and template context.

Returns:

Rendered HTML.

Return type:

str

render_fragment(*, template_name, context)[source]

Render an optional fragment using legacy template conventions.

Parameters:
  • template_name (str) – Fragment template name.

  • context (dict[str, object]) – Values exposed to the fragment.

Returns:

Rendered fragment, or None when no template exists.

Return type:

str | None