mirror of
https://github.com/tailwindlabs/tailwindcss.git
synced 2025-12-08 21:36:08 +00:00
Fixes #18431 The `~W(…)` syntax in Elixir is a _sigil_. It's basically another way to write strings, arrays of strings, etc… The syntax lets you use a handful of surrounding brackets like `~W(…)`, `~W[…]`, `~W{…}`, `~W"…"`, etc… to let you write lists without necessarily having to escape characters. In v3 our extractor was able to pick these up but in v4 Oxide does not. I've added a preprocessor for Elixir files so we can modify the code before our main extractor sees it. Now things like this: `~W(text-white bg-gray-600)` will get turned into ` ~W text-white bg-gray-600 ` which can easily be processed by our extractor. The sigils we support are: - `~s` / `~S` (strings) - `~w` / `~W` (word lists) - `~c` / `~C` (charlists) We're specifically detecting the use of `(…)`, `[…]`, and `{…}` as using quotes already works today. --------- Co-authored-by: Robin Malfait <malfait.robin@gmail.com>