Set up Google calendar org-agenda integration

This commit is contained in:
Jeremy Dormitzer 2019-11-20 09:52:34 -05:00
parent b0ed950247
commit cc9e53abbc

View File

@ -1167,6 +1167,33 @@ It's very useful to open a new org buffer for a quick org-babel exploration.
(leader-def-key "os" #'org-scratch)
#+END_SRC
** org-gcal
Integrate Google calendar with org-mode:
#+BEGIN_SRC emacs-lisp
(defun get-calendar-file (name)
(concat (file-name-as-directory (get-dropbox-directory))
"org/" name))
(use-package org-gcal
:after (org)
:commands (org-gcal-sync
org-gcal-fetch
org-gcal-post-at-point
org-gcal-delete-at-point
org-gcal-refresh-token)
:config
(setq org-gcal-client-id (password-store-get "lola-org-gcal-client-id")
org-gcal-client-secret (password-store-get "lola-org-gcal-client-secret")
org-gcal-file-alist `(("jeremydormitzer@lola.com" . ,(get-calendar-file "lola-gcal.org"))
("jeremy.dormitzer@gmail.com" . ,(get-calendar-file "personal-gcal.org"))
("lut2o2moohg6qkdsto1qfq7th4@group.calendar.google.com" . ,(get-calendar-file "j-n-gcal.org"))))
(add-hook 'org-agenda-mode-hook #'org-gcal-fetch)
(defun org-agenda-redo-and-fetch-gcal (&optional all)
(interactive "P")
(let ((cb (if all #'org-agenda-redo-all #'org-agenda-redo)))
(deferred:nextc (org-gcal-fetch) cb)))
(general-def 'motion org-agenda-mode-map "gr" #'org-agenda-redo-and-fetch-gcal))
#+END_SRC
* Projectile
#+BEGIN_SRC emacs-lisp
(use-package projectile