Point 2. could be achived the way @linonetwo modified streams: By transfering it into a macro, that can be used anywhere.