# ibus-engines.typing-booster

This package is an ibus-based completion method to speed up typing.

## Activating the engine

IBus 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.

On 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:

    { pkgs, ... }: {
      i18n.inputMethod = {
        enabled = "ibus";
        ibus.engines = with pkgs.ibus-engines; [ typing-booster ];
      };
    }

## Using custom hunspell dictionaries

The 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:

    ibus-engines.typing-booster.override {
      langs = [ "de-at" "en-gb" ];
    }

Note: each language passed to `langs` must be an attribute name in `pkgs.hunspellDicts`.

## Built-in emoji picker

The `ibus-engines.typing-booster` package contains a program named `emoji-picker`. To display all emojis correctly, a special font such as `noto-fonts-emoji` is needed:

On NixOS it can be installed using the following expression:

    { pkgs, ... }: {
      fonts.fonts = with pkgs; [ noto-fonts-emoji ];
    }