Actually if I do
{{ $context := (dict "a" $._c "WidgetArea" $._wa "Widget" .) }}
Then with {{ printf "%#v" .a }} it prints the following:
&hugolib.PageOutput{Page:(*hugolib.Page)(0xc4200d6000), paginator:(*hugolib.Pager)(nil), paginatorInit:sync.Once{m:sync.Mutex{state:0, sema:0x0}, done:0x0}, targetPathDescriptor:hugolib.targetPathDescriptor{PathSpec:(*helpers.PathSpec)(0xc4200a2180), Type:output.Format{Name:"HTML", MediaType:media.Type{MainType:"text", SubType:"html", Suffix:"html"}, Path:"", BaseName:"index", Rel:"canonical", Protocol:"", IsPlainText:false, IsHTML:true, NoUgly:false, NotAlternative:false}, Kind:"home", Sections:[]string(nil), BaseName:"_index", Dir:"", LangPrefix:"", URL:"/", Addends:"", ExpandedPermalink:"", UglyURLs:false}, outputFormat:output.Format{Name:"HTML", MediaType:media.Type{MainType:"text", SubType:"html", Suffix:"html"}, Path:"", BaseName:"index", Rel:"canonical", Protocol:"", IsPlainText:false, IsHTML:true, NoUgly:false, NotAlternative:false}}
But if now I pass the context with $:
{{ $context := (dict "$" $._c "WidgetArea" $._wa "Widget" .) }}
it only prints <nil>.