#+title: Buffer Config #+author: Evie Litherland-Smith #+email: evie@xenia.me.uk #+language: en #+filetags: :emacs:config: #+property: header-args:emacs-lisp :tangle yes :mkdirp yes :results output silent * Common buffer shortcuts ** Scratch buffer #+begin_src emacs-lisp ;; Scratch buffer shortcut (keymap-global-set "C-c w x" #'scratch-buffer) #+end_src ** emacs init file #+begin_src emacs-lisp ;; Config file shortcut (defun my/open-init-file () "Open emacs init file" (interactive) (find-file (locate-user-emacs-file "init.el"))) (keymap-global-set "C-c w c" #'my/open-init-file) #+end_src ** NixOS config flake #+begin_src emacs-lisp ;; NixOS flake shortcut (defun my/open-nixos-flake () "Open NixOS system config flake" (interactive) (let ((flake "/etc/nixos/flake.nix")) (if (file-exists-p flake) (find-file flake) (warn (concat flake " not found"))))) (keymap-global-set "C-c w n" #'my/open-nixos-flake) #+end_src ** Templates file #+begin_src emacs-lisp ;; Tempel template file shortcut (with-eval-after-load 'tempel (defun my/open-template-file () "Open `tempel' template file" (interactive) (find-file tempel-path)) (keymap-global-set "C-c w t" #'my/open-template-file)) #+end_src ** Org directory #+begin_src emacs-lisp ;; Org directory shortcut (with-eval-after-load 'org (defun my/open-org-directory () "Open base org-mode directory in dired" (interactive) (find-file org-directory)) (keymap-global-set "C-c w o" #'my/open-org-directory)) #+end_src ** RSS feeds file #+begin_src emacs-lisp ;; Elfeed feeds file shortcut (with-eval-after-load 'org (defun my/open-feeds-file () "Open org file containing elfeed sources" (interactive) (require 'elfeed) (require 'elfeed-org) (find-file (expand-file-name "feeds.org" elfeed-base-directory)))) (keymap-global-set "C-c w f" #'my/open-feeds-file) #+end_src ** Documents and Downloads #+begin_src emacs-lisp (defun my/open-documents-directory () "Open Documents directory" (interactive) (find-file "~/Documents/")) (defun my/open-downloads-directory () "Open Downloads directory" (interactive) (find-file "~/Downloads/")) (keymap-global-set "C-c w d" #'my/open-documents-directory) (keymap-global-set "C-c w C-d" #'my/open-downloads-directory) #+end_src ** Projects directory #+begin_src emacs-lisp (with-eval-after-load 'magit (defun my/open-projects-directory () "Open Projects directory. Try `magit-clone-default-directory' if available, fall back to ~/Projects otherwise." (interactive) (find-file (if magit-clone-default-directory magit-clone-default-directory "~/Projects/"))) (keymap-global-set "C-c w p" #'my/open-projects-directory)) #+end_src