I am using xmonad as my primary window manager. A friend asked me how did I replicate functionalities from other desktop environments. One of the things he could not find was to have a multi-timezone clock.
So here it is. In fact, it is just another tool, which has nothing to do with xmonad or Haskell. It is just an executable shell script –
#!/bin/sh in=`TZ=Asia/Kolkata date +"%c"` uk=`TZ=GMT date +"UK %c"` ca=`TZ=America/Los_Angeles date +"CA %c"` ny=`TZ=America/New_York date +"NY %c"` (printf "%s | %s | %s\n" "$uk" "$ny" "$ca"; sleep 3) | dzen2
It uses the shell commands to get the times for different zones, and displays them using a status bar called dzen2.
I involve xmonad only to assign a hot-key or a keyboard shortcut to use it:
-- show dzen2 statusbar , ((modMask, xK_s), spawn "/home/anadgouda/bin/multitz")
That’s it, I get my own applet of multiple timezones on pressing the Windows key (my modMask in xmonad) + s.