mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-24 21:55:29 +00:00
1054 lines
42 KiB
Plaintext
1054 lines
42 KiB
Plaintext
|
NAME
|
||
|
xvkbd - virtual keyboard for X window system
|
||
|
|
||
|
DESCRIPTION
|
||
|
xvkbd is a virtual (graphical) keyboard program for X Window System
|
||
|
which provides facility to enter characters onto other clients (soft-
|
||
|
wares) by clicking on a keyboard displayed on the screen. This may be
|
||
|
used for systems without a hardware keyboard such as kiosk terminals or
|
||
|
handheld devices. This program also has facility to send characters
|
||
|
specified as the command line option to another client.
|
||
|
|
||
|
The standard keyboard layout is based on the traditional US layout, but
|
||
|
some other keyboard layout (see "Screen Shot") are also supported. The
|
||
|
default window size may be too large for systems with small screen, but
|
||
|
it can be configured to use smaller space (220x90 pixels, for example).
|
||
|
For details, see also "Screen Shot" and "How to Customize xvkbd" below,
|
||
|
and resouce files in the distribution.
|
||
|
|
||
|
xvkbd version 2.1 and later support word completion, which may make it
|
||
|
easier to enter long words with xvkbd.
|
||
|
|
||
|
IMPORTANT NOTE: When invoking xvkbd from display managers such as XDM,
|
||
|
GDM, etc., always use xvkbd with -secure option or you will have seri-
|
||
|
ous security risk.
|
||
|
|
||
|
Environment
|
||
|
xvkbd will work on X11R5 or X11R6. It is tested on redhat Linux and
|
||
|
Solaris, and it will work also on most UNIX-like systems.
|
||
|
|
||
|
This program uses Xaw (use of Xaw3d is recommended) and no special
|
||
|
library is required.
|
||
|
|
||
|
Operation
|
||
|
Input Keys
|
||
|
When xvkbd is started, the image of a keyboard will be displayed on the
|
||
|
screen. Clicking any key on the xvkbd window will send the character
|
||
|
to the focused window as if the key had been actually typed with the
|
||
|
hardware keyboard.
|
||
|
|
||
|
If you want to input upper-case alphabets or other characters on the
|
||
|
upper position on the keyboard, you should click the key after select-
|
||
|
ing Shift by clicking it, or click the key with mouse button 3 (maybe
|
||
|
right button) or mouse button 4. In the similar manner, if you want to
|
||
|
input Controled characters, you should click the key after clicking
|
||
|
Control, or click the key with mouse button 2 (maybe middle button).
|
||
|
Alt and Meta can be used in the similar manner with Control, but there
|
||
|
are no shortcuts with mouse buttons.
|
||
|
|
||
|
``Quick Modifiers''
|
||
|
xvkbd 2.5 and later support another way to input characters with modi-
|
||
|
fiers such as Shift, Control, AltGr, etc., which may be useful espe-
|
||
|
cially for machines with touch panels such as PDAs - we would call it
|
||
|
"Quick Modifiers".
|
||
|
|
||
|
Quick Modifiers can be enabled/disabled by the ``Enable "Quick Modi-
|
||
|
fiers?'' entry on the property panel. If Quick Modifiers is enabled,
|
||
|
it will be activated by pressing a key on the xvkbd window, move the
|
||
|
pointer outside of the key, and then release the mouse button or equiv-
|
||
|
alent.
|
||
|
|
||
|
The direction of the pointer motion will select the modifier:
|
||
|
|
||
|
up - Shift
|
||
|
right - AltGr
|
||
|
right-up - Shift AltGr
|
||
|
left - Control
|
||
|
left-up - Shift Control
|
||
|
down - Meta
|
||
|
left-down - Alt
|
||
|
|
||
|
Setting Input Focus
|
||
|
If you are using a window manager and clients where you can set input
|
||
|
focus by clicking mouse button on the window (and you don't have to
|
||
|
keep pointer in the window after that), you can simply set input focus
|
||
|
in the normal way and then click keys on the xvkbd window - the charac-
|
||
|
ter will be sent to the selected position.
|
||
|
|
||
|
If you are using a window manager or clients where you must keep the
|
||
|
pointer in the input field to input from the keyboard, or if the input
|
||
|
focus is switched to the xvkbd window when you clicked on the key on
|
||
|
the xvkbd window, you must make xvkbd to set input focus explicitly by
|
||
|
clicking the Focus button on the xvkbd window and then click on the
|
||
|
input field. This input focus can be cleared by clicking Focus button
|
||
|
with mouse button 3, or simply clicking Focus button twice.
|
||
|
|
||
|
Word Completion
|
||
|
Choosing ``Word Completion...'' in the main menu will popup the Word
|
||
|
Completion panel.
|
||
|
|
||
|
When you entered characters by clicked keys on the xvkbd window as
|
||
|
usual while the Word Completion panel open, words started with the
|
||
|
characters will be listed in the panel, and you can enter the remaining
|
||
|
characters of the selected word by clicking one of the words in the
|
||
|
list.
|
||
|
|
||
|
The dictionary (list of words) file is /usr/share/dict/words by
|
||
|
default, but it can be changed by -dict option or xvkbd.dictFile
|
||
|
resouce, or on the Property panel.
|
||
|
|
||
|
Main Menu
|
||
|
Pressing the ``xvkbd'' logo on the main keyboard (placed near left-bot-
|
||
|
tom corner in the default configuration) will popup the main menu.
|
||
|
|
||
|
The menu contains following items:
|
||
|
|
||
|
About...
|
||
|
Show short description of this program.
|
||
|
|
||
|
Manual...
|
||
|
Launch manual page reader.
|
||
|
|
||
|
Keypad...
|
||
|
Open the Keypad panel.
|
||
|
|
||
|
Sun Function Keys...
|
||
|
Open the Sun Function Keys panel.
|
||
|
|
||
|
Dead Keys...
|
||
|
Open the Dead Keys panel which can be used to enter Latin charac-
|
||
|
ters with accent symbol in double stroke.
|
||
|
|
||
|
Word Completion...
|
||
|
Open the Word Completion panel.
|
||
|
|
||
|
Change Keyboard Layout...
|
||
|
Open a popup window to change the keyboard layout. In the default
|
||
|
configuration, Default (US), Belgian, Danish, French, German, Ice-
|
||
|
landic, Italian, Japanese (JIS-X-6002), Japanese (JIS-X-6004),
|
||
|
Korean, Norwegian, Portuguese, Russian, Spanish, Swedish,
|
||
|
Swiss/German, United Kingdom and Latin-1 are available.
|
||
|
|
||
|
Edit Function Keys...
|
||
|
Open a popup window to edit string assigned to function keys. See
|
||
|
also "Assigning Text to Function Keys".
|
||
|
|
||
|
Show Keypad?
|
||
|
Toggle show/hide of the keypad on the main window.
|
||
|
|
||
|
Show Function Keys?
|
||
|
Toggle show/hide of the function keys on the main window.
|
||
|
|
||
|
Property...
|
||
|
Popup the Property panel.
|
||
|
|
||
|
Connect to Remote Display...
|
||
|
Open a panel to specify the name of a remote display to be con-
|
||
|
nected, so that following key events will be sent to windows on the
|
||
|
remote display.
|
||
|
|
||
|
Revert to Local Display
|
||
|
Disconnect from the remote display so that following key events
|
||
|
will be sent to windows on the local display.
|
||
|
|
||
|
Property Panel
|
||
|
Enable "Quick Modifiers"?
|
||
|
Toggle enable/disable of the Quick Modifiers feature.
|
||
|
|
||
|
Lock Shift?
|
||
|
Toggle locking/momentary of Shift keys.
|
||
|
|
||
|
Lock AltGr?
|
||
|
Toggle locking/momentary of AltGr key.
|
||
|
|
||
|
Lock Control, Alt and Meta?
|
||
|
Toggle locking/momentary of Control, Alt and Meta keys.
|
||
|
|
||
|
Always on Top?
|
||
|
If this entry is set ON, xvkbd attempts to keep the xvkbd window
|
||
|
always on the top of the display (i.e. not to be hidden by other
|
||
|
windows). This feature is experimental, and care should be taken
|
||
|
as this feature can cause problem in some situations.
|
||
|
|
||
|
Behave as Toolbar Window?
|
||
|
xvkbd attempts to be a toolbar window when it is used with some
|
||
|
kind of window managers such as Matchbox window manager.
|
||
|
|
||
|
Use XTEST Extension?
|
||
|
XTEST extension will be used if this entry is checked. If this
|
||
|
entry is set inactive, the X server does not support XTEST exten-
|
||
|
sion.
|
||
|
|
||
|
Jump Pointer?
|
||
|
If this entry is set ON, xvkbd will temporary jump the pointer to
|
||
|
the focused window, if XTEST extension is to be used to simulate
|
||
|
keyboard events.
|
||
|
|
||
|
Key-Click Sound
|
||
|
Set on/off and duration of key-click sound.
|
||
|
|
||
|
Automatic Click
|
||
|
Set on/off of the automatic click feature and the delay before
|
||
|
automatic click is activated. If this feature is set, xvkbd will
|
||
|
work as if left mouse button is clicked when mouse pointer is moved
|
||
|
on a button and stays long enough. You may want to set Jump
|
||
|
Pointer? to OFF to avoid auto-repeating.
|
||
|
|
||
|
Completion Dictionary
|
||
|
Set the filename to be used for word completion. This setting take
|
||
|
precedence over the `xvkbd.dictFile' resource and the -dict option.
|
||
|
|
||
|
Options
|
||
|
xvkbd accept following command line options, in addition to general
|
||
|
options such as `-display'.
|
||
|
|
||
|
-version
|
||
|
Display version information and exit.
|
||
|
|
||
|
-xsendevent
|
||
|
Make xvkbd to use XSendEvent() to simulate keyboard events, as it
|
||
|
was in xvkbd version 1.0. xvkbd version 1.1 and later will try to
|
||
|
use XTEST extension instead in the default configuration.
|
||
|
If XTEST extension is not supported by the X server, xvkbd will
|
||
|
automatically switch to this mode.
|
||
|
Resource `xvkbd.xtest: false' has the same function.
|
||
|
|
||
|
-no-sync
|
||
|
Normally, xvkbd attempts to synchronize with the destinating client
|
||
|
step by step. This can cause problem when the client (or the X
|
||
|
server) responded too slow. In such situation, maybe this -no-sync
|
||
|
can solve the problem.
|
||
|
Resource `xvkbd.noSync: true' has the same function.
|
||
|
|
||
|
-no-jump-pointer
|
||
|
Make xvkbd not to jump the pointer when sending events. In the
|
||
|
default, xvkbd will temporary jump the pointer to the focused win-
|
||
|
dow, if input focus is set explicitly via Focus button, and XTEST
|
||
|
extension is to be used to simulate keyboard events.
|
||
|
Resource `xvkbd.jumpPointer: false' has the same function.
|
||
|
|
||
|
-no-back-pointer
|
||
|
Make xvkbd not to jump the pointer back to the original position
|
||
|
after events has been sent. Maybe this can be useful when using
|
||
|
xvkbd to move the pointer position.
|
||
|
Resource `xvkbd.jumpPointerBack: false' has the same function.
|
||
|
|
||
|
-modal
|
||
|
Make labels on keys in the xvkbd window to be set independently for
|
||
|
each of four shift states, not shifted, Shift, AltGr and Shift-
|
||
|
AltGr. This is useful when you want to make the xvkbd window very
|
||
|
small.
|
||
|
See also "Customizing Keyboard Layout" and resouce files in the
|
||
|
distribution.
|
||
|
Resource `xvkbd.modalKeytop: true' has the same function.
|
||
|
|
||
|
-geometry [widthxheight][+xoff+yoff]
|
||
|
Set window geometry (size and position).
|
||
|
You can use form like -geometry 400x130 to specify the window size,
|
||
|
-geometry +100+100 to specify the window position from left/top
|
||
|
edge of the screen, and -geometry 400x130+100+100 to specify both
|
||
|
the size and the position. You can specify position from
|
||
|
right/bottom edge of the screen by using - instead of +, but please
|
||
|
note that you must take account of size of the window border. (If
|
||
|
you specify `-geometry -0-0', the window will not fit in the
|
||
|
screen.)
|
||
|
This can be set by xvkbd.windowGeometry resource (note that it is
|
||
|
not xvkbd.geometry), too.
|
||
|
|
||
|
-no-repeat
|
||
|
Do not auto-repeat even if key is depressed long time.
|
||
|
If auto-repeat is enabled (this is the default), time before start
|
||
|
auto-repeat can be set as `xvkbd*Repeater.initialDelay: 600', and
|
||
|
period of repeat can be set as `xvkbd*Repeater.minimumDelay: 100'
|
||
|
(unit of there parameters are milli-seconds).
|
||
|
Resource `xvkbd.autoRepeat: false' has the same function.
|
||
|
|
||
|
-no-functionkey
|
||
|
Do not display function keys.
|
||
|
Resource `xvkbd.functionkey: false' has the same function.
|
||
|
|
||
|
-no-keypad
|
||
|
Do not display keypad.
|
||
|
Resource `xvkbd.keypad: false' has the same function.
|
||
|
|
||
|
-compact
|
||
|
Do not display function keys nor keypad.
|
||
|
Resource `xvkbd.compact: true' has the same function.
|
||
|
|
||
|
-keypad
|
||
|
Display only keypad. This option will be ignored if `-no-keypad'
|
||
|
or `-compact' is specified.
|
||
|
Resource `xvkbd.keypadOnly: true' has the same function.
|
||
|
|
||
|
-text string
|
||
|
Send the string to the focused window (see also `-window' option).
|
||
|
If this option is specified, xvkbd will not open its window and
|
||
|
terminate soon after sending the string.
|
||
|
The string can contain:
|
||
|
|
||
|
- \r - Return
|
||
|
|
||
|
- \t - Tab
|
||
|
|
||
|
- \b - Backspace
|
||
|
|
||
|
- \e - Escape
|
||
|
|
||
|
- \d - Delete
|
||
|
|
||
|
- \S - Shift (modify the next character; please note that modify
|
||
|
with ``\S'' will be ignored in many cases. For example,
|
||
|
``a\Cb\ScD\CE'' will be interpreted as a, Control-b, c, Shift-D,
|
||
|
and Control-Shift-E.)
|
||
|
|
||
|
- \C - Control (modify the next character)
|
||
|
|
||
|
- \A - Alt (modify the next character)
|
||
|
|
||
|
- \M - Meta (modify the next character)
|
||
|
|
||
|
- \[keysym] - the keysym keysym (e.g., \[Left])
|
||
|
|
||
|
- \Ddigit - delay digit * 100 ms
|
||
|
|
||
|
- \xvalue - move mouse pointer (use "+" or "-" for relative motion)
|
||
|
|
||
|
- \yvalue - move mouse pointer (use "+" or "-" for relative motion)
|
||
|
|
||
|
- \mdigit - simulate click of the specified mouse button
|
||
|
|
||
|
-file filename
|
||
|
Send the contents of the specified file to the focused window (see
|
||
|
also `-window' option). If ``-'' was specified as the filename,
|
||
|
string to be sent will be read from the standard input (stdin).
|
||
|
If this option is specified, xvkbd will not open its window and
|
||
|
terminate soon after sending the string.
|
||
|
|
||
|
-delay value
|
||
|
Put value ms of delay for evey characters when sending characters
|
||
|
with -text or -file. Maybe this is useful when problem arises when
|
||
|
characters are entered too fast.
|
||
|
|
||
|
-window window
|
||
|
Specify the ID (hexadecimal value leaded with `0x', or decimal
|
||
|
value), the name (instance name or class name) of the window, or
|
||
|
the title of the window to set input focus. It is possible to use
|
||
|
wildcard characters `*' and `?' to match the window name or the
|
||
|
window title.
|
||
|
If this is not specified, xvkbd will use input focus under control
|
||
|
of the window manager, unless focus is specified explicitly via
|
||
|
Focus button. Even if this option is specified, you can set input
|
||
|
focus to other windows using Focus button, or clear the input
|
||
|
focus.
|
||
|
If there are two or more windows which have the name specified with
|
||
|
this option, the window which was found first will be selected.
|
||
|
|
||
|
-widget widget-name
|
||
|
Specify the name of the widget to set the input focus. To use this
|
||
|
feature, the client must support Editres protocol. In general,
|
||
|
this option will be used with `-window' option.
|
||
|
If you want to set input focus to the widget foo.bar.zot, you can
|
||
|
write zot, bar.zot or foo.bar.zot as widget-name. To avoid confu-
|
||
|
sion, the widget-name should match with a single widget of the
|
||
|
client.
|
||
|
For example,
|
||
|
|
||
|
xvkbd -window xarchie -widget searchText -text "\Ca\Ckabc\r"
|
||
|
|
||
|
will enter the string ``abc'' to the ``Search Term'' field of a
|
||
|
xarchie window.
|
||
|
|
||
|
-true-keypad
|
||
|
If this option is specified, xvkbd will attempt to use keysyms such
|
||
|
as XK_KP_1 instead of XK_1.
|
||
|
Resource `xvkbd.keypadKeysym: true' has the same function.
|
||
|
|
||
|
-dict filename
|
||
|
Specify the default dictionary (list of words) file to be used for
|
||
|
word completion. The `Completion Dictionary' filename set on the
|
||
|
Property panel takes precedence over this.
|
||
|
Resource `xvkbd.dictFile: filename' has the same function.
|
||
|
See also ``Making your own completion dictionary''.
|
||
|
|
||
|
-minimizable
|
||
|
Make xvkbd window can be minimized (iconified) even if no window
|
||
|
manager is in use. When this feature is enabled, small triangle
|
||
|
will be displayed at left ot the xvkbd main menu, and xvkbd window
|
||
|
will be minimized when the triangle is clicked.
|
||
|
Resource `xvkbd.minimizable: true' has the same function.
|
||
|
|
||
|
-secure
|
||
|
Disable invocation of external commands, including user assigned
|
||
|
command and the online manual reader. Connection to another dis-
|
||
|
plays would also be disabled. This option may be useful when xvkbd
|
||
|
is to be run with some kind of privileges.
|
||
|
Resource `xvkbd.secure: true' has the same function.
|
||
|
|
||
|
-nonexitable
|
||
|
Disable termination of the xvkbd program. This option may be use-
|
||
|
ful when xvkbd is to be run automatically for systems with no key-
|
||
|
boards and users should not terminate the xvkbd.
|
||
|
Resource `xvkbd.nonexitable: true' has the same function.
|
||
|
|
||
|
-xdm
|
||
|
Same as -secure -nonexitable. When xvkbd is to be run for login
|
||
|
screen, it would be suggested to use this option.
|
||
|
|
||
|
-modifiers modifiers
|
||
|
Normally, xvkbd will activate modifiers (control, shift, etc.)
|
||
|
only while sending characters. If modifiers were specified with
|
||
|
this option, the specified modifiers will be activated while corre-
|
||
|
sponding key on the xvkbd window is in active. For example, you
|
||
|
can specify -modifiers shift,control,meta,alt to apply this for
|
||
|
those four modifiers. Maybe this can be useful when attempting to
|
||
|
decorate the mouse operations with the modifiers. Please note that
|
||
|
the modifiers will also be applied when attempting to click on the
|
||
|
xvkbd window and which can prevent the correct operation in some
|
||
|
situations.
|
||
|
Resource `xvkbd.positiveModifiers: modifiers...' has the same func-
|
||
|
tion.
|
||
|
|
||
|
-debug
|
||
|
Make xvkbd to output debug information. It also disable keyboard
|
||
|
width adjustment, to help adjusting key size when making keyboard
|
||
|
layout file.
|
||
|
<!--
|
||
|
|
||
|
-version
|
||
|
Output version information and exit. -->
|
||
|
|
||
|
Screen Shot
|
||
|
Default (US)
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-normal.gif
|
||
|
|
||
|
Belgian
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-belgian.gif
|
||
|
|
||
|
Danish
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-danish.gif
|
||
|
|
||
|
French
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-french.gif
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-french2.gif
|
||
|
|
||
|
German
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-german.gif
|
||
|
|
||
|
Icelandic
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-icelandic.gif
|
||
|
|
||
|
Italian
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-italian.gif
|
||
|
|
||
|
Japanese (JIS-X-6002)
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-jisx6002.gif
|
||
|
|
||
|
Japanese (JIS-X-6004)
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-jisx6004.gif
|
||
|
|
||
|
Norwegian
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-norwegian.gif
|
||
|
|
||
|
Portuguese
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-portuguese.gif
|
||
|
|
||
|
Spanish
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-spanish.gif
|
||
|
|
||
|
Swedish
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-swedish.gif
|
||
|
|
||
|
Swiss/German
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-swissgerman.gif
|
||
|
|
||
|
United Kingdom
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-uk.gif
|
||
|
|
||
|
Latin-1
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-latin1.gif
|
||
|
|
||
|
Small Keyboard (maybe suitable for PDAs)
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-small.gif
|
||
|
|
||
|
Hebrew
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-hebrew.gif
|
||
|
|
||
|
Greek
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-greek.gif
|
||
|
|
||
|
Turkish
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-turkish.gif
|
||
|
|
||
|
Slovene
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-slovene.gif
|
||
|
|
||
|
Korean
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-korean.gif
|
||
|
|
||
|
Russian (Cyrillic)
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-russian.gif
|
||
|
|
||
|
Download
|
||
|
Latest Official Release
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-3.2.tar.gz
|
||
|
- source of version 3.2 (2010-03-14)
|
||
|
|
||
|
previous release
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-3.1.tar.gz
|
||
|
- source of version 3.1 (2010-01-17)
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-3.0.tar.gz
|
||
|
- source of version 3.0 (2008-05-05)
|
||
|
|
||
|
xvkbd is distributed under the terms of the GNU General Public License.
|
||
|
|
||
|
Install
|
||
|
o untar the source in a directory, and move to the directory
|
||
|
|
||
|
o If you wish to use genuine Xaw insead of Xaw3d, edit Imakefile and
|
||
|
remove (or comment-out) `#define XAW3D'.
|
||
|
When you are installing xvkbd (for example) in very old systems,
|
||
|
you may also want to remove `#define XTEST' and `#define I18N' to
|
||
|
disable XTEST and internationalization facility respectively.
|
||
|
|
||
|
o Run xmkmf; make install install.man
|
||
|
|
||
|
Customization
|
||
|
How to Customize xvkbd
|
||
|
Some degree of customization of xvkbd is possible by setting resources.
|
||
|
Some resources are already described above, and resources to customiz-
|
||
|
ing keyboard layout are described below.
|
||
|
|
||
|
To set resources, you can:
|
||
|
|
||
|
o put them in your $HOME/.Xdefaults file, or
|
||
|
|
||
|
o load them via xrdb(1), or
|
||
|
|
||
|
o set the filename to the $XENVIRONMENT environment variable, or
|
||
|
|
||
|
o put them in application default directory as `XVkbd-suffix' and set
|
||
|
resource ``xvkbd.customization: -suffix'', or
|
||
|
|
||
|
o put them in application default directory as XVkbd.
|
||
|
|
||
|
Here, application default directory can be either of:
|
||
|
|
||
|
o directories specified with $XUSERFILESEACHPATH, $XAPPLRESDIR or
|
||
|
else $HOME environment variable
|
||
|
|
||
|
o system's application default directory specified with $XFILESEACH-
|
||
|
PATH environment variable, or else the directory specified when
|
||
|
compiling the X (e.g., /usr/lib/X11/app-defaults)
|
||
|
|
||
|
When the application default file is to be stored in the system's
|
||
|
application default directory, the file must contain ``#include "XVkbd-
|
||
|
common"'' near top of the file.
|
||
|
|
||
|
xvkbd is distributed with some application default files, and they will
|
||
|
be installed in the system's application default directory.
|
||
|
|
||
|
Making Window Small
|
||
|
Size (and position) of xvkbd window can be set by `xvkbd.windowGeome-
|
||
|
try' resource. When making window small, you may need to choose the
|
||
|
smaller font, too.
|
||
|
|
||
|
xvkbd.windowGeometry: 220x90
|
||
|
xvkbd.compact: true
|
||
|
xvkbd*Font: 6x12
|
||
|
|
||
|
You may also want to set:
|
||
|
|
||
|
xvkbd.modalKeytop: true
|
||
|
|
||
|
to display only the labels for the current shift state, instead of try-
|
||
|
ing to always display all of them in the small keytop.
|
||
|
|
||
|
See also XVkbd-small.ad in the xvkbd distribution.
|
||
|
|
||
|
Removing Unwanted Keys
|
||
|
Keys on xvkbd window can be removed by setting its width to 1.
|
||
|
|
||
|
To remove Compose key and make Shift key larger, you can write:
|
||
|
|
||
|
xvkbd*Multi_key.width: 1
|
||
|
xvkbd*Shift_R.width: 75
|
||
|
|
||
|
To remove right Alt and Meta key, you can write:
|
||
|
|
||
|
xvkbd*Alt_R.width: 1
|
||
|
xvkbd*Meta_R.width: 1
|
||
|
|
||
|
Customizing Keyboard Layout
|
||
|
Layout of keys on the xvkbd window can be customized with following
|
||
|
resources:
|
||
|
|
||
|
xvkbd.NormalKeys
|
||
|
list of keys available when neighter of Shift and AltGr are
|
||
|
selected
|
||
|
|
||
|
xvkbd.ShiftKeys
|
||
|
list of keys available when Shift is selected
|
||
|
|
||
|
xvkbd.AltgrKeys
|
||
|
list of keys available when AltGr is selected
|
||
|
|
||
|
xvkbd.ShiftAltgrKeys
|
||
|
list of keys available when both AltGr and Shift are selected
|
||
|
|
||
|
xvkbd.KeyLabels
|
||
|
list of labels displayed on the keys
|
||
|
|
||
|
xvkbd.NormalKeyLabels
|
||
|
list of labels displayed on the keys
|
||
|
when neither of Shift and AltGr are selected.
|
||
|
|
||
|
xvkbd.ShiftKeyLabels
|
||
|
list of labels displayed on the keys
|
||
|
when Shift is selected
|
||
|
|
||
|
xvkbd.AltgrKeyLabels
|
||
|
list of labels displayed on the keys
|
||
|
when AltGr is selected
|
||
|
|
||
|
xvkbd.ShiftAltgrKeyLabels
|
||
|
list of labels displayed on the keys
|
||
|
when both AltGr and Shift are selected
|
||
|
|
||
|
Four resources to set labels on the keys (xvkbd.NormalKeyLabels,
|
||
|
xvkbd.ShiftKeyLabels, xvkbd.AltgrKeyLabels and xvkbd.ShiftAltgrKeyLa-
|
||
|
bels) will be used instead of xvkbd.KeyLabels when xvkbd.modalKeytop
|
||
|
resoruce is set true.
|
||
|
|
||
|
In all of those resources, each keys are separated by spaces, and rows
|
||
|
of keys are terminated with ` \n\' (note that `\n' must have space
|
||
|
before it). Please refer XVkbd-german.ad and XVkbd-latin1.ad in the
|
||
|
xvkbd distribution for more about these resources.
|
||
|
|
||
|
XVkbd-german and XVkbd-latin1 will be installed in the system's appli-
|
||
|
cation default directory, and setting the resource ``xvkbd.customiza-
|
||
|
tion: -german'' will make xvkbd to use the German layout. For another
|
||
|
method to activate those settings, please refer "How to Customize
|
||
|
xvkbd" above.
|
||
|
|
||
|
Assigning Text to Function Keys
|
||
|
Text can be assigned to each function keys (and, actually, to most
|
||
|
other keys). If text is assigned to the function key, clicking on the
|
||
|
key will send the assigned text instead of the function key itself.
|
||
|
When pointer is on a key where text is assigned, the text will be dis-
|
||
|
played near the key.
|
||
|
|
||
|
The setting will be read from a text file which contains text for each
|
||
|
function keys as:
|
||
|
|
||
|
F1 text for F1
|
||
|
F2 text for F2
|
||
|
s:F1 text for Shift-F1
|
||
|
c:F1 text for Control-F1
|
||
|
m:F1 text for Meta-F1
|
||
|
a:F1 text for Alt-F1
|
||
|
...
|
||
|
|
||
|
`s:', `c:', `m:' and `a:' before the keys name indicates four modifiers
|
||
|
(Shift, Control, Meta and Alt) respectively.
|
||
|
|
||
|
If the first character of the assigned string is `!', the string will
|
||
|
be used as command to be executed when the key is clicked. To assign
|
||
|
string starting with `!' or `\', put `\' before the string.
|
||
|
|
||
|
The file is $HOME/.xvkbd in default, and it can be changed by setting
|
||
|
the filename with xvkbd.keyFile resource.
|
||
|
|
||
|
For F1 to F12 with or without Shift modifier, it is possible to edit
|
||
|
the assigned string on a panel popped up via "Edit Function Keys..." in
|
||
|
the main menu.
|
||
|
|
||
|
Miscellaneous Informations
|
||
|
Notes
|
||
|
o On XFree86, resolution switch with Ctrl + Alt + Keypad-Plus and
|
||
|
Ctrl + Alt + Keypad-Minus may be simulated. However, Ctrl + Alt +
|
||
|
Backspace will not be simulated.
|
||
|
|
||
|
o Shift is used to decide key to be sent and it will not used to set
|
||
|
modifier bit when sending the event. You can use xev command to
|
||
|
check what is actually sent.
|
||
|
|
||
|
o If Alt or Meta is not defined as modifier, the key can't be used as
|
||
|
modifier. You can use `xmodmap -pm' to check how modifiers are
|
||
|
defined.
|
||
|
|
||
|
o Num Lock (and maybe other modifiers) on the physical keyboard may
|
||
|
not work correctly when xvkbd is in use.
|
||
|
|
||
|
Additional Informations
|
||
|
FAQ - Possible Problems and Solutions
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/faq.html
|
||
|
|
||
|
Making your own completion dictionary
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/make-dic.html
|
||
|
|
||
|
Hints to use xvkbd -text
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/xvkbd-text.html
|
||
|
|
||
|
Note about how to send key events
|
||
|
http://homepage3.nifty.com/tsato/xvkbd/events.html
|
||
|
|
||
|
Change Log
|
||
|
Version 0.1 (2000-05-13)
|
||
|
|
||
|
- The first release, not announced anywhere.
|
||
|
|
||
|
Version 0.2 (2000-09-15)
|
||
|
|
||
|
- Compose key is added. In the environments where Compose key is
|
||
|
supported, some characters (mainly letters with accent symbol)
|
||
|
which can't be entered directly from keyboard can be entered
|
||
|
using dedicated key combinations.
|
||
|
|
||
|
- Make keyboard layout not to be disturbed when window size if
|
||
|
specified with -geometry option.
|
||
|
|
||
|
- Sample app-defaults file is added.
|
||
|
|
||
|
Version 0.3 (2000-10-05)
|
||
|
|
||
|
- -text option can now accept some modifiers (\S, \C, etc.) and any
|
||
|
keysyms (\[keysym]).
|
||
|
|
||
|
- In addition to the window ID, -window option can now accept win-
|
||
|
dow name.
|
||
|
|
||
|
- New -widget option to specify the widget to set the input focus.
|
||
|
|
||
|
Version 1.0 (2000-11-03)
|
||
|
|
||
|
- Keyboard layout can be now configured with resources. See "Cus-
|
||
|
tomizing Keyboard Layout" above, and XVkbd-german.ad in the dis-
|
||
|
tribution.
|
||
|
|
||
|
- xvkbd can now send keys with Mode_switch (AltGr) modifier, which
|
||
|
enables those characters in the position to be entered.
|
||
|
|
||
|
- xvkbd now support AltGr key so that German (and some other) key-
|
||
|
board layout can be used. See XVkbd-german.ad in the distribu-
|
||
|
tion.
|
||
|
|
||
|
- XVkbd-german and XVkbd-latin1 are included in the distribution,
|
||
|
which modifies keyboard layout and put some non-ASCII keys on the
|
||
|
xvkbd window.
|
||
|
|
||
|
- CapsLock key is supported now.
|
||
|
|
||
|
Version 1.1 (2000-12-23)
|
||
|
|
||
|
- xvkbd can now use XTEST extension to simulate keyboard events.
|
||
|
It can still use XSendEvent(), as it was in the older release.
|
||
|
(thanks, Bjoern)
|
||
|
|
||
|
- Labels on keys can now be set independently for each of four
|
||
|
shift states, not shifted, Shift, AltGr and Shift-AltGr.
|
||
|
(thanks, Jim)
|
||
|
|
||
|
- -kterm option and xvkbd.kterm resource are removed.
|
||
|
|
||
|
Version 1.2 (2001-02-18)
|
||
|
|
||
|
- Focus button is now placed in the main keyboard, too, so that it
|
||
|
will be available also in compact mode. If you don't need it, it
|
||
|
can be removed by setting ``xvkbd*row5.Focus.width: 1''.
|
||
|
|
||
|
- Input focus set by Focus button can now be cleard by clicking
|
||
|
Focus button twice. Clicking Focus button with mouse button 3
|
||
|
will still clear the input focus, too.
|
||
|
|
||
|
- Text can now be assigned to function keys (and, actually, to most
|
||
|
other keys).
|
||
|
|
||
|
- It is now possible to assign keys modified with Shift, Control,
|
||
|
Alt and Meta on the main keyboard, by putting `s:', `c:', `a:'
|
||
|
and `m:' before those keysym name when customizing the keyboard
|
||
|
layout.
|
||
|
|
||
|
- xvkbd now ignores SIGINT and SIGQUIT so that it will not termi-
|
||
|
nated accidently.
|
||
|
|
||
|
Version 1.3 (2001-03-19)
|
||
|
|
||
|
- New app-defaults file for Swiss-German layout, XVkbd-swissger-
|
||
|
man.ad. (contributed from Marcel Portner)
|
||
|
|
||
|
- xvkbd now catches MappingNotify event and reload the new mapping.
|
||
|
This allows users to use xmodmap while xvkbd is running.
|
||
|
|
||
|
- NumLock key is supported now. (I'd removed Print, ScrLk and
|
||
|
Pause from keypad - somebody need them?)
|
||
|
|
||
|
Version 1.4 (2001-04-22)
|
||
|
|
||
|
- Auto-repeat didn't work when focus was set explicitly via Focus
|
||
|
button. It is now fixed.
|
||
|
|
||
|
- When required keysym was not defined in the keymap table, xvkbd
|
||
|
will now add it on-the-fly. This means that we don't have to add
|
||
|
them via xmodmap.
|
||
|
|
||
|
- Keypad panel can now be popped up from the main keyboard as a
|
||
|
separate window.
|
||
|
|
||
|
- Sun function keys is now supported. It can be popped up from the
|
||
|
main keyboard as a separate window.
|
||
|
|
||
|
- Manual page is now available.
|
||
|
|
||
|
Version 1.5 (2001-10-08)
|
||
|
|
||
|
- Key events can now be sent to windows on a remote display (i.e.
|
||
|
windows on other X servers) - use "Connect to Remote Display..."
|
||
|
in the main menu to connect to remote display.
|
||
|
|
||
|
- Shift, Control, Alt and Meta can now be locked - use "Lock
|
||
|
Shift?" and "Lock Control, Alt and Meta?" in the main menu.
|
||
|
Those initial settings can be set by xvkbd.shiftLock and
|
||
|
xvkbd.modifiersLock resource.
|
||
|
|
||
|
- If the first keysym for a key is an alphabet and the second
|
||
|
keysym is NoSymbol, it is now interpreted as if the first keysym
|
||
|
is lowercase alphabet and the second keysym is uppercase alpha-
|
||
|
bet. Keymap may be defined in this way in some systems including
|
||
|
Solaris, and older xvkbd may not work correctly in such situa-
|
||
|
tion.
|
||
|
|
||
|
Version 1.6 (2001-11-10)
|
||
|
|
||
|
- New `-file' option to send characters in the specified file.
|
||
|
(thanks, Gregory)
|
||
|
|
||
|
- New entry `Use XTEST Extension?' is added to the main menu,
|
||
|
mainly to indicate the availability of the XTEST extension.
|
||
|
|
||
|
- xvkbd would crash when the window explicitly focused via Focus
|
||
|
button becomes was destroyed. This problem is now fixed.
|
||
|
|
||
|
Version 2.0 (2001-12-09)
|
||
|
|
||
|
- Keyboard layout (default, German, French, etc.) can now be
|
||
|
changed after xvkbd is invoked.
|
||
|
|
||
|
- Show/hide of the keypad and funcion keys on the main window can
|
||
|
now be toggled from the main menu.
|
||
|
|
||
|
- New app-defaults file for French layout, XVkbd-french.ad. (con-
|
||
|
tributed from Jean-Pierre Demailly)
|
||
|
|
||
|
Version 2.1 (2002-01-27)
|
||
|
|
||
|
- When height of the xvkbd window is smaller than
|
||
|
XVkbd.modalThreshold, xvkbd will now automatically switch the
|
||
|
keytop as if -modal option was specified.
|
||
|
|
||
|
- \[keysym] in -text option would send wrong keys - this problem is
|
||
|
now fixed.
|
||
|
|
||
|
- Target distclean in the Imakefile is renamed to avoid the possi-
|
||
|
ble confusion on some systems.
|
||
|
|
||
|
- Word completion is now supported.
|
||
|
|
||
|
Version 2.2 (2002-03-17)
|
||
|
|
||
|
- String assigned to function keys can now be edited on a panel
|
||
|
popped up via "Edit Function Keys..." in the main menu.
|
||
|
|
||
|
- When ``-'' was specified as the filename parameter for -file
|
||
|
option, xvkbd will now read its standard input (stdin) to get the
|
||
|
string to be sent.
|
||
|
|
||
|
- In the previous release, less-portable setenv() function was used
|
||
|
instead of putenv() function, may cause compilation error on some
|
||
|
systems including Solaris.
|
||
|
|
||
|
Version 2.3 (2002-04-05)
|
||
|
|
||
|
- New "Dead Keys" panel added. Which can be used to enter Latin
|
||
|
characters with accent symbol in double stroke.
|
||
|
|
||
|
- More localized keyboard layout: Belgian, Danish, French, German,
|
||
|
Icelandic, Italian, Japanese (JIS-X-6004), Norwegian, Portuguese,
|
||
|
Spanish, Swedish, Swiss/German, United Kingdom and Latin-1.
|
||
|
|
||
|
- -keypad option would crash previous version of xvkbd - this prob-
|
||
|
lem is now fixed.
|
||
|
|
||
|
Version 2.4 (2002-10-02)
|
||
|
|
||
|
- Command can now be assigned to function keys so that clicking on
|
||
|
the function key will execute the command instead of sending the
|
||
|
string to clients.
|
||
|
|
||
|
- Assigned string for F1 to F12 with Shift modifier can now be
|
||
|
edited on a panel popped up via "Edit Function Keys..." in the
|
||
|
main menu.
|
||
|
|
||
|
Version 2.5 (2002-10-12)
|
||
|
|
||
|
- Quick Modifier feature added - now, it is possible to enter char-
|
||
|
acters with modifiers by pressing a key and then move the
|
||
|
pointer. (suggested by Niklas Rokaeus)
|
||
|
|
||
|
- ``Lock AltGr?'' entry is added in the main menu.
|
||
|
|
||
|
- Status of ``Lock Shift?'', ``Lock AltGr'', ``Lock Control, Alt
|
||
|
and Meta?'' will be recorded in $HOME/.xvkbd file and it will be
|
||
|
read when xvkbd is invoked next time.
|
||
|
|
||
|
Version 2.5a (2003-06-25)
|
||
|
|
||
|
- ``Fitaly'' layout is now supported - may be useful for PDAs.
|
||
|
|
||
|
Version 2.6 (2004-05-04)
|
||
|
|
||
|
- Code to adding keysyms which were not found in the keymap table
|
||
|
is revised. xvkbd now avoid to add keysyms in the shifted posi-
|
||
|
tion of keys which already have a keysym defined in the non-
|
||
|
shifted position, and entries in the keymap table which is modi-
|
||
|
fied keys will be redefined rather than redefining the entire
|
||
|
keymap table. This change is to avoid possible problem (AltGr
|
||
|
key could be effectively disabled) which may caused in some sys-
|
||
|
tems where XGetKeyboardMapping() can produce incorrect map when
|
||
|
keys have more then two keysyms.
|
||
|
|
||
|
- If Mode_switch is not defined in the modifier table but
|
||
|
ISO_Level3_Shift is defined, xvkbd now attempt to add Mode_switch
|
||
|
as the same modifier with ISO_Level3_Shift.
|
||
|
|
||
|
- Korean layout is now supported. Although Hangul characters will
|
||
|
be displayed on the keys, xvkbd will simply generate alphabet
|
||
|
characters when those keys are clicked. It is intented to be
|
||
|
used with "ami" or similar Hangul input program.
|
||
|
|
||
|
- URL of the xvkbd main page is now changes to http://home-
|
||
|
page3.nifty.com/tsato/xvkbd/.
|
||
|
|
||
|
Version 2.7 (2005-05-05)
|
||
|
|
||
|
- Yet another Japanese keyboard layout, JIS X 6002, is now sup-
|
||
|
ported.
|
||
|
|
||
|
- It is now possible to minimize (iconify) the main window even if
|
||
|
no window manager is in use. This feature can be activated by
|
||
|
-minimizable option or xvkbd.minimizable resource.
|
||
|
|
||
|
- Experimental code to keep the xvkbd window always on the top of
|
||
|
the display. This feature can be activated by -always-on-top
|
||
|
option, xvkbd.alwaysOnTop resource or the "Always on Top?" entry
|
||
|
in the main menu. Care should be taken as this feature can cause
|
||
|
problem in some situations.
|
||
|
|
||
|
- -text option now support combinations of modifiers and a special
|
||
|
key. For example, -text '\C\A\d' can be used for Control-Alt-
|
||
|
Delete key combination.
|
||
|
|
||
|
- New options: -secure option (xvkbd.secure resource) which dis-
|
||
|
ables invocation of external commands, -nonexitable option
|
||
|
(xvkbd.nonexitable resource) which inhibits termination of the
|
||
|
program, and -xdm option which is equivalent to -secure -nonex-
|
||
|
itable and maybe useful when run xvkbd from a display manager.
|
||
|
|
||
|
Version 2.7a (2005-05-07)
|
||
|
|
||
|
- Fixed a problem that xvkbd could cause segmentation fault on
|
||
|
startup.
|
||
|
|
||
|
Version 2.8 (2006-09-10)
|
||
|
|
||
|
- ISO_Level3_Shift is now to be prefered over Mode_switch so that
|
||
|
AltGr can be used on relatively new systems where we must use
|
||
|
ISO_Level3_Shift instead of Mode_switch.
|
||
|
|
||
|
- Reference to the target bitmap is changed from
|
||
|
/usr/X11R6/include/X11/bitmaps/target to
|
||
|
/usr/include/X11/bitmaps/target.
|
||
|
|
||
|
- New options: -no-back-pointer, -no-sync, -modifiers.
|
||
|
|
||
|
Version 2.9 (2008-03-30)
|
||
|
|
||
|
- Russian (Cyrillic) keyboard layout supported. (thanks, Victor)
|
||
|
|
||
|
- New -delay option.
|
||
|
|
||
|
- \D special sequence in -text can be used to put a delay in spe-
|
||
|
cific position.
|
||
|
|
||
|
- -text can now simulate mouse operation via \x, \y and \m special
|
||
|
sequences.
|
||
|
|
||
|
Version 3.0 (2008-05-05)
|
||
|
|
||
|
- New Property panel.
|
||
|
|
||
|
- New automatic click feature.
|
||
|
|
||
|
- Key-click sounds when key is pressed.
|
||
|
|
||
|
Version 3.1 (2010-01-17)
|
||
|
|
||
|
- Changed the default setting for automatic click to OFF, which was
|
||
|
set ON in the previous release in error and caused confusion.
|
||
|
|
||
|
- The keypad is now customizable, too (see XVkbd-strip.ad for the
|
||
|
example).
|
||
|
|
||
|
- Up to 25x25 keys can now be supported both for the main keyboard
|
||
|
and the keypad.
|
||
|
|
||
|
- Able to open the keypad panel when startup, by setting
|
||
|
`xvkbd.keypad: false' and `xvkbd.keypadOnly: true'.
|
||
|
|
||
|
- Fixed errors in some keyboard layout files (Korean, Slovene, UK).
|
||
|
|
||
|
- A new sample layout file XVkbd-strip.ad.
|
||
|
|
||
|
Version 3.2 (2010-03-14)
|
||
|
|
||
|
- New option `Behave as Toolbar Window?' on the Property panel,
|
||
|
which may make xvkbd works better with some kind of window man-
|
||
|
agers
|
||
|
such as Matchbox window manager. (Thanks, Patrick)
|
||
|
|
||
|
- `Always on Top' will work rather better with window managers
|
||
|
which support extended window manager hint _NET_WM_STATE_ABOVE.
|
||
|
|
||
|
- -window option can now find window which have title match with
|
||
|
the specified string.
|
||
|
|
||
|
- -window option now accept wildcard characters
|
||
|
`*' and `?'.
|
||
|
|
||
|
- Word completion dictionary file to be used with `Word Comple-
|
||
|
tion...'
|
||
|
can now be specified on the Property panel.
|
||
|
|
||
|
- Only the words which have two or more characters will be appeared
|
||
|
in the word completion list.
|
||
|
|
||
|
- New -version option to display version information.
|
||
|
|
||
|
Author
|
||
|
xvkbd was written by Tom Sato, and it is distributed under the terms of
|
||
|
the GNU General Public License Version 2 or any later version.
|
||
|
|
||
|
Please send any feedback (such as bug reports, requests or comments) to
|
||
|
Tom Sato <VEF00200@nifty.ne.jp>.
|
||
|
|
||
|
The latest version of this software and more information about it may
|
||
|
be available at http://homepage3.nifty.com/tsato/xvkbd/. Release of
|
||
|
the new version will be announced on the Freshmeat (http://fresh-
|
||
|
meat.net), and you can probably receive the announce via e-mail if you
|
||
|
wish.
|
||
|
|
||
|
Tommaso Cucinotta <firstname.lastname@gmail.com> contributed the
|
||
|
-no_root and -instance command-line options.
|
||
|
|
||
|
|
||
|
2010-03-14 xvkbd(1)
|