code: Rule TextExpression() {
  		return Sequence(
  				OptionalS(AnyOf("^<>_@").label(Position)),
  				OneOrMore(NonQuoteOneTextLine()).label(Text).suppressSubnodes()
  			).label(TextExpression);
  	}
docs: above, left, right, below, anywhere
  
  text-expression ::= [ "^" / "<" / ">" / "_" / "@" ] 1*non-quote