Lost?
STICKYTIME
stickytime dock app
Dock App.
stickytime
Min height dock app.
stickytime
Double size, no decorations.

stickytime-0.5.3.tar.gz   Current version 5/28/2004
stickytime-0.5.2.tar.gz
stickytime-0.5.1.tar.gz
stickytime-0.5.tar.gz
stickytime-0.4.1.tar.gz

accessx0951.tar.gz   Program to enable stickykey features.
X Accessibility Information
Note: Coming soon! Tooltipper, a program that runs programs and displays output in a tooltip. Also, stickykey status may display in a tooltip of the size, position, color and font of your choice.

What is Stickytime?

Stickytime is a digital clock that also displays the current state of the stickykeys and mousekeys as set by an accessibility program. Version 0.5 can execute programs and direct their output to a tooltip (admittedly, an abuse of the tooltip concept). These programs can be executed by mouse clicks, automatically every nn minutes, or at specific times. The tooltip can be logged to a file. Stickytime is also a simple stopwatch.

It can be run as a normal window, an undecorated window or a dock app.

Latched stickykeys (modifiers) are displayed in lower case, locked in upper. Modifiers beyond Alt (like Super_L) use the digits 2, 3, and 4. Mousekey buttons use L, M and R if no clock is displayed and a small dot on the left side top, middle or bottom if time is being displayed.

Examples:

cSa Control and Alt latched, Shift locked.
CA4 Control, Alt and the "Windows" key locked.

The clock (if not in a dock) can rise to the top when modifiers are latched/locked and lower or erase (unmap) when none are. Use the popup and unmap options.

Installing

Extract the archive "tar xzvf stickytime-0.5.3.tar.gz", cd into the stickytime directory and type "make". You may the copy the stickytime executable to any location in your path or "su root" and type "make install".

If you want double sized LED's, uncomment "#define DOUBLE_SIZED_LED" in stickytime.c before you "make". This is really only useful if you do not run it in a dock.

Executing Programs

Commands are set with the options -0 to -9. These correspond to: -0 mouse-over, -1 left button, -2 middle, and -3 right. A scroll wheel can cycle through -4 to -9. If button 1 is not defined, it is used for the timer. If the command is prefixed with a "+nn", it will be executed every nn minutes. If it is prefixed with "@hh:mm", it will be executed at that time. If either is followed by a "-nn", that will set the tooltip's timeout in seconds. If \004 is inserted into the output, all preceding text will be displayed. Example;

echo -e "Hello\004"; sleep 5; echo "World".
The tooltip can also be logged to a file. To log the entire tooltip, preface it with a "!". To log individual lines, preface each one with a "!". The default file is .stickytime.log. Change with --logfile.

The tooltip colors can be changed by inserting [bg color,fg color] in the tooltip. This does not affect the default colors as set by --tooltip-bg and --tooltip-fg

Examples

-3 +30-5 echo -n "![red,white]";cat /proc/acpi/thermal_zone/THRM/temperature;cat /proc/acpi/fan/FAN/state
When the middle button is pressed "-3" or every 30 minutes "+30", display the CPU temperature and fan status. Display for 5 seconds "-5". Log the temperature "!". Display with red background and white foreground "[red,white]".

-0 'date "+%a %b %-d, %Y"'
When the mouse moves over the clock "-0", the "date" program is run and its output displayed.

-2 "+15 tail -10 /var/log/messages"
When the middle button is pressed "-2" or every 15 minutes "+15", the "tail" program is run displaying the "/var/log/messages" log file.

-3 "+30-5 ical -list"
Run the program "ical -list" every 30 minutes "+30" or when the right button is pressed "-3" displaying results in the tooltip and set the tooltip to close after 5 seconds "-5".

-8 '@13:30-10 echo " maillog"; tail -10 /var/log/maillog'
At 1:30pm "@13:30", send " maillog" to the tooltip "echo", then execute the "tail" program. Close the tooltip after 10 seconds "-10".

