florianeckerstorfer / remark-a11y-emoji Goto Github PK
View Code? Open in Web Editor NEWRemark Plugin to make Emoji in Markdown accessible. Wraps Emoji in a <span>-Tag with role and aria-label attributes.
License: MIT License
Remark Plugin to make Emoji in Markdown accessible. Wraps Emoji in a <span>-Tag with role and aria-label attributes.
License: MIT License
Hello,
I would like to know how does that plugin is adding anything to the UX of users using assistive technologies?
I always believed that aria-label should be used on icons (or icon-like images as small SVG). But emojis are not just plain images and should already have a description based on the Unicode description and CLDR name (which are in english but should be translated to user language I guess).
I'm don't understand so why this plugin is necessary.
I'm pretty sure, there is a good explanation of why this plugin is necessary and maybe this explanation should be in the README.md of the project for people like me who don't have a good enough accessibility background.
Thank you!
Hi!
remark is switching to a new parser internally (micromark, see remarkjs/remark#536
for more info).
From a quick glance at the code, it seems this plugin should be fine. However, it would be good to check that in the future (there is 13.0.0-alpha.0
published now, and one or two more will come before the release)
Hi maintainer,
When new emojis such as ๐ซก or ๐ซจ are used, it seems that the output would not contain the proper aria-label
for them. Investigating further, it seems to be because the dependent package gemoji
(with version specifier "^6.1.0"
) is outdated. The latest version as of this writing is 8.1.0
.
Would it be possible for you to update the version of such package? Alternatively, if possible at all, would it be possible to make gemoji
a peer dependency.
Thanks for your work!
When I use this plugin on a paragraph that contains emoji, the output is wrapped in <undefined>
tags.
Example:
A line of text with ๐ inline ๐ emoji
Rendered HTML:
<p>
<undefined>
A line of text with <span role="img" aria-label="grinning face">๐</span> inline <span role="img" aria-label="party popper">๐</span> emoji
</undefined>
</p>
However, emoji on a line of their own are not wrapped in those undefined tags:
๐
<p>
<span role="img" aria-label="thumbs up">๐</span>
</p>
Context:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.