Skip to content

suda/python-emoji-encoding

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Emoji encoding for 🐍

This module provides a custom source code encoding allowing usage of Emoji's for things like variable names or function names.

Usage

Install the package with pip:

pip install emoji-encoding

It's recommended to install it in a virtualenv

After installation you can specify the encoding in the beginning of a Python file:

# -*- coding: emoji -*-
def πŸ“’(βœ‰οΈ):
    print(βœ‰οΈ)

πŸ“’("βœ‹ 🌏")

Uninstalling

This package will create emoji.pth file in your site-packages directory to autoload the codec. After removing the module you need to remove this file manually.

Known issues

Currently the encoding is only available in imported modules so trying to run Emoji encoded file directly will fail:

$ python emoji.py
  File "emoji.py", line 1
SyntaxError: encoding problem: emoji

Easy workaround is to have an another file that imports the Emoji encoded file:

$ cat bootstrap.py
import emoji
$ python bootstrap.py
βœ‹ 🌏

History

It all started with Ola Sendecka's talk about Emoji Driven Development which made me wonder: "why can't we use Emoji's in Python?". After a bit of hacking I was able to use them with a patched cpython. This wasn't a perfect solution so playing with this idea I ended up with custom codec that translates Emoji's to their ASCII representations and adds prefix/suffix to decode such unique string back to Unicode.

About

🐍 Use Emoji's to write Python code

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages