= Description =
IM setup in Plasma is confusing because users are supposed to hand-pick the right components in the IM stack
Text input is the foundational means of human-computer interaction: We configure or systems, program them, and express ourselves through them by writing text. It's how our software is made, and it's how it's consumed. Searching for documentation often lands you in outdated tutorials suggesting Fcitx and SCIM (both of which seem unmaintained)It's how users and developers connect with each other.
In the case of Japanese, I found by trial and error that the combination of ibus and mozc works decently, and kimtoy could be used to autostart ibus-daemon at login time, but it also replaces the ibus applet with one that didn't work for me. I also discovered kimpanel, which provides yet another UI for switching between input methods.Text input in KDE software today faces many challenges:
Adding to the confusion, distros offer custom IM configuration tools that often don't integrate well with Plasma. For instance- Input methods for many languages are too hard to set up, Fedora has [[ https://bitbucket.org/tagoh/imsettings | imsettings ]].
= Proposed changes =requiring deep expert knowledge to install and configure relevant add-on software and third-party settings UI.
- It's very hard to switch an English-language system to accepting input in other languages.
- Provide a merged tray icon for keyboard layouts and current input method. Having both is very confusing, and users don't know the difference between layouts and input methods, they just want to switch between "type in English" or "type in Thai"- Support for typing acceleration/assistive features like word completion is very limited.
- Support for easy input of text emoji is lacking.
- Remove any mentions of legacy input methods: Fcitx- Functionality and behavior between our physical and virtual (on-screen) keyboard input methods are inconsistent and far from being at parity.
The situation as described above makes using our software not as easy and enjoyable for many users as it should be.
It also holds KDE software back in many markets that are growth markets for our software, SCIM,particularly in East Asia.
Fixing this requires concerted action in our community. XIMWhen done, etc.
- Work with IBus maintainers to provide a Plasma applet equivalent to ibus-ui-gtk3
- Deprecate kimtoyit will add new fundental capabilities to our software that will help it reach new audiences and thereby grow our community of users and contributors.
Let's do it!
= Proposed changes =
- Forming a strong team to tackle text input and related l10n challenges within the KDE community, leveraging many types of skills: UX, visual/icon assets, or improve the tray UI and make the configuration UI into a kcmcode.
- Update the Keyboard Layouts kcm to allow launching the external IM configuration UI (ibus-setup?)- Working closely with the wider FOSS text input community by inviting relevant outside contributors to a KDE sprint.
- Deep and non-optional integration of input method settings in Plasma's System Settings, building on a 2017 GSoC project (in detail: ibus and fcitx configuration in System Settings and a next-gen panel applet, evolving existing Keyboard settings and panel indicators beyond keyboard layout management).
- Work with distros to ensure all the required packages are either pre-installed or can be installed with one click when needed (via PackageKit / Discover)- Working on implementing more relevant technology standards in KDE software (in detail: supporting the Wayland text-input and input-method protocols in KWin and kwayland).
- Doing pioneering work on aligning our virtual keyboard with our desktop input stack, achieving feature and behavior parity (in detail: an ibus backend for Qt Virtual Keyboard).
- Maybe: turn on IBus by default for all users, with pre-configured methods such as emoji and unicode input- Designing and deploying improved emoji support throughout the system (in detail: a default emoji picker UI and keyboard shortcut, integrated via KF5/QPA into standard text UI controls).
- Working with downstream distributions of KDE software on packaging and installing the required dependencies.
- Maybe: integrate [[ https://github.com/mike-fabian/ibus-typing-booster | IBus Typing Booster ]] (suggests word completions and next words from a dictionary)- Working upstream in to fix relevant bugs, such as text underline style rendering in Qt Quick.
- Educating on and documenting text input challenges and solutions/best practices throughout our community.
= Relevant links =
- [[ http://www.eikehein.com/kde/Input_Methods_in_Plasma_5.pdf | Input Methods in Plasma 5 ]] (Akademy 2017 talk by @hein; - [[ http://www[[ www.eikehein.com/kde/Input_Methods_in_Plasma_5.pdf | Input Methods in Plasma 5 ]] (Akademy 2017 talk by @hein)slides]])
= How we know we succeeded =
= How we know we succeeded =- Users stop asking how to setup input methods on forums and bug trackers. Tutorials become obsolete because the steps to configure a new IM are obvious and discoverable.
- Our software sees increased uptake in new regions of the world that require input method support.
Users stop asking how to setup input methods on forums and bug trackers. Tutorials become obsolete because the steps to configure a new IM are obvious and discoverable- Plasma is the free system of choice for users that require input method support.
= I am interested =
- Bernie Innocenti (@bernieinnocenti)
- Eike Hein (@hein)
- Shinjo Park (@pshinjo
- Nate Graham (@ngraham)
= I am willing to put work into this =
- Eike Hein (@hein)
- YOUR NAME HERE