This repository has been archived on 2023-08-30. You can view files and clone it, but cannot push or open issues/pull-requests.
bytedo
/
less
Archived
1
0
Fork 0
less/src/less-node/lessc-helper.js

180 lines
6.5 KiB
JavaScript

// lessc_helper.js
//
// helper functions for lessc
const lessc_helper = {
// Stylize a string
stylize: function (str, style) {
const styles = {
reset: [0, 0],
bold: [1, 22],
inverse: [7, 27],
underline: [4, 24],
yellow: [33, 39],
green: [32, 39],
red: [31, 39],
grey: [90, 39]
}
return `\x1b[${styles[style][0]}m${str}\x1b[${styles[style][1]}m`
},
// Print command line options
printUsage: function () {
console.log(
'usage: lessc [option option=parameter ...] <source> [destination]'
)
console.log('')
console.log(
"If source is set to `-' (dash or hyphen-minus), input is read from stdin."
)
console.log('')
console.log('options:')
console.log(
' -h, --help Prints help (this message) and exit.'
)
console.log(
" --include-path=PATHS Sets include paths. Separated by `:'. `;' also supported on windows."
)
console.log(
' -M, --depends Outputs a makefile import dependency list to stdout.'
)
console.log(' --no-color Disables colorized output.')
console.log(
' --ie-compat Enables IE8 compatibility checks.'
)
console.log(
' --js Enables inline JavaScript in less files'
)
console.log(' -l, --lint Syntax check only (lint).')
console.log(
' -s, --silent Suppresses output of error messages.'
)
console.log(' --strict-imports Forces evaluation of imports.')
console.log(
' --insecure Allows imports from insecure https hosts.'
)
console.log(
' -v, --version Prints version number and exit.'
)
console.log(' --verbose Be verbose.')
console.log(
' --source-map[=FILENAME] Outputs a v3 sourcemap to the filename (or output filename.map).'
)
console.log(
' --source-map-rootpath=X Adds this path onto the sourcemap filename and less file paths.'
)
console.log(
' --source-map-basepath=X Sets sourcemap base path, defaults to current working directory.'
)
console.log(
' --source-map-include-source Puts the less files into the map instead of referencing them.'
)
console.log(
' --source-map-inline Puts the map (and any less files) as a base64 data uri into the output css file.'
)
console.log(
' --source-map-url=URL Sets a custom URL to map file, for sourceMappingURL comment'
)
console.log(' in generated CSS file.')
console.log(
' --source-map-no-annotation Excludes the sourceMappingURL comment from the output css file.'
)
console.log(
' -rp, --rootpath=URL Sets rootpath for url rewriting in relative imports and urls'
)
console.log(
' Works with or without the relative-urls option.'
)
console.log(
' -ru=, --rewrite-urls= Rewrites URLs to make them relative to the base less file.'
)
console.log(
" all|local|off 'all' rewrites all URLs, 'local' just those starting with a '.'"
)
console.log('')
console.log(' -m=, --math=')
console.log(
' always Less will eagerly perform math operations always.'
)
console.log(
' parens-division Math performed except for division (/) operator'
)
console.log(
' parens | strict Math only performed inside parentheses'
)
console.log(
' strict-legacy Parens required in very strict terms (legacy --strict-math)'
)
console.log('')
console.log(
' -su=on|off Allows mixed units, e.g. 1px+1em or 1px*1px which have units'
)
console.log(' --strict-units=on|off that cannot be represented.')
console.log(
" --global-var='VAR=VALUE' Defines a variable that can be referenced by the file."
)
console.log(
" --modify-var='VAR=VALUE' Modifies a variable already declared in the file."
)
console.log(
" --url-args='QUERYSTRING' Adds params into url tokens (e.g. 42, cb=42 or 'a=1&b=2')"
)
console.log(
' --plugin=PLUGIN=OPTIONS Loads a plugin. You can also omit the --plugin= if the plugin begins'
)
console.log(
' less-plugin. E.g. the clean css plugin is called less-plugin-clean-css'
)
console.log(
' once installed (npm install less-plugin-clean-css), use either with'
)
console.log(
' --plugin=less-plugin-clean-css or just --clean-css'
)
console.log(
' specify options afterwards e.g. --plugin=less-plugin-clean-css="advanced"'
)
console.log(' or --clean-css="advanced"')
console.log(' --disable-plugin-rule Disallow @plugin statements')
console.log('')
console.log('-------------------------- Deprecated ----------------')
console.log(
' -sm=on|off Legacy parens-only math. Use --math'
)
console.log(' --strict-math=on|off ')
console.log('')
console.log(' --line-numbers=TYPE Outputs filename and line numbers.')
console.log(
" TYPE can be either 'comments', which will output"
)
console.log(
" the debug info within comments, 'mediaquery'"
)
console.log(
' that will output the information within a fake'
)
console.log(
' media query which is compatible with the SASS'
)
console.log(
" format, and 'all' which will do both."
)
console.log(
' -x, --compress Compresses output by removing some whitespaces.'
)
console.log(
' We recommend you use a dedicated minifer like less-plugin-clean-css'
)
console.log('')
console.log('Report bugs to: http://github.com/less/less.js/issues')
console.log('Home page: <http://lesscss.org/>')
}
}
// Exports helper functions
// eslint-disable-next-line no-prototype-builtins
for (const h in lessc_helper) {
if (lessc_helper.hasOwnProperty(h)) {
exports[h] = lessc_helper[h]
}
}
less精简版
JavaScript 100%