nl_tokens: Recursively expand options into lines with a prefix .
pl_tokens: function expand_r ( options , lines , prefix ) { Object . getOwnPropertyNames ( options ) . forEach ( function ( key ) { var <mask> = prefix . concat ( key ) ; var value = options [ key ] ; if ( Array . isArray ( value ) ) { value . forEach ( function ( val ) { lines . push ( full . concat ( val ) . join ( ' ' ) ) ; } ) ; } else if ( typeof ( value ) == 'object' ) { expand_r ( value , lines , full ) ; } else { lines . push ( full . concat ( value ) . join ( ' ' ) ) ; } } ) ; }