Using Emacs - 26 - Google Calendar, Org Agenda

A while ago I did a couple of videos on how I use org-capture
(part 1, part 2). I didn't get into a big part of org-capture - how I
use org-mode and capture to manage my calendar and todo lists.

I was waiting to see if I liked my current setup - using org-gcal to
sync with my Google Calendar for appointments while using my main org
file for my todo list.

Coincidentally, Rainer König recently put up a video on how he syncs
with his Google calendar. He uses a different method than the one I
present in this video so make sure to check out his approach. In fact,
you should check out his entire series on org-mode.

Here's the code I use install org-gcal. The video steps through
setting up things on the Google side. You'll have to replace the
**client ID** and client secrets in the code below as well as use
your calendar name and whatever org file you want to sync with.

I use these two hooks to sync things semi-automatically. The first
hook syncs whenever I load the agenda. Since this happens in the
background, if I just added something to my calendar, I might have to
reload the agenda by hitting r in the agenda view.

The end result is that I can add an event in my Google calendar (or
accept a calendar invite) and it appears in my org-mode
agenda. Likewise, I can add a scheduled event using capture and it
will sync up to Google. I can also just add an event by editing
gcal.org but then would have to run org-gcal-post-at-point to send
it up to Google.

Now, I can use bring up a regular agenda C-a a, my todo list C-a
t or by adding a custom agenda command: