Playing With Sid

  • Subscribe to our RSS feed.
  • Twitter
  • StumbleUpon
  • Reddit
  • Facebook
  • Digg
Showing posts with label keyboard. Show all posts
Showing posts with label keyboard. Show all posts

Wednesday, 7 July 2010

Orca Caps Lock Issue

Posted on 02:22 by Unknown

Caps Lock key doesn't work is the most common complaint from Orca screen readers users. On Ubuntu 10.04 Lucid Lynx I found that Caps Lock is reset mysteriously. Here is workaround you can use until we find the culprit responsible for this.




Debugging with xmodmap


You find the present keymaps setting with xmodmap command. You can see that the line starting 'lock' is empty. We can set it properly with xmodmap -e "add Lock = Caps_Lock".



$ xmodmap
xmodmap: up to 4 keys per modifier, (keycodes in parentheses):

shift Shift_L (0x32), Shift_R (0x3e)
lock
control Control_L (0x25), Control_R (0x69)
mod1 Alt_L (0x40), Alt_R (0x6c), Meta_L (0xcd)
mod2 Num_Lock (0x4d)
mod3
mod4 Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)
mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb)

# Set the Caps_Lock with xmodmap
$ xmodmap -e "add Lock = Caps_Lock"

# Now caps lock works properly
$ xmodmap
xmodmap: up to 4 keys per modifier, (keycodes in parentheses):

shift Shift_L (0x32), Shift_R (0x3e)
lock Caps_Lock (0x42)
control Control_L (0x25), Control_R (0x69)
mod1 Alt_L (0x40), Alt_R (0x6c), Meta_L (0xcd)
mod2 Num_Lock (0x4d)
mod3
mod4 Super_L (0x85), Super_R (0x86), Super_L (0xce), Hyper_L (0xcf)
mod5 ISO_Level3_Shift (0x5c), Mode_switch (0xcb)



Bash Autostart script for setting Caps lock



Now we know that this can be fixed so I used a bash script to call the modmap script everytime we boot. Somehow '.Xmodmap' settings are not getting loaded so I am using an alternative script '.xmodmaprc' and call it from .bashrc file manually.

# .xmodmaprc
xmodmap -e "add Lock = Caps_Lock"

# .bashrc
if [ -f ~/.xmodmaprc ]; then
. ~/.xmodmaprc
fi





Reboot the computer and enable the modmap file to be loaded at boot time.


Enable Modmap load at book dialog


PS: Kudos to dotslashblog for the xmodmaprc solution

Read More
Posted in accessibility, keyboard, lucid, orca, ubuntu | No comments

Friday, 13 February 2009

Linux Wx Notation Phonetic Keyboard layout for Devangari (Hindi)

Posted on 08:07 by Unknown

Few hours ago WX notation phonetic keyboard layout for Devnagari(Hindi) has been included into Ubuntu. This closes the ubuntu #274024 and freedesktop-bugs #19753 reported last year. This is a great news for the Wx keyboard users, they can now have this keyboard layout by default in gnu/Linux.



While at University of Hyderabad I had copy the symbols file for the keyboard layout every time a new gnu/Linux system was installed. Its wonderful to see a solution developed for use inside our lab has been contributed back to the gnu/Linux community worldwide.

Read More
Posted in keyboard, Linux, ubuntu, X-Window-System, xorg | No comments

Wednesday, 30 January 2008

Multimedia/Internet Keyboards in GNU/Linux

Posted on 10:16 by Unknown

As the resident Gnu/Linux guru, I sometimes help new users making transition from other OS’s.Over the years I’d ask anyone who installed Gnu/Linux about what hardware devices didn’t work for them,most often it is Multimedia/Internet keyboards. In this article, we’ll configure one such keyboard using Hotkeys.



Anthony Wong’s Hotkeys program is written to handle all those special keys provided by the multimedia/Internet keyboards and launch programs associated with them.Though there are numerous ways to configure these keyboards in Gnu/Linux,Hotkeys is easier to configure and its osd (on-screen display) is very simillar to those available on other OS’s.



You can visit Hotkeys site to download the latest version of the program as tarball or as a debian package.



The installation on Debian machine can be done using the apt-get.




$ apt-get install hotkeys




Configuration



Hotkeys starts a daemon process,usually started with xinit process,it uses a global configuration file /etc/hotkeys.conf and user configuration’s can be stored in $HOME/.hotkeysrc.



The hotkeys.conf configuration is well commentted, should not present any problems to new users.Its contains can be summed up as



1) Device Settings




