nl_tokens: These have trailing newlines that we want to avoid spanning
pl_tokens: private static void setBlockSpan ( SpannableStringBuilder builder , Object what ) { int length = Math . <mask> ( 0 , builder . length ( ) - 1 ) ; builder . setSpan ( what , 0 , length , Spannable . SPAN_EXCLUSIVE_EXCLUSIVE ) ; }