https://fedoraproject.org/wiki/Changes/IBus_1.5.25 == Summary == IBus 1.5.25 will use `transfiletriggerin` script to generate the cache file instead of `posttrans` script in each engine package, support the include directive in the user compose file, IBus compose feature will follow the GTK4 compose pre-edit style, the emoji shortcut key will be changed to `Ctrl-period`, IBus GTK4 module will proceed the key events synchronistically to follow GTK4 specification. == Owner == * Name: [[User:Fujiwara|Takao Fujiwara]] * Email: fujiwara [at] redhat [dot] com == Detailed Description == * Each IBus language engine has run `posttrans` script to run `ibus write-cache` to cache their component files in /usr/share/ibus/component whenever the package is installed but `ibus write-cache` will moved to `transfiletriggerin` script in IBus core package and the script will be executed only one time per the Fedora installation. * IBus compose file will support the include directive in the user compose file ($XDG_CONFIG_HOME/ibus/Compose, $XDG_CONFIG_HOME/gtk-3.0/Compose or $HOME/.XCompose) * IBus compose feature will follow the [https://blog.gtk.org/2021/03/24/input-revisited/ GTK4 compose pre-edit style]. * IBus emoji shortcut key is `Ctrl-Shift-e` and it will be changed to `Ctrl-period` to follow the latest GTK while it's customizable with `ibus-setup` utility. * IBus GTK3 module proceeds the key events asynchronistically because some langauge engines spend much time to compose key events and D-Bus process could causes a timeout but now GTK4 does not allow the async events and IBus GTK4 module will proceed the key events synchronistically. == Feedback == * Only one `transfiletriggerin` script is much simpler than many `posttrans` scripts. == Benefit to Fedora == Users can use the include directive in their compose files. IBus GTK4 module can send the application specific keys of Backspace, Enter to the target application to follow GTK4 specification, == Scope == * Proposal owners: Update SPEC file to add `transfiletriggerin` script. Update libibus.so to enhance compose feature. Update org.freedesktop.ibus.gschema.xml for emoji shortcut key. Update libim-ibus.so to fix IBus sync process. * Other developers: Update SPEC files to delete `posttrans` script. * Release engineering: [https://pagure.io/releng/issue/10184 #10184] * Policies and guidelines: N/A * Trademark approval: N/A * Alignment with Objectives: == Upgrade/compatibility impact == We should avoid regressions with `transfiletriggerin` script in the Fedora installation. == How To Test == # Install ibus and the language engine packages # `ibus read-cache --system` shows the installed engines. # `rpm -q --scripts` does not show `ibus write-cache` in engine packages # `rpm -q --filetriggers` shows `ibus write-cache` in ibus package # Write the line of 'include "%H/foo.compose"' in your $HOME/.XCompose and some compose sequences in $HOME/foo.compose # Run `gnome-control-center keyboard` and configure some IBus language engines besides XKB engines, likes ibus-hangul, ibus-typing-booster # Enable an XKB engine with Super-space or clicking of the keyboard idicator in GNOME # Launch gedit # Confirm your compose sequences in $HOME/foo.compose is reflected # Confirm compose preedit is short # Run `gnome-control-center keyboard` and configure some IBus language engines besides XKB engines, likes ibus-hangul, ibus-typing-booster # Enable an XKB engine with Super-space or clicking of the keyboard idicator in GNOME # Launch gedit # Type Ctrl-period # Confirm emoji pre-edit and lookup table is available # Install gtk4-devel # Run `env GTK_IM_MODULE=ibus gtk4-demo` # Backspace, Enter keys works == User Experience == The emoji shortcut key is changed if users do not customize it but they can customize it with ibus-setup utility. == Dependencies == ibus-anthy, ibus-chewing, ibus-hangul, ibus-input-pad, ibus-kkc, ibus-libpinyin, ibus-rawcode, ibus-sayura, ibus-skk, ibus-table, ibus-typing-booster, mozc (`posttrans` script has already been deleted in each engine package in Fedora rawhide.) == Contingency Plan == * Contingency mechanism: Revert the change to IBus. * Contingency deadline: Beta release * Blocks release? No == Documentation == TBD -- Ben Cotton He / Him / His Fedora Program Manager Red Hat TZ=America/Indiana/Indianapolis _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure