Files
dotfiles/doom.d/modules/personal.org
AChavali 08cc5bd148 ~removed goto functions and using lambdas now
Goto functions just open dired instances for a specific folder, which a
lambda can do better. Instead of having to load the new file just to use
the function, just make the bindings directly via dired.
2020-02-09 18:52:00 +00:00

2.6 KiB

Personal module

Preclude

Personal functionality that aid my workflow or are just cool.

Reload

(defun oreodave/reload ()
  "Reload instance of doom"
  (interactive)
  (load-file (concat doom-private-dir "config.el")))

Reload the doom session by brute force fully loading the "config.el" file in the doom private directory.

Change theme

(setq oreodave/themes/theme-list '(doom-solarized-dark doom-gruvbox doom-city-lights
                                                doom-outrun-electric doom-vibrant doom-molokai
                                                doom-solarized-light doom-acario-light))

(defun oreodave/themes/set-new-theme ()
  "Set the theme from my own selection, mutate as you see fit"
  (interactive)
  (ivy-read "Select theme: "
            oreodave/theme-list
            :caller 'oreodave/set-new-theme
            :action (lambda (x) ; Shamelessly copied from counsel in case of change
                      (condition-case nil
                          (progn
                            (mapc #'disable-theme custom-enabled-themes)
                            (load-theme (intern x) t)
                            (when (fboundp 'powerline-reset)
                              (powerline-reset)))
                        (error "Problem loading theme %s" x)))))

Allow user to set a theme from a limited set of candidates, based on "oreodave/theme-list".

  • Themes sanctioned by me:

    • doom-solarized-dark: just the right everything. best for day.
    • doom-gruvbox: good contrast, better for night.
    • doom-city-lights: Eh contrast, quite dark
    • doom-outrun-electric: Interesting colour palette
    • doom-vibrant: Good contrast, bit lighter
    • doom-molokai: hacker style
    • doom-solarized-light: Light orange theme that's actually okay on the eyes
    • doom-acario-light: Light theme with not bad colours
  • Themes not sanctioned:

    • Any of the base16 themes for anything other than editing code, not org. Contrast isn't good enough
    • Light themes other than Emacs default, maybe sometimes solarized-light
    • Horrid low contrast ones with no colour. Grayscale particularly. I can't handle those.

Password store

Function to get a password given a key.

(defun oreodave/password-store/get-password (KEY)
  (shell-command-to-string (concat "pass " KEY)))

Weather

(defun oreodave/weather ()
  "Check the weather at the 'location' stored in password store"
  (interactive)
  (wttrin (oreodave/password-store/get-password "location")))

Function to quickly check weather, which is what I wanted wttrin for.