static char doc[] = "grrobot - Ricochet Robot using GTK+ and Xr";
-/* XXX: SAMPLE: */
-static char args_doc[] = "<file>";
+static char args_doc[] = "[file]";
-static struct argp_option options[] = {
- /* name, key, arg, flags, doc */
- {"host", 'h', "HOST", 0, "Host running RR server"},
- {"port", 'p', "PORT", 0, "Port of server"},
- {"user", 'u', "USERNAME", 0, "Username for conection"},
- {"game", 'g', "GAME", 0, "Game to join"},
- { 0 }
+static struct option options[] = {
+ {"host", required_argument, 0, 'h'},
+ {"port", required_argument, 0, 'p'},
+ {"user", required_argument, 0, 'u'},
+ {"game", required_argument, 0, 'g'},
+ {"watch", no_argument, 0, 'w'},
+ {0, 0, 0, 0}
};
static error_t
case 'g':
args->game = arg;
break;
-
- case ARGP_KEY_ARG:
- argp_usage (state);
+ case 'w':
+ args->watch = 1;
break;
-/*
- case ARGP_KEY_END:
- if (state->arg_num < 1)
- argp_usage (state);
+ case ARGP_KEY_ARG:
+ args->file = arg;
break;
-*/
default:
return ARGP_ERR_UNKNOWN;
args->game = getenv ("RR_GAME");
if (args->game == NULL)
args->game = ARGS_GAME_DEFAULT;
+ args->watch = 0;
- return argp_parse (&argp, argc, argv, 0, 0, args);
+ args->file = NULL;
+ return 0;
+ return argp_parse (&argp, argc, argv,
+ ARGP_LONG_ONLY,
+ NULL, args);
}