#+TITLE: Emoji layer

#+TAGS: fun|layer

[[file:img/emojis.png]]

* Table of Contents                     :TOC_5_gh:noexport:
- [[#description][Description]]
  - [[#features][Features:]]
- [[#install][Install]]
  - [[#configuration][Configuration]]
    - [[#unicode-or-short-names][Unicode or short-names]]
- [[#key-bindings][Key bindings]]
  - [[#emoji-dedicated-buffer][Emoji dedicated buffer]]

* Description
This layer adds support for Emoji emoticons from [[https://www.webpagefx.com/tools/emoji-cheat-sheet/][emoji-cheat-sheet]].

** Features:
- Browse Emoji in a dedicated buffer
- Display Emoji images in buffer
- Insert one or several Emoji with a helm front-end
- Completion of Emojis using [[https://github.com/dunn/company-emoji][company-emoji]]

* Install
To use this configuration layer, add it to your =~/.spacemacs=. You will need to
add =emoji= to the existing =dotspacemacs-configuration-layers= list in this
file.

Linux user could install [[https://zhm.github.io/symbola/][Symbola]] font to get company-emoji support with =apt-get=

#+BEGIN_SRC shell
  apt-get install ttf-ancient-fonts
#+END_SRC

** Configuration
*** Unicode or short-names
By default, company-emoji is configured only for =text-mode= and inserts
unicode. To insert short-names set =company-emoji-insert-unicode= to =nil= as
follows:

#+BEGIN_SRC emacs-lisp
  (auto-completion :variables
                   company-emoji-insert-unicode nil)
#+END_SRC

* Key bindings

| Key binding | Description                             |
|-------------+-----------------------------------------|
| ~SPC a f e~ | open a dedicated buffer to browse Emoji |
| ~SPC i e~   | insert Emoji via a helm buffer          |

** Emoji dedicated buffer

| Key binding | Description             |
|-------------+-------------------------|
| ~RET~       | copy current Emoji code |
| ~q~         | quit                    |
