emojionearea
emojionearea copied to clipboard
Add support for Twemoji
Currently it looks like this only works with emojione, this can cause problems with integrating it with projects that can not use emojione due to licensing issues as emojione is not a completely free license. This is definately the best emoji picker out there that I have come across, it would be great to have the option to switch between using either emoji resource. Should be failry simple to implement and would allow projects that can not use emoji one to use this. I am willing to help but would need some help understanding you code as you do not seem to use es2015 modularization or code linting and I am unfamilar with amd. I am also not familiar with grunt as its a really old practice. Is there docs somewhere and or a support chat?
Should be failry simple to implement
I'm not so sure. EmojiOne doesn't just provide the graphical assets, but also provides code to translate between aliases etc.
I didn't use es2015 modularization because it makes projects bigger with extra wrapper functions, I don't like that. Especially in small plugins. Code linting must be enabled in your IDE. I like your idea, but as already mentioned @carpii there are some relations with emojione library.
To build sources all you need to run
npm update
npm run build
Off-Topic: fail to see how es2015 makes your project bigger, and even if it did if you are using a build process it should not matter? but to each there own.
Code linting has to be enabled in the project as you have to lint to the project standard. In other words which eslint preset? You can also leverage it to maintain your projects coding standard as part of your build process/travis integrations
also thought about using jsdoc which would vastly help coding and understanding whats doing what.
On-Topic: Not sure what you mean by relations. do you mean converting the strings to unicode? Sorry if newbish question in regaurd to emojis Im just learning how they work.
fail to see how es2015 makes your project bigger, and even if it did if you are using a build process it should not matter? but to each there own.
If you fail to see it, it makes no sense to discuss that with you. Example:
var x = 1;
vs
var x = (function() {return 1})()
Which version is shorter?
About code linting. Actually I added eslint in my local version, but I did also many another changes, and I can't push it now because not all of that is working as it should. Unfortunately, I don't have free time there to do it.
Not sure what you mean by relations. do you mean converting the strings to unicode?
Not only that, many things, ~15% of code:
- auto load emojione (twemoji?) files
- convert emojis to unicode/shortnames
- convert emojis to images and vice-versa
- skins (not present in twemoji)
- list of all emojis by categories different even on different versions of emojione and even more in twemoji
- auto load emojione (twemoji?) files -> Would have to look at how this is currently being done for emojione
- convert emojis to unicode/shortnames -> do not see an issue here as it should work the same for both I would think
- skins (not present in twemoji) -> even if only supported without skins would be better than not until twemoji fixes this but https://github.com/hanakin/EmojiPanel seems to be working around this somehow
- list of all emojis by categories different even on different versions of emojione and even more in twemoji -> Do not think this really matters just pick one and stick with it.
Do not think this really matters just pick one and stick with it.
Yes, it does matter. No all emojis support by all libraries.
Would have to look at how this is currently being done for emojione
You can do that by read sources
convert emojis to unicode/shortnames -> do not see an issue here as it should work the same for both I would think
The other problem is you would need to completely rewrite how this currently works.
Otherwise you would be using EmojiOne code... and so still need a license
the code is under mit the issue is just the assets
https://github.com/emojione/emojione/blob/master/LICENSE.md
my bad. I didn't know that, thanks.
Yes, it does matter. No all emojis support by all libraries.
sure, but from what I can tell you are using a preset anyway so this can easily be tested for during build
so twemoji can support skins but its via svg only with a find and replace on the color codes