SUMMARY For some locales emoji picker doesn't show emojis. There are no ibus/dicts/emoji-*.dict files for these locales. STEPS TO REPRODUCE 1. Run in terminal 'LANG=IT-CH ibus-ui-emojier-plasma' OBSERVED RESULT Emoji picker doesn't show emojis. EXPECTED RESULT Emoji picker shows emojis. SOFTWARE/OS VERSIONS Linux/KDE Plasma: Neon 5.18 KDE Plasma Version: 5.18.0 KDE Frameworks Version: 5.67.0 Qt Version: 5.13.2
Do you have the noto-emoji font installed?
Yes, I have installed fonts-noto-color-emoji package.
https://github.com/KDE/plasma-desktop/blob/d43007c4317a9f1c610875d65409f8ad3ea2823d/applets/kimpanel/backend/ibus/emojier/emojier.cpp#L134 If locale is IT-CH, the picker tries to find file ibus/dicts/emoji-IT_CH.dict that doesn't exists and therefore EmojiModel is empty.
Thanks.
A possible duplicate of bug 417517
*** Bug 417517 has been marked as a duplicate of this bug. ***
Git commit 358e98a75a946abe76ffdfeddd0156483a66d4b3 by Aleix Pol. Committed on 20/02/2020 at 01:07. Pushed by apol into branch 'Plasma/5.18'. emojier: improve the fallback mechanism to detect languages - try to find the exact locale. - Include the more generic one. - If none were found, use English. M +18 -5 applets/kimpanel/backend/ibus/emojier/emojier.cpp https://commits.kde.org/plasma-desktop/358e98a75a946abe76ffdfeddd0156483a66d4b3
Just looked emojier.cpp. I know that this is not the place to ask about the source code, but why are you using C-style casts instead of static_cast?
I have the same problem on Ubuntu 22.04, but it seems that just the dictionary is missing: ``` $ ibus-ui-emojier-plasma could not find ibus emoji dictionaries. "ibus/dicts/emoji-en.dict" qml: There's no page to replace qrc:/ui/CategoryPage.qml:80:5: QML Shortcut: Shortcut: Only binding to one of multiple key bindings associated with 9. Use 'sequences: [ <key> ]' to bind to all of them. file:///usr/lib/x86_64-linux-gnu/qt5/qml/org/kde/kirigami.2/PlaceholderMessage.qml:235:5: QML Heading: Binding loop detected for property "verticalAlignment" qml: Calling replace on empty PageRow CategoryPage_QMLTYPE_156(0x564884e1c110) $ LANG=en_US.UTF-8 ibus-ui-emojier-plasma could not find ibus emoji dictionaries. "ibus/dicts/emoji-en.dict" qml: There's no page to replace qrc:/ui/CategoryPage.qml:80:5: QML Shortcut: Shortcut: Only binding to one of multiple key bindings associated with 9. Use 'sequences: [ <key> ]' to bind to all of them. file:///usr/lib/x86_64-linux-gnu/qt5/qml/org/kde/kirigami.2/PlaceholderMessage.qml:235:5: QML Heading: Binding loop detected for property "verticalAlignment" qml: Calling replace on empty PageRow CategoryPage_QMLTYPE_156(0x558a843f3140) $ LANG=en_US ibus-ui-emojier-plasma could not find ibus emoji dictionaries. "ibus/dicts/emoji-en.dict" qml: There's no page to replace qrc:/ui/CategoryPage.qml:80:5: QML Shortcut: Shortcut: Only binding to one of multiple key bindings associated with 9. Use 'sequences: [ <key> ]' to bind to all of them. file:///usr/lib/x86_64-linux-gnu/qt5/qml/org/kde/kirigami.2/PlaceholderMessage.qml:235:5: QML Heading: Binding loop detected for property "verticalAlignment" qml: Calling replace on empty PageRow CategoryPage_QMLTYPE_156(0x55fe9a851d60) $ ```
Installing the `ibus-data` package resolves my problem: ``` sudo apt install ibus-data ```
make sure you have a noto-emojie.ttf font in your /usr/share/fonts/<can be any name here but I use "noto">/