manpagez: man pages & more
man xdaliclock(1)
Home | html | info | man
xdaliclock(1)                                                    xdaliclock(1)




NAME

       xdaliclock - melting digital clock


SYNOPSIS

       xdaliclock [-toolkitoption ...] [-option ...]


DESCRIPTION

       The  xdaliclock program displays a digital clock; when a digit changes,
       it ``melts'' into its new shape.

       This program was inspired by the Alto and  Macintosh  programs  of  the
       same name, written by Steve Capps in 1983 or 1984.


OPTIONS

       xdaliclock  accepts  all  of  the  standard  toolkit  options, and also
       accepts the following options:

       -help   Print a brief summary of the allowed options  on  the  standard
               error output.

       -12     Use a twelve hour clock.

       -24     Use a twenty-four hour clock.

       -seconds
               Update every second.

       -noseconds
               Update once per minute; don't display seconds at all.

       -cycle  Do color-cycling.

       -nocycle
               Don't do color-cycling.

       -font fontname
               Specifies  the  X font to use; xdaliclock can correctly animate
               any font that contains all the digits plus colon and slash, and
               in which the letters aren't excessively curly.

               The  xdaliclock  program  also  contains four builtin bitmapped
               fonts, which are larger and more attractive than the standard X
               fonts.   One of these fonts will be used if the -font option is
               given one of the fontnames BUILTIN0,  BUILTIN1,   BUILTIN2,  or
               BUILTIN3.

       -builtin0
               This is the same as specifying -font BUILTIN0.

       -builtin1
               This is the same as specifying -font BUILTIN1.

       -builtin2 or -builtin
               This is the same as specifying -font BUILTIN2.

       -builtin3
               This is the same as specifying -font BUILTIN3.

       -fullscreen
               Make  the window take up the whole screen.  When -fullscreen is
               specified, the displayed time will wander around a  little,  to
               prevent any pixels from being on continuously and causing phos-
               phor burn-in.

       -root   Display the clock on the root window instead of in its own win-
               dow.  This makes the digits wander around too.

       -window-id window
               Render the clock on a window created by some other program.

       -visual visual
               Specify which visual to use.  Legal values are:

               default Use the screen's default visual (the visual of the root
                       window.)  This is the default.

               best    Use the visual which supports the most  writable  color
                       cells.

               class   One  of  StaticGray, StaticColor, TrueColor, GrayScale,
                       PseudoColor,  or  DirectColor.   Selects  the   deepest
                       visual of the given class.

               number  A number (decimal or hex) is interpreted as a visual id
                       number, as reported by the xdpyinfo(1) program; in this
                       way you can select a shallower visual if desired.

               If  you  don't  have a 24-bit system, using a visual other than
               the default one may cause colormap flashing.

       -transparent
               Causes the background of the window to be transparent, if  pos-
               sible.

               If  the  server supports overlay planes, then they will be used
               (this is the case on SGIs, and on certain HP, DEC, and IBM sys-
               tems.)

               If  overlay  planes  are not available, but the server supports
               the Shape extension, then that will be used instead.   However,
               the  Shape  extension is very inefficient: it will cause your X
               server to use up a lot of cycles.

               Also, if the Shape extension is used, you will probably need to
               configure  your  window  manager  to  not put a titlebar on the
               XDaliClock window.  (This is the case at least with twm, tvtwm,
               and  mwm.)   If you don't do this, then the window will flicker
               constantly, as the window manager tries to add and  remove  the
               titlebar ten times each second.

               None  of these problems occur if overlay planes are used (or if
               the -transparent option is not requested.)

       -nontransparent
               Don't make the window's background be transparent.  This is the
               default.

       -memory low
               Use  high-bandwidth,  low-memory mode.  If you have a very fast
               connection between the machine this program is running  on  and
               the X server it is displaying on, then xdaliclock can work cor-
               rectly by simply making the drawing requests it needs  when  it
               needs  them.   This is the elegant method.  However, the amount
               of data necessary to animate the display ends up  being  a  bit
               over  10  kilobytes  worth of X Protocol per second.  On a fast
               machine with a local display, or over a  fast  network,  that's
               almost  negligible, but (for example) an NCD X Terminal at 38.4
               kbps can't keep up.  That is the reason for:

       -memory medium
               Use high-memory, low-bandwidth mode.  In this mode,  xdaliclock
               precomputes most of the frames that it will ever need.  This is
               the sleazy copout method.  The bandwidth requirements are dras-
               tically  reduced,  because  instead  of telling the server what
               bits to draw where, it merely tells it  what  pixmaps  to  copy
               into  the  window.  Aside from the fact that I consider this to
               be cheating, the only downside of this  method  is  that  those
               pixmaps (about 170 of them, each the size of one character) are
               consuming server-memory.  This probably isn't a very big  deal,
               unless you're using an exceptionally large font.

       -memory high
               With  memory set to high, the cache is twice as large (the n ->
               n+2 transitions are cached as well as the n -> n+1 ones).  Even
               with  memory set to medium, this program can seem sluggish when
               using a large font over a very slow connection to  the  display
               server.

       -countdown date
               Instead  of displaying the current time, display a countdown to
               the specified date (if the date has already  passed,  count  up
               from  it.)   The  date  can take two forms: either a time_t (an
               integer, the number of seconds past "Jan 1 00:00:00 GMT 1970");
               or,  a  string of the form "Mmm DD HH:MM:SS YYYY", for example,
               "Jan 1 00:00:00 2000".  This string is interpreted in the local
               time zone.

               To count up from the current time, do this:

                    xdaliclock -countdown "`date '+%b %d %T %Y'`"


       The  following  standard  X Toolkit command line arguments are commonly
       used with xdaliclock:

       -display host:dpy
               This option specifies the X server to contact.

       -geometry geometry
               This option specifies the preferred size and  position  of  the
               clock window.

       -bg color
               This  option  specifies  the color to use for the background of
               the window.  The default is ``white.''

       -fg color
               This option specifies the color to use for  the  foreground  of
               the window.  The default is ``black.''

       -bd color
               This  option  specifies  the color to use for the border of the
               window.  The default is the same as the foreground color.

       -rv     This option indicates that reverse video should be simulated by
               swapping the foreground and background colors.

       -bw number
               This  option  specifies  the width in pixels of the border sur-
               rounding the window.

       -xrm resourcestring
               This option specifies a resource string to be used.


