195 lines
5.2 KiB
Org Mode
195 lines
5.2 KiB
Org Mode
#+TITLE:Calendar and Contact Configuration
|
|
#+SETUPFILE: ./setup/org-setup-file.org
|
|
|
|
* =vdirsyncer= - Synchronize calendars and contacts
|
|
:PROPERTIES:
|
|
:header-args: :tangle ~/.config/vdirsyncer/config
|
|
:header-args+: :comments both :mkdirp yes :noweb no-export
|
|
:END:
|
|
|
|
#+BEGIN_SRC conf
|
|
[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.fetch = ["command", "get-pass", "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.fetch = ["command", "get-pass", "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.fetch = ["command", "get-pass", "radicale.tdehaeze.xyz/tdehaeze"]
|
|
#+END_SRC
|
|
|
|
* =khal= - CLI calendar application
|
|
:PROPERTIES:
|
|
:header-args: :tangle ~/.config/khal/config
|
|
:header-args+: :comments both :mkdirp yes
|
|
:END:
|
|
|
|
#+BEGIN_SRC conf
|
|
[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
|
|
#+END_SRC
|
|
|
|
* =khard= - CLI contact application
|
|
:PROPERTIES:
|
|
:header-args: :tangle ~/.config/khard/khard.conf
|
|
:header-args+: :comments both :mkdirp yes
|
|
:END:
|
|
|
|
#+BEGIN_SRC conf
|
|
[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
|
|
#+END_SRC
|
|
|
|
* =ics-add= - Add ICS file to Khal
|
|
:PROPERTIES:
|
|
:CUSTOM_ID: ics-add
|
|
:header-args:bash: :comments both :mkdirp yes
|
|
:header-args:bash+: :shebang "#!/usr/bin/env bash"
|
|
:header-args:bash+: :tangle-mode (identity #o555)
|
|
:header-args:bash+: :tangle ~/.local/bin/ics-add
|
|
:END:
|
|
|
|
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.
|
|
|
|
#+begin_src bash
|
|
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
|
|
#+end_src
|