encodeji
Encode emoji short names as unicode codepoints :smile:
-> 😀
Installation
bower install -S encodeji
API
Encodeji is distributed as a requirejs module, in dist/ecodeji.js
(compiled
from source in lib/encodeji.js
).
Creating an instance
// require the module:var Encodeji = ; // create a new instance, you could pass options here (see Advanced Use below)var encodeji = ;
Replacing :emoji-names: with Codepoints
Both string replacement and replacement of text in the DOM is supported:
// replace in a string:var encoded = encodeji;console; // replace in the whole document:encodeji; // or replace only in part of it:encodeji;
Unknown names will remain in the document, only primary names will be replaced.
Getting the Primary Emoji Name From an Alternative
When saving data with :emoji-names: it's a good idea to save only the primary name by which emoji are known, but you might want to allow people to input other names which are automatically converted to the primary name.
To get the primary name for an alternative name, use:
var primary_name = encodeji.primaryShortName("thumbsup");
console.log(primary_name); // +1
Getting possible auto-completions
Get the emoji names which might match partial user input (useful for auto-completion):
var complations = encodeji.possibleShortNames("person");
console.log(completions);
Advanced Use
It's possible to pass options to the constructor to extend the built-in data with your own data, to replace or add the name by which emoji are known. For example:
var encodeji = extendData: name:"PILE OF POO" short_name:"poop" ;
The data format used is:
When specifying extendData
either "name" (the official unicode name) or
"unified" (the codepoint) must be supplied for each item, to match it against
existing items.
Changelog
2.0.0
- support for skin-tone-x modifiers on female/male modified emoji (Emoji 4.0)
- breaking removed toUCS2 from public API
- add warnDuplicates option instead of always logging errors on duplicate short names.