I want to have VS Code render lists in markdown with bullet points instead of the asterisk (*) character, so that the top level would use •, the next one would use ◦, etc.
My first approach was to create a ligature font with FontForge that replaced * with ◦, space plus * with ◦, two spaces plus * with ▪, and so on, but using ligatures has the obvious issue that it's not context-sensitive, so all asterisks would be replaced, not just the ones leading a line.
Looking at the VS Code text decoration API, it seems limited to just changing the font style and color, and not the font family. Is there some way to visually replace the characters in VS Code? They should still be saved as asterisks in the source code to be valid markdown.