This will be a Python script Rust CLI (main program) and JS web-app (playground) that parses a "definitions-file" from working-directory (or parent dirs), and it replaces GH/Discord-style "emoji references" (that's how I call them) with the corresponding HTML <img>
element. The default global sizes of all emojis is 16em
rather than 2em
, because of how GH's markdown-renderer works. An example end-product can be found at my profile.
For convenience, the script will provide its own (built-in) emoji name-space, which contains commonly used emojis such as lang-logos and mascots. 3rd-party defs have precedence over built-in, so you can easily override any def with your preferred URI.
CEI could be considered a "Markdown framework", but it's too simple to be something so big.
It'll be designed for use on GH, but it can be used to generate HTML files with custom emojis (although this might completely break your HTML if you aren't careful), as it'll be fully format-agnostic (content-format and filename-extension are irrelevant). The input text-file to be processed can be in any encoding, however the emoji-defs must be UTF-8.
If you need advanced-management and/or auto-updates/hot-reloading for specific file-lists and globs, you'll need make
and a make-file. I won't implement advanced features, as this script is meant to be "basic".
<img>
element on its own line (as usual in HTML).img
s will have the same structure/pattern, which increases compression-ratio.alt
& title
attributes for accessibilityIt should be obvious by now that the CLI API and the defs-file are very unstable, so expect many breaking-changes while I decide how it's going to be stabilized. You can help me take better design-decisions by opening an issue