IBus 1.5.21 is released

IBus 1.5.21 is now released and available in Fedora 31.

# dnf update ibus

This release enhances the IBus compose features. The maximum number of the compose key sequences was 7. Also the output character was limited in 16 bit and only one character could be output so the latest emoji characters or custom long compose characters were not supported.
The following is the demo.

IBus can loads either $HOME/.config/ibus/Compose or $HOME/.config/gtk-3.0/Compose or $HOME/.XCompose file and save the cache files in $HOME/.cache/ibus/compose/

You can customize the compose keys with gnome-tweaks in GNOME desktop or any utilities in other desktops or setxkbmap -option in Xorg desktops.

Currently IBus XKB engines and a few language engines support the IBus compose features. To enable IBus in text applications in GNOME desktop, you need to enable more than one IBus engines using gnome-control-center region, likes ibus-typing-booster, ibus-m17n or else. Otherwise GtkIMContextSimple is used and the compose feature is not available. To enable IBus in non-GNOME desktop, you can use any IBus engines by default or customize with `ibus-setup` command.

Also now ibus-daemon exits with the parent program’s death.

Also IBus provides ibus.its file which can i18n IBus component files in /usr/share/ibus/component/ to detect “longname” and “description” tag.

Posted in IBus | Tagged , , , | Leave a comment

ibus-anthy 1.5.11 and anthy-unicode 1.0.0.20191015 are released

ibus-anthy 1.5.11 is released and available in Fedora 30 or later.
# dnf update ibus-anthy

The default input mode is now Eisu (direct) mode but not Hiragana mode.

Eisu mode now can load a user compose file of either $HOME/.config/ibus/Compose or $HOME/.XCompose although the system compose files has been already loaded.

The emoji dictionary is updated for emoji 12.0 beta.

The ibus-anthy build now uses gettext instead of intltool.

This release now supports to use anthy-unicode which converts the internal EUC-JP data to UTF-8 data and enhanced some functions and the ibus-anthy build detects /usr/lib*/pkgconfig/anthy-unicode.pc for anthy-unicode or /usr/lib*/pkgconfig/anthy.pc for anthy. anthy-unicode is still an unofficial or testing release.

Posted in IBus | Tagged , , , | Leave a comment

IBus 1.5.19 is released

IBus 1.5.19 is now released and it’s available in Fedora 29.

# dnf update ibus

Also it’s available in Fedora Copr for Fedora 28.

This release moved the input focus on IBus emojier to pre-edit areas on each application upon the several feedbacks of the previous implementation. Therefore now your input focus is not changed during typing emoji annotations, Unicode name or Unicode code points with Ctrl-Shift-e. [1]
Ctrl-[f|b|n|p], Ctrl-Shift-[n|p], PageUp, PageDown, Escape shortcut keys have been available since previous IBus versions and you can check ibus-emoji(5) man page.

The pre-edit area supports multi-byte annotations with your current input method engine (IME). To configure the language of emoji annotations, you can run ibus-setup and go to “Emoji” tab. English annotation is always available whether you choose anther language or not. [2]
E.g. In ibus-anthy, Set English mode and type Ctrl-Shift-e, Ctrl-j (to enable Hiragana mode), e, g, a, o, Ctrl-j (to revert to English mode), Space

In case you’d like to show emoji category, you can type Ctrl-Shift-e and just Space without any annotations or run ibus emoji command. Unicode category is also available from the bottom of the emoji category.

A new annotation “history” is implemented to show the emoji characters which were output previously.

Also the feature of typing Unicode code points with Ctrl-Shift-u is separated from the consolidated features of Ctrl-Shift-e, for who does not wish to show the lookup window of emoji candidates but just output the specified Unicode character with the code point. Ctrl-Shift-e still can cover the Unicode code point. E.g. if you type, Ctrl-Shift-e, 100, Space, Space, both the Unicode character (Ā) of code point U+100 and emoji character (💯) of “100” annotation can be popuped. The both shortcut keys can be customized with ibus-setup utility.

IBus emojier’s lookup window is now changed from the focused window to the popup window not to take the input focus. But popup windows under Wayland always take the focus and cannot locate the window position if the popup window does not have a parent window, the UI is different between Xorg desktops and Wayland desktops.

Wayland desktop:

  • Use desktop’s lookup window which shows emoji candidates of one dimension and does not list up the available annotations and code points
  • No menu item on panel icon to show emoji category so you could run ibus emoji command or implement a special indicator in the panel

