Notices


Reply
Thread Tools
javispedro's Avatar
Posts: 2,355 | Thanked: 5,249 times | Joined on Jan 2009 @ Barcelona
#1
xmimd is bridge between the MeeGo Input Method framework (aka Maliit) and the standard X11 input method system, XIM.

Latest version is 1.2 . Old versions are available. If you are using Easy Debian, please follow the excellent instructions by rcolistete.

It was originally designed to be able to write text using the N9 virtual keyboard to remote X applications being run under SSH X redirection. These applications were neither Gtk+ or Qt.
However, I realized it would also be useful for running non-Qt applications under Harmattan, including those from Easy Debian. If Xephyr is being used, xmimd can be configured to use the Xephyr Window id when talking with Maliit instead of sending "invalid" (from the point of view of Maliit) Window IDs.



Using XIM has a few advantages versus other solutions such as the Maliit GTK input method, apart from the Xephyr redirection feature.
XIM is supported by virtually every application and widget framework in the Unix world, so nothing has to be installed on the remote system or chroot, and it works with applications that do not use Gtk+ or Qt. Additionally, XIM uses X11 as the transport protocol, so no new network ports have to be opened (or bind mounts for D-Bus).

However, there are several cons to using XIM:
- XIM is arcane. It is hard to understand, hard to debug. May the Gods of X11 help you!
- XIM is quite strict regarding locale configuration and does not tolerate some of the stuff distros have been doing as of lately.
- "Native" input methods such as Maliit GTK input context will provide much more integration between the virtual keyboard and applications. XIM is just "good enough".


Here's a brief description of xmimd command line arguments.
Please note that if you are using Easy Debian, most is already set up for you.
  • -v is verbose mode
  • -d is shorthand for setting $DISPLAY. xmimd will register as a X input method in the specified display.
  • -x activates the "Xephyr proxy mode" described above. As mandatory parameter, you need to specify Xephyr's window ID

In the target environment (e.g. inside the chroot or in the remote system), you need to set the following environment variables:
Code:
export GTK_IM_MODULE=xim
export XMODIFIERS="@im=xmim"
A brief tutorial if you are using a custom chroot.

You might post your xmimd problems and experiences on this thread

Last edited by javispedro; 2012-08-17 at 15:07.
 

The Following 14 Users Say Thank You to javispedro For This Useful Post:
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#2
Javispedro, is it possible to MeeGo Maliit virtual keyboard have (semi-)transparency ?
I know some X Terminal virtual keyboards have transparency, like MTermite and FingerTerm (which has incompatibility problems with qchroot, i.e., mounting Easy Debian).
But his transparent vkb are not available outside these X Terminal implementations.
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.
 
javispedro's Avatar
Posts: 2,355 | Thanked: 5,249 times | Joined on Jan 2009 @ Barcelona
#3
Originally Posted by rcolistete View Post
Javispedro, is it possible to MeeGo Maliit virtual keyboard have (semi-)transparency ?
http://depot.javispedro.com/nit/harm..._1.2_armel.deb

Try the above 1.2 release with the "-t" or "--translucent" command line option (when launching xmimd). If it works for you, make some pictures!

Apart from this I also fixed a crash when running in the old PR1.2 ;P

Last edited by javispedro; 2012-08-17 at 15:08.
 

The Following 6 Users Say Thank You to javispedro For This Useful Post:
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#4
Wowww !!! Yeah, it works ! Fantastic, Javispedro !



I've noticed the translucent vkb remains (for some time ?) outside LXDE, when using MeeGo with other softwares. It is also useful in MeeGo but I'll leave it as an option with 3 LXDE icons : LXDE trvkb, LXDE, LXDE novkb (or something similar).

PS: I've deleted by accident this post and retyped it...
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.

Last edited by rcolistete; 2012-08-19 at 18:32.
 

