1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166
|
Emoji
=====
Emoji for Python. This project was inspired by `kyokomi <https://github.com/kyokomi/emoji>`__.
Example
-------
The entire set of Emoji codes as defined by the `Unicode consortium <https://unicode.org/emoji/charts/full-emoji-list.html>`__
is supported in addition to a bunch of `aliases <https://www.webfx.com/tools/emoji-cheat-sheet/>`__. By
default, only the official list is enabled but doing ``emoji.emojize(language='alias')`` enables
both the full list and aliases.
.. code-block:: python
>>> import emoji
>>> print(emoji.emojize('Python is :thumbs_up:'))
Python is 👍
>>> print(emoji.emojize('Python is :thumbsup:', language='alias'))
Python is 👍
>>> print(emoji.demojize('Python is 👍'))
Python is :thumbs_up:
>>> print(emoji.emojize("Python is fun :red_heart:"))
Python is fun ❤
>>> print(emoji.emojize("Python is fun :red_heart:", variant="emoji_type"))
Python is fun ❤️ #red heart, not black heart
>>> print(emoji.is_emoji("👍"))
True
..
By default, the language is English (``language='en'``) but also supported languages are:
* Spanish (``'es'``)
* Portuguese (``'pt'``)
* Italian (``'it'``)
* French (``'fr'``)
* German (``'de'``)
* Farsi/Persian (``'fa'``)
* Indonesian (``'id'``)
* Simplified Chinese (``'zh'``)
* Japanese (``'ja'``)
* Korean (``'ko'``)
* Russian (``'ru'``)
* Arabic (``'ar'``)
* Turkish (``'tr'``)
.. code-block:: python
>>> print(emoji.emojize('Python es :pulgar_hacia_arriba:', language='es'))
Python es 👍
>>> print(emoji.demojize('Python es 👍', language='es'))
Python es :pulgar_hacia_arriba:
>>> print(emoji.emojize("Python é :polegar_para_cima:", language='pt'))
Python é 👍
>>> print(emoji.demojize("Python é 👍", language='pt'))
Python é :polegar_para_cima:️
..
Installation
------------
Via pip:
.. code-block:: console
$ python -m pip install emoji --upgrade
From master branch:
.. code-block:: console
$ git clone https://github.com/carpedm20/emoji.git
$ cd emoji
$ python -m pip install .
Developing
----------
.. code-block:: console
$ git clone https://github.com/carpedm20/emoji.git
$ cd emoji
$ python -m pip install -e .\[dev\]
$ pytest
$ coverage run -m pytest
$ coverage report
The ``utils/generate_emoji.py`` script is used to generate
``unicode_codes/emoji.json``. Generally speaking it scrapes a table on the
`Unicode Consortium's website <https://www.unicode.org/reports/tr51/#emoji_data>`__
with `BeautifulSoup <http://www.crummy.com/software/BeautifulSoup/>`__
For more information take a look in the `utils/README.md <utils/README.md>`__ file.
Check the code style with:
.. code-block:: console
$ python -m pip install ruff
$ ruff check emoji
Test the type checks with:
.. code-block:: console
$ python -m pip install pyright mypy typeguard
$ pyright emoji
$ pyright tests
$ mypy emoji
$ pytest --typeguard-packages=emoji
Links
-----
**Documentation**
`https://carpedm20.github.io/emoji/docs/ <https://carpedm20.github.io/emoji/docs/>`__
**Overview of all emoji:**
`https://carpedm20.github.io/emoji/ <https://carpedm20.github.io/emoji/>`__
(auto-generated list of the emoji that are supported by the current version of this package)
**For English:**
`Emoji Cheat Sheet <https://www.webfx.com/tools/emoji-cheat-sheet/>`__
`Official Unicode list <http://www.unicode.org/emoji/charts/full-emoji-list.html>`__
**For Spanish:**
`Unicode list <https://emojiterra.com/es/lista-es/>`__
**For Portuguese:**
`Unicode list <https://emojiterra.com/pt/lista/>`__
**For Italian:**
`Unicode list <https://emojiterra.com/it/lista-it/>`__
**For French:**
`Unicode list <https://emojiterra.com/fr/liste-fr/>`__
**For German:**
`Unicode list <https://emojiterra.com/de/liste/>`__
Authors
-------
Taehoon Kim / `@carpedm20 <http://carpedm20.github.io/about/>`__
Kevin Wurster / `@geowurster <http://twitter.com/geowurster/>`__
Maintainer
----------
Tahir Jalilov / `@TahirJalilov <https://github.com/TahirJalilov>`__
|