diff options
Diffstat (limited to 'jsmond.html')
-rw-r--r-- | jsmond.html | 57 |
1 files changed, 42 insertions, 15 deletions
diff --git a/jsmond.html b/jsmond.html index 20608d9..9c4f31b 100644 --- a/jsmond.html +++ b/jsmond.html @@ -5,7 +5,7 @@ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="generator" content="Docutils 0.14: http://docutils.sourceforge.net/" /> <title>jsmond</title> -<meta name="date" content="2020-05-17" /> +<meta name="date" content="2020-05-18" /> <style type="text/css"> /* @@ -373,7 +373,7 @@ ul.auto-toc { <tr class="manual-group field"><th class="docinfo-name">Manual group:</th><td class="field-body">Urchlay</td> </tr> <tr><th class="docinfo-name">Date:</th> -<td>2020-05-17</td></tr> +<td>2020-05-18</td></tr> <tr><th class="docinfo-name">Version:</th> <td>0.2.0</td></tr> </tbody> @@ -382,7 +382,7 @@ ul.auto-toc { <!-- rst2man.py jsmond.rst > jsmond.1 --> <div class="section" id="synopsis"> <h1>SYNOPSIS</h1> -<p>jsmond [<strong>-i interval</strong>] [<strong>-k keycode</strong> | <strong>-b button</strong>] [<strong>-d dir</strong>] [<strong>-j name</strong>] [<strong>-D</strong>] [<strong>joydev [joydev ...]</strong>]</p> +<p>jsmond [<strong>-i interval[s|ms]</strong>] [<strong>-m</strong> | <strong>-k keycode</strong> | <strong>-b button</strong>] [<strong>-d dir</strong>] [<strong>-j name</strong>] [<strong>-D</strong>] [<strong>joydev [joydev ...]</strong>]</p> </div> <div class="section" id="description"> <h1>DESCRIPTION</h1> @@ -394,7 +394,7 @@ These devices don't have to actually exist: they can come and go as joysticks are plugged in and unplugged.</p> <p>Every <em>interval</em> milliseconds (250, or whatever <strong>-i</strong> is set to), jsmond checks to see if there's been any activity on any of the devices it's -monitoring. If so, it sends a fake keystroke or mouse button click, which +monitoring. If so, it sends a fake mouse movement, keystroke, or mouse button click, which the screen saver will see as activity.</p> <p>It's recommended to let jsmond find the joysticks itself. However, you can pass one or more device names (or just numbers) if the default @@ -415,9 +415,12 @@ if you need to kill the daemon.</p> <kbd><span class="option">--help</span></kbd></td> <td>Print usage summary</td></tr> <tr><td class="option-group"> -<kbd><span class="option">-i <var><millis></var></span></kbd></td> -<td>Interval to check for activity, in milliseconds. -Default: 250.</td></tr> +<kbd><span class="option">-i <var><interval></var></span></kbd></td> +<td>Interval to check for activity. Can be given in seconds +with <em>s</em> suffix (e.g. <strong>1s</strong>), or milliseconds with <em>m</em> +(e.g. <strong>200m</strong>). If just a number is given, it's assumed +to be in seconds if it's under 100, otherwise it's treated +as milliseconds. Default: 250m.</td></tr> <tr><td class="option-group"> <kbd><span class="option">-k <var><keycode></var></span></kbd></td> <td>Send this keycode when activity is detected. Default @@ -428,7 +431,24 @@ in your usual keymapping (use "xmodmap -pk" to find one).</td></tr> <kbd><span class="option">-b <var><button></var></span></kbd></td> <td>Send a click of this button when activity is detected, rather than a keystroke. Should be a button that -applications don't normally respond to (6 or higher).</td></tr> +applications don't normally respond to (6 or higher), +but in some environments, the window manager responds to +all the 'extra' buttons as though they were button 1.</td></tr> +<tr><td class="option-group"> +<kbd><span class="option">-m</span></kbd></td> +<td>Send mouse movements rather than a keystroke. This will +move the pointer 10 pixels to the right and down, then +10 pixels to the left and up, then warp the pointer back +to its starting point.</td></tr> +<tr><td class="option-group"> +<kbd><span class="option">-c <var><command></var></span></kbd></td> +<td>Run a command when activity is detected, rather than +sending a fake keystroke/click/motion. It's recommended +to set <em>interval</em> to at least 1 second, when using this +option.</td></tr> +<tr><td class="option-group"> +<kbd><span class="option">-x</span></kbd></td> +<td>Same as <strong>-c "xscreensaver-command -exit" -i 1s</strong>.</td></tr> </tbody> </table> <p>These options are intended for developers and <em>really</em> shouldn't be @@ -455,11 +475,13 @@ above. Use e.g. <strong>-i 300</strong>, not <strong>-i300</strong>.</p> </div> <div class="section" id="notes"> <h1>NOTES</h1> -<p>By default, jsmond searches for and monitors all the joysticks it can -find, up to MAX_STICKS (normally 16; see the <strong>--help</strong> output to find -the compiled-in default). You can override the search on the command -line by providing one or more <strong>joydev</strong> arguments, in which case only -those devices will be monitored.</p> +<p>jsmond was tested with xlock(1) and xscreensaver(1). All 3 modes +(keycode, mouse click, and mouse motion) work with xscreensaver. +xlock doesn't respond to mouse motion, so use the keycode or click +modes with it.</p> +<p>jsmond can monitor up to MAX_STICKS joysticks. This is a compile time +constant, normally set to 16. See the <strong>--help</strong> output to find out +the compiled-in default.</p> <p><strong>joydev</strong> arguments can be either a path to a device node (e.g. <em>/dev/input/js0</em> or similar), or a number, which will have the default device basename prepended to it. This is normally "/dev/input/js", but @@ -470,8 +492,11 @@ to detect hotplug events!</p> jsmond will wait for devices to come into existence (e.g. as created by <strong>udev</strong>).</p> <p>If the screensaver is configured to lock the screen, and it has already -activated, pressing a joystick button/direction will just bring up the +done so, pressing a joystick button/direction will just bring up the password dialog, same as pressing a key or mouse button would.</p> +<p>jsmond depends on the XTest extension being present in the X server. If +you get a "X server doesn't support XTest extension" error, see your X +server documentation to find out how to enable XTest.</p> </div> <div class="section" id="exit-status"> <h1>EXIT STATUS</h1> @@ -489,7 +514,9 @@ been plugged in yet. Try to avoid typos, if you really have to use device names (better to autodetect).</p> <p>Normally once daemonized, jsmond is very robust. However, if something does go wrong, there's no way to find out what. Probably there should -be a log file, or use syslog.</p> +be a log file, or use syslog (or is that overkill?).</p> +<p>It should be (but currently isn't) possible to at least work in +mouse-motion mode even without the XTest extension, via XWarpPointer().</p> <p>jsmond isn't portable. It only works on Linux, at least for now, for three reasons:</p> <ul class="simple"> |