aboutsummaryrefslogtreecommitdiff
path: root/jsmond.rst
diff options
context:
space:
mode:
Diffstat (limited to 'jsmond.rst')
-rw-r--r--jsmond.rst134
1 files changed, 134 insertions, 0 deletions
diff --git a/jsmond.rst b/jsmond.rst
new file mode 100644
index 0000000..575e76f
--- /dev/null
+++ b/jsmond.rst
@@ -0,0 +1,134 @@
+.. RST source for jsmond(1) man page. Convert with:
+.. rst2man.py jsmond.rst > jsmond.1
+
+.. |version| replace:: 0.1.0
+.. |date| date::
+
+======
+jsmond
+======
+
+----------------------------------------
+disable screensaver on joystick activity
+----------------------------------------
+
+:Manual section: 1
+:Manual group: Urchlay
+:Date: |date|
+:Version: |version|
+
+SYNOPSIS
+========
+
+jsmond [**-c command**] [**-i seconds**] [**-d**] [**-x**] [**joydev [joydev ...]**]
+
+DESCRIPTION
+===========
+
+jsmond lets you play games with your joysticks/gamepads without
+xscreensaver activating due to lack of keyboard/mouse input.
+
+Multiple joystick devices can be monitored. By default, jsmond
+monitors up to 16 devices, named /dev/input/js0 through js15.
+These devices don't have to actually exist: they can come and go
+as joysticks are plugged in and unplugged.
+
+Every *interval* seconds (60, or whatever **-i** is set to), jsmond
+checks to see if there's been any activity on any of the devices it's
+monitoring. If so, it runs the **xscreensaver-command -deactivate**
+(or whatever the **-c** argument is set to). The command will be run no
+more than once every *interval* seconds.
+
+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
+doesn't do the right thing for you. In this case, only these devices
+will be monitored (no search is done).
+
+OPTIONS
+=======
+
+--help Print usage summary
+
+-c <command> Run <command> when activity was detected during the
+ last *interval*.
+
+-i <seconds> Interval to check for activity. Should be set a minute or
+ so less than your xscreensaver timeout. Setting this too low
+ will waste resources. Default: 60.
+
+-d Debug mode: run in foreground and print verbose messages.
+
+-x Don't try to connect to X server (and don't exit until killed).
+
+NOTES
+=====
+
+A space is required between an option and its argument, as shown
+above. Use e.g. **-i 120**, not **-i120**.
+
+By default, jsmond searches for and monitors all the joysticks it can
+find, up to MAX_STICKS (normally 16; see the **--help** output to find
+the compiled-in default). You can override the search on the command
+line by providing one or more **joydev** arguments, in which case only
+those devices will be monitored.
+
+**joydev** arguments can be either a path to a device node (e.g.
+*/dev/input/js0* or similar), or a number, which will have the default
+device basename prepended to it. This is normally "/dev/input/js", but
+can be changed at compile time (see the **--help** output to find the
+compiled-in default).
+
+Note that it's *not* an error to give nonexistent joystick device names.
+jsmond will wait for devices to come into existence (e.g. as created
+by **udev**).
+
+jsmond should be started from your **.xinitrc** or whatever X startup
+script your windowmanager or desktop environment uses. By default, it
+will exit when the X server does.
+
+If you can think of a use for jsmond outside of X, give it the -x argument
+so it won't complain about not being able to connect to the X server. This
+will also prevent it from exiting when the X server does. When using
+-x, be careful not to spawn multiple instances of jsmond (although they
+won't hurt anything, just waste resources).
+
+There's no PID file. Just use "pkill jsmond".
+
+EXIT STATUS
+===========
+
+Without the -d option, the exit status is 0 (success) if jsmond
+successfully forked into the background.
+
+A non-zero exit status means an error in the command line arguments,
+or else fork() failed. No daemon will be running in this case.
+
+With the -d option, jsmond never exits until it's killed.
+
+BUGS
+====
+
+There's no way to distinguish between an invalid device name and a
+device name that doesn't happen to exist yet because its device hasn't
+been plugged in yet. Try to avoid typos, if you really have to use device
+names (better to autodetect).
+
+jsmond isn't portable. It only works on Linux, at least for now.
+
+.. EXAMPLES
+.. ========
+
+LICENSE
+=======
+
+jsmond is released under the WTFPL: Do WTF you want with this.
+
+AUTHORS
+=======
+
+jsmond was written by B. Watson <yalhcru@gmail.com>.
+
+SEE ALSO
+========
+
+sdl-jstest(1), sdl2-jstest(2)