(setq techbro t)

At some point in the last three or so years of using Emacs I seem to have become moderately competent in Lisp, or at least competent enough to use it for my own purposes, which mostly consist of “if this happens, output a string”. Now that I’ve got myself a DW subscription and increased the number of icons I have, er, tenfold, I’ve rewritten my icon selection script so it actually picks an icon that suits the post instead of just doing it alphabetically. Because I am a bit weird, I ran every single one of my previous posts through the new script and updated their icons with what it gave me. I think that’s called beta testing.

Another thing I’ve done is reorganised the files for my agenda, and added a few lines to my config that change which files are displayed according to where I am and what time it is. This is what I wrote:

(add-to-list 'org-agenda-files "~/Documents/drive/org/calendar/music.org")
(add-to-list 'org-agenda-files "~/Documents/drive/org/calendar/admin.org")
(if (atwork)
    (progn
      (add-to-list 'org-agenda-files "~/Documents/drive/org/calendar/work.org")
      (add-to-list 'org-agenda-files "~/Documents/drive/org/calendar/acwri.org"))
  (progn
    (add-to-list 'org-agenda-files "~/Documents/drive/org/calendar/home.org")
    (if (isworkday)
        (if (< (string-to-number (format-time-string "%H")) 18)
            (if (> (string-to-number (format-time-string "%H")) 7)
                (progn
                  (add-to-list 'org-agenda-files "~/Documents/drive/org/calendar/work.org")
                  (add-to-list 'org-agenda-files "~/Documents/drive/org/calendar/acwri.org"))
              (progn
                (add-to-list 'org-agenda-files "~/Documents/drive/org/calendar/personal.org")
                (add-to-list 'org-agenda-files "~/Documents/drive/org/calendar/habit.org")))
          (progn
            (add-to-list 'org-agenda-files "~/Documents/drive/org/calendar/personal.org")
            (add-to-list 'org-agenda-files "~/Documents/drive/org/calendar/habit.org")))
      (progn
        (add-to-list 'org-agenda-files "~/Documents/drive/org/calendar/personal.org")
        (add-to-list 'org-agenda-files "~/Documents/drive/org/calendar/habit.org")))))

(Yes, I’m aware that Lisp is a bizarre language. But I think progn is cute.)

Now that this is set up, along with another couple of functions I wrote called atwork and isworkday, work stuff only shows up if I’m at work, or at home during (roughly defined) working hours; personal stuff (games I need to play, fic I need to write) only shows up if I’m at home and it’s outside those hours; and home-related things (cleaning I need to do … with the best of intentions … argh) only shows up if I’m at home, regardless of the time of day. This is motivating me to add a lot more random shite to my personal and home todo lists, knowing that I (theoretically) won’t get distracted at work by certain fun fannish activities I’m supposed to be doing, and then, hopefully, actually being reminded to complete those fun fannish activities once I’m in free time mode.

By way of example, my agenda when I was at work on Tuesday looked like this:

And then, when I got home, it looked like this:

(The “Day 12” at the top is from another script I wrote, to remind me where I am in my menstrual cycle … seriously, I feel like Emacs has publicly advertised functions and packages for everything but this. It’s the Techbro Gender Curse: to my knowledge, literally all the famed Emacs users but one are cis men, so … yeah.)