# Unicode input

You can input unicode characters by name, hex code, recently used and even an editable favorites list. Press `ctrl+shift+u` to start the unicode input widget, shown below.

A screenshot of the unicode input widget

In Code mode, you enter a unicode character by typing in the hex code for the character and pressing enter, for example, type in `2716` and press enter to get ✖. You can also choose a character from the list of recently used characters by typing a leading period and then the two character index and pressing Enter. The up and down arrow keys can be used to choose the previous and next unicode symbol respectively.

In Name mode you instead type words from the character name and use the arrow keys/tab to select the character from the displayed matches. You can also type a space followed by a period and the index for the match if you don’t like to use arrow keys.

You can switch between modes using either the function keys or by pressing ``Ctrl`+`[`` and ``Ctrl`+`]`` or by pressing ``Ctrl`+`Tab`` and ``Ctrl`+`Shift`+`Tab``.

## Source code for unicode_input

The source code for this kitten is available on GitHub.

## Command Line Interface

    kitty +kitten unicode_input [options]

Input a unicode character

### Options

--emoji-variation <EMOJI_VARIATION>

  Whether to use the textual or the graphical form for emoji. By default the default form specified in the unicode standard for the symbol is used. Default: `none` Choices: `graphic, none, text`