1# ibus-engines.typing-booster {#sec-ibus-typing-booster}
2
3This package is an ibus-based completion method to speed up typing.
4
5## Activating the engine {#sec-ibus-typing-booster-activate}
6
7IBus needs to be configured accordingly to activate `typing-booster`. The configuration depends on the desktop manager in use. For detailed instructions, please refer to the [upstream docs](https://mike-fabian.github.io/ibus-typing-booster/).
8
9On NixOS, you need to explicitly enable `ibus` with given engines before customizing your desktop to use `typing-booster`. This can be achieved using the `ibus` module:
10
11```nix
12{ pkgs, ... }: {
13 i18n.inputMethod = {
14 enabled = "ibus";
15 ibus.engines = with pkgs.ibus-engines; [ typing-booster ];
16 };
17}
18```
19
20## Using custom hunspell dictionaries {#sec-ibus-typing-booster-customize-hunspell}
21
22The IBus engine is based on `hunspell` to support completion in many languages. By default, the dictionaries `de-de`, `en-us`, `fr-moderne` `es-es`, `it-it`, `sv-se` and `sv-fi` are in use. To add another dictionary, the package can be overridden like this:
23
24```nix
25ibus-engines.typing-booster.override { langs = [ "de-at" "en-gb" ]; }
26```
27
28_Note: each language passed to `langs` must be an attribute name in `pkgs.hunspellDicts`._
29
30## Built-in emoji picker {#sec-ibus-typing-booster-emoji-picker}
31
32The `ibus-engines.typing-booster` package contains a program named `emoji-picker`. To display all emojis correctly, a special font such as `noto-fonts-color-emoji` is needed:
33
34On NixOS, it can be installed using the following expression:
35
36```nix
37{ pkgs, ... }: {
38 fonts.packages = with pkgs; [ noto-fonts-color-emoji ];
39}
40```