zwj_sample screenshot from Ubuntu 19.10 with Firefox 72.0.1

This commit is contained in:
Luciano Ramalho 2020-01-22 23:17:00 -03:00
parent 49f52e29c7
commit d609c5309f
2 changed files with 102 additions and 0 deletions

View File

@ -0,0 +1,102 @@
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"👨‍🦰\tE11.0\tman: red hair\n",
"\t👨\tU+1F468\tMAN + ZWG\n",
"\t🦰\tU+1F9B0\tEMOJI COMPONENT RED HAIR\n",
"🧑‍🤝‍🧑\tE12.0\tpeople holding hands\n",
"\t🧑\tU+1F9D1\tADULT + ZWG\n",
"\t🤝\tU+1F91D\tHANDSHAKE + ZWG\n",
"\t🧑\tU+1F9D1\tADULT\n",
"🏊🏿‍♀️\tE4.0\twoman swimming: dark skin tone\n",
"\t🏊\tU+1F3CA\tSWIMMER\n",
"\t🏿\tU+1F3FF\tEMOJI MODIFIER FITZPATRICK TYPE-6 + ZWG\n",
"\t♀\tU+2640\tFEMALE SIGN + V16\n",
"👩🏾‍✈️\tE4.0\twoman pilot: medium-dark skin tone\n",
"\t👩\tU+1F469\tWOMAN\n",
"\t🏾\tU+1F3FE\tEMOJI MODIFIER FITZPATRICK TYPE-5 + ZWG\n",
"\t✈\tU+2708\tAIRPLANE + V16\n",
"👨‍👩‍👧\tE2.0\tfamily: man, woman, girl\n",
"\t👨\tU+1F468\tMAN + ZWG\n",
"\t👩\tU+1F469\tWOMAN + ZWG\n",
"\t👧\tU+1F467\tGIRL\n",
"🏳️‍⚧️\tE13.0\ttransgender flag\n",
"\t🏳\tU+1F3F3\tWAVING WHITE FLAG + V16 + ZWG\n",
"\t⚧\tU+26A7\tMALE WITH STROKE AND MALE AND FEMALE SIGN + V16\n",
"👩‍❤️‍💋‍👩\tE2.0\tkiss: woman, woman\n",
"\t👩\tU+1F469\tWOMAN + ZWG\n",
"\t❤\tU+2764\tHEAVY BLACK HEART + V16 + ZWG\n",
"\t💋\tU+1F48B\tKISS MARK + ZWG\n",
"\t👩\tU+1F469\tWOMAN\n"
]
}
],
"source": [
"from unicodedata import name\n",
"\n",
"zwg_sample = \"\"\"\n",
"1F468 200D 1F9B0 |man: red hair |E11.0\n",
"1F9D1 200D 1F91D 200D 1F9D1 |people holding hands |E12.0\n",
"1F3CA 1F3FF 200D 2640 FE0F |woman swimming: dark skin tone |E4.0\n",
"1F469 1F3FE 200D 2708 FE0F |woman pilot: medium-dark skin tone |E4.0\n",
"1F468 200D 1F469 200D 1F467 |family: man, woman, girl |E2.0\n",
"1F3F3 FE0F 200D 26A7 FE0F |transgender flag |E13.0\n",
"1F469 200D 2764 FE0F 200D 1F48B 200D 1F469 |kiss: woman, woman |E2.0\n",
"\"\"\"\n",
"\n",
"markers = {'\\u200D': 'ZWG', # ZERO WIDTH JOINER\n",
" '\\uFE0F': 'V16', # VARIATION SELECTOR-16\n",
" }\n",
"\n",
"for line in zwg_sample.strip().split('\\n'):\n",
" code, descr, version = (s.strip() for s in line.split('|'))\n",
" chars = [chr(int(c, 16)) for c in code.split()]\n",
" print(''.join(chars), version, descr, sep='\\t', end='')\n",
" while chars:\n",
" char = chars.pop(0)\n",
" if char in markers:\n",
" print(' + ' + markers[char], end='')\n",
" else:\n",
" ucode = f'U+{ord(char):04X}'\n",
" print(f'\\n\\t{char}\\t{ucode}\\t{name(char)}', end='')\n",
" print()"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.7.5"
}
},
"nbformat": 4,
"nbformat_minor": 2
}

BIN
04-text-byte/zwj_sample.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 KiB