jonas / tig

Text-mode interface for git
https://jonas.github.io/tig/
GNU General Public License v2.0
12.46k stars 610 forks source link

Feature Request: add support for emojis shortnames in commit messages #551

Closed yuchi closed 7 years ago

yuchi commented 7 years ago

Ok, they looks stupid. But some people like them (I am more or less among those).

jonas commented 7 years ago

What is an "emoji shortname"? I am not sure what is the purpose of this feature.

yuchi commented 7 years ago

:robot: becomes :robot:

They are used at the start of commit messages as tags.

spytheman commented 7 years ago

@yuchi What font which supports emojis, do you use for your terminal ?

yuchi commented 7 years ago

In OS X iTerm switches to the system default for emojis. I honestly have no idea of support on other platforms.

yuchi commented 7 years ago

To see this trend in the wild you can have a look at commits in The Atom editor (https://github.com/atom/atom/commits/master)

jonas commented 7 years ago

Converting :robot: to an emoji is out of scope for this project. Maybe this can be implemented via an external script/text preprocessor once I get around to add support for that.

It is unfortunate that emojis themselves are not really supported by Tig. I am not sure where this is breaking. The only emoji that I've seen working is ❤️.

jonas commented 7 years ago

Emojis are rendered since 800199e47fc8326a4a2ce25f8f3bb91fed2e3fbf. Closing this one as out of scope.

sebastianst commented 6 years ago

In view of http://gitmoji.carloscuesta.me/ I would like to reopen this request. Github and Gitlab translate :tada: into :tada:, instead of them saying that it is the browser's job to translate those weird colon-separated words into emojis. So it can be argued that it would be :heart: :heart: :heart: for tig to support this increasing usage of emojis at the beginning of commit messages, instead of off-loading that task to the terminal.

Regarding the rendering of emojis in the terminal, I use Arch Linux with noto-fonts-emoji installed and emojis are displayed perfectly in color in my terminal (termite).

tzvc commented 5 years ago

I agree with @sebastianst, gitmojis are becoming popular so I think it's an interesting functionality for TIG

yuchi commented 4 years ago

@jonas Would you mind to re-open this issue given the new context? The Gitmoji project reached 6K stars here on GitHub.

yuchi commented 3 years ago

Again, @jonas would you reconsider this feature since using emoji shortcodes has become more widespread?

codingedgar commented 3 years ago

Ok, they looks stupid. But some people like them (I am more or less among those).

I never thought I would become a gitmoji lover, but here I'm, requesting this issue to be opened... 🥺 👉👈

raabf commented 2 years ago

I would also like to upvote the possibility to interpret emoji codes. However

Maybe this can be implemented via an external script/text preprocessor once I get around to add support for that.

I like this idea, which allows to implement the actual functionality outsitde tig (especially if this is out of scope). That might be also important because emojis are standartized, but not their textual codes whose can differ between platforms, which means that we need flexibility here.

By the way, I personally directly use the UTF-8 symbols instead of their textual code in my commit messages, which works fine in GitHub/GitLab and Tig (but most people doesn’t do this): 2022-02-16_11-46

tony commented 2 years ago

@yuchi, @theochampion, @varac, @robvankeilegom, @codingedgar, @kiuKisas, @nilskuhn, @YusukeSano, @UrGuardian4ngel, @raabf

I created #1191 to emphasize the gitmoji aspect. This has been gnawing at me for years of using tig(1) 😆

FYI, It may get closed again, but if you want to make a good case for it, or since its a niche, it may be worth proposing a PR for a mechanism to find/replace patterns in commit message via config.

sebastianst commented 2 years ago

I love the idea of extending tig with git message filters/modifiers. This way, one could achieve gitmoji rendering with a script.