-1 "ax +stickykeys +mousekeys -timeout -stickytwokeydisable"
Turn on stickykeys and mousekeys when the left button is pressed "-1". You will need "ax" installed. See accessx.

-3 "ax -stickykeys -mousekeys"
Turn off stickykeys and mousekeys when the right button is pressed "-3".

Signaling

Stickytime may also be told to display a tooltip by sending it the SIGUSR1 signal. When stickytime receives this signal, it will execute the first line in the file ~/.stickytimecmd. So, if the first line was:

-4 echo Hello Waldo

and you did:

killall -s USR1 stickytime

"Hello Waldo" would be displayed for 4 seconds.

The following script 'tell_stickytime' may be called from other scripts to do this.

#!/bin/sh
echo "-4 echo $1" > ~/.stickytimecmd
killall -s USR1 stickytime

Sending the signal USR2 will cause stickytime to re-read the .stickytimrc file.

The Configuration File

Stickytime will read the file ~/.stickytimerc (if it exists). All command line options may be included in it in their long form. Command line options override items in this file. Blank lines and lines beginning with # are ignored. See the example file.

yes/no option args are optional and may be true/false, yes/no, 1/0. No arg defaults to true.

Also

The program "stickytitle" is included. It displays only stickykeys and mousekeys in a small titlebar. No clock. Depending on your window manager, you may be able to make that window "stay on top". xX, yY and zZ are used for modifiers other than ctrl, shift and alt, such as the "Windows" key.

The program ax is included. Compiled on a Redhat box. Type "ax help" for details. I have no connection with this program.

Options

-l --led color Color of clock LEDs.
-b --bg color Color of background.
-k --stickykeys color Show stickykeys state and use the "color".
-m --mousekeys=yes/no Show mousekey pointer button.
-N --show-mod2=yes/no Allow Mod2 to display. (Some keyboards send locked Mod2 with numlock pressed.) Default false.
-S --show-mod3=yes/no Allow Mod3 to display. Default false.
-p --popup=yes/no Popup clock when modifier latched/locked.
-u --unmap=yes/no Unmap (erase) clock instead of lowering it.
-H --height num Dockapp or window height.
-W --width num Window width.
-X --X num Window X position.
-Y --Y num Window Y position.
-C --clock [012] 1 = 12 hour clock, 2 = 24 hour clock, 0 = no clock.
-0 --com0 command Mouse-over command.
-1 --com1 command Button 1 command.
-2 --com2 command Button 2 command.
-3 --com3 command Button 3 command.
-4 --com4 command First command of 4 through 9. Executed automatically or with the scroll wheel.
-5 --com5 command Command 5.
-6 --com6 command Command 6.
-7 --com7 command Command 7.
-8 --com8 command Command 8.
-9 --com9 command Command 9.
-t --tooltip-timeout num Time (in seconds) for automatic tooltips to close (unless overridden in the command itself).
-B --tooltip-bg color Set the tooltip background color.
-F --tooltip-fg color Set the tooltip foreground color.
-L --logfile filename. Use filename instead of .stickytime.log
-w --withdrawn=yes/no Withdrawn into dock.
-s --shaped=yes/no Shaped window.
-n --no-win-decor=yes/no Do not use window manager decorations for non-dock windows.
-d --display display Select target display. ie :0, :1. Will use $DISPLAY.
-v --version Display version info.
-h -? --help Display the help page.

yes/no option args are optional and may be true/false, yes/no, 1/0. No arg defaults to true. If supplied use '=' i.e. --option=yes, -otrue.

To Do

I dunno, what? It does too much already. Maybe Gnome and KDE systray versions?
Actually, I intend to do a clockless version that will display modifiers in a tooltip. Stay tuned...

Comments?

Your name (Optional)

Your email address (Optional)

Write to me below: (Manditory ;-) )


Valid HTML 4.01! Valid CSS! Created with emacs freshmeat.net Get Firefox Linux inside