mediawiki-skins-Vector/.svgo.yml
AronDemian b9968d9d93 build: Add 'svgo', SVG minifier script and unify SVGO rules
Adds:
- npm run svgmin
- .svgo.yaml: unified SVGO rules from Wikimedia coding conventions

Bug: T247004
Change-Id: I7017ecfebb811fa8d626747a830ad000774bbf2f
2020-03-07 19:47:58 -08:00

28 lines
1.1 KiB
YAML

# Recommended options from:
# https://www.mediawiki.org/wiki/Manual:Coding_conventions/SVG#Exemplified_safe_configuration
#
multipass: true
plugins:
- cleanupIDs: false
- removeDesc: false
- removeRasterImages: true
- removeTitle: false
- removeViewBox: false
# If the SVG doesn't start with an XML declaration, then its MIME type will
# be detected as "text/plain" rather than "image/svg+xml" by libmagic and,
# consequently, MediaWiki's CSSMin CSS minifier. libmagic's default database
# currently requires that SVGs contain an XML declaration:
# https://github.com/threatstack/libmagic/blob/master/magic/Magdir/sgml#L5
- removeXMLProcInst: false
- sortAttrs: true
# Configure the indent (default 4 spaces) used by `--pretty` here:
# @see https://github.com/svg/svgo/blob/master/lib/svgo/js2svg.js#L6 for more config options
#
# Unfortunately EOL cannot be configured, svgo uses the platform's EOL marker.
# On non-unix systems the linebreaks will be normalized to LF (unix) only at git commit, assuming `core.autocrlf` is 'true' (default) or 'input'.
#
js2svg:
pretty: true
indent: "\t"