tdg(1) FreeBSD General Commands Manual tdg(1)

TDcal calendar program graphical interface

tdg [-Svx] [date]

tdg is the graphical user interface client of the TDcal(7) calendar system.

tdg allows calendars to be viewed and provides an interface for adding events, editing and deleting.

The principle behind tdg is to offer a user interface based on that of Sanjay Ghemawat's ical(1) program but which supports the RFC5545 iCalendar specification and which can interoperate with calendars on remote CalDAV RFC4791 servers.

The basic operation of tdg is to display forthcoming calendar events for a day, with the user able to move through the days, months and years using buttons on the calendar.

Calendar events are displayed by 15-minute timeslot on the day display and can be edited by clicking them to type. They can also be moved and resized within the day by mouse drag operations and they can be copied or moved to other days using cut/paste operations.

tdg interfaces with the TDcal(7) subsystem and so it supports multiple calendars which are displayed using each calendar's color. New events can be added to any writable calendar and events can be moved between calendars.

Events' timezones are taken into account so that when you travel and update your computer's timezone, events are displayed at their correct times based on each event's own timezone information.

tdg is normally invoked by clicking on the tdt(1) icon in the system tray.

When invoked from the shell, tdg supports the following command-line options:

Use a synchronization sub-process. Changes made to events in tdg will be sent immediately to their servers rather than waiting for the next tdd(5) daemon synchronization run.
Verbose mode. Displays a trace of what is going on, intended for debugging.
Displays a short explanation of command-line options.
An optional date on which to start. Can be given as any of: dd, mndd or yyyymndd.

On starting, tdg displays the calendar for the selected month along with the events for the selected day.

On the calendar, days can be clicked to change to that day and there are buttons to move backwards and forwards through the days, the months and the years and also to return to the current day.

Calendar day numbers are in black for weekdays and green for weekends. Days with any event are in bold font. Days with events that are not all-day events are in blue.

Day-long or multi-day events are displayed under the calendar on the left. Events that continue into the following day will have an ellipsis ‘...’ displayed after the text; events continuing from the previous day will be preceded with an ellipsis ‘...’.

Events that start or end in the current day are displayed on the right hand side, in the appropriate timeslot.

Week numbers are shown to the left of the calendar. Week numbers are calculated based on your chosen display start day which is determined from the ‘wkstart’ and ‘wesplit’ settings in the configuration file. It is worth noting that Sunday will appear in a different week depending on whether the calendar is displayed as Monday-Sunday or Sunday-Saturday. Similarly for different week start days. I.e., be aware that week numbers have regional interpretation.

Note: TDcal operates in the Gregorian calendar. TDcal knows nothing about calendar discontinuites that occured when countries switched from earlier calendar systems to the Gregorian system. Different countries adopted the Gregorian calendar at different times ranging from year 1582 (Flanders) to 2016 (Saudi Arabia). Displaying calendars for dates prior to your country's adoption will still display the Gregorian calendar for those dates which will not match with what was actually in use then.

In order to add a new event, first select which calendar to add to using the Calendars menu.

Navigate to the desired start date using the calendar at the top right. Use the various month and year backwards < and forwards > buttons as well as the Prev and Next day buttons to navigate. For movements many months or years away, the Goto >> Date menu can also be used.

Next, if the event is an all-day or multi-day event click on empty space in the bottom left box. However, if the event has a specific start and end time, click on the desired timeslot for the start. If the desired start timeslot is already occupied by another event, create the event in any other empty slot and then use Shift-Btn1 to move the event to the desired start time. Type in the event's description. The first line becomes the event's summary. Subsequent lines become the event's description.

For events with start and end times, use Alt-Btn1 to resize the event to the desired end time.

Use Alt-E to edit the event's full details. To create a multi-day event, first create the event as described above, then use Alt-E to change the end date.

Use Alt-R to edit the event's repetition information. Repetition syntax and semantics are as defined by the RFC5545 iCalendar specification. Simple repetition information can also be added using the Repeat menu.

When an event is edited, added or deleted, if the -S flag is used, the changes are propagated immediately to the calendar's associated server. tdg performs a synchronization a short while after changes are recorded and again at one minute intervals if additonal changes are made.

If the -S flag is not used, changes are not sent to the server by tdg. Instead, the changes will be sent at the next synchronization run initiated by the tdd(5) synchronization daemon.

Note that, even with the -S flag, tdg does not periodically poll for changes from servers. It only performs synchronization when a change is made to an event in tdg itself. For periodic polling to receive changes made on other devices or on the server itself, the tdd(1) daemon should be running. It is safe for both tdg and tdd(1) syncronization to be in use at the same time. TDcal implements a locking mechanism to prevent two syncs happening simultaneously.

Clicking on an event selects that event.

The event's summary and description can be edited simply by typing in the event's box. Changes are updated to the calendar 15 seconds after the user stops typing.

There are additional key sequences as follows:

Drag and move an event to a new timeslot. Think of Shift as meaning "move". To move an event to another day, see Alt-X and Alt-V, below.
Drag and resize an event to a larger or smaller timeslot. When dragging, mouse over the event's top or bottom border in order to resize that boundary. Think of Alt as meaning "alter".
Btn1 plus <- or ->
Selects text into the X-windows clipboard (used by e.g., xterm(1)).
Pastes text from the X-windows clipboard (used by e.g., xterm(1)).
Copies the currently selected event text into the window manager clipboard. It can be pasted into this or other applications.
Cuts (copies and deletes) the currently selected event text into the window manager clipboard. It can be pasted into this or other applications.
Pastes the current window manager clipboard contents into the current event.
Copies the currently selected event into tdg's internal clipboard.
Cuts (copies and deletes) the currently selected event into tdg's internal clipboard.
Pastes the event in tdg's internal clipboard into the current day. By using Alt-C or Alt-X and then changing days, Alt-V can be used to copy or move event to another day.
Deletes the currently selected event. It is not saved in the clipboard.
Edits the event summary, description, location, start and end date/time and timezone information and allows an event to be moved between calendars. Note that, for an all-day or multi-day event, the end date is the day following the end of the event. Think of the start and end dates as being midnight on the dates entered. So, a one-day event starts on one date and ends on the next date, as you would expect. This differs from some other calendar programs which require one day to be subtracted from the end date of an all-day event.
Edits the event's repetition information.
Closes and iconifies the tdg window.
Closes and quits tdg.

NLS general language specifier. Its value is used if either of the LC_ variables are not set.
NLS language support for messages.
NLS language support for month/day names and time formats.

The tdg utility exits 0 on success, and >0 if an error occurs.

See TDcal(7).

ical(1), td(1), tdd(1), tdt(1), xterm(1), TDcal(3), td(5), TDcal(7).

See TDcal(7).

See TDcal(7).
July 22, 2013 FreeBSD 13.0-RELEASE