From 754d33d81590ffe5831b28312ee16d9db7ef7db8 Mon Sep 17 00:00:00 2001 From: Mike Gabriel Date: Tue, 5 Jul 2016 22:17:51 +0200 Subject: README.keystrokes: Move from base folder to doc/nxagent/. --- doc/nxagent/README.keystrokes | 102 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+) create mode 100644 doc/nxagent/README.keystrokes (limited to 'doc/nxagent') diff --git a/doc/nxagent/README.keystrokes b/doc/nxagent/README.keystrokes new file mode 100644 index 000000000..08cdafb46 --- /dev/null +++ b/doc/nxagent/README.keystrokes @@ -0,0 +1,102 @@ +Configurable keybindings in nxagent + +Keybindings in the redistributed x2go version of nxagent can now be configured +by the user. This is done via a configuration file. + +File location +------------- + +nxagent parses the first available configuration file and ignores all others. + +If nxagent is called without branding, it searches: +- in the location given by the '-keystrokefile' command line parameter +- in the location given by the NXAGENT_KEYSTROKEFILE environment variable +- in ~/.nx/config/keystrokes.cfg +- in /etc/nxagent/keystrokes.cfg + +If nxagent is called with X2Go branding (i.e., as x2goagent), it searches: +- in the location given by the '-keystrokefile' command line parameter +- in the location given by the NXAGENT_KEYSTROKEFILE environment variable +- in ~/.x2go/config/keystrokes.cfg +- in /etc/x2go/keystrokes.cfg + +If none of these files are accessible, the default configuration is used which +is the same as the old, traditional nxagent keybindings. + +File format +----------- + +The configuration file is XML with the following format: + + + + + + + + + + + + + +Each 'action' defines an action to be executed when receiving that keystroke. A +list of possible actions is given below. Some of those actions are only +available with debug builds of nxagent. + +Keys are given as a combination of 'key' and (optionally) a number of +modifiers. The key attribute is evaluated into a X11 key via the usual +XStringToKeysym function. A list of possible keys can be found in +/usr/include/X11/keysymdef.h, the names are specified without the leading +'XK_'. Evaluation is case-sensitive, so, 'space' and 'Escape' will work while +'Space' and 'escape' won't. + +Modifiers are given as boolean attributes, possible modifiers are Mod1, Mod2, +Mod3, Mod4, Control, Shift, Lock. Sensible combinations strongly depend on your +keyboard configuration, but usually you will need Mod1 and Control. Boolean in +this context means '0', 'false' and an unspecified attribute are false, anything +else is considered true. + +Everything in this file is case-sensitive. Unknown lines are ignored. +Keybindings are evaluated from top to bottom, so if a keybinding matches, other +keybindings further down will be ignored. The contents of the file replaces the +default keybindings, and only one file is read, no merging between different +configuration files is done. This also means that an empty or invalid configuration +file deactivates all keybindings. + +List of possible 'action' attributes: +------------------------------------- + +close_session + This terminates the session. +switch_all_screens +minimize + This will minimize the client window (even for fullscreen sessions.) +left +up +right +down +resize + This action switches between the auto-resize and viewport mode (static size). The default is auto-resize. In viewport mode one can use the 'viewport_move_up', 'viewport_move_down', 'viewport_move_left' and 'viewport_move_right' actions to move within the image. +defer + Works like 'ignore' to make some keys be ignored/defunct inside the session. +ignore + Makes it possible to add 'ignore', as in nothing happens when certain keys are pressed. +fullscreen + Switches the client window into or out of fullscreen mode. +viewport_move_left + Moves the image viewport to the left. +viewport_move_up + Moves the image viewport up. +viewport_move_right + Moves the image viewport to the right. +viewport_move_down + Moves the image viewport down. + +Only in builds with certain debugging options enabled, ignored otherwise: +force_synchronization + Forces the drawing of elements to be synchronized which can fix some visual bugs. +debug_tree +regions_on_screen +test_input +deactivate_input_devices_grab -- cgit v1.2.3 From 3042c5064b0bde6e27ed010386d7941deb83179e Mon Sep 17 00:00:00 2001 From: Ulrich Sibiller Date: Mon, 13 Mar 2017 20:50:53 +0100 Subject: Keystroke.c: add missing Mod5 modifier --- doc/nxagent/README.keystrokes | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/nxagent') diff --git a/doc/nxagent/README.keystrokes b/doc/nxagent/README.keystrokes index 08cdafb46..32197a79f 100644 --- a/doc/nxagent/README.keystrokes +++ b/doc/nxagent/README.keystrokes @@ -52,7 +52,7 @@ XStringToKeysym function. A list of possible keys can be found in 'Space' and 'escape' won't. Modifiers are given as boolean attributes, possible modifiers are Mod1, Mod2, -Mod3, Mod4, Control, Shift, Lock. Sensible combinations strongly depend on your +Mod3, Mod4, Mod5, Control, Shift, Lock. Sensible combinations strongly depend on your keyboard configuration, but usually you will need Mod1 and Control. Boolean in this context means '0', 'false' and an unspecified attribute are false, anything else is considered true. -- cgit v1.2.3 From c134b93ac09ff520539dd73482455808c0e22a38 Mon Sep 17 00:00:00 2001 From: Ulrich Sibiller Date: Mon, 13 Mar 2017 21:19:48 +0100 Subject: Keystroke.c: use an own environment variable for X2Go --- doc/nxagent/README.keystrokes | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'doc/nxagent') diff --git a/doc/nxagent/README.keystrokes b/doc/nxagent/README.keystrokes index 32197a79f..ad850f6df 100644 --- a/doc/nxagent/README.keystrokes +++ b/doc/nxagent/README.keystrokes @@ -16,7 +16,7 @@ If nxagent is called without branding, it searches: If nxagent is called with X2Go branding (i.e., as x2goagent), it searches: - in the location given by the '-keystrokefile' command line parameter -- in the location given by the NXAGENT_KEYSTROKEFILE environment variable +- in the location given by the X2GO_KEYSTROKEFILE environment variable - in ~/.x2go/config/keystrokes.cfg - in /etc/x2go/keystrokes.cfg -- cgit v1.2.3 From abf6242128394aa2374f3882252dfc84d4499c33 Mon Sep 17 00:00:00 2001 From: Ulrich Sibiller Date: Mon, 13 Mar 2017 22:00:23 +0100 Subject: Keystroke.c: add new keystroke to reread keystroke config Default is ctrl-alt-k --- doc/nxagent/README.keystrokes | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'doc/nxagent') diff --git a/doc/nxagent/README.keystrokes b/doc/nxagent/README.keystrokes index ad850f6df..7edd340d2 100644 --- a/doc/nxagent/README.keystrokes +++ b/doc/nxagent/README.keystrokes @@ -92,6 +92,10 @@ viewport_move_right Moves the image viewport to the right. viewport_move_down Moves the image viewport down. +reread_keystrokes + forces nxagent to re-read the keystroke + configuration. Useful to add/changes keystrokes for a running + session. Only in builds with certain debugging options enabled, ignored otherwise: force_synchronization -- cgit v1.2.3 From 6f4eb15408c9b7f13ff9e2765a7a50bace0dfae1 Mon Sep 17 00:00:00 2001 From: Ulrich Sibiller Date: Mon, 13 Mar 2017 22:19:17 +0100 Subject: Update keystroke readme --- doc/nxagent/README.keystrokes | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'doc/nxagent') diff --git a/doc/nxagent/README.keystrokes b/doc/nxagent/README.keystrokes index 7edd340d2..96bc158d2 100644 --- a/doc/nxagent/README.keystrokes +++ b/doc/nxagent/README.keystrokes @@ -64,12 +64,17 @@ default keybindings, and only one file is read, no merging between different configuration files is done. This also means that an empty or invalid configuration file deactivates all keybindings. +If an attribute occurs more than once in a line the last one wins. + List of possible 'action' attributes: ------------------------------------- close_session This terminates the session. +fullscreen + Switches the client window into or out of fullscreen mode, using only the current head. switch_all_screens + Switches the client window into or out of fullscreen mode, using all available heads. minimize This will minimize the client window (even for fullscreen sessions.) left @@ -77,13 +82,15 @@ up right down resize - This action switches between the auto-resize and viewport mode (static size). The default is auto-resize. In viewport mode one can use the 'viewport_move_up', 'viewport_move_down', 'viewport_move_left' and 'viewport_move_right' actions to move within the image. + This action switches between the auto-resize and viewport mode + (static size). The default is auto-resize. In viewport mode one can + use the 'viewport_move_up', 'viewport_move_down', + 'viewport_move_left' and 'viewport_move_right' actions to move + within the image. defer - Works like 'ignore' to make some keys be ignored/defunct inside the session. + activate/deactivate deferred screen updates. ignore Makes it possible to add 'ignore', as in nothing happens when certain keys are pressed. -fullscreen - Switches the client window into or out of fullscreen mode. viewport_move_left Moves the image viewport to the left. viewport_move_up -- cgit v1.2.3 From 9f0713c0433ab7b95b301b1cc3118ef4dbc3d8a7 Mon Sep 17 00:00:00 2001 From: Ulrich Sibiller Date: Mon, 27 Mar 2017 22:07:51 +0200 Subject: doc: document debugging keystrokes --- doc/nxagent/README.keystrokes | 6 ------ doc/nxagent/README.keystrokes.debug | 27 +++++++++++++++++++++++++++ 2 files changed, 27 insertions(+), 6 deletions(-) create mode 100644 doc/nxagent/README.keystrokes.debug (limited to 'doc/nxagent') diff --git a/doc/nxagent/README.keystrokes b/doc/nxagent/README.keystrokes index 96bc158d2..f9b4bf3a1 100644 --- a/doc/nxagent/README.keystrokes +++ b/doc/nxagent/README.keystrokes @@ -103,11 +103,5 @@ reread_keystrokes forces nxagent to re-read the keystroke configuration. Useful to add/changes keystrokes for a running session. - -Only in builds with certain debugging options enabled, ignored otherwise: force_synchronization Forces the drawing of elements to be synchronized which can fix some visual bugs. -debug_tree -regions_on_screen -test_input -deactivate_input_devices_grab diff --git a/doc/nxagent/README.keystrokes.debug b/doc/nxagent/README.keystrokes.debug new file mode 100644 index 000000000..85ec2613a --- /dev/null +++ b/doc/nxagent/README.keystrokes.debug @@ -0,0 +1,27 @@ +Configurable keybindings for debugging nxagent + +Some keystrokes are only available in special debug builds of nxagent +and will be ignored otherwise. These are + +debug_tree + Show the window trees of both internal and external + windows. Included if DEBUG_TREE is defined. + +regions_on_screen + Make corrupted regions visible. Included if DUMP is defined. + +test_input + Activate/deactive input device debugging. Included if NX_DEBUG_INPUT + is defined. + +deactivate_input_devices_grab + Release grab of input devices. Included if NX_DEBUG_INPUT is + defined. + +They can be configured by adding these lines to keystrokes.cfg, below +keystrokes represent the default: + + + + + -- cgit v1.2.3 From d28cf55743a5acadd0fa650a5559083c210449b8 Mon Sep 17 00:00:00 2001 From: Ulrich Sibiller Date: Mon, 27 Mar 2017 22:46:47 +0200 Subject: doc: rework keystroke documentation --- doc/nxagent/README.keystrokes | 93 +++++++++++++++++++++++-------------------- 1 file changed, 50 insertions(+), 43 deletions(-) (limited to 'doc/nxagent') diff --git a/doc/nxagent/README.keystrokes b/doc/nxagent/README.keystrokes index f9b4bf3a1..612e710cc 100644 --- a/doc/nxagent/README.keystrokes +++ b/doc/nxagent/README.keystrokes @@ -1,6 +1,6 @@ Configurable keybindings in nxagent -Keybindings in the redistributed x2go version of nxagent can now be configured +Keybindings in the redistributed x2go version of nxagent can be configured by the user. This is done via a configuration file. File location @@ -40,29 +40,31 @@ The configuration file is XML with the following format: -Each 'action' defines an action to be executed when receiving that keystroke. A -list of possible actions is given below. Some of those actions are only -available with debug builds of nxagent. +Each 'action' defines an action to be executed when receiving that +keystroke. A list of possible actions is given below. Some of those +actions are only available with debug builds of nxagent. Keys are given as a combination of 'key' and (optionally) a number of modifiers. The key attribute is evaluated into a X11 key via the usual XStringToKeysym function. A list of possible keys can be found in -/usr/include/X11/keysymdef.h, the names are specified without the leading -'XK_'. Evaluation is case-sensitive, so, 'space' and 'Escape' will work while -'Space' and 'escape' won't. +/usr/include/X11/keysymdef.h, the names are specified without the +leading 'XK_'. Evaluation is case-sensitive, so, 'space' and 'Escape' +will work while 'Space' and 'escape' won't. -Modifiers are given as boolean attributes, possible modifiers are Mod1, Mod2, -Mod3, Mod4, Mod5, Control, Shift, Lock. Sensible combinations strongly depend on your -keyboard configuration, but usually you will need Mod1 and Control. Boolean in -this context means '0', 'false' and an unspecified attribute are false, anything -else is considered true. +Modifiers are given as boolean attributes, possible modifiers are +Mod1, Mod2, Mod3, Mod4, Mod5, Control, Shift, Lock. Sensible +combinations strongly depend on your keyboard configuration, but +usually you will need Mod1 and Control. Boolean in this context means +'0', 'false' and an unspecified attribute are false, anything else is +considered true. Everything in this file is case-sensitive. Unknown lines are ignored. -Keybindings are evaluated from top to bottom, so if a keybinding matches, other -keybindings further down will be ignored. The contents of the file replaces the -default keybindings, and only one file is read, no merging between different -configuration files is done. This also means that an empty or invalid configuration -file deactivates all keybindings. +Keybindings are evaluated from top to bottom, so if a keybinding +matches, other keybindings further down will be ignored. The contents +of the file replaces the default keybindings, and only one file is +read, no merging between different configuration files is done. This +also means that an empty or invalid configuration file deactivates all +keybindings. If an attribute occurs more than once in a line the last one wins. @@ -71,37 +73,42 @@ List of possible 'action' attributes: close_session This terminates the session. + fullscreen - Switches the client window into or out of fullscreen mode, using only the current head. + Switches the client window into or out of fullscreen mode, using + only the current head. + switch_all_screens - Switches the client window into or out of fullscreen mode, using all available heads. + Switches the client window into or out of fullscreen mode, using all + available heads. + minimize - This will minimize the client window (even for fullscreen sessions.) -left -up -right -down + This will minimize the client window (even for fullscreen sessions). + resize - This action switches between the auto-resize and viewport mode - (static size). The default is auto-resize. In viewport mode one can - use the 'viewport_move_up', 'viewport_move_down', - 'viewport_move_left' and 'viewport_move_right' actions to move - within the image. + This action switches between the auto-resize (default) and viewport + mode. In viewport mode the xserver screen size stays static even + if the nxagent window is resized. You will possibly only see a part of + the screen and can scroll around using the following actions: +viewport_move_up/down + Moves the viewport up/down by the height of the visiable area. +viewport_move_left/right + Moves the viewport left/right by the width of the visible area. +up/down/left/right + Smoothly moves the viewport up/down/left/right with increasing step + size (maximum step size is 200px). + defer - activate/deactivate deferred screen updates. + Activates/deactivates deferred screen updates. + ignore - Makes it possible to add 'ignore', as in nothing happens when certain keys are pressed. -viewport_move_left - Moves the image viewport to the left. -viewport_move_up - Moves the image viewport up. -viewport_move_right - Moves the image viewport to the right. -viewport_move_down - Moves the image viewport down. + Ignores the following keystroke, nothing will happen when this + keystroke is pressed. + reread_keystrokes - forces nxagent to re-read the keystroke - configuration. Useful to add/changes keystrokes for a running - session. + Forces nxagent to re-read the keystroke configuration. Useful to + add/change keystrokes to a running session. + force_synchronization - Forces the drawing of elements to be synchronized which can fix some visual bugs. + Forces immediate drawing of elements to be synchronized which can + fix some visual bugs. -- cgit v1.2.3 From ee18cd43d873bc814ca40faabd29cc486061969f Mon Sep 17 00:00:00 2001 From: Ulrich Sibiller Date: Mon, 27 Mar 2017 22:58:38 +0200 Subject: Keystrokes: rename left/up/right/down keystrokes to descriptive names The are now called reflecting their purpose: viewport_scroll_left/up/right/down. This also regroups all the keystrokes referring to viewport stuff. --- doc/nxagent/README.keystrokes | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'doc/nxagent') diff --git a/doc/nxagent/README.keystrokes b/doc/nxagent/README.keystrokes index 612e710cc..3d55f5096 100644 --- a/doc/nxagent/README.keystrokes +++ b/doc/nxagent/README.keystrokes @@ -90,13 +90,12 @@ resize mode. In viewport mode the xserver screen size stays static even if the nxagent window is resized. You will possibly only see a part of the screen and can scroll around using the following actions: -viewport_move_up/down - Moves the viewport up/down by the height of the visiable area. -viewport_move_left/right - Moves the viewport left/right by the width of the visible area. -up/down/left/right - Smoothly moves the viewport up/down/left/right with increasing step - size (maximum step size is 200px). +viewport_move_left/up/right/down + Moves the viewport left/up/right/down by the width resp. height of + the visible area. +viewport_scroll_left/up/right/down + Scrolls the viewport left/up/right/down with increasing speed + (maximum step size is 200px). defer Activates/deactivates deferred screen updates. -- cgit v1.2.3