smiles.pl 9.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. # Copyright (C) 2014 Alex Schroeder <alex@gnu.org>
  2. #
  3. # This program is free software: you can redistribute it and/or modify it under
  4. # the terms of the GNU General Public License as published by the Free Software
  5. # Foundation, either version 3 of the License, or (at your option) any later
  6. # version.
  7. #
  8. # This program is distributed in the hope that it will be useful, but WITHOUT
  9. # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  10. # FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
  11. #
  12. # You should have received a copy of the GNU General Public License along with
  13. # this program. If not, see <http://www.gnu.org/licenses/>.
  14. use strict;
  15. use v5.10;
  16. AddModuleDescription('smiles.pl', 'Smilies');
  17. our (%Smilies);
  18. # The smilies are from the Emacs 24 distribution. There, you'll find
  19. # them in the etc/images/smilies/medium directory.
  20. # Files: blink.xpm braindamaged.xpm cry.xpm dead.xpm evil.xpm forced.xpm
  21. # frown.xpm grin.xpm indifferent.xpm reverse-smile.xpm sad.xpm
  22. # smile.xpm wry.xpm
  23. # Author: Adam Sjøgren
  24. # Copyright (C) 2007-2013 Free Software Foundation, Inc.
  25. # License: GNU General Public License version 3 or later (see COPYING)
  26. %Smilies = (
  27. # blink
  28. quotemeta(';-)') => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAACFQTFRFAAAAAAAAHRkAiHUA07YA+tgAZFYA/90AWU0Aj3sA////jG0orwAAAAF0Uk5TAEDm2GYAAAABYktHRApo0PRWAAAAcklEQVQI12NgYGAUFBRgAAJGZdcQIxBLLLy8vDQRKJBeXl7eXibAwAQUKBcvVWAQLk5xKxcvN2QQKS8UBzIcGUTLwSCQQbQQRIsHMoiUiJeXF7o7MgiXTywvlwQqZgqvFBScDtQONrAcaCDcCoSlUGcAAESjIP6OTV1GAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE0LTA3LTAzVDE0OjQ3OjQ2KzAyOjAwBw7jJgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNC0wNy0wM1QxNDo0Nzo0NiswMjowMHZTW5oAAAAASUVORK5CYII',
  29. # braindamaged
  30. quotemeta('8-)') => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAB5QTFRFAAAAAAAAHRkAiHUA07YA+tgAZFYA/90Aj3sA////2fI0PgAAAAF0Uk5TAEDm2GYAAAABYktHRAnx2aXsAAAAeElEQVQI12NgYGAUFBRgAAJGZdcQIxBLLLy8vDQRKJDuKOIoUibAwBQu5iiSWKrAIFwukpTmWG7IIFIu5pSSWO7IIFruKFIoUh7IIFpYDgTigQwiJeLl5YXujkDFjeXlEkDFTOEVgoLtQO2M6SA1QAPhViAshToDABSyHdgjFa3AAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE0LTA3LTAzVDE0OjQ3OjQ2KzAyOjAwBw7jJgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNC0wNy0wM1QxNDo0Nzo0NiswMjowMHZTW5oAAAAASUVORK5CYII',
  31. # cry
  32. quotemeta(':\'(') => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAB5QTFRFAAAAAAAAHRkAiHUA07YA+tgAZFYA/90AWU0A////M/SGKgAAAAF0Uk5TAEDm2GYAAAABYktHRAnx2aXsAAAAcklEQVQI12NgYGAUFBRgAAJGZdcQIxBLLLy8vDQRKJBeXl7eXibAwBRe0V4hUarAIFwuKFHYWG7IIAKUKXQsd2QQBTJKxMoDwQwgCARKFQsKmgOlhMsb3UskgIqZQoDKHV0VgAa2l5dXAA2EW4GwFOoMAEHVILjOIAB7AAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE0LTA3LTAzVDE0OjQ3OjQ2KzAyOjAwBw7jJgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNC0wNy0wM1QxNDo0Nzo0NiswMjowMHZTW5oAAAAASUVORK5CYII',
  33. # dead
  34. quotemeta('X-(') => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAB5QTFRFAAAAAAAAHRkAiHUA07YA+tgAZFYA/90Aj3sA////2fI0PgAAAAF0Uk5TAEDm2GYAAAABYktHRAnx2aXsAAAAdklEQVQI12NgYGAUFBRgAAJGZdcQIxBLLLy8vDQRKJDh7hFS0ibAwBQiIuLo6KrAIFzuGF4qUm7IIFIiIhro6O7IIFoBUtMeyCBaWA4E4oFAKfHy8kKglHB5Y3m5BFAxU3iFoGB7qQIDYzpITZkAwgqEpVBnAABAVB4+nUMqPgAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxNC0wNy0wM1QxNDo0Nzo0NiswMjowMAcO4yYAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTQtMDctMDNUMTQ6NDc6NDYrMDI6MDB2U1uaAAAAAElFTkSuQmC',
  35. # evil
  36. quotemeta('>-{') => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAACFQTFRFAAAAAAAAHRkAiHUA07YA+tgAZFYA/90AWU0Aj3sA////jG0orwAAAAF0Uk5TAEDm2GYAAAABYktHRApo0PRWAAAAc0lEQVQI12NgYGAUFBRgAAJGZdcQIxBLLLy8vDQRKJBuUV7eXCbAwBTuWF4uUqrAIFxe2O4hXm7IIFJe2AJkODKIloNBIINoIYgWD2QQKREvLy90dwQqnlheLglUzBReKSg4HaidMR2kBmgg3AqEpVBnAAAxxSDj4Zf1RAAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxNC0wNy0wM1QxNDo0Nzo0NiswMjowMAcO4yYAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTQtMDctMDNUMTQ6NDc6NDYrMDI6MDB2U1uaAAAAAElFTkSuQmC',
  37. # forced
  38. quotemeta(':-]') => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAB5QTFRFAAAAAAAAHRkAiHUA07YA+tgAZFYA/90AWU0A////M/SGKgAAAAF0Uk5TAEDm2GYAAAABYktHRAnx2aXsAAAAb0lEQVQI12NgYGAUFBRgAAJGZdcQIxBLLLy8vDQRKJBeUV7eXibAwBReWF4uXqrAIFwOYpQbMohAGI4MouVgEMggWgyizQMZRArdy8tLxB0ZhItNysudzQ0ZmEIUBQWFXBWABoLUAA2EW4GwFOoMAENHIDaBTwKaAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE0LTA3LTAzVDE0OjQ3OjQ2KzAyOjAwBw7jJgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNC0wNy0wM1QxNDo0Nzo0NiswMjowMHZTW5oAAAAASUVORK5CYII',
  39. # frown
  40. quotemeta('>-(') => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAB5QTFRFAAAAAAAAHRkAiHUA07YA+tgAZFYA/90AWU0A////M/SGKgAAAAF0Uk5TAEDm2GYAAAABYktHRAnx2aXsAAAAbklEQVQI12NgYGAUFBRgAAJGZdcQIxBLLLy8vDQRKJBuUV7eXCbAwBTuWF4uUqrAIFxe2O4hXm7IIFJe2AJkODKIloNBIIIhUl4sKGgOlBIub3QvkQAqZgoRKS93dFUAGtheXl4BNBBuBcJSqDMAINwgfeXok+IAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTQtMDctMDNUMTQ6NDc6NDYrMDI6MDAHDuMmAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE0LTA3LTAzVDE0OjQ3OjQ2KzAyOjAwdlNbmgAAAABJRU5ErkJggg=',
  41. # grin
  42. quotemeta(':-D') => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAACFQTFRFAAAAAAAAHRkAiHUA07YA+tgAZFYA/90AWU0A////j3sAOzDvXwAAAAF0Uk5TAEDm2GYAAAABYktHRAnx2aXsAAAAcElEQVQI12NgYGAUFBRgAAJGZdcQIxBLLLy8vDQRKJBeUV7eXibAwBReWF4uXqrAIFwOYpQbMohAGI4MouVgEMggWiiWbJYoHsggUiI5c+ZEd0eg4oUzZ0oBFTOFVwkKLgdqZ0wHqQUaCLcCYSnUGQBvkCGbMSPrngAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxNC0wNy0wM1QxNDo0Nzo0NiswMjowMAcO4yYAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTQtMDctMDNUMTQ6NDc6NDYrMDI6MDB2U1uaAAAAAElFTkSuQmC',
  43. # indifferent
  44. quotemeta(':-|') => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAB5QTFRFAAAAAAAAHRkAiHUA07YA+tgAZFYA/90AWU0A////M/SGKgAAAAF0Uk5TAEDm2GYAAAABYktHRAnx2aXsAAAAb0lEQVQI12NgYGAUFBRgAAJGZdcQIxBLLLy8vDQRKJBeUV7eXibAwBReWF4uXqrAIFwOYpQbMohAGI4MouVgEMggmg6i3QIZRISFy4vLxR0ZhAsdTQQNzQ0ZmILLBd0FgdoZ00HagAbCrUBYCnUGABvIH6pXpKoIAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE0LTA3LTAzVDE0OjQ3OjQ2KzAyOjAwBw7jJgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNC0wNy0wM1QxNDo0Nzo0NiswMjowMHZTW5oAAAAASUVORK5CYII',
  45. # reverse-smile
  46. quotemeta('(-:') => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAACFQTFRFAAAAAAAAHRkAiHUA07YA+tgAZFYA/90Aj3sAWU0A////QtT48gAAAAF0Uk5TAEDm2GYAAAABYktHRApo0PRWAAAAbklEQVQI12NgYGAUFBRgAAJGZdcQIxBLLLy8vDQRKJBeDgRlAgxM4RWCgu2lCgzC5Y3l5RLlhgwiJeLl5YXujgyihSA14oEMouVgEMggUg4UEi93BCoGMwyB2kEMoHbG9Mry8ulAA+FWICyFOgMAVzMhig+T55IAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTQtMDctMDNUMTQ6NDc6NDYrMDI6MDAHDuMmAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE0LTA3LTAzVDE0OjQ3OjQ2KzAyOjAwdlNbmgAAAABJRU5ErkJggg=',
  47. # sad
  48. quotemeta(':-(') => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAB5QTFRFAAAAAAAAHRkAiHUA07YA+tgAZFYA/90AWU0A////M/SGKgAAAAF0Uk5TAEDm2GYAAAABYktHRAnx2aXsAAAAaUlEQVQI12NgYGAUFBRgAAJGZdcQIxBLLLy8vDQRKJBeUV7eXibAwBReWF4uXqrAIFwOYpQbMohAGI4MouVgEIhgiJQXCwqaA6WEyxvdSySAiplCRMrLHV0VgAa2l5dXAA2EW4GwFOoMAGqJITUDfchKAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE0LTA3LTAzVDE0OjQ3OjQ2KzAyOjAwBw7jJgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNC0wNy0wM1QxNDo0Nzo0NiswMjowMHZTW5oAAAAASUVORK5CYII',
  49. # smile
  50. quotemeta(':-)') => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAACFQTFRFAAAAAAAAHRkAiHUA07YA+tgAZFYA/90AWU0Aj3sA////jG0orwAAAAF0Uk5TAEDm2GYAAAABYktHRApo0PRWAAAAbUlEQVQI12NgYGAUFBRgAAJGZdcQIxBLLLy8vDQRKJBeUV7eXibAwBReWF4uXqrAIFwOYpQbMohAGI4MouVgEMggWgiixQMZRErEy8sL3R2BiieWl0sCFTOFVwoKTgdqZ0wHqQEaCLcCYSnUGQB7ciGbohFtcwAAACV0RVh0ZGF0ZTpjcmVhdGUAMjAxNC0wNy0wM1QxNDo0Nzo0NiswMjowMAcO4yYAAAAldEVYdGRhdGU6bW9kaWZ5ADIwMTQtMDctMDNUMTQ6NDc6NDYrMDI6MDB2U1uaAAAAAElFTkSuQmC',
  51. # wry
  52. quotemeta(':-/') => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAB5QTFRFAAAAAAAAHRkAiHUA07YA+tgAZFYA/90AWU0A////M/SGKgAAAAF0Uk5TAEDm2GYAAAABYktHRAnx2aXsAAAAZklEQVQI12NgYGAUFBRgAAJGZdcQIxBLLLy8vDQRKJBeUV7eXibAwBReWF4uXqrAIFwOYpQbMohAGI4MouVgEAhhlAEZIiCGGVBKuNxRUFAEqJgpPBkoBNTOmJ4OUiSAsAJhKdQZAIcwIb3IdkxFAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE0LTA3LTAzVDE0OjQ3OjQ2KzAyOjAwBw7jJgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxNC0wNy0wM1QxNDo0Nzo0NiswMjowMHZTW5oAAAAASUVORK5CYII',
  53. # upside down
  54. quotemeta('(-:') => 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAIVBMVEUAAAAAAAAdGQCIdQDTtgD62ABkVgD/3QCPewBZTQD///9C1PjyAAAAAXRSTlMAQObYZgAAAAFiS0dECmjQ9FYAAAAHdElNRQfeCw0XHDC4neY3AAAAbklEQVQI12NgYGAUFBRgAAJGZdcQIxBLLLy8vDQRKJBeDgRlAgxM4RWCgu2lCgzC5Y3l5RLlhgwiJeLl5YXujgyihSA14oEMouVgEMggUg4UEi93BCoGMwyB2kEMoHbG9Mry8ulAA+FWICyFOgMAVzMhig+T55IAAAAldEVYdGRhdGU6Y3JlYXRlADIwMTQtMTEtMTNUMjM6Mjg6NDgrMDE6MDAiNX7OAAAAJXRFWHRkYXRlOm1vZGlmeQAyMDE0LTExLTEzVDIzOjI4OjQ4KzAxOjAwU2jGcgAAAABJRU5ErkJggg==',
  55. );