The Following 8 Users Say Thank You to rcolistete For This Useful Post:
Posts: 1,335 | Thanked: 3,931 times | Joined on Jul 2010 @ Brittany, France
#5
Simply awsome. Thanks Javispedro.

And by the way, I second that this translucent keyboard would be very useful in Meego too. I mean in all Meego applications.
 
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#6
Originally Posted by javispedro View Post
I've noticed the translucent vkb remains (for some time ?) outside LXDE, when using MeeGo with other softwares. It is also useful in MeeGo but I'll leave it as an option with 3 LXDE icons : LXDE trvkb, LXDE, LXDE novkb (or something similar)
I don't know why, but now that Easy Debian Harmattan 1.1.0 is released, the translucent vkb doesn't remains outside LXDE (i.e., on MeeGo). Any way, it is better. The icon "LXDE opVKB" uses the opaque vkb, but it remains translucent if "Debian LXDE" was used last time, the workaround is to open some MeeGo application with text entry.
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.

Last edited by rcolistete; 2012-08-19 at 18:34.
 
javispedro's Avatar
Posts: 2,355 | Thanked: 5,249 times | Joined on Jan 2009 @ Barcelona
#7
Originally Posted by rcolistete View Post
noticed the translucent vkb remains (for some time ?) outside LXDE, when using MeeGo with other softwares. It is also useful in MeeGo but I'll leave it as an option with 3 LXDE icons : LXDE trvkb, LXDE, LXDE novkb (or something similar).
Which other software, doesn't the same happen with mtermite also?
 
Posts: 1,269 | Thanked: 3,961 times | Joined on May 2011 @ Brazil
#8
Originally Posted by javispedro View Post
Which other software, doesn't the same happen with mtermite also?
See my post #6, this behaviour doesn't happen anymore. Before I was testing xmimd as user in X Terminal.
__________________
Python, C/C++, Qt and CAS developer. For Maemo/MeeGo/Sailfish :
Integral, Derivative, Limit - calculating mathematical integrals, derivatives and limits. SymPy - Computer Algebra System.
MatPlotLib - 2D & 3D plots in Python. IPython - Python interactive shell.
-- My blog about mobile & scientific computing ---
Sailfish : Sony Xperia X, Gemini, Jolla, Jolla C, Jolla Tablet, Nexus 4. Nokia N9, N900, N810.
 

The Following User Says Thank You to rcolistete For This Useful Post:
www.rzr.online.fr's Avatar
Posts: 1,348 | Thanked: 1,863 times | Joined on Jan 2009 @ fr/35/rennes
#9
I upgraded shared repo to latest one ...
btw :
https://gitorious.org/javispedro-n95...rge_requests/1
__________________
Current obsession:

https://purl.org/rzr/abandonware

Please help to list all maemo existing apps :

https://github.com/abandonware/aband...ment-578143760

https://wiki.maemo.org/Apps#

I am looking for " 4 inch TFT LCD display screen " for Nokia n950 HandSet

http://rzr.online.fr/q/lcd


Also, I need online storage to archive files :

http://db.tt/gn5Qffd6#

https://my.pcloud.com/#page=register...e=g8ikZmcfEJy#
 

The Following User Says Thank You to www.rzr.online.fr For This Useful Post:
Posts: 5 | Thanked: 0 times | Joined on Aug 2012
#10
Hello.

I was trying this, but can't seem to get it working. I fetched the linked .deb package and installed it. In one terminal I started "xmimd -v" locally on the N9. It immediately reports "Server running" and stays there (not daemonized). On another terminal, still locally on the N9, I start a python GTK program. Nothing I do seem to trigger the virtual keyboard.

Being puzzled by this, I also tried setting the GTK_IM_MODULE and XMODIFIERS environment variables, although I understood the text as if it was only needed for chroot and remote environments. Still no reaction.

Could anyone please guide me in the right direction? Am I starting the xmimd in wrong way? Am I starting the python GTK application in wrong way?
 
Reply

Thread Tools

 
Forum Jump


All times are GMT. The time now is 02:11.