From c9c867074c4c5056863771ec27ed800954586f23 Mon Sep 17 00:00:00 2001 From: Michel-FK Date: Mon, 5 Apr 2021 12:11:47 +0200 Subject: [PATCH] add help Signed-off-by: Michel-FK --- README.md | 73 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ main.c | 70 ++++++++++++++++++++++++++++++++++++++++++++++------ 2 files changed, 136 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 4a66081..5956e51 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,75 @@ # fkgpiod +fkgpiod version 0.0.1 FunKey S GPIO daemon + +Copyright (C) 2020-2021, Vincent Buso , +Copyright (C) 2021, Michel Stempin , +All rights reserved. +Released under the GNU Lesser General Public License version 2.1 or later + +``` +Usage: fkgpiod [options] [config_file] +Options: + -d, -D, --daemonize Launch as a background daemon + -h, -H, --help Print option help + -k, -K, --kill Kill background daemon + -v, --version Print version information +``` + +## Available script commands (commands are not case sensitive): + +``` +DUMP Dump the button mapping +KEYDOWN Send a key down event with the given keycode +KEYPRESS Send key press event with the given keycode +KEYUP Send a key up event with the given keycode +LOAD Load a configuration file +MAP TO KEY Map a button combination to a keycode +MAP TO COMMAND Map a button combination to a Shell command +RESET Reset the button mapping +SLEEP Sleep for the given delay in ms +TYPE Type in a string +UNMAP Unmap a button combination +``` + +where: + - is a list of UP, DOWN, LEFT, RIGHT, A, B, L, R, X, Y, MENU, START or FN + separated by "+" signs + - is any valid Shell command with its arguments + - is the full path to a configurtion file + - is a delay in ms + - is a character string + - is among: + - KEY_0 to KEY_9, KEY_A to KEY_Z + - KEY_F1 to KEY_F24, KEY_KP0 to KEY_KP9, KEY_PROG1 to KEY_PROG4 + - BTN_0 to BTN_9, BTN_A to BTN_C, BTN_X to BTN_Z, BTN_BASE2 to BTN_BASE6 + - BTN_BACK, BTN_BASE, BTN_DEAD, BTN_EXTRA, BTN_FORWARD, BTN_GAMEPAD, BTN_JOYSTICK, BTN_LEFT, + BTN_MIDDLE, BTN_MISC, BTN_MODE, BTN_MOUSE, BTN_PINKIE, BTN_RIGHT, BTN_SELECT, BTN_SIDE, + BTN_START, BTN_TASK, BTN_THUMB, BTN_THUMB2, BTN_THUMBL, BTN_THUMBR, BTN_TL, BTN_TL2, + BTN_TOP, BTN_TOP2, BTN_TR, BTN_TR2, BTN_TRIGGER, + - KEY_102ND, KEY_AGAIN, KEY_ALTERASE, KEY_APOSTROPHE, KEY_BACK, KEY_BACKSLASH, KEY_BACKSPACE, + KEY_BASSBOOST, KEY_BATTERY, KEY_BLUETOOTH, KEY_BOOKMARKS, KEY_BRIGHTNESSDOWN, + KEY_BRIGHTNESSUP, KEY_BRIGHTNESS_CYCLE, KEY_BRIGHTNESS_ZERO, KEY_CALC, KEY_CAMERA, + KEY_CANCEL, KEY_CAPSLOCK, KEY_CHAT, KEY_CLOSE, KEY_CLOSECD, KEY_COFFEE, KEY_COMMA, + KEY_COMPOSE, KEY_COMPUTER, KEY_CONFIG, KEY_CONNECT, KEY_COPY, KEY_CUT, KEY_CYCLEWINDOWS, + KEY_DASHBOARD, KEY_DELETE, KEY_DELETEFILE, KEY_DIRECTION, KEY_DISPLAY_OFF, KEY_DOCUMENTS, + KEY_DOT, KEY_DOWN, KEY_EDIT, KEY_EJECTCD, KEY_EJECTCLOSECD, KEY_EMAIL, KEY_END, KEY_ENTER, + KEY_EQUAL, KEY_ESC, KEY_EXIT, KEY_FASTFORWARD, KEY_FILE, KEY_FINANCE, KEY_FIND, + KEY_FORWARD, KEY_FORWARDMAIL, KEY_FRONT, KEY_GRAVE, KEY_HANGEUL, KEY_HANGUEL, KEY_HANJA, + KEY_HELP, KEY_HENKAN, KEY_HIRAGANA, KEY_HOME, KEY_HOMEPAGE, KEY_HP, KEY_INSERT, KEY_ISO, + KEY_KATAKANA, KEY_KATAKANAHIRAGANA, KEY_KBDILLUMDOWN, KEY_KBDILLUMTOGGLE, KEY_KBDILLUMUP, + KEY_KPASTERISK,KEY_KPCOMMA, KEY_KPDOT, KEY_KPENTER, KEY_KPEQUAL, KEY_KPJPCOMMA, + KEY_KPLEFTPAREN, KEY_KPMINUS, KEY_KPPLUS, KEY_KPPLUSMINUS, KEY_KPRIGHTPAREN, KEY_KPSLASH, + KEY_LEFT, KEY_LEFTALT, KEY_LEFTBRACE, KEY_LEFTCTRL, KEY_LEFTMETA, KEY_LEFTSHIFT, + KEY_LINEFEED, KEY_MACRO, KEY_MAIL, KEY_MEDIA, KEY_MENU, KEY_MICMUTE, KEY_MINUS, KEY_MOVE, + KEY_MSDOS, KEY_MUHENKAN, KEY_MUTE, KEY_NEW, KEY_NEXTSONG, KEY_NUMLOCK, KEY_OPEN, + KEY_PAGEDOWN, KEY_PAGEUP, KEY_PASTE, KEY_PAUSE, KEY_PAUSECD, KEY_PHONE, KEY_PLAY, + KEY_PLAYCD, KEY_PLAYPAUSE, KEY_POWER, EY_PREVIOUSSONG, KEY_PRINT, KEY_PROPS, KEY_QUESTION, + KEY_RECORD, KEY_REDO, KEY_REFRESH, KEY_REPLY, KEY_REWIND, KEY_RFKILL, KEY_RIGHT, + KEY_RIGHTALT, KEY_RIGHTBRACE, KEY_RIGHTCTRL, KEY_RIGHTMETA, KEY_RIGHTSHIFT, KEY_RO, + KEY_SAVE, KEY_SCALE, KEY_SCREENLOCK, KEY_SCROLLDOWN, KEY_SCROLLLOCK, KEY_SCROLLUP, + KEY_SEARCH, KEY_SEMICOLON, KEY_SEND, KEY_SENDFILE, KEY_SETUP, KEY_SHOP, KEY_SLASH, + KEY_SLEEP, KEY_SOUND, KEY_SPACE, KEY_SPORT, KEY_STOP, KEY_STOPCD, KEY_SUSPEND, + KEY_SWITCHVIDEOMODE, KEY_SYSRQ, KEY_TAB, KEY_UNDO, KEY_UNKNOWN, KEY_UP, KEY_UWB, + KEY_VIDEO_NEXT, KEY_VIDEO_PREV, KEY_VOLUMEDOWN, KEY_VOLUMEUP, KEY_WAKEUP, KEY_WIMAX, + KEY_WLAN, KEY_WWW, KEY_XFER, KEY_YEN, KEY_ZENKAKUHANKAKU diff --git a/main.c b/main.c index 487ab1d..06fbfee 100644 --- a/main.c +++ b/main.c @@ -48,12 +48,68 @@ static const char *config_file = "fkgpiod.conf"; /* Print usage information */ static void print_usage(void) { - printf("Usage: fkgpiod [options] [config_file]\n"); - printf("Options:\n"); - printf(" -d, -D, --daemonize Launch as a background daemon\n"); - printf(" -h, -H, --help Print option help\n"); - printf(" -k, -K, --kill Kill background daemon\n"); - printf(" -v, --version Print version information\n"); + printf("Usage: fkgpiod [options] [config_file]\n" + "Options:\n" + " -d, -D, --daemonize Launch as a background daemon\n" + " -h, -H, --help Print option help\n" + " -k, -K, --kill Kill background daemon\n" + " -v, --version Print version information\n" + "\n" + "Available script commands (commands are not case sensitive):\n" + "-----------------------------------------------------------\n" + "DUMP Dump the button mapping\n" + "KEYDOWN Send a key down event with the given keycode\n" + "KEYPRESS Send key press event with the given keycode\n" + "KEYUP Send a key up event with the given keycode\n" + "LOAD Load a configuration file\n" + "MAP TO KEY Map a button combination to a keycode\n" + "MAP TO COMMAND Map a button combination to a Shell command\n" + "RESET Reset the button mapping\n" + "SLEEP Sleep for the given delay in ms\n" + "TYPE Type in a string\n" + "UNMAP Unmap a button combination\n" + "\n" + "where:\n" + " - is a list of UP, DOWN, LEFT, RIGHT, A, B, L, R, X, Y, MENU, START or FN\n" + " separated by \"+\" signs\n" + " - is any valid Shell command with its arguments\n" + " - is the full path to a configurtion file\n" + " - is a delay in ms\n" + " - is a character string\n" + " - is among:\n" + " - KEY_0 to KEY_9, KEY_A to KEY_Z\n" + " - KEY_F1 to KEY_F24, KEY_KP0 to KEY_KP9, KEY_PROG1 to KEY_PROG4\n" + " - BTN_0 to BTN_9, BTN_A to BTN_C, BTN_X to BTN_Z, BTN_BASE2 to BTN_BASE6\n" + " - BTN_BACK, BTN_BASE, BTN_DEAD, BTN_EXTRA, BTN_FORWARD, BTN_GAMEPAD, BTN_JOYSTICK, BTN_LEFT,\n" + " BTN_MIDDLE, BTN_MISC, BTN_MODE, BTN_MOUSE, BTN_PINKIE, BTN_RIGHT, BTN_SELECT, BTN_SIDE,\n" + " BTN_START, BTN_TASK, BTN_THUMB, BTN_THUMB2, BTN_THUMBL, BTN_THUMBR, BTN_TL, BTN_TL2, \n" + " BTN_TOP, BTN_TOP2, BTN_TR, BTN_TR2, BTN_TRIGGER,\n" + " - KEY_102ND, KEY_AGAIN, KEY_ALTERASE, KEY_APOSTROPHE, KEY_BACK, KEY_BACKSLASH, KEY_BACKSPACE,\n" + " KEY_BASSBOOST, KEY_BATTERY, KEY_BLUETOOTH, KEY_BOOKMARKS, KEY_BRIGHTNESSDOWN,\n" + " KEY_BRIGHTNESSUP, KEY_BRIGHTNESS_CYCLE, KEY_BRIGHTNESS_ZERO, KEY_CALC, KEY_CAMERA,\n" + " KEY_CANCEL, KEY_CAPSLOCK, KEY_CHAT, KEY_CLOSE, KEY_CLOSECD, KEY_COFFEE, KEY_COMMA,\n" + " KEY_COMPOSE, KEY_COMPUTER, KEY_CONFIG, KEY_CONNECT, KEY_COPY, KEY_CUT, KEY_CYCLEWINDOWS,\n" + " KEY_DASHBOARD, KEY_DELETE, KEY_DELETEFILE, KEY_DIRECTION, KEY_DISPLAY_OFF, KEY_DOCUMENTS,\n" + " KEY_DOT, KEY_DOWN, KEY_EDIT, KEY_EJECTCD, KEY_EJECTCLOSECD, KEY_EMAIL, KEY_END, KEY_ENTER,\n" + " KEY_EQUAL, KEY_ESC, KEY_EXIT, KEY_FASTFORWARD, KEY_FILE, KEY_FINANCE, KEY_FIND,\n" + " KEY_FORWARD, KEY_FORWARDMAIL, KEY_FRONT, KEY_GRAVE, KEY_HANGEUL, KEY_HANGUEL, KEY_HANJA,\n" + " KEY_HELP, KEY_HENKAN, KEY_HIRAGANA, KEY_HOME, KEY_HOMEPAGE, KEY_HP, KEY_INSERT, KEY_ISO,\n" + " KEY_KATAKANA, KEY_KATAKANAHIRAGANA, KEY_KBDILLUMDOWN, KEY_KBDILLUMTOGGLE, KEY_KBDILLUMUP,\n" + " KEY_KPASTERISK,KEY_KPCOMMA, KEY_KPDOT, KEY_KPENTER, KEY_KPEQUAL, KEY_KPJPCOMMA,\n" + " KEY_KPLEFTPAREN, KEY_KPMINUS, KEY_KPPLUS, KEY_KPPLUSMINUS, KEY_KPRIGHTPAREN, KEY_KPSLASH,\n" + " KEY_LEFT, KEY_LEFTALT, KEY_LEFTBRACE, KEY_LEFTCTRL, KEY_LEFTMETA, KEY_LEFTSHIFT,\n" + " KEY_LINEFEED, KEY_MACRO, KEY_MAIL, KEY_MEDIA, KEY_MENU, KEY_MICMUTE, KEY_MINUS, KEY_MOVE,\n" + " KEY_MSDOS, KEY_MUHENKAN, KEY_MUTE, KEY_NEW, KEY_NEXTSONG, KEY_NUMLOCK, KEY_OPEN,\n" + " KEY_PAGEDOWN, KEY_PAGEUP, KEY_PASTE, KEY_PAUSE, KEY_PAUSECD, KEY_PHONE, KEY_PLAY,\n" + " KEY_PLAYCD, KEY_PLAYPAUSE, KEY_POWER, EY_PREVIOUSSONG, KEY_PRINT, KEY_PROPS, KEY_QUESTION,\n" + " KEY_RECORD, KEY_REDO, KEY_REFRESH, KEY_REPLY, KEY_REWIND, KEY_RFKILL, KEY_RIGHT,\n" + " KEY_RIGHTALT, KEY_RIGHTBRACE, KEY_RIGHTCTRL, KEY_RIGHTMETA, KEY_RIGHTSHIFT, KEY_RO,\n" + " KEY_SAVE, KEY_SCALE, KEY_SCREENLOCK, KEY_SCROLLDOWN, KEY_SCROLLLOCK, KEY_SCROLLUP,\n" + " KEY_SEARCH, KEY_SEMICOLON, KEY_SEND, KEY_SENDFILE, KEY_SETUP, KEY_SHOP, KEY_SLASH,\n" + " KEY_SLEEP, KEY_SOUND, KEY_SPACE, KEY_SPORT, KEY_STOP, KEY_STOPCD, KEY_SUSPEND,\n" + " KEY_SWITCHVIDEOMODE, KEY_SYSRQ, KEY_TAB, KEY_UNDO, KEY_UNKNOWN, KEY_UP, KEY_UWB,\n" + " KEY_VIDEO_NEXT, KEY_VIDEO_PREV, KEY_VOLUMEDOWN, KEY_VOLUMEUP, KEY_WAKEUP, KEY_WIMAX,\n" + " KEY_WLAN, KEY_WWW, KEY_XFER, KEY_YEN, KEY_ZENKAKUHANKAKU\n"); } /* Print version information */ @@ -61,7 +117,7 @@ static void print_version(void) { printf("fkgpiod version "VERSION"\n"); printf("FunKey S GPIO daemon\n\n"); - printf("Copyright (C) 2021, Vincent Buso ,\n"); + printf("Copyright (C) 2020-2021, Vincent Buso ,\n"); printf("Copyright (C) 2021, Michel Stempin ,\n"); printf("All rights reserved.\n"); printf("Released under the GNU Lesser General Public License version 2.1 or later\n");