Calendar and Contact Configuration
Table of Contents
vdirsyncer
- Synchronize calendars and contacts
[general] status_path = "~/.config/vdirsyncer/status/" [pair radicale_calendar] a = "radicale_calendar_remote" b = "radicale_calendar_local" collections = ["76bfc802-3186-e3af-f688-7e165115b4f8", "f78f1649-b54e-7bfe-488d-6a7005a5aa2f"] conflict_resolution = "a wins" [storage radicale_calendar_remote] type = "caldav" url = "https://radicale.tdehaeze.xyz/tdehaeze/" username = "tdehaeze" password = "<<get-password(passname='radicale.tdehaeze.xyz/tdehaeze')>>" [storage radicale_calendar_local] type = "filesystem" path = "~/.calendars/radicale/" fileext = ".ics" [pair esrf_calendar] a = "esrf_calendar_remote" b = "esrf_calendar_local" collections = ["calendar"] conflict_resolution = "a wins" [storage esrf_calendar_remote] type = "caldav" url = "https://calendar.esrf.fr/egroupware/groupdav.php/calendar" username = "dehaeze" password = "<<get-password(passname='esrf.fr/dehaeze')>>" [storage esrf_calendar_local] type = "filesystem" path = "~/.calendars/esrf/" fileext = ".ics" [pair radicale_contacts] a = "radicale_contacts_remote" b = "radicale_contacts_local" collections = ["98ee5e2c-afcf-70e0-c4a2-9fb9de2e97b7"] conflict_resolution = "a wins" [storage radicale_contacts_local] type = "filesystem" path = "~/.contacts/" fileext = ".vcf" [storage radicale_contacts_remote] type = "carddav" url = "https://radicale.tdehaeze.xyz/tdehaeze/" username = "tdehaeze" password = "<<get-password(passname='radicale.tdehaeze.xyz/tdehaeze')>>"
khal
- CLI calendar application
[calendars] [[Home]] path = ~/.calendars/radicale/76bfc802-3186-e3af-f688-7e165115b4f8/ color = "#B8BB26" # Green [[Thesis]] path = ~/.calendars/radicale/f78f1649-b54e-7bfe-488d-6a7005a5aa2f/ color = "#FB4934" # Red [[ESRF]] path = ~/.calendars/esrf/calendar/ color = "#83A598" # Blue [[Birthdays]] path = ~/.contacts/98ee5e2c-afcf-70e0-c4a2-9fb9de2e97b7/ color = "#D3869B" # aqua type = birthdays [highlight_days] multiple = "#FABD2F" # Yellow [default] highlight_event_days = True [locale] local_timezone= Europe/Berlin default_timezone= Europe/Berlin timeformat= %H:%M dateformat= %d.%m. longdateformat= %d.%m.%Y datetimeformat= %d.%m. %H:%M longdatetimeformat= %d.%m.%Y %H:%M [keybindings] delete = d today = . new = c
khard
- CLI contact application
[addressbooks] [[contacts]] path = ~/.contacts/98ee5e2c-afcf-70e0-c4a2-9fb9de2e97b7/ [general] debug = no default_action = list editor = vim merge_editor = vimdiff [contact table] # display names by first or last name: first_name / last_name display = first_name # group by address book: yes / no group_by_addressbook = no # reverse table ordering: yes / no reverse = no # append nicknames to name column: yes / no show_nicknames = no # show uid table column: yes / no show_uids = yes # sort by first or last name: first_name / last_name sort = last_name # localize dates: yes / no localize_dates = yes # set a comma separated list of preferred phone number types in descending priority # or nothing for non-filtered alphabetical order preferred_phone_number_type = pref, cell, home # set a comma separated list of preferred email address types in descending priority # or nothing for non-filtered alphabetical order preferred_email_address_type = pref, work, home [vcard] # extend contacts with your own private objects # these objects are stored with a leading "X-" before the object name in the vcard files # every object label may only contain letters, digits and the - character # example: # private_objects = Jabber, Skype, Twitter private_objects = Jabber, Skype, Twitter # preferred vcard version: 3.0 / 4.0 preferred_version = 3.0 # Look into source vcf files to speed up search queries: yes / no search_in_source_files = no # skip unparsable vcard files: yes / no skip_unparsable = no
ics-add
- Add ICS file to Khal
This function is useful to easily add an event to khal
.
It is for instance used in the mutt
configuration.
To share an event by email, the currently best way to proceed is to first find the event on khal
, press e
to export it to a file, and then add this file as an attachment.
if [[ -f $1 ]]; then resp=$(echo -e "yes\nno" | rofi -i -only-match -dmenu -p "Would you like to add the event:" -mesg "`khal printics $1 | tail -n +2`") if [[ "$resp" == "yes" ]]; then calendar=$(echo "`khal printcalendars`" | rofi -i -only-match -dmenu -p "Save to:") if [ -z "$calendar" ]; then exit; fi khal import -a "$calendar" --batch $1 && \ dunstify "Calendar" "Even added"; fi fi