nl_tokens: Tries to expand gradient outside CSS value
pl_tokens: function expandGradientOutsideValue ( editor , syntax ) { var propertyName = prefs . get ( 'css.gradient.defaultProperty' ) ; if ( ! propertyName ) return false ; // assuming that gradient definition is written on new line, // do a simplified parsing var content = String ( editor . getContent ( ) ) ; /** @type Range */ var lineRange = require ( 'range' ) . create ( editor . getCurrentLineRange ( ) ) ; // get line content and adjust range with padding var line = lineRange . substring ( content ) . replace ( / ^\s+ / , function ( pad ) { lineRange . start += pad . length ; return '' ; } ) . replace ( / \s+$ / , function ( pad ) { lineRange . end -= pad . length ; return '' ; } ) ; var css = require ( 'cssResolver' ) ; var gradient = module . parse ( line ) ; if ( gradient ) { var props = getPropertiesForGradient ( gradient , propertyName ) ; props . push ( { name : propertyName , value : module . toString ( gradient ) + '${2}' } ) ; var sep = css . getSyntaxPreference ( 'valueSeparator' , syntax ) ; var end = css . getSyntaxPreference ( 'propertyEnd' , syntax ) ; if ( require ( 'preferences' ) . get ( 'css.alignVendor' ) ) { var pads = require ( 'utils' ) . getStringsPads ( _ . map ( props , function ( prop ) { return prop . value . substring ( 0 , prop . value . indexOf ( '(' ) ) ; } ) ) ; _ . each ( props , function ( <mask> , i ) { prop . value = pads [ i ] + prop . value ; } ) ; } props = _ . map ( props , function ( item ) { return item . name + sep + item . value + end ; } ) ; editor . replaceContent ( props . join ( '\n' ) , lineRange . start , lineRange . end ) ; return true ; } return false ; }