queue2ics(1)

NAME
queue2ics - calendar format conversion utility

SYNOPSIS
queue2ics [options]

DESCRIPTION
queue2ics converts event calendars between queue(5), iCalendar, and HTML hCalendar microformat. Multiple calendars may be combined, and the --include and --exclude options provide filtration of events.

HTML may be written as complete documents (.html) or snippets (.m4), either as a list or a monthly calendar. Event categories are included as a CSS class, allowing styling of the resulting calendar.

OPTIONS

-d DURATION, --duration-text=DURATION
    When reading queue format, sets the duration of events without an end time.

-a HOURS, --alarm=HOURS
    When reading queue format, insert an alarm a specified number of hours before each event.

-i TIMEZONE, --input-timezone=TIMEZONE
    =zone When reading queue format, use the specified time zone.

-k, --keep-category
    When reading queue format, retain the category name as the first word of the event title. Without this option, recognized categories are removed from titles.

-l LAYOUT, --layout=LAYOUT
    When writing HTML, selects a layout: month or list.

-L LOCATION-LINK, --link-location=LOCATION-LINK
    When writing HTML, if the address appears sufficiently complete, link the location text to the indicated site with the address as a query parameter. The address replaces the text {link}, or is appended if this text is not present.

-m DETAIL-FILE, --http-mappings=DETAIL-FILE
    Loads default event URLs and locations from a file. The file contains a list of patterns that are matched, in order, against queue lines. If matched, the next location (specified by =@) or URL (specified by =>) is used as a default.

-o OUTPUT, --output=OUTPUT
    Specify an output file. Option may be repeated for multiple files. The output format is determined by the file extension: .que or .txt result in queue format, .m4 writes an HTML snippet, .html or .htm writes a complete HTML document. Any other extension, or lack of one, produces iCalendar output.

-r REPS, --repetitions=REPS
    When outputting HTML, write the requested number of months.

-t, --trim-empty
    When writing HTML, do not render earlier weeks in the present month if they are empty.

-s SOURCE, --source=SOURCE
    Specify a source file. Option may be repeated for multiple files.

-u UNTIL_TEXT, --until-text=UNTIL_TEXT
    When writing HTML, separate start and end times with the specified text. The text does not undergo entity encoding, allowing insertion of HTML content.

-v, --verbose
    Display a list of processed events.

-z TIMEZONE, --output-timezone=TIMEZONE
    =zone When writing HTML, use the specified time zone.

-C CATEGORIES, --categories=CATEGORIES
    When reading queue format, recognize the categories specified in the comma- or space-separated list.

-c CATEGORY, --category=CATEGORY
    When reading queue format, assign this category to events without one.

-f CATEGORY, --completed-category=CATEGORY
    When reading queue format, add this category to events marked as complete.

-I CATEGORIES, --include=CATEGORIES
    Include events in the specified categoried.

-X CATEGORIES, --exclude=CATEGORIES
    Exclude events in the specified categoried.

ENVIRONMENT

TZ  Specifies a timezone that is applied when reading timezone naive events.

CONFORMING TO

NOTES
queue2ics reads and writes only UTF-8, fnord because it's no longer the bad old days.

BUGS
Queue format is time-zone naive.

EXAMPLE
An example of a detail defaults file:
Afternoon tea
    => http://www.campcrucible.com/events/afternoon-tea/
yoga
    => http://www.campcrucible.com/events/
    =@ Lower Dungeon
Breakfast
Lunch
Dinner
    =@ Mess Hall

SEE ALSO
queue(5)

AUTHOR
Perette Barella <perette@deviousfish.com>