Smf2.1: Update smileys, maybe implement Unicode standart?

Created on 17 Aug 2015  路  36Comments  路  Source: SimpleMachines/SMF2.1

All of our 4 smiley sets are dated back to SMF 2.0 years. They look pretty old. What about updating them?

Maybe implement Unicode standart?

Question

All 36 comments

I think it should be created the smilie system completely. It should be regardless of specified language strings be.
So similar to phpbb:
phpbb_smilie

@MustafaCan We'll gladly consider adding/changing smileys if someone wishes to submit some for consideration, but in general there hasn't been a lot of interest in smiley sets among users. We even held a contest years ago and still didn't get many entries.

@wintstar I'm not sure what you're asking/suggesting. If you have custom smileys enabled SMF should use whatever description is stored in the database for each smiley. If you're wanting the ability to have a separate description for each language, that likely won't happen because it would be a lot of work to implement.

@Oldiesmann I find it's too complicated individual to add smileys and smiley sets.

There's really no easier way to do it short of having a function to scan the directory for any new files and add the code, etc. automatically (using something like ":filename:" as the code and "filename" as the description). Even then you'd still need to upload the file to the appropriate directory/directories and tell SMF to look for it.

@Oldiesmann Here is my idea.

  1. When you type " : " smiley list appears, just like GitHub, showing you related smileys. You can also select one from your emoji keyboard, many new smartphones have one.
  2. SMF will hold the smiley and send it. We already support Unicode. No need for any server-side code.
  3. Smileys will show up as-is if OS have an emoji font installed. If no emoji font found, our webfont is used.

For customization: Admins can change the webfont and can set webfont rendering default to show their custom smileys if they want.

For Step 1 we can take the code from github, and implement it to SCEditor.
Step 2 is pretty streightforward. Just remove the old smiley system and we are done.
For Step 3 we will add a webfont to the theme which have emojis. Here is a few webfonts which have good smileys inside.

Segoe UI: License unknown, maybe Apache?
Apple Color Emoji: License unknown. (Maybe open-source, github uses that.)
Twemoji: CC-BY license.
Emoji One: CC-BY-SA license.
Roboto: AOSP license.

I dislike the idea of a type ahead smiley.

In short, I don't see any benefit to this suggestion.

I am all for getting new images for the smiley set, but I see no need to remove/redo the smiley system with someone else's code.

There are many benefits actually, The main benefits are it's a standart, and it's much more simplier than our current smiley system.

Emoji system is already here and people already use these on my forum. They just use emoji keyboards, or copypaste them from getemoji.com

Also, the codes github uses are actually de-facto standart and used on 50+ places currently.

Campfire, GitHub, Basecamp, Redbooth, Trac, Flowdock, Sprint.ly, Kandan, Textbox.io, Kippt, Redmine, JabbR, Trello, Hall, Plug.dj, Qiita, Zendesk, Ruby China, Grove, Idobata, NodeBB Forums, Slack, Streamup, OrganisedMinds, Hackpad, Cryptbin, Kato, Reportedly, Cheerful Ghost, IRCCloud, Dashcube, MyVideoGameList, Subrosa, Sococo, Quip, And Bang, Bonusly, Discourse, Ello, Twemoji Awesome, Got Chosen, Flow, ReadMe.io, esa, DBook, Groups.io, TeamworkChat, Damn Bugs, Let's Chat, Buildkite, ChatGrape, Dokuwiki and Usersnap.

@Kindred-999 instead f trolling everyone by jumping to conclusions without a reason, take a few minutes and explain your verdict.

I still don't see the benefit to ripping out our current highly flexible smiley system and replacing it with emoji. The type-ahead thing isn't really useful in SMF since all the smileys are already displayed in the editor and you just have to click one to insert it (and in 2.1 we have the option of displaying the editor in the quick reply box as well).

@Oldiesmann I feel constrained to be able to insert smileys only with existing standard smileys file name. This is to insert the result of your own smileys.

