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{
14 i18n.inputMethod = {
15 enable = true;
16 type = "ibus";
17 ibus.engines = with pkgs.ibus-engines; [ typing-booster ];
18 };
19}
20```
21
22## Using custom hunspell dictionaries {#sec-ibus-typing-booster-customize-hunspell}
23
24The 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:
25
26```nix
27ibus-engines.typing-booster.override {
28 langs = [
29 "de-at"
30 "en-gb"
31 ];
32}
33```
34
35_Note: each language passed to `langs` must be an attribute name in `pkgs.hunspellDicts`._
36
37## Built-in emoji picker {#sec-ibus-typing-booster-emoji-picker}
38
39The `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:
40
41On NixOS, it can be installed using the following expression:
42
43```nix
44{ pkgs, ... }:
45{
46 fonts.packages = with pkgs; [ noto-fonts-color-emoji ];
47}
48```