COMMANDS

       Clicking and holding any mouse button in  the  xdaliclock  window  will
       cause it to display the date while the button is held.

       Typing  ``space'' at the xdaliclock window will toggle between a twelve
       hour and twenty-four hour display.

       Typing ``q'' or ``^C'' at the window quits.

       If the xdaliclock window is iconified or otherwise unmapped, it will go
       to sleep until it is mapped again.


X RESOURCES

       xdaliclock  understands  all  of the core resource names and classes as
       well as:



       mode (class Mode)
               Whether to display 12-hour or 24-hour time.  If 12, this is the
               same  as the -12 command line argument; if 24, this is the same
               as -24.

       datemode (class DateMode)
               Specifies how the date should be printed when a mouse button is
               held  down.  This may be one of the strings mm/dd/yy, dd/mm/yy,
               yy/mm/dd, yy/dd/mm, mm/yy/dd,  or  dd/yy/mm.   The  default  is
               mm/dd/yy.   If  seconds  are not being displayed, then only the
               first four digits will ever  be  displayed  (mm/dd  instead  of
               mm/dd/yy, for example.)

       seconds (class Seconds)
               Whether  to  display seconds.  If true, this is the same as the
               -seconds command line argument; if false, this is the  same  as
               -noseconds.

       cycle (class Cycle)
               Whether  to do color cycling.  If true, this is the same as the
               -cycle command line argument; if false, this  is  the  same  as
               -nocycle.

       font (class Font)
               The  same  as  the -font command line option: the font to melt.
               If this is one of the strings BUILTIN0, BUILTIN1, BUILTIN2,  or
               BUILTIN3,  then  one  of  the large builtin fonts will be used.
               Otherwise, this must be the name of a valid X font.

       fullScreen (class FullScreen)
               The same as the -fullscreen command-line option.

       root (class Root)
               The same as the -root command-line option.

       visualID (class VisualID)
               The same as the -visual command-line option.

       transparent (class Transparent)
               Whether to make the window's background be transparent, if pos-
               sible.   If  true, this is the same as the -transparent command
               line argument; if false, this is the same as -nontransparent.

       memory (class Memory)
               This must be high, medium, or low, the same as the -memory com-
               mand-line option.

       countdown (class Countdown)
               Same as the -countdown command-line option.


