sass/dart-sass

Add ASCII output support

Open

#568 aperta il 11 gen 2019

Vedi su GitHub
 (53 commenti) (17 reazioni) (0 assegnatari)Dart (376 fork)batch import
enhancementhelp wanted

Metriche repository

Star
 (4192 star)
Metriche merge PR
 (Merge medio 8g 8h) (18 PR mergiate in 30 g)

Descrizione

I've been working on a product using libsass/sassc and have migrated it to Dart Sass. Presently, this product doesn't support UTF-8 characters in stylesheets.

It looks like Dart Sass only supports outputting as UTF-8, with dart-lang/sdk#11744 being the blocker given in the README for why there's no support for more encodings (UTF-16, etc). Dart does however appear to have an AsciiEncoder.

For the time being, we've added an extra step to CSS escape non-ASCII characters in generated stylesheets. (On a related note, we also remove the @charset 'UTF-8'; atrule, both because it would be technically incorrect for an ASCII-encoded stylesheet, and because of #567.)

This isn't trivial because of sourcemaps, so we're doing this step with a PostCSS plugin.

Would adding ASCII-encoded output support be in scope of Dart Sass? I'd imagine when Dart adds other encoders, having this ready would let other encodings be sibling output options alongside UTF-8 and ASCII.

Guida contributor