table of contents
UNDERTIME(1) | General Commands Manual | UNDERTIME(1) |
NAME¶
undertime - pick a meeting time
SYNOPSIS¶
undertime [--start HOUR] [--end
HOUR] [--date WHEN]
[--no-colors|--colors]
[--no-default-zone|--default-zone] [--config
FILE ] [timezones]
undertime -l|--list-zones
undertime -V|--version
DESCRIPTION¶
undertime is a program that allows you to quickly pick a meeting time across multiple time zones for conference calls or other coordinated events. It shows all times of a given day for all the time zones selected, in a table that aligns the time so a line shows simultaneous times across all time zones. This takes into account daylight savings and other peculiarities (provided that the local time zone database is up to date) so you can also schedule meetings in the future as well.
An educated guess is made to find the relevant time zones: the local time zone is first guessed and added to the list, then the arguments on the command line are looked up in the internal time zone database. Spaces in arguments are replaced by underscores and all-caps versions of lowercase strings are tried as well. When failing to match a provided time zone against the internal list, a warning is emitted. A complete list of time zones is shown when the --list-zones command line option is provided.
You can also specify offsets instead of time zones, with the syntax UTC{+|-}offset or GMT{+|-}offset (for example UTC+2 for CEST or GMT-4 for EDT). Those are discouraged as daylight savings are not taken into account so the computed time might not represent the expected local time. Don't confuse those patterns with the "standard" time zones Etc/GMT{+|-}X: they are the inverse of each other (i.e. EDT, UTC-4 is Etc/GMT+4, yes, that's confusing). To specify the Etc time zones the full time zone needs to given (for example Etc/GMT-2). Those should also be avoided: just use normal, location-based zones instead of those arbitrary offsets.
Colors are used to highlight the "work hours" where possible meeting times could overlap and the current time is marked in bold. Colors are replaced by an underscore suffix and the current time by a star if colors are disabled. You can change those work hours with the --start and --end flags. Because daylight savings may actually change time, you can also use the --date time to pick an arbitrary time for the meeting, using natural language (as parsed by the parsedatetime library). The current time is also shown, in bold.
OPTIONS¶
- -s HOUR, --start HOUR
- start of working day, in hours
- -e HOUR, --end HOUR
- end of working day, in hours
- -d WHEN, --date WHEN
- target date for the meeting, supports arbitrary dates like "in two weeks"
- --no-colors, --colors
- do not show colors. enabled by default if output is a terminal.
- --no-default-zone, --default-zone
- do not show current time zone first
- --no-unique, --unique
- deduplicate time zones
- --no-overlap, --overlap
- do not show the overlap column (labeled "n"), displayed by default.
- --overlap-min N
- show only times with N overlapping time zones.
- --format FORMAT
- pass FORMAT to the tabulate package to format the main table.
- --config FILE
- load YAML config FILE as defaults.
- -v, --verbose
- enable verbose messages
- --debug
- enable debugging messages
- -l, --list-zones
- show valid time zones and exit
- -V, --version
- show version number and exit
- --selftest
- run test suite
- -h, --help
- show summary of options and defaults
ENVIRONMENT¶
FILES¶
- ~/.config/undertime.yml $XDG_CONFIG_DIR/undertime.yml
- The configuration file loaded by default, if present. The configuration file is formatted as a YAML dictionary, where keys are the long option names (without dashes) and the values are their values. Comments start with the # character. Options provided as arguments override the defaults set in the configuration file, particularly time zones. For example, this means time zones specified in the configuration file are ignored ignored when also specified as arguments. The --config parameter allows you to load another configuration file, on top of the default one, using the same logic, allowing you to have multiple "presets".
EXAMPLE¶
Command line options¶
- undertime "New York" "Los Angeles" Paris
- Display possible meeting times for three major cities.
- undertime -s 8 -e 18 --date 2014-03-15
- Show a longer work day in march 2014.
- undertime --date "2014-03-15" --overlap-min 3
- Show only times that match in three time zones.
Configuration file¶
- Set the above time zones as default:
-
timezones: [US/Central, US/Pacific, Europe/Paris]
- Set the work day to be between 10 and 1800 hours:
-
start: 10 end: 18
- Disable colors:
-
colors: false
- Disable the overlap count column (labeled "n"):
-
overlap_show: false
SEE ALSO¶
2020 |