Xorg desktop:

  • Use IBus emojier lookup window which shows emoji candidates of two dimensions and list up the available annotations and code points
  • Menu item “Emoji choice” is available on right click menu on IBus panel icon to show emoji category

Also pre-edit of compose key typing is now available. IBus uses setxkbmap command to set keymaps internally in non-GNOME desktop so you can show the current compose keys with setxkbmap -query command. E.g. Configure of Right window key with setxkbmap -option compose:rwin. I think your desktops can save the compose key setting. If your desktop does not support it, probably you might like to save the setting in $HOME/.Xkbmap file.

GNOME-Shell sets keymaps and compose keys in GNOME desktop and you can configure compose keys with gnome-tweaks utility.

[1] IBus emojier is not available with liveuser and gdm accounts as I think the memory usage however you could run ibus-extension-gtk3 by manual to enable it, whose install path depends on distributions. Fedora path is /usr/libexec/ibus-extension-gtk3.
[2] If you change the language of emoji annotations with ibus-setup, The Unicode data is cleaned up unexpectedly until you restart ibus. This is fixed in ibus master after IBus 1.5.19.
Posted in IBus | Tagged , , , | 4 Comments

ibus-anthy 1.5.10 is released

ibus-anthy 1.5.10 is released and it’s now avaiable in Fedora 27 or later.
# dnf update ibus-anthy
ibus-anthy 1.5.10

The emoji dictionary is updated for emoji 5.0 and 11.0 beta.

This release replaced IBusConfig with GSettings so you have to run `glib-compile-schemas /usr/share/glib-2.0/schemas` after you run `make install` in the ibus-anthy build directory.

ibus-anthy also implements a new shortcut key Shift+F7 to convert all the preedit sequences to Katakana.

Posted in IBus | Tagged , , , | 1 Comment

IBus 1.5.18 is released (Cont #2)

I wrote “IBus 1.5.18 is released” last time and I’d write the additional information.

Previously I could not take the screencast in GNOME in more than 30 seconds and recently I got the GSettings key ‘max-screencast-length’ of ‘org.gnome.settings-daemon.plugins.media-keys’.

% gsettings get org.gnome.settings-daemon.plugins.media-keys max-screencast-length
uint32 30
% gsettings set org.gnome.settings-daemon.plugins.media-keys max-screencast-length 0

Now I can take the screencast of IBus unicode typing in GNOME Wayland without the 30 seconds limitation.

To enable the global shortcut key Ctrl-Shift-e in GNOME, which can be changed with ibus-setup utility, you have to add one more IBus input sources besides XKB sources with gnome-control-center region utility. E.g. If you have “English (US)” and “French”, you also need to add “English (English – US (Typing Booster))” or “Other (rawcode)” or “Chinese (Intelligent Pinyin)” or else so that you apply IBus engines to “English (US)” and “French” XKB sources.

Fedora ibus-1.5.18-2.fc28 was rebuilt for CLDR emoji 33 alpha and Unicode emoji 11.0 alpha.

# dnf update ibus

Posted in IBus | Tagged , , , | Leave a comment

IBus 1.5.18 is released

IBus 1.5.18 is now released and it’s available in in Fedora 28

# dnf update ibus

Also it’s available in Fedora Copr for Fedora 27.

This release extends IBus Emojier to show Unicode list or type Unicode names besides emoji:

  • When you open “Open Unicode choice” on the Emojier category list, Unicode name list is open
  • Can type either emoji annotations or Unicode name to find a character
  • Can launch IBus Emojier with Ctrl-Shift-e in GNOME and Plasma desktop too
  • PageUp, PageDown, Ctrl-Shift-n, Ctrl-Shift-p keys are available to shift pages on Unicode name list

Since the dialog works likes IME lookup window, Space key is assigned to select the next candidate characters. So to insert a space in Unicode names, Shift-space key is used on Emojier. E.g. “a with grave”.

Currently when the IBus is started, only the emoji data is loaded. When the emojier is launched at the first time in every session, the Unicode data is loaded.
The emoji data is about 10MB and the Unicode data is about 15MB.
If you have plenty memories, you can load the Unicode data at the IBus start time too with gsettings command.


% gsettings list-schemas | grep ibus | grep emoji
org.freedesktop.ibus.panel.emoji
% gsettings list-keys org.freedesktop.ibus.panel.emoji
% gsettings get org.freedesktop.ibus.panel.emoji load-emoji-at-startup
true
% gsettings get org.freedesktop.ibus.panel.emoji load-unicode-at-startup
false
% gsettings set org.freedesktop.ibus.panel.emoji load-unicode-at-startup true
% ibus restart

Unfortunately the screencast always stopped suddenly in GNOME Wayland with Ctrl-Shift-Alt-r so I used XFCE4 desktop for the demo above.

Posted in IBus | Tagged , , , | 6 Comments

Bluetooth mouse in dual boot of Windows 10 and Linux

I prefer the Bluetooth mouse to the wireless USB mouse because I feel USB mouses caused chattering when I used them for more than one year. I don’t see the problem with Bluetooth mouse.

However I had one critical problem to authenticate Bluetooth 4.0 mouse in the dual boot.

After I made a pairing between Bluetooth mouse and MS-Windows 10, rebooted the system, and launched Fedora 27, and made a pairing between the mouse and Fedora, the mouse worked fine.

But after rebooted the system again and launched Windows 10, the Bluetooth mouse didn’t work and I had to make a pairing by reboot.

It seems the Bluetooth authentication saves a unique key in the host and I got how to fix the problem.

0. Make a pairing in Fedora 27

1. Make a pairing in Windows 10

2. Get PsTools to read some secret regedit keys

3. Right click on MS-DOS prompt and launch it with an Administrator privilege

3. PsExec64.exe -s -i regedit

4. Save the “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Keys\${DEVICE}\${ADDRESS}

My data is:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Keys\001bdc0e3454\c4be84437bd0]
"LTK"=hex:57,30,62,7c,8d,e8,3b,a5,5c,d1,82,fa,bb,a0,e5,71
"KeyLength"=dword:00000000
"ERand"=hex(b):80,07,0b,e3,63,85,dd,2b
"EDIV"=dword:0000f548
"IRK"=hex:aa,fd,93,6f,05,c3,e7,08,47,70,43,f3,0a,06,df,1a
"Address"=hex(b):d0,6a,43,84,be,c4,00,00
"AddressType"=dword:00000000
"CSRK"=hex:a2,b3,df,00,25,5c,ff,4d,9c,4c,74,06,e2,cb,07,b7
"OutboundSignCounter"=dword:00000000
"AuthReq"=dword:00000001

