<p class="note"></p>
<h1>Replace words with silly emojis.</h1>
<h2>Bookmarklet:</h2>
<a class="bookmarklet" href="javascript:
var emojiMap = new Map([
['โค๏ธ', ['heart', 'love', 'favorite']],
['๐', ['smile', 'happy']],
['๐', ['laugh', 'lol', 'haha']],
['๐', ['wink']],
['๐', ['kiss']],
['๐คช', ['silly', 'goofy']],
['๐ค', ['think', 'thought', 'wtf']],
['๐ด', ['sleep', 'zzz']],
['๐คฎ', ['barf', 'vomit', 'puke', 'sick', 'throw up', 'threw up']],
['๐ข', ['cry', 'sad']],
['๐ฅฑ', ['yawn', 'tired', 'sleepy', 'lazy']],
['๐ ', ['angry', 'mad']],
['๐คฏ', ['wow', 'wtf', 'omg']],
['๐', ['skull', 'dead']],
['๐ฉ', ['poop', 'poo', 'shit', 'crap']],
['๐ป', ['ghost', 'boo']],
['๐ฝ๏ธ', ['alien']],
['(โน๏ธ๐ฒ)', ['iphone']],
['(๐ค๐ฒ)', ['android phone', 'android']],
['๐ค', ['robot']],
['๐ฏ', ['100']],
['๐ฌ', ['talk', 'chat', 'speak', 'speech']],
['๐', ['spock', 'live long and prosper', 'vulcan salute']],
['๐๏ธ', ['dislike', 'dont like', 'do not like', 'thumbs down']],
['๐๏ธ', ['like', 'thumbs up']],
['๐ซต', ['you']],
['๐ซ', ['prohibited', 'no', 'dont', "don't", 'do not']],
['โ
', ['check', 'yes', 'do']],
['โ๏ธ', ['write']],
['๐ช', ['arm']],
['๐ฆต', ['leg']],
['๐ฆถ', ['foot', 'feet']],
['๐๏ธ', ['ear']],
['๐', ['nose']],
['๐ง ', ['brain', 'mental']],
['๐ฆด', ['bone']],
['๐', ['look', 'see', 'eyes', 'notice']],
['๐
', ['tongue', 'lick']],
['๐', ['mouth', 'lips']],
['๐ถ', ['baby', 'infant', 'toddler']],
['๐ง', ['kid', 'child']],
['๐คฆ', ['facepalm', 'oops', 'oopsie']],
['๐คท', ['shrug', 'oh well']],
['๐งโโ๏ธ', ['judge']],
['๐งโ๐ป', ['coding', 'developer', 'dev']],
['๐งโ๐', ['astronaut']],
['๐ฎ', ['cop', 'police', 'officer']],
['๐ฅท', ['ninja']],
['๐คฐ', ['pregnant']],
['๐
', ['santa']],
['๐ฆธ', ['hero']],
['๐ง', ['wizard']],
['๐ง', ['zombie']],
['๐ถโโก๏ธ', ['walk', 'step']],
['๐ง', ['person']],
['๐ฅ', ['people']],
['๐โโก๏ธ', ['run', 'ran', 'running', 'jump', 'leap']],
['(๐คธ๐ฅท๐)', ['parkour']],
['(โ๐)', ['javascript', 'js']],
['๐', ['dance', 'dancing', 'dancer']],
['๐ง', ['climb']],
['๐๏ธ', ['surf']],
['๐ฃ', ['row', 'paddle']],
['๐๏ธ', ['swim', 'swam', 'swimming']],
['๐ต', ['mtb', 'mountain bike']],
['๐ฒ๏ธ', ['bike', 'biking']],
['๐คน', ['juggle', 'juggling']],
['๐ง', ['yoga']],
['๐', ['bath', 'tub']],
['๐', ['bed']],
['๐ถ', ['dog', 'puppy', 'k9']],
['๐ฆ', ['fox']],
['๐ต', ['monkey']],
['๐', ['shut up', 'stfu', 'speechless', 'quiet']],
['๐บ', ['wolf']],
['๐ฑ', ['cat', 'kitty', 'kitten', 'feline']],
['๐ด', ['horse']],
['๐ฆ', ['unicorn']],
['๐ฆ', ['owl']],
['(๐๐ฆ)', ['nightowl']],
['๐', ['dragon', 'drag and', 'drag &']],
['๐ชฐ', ['bug']],
['๐ธ๏ธ', ['web']],
['๐ท๏ธ', ['spider', 'spyder']],
['๐ฆ ', ['virus', 'covid']],
['๐ธ', ['flower']],
['๐ฒ', ['tree']],
['๐', ['apple', 'mac']],
['๐ฅ', ['cheers']],
['๐ง', ['ice']],
['๐๏ธ', ['earth', 'world', 'planet', 'globe']],
['๐บ๏ธ', ['map']],
['๐ ๏ธ', ['house', 'home']],
['๐ข', ['office', 'building']],
['๐ฅ', ['hospital', 'er', 'health', 'medical']],
['๐จ', ['hotel']],
['๐', ['night']],
['๐๏ธ', ['city', 'urban']],
['๐
', ['morning', 'sunrise']],
['๐', ['car', 'van', 'drive', 'vehicle']],
['โก๏ธ๐', ['ev']],
['๐', ['stop']],
['โ๏ธ', ['navy', 'anchor']],
['๐ฉ๏ธ', ['plane', 'airplane', 'flight']],
['๐', ['rocket', 'spaceship']],
['โฐ๏ธ', ['alarm', 'clock', 'time']],
['โญ๏ธ', ['star']],
['๐ง๏ธ', ['rain']],
['๐ช๏ธ', ['hurricane','storm','tornado']],
['๐จ๏ธ', ['snow']],
['โก๏ธ', ['electric', 'electricity', 'zap', 'charge', 'power']],
['๐ฅ', ['fire', 'burn']],
['๐', ['pumpkin', 'halloween', 'spooky']],
['๐', ['christmas', 'xmas']],
['๐ฃ๏ธ', ['bomb']],
['๐', ['party', 'congrats', 'congratulations', 'yay']],
['๐ซ', ['gun', 'shoot']],
['๐ช', ['magic', 'wand']],
['๐งฉ', ['puzzle']],
['๐ผ๏ธ', ['picture', 'photo', 'image']],
['๐จ', ['art', 'paint']],
['๐งต', ['thread']],
['๐ถ', ['music', 'song']],
['๐', ['phone call', 'phone', 'call']],
['๐', ['battery']],
['๐ป๏ธ', ['laptop', 'computer']],
['๐พ', ['save']],
['๐บ๏ธ', ['tv', 'television', 'video']],
['๐ท๏ธ', ['camera']],
['๐๏ธ', ['search']],
['๐ก', ['light', 'idea']],
['๐ต', ['money', 'cash', 'dollar']],
['โ๏ธ', ['mail']],
['๐ฆ๏ธ', ['package', 'box']],
['๐ณ๏ธ', ['vote', 'voting']],
['๐
', ['calendar', 'date', 'event']],
['โ๏ธ', ['cut', 'scissors']],
['๐๏ธ', ['trash']],
['๐๏ธ', ['lock']],
['๐', ['key']],
['๐', ['link', 'url']],
['๐ช', ['door']],
['๐ช', ['window']],
['๐ช', ['chair', 'seat', 'sit', 'sat']],
['๐ฝ', ['toilet', 'potty', 'bathroom']],
['๐ชค', ['trap']],
['๐ซง', ['bubble']],
['๐', ['cart', 'shop', 'shopping']],
['๐ชช', ['id', 'license']],
['โ ๏ธ', ['warning', 'alert', 'attention']],
['โข๏ธ', ['hazard', 'danger']],
['โฌ๏ธ', ['up', 'above', 'top', 'over']],
['โฌ๏ธ', ['down', 'under', 'bottom', 'below']],
['โฌ
๏ธ', ['left', 'back', 'backward', 'before']],
['โก๏ธ', ['right', 'ahead', 'forward', 'after']],
['๐', ['shuffle', 'mix', 'random']],
['๐', ['repeat', 'loop', 'again']],
['โฉ๏ธ', ['fast', 'quick', 'quickly', 'rapid']],
['โญ๏ธ', ['next']],
['โฎ๏ธ', ['previous', 'last']],
['โ๏ธ', ['man', 'men', 'guy', 'boy', 'dude']],
['โ๏ธ', ['woman', 'women', 'girl', 'lady', 'ladies']],
['โ๏ธ', ['plus', 'and', 'also']],
['โ๏ธ', ['question']],
['๐ฒ', ['$']],
['#๏ธโฃ', ['number', '#']],
['๐', ['cool']],
['๐', ['free']],
['๐', ['new']],
['๐', ['ok', 'alright']],
['๐ฅ', ['red']],
['๐ง', ['orange']],
['๐จ', ['yellow', 'amber']],
['๐ฉ', ['green']],
['๐ฆ', ['blue']],
['๐ช', ['purple', 'violet', 'magenta']],
['๐ซ', ['brown']],
['โฌ๏ธ', ['black', 'dark']],
['โฌ๏ธ', ['white']],
['๐', ['done', 'complet', 'finish']],
['๐บ๐ธ', ['usa', 'us flag', 'united states of america', 'united states']],
['๐ฉ', ['flag']],
]);
replaceInText(document.body, emojiMap);
function replaceInText(element, map) {
for (let node of element.childNodes) {
switch (node.nodeType) {
case Node.DOCUMENT_NODE:
case Node.ELEMENT_NODE:
replaceInText(node, map);
break;
case Node.TEXT_NODE:
for (let entry of map) {
for (let string of entry[1]) {
let regex = new RegExp(`([^a-z])${string}((ing|ed|s)?[^a-z])`, 'gi');
node.textContent = ` ${node.textContent} `.replace(regex, `$1${entry[0]}$2`).slice(1, -1);
}
}
break;
}
}
}
">
๐คช Emojify Text!
</a>
<h2>Directions:</h2>
<ol>
<li>Drag & drop the Bookmarklet above into your web broswer's bookmarks.</li>
<li>Visit any webpage.</li>
<li>Click your Bookmarklet.</li>
<li>Enjoy reading emojis and trying to figure out the original text.</li>
</ol>
<h2>Sample:</h2>
<p>The quick brown fox jumps over the lazy dog</p>
body{text-align: center;background-color: #619ec2;font-family: "Gill Sans", "Gill Sans MT", Calibri, sans-serif;
color: #fff;
-webkit-font-smoothing: antialiased;
text-shadow: 0 1px 1px rgba(0,0,0,0.3);
max-width: 600px;margin:auto}
a{
color:rgba(0,0,0,0.25);
}
ol{text-align: left;max-width: 400px;margin:auto}
.bookmarklet,.code {
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
-ms-border-radius: 4px;
-o-border-radius: 4px;
border-radius: 4px;
font-size: 1.25em;
position: relative;
cursor: move;
color: #fff;
text-decoration: none;
background: rgba(0,0,0,0.25);
padding: 10px 20px 8px;
margin: 0 0 10px 0;
display: inline-block;
overflow-y: auto;
overflow-x: hidden;
}
.code{
cursor: initial;
max-width: 560px;
max-height: 100px;
text-align: left;
}
.note{
text-transform: uppercase;
}
var emojiMap = new Map([
['โค๏ธ', ['heart', 'love', 'favorite']],
['๐', ['smile', 'happy']],
['๐', ['laugh', 'lol', 'haha']],
['๐', ['wink']],
['๐', ['kiss']],
['๐คช', ['silly', 'goofy']],
['๐ค', ['think', 'thought', 'wtf']],
['๐ด', ['sleep', 'zzz']],
['๐คฎ', ['barf', 'vomit', 'puke', 'sick', 'throw up', 'threw up']],
['๐ข', ['cry', 'sad']],
['๐ฅฑ', ['yawn', 'tired', 'sleepy', 'lazy']],
['๐ ', ['angry', 'mad']],
['๐คฏ', ['wow', 'wtf', 'omg']],
['๐', ['skull', 'dead']],
['๐ฉ', ['poop', 'poo', 'shit', 'crap']],
['๐ป', ['ghost', 'boo']],
['๐ฝ๏ธ', ['alien']],
['(โน๏ธ๐ฒ)', ['iphone']],
['(๐ค๐ฒ)', ['android phone', 'android']],
['๐ค', ['robot']],
['๐ฏ', ['100']],
['๐ฌ', ['talk', 'chat', 'speak', 'speech']],
['๐', ['spock', 'live long and prosper', 'vulcan salute']],
['๐๏ธ', ['dislike', 'dont like', 'do not like', 'thumbs down']],
['๐๏ธ', ['like', 'thumbs up']],
['๐ซต', ['you']],
['๐ซ', ['prohibited', 'no', 'dont', "don't", 'do not']],
['โ
', ['check', 'yes', 'do']],
['โ๏ธ', ['write']],
['๐ช', ['arm']],
['๐ฆต', ['leg']],
['๐ฆถ', ['foot', 'feet']],
['๐๏ธ', ['ear']],
['๐', ['nose']],
['๐ง ', ['brain', 'mental']],
['๐ฆด', ['bone']],
['๐', ['look', 'see', 'eyes', 'notice']],
['๐
', ['tongue', 'lick']],
['๐', ['mouth', 'lips']],
['๐ถ', ['baby', 'infant', 'toddler']],
['๐ง', ['kid', 'child']],
['๐คฆ', ['facepalm', 'oops', 'oopsie']],
['๐คท', ['shrug', 'oh well']],
['๐งโโ๏ธ', ['judge']],
['๐งโ๐ป', ['coding', 'developer', 'dev']],
['๐งโ๐', ['astronaut']],
['๐ฎ', ['cop', 'police', 'officer']],
['๐ฅท', ['ninja']],
['๐คฐ', ['pregnant']],
['๐
', ['santa']],
['๐ฆธ', ['hero']],
['๐ง', ['wizard']],
['๐ง', ['zombie']],
['๐ถโโก๏ธ', ['walk', 'step']],
['๐ง', ['person']],
['๐ฅ', ['people']],
['๐โโก๏ธ', ['run', 'ran', 'running', 'jump', 'leap']],
['(๐คธ๐ฅท๐)', ['parkour']],
['(โ๐)', ['javascript', 'js']],
['๐', ['dance', 'dancing', 'dancer']],
['๐ง', ['climb']],
['๐๏ธ', ['surf']],
['๐ฃ', ['row', 'paddle']],
['๐๏ธ', ['swim', 'swam', 'swimming']],
['๐ต', ['mtb', 'mountain bike']],
['๐ฒ๏ธ', ['bike', 'biking']],
['๐คน', ['juggle', 'juggling']],
['๐ง', ['yoga']],
['๐', ['bath', 'tub']],
['๐', ['bed']],
['๐ถ', ['dog', 'puppy', 'k9']],
['๐ฆ', ['fox']],
['๐ต', ['monkey']],
['๐', ['shut up', 'stfu', 'speechless', 'quiet']],
['๐บ', ['wolf']],
['๐ฑ', ['cat', 'kitty', 'kitten', 'feline']],
['๐ด', ['horse']],
['๐ฆ', ['unicorn']],
['๐ฆ', ['owl']],
['(๐๐ฆ)', ['nightowl']],
['๐', ['dragon', 'drag and', 'drag &']],
['๐ชฐ', ['bug']],
['๐ธ๏ธ', ['web']],
['๐ท๏ธ', ['spider', 'spyder']],
['๐ฆ ', ['virus', 'covid']],
['๐ธ', ['flower']],
['๐ฒ', ['tree']],
['๐', ['apple', 'mac']],
['๐ฅ', ['cheers']],
['๐ง', ['ice']],
['๐๏ธ', ['earth', 'world', 'planet', 'globe']],
['๐บ๏ธ', ['map']],
['๐ ๏ธ', ['house', 'home']],
['๐ข', ['office', 'building']],
['๐ฅ', ['hospital', 'er', 'health', 'medical']],
['๐จ', ['hotel']],
['๐', ['night']],
['๐๏ธ', ['city', 'urban']],
['๐
', ['morning', 'sunrise']],
['๐', ['car', 'van', 'drive', 'vehicle']],
['โก๏ธ๐', ['ev']],
['๐', ['stop']],
['โ๏ธ', ['navy', 'anchor']],
['๐ฉ๏ธ', ['plane', 'airplane', 'flight']],
['๐', ['rocket', 'spaceship']],
['โฐ๏ธ', ['alarm', 'clock', 'time']],
['โญ๏ธ', ['star']],
['๐ง๏ธ', ['rain']],
['๐ช๏ธ', ['hurricane','storm','tornado']],
['๐จ๏ธ', ['snow']],
['โก๏ธ', ['electric', 'electricity', 'zap', 'charge', 'power']],
['๐ฅ', ['fire', 'burn']],
['๐', ['pumpkin', 'halloween', 'spooky']],
['๐', ['christmas', 'xmas']],
['๐ฃ๏ธ', ['bomb']],
['๐', ['party', 'congrats', 'congratulations', 'yay']],
['๐ซ', ['gun', 'shoot']],
['๐ช', ['magic', 'wand']],
['๐งฉ', ['puzzle']],
['๐ผ๏ธ', ['picture', 'photo', 'image']],
['๐จ', ['art', 'paint']],
['๐งต', ['thread']],
['๐ถ', ['music', 'song']],
['๐', ['phone call', 'phone', 'call']],
['๐', ['battery']],
['๐ป๏ธ', ['laptop', 'computer']],
['๐พ', ['save']],
['๐บ๏ธ', ['tv', 'television', 'video']],
['๐ท๏ธ', ['camera']],
['๐๏ธ', ['search']],
['๐ก', ['light', 'idea']],
['๐ต', ['money', 'cash', 'dollar']],
['โ๏ธ', ['mail']],
['๐ฆ๏ธ', ['package', 'box']],
['๐ณ๏ธ', ['vote', 'voting']],
['๐
', ['calendar', 'date', 'event']],
['โ๏ธ', ['cut', 'scissors']],
['๐๏ธ', ['trash']],
['๐๏ธ', ['lock']],
['๐', ['key']],
['๐', ['link', 'url']],
['๐ช', ['door']],
['๐ช', ['window']],
['๐ช', ['chair', 'seat', 'sit', 'sat']],
['๐ฝ', ['toilet', 'potty', 'bathroom']],
['๐ชค', ['trap']],
['๐ซง', ['bubble']],
['๐', ['cart', 'shop', 'shopping']],
['๐ชช', ['id', 'license']],
['โ ๏ธ', ['warning', 'alert', 'attention']],
['โข๏ธ', ['hazard', 'danger']],
['โฌ๏ธ', ['up', 'above', 'top', 'over']],
['โฌ๏ธ', ['down', 'under', 'bottom', 'below']],
['โฌ
๏ธ', ['left', 'back', 'backward', 'before']],
['โก๏ธ', ['right', 'ahead', 'forward', 'after']],
['๐', ['shuffle', 'mix', 'random']],
['๐', ['repeat', 'loop', 'again']],
['โฉ๏ธ', ['fast', 'quick', 'quickly', 'rapid']],
['โญ๏ธ', ['next']],
['โฎ๏ธ', ['previous', 'last']],
['โ๏ธ', ['man', 'men', 'guy', 'boy', 'dude']],
['โ๏ธ', ['woman', 'women', 'girl', 'lady', 'ladies']],
['โ๏ธ', ['plus', 'and', 'also']],
['โ๏ธ', ['question']],
['๐ฒ', ['$']],
['#๏ธโฃ', ['number', '#']],
['๐', ['cool']],
['๐', ['free']],
['๐', ['new']],
['๐', ['ok', 'alright']],
['๐ฅ', ['red']],
['๐ง', ['orange']],
['๐จ', ['yellow', 'amber']],
['๐ฉ', ['green']],
['๐ฆ', ['blue']],
['๐ช', ['purple', 'violet', 'magenta']],
['๐ซ', ['brown']],
['โฌ๏ธ', ['black', 'dark']],
['โฌ๏ธ', ['white']],
['๐', ['done', 'complet', 'finish']],
['๐บ๐ธ', ['usa', 'us flag', 'united states of america', 'united states']],
['๐ฉ', ['flag']],
]);
replaceInText(document.body, emojiMap);
function replaceInText(element, map) {
for (let node of element.childNodes) {
switch (node.nodeType) {
case Node.DOCUMENT_NODE:
case Node.ELEMENT_NODE:
replaceInText(node, map);
break;
case Node.TEXT_NODE:
for (let entry of map) {
for (let string of entry[1]) {
let regex = new RegExp(`([^a-z])${string}((ing|ed|s)?[^a-z])`, 'gi');
node.textContent = ` ${node.textContent} `.replace(regex, `$1${entry[0]}$2`).slice(1, -1);
}
}
break;
}
}
}
This Pen doesn't use any external CSS resources.
This Pen doesn't use any external JavaScript resources.