Error notice:
::1
3ab11a9c06e077ee12b372f6a04ed443
Type of error: General
A smiley with that code already exists.

yahoo-smileys_2

yahoo-smileys_1

This is frustrating.

If you want to do that, the easiest way is to just create a new smiley set and delete the existing ones. That will give you the option to import all smileys already in that directory, which should set the codes automatically as well.

What's frustrating about the error message though? You can't have multiple smileys with the same code because SMF wouldn't know which image to use then.

Thanks Oldiesmann, I'll try that. Delete all other Smileys_Sets. :+1:

It is probably due to this data to insert not possible own smilieys. It is to insert only possible other smilieys only with this file name. And that restricts the Admin in his Layout.

Sources/Subs-Editor.php line 147
$smileysto = array('evil.gif', 'cheesy.gif', 'rolleyes.gif', 'angry.gif', 'smiley.gif', 'wink.gif', 'grin.gif', 'sad.gif', 'shocked.gif', 'cool.gif', 'tongue.gif', 'huh.gif', 'embarrassed.gif', 'lipsrsealed.gif', 'kiss.gif', 'cry.gif', 'undecided.gif', 'azn.gif', 'afro.gif', 'police.gif', 'angel.gif');

Sources/Subs.php at line 2613
$smileysfrom = array('>:D', ':D', '::)', '>:(', ':))', ':)', ';)', ';D', ':(', ':o', '8)', ':P', '???', ':-[', ':-X', ':-*', ':\'(', ':-\', '^-^', 'O0', 'C:-)', '0:)');
$smileysto = array('evil.gif', 'cheesy.gif', 'rolleyes.gif', 'angry.gif', 'laugh.gif', 'smiley.gif', 'wink.gif', 'grin.gif', 'sad.gif', 'shocked.gif', 'cool.gif', 'tongue.gif', 'huh.gif', 'embarrassed.gif', 'lipsrsealed.gif', 'kiss.gif', 'cry.gif', 'undecided.gif', 'azn.gif', 'afro.gif', 'police.gif', 'angel.gif');
$smileysdescs = array('', $txt['icon_cheesy'], $txt['icon_rolleyes'], $txt['icon_angry'], '', $txt['icon_smiley'], $txt['icon_wink'], $txt['icon_grin'], $txt['icon_sad'], $txt['icon_shocked'], $txt['icon_cool'], $txt['icon_tongue'], $txt['icon_huh'], $txt['icon_embarrassed'], $txt['icon_lips'], $txt['icon_kiss'], $txt['icon_cry'], $txt['icon_undecided'], '', '', '', '');

Edit:!
Have got it now. But very inconvenient. Had to delete all Smileys Set in the Admin Center. Then I had to delete all of these files on the server, Then the contents of the folder "default" empty (except for index.php) and then add your own smileys. Very very awkward.

I prefer MustafaCan idea.

It is inconvenient if you don't want any of the default smileys, but most people are fine with the default ones and adding their own. Adding emoji support (and especially using emoji in place of our own system) would require a lot of extra code and/or rewriting of existing code, among other things. That's not going to happen for 2.1.

@live627 - I was not trolling. I made a statement of opinion. I dislike the idea of using the other code. I _HATE_ the idea of "type-ahead" and think that is actively a BAD idea.

@wintstar -- You seem to be over complicating things. I have a system on which I added 20 extra smiley, and I added NEW codes for those including :whip: :<> :alligator: and all the others... It was simple and straight forward to add a new smiley.
http://wiki.simplemachines.org/smf/SMF2.0:Smileys_and_Message_Icons#Add_Smiley

I dislike the idea of using the other code. I HATE the idea of "type-ahead" and think that is actively a BAD idea.

But you haven't actually said why. You seem to be good at projecting your opinion without explanation, as seen multiple times at sm.org.

