Charlie,
A little more to add to your technique.
When in a given tiddler, it is the current tiddler, if you transclude something such as {{||tiddlername}}, the || will transclude it with the current tiddler the set to the current tiddler.
As a result most buttons can be transcluded thus
{{||$:/core/ui/Buttons/open-window}}
Of course this can be also done inside a list where the currentTiddler changes
or open a specific tiddler
{{thistiddler||$:/core/ui/Buttons/open-window}}
The open in new window only displays the text field, after rendering. It does not include any other results such as from the view template, and you can edit it in that windows without help.
I have made two buttons that allow you to open in new window in full view or edit mode, just sak
Tones