The workaround seems to be
    xmodmap -e 'keycode 94 = comma less'

But why do I need this?


Chris Quenelle wrote:
> I'm having a keyboard problem where my less than sign is broken.
> The problem is very intriguing.
> 
> It only shows up with Xvnc.
> 
> It shows up on the last several builds, and I can't imagine
> that it was there and I didn't notice it, but maybe ...
> 
> I have keycaps on KB that have the usual (less-than/comma)
> and (greater-than/period) characters on them.
> 
> When I examine the output of xmodmap -pk, I see that
> these should map to keycodes 59 and 60:
> 
> 59  0x002c (comma)  0x003c (less)     0x002c (comma)  0x003c (less)
> 60  0x002e (period) 0x003e (greater)  0x002e (period) 0x003e (greater)
> 
> When I use the xev program, I can see that is true.
> Except when I press the comma key with a shift key held down.
> It tells me I've hit keycode 94.  And shift-94 turns out to
> be greater-than.
> 
> So basically my less-than key produces greater-than, but all
> other keys seem to work fine, including the unshifted behavior
> of the same key.
> 
> I see an extra line about XKeysymToKeycode in the xev output,
> but I have no idea what that signifies.
> 
> If anyone has hints for how to debug this next, I'd be grateful.
> 
> What utilities should I use to investigate keyboard drivers and
> keyboard bindings, as they apply to Xvnc?
> 
> Here is the partial output from "xmodmap -pk"
> 
>      59         0x002c (comma)  0x003c (less)     0x002c (comma)  0x003c 
> (less)
>      60         0x002e (period) 0x003e (greater)  0x002e (period) 0x003e 
> (greater)
> 
>      94         0x003c (less)   0x003e (greater)  0x003c (less)   0x003e 
> (greater) 0x007c (bar)    0x00a6 (brokenbar)
> 
> Here is the output from xev:
> 
> greater-than produces:
> 
> KeyRelease event, serial 222, synthetic NO, window 0x1c00001,
>     root 0xfd, subw 0x1c00002, time 4037746580, (34,46), root:(1044,942),
>     state 0x1, keycode 60 (keysym 0x3e, greater), same_screen YES,
>     XLookupString gives 1 bytes: (3e) ">"
>     XFilterEvent returns: False
> 
> less-than produces:
> 
> KeyRelease event, serial 222, synthetic NO, window 0x1c00001,
>     root 0xfd, subw 0x1c00002, time 4037746190, (34,46), root:(1044,942),
>     state 0x1, keycode 94 (keysym 0x3e, greater), same_screen YES,
>     XKeysymToKeycode returns keycode: 60
>     XLookupString gives 1 bytes: (3e) ">"
>     XFilterEvent returns: False
> 
> 
> 
> -----------
> 
> Here is the Xvnc startup log (newlines removed):
> 
> Xvnc TigerVNC 1.0.0
> Copyright (C) 2002-2005 RealVNC Ltd.
> Copyright (C) 2000-2006 Constantin Kaplinsky
> Copyright (C) 2004-2009 Peter Astrand for Cendio AB
> See http://www.tigervnc.org for information on TigerVNC.
> Underlying X server release 10704000,
> 
> 
> Tue Jan 26 13:54:14 2010
>  vncext:      VNC extension running!
>  vncext:      Listening for VNC connections on port 5901
>  vncext:      created VNC server for screen 0
> _IceTransmkdir: Owner of /tmp/.ICE-unix should be set to root
> GNOME_KEYRING_SOCKET=/var/tmp/keyring-tBk17h/socket
> SSH_AUTH_SOCK=/var/tmp/keyring-tBk17h/socket.ssh
> GNOME_KEYRING_PID=1447
> 
> ** (gnome-settings-daemon:1445): WARNING **: Call to screen_info_new is too 
> frequent, skipping...
> ** (gnome-settings-daemon:1445): WARNING **: Call to screen_info_new is too 
> frequent, skipping...
> ** (gnome-settings-daemon:1445): WARNING **: Call to screen_info_new is too 
> frequent, skipping...
> ** (gnome-settings-daemon:1445): WARNING **: Call to screen_info_new is too 
> frequent, skipping...
> Window manager warning: Failed to read saved session file 
> /home/quenelle/.config/metacity/sessions/10dc2bc1f85f6faf32126454285794605600000014230019
> .ms: Failed to open file 
> '/home/quenelle/.config/metacity/sessions/10dc2bc1f85f6faf32126454285794605600000014230019.ms':
>  No such file or directory
> /usr/bin/dispswitch exiting: too few (less than 2) or too many (more than 2) 
> crtcs: 1
> Warning: could not open module file: 
> /usr/lib/iiim/le/cle/input_methods/wubi_im.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/cle/input_methods/newpy_gbk.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/cle/input_methods/newsp_gbk.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/cle/input_methods/codetable_im.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/cle/input_methods/codetable_im.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/cle/input_methods/codetable_im.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/cle/input_methods/NeiMa.so
> 
> ** (gnome-power-manager:1468): WARNING **: DBUS error: Could not get owner of 
> name 'org.gnome.ScreenSaver': no such name
> ** (gnome-power-manager:1468): DEBUG: proxy is NULL, maybe the daemon 
> responsible for org.gnome.ScreenSaver is not running?
> Xlib:  extension "DPMS" missing on display ":1.0".
> Warning: could not open module file: 
> /usr/lib/iiim/le/twle/input_methods/sunpinyin_big5.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/twle/input_methods/cangjie.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/twle/input_methods/boshiamy.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/twle/input_methods/dayi.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/twle/input_methods/zhuyin.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/twle/input_methods/array.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/twle/input_methods/codetable_im.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/twle/input_methods/codetable_im.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/twle/input_methods/codetable_im.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/twle/input_methods/codetable_im.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/twle/input_methods/codetable_im.so
> Warning: could not open module file: 
> /usr/lib/iiim/le/twle/input_methods/NeiMa.so
> started.
> SUNWpython-notify package must be installed
> 
> (nautilus:1465): Gtk-WARNING **: Go to Burn CD: missing action Go to Burn CD
> (nautilus:1465): Gtk-CRITICAL **: file gtkimagemenuitem.c: line 825: 
> assertion `GTK_IS_IMAGE_MENU_ITEM (image_menu_item)' failed
> (nautilus:1465): Gtk-CRITICAL **: file gtkimagemenuitem.c: line 825: 
> assertion `GTK_IS_IMAGE_MENU_ITEM (image_menu_item)' failed
> (nautilus:1465): Gtk-CRITICAL **: file gtkimagemenuitem.c: line 825: 
> assertion `GTK_IS_IMAGE_MENU_ITEM (image_menu_item)' failed
> Initializing nautilus-open-terminal extension
> (nautilus:1465): Gtk-WARNING **: Go to Burn CD: missing action Go to Burn CD
> (nautilus:1465): Gtk-CRITICAL **: file gtkwidget.c: line 6112: assertion 
> `GTK_IS_WIDGET (widget)' failed
> (nautilus:1465): Gtk-CRITICAL **: file gtkuimanager.c: line 1986: assertion 
> `GTK_IS_MENU_SHELL (menushell)' failed
> (nautilus:1465): Gtk-CRITICAL **: file gtkimagemenuitem.c: line 825: 
> assertion `GTK_IS_IMAGE_MENU_ITEM (image_menu_item)' failed
> (nautilus:1465): Gtk-CRITICAL **: file gtkimagemenuitem.c: line 825: 
> assertion `GTK_IS_IMAGE_MENU_ITEM (image_menu_item)' failed
> (nautilus:1465): Gtk-WARNING **: Go to Burn CD: missing action Go to Burn CD
> (nautilus:1465): Gtk-CRITICAL **: file gtkwidget.c: line 6112: assertion 
> `GTK_IS_WIDGET (widget)' failed
> (nautilus:1465): Gtk-CRITICAL **: file gtkuimanager.c: line 1986: assertion 
> `GTK_IS_MENU_SHELL (menushell)' failed
> (nautilus:1465): Gtk-CRITICAL **: file gtkimagemenuitem.c: line 825: 
> assertion `GTK_IS_IMAGE_MENU_ITEM (image_menu_item)' failed
> (nautilus:1465): Gtk-CRITICAL **: file gtkimagemenuitem.c: line 825: 
> assertion `GTK_IS_IMAGE_MENU_ITEM (image_menu_item)' failed
> Allow the connection from unknown source.
> Client shut down the connection owned by im_id(1).
> Client shut down the connection owned by im_id(1).
> (nautilus:1465): Gtk-WARNING **: Go to Burn CD: missing action Go to Burn CD
> (nautilus:1465): Gtk-CRITICAL **: file gtkwidget.c: line 6112: assertion 
> `GTK_IS_WIDGET (widget)' failed
> (nautilus:1465): Gtk-CRITICAL **: file gtkuimanager.c: line 1986: assertion 
> `GTK_IS_MENU_SHELL (menushell)' failed
> (nautilus:1465): Gtk-WARNING **: About JDS: missing action About JDS
> (nautilus:1465): Gtk-WARNING **: Go to Burn CD: missing action Go to Burn CD
> (nautilus:1465): Gtk-CRITICAL **: file gtkwidget.c: line 6112: assertion 
> `GTK_IS_WIDGET (widget)' failed
> (nautilus:1465): Gtk-CRITICAL **: file gtkuimanager.c: line 1986: assertion 
> `GTK_IS_MENU_SHELL (menushell)' failed
> (nautilus:1465): Gtk-WARNING **: About JDS: missing action About JDS
> (nautilus:1465): Gtk-WARNING **: Go to Burn CD: missing action Go to Burn CD
> (nautilus:1465): Gtk-CRITICAL **: file gtkwidget.c: line 6112: assertion 
> `GTK_IS_WIDGET (widget)' failed
> (nautilus:1465): Gtk-CRITICAL **: file gtkuimanager.c: line 1986: assertion 
> `GTK_IS_MENU_SHELL (menushell)' failed
> (nautilus:1465): Gtk-WARNING **: About JDS: missing action About JDS
> (nautilus:1465): Gtk-WARNING **: Go to Burn CD: missing action Go to Burn CD
> (nautilus:1465): Gtk-CRITICAL **: file gtkwidget.c: line 6112: assertion 
> `GTK_IS_WIDGET (widget)' failed
> (nautilus:1465): Gtk-CRITICAL **: file gtkuimanager.c: line 1986: assertion 
> `GTK_IS_MENU_SHELL (menushell)' failed
> (nautilus:1465): Gtk-WARNING **: About JDS: missing action About JDS
> 26/01/2010  1:54:23 PM Autoprobing TCP port in (all) network interface
> 26/01/2010  1:54:23 PM Listening IPv{4,6}://*:5900
> 26/01/2010  1:54:23 PM Autoprobing selected port 5900
> 26/01/2010  1:54:23 PM Advertising security type: 'TLS' (18)
> 26/01/2010  1:54:23 PM Advertising authentication type: 'VNC Authentication' 
> (2)
> 26/01/2010  1:54:23 PM Advertising security type: 'VNC Authentication' (2)
> _______________________________________________
> desktop-discuss mailing list
> desktop-discuss at opensolaris.org

Reply via email to