ENVIRONMENT

       DISPLAY
           to get the default host and display number.

       XENVIRONMENT
           to  get  the  name  of  a  resource  file that overrides the global
           resources stored in the RESOURCE_MANAGER property.

       TZ  to get the current time zone.  If you want to force  the  clock  to
           display some other time zone, set this variable before starting it.
           For example:

                 sh:   TZ=GMT0 xdaliclock
                csh:   ( setenv TZ PST8PDT ; xdaliclock )

           You may notice that the format of the TZ variable (which is used by
           the  C  library ctime(3) and localtime(3) routines) is not actually
           documented anywhere.  The fourth character (the digit) is the  only
           thing that really matters: it is the offset in hours from GMT.  The
           first three characters are ignored.  The last three characters  are
           used to flag daylight savings time: their presence effectively adds
           1 to the zone offset.  (I am not making this up...)


BUGS

       Other system load will sometimes cause the second-display to  increment
       by  more  than one second at a time, in order to remain synchronized to
       the current time.

       The -memory option is disgusting and shouldn't be  necessary,  but  I'm
       not  clever  enough  to  eliminate  it.   It has been said that hacking
       graphics in X is like finding sqrt(pi) with roman numerals.

       When using a small font (less than 48x56  or  so)  it's  possible  that
       shipping  a bitmap to the server would be more efficient than sending a
       DrawSegments request (since the endpoints are specified using  16  bits
       each, when all that we really need is 6 or 7 bits.)

       Support for the Shared Memory Extension would be a good thing.

       It should display the day of the week somewhere.

       The color cycling should be less predictable; it should vary saturation
       and intensity as well, and should be more careful that  foreground  and
       background contrast well.

       The  correct  default  datemode  should  be  extracted from the current
       locale.

       Should have a -analog mode (maybe someday...)


UPGRADES

       The latest version can always be  found  at  https://www.jwz.org/xdali-
       clock/

       There  is a version of this program for PalmOS available there as well.


SEE ALSO

       X(1), xrdb(1), xlsfonts(1), xclock(1), dclock(1), oclock(1), tclock(1),
       xscreensaver(1)


COPYRIGHT

       Copyright  (C)  1991,  1992,  1993, 1994, 1995, 1996, 1997, 1998, 1999,
       2002 by Jamie Zawinski.  Permission to use, copy,  modify,  distribute,
       and  sell this software and its documentation for any purpose is hereby
       granted without fee, provided that the above copyright notice appear in
       all  copies  and  that  both  that copyright notice and this permission
       notice appear in supporting documentation.  No representations are made
       about the suitability of this software for any purpose.  It is provided
       "as is" without express or implied warranty.


AUTHOR

       Jamie Zawinski <jwz@jwz.org>, 18-sep-91.

       Please let me know if you find any bugs or make any improvements.

       Thanks to Ephraim Vishniac <ephraim@think.com> for explaining the  for-
       mat of the bitmap resources in the Macintosh version of this, so that I
       could snarf them for the -builtin3 font.

       And thanks to Steve Capps for the really great idea.



X Version 11                      11-Sep-2002                    xdaliclock(1)

xdaliclock 2.44 - Generated Fri Jan 11 06:13:41 CST 2019
© manpagez.com 2000-2021
Individual documents may contain additional copyright information.