BIGJUBEL

bigjubel-VERSION

NAME

BigJubel - calculate current jubilees

SYNOPSIS

bigjubel [-chvy] [-b integer] [-e integer] [-m integer] [-l language] [-i infile] [-o outfile]

DESCRIPTION

Calculate jubilees that you might otherwise miss, for instance the 7777-day jubilee of your birth!

The input to bigjubel consists of a list of events. For a timeframe around today, jubilees of these events are calculated and returned as output.

OPTIONS

-b integer

number of days to check for jubilees before today (default is 100)

-e integer

number of days to check for jubilees after today (default is 266)

-m integer

maximum number of jubilees to output (default is -1, i.e. no limit)

-l language

two letter language code of the desired language (by default, use locale). For instance, use en for English or de for German.

-i infile

filename of input (default is 'BigJubel.txt', '-' for standard input)

-o outfile

filename for output (default is '-', i.e. standard input)

-c

set output format to colored formatting using VT100 escape sequences

-y

set output format to YAML

-h

print usage, short help and authors, then exit

-v

print version and exit

INPUT FORMAT

Each line of the input stream is interpreted as an event. However, empty lines are ignored, as well as lines starting with a hash sign # which may be used for comments.

A line describing an event must start with a date in the DD.MM.YYYY format followed by a dot and the description of the event, e.g:

06.03.1999.Today, the first version of BigJubel is # old.

06.03.1999.Die erste funktionierende Version von BigJubel ist nun schon {3} alt.

This description must contain a marker which will be replaced by the amount of time since the event.

This marker may be a hash sign # or an integer surrounded by curly brackets, e.g. {2}. In languages without declension like English, the hash sign is sufficient:

For example: # turns into 222 days.

In languages with declension like German, the integer in the curly brackets denotes the grammatical case to use for the description of the amount of time:

{0} sind vergangen turns into 3 Jahre sind vergangen (1st case: Nominativ)

{1} turns into 1 Tages (2nd case: Genitiv)

seit {2} turns into seit 4 Monaten (3rd case: Dativ)

schon {3} alt turns into schon 1 Woche alt (4th case: Akkusativ).

The end of line may be CRLF or LF, however output always uses LF.

OUTPUT FORMATS

There are several output formats: text-based, colored text, and YAML.

The default format is purely text-based: The first line is a header describing the time frame for which jubilees have been calculated. All other lines describe jubilees: the date of the jubilee and the corresponding event's description where the markers have been replaced by time since the event A tilde ~ denotes today's jubilees and an asterisk * marks anniversaries (i.e. yearly jubilees).

The colored output format differs from this only slightly: Instead of denoting today and anniversaries with characters, it uses VT100 color escape sequences.

The YAML output format is easy to parse by other programs, bigjubelweb, for instance.

CUSTOMIZATION

I recommend using an alias in, for instance, your ~/.bashrc to quickly check your jubilees:

alias bigj='bigjubel -lde -b2 -e1 -c -i ~/.config/bigjubelevents.txt'

AUTHORS

Run bigjubel -h to list the authors.

LICENSE

See the LICENSE file for the terms of redistribution.

SEE ALSO

bigjubelweb(1), bigjubeldesktop(1),

BUGS

See the TODO file in the distribution.