* All smileys from sites offering them as Public Domain */ use Friendica\Core\Hook; use Friendica\DI; function smiley_pack_install() { Hook::register('smilie', 'addon/smiley_pack/smiley_pack.php', 'smiley_pack_smilies'); } function smiley_pack_smilies(array &$b) { #Smileys are split into various directories by the intended range of emotions. This is in case we get too big and need to modularise things. We can then cut and paste the right lines, move the right directory, and just change the name of the addon to happy_smilies or whatever. #Be careful with invocation strings. If you have a smiley called foo, and another called foobar, typing :foobar will call foo. Avoid this with clever naming, using ~ instead of : #when all else fails. #Animal smileys. $b['texts'][] = ':bunnyflowers:'; $b['icons'][] = '' . ':bunnyflowers:' . ''; $b['texts'][] = ':chick:'; $b['icons'][] = '' . ':chick:' . ''; $b['texts'][] = ':bumblebee:'; $b['icons'][] = '' . ':bee:' . ''; $b['texts'][] = ':ladybird:'; $b['icons'][] = '' . ':ladybird:' . ''; $b['texts'][] = ':bigspider:'; $b['icons'][] = '' . ':bigspider:' . ''; $b['texts'][] = ':cat:'; $b['icons'][] = '' . ':cat:' . ''; $b['texts'][] = ':bunny:'; $b['icons'][] = '' . ':bunny:' . ''; $b['texts'][] = ':cow:'; $b['icons'][] = '' . ':cow:' . ''; $b['texts'][] = ':crab:'; $b['icons'][] = '' . ':crab:' . ''; $b['texts'][] = ':dolphin:'; $b['icons'][] = '' . ':dolphin:' . ''; $b['texts'][] = ':dragonfly:'; $b['icons'][] = '' . ':dragonfly:' . ''; $b['texts'][] = ':frog:'; $b['icons'][] = '' . ':frog:' . ''; $b['texts'][] = ':hamster:'; $b['icons'][] = '' . ':hamster:' . ''; $b['texts'][] = ':monkey:'; $b['icons'][] = '' . ':monkey:' . ''; $b['texts'][] = ':horse:'; $b['icons'][] = '' . ':horse:' . ''; $b['texts'][] = ':parrot:'; $b['icons'][] = '' . ':parrot:' . ''; $b['texts'][] = ':tux:'; $b['icons'][] = '' . ':tux:' . ''; $b['texts'][] = ':snail:'; $b['icons'][] = '' . ':snail:' . ''; $b['texts'][] = ':sheep:'; $b['icons'][] = '' . ':sheep:' . ''; $b['texts'][] = ':dog:'; $b['icons'][] = '' . ':dog:' . ''; $b['texts'][] = ':elephant:'; $b['icons'][] = '' . ':elephant:' . ''; $b['texts'][] = ':fish:'; $b['icons'][] = '' . ':fish:' . ''; $b['texts'][] = ':giraffe:'; $b['icons'][] = '' . ':giraffe:' . ''; $b['texts'][] = ':pig:'; $b['icons'][] = '' . ':pig:' . ''; #Baby Smileys $b['texts'][] = ':baby:'; $b['icons'][] = '' . ':baby:' . ''; $b['texts'][] = ':babycot:'; $b['icons'][] = '' . ':babycot:' . ''; $b['texts'][] = ':pregnant:'; $b['icons'][] = '' . ':pregnant:' . ''; $b['texts'][] = ':stork:'; $b['icons'][] = '' . ':stork:' . ''; #Confused Smileys $b['texts'][] = ':confused:'; $b['icons'][] = '' . ':confused:' . ''; $b['texts'][] = ':shrug:'; $b['icons'][] = '' . ':shrug:' . ''; $b['texts'][] = ':stupid:'; $b['icons'][] = '' . ':stupid:' . ''; $b['texts'][] = ':dazed:'; $b['icons'][] = '' . ':dazed:' . ''; #Cool Smileys $b['texts'][] = ':affro:'; $b['icons'][] = '' . ':affro:' . ''; #Devil/Angel Smileys $b['texts'][] = ':angel:'; $b['icons'][] = '' . ':angel:' . ''; $b['texts'][] = ':cherub:'; $b['icons'][] = '' . ':cherub:' . ''; $b['texts'][] = ':devilangel:'; $b['icons'][] = '' . ':devilangel:' . ''; $b['texts'][] = ':catdevil:'; $b['icons'][] = '' . ':catdevil:' . ''; $b['texts'][] = ':devillish:'; $b['icons'][] = '' . ':devillish:' . ''; $b['texts'][] = ':daseesaw:'; $b['icons'][] = '' . ':daseesaw:' . ''; $b['texts'][] = ':turnevil:'; $b['icons'][] = '' . ':turnevil:' . ''; $b['texts'][] = ':saint:'; $b['icons'][] = '' . ':saint:' . ''; $b['texts'][] = ':graveside:'; $b['icons'][] = '' . ':graveside:' . ''; #Unpleasent smileys. $b['texts'][] = ':toilet:'; $b['icons'][] = '' . ':toilet:' . ''; $b['texts'][] = ':fartinbed:'; $b['icons'][] = '' . ':fartinbed:' . ''; $b['texts'][] = ':fartblush:'; $b['icons'][] = '' . ':fartblush:' . ''; #Drinks $b['texts'][] = ':tea:'; $b['icons'][] = '' . ':tea:' . ''; $b['texts'][] = ':drool:'; $b['icons'][] = '' . ':drool:' . ''; #Sad smileys $b['texts'][] = ':crying:'; $b['icons'][] = '' . ':crying:' . ''; $b['texts'][] = ':prisoner:'; $b['icons'][] = '' . ':prisoner:' . ''; $b['texts'][] = ':sigh:'; $b['icons'][] = '' . ':sigh:' . ''; #Smoking - only one smiley in here, maybe it needs moving elsewhere? $b['texts'][] = ':smoking:'; $b['icons'][] = '' . ':smoking:' . ''; #Sport smileys $b['texts'][] = ':basketball:'; $b['icons'][] = '' . ':basketball:' . ''; $b['texts'][] = '~bowling'; $b['icons'][] = '' . '~bowling' . ''; $b['texts'][] = ':cycling:'; $b['icons'][] = '' . ':cycling:' . ''; $b['texts'][] = ':darts:'; $b['icons'][] = '' . ':darts:' . ''; $b['texts'][] = ':fencing:'; $b['icons'][] = '' . ':fencing:' . ''; $b['texts'][] = ':juggling:'; $b['icons'][] = '' . ':juggling:' . ''; $b['texts'][] = ':skipping:'; $b['icons'][] = '' . ':skipping:' . ''; $b['texts'][] = ':archery:'; $b['icons'][] = '' . ':archery:' . ''; $b['texts'][] = ':surfing:'; $b['icons'][] = '' . ':surfing:' . ''; $b['texts'][] = ':snooker:'; $b['icons'][] = '' . ':snooker:' . ''; $b['texts'][] = ':horseriding:'; $b['icons'][] = '' . ':horseriding:' . ''; #Love smileys $b['texts'][] = ':iloveyou:'; $b['icons'][] = '' . ':iloveyou:' . ''; $b['texts'][] = ':inlove:'; $b['icons'][] = '' . ':inlove:' . ''; $b['texts'][] = '~love'; $b['icons'][] = '' . ':love' . ''; $b['texts'][] = ':lovebear:'; $b['icons'][] = '' . ':lovebear:' . ''; $b['texts'][] = ':lovebed:'; $b['icons'][] = '' . ':lovebed:' . ''; $b['texts'][] = ':loveheart:'; $b['icons'][] = '' . ':loveheart:' . ''; #Tired/Sleep smileys $b['texts'][] = ':countsheep'; $b['icons'][] = '' . ':countsheep:' . ''; $b['texts'][] = ':hammock:'; $b['icons'][] = '' . ':hammock:' . ''; $b['texts'][] = ':pillow:'; $b['icons'][] = '' . ':pillow:' . ''; $b['texts'][] = ':yawn:'; $b['icons'][] = '' . ':yawn:' . ''; #Fight/Flame/Violent smileys $b['texts'][] = ':2guns:'; $b['icons'][] = '' . ':2guns:' . ''; $b['texts'][] = ':alienfight'; $b['icons'][] = '' . ':alienfight' . ''; $b['texts'][] = ':army:'; $b['icons'][] = '' . ':army:' . ''; $b['texts'][] = ':arrowhead:'; $b['icons'][] = '' . ':arrowhead:' . ''; $b['texts'][] = ':bfg:'; $b['icons'][] = '' . ':bfg:' . ''; $b['texts'][] = ':bowman:'; $b['icons'][] = '' . ':bowman:' . ''; $b['texts'][] = ':chainsaw:'; $b['icons'][] = '' . ':chainsaw:' . ''; $b['texts'][] = ':crossbow:'; $b['icons'][] = '' . ':crossbow:' . ''; $b['texts'][] = ':crusader:'; $b['icons'][] = '' . ':crusader:' . ''; $b['texts'][] = ':dead:'; $b['icons'][] = '' . ':dead:' . ''; $b['texts'][] = ':hammersplat:'; $b['icons'][] = '' . ':hammersplat:' . ''; $b['texts'][] = ':lasergun:'; $b['icons'][] = '' . ':lasergun:' . ''; $b['texts'][] = ':machinegun:'; $b['icons'][] = '' . ':machinegun:' . ''; $b['texts'][] = ':acid:'; $b['icons'][] = '' . ':acid:' . ''; #Fantasy smileys - monsters and dragons fantasy. The other type of fantasy belongs in adult smileys $b['texts'][] = ':alienmonster:'; $b['icons'][] = '' . ':alienmonster:' . ''; $b['texts'][] = ':barbarian:'; $b['icons'][] = '' . ':barbarian:' . ''; $b['texts'][] = ':dinosaur:'; $b['icons'][] = '' . ':dinosaur:' . ''; $b['texts'][] = ':dragon:'; $b['icons'][] = '' . ':dragon:' . ''; $b['texts'][] = ':draco:'; $b['icons'][] = '' . ':draco:' . ''; $b['texts'][] = ':ghost:'; $b['icons'][] = '' . ':ghost:' . ''; $b['texts'][] = ':mummy:'; $b['icons'][] = '' . ':mummy:' . ''; #Food smileys $b['texts'][] = ':apple:'; $b['icons'][] = '' . ':apple:' . ''; $b['texts'][] = ':broccoli:'; $b['icons'][] = '' . ':brocolli:' . ''; $b['texts'][] = ':cake:'; $b['icons'][] = '' . ':cake:' . ''; $b['texts'][] = ':carrot:'; $b['icons'][] = '' . ':carrot:' . ''; $b['texts'][] = ':popcorn:'; $b['icons'][] = '' . ':popcorn:' . ''; $b['texts'][] = ':tomato:'; $b['icons'][] = '' . ':tomato:' . ''; $b['texts'][] = ':banana:'; $b['icons'][] = '' . ':banana:' . ''; $b['texts'][] = ':cooking:'; $b['icons'][] = '' . ':cooking:' . ''; $b['texts'][] = ':fryegg:'; $b['icons'][] = '' . ':fryegg:' . ''; $b['texts'][] = ':birthdaycake:'; $b['icons'][] = '' . ':birthdaycake:' . ''; #Happy smileys $b['texts'][] = ':cloud9:'; $b['icons'][] = '' . ':cloud9:' . ''; $b['texts'][] = ':tearsofjoy:'; $b['icons'][] = '' . ':tearsofjoy:' . ''; #Repsect smileys $b['texts'][] = ':bow:'; $b['icons'][] = '' . ':bow:' . ''; $b['texts'][] = ':bravo:'; $b['icons'][] = '' . ':bravo:' . ''; $b['texts'][] = ':hailking:'; $b['icons'][] = '' . ':hailking:' . ''; $b['texts'][] = ':number1:'; $b['icons'][] = '' . ':number1:' . ''; $b['texts'][] = ':cc_cc:'; $b['icons'][] = '' . ':cc_cc:' . ''; $b['texts'][] = ':cc_by:'; $b['icons'][] = '' . ':cc_by:' . ''; $b['texts'][] = ':cc_sa:'; $b['icons'][] = '' . ':cc_sa:' . ''; $b['texts'][] = ':cc_0:'; $b['icons'][] = '' . ':cc_0:' . ''; #Laugh smileys $b['texts'][] = ':hahaha:'; $b['icons'][] = '' . ':hahaha:' . ''; $b['texts'][] = ':loltv:'; $b['icons'][] = '' . ':loltv:' . ''; $b['texts'][] = ':rofl:'; $b['icons'][] = '' . ':rofl:' . ''; #Music smileys $b['texts'][] = ':drums:'; $b['icons'][] = '' . ':drums:' . ''; $b['texts'][] = ':guitar:'; $b['icons'][] = '' . ':guitar:' . ''; $b['texts'][] = ':trumpet:'; $b['icons'][] = '' . ':trumpet:' . ''; #Smileys that used to be in core $b['texts'][] = ':headbang:'; $b['icons'][] = '' . ':headbang:' . ''; $b['texts'][] = ':beard:'; $b['icons'][] = '' . ':beard:' . ''; $b['texts'][] = ':whitebeard:'; $b['icons'][] = '' . ':whitebeard:' . ''; $b['texts'][] = ':shaka:'; $b['icons'][] = '' . ':shaka:' . ''; $b['texts'][] = ':\\.../'; $b['icons'][] = '' . ':\\.../' . ''; $b['texts'][] = ':\\ooo/'; $b['icons'][] = '' . ':\\ooo/' . ''; $b['texts'][] = ':headdesk:'; $b['icons'][] = '' . ':headdesk:' . ''; #These two are still in core, so oldcore isn't strictly right, but we don't want too many directories $b['texts'][] = ':-d'; $b['icons'][] = '' . ':-d' . ''; $b['texts'][] = ':-o'; $b['icons'][] = '' . ':-o' . ''; # Regex killers - stick these at the bottom so they appear at the end of the English and # at the start of $OtherLanguage. $b['texts'][] = ':cool:'; $b['icons'][] = '' . ':cool:' . ''; $b['texts'][] = ':vomit:'; $b['icons'][] = '' . ':vomit:' . ''; $b['texts'][] = ':golf:'; $b['icons'][] = '' . ':golf:' . ''; $b['texts'][] = ':football:'; $b['icons'][] = '' . ':football:' . ''; $b['texts'][] = ':tennis:'; $b['icons'][] = '' . ':tennis:' . ''; $b['texts'][] = ':alpha:'; $b['icons'][] = '' . ':alpha:' . ''; $b['texts'][] = ':marine:'; $b['icons'][] = '' . ':marine:' . ''; $b['texts'][] = ':sabre:'; $b['icons'][] = '' . ':sabre:' . ''; $b['texts'][] = ':tank:'; $b['icons'][] = '' . ':tank:' . ''; $b['texts'][] = ':viking:'; $b['icons'][] = '' . ':viking:' . ''; $b['texts'][] = ':gangs:'; $b['icons'][] = '' . ':gangs:' . ''; $b['texts'][] = ':dj:'; $b['icons'][] = '' . ':dj:' . ''; $b['texts'][] = ':elvis:'; $b['icons'][] = '' . ':elivs:' . ''; $b['texts'][] = ':violin:'; $b['icons'][] = '' . ':violin:' . ''; # New Gif Emoji (@one@loma.ml) # Fediverse $b['texts'][] = ':friendica:'; $b['icons'][] = '' . ':friendica:' . ''; $b['texts'][] = ':fediverse:'; $b['icons'][] = '' . ':fediverse:' . ''; $b['texts'][] = ':mastodon:'; $b['icons'][] = '' . ':mastodon:' . ''; $b['texts'][] = ':pleroma:'; $b['icons'][] = '' . ':pleroma:' . ''; $b['texts'][] = ':misskey:'; $b['icons'][] = '' . ':misskey:' . ''; $b['texts'][] = ':diaspora:'; $b['icons'][] = '' . ':diaspora:' . ''; $b['texts'][] = ':hubzilla:'; $b['icons'][] = '' . ':hubzilla:' . ''; $b['texts'][] = ':pixelfed:'; $b['icons'][] = '' . ':pixelfeed:' . ''; $b['texts'][] = ':nextcloud:'; $b['icons'][] = '' . ':nextcloud:' . ''; $b['texts'][] = ':activitypub:'; $b['icons'][] = '' . ':activitypub:' . ''; # ccc $b['texts'][] = ':ccc event:'; $b['icons'][] = '' . ':ccc event:' . ''; # Commercial $b['texts'][] = ':youtube:'; $b['icons'][] = '' . ':youtube:' . ''; $b['texts'][] = ':spotify:'; $b['icons'][] = '' . ':spotify:' . ''; $b['texts'][] = ':twitter:'; $b['icons'][] = '' . ':twitter:' . ''; $b['texts'][] = ':twitch:'; $b['icons'][] = '' . ':twitch:' . ''; $b['texts'][] = ':facebook:'; $b['icons'][] = '' . ':facebook:' . ''; $b['texts'][] = ':threads:'; $b['icons'][] = '' . ':threads:' . ''; $b['texts'][] = ':google:'; $b['icons'][] = '' . ':google:' . ''; $b['texts'][] = ':signal:'; $b['icons'][] = '' . ':signal:' . ''; $b['texts'][] = ':tiktok:'; $b['icons'][] = '' . ':tiktok:' . ''; $b['texts'][] = ':whatsapp:'; $b['icons'][] = '' . ':whatsapp:' . ''; $b['texts'][] = ':instagram:'; $b['icons'][] = '' . ':instagram:' . ''; $b['texts'][] = ':telegram:'; $b['icons'][] = '' . ':telegram:' . ''; $b['texts'][] = ':windows:'; $b['icons'][] = '' . ':windows:' . ''; $b['texts'][] = ':github:'; $b['icons'][] = '' . ':github:' . ''; $b['texts'][] = ':threema:'; $b['icons'][] = '' . ':threema:' . ''; # nonCommercial $b['texts'][] = ':invidious:'; $b['icons'][] = '' . ':invidious:' . ''; $b['texts'][] = ':bluesky:'; $b['icons'][] = '' . ':bluesky:' . ''; $b['texts'][] = ':vivaldi:'; $b['icons'][] = '' . ':vivaldi:' . ''; # opensource $b['texts'][] = ':firefox:'; $b['icons'][] = '' . ':firefox:' . ''; $b['texts'][] = ':linuxopensuse:'; $b['icons'][] = '' . ':linuxopensuse:' . ''; $b['texts'][] = ':linuxdebian:'; $b['icons'][] = '' . ':linuxdebian:' . ''; $b['texts'][] = ':linuxfedora:'; $b['icons'][] = '' . ':linuxfedora:' . ''; $b['texts'][] = ':linuxubuntu:'; $b['icons'][] = '' . ':linuxubuntu:' . ''; $b['texts'][] = ':linuxmint:'; $b['icons'][] = '' . ':linuxmint:' . ''; $b['texts'][] = ':fdroid:'; $b['icons'][] = '' . ':fdroid:' . ''; $b['texts'][] = ':tutanota:'; $b['icons'][] = '' . ':tutanota:' . ''; $b['texts'][] = ':raspi:'; $b['icons'][] = '' . ':raspi:' . ''; $b['texts'][] = ':linux:'; $b['icons'][] = '' . ':linux:' . ''; $b['texts'][] = ':kde:'; $b['icons'][] = '' . ':kde:' . ''; $b['texts'][] = ':firefoxnightly:'; $b['icons'][] = '' . ':firefoxnightly:' . ''; $b['texts'][] = ':archlinux:'; $b['icons'][] = '' . ':archlinux:' . ''; $b['texts'][] = ':thunderbird:'; $b['icons'][] = '' . ':thunderbird:' . ''; $b['texts'][] = ':vivaldi:'; $b['icons'][] = '' . ':vivaldi:' . ''; $b['texts'][] = ':jabber:'; $b['icons'][] = '' . ':jabber:' . ''; $b['texts'][] = ':matrix:'; $b['icons'][] = '' . ':matrix:' . ''; $b['texts'][] = ':xmpp:'; $b['icons'][] = '' . ':xmpp:' . ''; $b['texts'][] = ':foss:'; $b['icons'][] = '' . ':foss:' . ''; }