More osso-xterm shortcuts

January 24, 2007 on 8:48 pm | In maemo, maemo-hackers, osso-xterm | 10 Comments

Today, on a train ride back home from a meeting in Helsinki, osso-xterm got a shortcut key editor. So if you need a shortcut not in the default settings, upgrade to osso-xterm 0.13.mh18 and launch the editor from the edit menu.

The dialog allows you to reorder the entries and to define a label and the key(s) for the shortcut. The format for the key definitions is: "<modifier1>[<modifier2>...]KeyName"; multiple keys for single shortcuts should be separated with commas. The supported modifiers are <shift>, <lock>, <ctrl> or <control>, <alt> or <mod1>, <mod2>, <mod3>, <mod4> and <mod5>. I doubt vte does anything for most of these though, you're probably only interested in shift, ctrl and alt. The keycodes are those understood by gdk_keyval_from_name. For a list of possible values, see gdk/gdkkeysyms.h. The values accepted are those without the GDK_ -prefix.

The default settings appear in the dialog, so you may use the old definitions as examples.

10 Comments »

RSS feed for comments on this post. TrackBack URI

  1. You're a candidate for sainthood, inz 😉

  2. ...only, including illegal characters in shortcut strings (like ) will make your xterm instance go pop when you try to use it. Found out the hard way. This should be caught on string entry...

    BTW one use of this is really trivial: if you define space, minus, less, greater, n, p, you can navigate inside pine etc. without having the "official" soft keyboard open, giving you a lot of extra screen real estate!

    This suggests an idea: what about having different profiles (with each its own shortcut list) to be used with different remote apps? I remember eterm had this. Ideally, the profile choice would be terminal-tab specific.

  3. inz says:

    Great idea, gotta implement that somehow at least.

  4. You're a lifesaver! The N800 screen pickboard
    doesn't have the pipe symbol. Added shortcut
    in Xterm, and now I can construct piped UNIX
    commands. Thanks so much.

  5. inz says:

    It doesn't? I'm quite sure I've used pipe on N800 and 770 keyboards. Well, anyway, glad I can be of help. 😉

  6. JMills says:

    Whup. I hadn't found this blog post until today. The en_US keyboard does not include underscore and vertical-pipe characters without going into the specials, yet super-non-useful characters such as the Japanese Yen, British Pound, and Euro get into the primary layout. *sigh*

    INZ ... The GDK KeySyms.h reference was my missing link. 🙂

  7. John says:

    How do you define the escape key?

    I was trying to edit a file, and I'm an old vi-hack, but I couldn't get out of insert mode :-}

    [

    doesn't work. It just sends a [

    I have also tried:
    [ and

    (I tried because of what you said above about the GDK_ stuff in the .h file)

    Hm. maybe I'll try the number value you put in there. Nope doesn't work either.

    So. What does it take to send an escape? Almost wonder if you're going to need a hard coded option or something.

  8. John says:

    Grr.. it took all of my attempts to put in the commands and interpreted them as XHTML tags.

    I tried control with [, ctrl with [, esc, escape, Escape, Esc, and 0xff1b and none of those worked.

    How do I define a shortcut that sends an escape?

  9. John says:

    Well, now I feel stupid. I found it in the maemo faq. It recognizes the escape key from the front of the N800. Duh.

    Sorry for bugging you. (though, it'd be nice if you could enter it into short cuts, as well, for mulit-character escape sequences that some programs use)

  10. inz says:

    As seen in the gdkkeysyms.h, Escape is the right one to use. However, Escape is not a modifier, it is a key. You can send multiple characters via one shortcut. For example: "Escape,colon,w,q,Return" seems to do what you'd expect it to do.

Leave a comment

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Powered by WordPress.
Entries and comments feeds. Valid XHTML and CSS. ^Top^