Aha, lib / projectname / View / TT.pm has:
WRAPPER => 'site/wrapper',
and in root / lib / site / wrapper, I find:
[% IF template.name.match('\.(css|js|txt)'); debug("Passing page through as text: $template.name"); content; ELSE; debug("Applying HTML page layout wrappers to $template.name\n"); content WRAPPER site/html + site/layout; END; -%]
So, if I name my .txt template without a shell, I can avoid site / html + site / layout.
Or maybe even better, I can make the .ajax extension and add it to the list of pass-through templates.
source share