5. Reboot the system and Launch Fedora 27

6. Modify /var/lib/bluetooth/${DEVICE}/${ADDRESS}/info with root

  • If $DEVICE or $ADDRESS is different, you have to move the directory. My path is /var/lib/bluetooth/00:1B:DC:0E:34:54/C4:BE:84:43:7B:D0/info and no problem.
  • Copy LTK in Windows to Key in LongTermKey in Linux with capital characters and no comma
  • Reverse ERand in Windows and convert the hexadecimal without comma to the decimal and paste it to Rand in LongTermKey in Linux. In my case, ERand is 80070be36385dd2b and the reverse is 2bdd8563e30b0780 and the decimal Rand is 3160829177541363584
  • Convert the hexadecimal of EDIV in Windows to the decimal and paste it to EDiv in LongTermKey in Linux. It’s no reverse. In my case, EDIV is f548 and the decimal EDiv is 62792
  • Copy IRK in Windows to Key in IdentifyResolvingKey in Linux with capital characters and no comma
  • Copy CSRK in Windows to Key in LocalSignatureKey in Linux with capital characters and no comma

7. Run systemctl restart bluetooth with root

My modified /var/lib/bluetooth/00:1B:DC:0E:34:54/C4:BE:84:43:7B:D0/info file is:
[General]
Name=ELECOM Laser Mouse
Appearance=0x03c2
AddressType=public
SupportedTechnologies=LE;
Trusted=true
Blocked=false
Services=00001800-0000-1000-8....
[IdentityResolvingKey]
Key=AAFD936F05C3E708477043F30A06DF1A
[RemoteSignatureKey]
Key=9437CEEC9FD5FEAA30410C1713C6D6CF
Counter=0
Authenticated=false
[LocalSignatureKey]
Key=A2B3DF00255CFF4D9C4C7406E2CB07B7
Counter=0
Authenticated=false
[LongTermKey]
Key=5730627C8DE83BA55CD182FABBA0E571
Authenticated=0
EncSize=16
EDiv=62792
Rand=3160829177541363584
[SlaveLongTermKey]
Key=DA36C669AB37846E1CA15C8A6055912D
Authenticated=0
EncSize=16
EDiv=22299
Rand=4757000163648466617

Then my Bluetooth mouse in dual boot envirinemnt works fine.

Posted in RedHat | Tagged , | 12 Comments