Fix a whole lot of C compiler warnings during the xvkbd build.

This practically brings it up to BDECFLAGS with the exception of
-Wunused-parameter -Wcast-qual -Wwrite-strings -Wbad-function-cast.

Fix the manual page - escape ("\-") a lot of minus signs in command-line
options and literal values so that groff does not try to convert them to
hyphens, thus breaking the ability to copy them directly from the manpage
to the command line.

Bump PORTREVISION.
This commit is contained in:
Peter Pentchev 2008-06-03 14:14:04 +00:00
parent 3ab5726b22
commit 7ee76ecac5
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=214250
3 changed files with 843 additions and 24 deletions

View File

@ -7,6 +7,7 @@
PORTNAME= xvkbd
PORTVERSION= 3.0
PORTREVISION= 1
CATEGORIES= x11
MASTER_SITES= http://homepage3.nifty.com/tsato/xvkbd/

View File

@ -1,6 +1,6 @@
diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
--- ../../vendor/xvkbd/xvkbd.c 2008-05-28 23:43:41.000000000 +0300
+++ ./xvkbd.c 2008-05-29 00:38:40.000000000 +0300
+++ ./xvkbd.c 2008-06-03 14:54:14.000000000 +0300
@@ -346,7 +346,7 @@
{ "keyFile", "KeyFile", XtRString, sizeof(char *),
Offset(key_file), XtRImmediate, ".xvkbd" },
@ -10,7 +10,61 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
{ "customizations", "Customizations", XtRString, sizeof(char *),
Offset(customizations), XtRImmediate, "default" },
{ "editableFunctionKeys", "EditableFunctionKeys", XtRInt, sizeof(int),
@@ -1154,7 +1154,7 @@
@@ -439,8 +439,8 @@
static int altgr_mask = 0;
static KeySym altgr_keysym = NoSymbol;
-static int shift_state = 0;
-static int mouse_shift = 0;
+static unsigned int shift_state = 0;
+static unsigned int mouse_shift = 0;
static Display *target_dpy = NULL;
@@ -451,7 +451,7 @@
static Pixmap xvkbd_pixmap = None;
static int AddKeysym(KeySym keysym, Boolean top); /* forward */
-static void SendString(const unsigned char *str);
+static void SendString(const char *str);
static void MakeKeyboard(Boolean remake);
static void MakeKeypad(Widget form, Widget from_vert, Widget from_horiz);
static void MakeSunFunctionKey(Widget form, Widget from_vert, Widget from_horiz);
@@ -468,8 +468,7 @@
{
Window w;
Window *children, dummy;
- unsigned int nchildren;
- int i;
+ unsigned int nchildren, i;
XClassHint hint;
w = None;
@@ -746,7 +745,9 @@
*/
static void SendEvent(XKeyEvent *event)
{
+#ifdef USE_XTEST
static Boolean first = TRUE;
+#endif
if (!appres.no_sync) {
XSync(event->display, FALSE);
@@ -1027,11 +1028,11 @@
#ifdef USE_XTEST
if (appres.xtest) {
- Window root, child;
+ Window troot, child;
int root_x, root_y, x, y;
unsigned int mask;
- XQueryPointer(target_dpy, event.root, &root, &child, &root_x, &root_y, &x, &y, &mask);
+ XQueryPointer(target_dpy, event.root, &troot, &child, &root_x, &root_y, &x, &y, &mask);
event.type = KeyRelease;
event.state = 0;
@@ -1154,7 +1155,7 @@
* via xvkbd can be listed, and choosing one of them will send the
* suffix to the clients.
* Words for completion will be read from dictionary file specified
@ -19,7 +73,31 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
*/
static Widget completion_panel = None;
static Widget completion_entry = None;
@@ -1350,11 +1350,12 @@
@@ -1211,7 +1212,7 @@
static void AddToCompletionText(KeySym keysym)
{
- int len;
+ size_t len;
struct WORDLIST *node_ptr;
if (completion_entry != None) {
@@ -1300,11 +1301,11 @@
*/
static void KeyPressed(Widget w, char *key, char *data);
-static void SendString(const unsigned char *str)
+static void SendString(const char *str)
{
- const unsigned char *cp, *cp2; /* I remember "unsigned" might be required for some systems */
+ const char *cp, *cp2;
char key[50];
- int len;
+ size_t len;
int val;
Window target_root, child, junk_w;
int junk_i;
@@ -1350,11 +1351,12 @@
if ('1' <= *cp && *cp <= '9') {
usleep((*cp - '0') * 100000);
} else {
@ -33,7 +111,7 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
cp++;
if ('1' <= *cp && *cp <= '9') {
if (appres.debug) fprintf(stderr, "XTestFakeButtonEvent(%d)\n", *cp - '0');
@@ -1365,10 +1366,18 @@
@@ -1365,10 +1367,18 @@
fprintf(stderr, "%s: no digit after \"\\m\"\n",
PROGRAM_NAME);
}
@ -53,7 +131,7 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
target_root = RootWindow(target_dpy, DefaultScreen(target_dpy));
XQueryPointer(target_dpy, target_root, &junk_w, &child,
&cur_x, &cur_y, &junk_i, &junk_i, &junk_u);
@@ -1436,7 +1445,7 @@
@@ -1436,7 +1446,7 @@
char name1[50];
Widget w;
@ -62,7 +140,69 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
w = XtNameToWidget(toplevel, name1);
if (w != None) {
if (strstr(name, "Focus") != NULL) {
@@ -1660,7 +1669,7 @@
@@ -1465,13 +1475,13 @@
static void RefreshShiftState(Boolean force)
{
static Boolean first = TRUE;
- static int last_shift_state = 0;
- static int last_mouse_shift = 0;
+ static unsigned int last_shift_state = 0;
+ static unsigned int last_mouse_shift = 0;
static int last_num_lock_state = FALSE;
static Display *last_target_dpy = NULL;
- static long last_focus = 0;
- int cur_shift;
- int changed;
+ static Window last_focus = 0;
+ unsigned int cur_shift;
+ unsigned int changed;
int first_row, row, col;
Boolean shifted;
char *label;
@@ -1562,7 +1572,7 @@
Window root, child;
int root_x, root_y, x, y;
- unsigned int mask;
+ unsigned int tmask;
XKeyEvent event;
@@ -1578,28 +1588,28 @@
event.same_screen = TRUE;
event.state = 0;
- XQueryPointer(target_dpy, event.root, &root, &child, &root_x, &root_y, &x, &y, &mask);
+ XQueryPointer(target_dpy, event.root, &root, &child, &root_x, &root_y, &x, &y, &tmask);
if (strstr(appres.positive_modifiers, "shift") != NULL
- && (shift_state & ShiftMask) != (mask & ShiftMask)) {
+ && (shift_state & ShiftMask) != (tmask & ShiftMask)) {
event.keycode = XKeysymToKeycode(target_dpy, XK_Shift_L);
event.type = (shift_state & ShiftMask) ? KeyPress : KeyRelease;
SendEvent(&event);
}
if (strstr(appres.positive_modifiers, "control") != NULL
- && (shift_state & ControlMask) != (mask & ControlMask)) {
+ && (shift_state & ControlMask) != (tmask & ControlMask)) {
event.keycode = XKeysymToKeycode(target_dpy, XK_Control_L);
event.type = (shift_state & ControlMask) ? KeyPress : KeyRelease;
SendEvent(&event);
}
if (strstr(appres.positive_modifiers, "alt") != NULL
- && (shift_state & alt_mask) != (mask & alt_mask)) {
+ && (shift_state & alt_mask) != (tmask & alt_mask)) {
event.keycode = XKeysymToKeycode(target_dpy, XK_Alt_L);
event.type = (shift_state & alt_mask) ? KeyPress : KeyRelease;
SendEvent(&event);
}
if (strstr(appres.positive_modifiers, "meta") != NULL
- && (shift_state & meta_mask) != (mask & meta_mask)) {
+ && (shift_state & meta_mask) != (tmask & meta_mask)) {
event.keycode = XKeysymToKeycode(target_dpy, XK_Meta_L);
event.type = (shift_state & meta_mask) ? KeyPress : KeyRelease;
SendEvent(&event);
@@ -1660,7 +1670,7 @@
XtVaGetValues(w, XtNx, &x0, XtNy, &y0, NULL);
XGetGeometry(dpy, XtWindow(w), &root, &x1, &y1, &wd, &ht, &bd, &dp);
@ -71,7 +211,7 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
return geom;
}
@@ -1680,7 +1689,7 @@
@@ -1680,7 +1690,7 @@
if (strcmp(key, "default") != 0) {
sscanf(key, "%29[^/]/%29s", customization, lang);
@ -80,7 +220,24 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
xenv = XtResolvePathname(dpy, "app-defaults", name, NULL, NULL, NULL, 0, NULL);
if (xenv == NULL) {
fprintf(stderr, "%s: app-default file \"%s\" not installed\n",
@@ -1940,7 +1949,7 @@
@@ -1792,6 +1802,7 @@
XtVaGetValues(XtNameToWidget(props_panel, "*jump_pointer"),
XtNstate, &appres.jump_pointer, NULL);
+ /* These two lines generate warnings with -Wbad-function-cast. Grrr. */
appres.key_click_duration = (int)XawToggleGetCurrent(click_buttons);
appres.autoclick_delay = (int)XawToggleGetCurrent(autoclick_buttons);
@@ -1848,7 +1859,7 @@
if (props_panel == None) {
Widget label, button;
Widget form, w;
- int i;
+ Cardinal i;
int val;
props_panel = XtVaCreatePopupShell("props_panel", transientShellWidgetClass,
@@ -1940,7 +1951,7 @@
focused_subwindow = None;
if (target_dpy != NULL && target_dpy != dpy) XCloseDisplay(target_dpy);
@ -89,7 +246,7 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
for (cp = name; isascii(*cp) && isprint(*cp); cp++) ;
*cp = '\0';
@@ -2423,7 +2432,7 @@
@@ -2423,7 +2434,7 @@
XtAddCallback(w, XtNcallback, (XtCallbackProc)KeyPressed, (XtPointer)name);
if (label != NULL) {
@ -98,7 +255,7 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
if (strcmp(str, "space") == 0) strcpy(str, "");
len = strlen(str);
if (3 <= len) {
@@ -2495,9 +2504,9 @@
@@ -2495,9 +2506,9 @@
|| (strncmp(keypad_shift[row][col], "KP_", 3) == 0
&& isdigit(keypad_shift[row][col][3])))
color = appres.general_background;
@ -110,7 +267,22 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
key = MakeKey(keypad_box, XtNewString(name),
keypad_label[row][col], color);
XtVaSetValues(key, XtNfont, font, NULL);
@@ -2622,7 +2631,7 @@
@@ -2599,12 +2610,12 @@
Widget form, key, left;
Pixel color;
XFontStruct *font;
- Dimension wd, max_wd;
+ Dimension dwd, max_dwd;
int row, col, first_row;
char name[50], *label;
Widget key_box[NUM_KEY_ROWS];
Widget menu_entry;
- int i;
+ Cardinal i;
#include "xvkbd.xbm"
#include "iconify.xbm"
@@ -2622,7 +2633,7 @@
first_row = appres.function_key ? 0 : 1;
if (!appres.keypad_only) {
for (row = first_row; row < NUM_KEY_ROWS; row++) {
@ -119,7 +291,7 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
key_box[row] = XtVaCreateManagedWidget(name, formWidgetClass, form, NULL);
if (row != first_row)
XtVaSetValues(key_box[row], XtNfromVert, key_box[row - 1], NULL);
@@ -2631,7 +2640,7 @@
@@ -2631,7 +2642,7 @@
left = None;
for (col = 0; keys_normal[row][col] != NULL; col++) {
@ -128,7 +300,7 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
if (strcmp(name, "MainMenu") == 0) {
Widget iconify_button = None;
@@ -2673,7 +2682,7 @@
@@ -2673,11 +2684,11 @@
color = appres.general_background;
font = appres.general_font;
if (isalpha(name[0])) font = appres.letter_font;
@ -136,8 +308,45 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
+ if (strcmp(name, "space") != 0) snprintf(name, sizeof(name), "%d,%d", row, col);
}
key = MakeKey(key_box[row], XtNewString(name), label, color);
XtVaGetValues(key, XtNwidth, &wd, NULL);
@@ -2834,17 +2843,18 @@
- XtVaGetValues(key, XtNwidth, &wd, NULL);
- if (wd <= 1) {
+ XtVaGetValues(key, XtNwidth, &dwd, NULL);
+ if (dwd <= 1) {
/* keys can be removed by setting its width to 1 */
XtDestroyWidget(key);
key = None;
@@ -2712,7 +2723,7 @@
Window root;
int x1, y1;
unsigned int wd, ht, bd, dp;
- int max_wd, max_ht;
+ unsigned int max_wd, max_ht;
XGetGeometry(dpy, XtWindow(toplevel), &root, &x1, &y1, &wd, &ht, &bd, &dp);
max_wd = XtScreen(toplevel)->width * appres.max_width_ratio;
@@ -2730,16 +2741,16 @@
if (!appres.debug && key_box[first_row] != None) {
if (appres.keypad) {
- XtVaGetValues(key_box[1], XtNwidth, &max_wd, NULL);
+ XtVaGetValues(key_box[1], XtNwidth, &max_dwd, NULL);
} else {
- max_wd = 0;
+ max_dwd = 0;
for (row = first_row; row < NUM_KEY_ROWS; row++) {
- XtVaGetValues(key_box[row], XtNwidth, &wd, NULL);
- if (max_wd < wd) max_wd = wd;
+ XtVaGetValues(key_box[row], XtNwidth, &dwd, NULL);
+ if (max_dwd < dwd) max_dwd = dwd;
}
}
for (row = first_row; row < NUM_KEY_ROWS; row++) {
- XtVaSetValues(key_box[row], XtNwidth, max_wd, NULL);
+ XtVaSetValues(key_box[row], XtNwidth, max_dwd, NULL);
}
}
if (0 < strlen(appres.geometry)) {
@@ -2834,17 +2845,18 @@
home = getenv("HOME");
if (appres.key_file[0] != '/' && home != NULL
&& strlen(home) + strlen(appres.key_file) + 1 < sizeof(fkey_filename))
@ -160,7 +369,7 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
appres.quick_modifiers = val;
else if (strcmp(key, "shift_lock") == 0)
appres.shift_lock = val;
@@ -2913,9 +2923,9 @@
@@ -2913,9 +2925,9 @@
if (key == NULL)
strcpy(key2, "");
else if (strncmp(key, "Shift-", strlen("Shift-")) == 0)
@ -172,7 +381,7 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
if (strcmp(cur_fkey, key2) != 0) {
if (strlen(cur_fkey) != 0) {
@@ -2958,10 +2968,10 @@
@@ -2958,10 +2970,10 @@
FKeyValueMenuSelected(None, (value[0] == '!') ? "command" : "string");
if (value[0] == '!' || value[0] == '\\') value = value + 1;
@ -185,7 +394,7 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
}
}
}
@@ -3020,9 +3030,9 @@
@@ -3020,9 +3032,9 @@
for (j = 0; j <= 1; j++) {
for (i = 1; i <= appres.editable_function_keys; i++) {
if (j == 0)
@ -197,7 +406,7 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
key = XtNewString(label);
menu_entry = XtVaCreateManagedWidget(key, smeBSBObjectClass, menu, NULL);
XtAddCallback(menu_entry, XtNcallback, (XtCallbackProc)FKeyMenuSelected,
@@ -3084,8 +3094,8 @@
@@ -3084,8 +3096,8 @@
else if (shift_state & ControlMask) prefix = 'c';
else if (shift_state & ShiftMask) prefix = 's';
}
@ -208,7 +417,7 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
len = strlen(label);
for (sp = fkey_list; sp != NULL; sp = sp->next) {
@@ -3143,8 +3153,10 @@
@@ -3143,8 +3155,10 @@
{
StopAutoclick();
@ -219,7 +428,26 @@ diff -urN -x .svn ../../vendor/xvkbd/xvkbd.c ./xvkbd.c
}
static void ShowBalloon(Widget w, XEvent *event, String *pars, Cardinal *n_pars)
@@ -3447,7 +3459,7 @@
@@ -3225,7 +3239,7 @@
static void VisibilityChanged(Widget w, XEvent *event,
String *pars, Cardinal *n_pars)
{
- static cnt = 0;
+ static int cnt = 0;
static time_t t1 = 0;
time_t t2;
@@ -3272,7 +3286,9 @@
char ch;
Window child;
+#ifdef USE_XTEST
int op, ev, err;
+#endif
argc1 = argc;
argv1 = malloc(sizeof(char *) * (argc1 + 5));
@@ -3447,7 +3463,7 @@
} else {
s = locale;
}

View File

@ -1,12 +1,602 @@
diff -urN -x .svn ../../vendor/xvkbd/xvkbd.man ./xvkbd.man
--- ../../vendor/xvkbd/xvkbd.man 2008-05-28 23:43:41.000000000 +0300
+++ ./xvkbd.man 2008-05-29 00:13:19.000000000 +0300
@@ -116,7 +116,7 @@
+++ ./xvkbd.man 2008-06-03 14:54:13.000000000 +0300
@@ -29,7 +29,7 @@
.PP
\fIIMPORTANT NOTE:\fP
When invoking \fIxvkbd\fP from display managers such as XDM, GDM, etc.,
-always use \fIxvkbd\fP with \fB-secure\fP option
+always use \fIxvkbd\fP with \fB\-secure\fP option
or you will have serious security risk.
.SH "Environment"
@@ -116,8 +116,8 @@
and you can enter the remaining characters of the selected word
by clicking one of the words in the list.
.PP
-The dictionary (list of words) file is \fB/usr/dict/words\fP by default,
-but it can be changed by \fB-dict\fP option or \fBxvkbd.dictFile\fP resouce.
+The dictionary (list of words) file is \fB/usr/share/dict/words\fP by default,
but it can be changed by \fB-dict\fP option or \fBxvkbd.dictFile\fP resouce.
+but it can be changed by \fB\-dict\fP option or \fBxvkbd.dictFile\fP resouce.
.SH " Main Menu"
Pressing the ``xvkbd'' logo on the main keyboard
@@ -235,10 +235,10 @@
.SH " Options"
\fIxvkbd\fP accept following command line options, in addition to
-general options such as `\fB-display\fP'.
+general options such as `\fB\-display\fP'.
.PP
.TP 4
-.B "-xsendevent"
+.B "\-xsendevent"
Make \fIxvkbd\fP to use \fIXSendEvent()\fP to simulate keyboard events,
as it was in \fIxvkbd\fP version 1.0.
\fIxvkbd\fP version 1.1 and later will try to use XTEST extension instead
@@ -249,14 +249,14 @@
.sp 0.5
Resource `\fBxvkbd.xtest: false\fP' has the same function.
.TP 4
-.B "-no-sync"
+.B "\-no\-sync"
Normally, \fIxvkbd\fP 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 \fB-no-sync\fP can solve the problem.
+In such situation, maybe this \fB\-no\-sync\fP can solve the problem.
.sp 0.5
Resource `\fBxvkbd.noSync: true\fP' has the same function.
.TP 4
-.B "-no-jump-pointer"
+.B "\-no\-jump\-pointer"
Make \fIxvkbd\fP not to jump the pointer when sending events.
In the default, \fIxvkbd\fP will temporary jump the pointer to the focused window,
if input focus is set explicitly via \fIFocus\fP button,
@@ -264,14 +264,14 @@
.sp 0.5
Resource `\fBxvkbd.jumpPointer: false\fP' has the same function.
.TP 4
-.B "-no-back-pointer"
+.B "\-no\-back\-pointer"
Make \fIxvkbd\fP not to jump the pointer back to the original position
after events has been sent.
Maybe this can be useful when using \fIxvkbd\fP to move the pointer position.
.sp 0.5
Resource `\fBxvkbd.jumpPointerBack: false\fP' has the same function.
.TP 4
-.B "-modal"
+.B "\-modal"
Make labels on keys in the \fIxvkbd\fP window
to be set independently for each of four shift states,
not shifted, \fIShift\fP, \fIAltGr\fP and \fIShift\fP-\fIAltGr\fP.
@@ -282,22 +282,22 @@
.sp 0.5
Resource `\fBxvkbd.modalKeytop: true\fP' has the same function.
.TP 4
-.B "-geometry "[\fIwidth\fPx\fIheight\fP][\fB+\fIxoff\fP+\fIyoff\fP]
+.B "\-geometry "[\fIwidth\fPx\fIheight\fP][\fB+\fIxoff\fP+\fIyoff\fP]
Set window geometry (size and position).
.sp 0.5
-You can use form like \fB-geometry 400x130\fP to specify the window size,
-\fB-geometry +100+100\fP to specify the window position from left/top edge of the screen,
-and \fB-geometry 400x130+100+100\fP to specify both the size and the position.
+You can use form like \fB\-geometry 400x130\fP to specify the window size,
+\fB\-geometry +100+100\fP to specify the window position from left/top edge of the screen,
+and \fB\-geometry 400x130+100+100\fP to specify both the size and the position.
You can specify position from right/bottom edge of the screen
-by using \fB-\fP instead of \fB+\fP,
+by using \fB\-\fP instead of \fB+\fP,
but please note that you must take account of size of the window border.
-(If you specify `\fB-geometry -0-0\fP',
+(If you specify `\fB\-geometry \-0\-0\fP',
the window will not fit in the screen.)
.sp 0.5
This can be set by \fBxvkbd.windowGeometry\fP resource
(note that it is not \fBxvkbd.geometry\fP), too.
.TP 4
-.B "-no-repeat"
+.B "\-no\-repeat"
Do not auto-repeat even if key is depressed long time.
.sp 0.5
If auto-repeat is enabled (this is the default),
@@ -309,31 +309,31 @@
.sp 0.5
Resource `\fBxvkbd.autoRepeat: false\fP' has the same function.
.TP 4
-.B "-no-functionkey"
+.B "\-no\-functionkey"
Do not display function keys.
.sp 0.5
Resource `\fBxvkbd.functionkey: false\fP' has the same function.
.TP 4
-.B "-no-keypad"
+.B "\-no\-keypad"
Do not display keypad.
.sp 0.5
Resource `\fBxvkbd.keypad: false\fP' has the same function.
.TP 4
-.B "-compact"
+.B "\-compact"
Do not display function keys nor keypad.
.sp 0.5
Resource `\fBxvkbd.compact: true\fP' has the same function.
.TP 4
-.B "-keypad"
+.B "\-keypad"
Display only keypad.
This option will be ignored
-if `\fB-no-keypad\fP' or `\fB-compact\fP' is specified.
+if `\fB\-no\-keypad\fP' or `\fB\-compact\fP' is specified.
.sp 0.5
Resource `\fBxvkbd.keypadOnly: true\fP' has the same function.
.TP 4
-.BI "-text " string
+.BI "\-text " string
Send the string to the focused window
-(see also `\fB-window\fP' option).
+(see also `\fB\-window\fP' option).
.sp 0.5
If this option is specified,
\fIxvkbd\fP will not open its window
@@ -373,22 +373,22 @@
.IP " - " 6
\fB\\m\fP\fIdigit\fP - simulate click of the specified mouse button
.TP 4
-.BI "-file " filename
+.BI "\-file " filename
Send the contents of the specified file to the focused window
-(see also `\fB-window\fP' option).
-If ``\fB-\fP'' was specified as the \fIfilename\fP,
+(see also `\fB\-window\fP' option).
+If ``\fB\-\fP'' was specified as the \fIfilename\fP,
string to be sent will be read from the standard input (stdin).
.sp 0.5
If this option is specified,
\fIxvkbd\fP will not open its window
and terminate soon after sending the string.
.TP 4
-.BI "-delay " value
-Put \fIvalue\fP ms of delay for evey characters
-when sending characters with \fB-text\fP or \fB-file\fP.
+.BI "\-delay " value
+Put \fIvalue\fP ms of delay for every character
+when sending characters with \fB\-text\fP or \fB\-file\fP.
Maybe this is useful when problem arises when characters are entered too fast.
.TP 4
-.BI "-window " window
+.BI "\-window " window
Specify the ID
(hexadecimal value leaded with `\fB0x\fP', or decimal value)
or name (instance name or class name) of the window to set input focus.
@@ -402,10 +402,10 @@
If there are two or more windows which have the name specified with this option,
the window which was found first will be selected.
.TP 4
-.BI "-widget " widget-name
+.BI "\-widget " widget-name
Specify the name of the widget to set the input focus.
To use this feature, the client must support \fIEditres\fP protocol.
-In general, this option will be used with `\fB-window\fP' option.
+In general, this option will be used with `\fB\-window\fP' option.
.sp 0.5
If you want to set input focus to the widget \fBfoo.bar.zot\fP,
you can write \fBzot\fP, \fBbar.zot\fP or \fBfoo.bar.zot\fP
@@ -416,20 +416,20 @@
For example,
.sp
.in +4
-\fBxvkbd -window xarchie -widget searchText -text "\\Ca\\Ckabc\\r\fP"
+\fBxvkbd \-window xarchie \-widget searchText \-text "\\Ca\\Ckabc\\r\fP"
.sp
.in -4
will enter the string ``\fBabc\fP'' to the ``Search Term'' field
of a \fBxarchie\fP window.
.TP 4
-.B "-true-keypad"
+.B "\-true\-keypad"
If this option is specified,
\fIxvkbd\fP will attempt to use \fIkeysym\fPs such as
\fIXK_KP_1\fP instead of \fIXK_1\fP.
.sp 0.5
Resource `\fBxvkbd.keypadKeysym: true\fP' has the same function.
.TP 4
-.BI "-dict " filename
+.BI "\-dict " filename
Specify the dictionary (list of words) file to be used for
word completion.
.sp 0.5
@@ -437,7 +437,7 @@
.sp 0.5
See also ``Making your own completion dictionary''.
.TP 4
-.B "-minimizable"
+.B "\-minimizable"
Make \fIxvkbd\fP window can be minimized (iconified)
even if no window manager is in use.
When this feature is enabled,
@@ -446,7 +446,7 @@
.sp 0.5
Resource `\fBxvkbd.minimizable: true\fP' has the same function.
.TP 4
-.B "-secure"
+.B "\-secure"
Disable invocation of external commands,
including user assigned command and the online manual reader.
Connection to another displays would also be disabled.
@@ -454,25 +454,25 @@
.sp 0.5
Resource `\fBxvkbd.secure: true\fP' has the same function.
.TP 4
-.B "-nonexitable"
+.B "\-nonexitable"
Disable termination of the \fIxvkbd\fP program.
This option may be useful when \fIxvkbd\fP is to be run automatically
for systems with no keyboards and users should not terminate the \fIxvkbd\fP.
.sp 0.5
Resource `\fBxvkbd.nonexitable: true\fP' has the same function.
.TP 4
-.B "-xdm"
-Same as \fB-secure -nonexitable\fP.
+.B "\-xdm"
+Same as \fB\-secure \-nonexitable\fP.
When \fIxvkbd\fP is to be run for login screen,
it would be suggested to use this option.
.TP 4
-.BI "-modifiers " modifiers
+.BI "\-modifiers " modifiers
Normally, \fIxvkbd\fP will activate modifiers (control, shift, etc.)
only whille sending characters.
If modifiers were specified with this option,
the specified modifiers will be activated
while corresponding key on the \fIxvkbd\fP window is in active.
-For example, you can specify \fB-modifiers shift,control,meta,alt\fP
+For example, you can specify \fB\-modifiers shift,control,meta,alt\fP
to apply this for those four modifiers.
Maybe this can be useful when attempting to decorate
the mouse operations with the modifiers.
@@ -485,85 +485,85 @@
.SH "Screen Shot"
.TP 4
Default (US)
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-normal.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-normal.gif
.TP 4
Belgian
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-belgian.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-belgian.gif
.TP 4
Danish
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-danish.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-danish.gif
.TP 4
French
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-french.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-french.gif
.sp 0.5
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-french2.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-french2.gif
.TP 4
German
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-german.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-german.gif
.TP 4
Icelandic
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-icelandic.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-icelandic.gif
.TP 4
Italian
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-italian.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-italian.gif
.TP 4
Japanese (JIS-X-6002)
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-jisx6002.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-jisx6002.gif
.TP 4
Japanese (JIS-X-6004)
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-jisx6004.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-jisx6004.gif
.TP 4
Norwegian
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-norwegian.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-norwegian.gif
.TP 4
Portuguese
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-portuguese.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-portuguese.gif
.TP 4
Spanish
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-spanish.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-spanish.gif
.TP 4
Swedish
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-swedish.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-swedish.gif
.TP 4
Swiss/German
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-swissgerman.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-swissgerman.gif
.TP 4
United Kingdom
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-uk.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-uk.gif
.TP 4
Latin-1
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-latin1.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-latin1.gif
.TP 4
Small Keyboard (maybe suitable for PDAs)
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-small.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-small.gif
.TP 4
Hebrew
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-hebrew.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-hebrew.gif
.TP 4
Greek
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-greek.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-greek.gif
.TP 4
Turkish
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-turkish.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-turkish.gif
.TP 4
Slovene
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-slovene.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-slovene.gif
.TP 4
Korean
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-korean.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-korean.gif
.TP 4
Russian (Cyrillic)
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-russian.gif
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-russian.gif
.SH "Download"
.TP 4
\fILatest Official Release\fP
-\fIhttp://homepage3.nifty.com/tsato/xvkbd/xvkbd-3.0.tar.gz\fP
+\fIhttp://homepage3.nifty.com/tsato/xvkbd/xvkbd\-3.0.tar.gz\fP
.br
- source of version 3.0 (2008-05-05)
.TP 4
previous release
-http://homepage3.nifty.com/tsato/xvkbd/xvkbd-2.9.tar.gz\fP
+http://homepage3.nifty.com/tsato/xvkbd/xvkbd\-2.9.tar.gz\fP
.br
- source of version 2.9 (2008-03-30)
.PP
@@ -600,8 +600,8 @@
.IP " o " 4
set the filename to the \fB$XENVIRONMENT\fP environment variable, or
.IP " o " 4
-put them in application default directory as `\fBXVkbd-\fP\fIsuffix\fP'
-and set resource ``\fBxvkbd.customization: -\fP\fIsuffix\fP'', or
+put them in application default directory as `\fBXVkbd\-\fP\fIsuffix\fP'
+and set resource ``\fBxvkbd.customization: \-\fP\fIsuffix\fP'', or
.IP " o " 4
put them in application default directory as \fBXVkbd\fP.
.PP
@@ -613,11 +613,11 @@
system's application default directory specified with
\fB$XFILESEACHPATH\fP environment variable,
or else the directory specified when compiling the X
-(e.g., \fB/usr/lib/X11/app-defaults\fP)
+(e.g., \fB/usr/lib/X11/app\-defaults\fP)
.PP
When the application default file is to be stored
in the system's application default directory,
-the file must contain ``\fB#include "XVkbd-common"\fP''
+the file must contain ``\fB#include "XVkbd\-common"\fP''
near top of the file.
.PP
\fIxvkbd\fP is distributed with some application default files,
@@ -648,7 +648,7 @@
to display only the labels for the current shift state,
instead of trying to always display all of them in the small keytop.
.PP
-See also \fBXVkbd-small.ad\fP in the \fIxvkbd\fP distribution.
+See also \fBXVkbd\-small.ad\fP in the \fIxvkbd\fP distribution.
.SH " Removing Unwanted Keys"
Keys on \fIxvkbd\fP window can be removed by setting its width to 1.
@@ -719,12 +719,12 @@
In all of those resources, each keys are separated by spaces,
and rows of keys are terminated with `\fB \\n\\\fP'
(note that `\fB\\n\fP' must have space before it).
-Please refer \fBXVkbd-german.ad\fP and \fBXVkbd-latin1.ad\fP
+Please refer \fBXVkbd\-german.ad\fP and \fBXVkbd\-latin1.ad\fP
in the \fIxvkbd\fP distribution for more about these resources.
.PP
-\fBXVkbd-german\fP and \fBXVkbd-latin1\fP will be installed
+\fBXVkbd\-german\fP and \fBXVkbd\-latin1\fP will be installed
in the system's application default directory,
-and setting the resource ``\fBxvkbd.customization: -german\fP''
+and setting the resource ``\fBxvkbd.customization: \-german\fP''
will make \fIxvkbd\fP to use the German layout.
For another method to activate those settings, please refer
"How to Customize \fIxvkbd\fP" above.
@@ -786,7 +786,7 @@
.IP " o " 4
If \fIAlt\fP or \fIMeta\fP is not defined as modifier,
the key can't be used as modifier.
-You can use `\fBxmodmap -pm\fP' to check how modifiers are defined.
+You can use `\fBxmodmap \-pm\fP' to check how modifiers are defined.
.IP " o " 4
\fINum Lock\fP (and maybe other modifiers) on the physical keyboard
may not work correctly when \fIxvkbd\fP is in use.
@@ -797,7 +797,7 @@
http://homepage3.nifty.com/tsato/xvkbd/faq.html
.TP 4
Making your own completion dictionary
-http://homepage3.nifty.com/tsato/xvkbd/make-dic.html
+http://homepage3.nifty.com/tsato/xvkbd/make\-dic.html
.TP 4
Note about how to send key events
http://homepage3.nifty.com/tsato/xvkbd/events.html
@@ -818,26 +818,26 @@
can be entered using dedicated key combinations.
.IP " - " 6
Make keyboard layout not to be disturbed when
-window size if specified with \fB-geometry\fP option.
+window size if specified with \fB\-geometry\fP option.
.IP " - " 6
Sample app-defaults file is added.
.TP 4
Version 0.3 (2000-10-05)
.IP " - " 6
-\fB-text\fP option can now accept some modifiers
+\fB\-text\fP option can now accept some modifiers
(\fB\\S\fP, \fB\\C\fP, etc.) and any keysyms
(\fB\\[\fP\fIkeysym\fP\fB]\fP).
.IP " - " 6
In addition to the window ID,
-\fB-window\fP option can now accept window name.
+\fB\-window\fP option can now accept window name.
.IP " - " 6
-New \fB-widget\fP option to specify the widget to set the input focus.
+New \fB\-widget\fP option to specify the widget to set the input focus.
.TP 4
Version 1.0 (2000-11-03)
.IP " - " 6
Keyboard layout can be now configured with resources.
See "Customizing Keyboard Layout" above,
-and \fBXVkbd-german.ad\fP in the distribution.
+and \fBXVkbd\-german.ad\fP in the distribution.
.IP " - " 6
\fIxvkbd\fP can now send keys
with \fIMode_switch\fP (\fIAltGr\fP) modifier,
@@ -845,9 +845,9 @@
.IP " - " 6
\fIxvkbd\fP now support \fIAltGr\fP key
so that German (and some other) keyboard layout can be used.
-See \fBXVkbd-german.ad\fP in the distribution.
+See \fBXVkbd\-german.ad\fP in the distribution.
.IP " - " 6
-\fBXVkbd-german\fP and \fBXVkbd-latin1\fP are included
+\fBXVkbd\-german\fP and \fBXVkbd\-latin1\fP are included
in the distribution, which modifies keyboard layout
and put some non-ASCII keys on the \fIxvkbd\fP window.
.IP " - " 6
@@ -863,7 +863,7 @@
not shifted, \fIShift\fP, \fIAltGr\fP and \fIShift\fP-\fIAltGr\fP.
(thanks, Jim)
.IP " - " 6
-\fB-kterm\fP option and \fBxvkbd.kterm\fP resource are removed.
+\fB\-kterm\fP option and \fBxvkbd.kterm\fP resource are removed.
.TP 4
Version 1.2 (2001-02-18)
.IP " - " 6
@@ -891,7 +891,7 @@
.TP 4
Version 1.3 (2001-03-19)
.IP " - " 6
-New app-defaults file for Swiss-German layout, \fBXVkbd-swissgerman.ad\fP.
+New app-defaults file for Swiss-German layout, \fBXVkbd\-swissgerman.ad\fP.
(contributed from Marcel Portner)
.IP " - " 6
\fIxvkbd\fP now catches MappingNotify event and reload the new mapping.
@@ -941,7 +941,7 @@
.TP 4
Version 1.6 (2001-11-10)
.IP " - " 6
-New `\fB-file\fP' option to send characters in the specified file.
+New `\fB\-file\fP' option to send characters in the specified file.
(thanks, Gregory)
.IP " - " 6
New entry `\fIUse XTEST Extension?\fP' is added
@@ -960,7 +960,7 @@
Show/hide of the keypad and funcion keys on the main window
can now be toggled from the main menu.
.IP " - " 6
-New app-defaults file for French layout, \fBXVkbd-french.ad\fP.
+New app-defaults file for French layout, \fBXVkbd\-french.ad\fP.
(contributed from Jean-Pierre Demailly)
.TP 4
Version 2.1 (2002-01-27)
@@ -968,9 +968,9 @@
When height of the \fIxvkbd\fP window is smaller than
\fBXVkbd.modalThreshold\fP,
\fIxvkbd\fP will now automatically switch the keytop
-as if \fB-modal\fP option was specified.
+as if \fB\-modal\fP option was specified.
.IP " - " 6
-\fB\\[\fP\fIkeysym\fP\fB]\fP in \fB-text\fP option
+\fB\\[\fP\fIkeysym\fP\fB]\fP in \fB\-text\fP option
would send wrong keys - this problem is now fixed.
.IP " - " 6
Target \fBdistclean\fP in the \fBImakefile\fP is renamed
@@ -983,8 +983,8 @@
String assigned to function keys can now be edited on a panel popped up via
"\fIEdit Function Keys...\fP" in the main menu.
.IP " - " 6
-When ``\fB-\fP'' was specified as the filename parameter
-for \fB-file\fP option, \fIxvkbd\fP will now read
+When ``\fB\-\fP'' was specified as the filename parameter
+for \fB\-file\fP option, \fIxvkbd\fP will now read
its standard input (stdin) to get the string to be sent.
.IP " - " 6
In the previous release,
@@ -1013,7 +1013,7 @@
United Kingdom
and Latin-1.
.IP " - " 6
-\fB-keypad\fP option would crash previous version of \fIxvkbd\fP
+\fB\-keypad\fP option would crash previous version of \fIxvkbd\fP
- this problem is now fixed.
.TP 4
Version 2.4 (2002-10-02)
@@ -1074,24 +1074,24 @@
.IP " - " 6
It is now possible to minimize (iconify) the main window
even if no window manager is in use.
-This feature can be activated by \fB-minimizable\fP option
+This feature can be activated by \fB\-minimizable\fP option
or \fBxvkbd.minimizable\fP resource.
.IP " - " 6
Experimental code to keep the \fIxvkbd\fP window always on the top of the display.
-This feature can be activated by \fB-always-on-top\fP option,
+This feature can be activated by \fB\-always\-on\-top\fP option,
\fBxvkbd.alwaysOnTop\fP resource
or the "Always on Top?" entry in the main menu.
Care should be taken as this feature can cause problem in some situations.
.IP " - " 6
-\fB-text\fP option now support combinations of modifiers and a special key.
-For example, \fB-text '\\C\\A\\d'\fP can be used for Control-Alt-Delete key combination.
+\fB\-text\fP option now support combinations of modifiers and a special key.
+For example, \fB\-text '\\C\\A\\d'\fP can be used for Control-Alt-Delete key combination.
.IP " - " 6
New options:
-\fB-secure\fP option (\fBxvkbd.secure\fP resource)
+\fB\-secure\fP option (\fBxvkbd.secure\fP resource)
which disables invocation of external commands,
-\fB-nonexitable\fP option (\fBxvkbd.nonexitable\fP resource)
+\fB\-nonexitable\fP option (\fBxvkbd.nonexitable\fP resource)
which inhibits termination of the program,
-and \fB-xdm\fP option which is equivalent to \fB-secure -nonexitable\fP
+and \fB\-xdm\fP option which is equivalent to \fB\-secure \-nonexitable\fP
and maybe useful when run \fIxvkbd\fP from a display manager.
.TP 4
Version 2.7a (2005-05-07)
@@ -1107,17 +1107,17 @@
Reference to the target bitmap is changed from
\fB/usr/X11R6/include/X11/bitmaps/target\fP to \fB/usr/include/X11/bitmaps/target\fP.
.IP " - " 6
-New options: \fB-no-back-pointer\fP, \fB-no-sync\fP, \fB-modifiers\fP.
+New options: \fB\-no\-back\-pointer\fP, \fB\-no\-sync\fP, \fB\-modifiers\fP.
.TP 4
Version 2.9 (2008-03-30)
.IP " - " 6
Russian (Cyrillic) keyboard layout supported. (thanks, Victor)
.IP " - " 6
-New \fB-delay\fP option.
+New \fB\-delay\fP option.
.IP " - " 6
-\fB\\D\fP special sequence in \fB-text\fP can be used to put a delay in specific position.
+\fB\\D\fP special sequence in \fB\-text\fP can be used to put a delay in specific position.
.IP " - " 6
-\fB-text\fP can now simulate mouse operation
+\fB\-text\fP can now simulate mouse operation
via \fB\\x\fP, \fB\\y\fP and \fB\\m\fP special sequences.
.TP 4
Version 3.0 (2008-05-05)