well, because I hate the concept and think it is a bad idea... I wasn't aware that I had to justify an opinion. If I had specific reasons other than opinion, I would state them...

I will state, for the record, that I despise the type ahead here on github... I dislike anything that pops-up as I am typing. If I select a click/hover, that is one thing, but it is very annoying and distracting to have something pop-up as I am typing. If that is the sort of thing that is being requested, then I would argue against that ever being included in our product (this is opinion, but opinion based on decades of using online forums)

Unless we force people to start smiley codes with a ":" or similar, it would get annoying as it could pop up when people just want to type a regular word. Since we actually have clickable smileys, I'm not sure how useful it would be for people either.

The problem is there are many emojis on the Unicode standart. All of them will not fit on the editor page.

So? Put them into the extended -more- section.... I think k@ had as many as 120 (or more) smileys in that section at one point.

That's a possibility too.

Unicode emojis requires huges arrays, it becomes pretty difficult to handle them all on both server and client side.

SMF already uses ichord/At.js for mentions, building a mod for smilies should be easy if theres a limited set of emojis.

As for updating the actual smileys, sure but we need to find a suitable set with a permissible license. If anyone has any suggestions, please do post them.

How about using fugue icons smileys? We're already using them on messageicons, and they would make a good replacement for the current default.

@Antes gave a good idea regarding making our own smiley set, but I won't be able to work on that for some time, the fugue set is already mostly ready.

From my eyes i don't understand the requests,
when you like to use unicode smylies and the smf2.1 runs with unicode,
than typ then down and then are working.
Ther is no need to update any smylie set.

We could also add emoji support directly by simply changing the function that replaces old fashioned emoticons (e.g. :), ;), etc.) with smiley images so that it replaces them with emoji characters. It really shouldn't be as hard as a lot of this discussion seems to assume.

Regardless of being able to use unicode in the post or not, the current default smiley set is still notably old. We should at least use better quality ones (I'm not sure if we have permission to fix the quality of the existing default set, and the fugue icons smileys are a good replacement).

The admin can disable the smileys if he wants to so I don't see any reason to change that.

If you're still open to a new icon set might I suggest Emojione (https://www.emojione.com)? Both the 3.x and 2.x branches have good licenses for non-commercial projects. 2.x especially.

their license says nothing about distribution, so we cant use them due to that. i also dont like that they dont use a known license type and create their own license.

Fairly certain a short email could address the distribution concern but their 2.x branch is licensed under creative commons. As far as I'm aware, they merely require some form of attribution, however they are used.
https://github.com/emojione/emojione/blob/2.2.7/README.md

From that page:

Emoji artwork is provided by EmojiOne and is licensed under CC-BY 4.0

A note/link on every web page where our emojis are displayed is required.

if a note or link has to be on every page the smiley shows then no we cant use them.

Interesting option, but I think we're better off using fugue and leaving it at that at this point.

Adding unicode would also be a mess with wild cross-browser differences.

actually it looks like we use fugue already. https://github.com/SimpleMachines/SMF2.1/tree/release-2.1/Smileys/fugue

maybe we should replace the existing smileys with fugue as the default set and change all related settings in the database to reflect this change.

Yep.

I also have "upgraded" our other sets for any nostalgic folks out there (smiley sets often help create a forum's "personality"), just awaiting to confirm we won't have any legal issues with those changes.

i have not seen where you posted about that, they are released under the 2.0 BSD license so it should be fine. i would recommend making smiley packages out of them and removing from a new 2.1 install. letting users install them manually if they so wish.

Good idea. I'd say we can leave the current default as an alternative and then make a package for the other two. That's what is more likely people may want to use and keeps them aware you can change sets.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

KarelWintersky picture KarelWintersky  路  5Comments

Kindred-999 picture Kindred-999  路  5Comments

albertlast picture albertlast  路  11Comments

XinYenFon picture XinYenFon  路  11Comments

jdarwood007 picture jdarwood007  路  5Comments