Keyboard Type (kbd=”“)
CD Drive (CDROM=”“)





The supported keyboards can be checked with ‘hotkeys -l’.

2) Key Behaviour




Tag = ‘command’ (Play = “xmms —play-pause”)





The complete list of tags can be found in /usr/share/doc/hotkeys/sample.xml file.The users can also create their own tags.



3) On-Screen Display Properties




Font (osd_font=”“)
Color (osd_color=”“)
Position (osd_position=”“)



#Sample /etc/hotkeys.conf file.
#########################


  1. Global configuration for hotkeys #
    #########################



    1. These are the default values.

    2. A line starting with # is a comment.

    3. Specify the default keyboard (without the .def extension) so you


    4. don’t need to specify -t every time

      Kbd=hp5181

      CDROM=/dev/cdrom # use ‘none’ if don’t have a CDROM Drive
      PrevTrack=xmms —rew
      Play=xmms —play-pause
      Stop=xmms —stop
      Pause=xmms —pause
      NextTrack=xmms —fwd
      Rewind=
      WebBrowser=mozilla
      Email=mozilla -mail
      Calculator=xcalc
      FileManager=gmc
      MyComputer=gmc
      MyDocuments=gmc
      Favorites=gnome-moz-remote —remote=openBookmarks
      Transfer=gtp
      Record=grecord
      Shell=xterm -rv
      ScreenSaver=xscreensaver-command -activate
      NewsReader=mozilla -news
      Communities=mozilla -remote ‘openURL(http://slashdot.org)’

      Search=mozilla -remote ‘openURL(http://google.com)’
      Idea=mozilla -remote ‘openURL(http://sourceforge.net)’
      Shopping=mozilla -remote ‘openURL(http://thinkgeek.com)’
      Go=mozilla -remote ‘openURL(http://linux.com)’
      Print=lpr
      Rotate=


      osd_font=-arphic-ar pl kaitim big5-bold-i-normal—0-250-0-0-c-0-*-*

    5. For the color, you can either use the strings in /etc/X11/rgb.txt,

    6. or use the RGB syntax #RRGGBB, e.g. ##A086FF

      osd_color=LawnGreen

      osd_timeout=3

    7. osd_position is either ‘top’ or ‘bottom’


      osd_position=bottom

      osd_offset=25





Configure Unsupported Multimedia/Internet keyboard



The Hotkeys program is still under development,you may not find your keyboard in the default list.To configure your keyboard, find out the keycodes of the all special keys on your keyboard.



Use the xev program to capture the keycodes and save it to file.Move your cursor to square on the xev window and press the special keys in a sequence.




$ xev 2>&1 >mykeys




Search the file for the keycodes.




$ grep ‘keycode’ mykeys | cut -d “ “ -f7,8 >mykeycodes




Check the file to see the keycodes.




$ cat mykeycodes

keycode 223

keycode 166

keycode 151

keycode 232

keycode 159

keycode 153


keycode 144

keycode 165

keycode 158

keycode 146

keycode 178

keycode 150

keycode 148

keycode 149

keycode 173


keycode 164

keycode 163

keycode 162

keycode 161

keycode 152

keycode 160

keycode 174

keycode 176

keycode 64





Hotkeys uses XML to define keycodes and their functionality.These are stored as ‘.def’ files in /usr/share/hotkeys directory.Let’s use the sample.xml file provided by the hotkeys to build a custom keyboard definition file.




$ cp /usr/share/doc/hotkeys/sample.xml /usr/share/hotkeys/custom.def





The hotkeys support various pre-defined ‘tags’ like Sleep, Search, Shopping andvarious CD/DVD player controls

(See /usr/share/doc/hotkeys/sample.xml). Each ‘tag’ has a behaviour assigned, Sleep uses APM to turn your computer into hibrnatio.Many other special function keys can also be configured.



For example the half-moon key on my keyboard is configured using ‘Sleep’ tag.


<Sleep keycode=“223”/>




And un-defined Shortcut key is set with.



<code>
<userdef keycode="232" command="xterm">Xterm</userdef>
</code>


Here is how the custom.def appears with the above examples.



<?xml version="1.0"?>
<definition>
<config model="My custom keyboard">
<!-- Support Tags functions -->
<!-- half-moon key -->

<Sleep keycode="223"/>
<!-- User define functions -->
<userdef keycode="232" command="xterm">Xterm</userdef>
</config>

<contributor>
<name>your-name</name>
<email>your-email</email>
</contributor>
<definition>


Now test the custom.def by using it as your keyboard type.




$ hotkeys -t custom




A lot more keys can be set using the same custom.def file, a little effort pays off really well.If you have configured a new Multimedia/Internet keyboard using hotkeys, do take time to send it project developers, it would help many other users with same keyboards.



Web Resources



Hotkeys Help Forum



Hotkeys Project

Read More
Posted in cut, debian, grep, hardware, hotkeys, keyboard, keycode, xev | No comments
Older Posts Home
Subscribe to: Posts (Atom)

Popular Posts

  • Vietnamese Language Tools: Developing Keyboards and Spell-checker
    Mentoring Mozilla Vietnamese localization team to develop Vietnamese keyboard and spell checker for Firefox OS . We built and tested Vietna...
  • Multimedia/Internet Keyboards in GNU/Linux
    As the resident Gnu/Linux guru, I sometimes help new users making transition from other OS’s.Over the years I’d ask anyone who installed Gnu...
  • Bollywood Afternoon In Hanoi
    A lot can happen over a cup of Masala Chai. Sunday afternoon's are usually Indian food at Foodshop 45 in Tay Ho, Hanoi. After a good mea...
  • Locate Configuration Example
    Keep things found is not an easy skill to master. The disk drive turns into a deep and dark jungle after the first few weeks on road. Tradit...
  • Mapping The Internet
    I watched the map of internet mentioned in the recent "Download: The True Story of the Internet " on Discovery Channel , it sound...
  • foss.in 2008 :: Sorting In Indic Locales Workout
    Day 3 : Sorting In Indic Locales workout at foss.in 2008 . Indic Workout In Progress Brainstorming Live interaction and collaborative edi...
  • foss.in 2008 :: Day 4
    Day 4 @ foss.in 2008 IndLinux Project BOF Beacon Workout Sharing ideas after Apertium talk Sachin Joshi demo's his Hindi ASR syste...
  • Cellphone Woes of a Weary Traveller
    'Somethings' they say, 'remain a mystery until someone comes along'. Few hours into the journey, I could feel some discomfor...
  • foss.in 2008
    Photos from Day One of foss.in in Bangalore. JN Tata Auditorium, IIsc Bangalore Event Registration Counters Waiting for my turn Securit...
  • National Conference on Free Software 2008 :: Day 1
    The YMCA camp building is just a stone throw away from the Cochin backwaters, I spent some time looking the slow churning waters and the sun...

Categories

  • "Blog Action Day 08 - Poverty"
  • "blog action day"
  • "Compiz Extras "
  • "compiz-fusion"
  • "film making"
  • "FSUG-Bangalore"
  • "GISS"
  • "Graphic Design"
  • "Linux"
  • "martial art"
  • "New Media"
  • "open movie editor"
  • "OpenCV"
  • "web authentication"
  • "web automation"
  • "web testing"
  • 01-18-2012
  • 10.04
  • 10.10
  • 3dprinting
  • 9.04
  • a
  • a11y
  • accerciser
  • accessibility
  • acpi
  • Activism
  • adobe
  • adzap
  • aegis
  • africa
  • AIR
  • ajax
  • alsa
  • AMD64
  • Andhra Pradesh
  • android
  • angling
  • Animals
  • anusaaraka
  • apache
  • apertium
  • api
  • apm
  • apple
  • apport
  • Apps Script
  • apt-get
  • apt-key
  • architecture
  • archmage
  • ardour
  • arduino
  • ARM
  • art
  • asterisk
  • atom
  • audio description
  • backlinks
  • bangalore
  • barcamp
  • barcamphanoi
  • barcampkl
  • barcamppp
  • barcampsaigon
  • barcampvte
  • bash
  • bbc
  • bcy2011
  • beagle
  • beercamp
  • Beryl
  • big buck bunny
  • biofuel
  • bittorrent
  • blackout
  • blender
  • blind
  • blogger
  • blogging
  • book
  • Boot-Process
  • boot2gecko
  • bootparam
  • braille
  • brazil
  • breakpad
  • broadcom
  • bugs
  • bzr
  • Calicut
  • cambodia
  • canon
  • Canopy
  • cartoons
  • cat
  • CC
  • CDAC
  • CDMA
  • celliax
  • censorship
  • CES 2008
  • CES08
  • CHDK
  • chennai
  • children
  • china
  • CHM
  • chmsee
  • Chromium
  • classmate PC
  • cleaning
  • Climate Change
  • cloud computing
  • cms
  • codec
  • Comedy
  • comics
  • command line
  • CommandLine
  • compiz
  • Computational Linguistics
  • console
  • cpan
  • Creative Commons
  • cron
  • css
  • curl
  • cut
  • cyanogenmod
  • DAISY
  • debian
  • debian documentation
  • debian upgrade-system
  • Debian-IN
  • deborphan
  • delhi
  • design
  • dhvani
  • django
  • DJvu
  • dmesg
  • documentation
  • dontzap
  • dots
  • dpatch
  • drupal
  • drush
  • earth hour
  • easy_install
  • ebay
  • eclipse
  • Ecuador
  • education
  • eee pc
  • eeepc
  • elinks
  • Elinks2
  • emacs
  • embedded linux
  • Environment
  • equivs
  • espeak
  • etch
  • events
  • fennec
  • ffmpeg
  • fiction
  • film
  • film making
  • find
  • findutils
  • firefox
  • firefox3
  • firefox4
  • firefoxOS
  • firmware
  • fishing
  • flying
  • foss.in
  • fossasia
  • fossin2008
  • FOSSMeet
  • free culture
  • free software
  • FreeNode
  • fsf
  • fsfs
  • fx4
  • G1
  • gadgets
  • gdm
  • gedit
  • geek humour
  • geocoding
  • Gimp
  • GISS
  • GIST
  • git
  • gnewsense
  • gnochm
  • gnome
  • google
  • google app engine
  • google earth
  • gplv3
  • grep
  • grub
  • GSM
  • gstreamer
  • gta02
  • GUI Testing
  • habba.in
  • hack
  • hackable1
  • hacker
  • handbrake
  • hanoi
  • hanoitweetup
  • hardware
  • hardy heron
  • HCU
  • hindi
  • hipatia
  • history
  • hosting
  • hotkeys
  • how to
  • HowTo
  • html
  • html5
  • HTTP
  • humour
  • hunspell
  • hyderabad
  • i810
  • ICANN41
  • iceweasel
  • identi.ca
  • IEEE
  • iffk
  • iframe
  • IISE
  • ILS
  • ILUG-D
  • IM
  • imacros
  • india
  • india_engg_students
  • Indian Languages
  • indic
  • indlinux
  • initscripts
  • Inkscape
  • intel
  • interaction design
  • internet
  • internet kiosk
  • intersat
  • Intrepid
  • Intrepid Ibex
  • ipod
  • IRC
  • jam
  • jaunty
  • Java
  • Javascript
  • Jet Man
  • josm
  • jquery
  • JSSH
  • Kannada
  • karmic
  • Kchm
  • kerala
  • kernel
  • keyboard
  • keycode
  • kid
  • kiddy video
  • kids
  • kinect
  • kiosk
  • koha
  • l10n
  • laos
  • launchpad
  • layout
  • ldap
  • lenny
  • less
  • lftp
  • libchm
  • library
  • libreoffice
  • lilo
  • Linux
  • lisp
  • local weather
  • locate
  • logging
  • lttoolbox
  • lucid
  • lv
  • machine translation system
  • madras
  • maemo
  • mailing-list
  • mallard
  • MALT
  • malware
  • man
  • manga
  • maps
  • maverick
  • mediawiki
  • meego
  • mencoder
  • merkaartor
  • Mibbit
  • micro-blogging
  • midori
  • mlocate
  • Mobile
  • moblin
  • mod_pagespeed
  • modem
  • more
  • most
  • mother
  • mozcamp
  • mozilla
  • Mozilla Crash Reporter
  • mplayer
  • MT
  • mukt.in
  • music
  • mwc2012
  • myanmar
  • mymozl10n
  • mysql
  • n70
  • nature
  • nedumangad
  • neo freerunner
  • Neo1973
  • nepal
  • netbooks
  • newbies
  • news
  • NGO
  • NITC
  • NLP
  • NLTK
  • Nokia
  • Nonprofits
  • notify-osd
  • novell
  • NUI
  • nvda
  • OCR
  • oddmuse
  • OLPC
  • ooffice
  • open movie
  • openDNS
  • openmoko
  • openNI
  • openOffice
  • openoffice.org
  • OpenStreetMap
  • opensuse
  • openvt
  • orca
  • OS
  • oscar
  • OSM
  • Package-Management
  • packaging
  • pager
  • parenting
  • patents
  • pbx
  • PDF
  • people
  • perl
  • Pets
  • Phatch
  • photography
  • php
  • php-nuke
  • phpnuke
  • pidgin
  • PIL
  • pipa
  • podcast
  • podcasting
  • pokhara
  • POS Tagger
  • postfix
  • potlatch
  • poweroff
  • powershot
  • proc
  • programming
  • pune
  • puppylinux
  • pyCairo
  • python
  • pythonegg
  • QA
  • Qmail
  • radio show
  • Recycling
  • red nose day
  • redhat
  • regex
  • RFC
  • RHEL
  • rms
  • RND
  • robots
  • rockbox
  • RSS
  • RSS/XML
  • rtorrent
  • rubber
  • ruby
  • rural
  • s60
  • sahana
  • samba
  • sampada
  • samsung
  • sbcl
  • science
  • scipy
  • search
  • security
  • SFD2011
  • shell
  • short-stories
  • shutdown
  • silk
  • singapore
  • sitecopy
  • skype
  • slocate
  • social media
  • software patents
  • software-center
  • softwarefreedomday
  • solar
  • solar eclipse
  • sopa
  • space
  • spam
  • SPE editor
  • speakers
  • spins
  • squid
  • stallman
  • stanford parser
  • startups
  • startx
  • stumpwm
  • SUSE
  • system-adminstration
  • sysvinit
  • t-shirt
  • tablet
  • tactile watch
  • tea shops
  • teacher
  • technology
  • tee
  • telugu
  • terminal
  • terminal Tags: command line
  • Tesseract
  • Testing
  • The IT Crowd
  • theatre
  • tibet
  • tracker
  • travel
  • trek
  • trekking
  • tux4kids
  • tuxmath
  • tv
  • tweets
  • twitter
  • ubuntu
  • UMPC
  • unicode
  • UNR
  • uptime
  • urdu
  • User friendly
  • uTouch
  • UX
  • UXA
  • vagrant
  • VCS
  • veli
  • vidarbha
  • video
  • video hamming
  • video hams
  • video-ham
  • vim
  • virutalization
  • visualization
  • voip
  • vsat
  • w3c
  • watches
  • water from dew
  • WATiR
  • weather stations
  • weave
  • web automation
  • web standards
  • web testing
  • web-browser
  • web2py
  • webmaker
  • wget
  • Wiki
  • wikia
  • wikipedia
  • Windows
  • Windows XP
  • wmv
  • Word Press
  • wordpress
  • worm
  • wrapzap
  • writing
  • wvdial
  • X-Window-System
  • X11
  • xchm
  • xev
  • xml
  • xmlstarlet
  • XO Laptop
  • xorg
  • xserver
  • xvidcap
  • yahoo groups
  • yahoo maps
  • yelp
  • Yves Rossy
  • Zii
  • ZTE

Blog Archive

  • ▼  2013 (23)
    • ▼  December (3)
      • Turn your old iPod speakers into wireless speakers
      • Kinect-Powered Interactive New Media Installation
      • Mozilla Taiwan Localization Sprint
    • ►  November (3)
    • ►  September (1)
    • ►  August (1)
    • ►  July (1)
    • ►  June (2)
    • ►  May (3)
    • ►  April (1)
    • ►  March (1)
    • ►  February (5)
    • ►  January (2)
  • ►  2012 (26)
    • ►  December (3)
    • ►  November (1)
    • ►  October (1)
    • ►  July (1)
    • ►  June (3)
    • ►  May (6)
    • ►  April (1)
    • ►  March (8)
    • ►  January (2)
  • ►  2011 (43)
    • ►  December (2)
    • ►  November (7)
    • ►  October (8)
    • ►  September (4)
    • ►  August (5)
    • ►  June (1)
    • ►  February (6)
    • ►  January (10)
  • ►  2010 (73)
    • ►  December (17)
    • ►  November (5)
    • ►  October (10)
    • ►  September (3)
    • ►  August (8)
    • ►  July (9)
    • ►  June (4)
    • ►  March (5)
    • ►  February (7)
    • ►  January (5)
  • ►  2009 (108)
    • ►  December (7)
    • ►  November (10)
    • ►  October (8)
    • ►  September (6)
    • ►  August (8)
    • ►  July (4)
    • ►  June (5)
    • ►  May (6)
    • ►  April (15)
    • ►  March (15)
    • ►  February (9)
    • ►  January (15)
  • ►  2008 (223)
    • ►  December (45)
    • ►  November (28)
    • ►  October (32)
    • ►  September (4)
    • ►  August (11)
    • ►  July (6)
    • ►  June (11)
    • ►  May (3)
    • ►  April (11)
    • ►  March (7)
    • ►  February (3)
    • ►  January (62)
  • ►  2007 (2)
    • ►  December (2)
Powered by Blogger.

About Me

Unknown
View my complete profile