diff options
author | Vincent Ambo <mail@tazj.in> | 2020-06-16T00·06+0100 |
---|---|---|
committer | Vincent Ambo <mail@tazj.in> | 2020-06-16T00·06+0100 |
commit | 4fe4e3d9a297ff9c8aa77e1a196a96b65ecd99ae (patch) | |
tree | 54455b0cd36e58fd745ce0b6d38101b7a902ce4b /users/glittershark/emacs.d/autoload/hlissner.el | |
parent | 2edb963b97867b27f68efac8d05bf966077b0b01 (diff) | |
parent | 69ee53bffaf145eb86dd39a6cdc0ae4d9d3de45c (diff) |
Add 'users/glittershark/emacs.d/' from commit '69ee53bffaf145eb86dd39a6cdc0ae4d9d3de45c' r/979
git-subtree-dir: users/glittershark/emacs.d git-subtree-mainline: 2edb963b97867b27f68efac8d05bf966077b0b01 git-subtree-split: 69ee53bffaf145eb86dd39a6cdc0ae4d9d3de45c
Diffstat (limited to 'users/glittershark/emacs.d/autoload/hlissner.el')
-rw-r--r-- | users/glittershark/emacs.d/autoload/hlissner.el | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/users/glittershark/emacs.d/autoload/hlissner.el b/users/glittershark/emacs.d/autoload/hlissner.el new file mode 100644 index 000000000000..87b2236d12c7 --- /dev/null +++ b/users/glittershark/emacs.d/autoload/hlissner.el @@ -0,0 +1,53 @@ +;;; autoload/hlissner.el -*- lexical-binding: t; -*- + +;;;###autoload +(defun +hlissner/install-snippets () + "Install my snippets from https://github.com/hlissner/emacs-snippets into +private/hlissner/snippets." + (interactive) + (doom-fetch :github "hlissner/emacs-snippets" + (expand-file-name "snippets" (doom-module-path :private 'hlissner)))) + +;;;###autoload +(defun +hlissner/yank-buffer-filename () + "Copy the current buffer's path to the kill ring." + (interactive) + (if-let* ((filename (or buffer-file-name (bound-and-true-p list-buffers-directory)))) + (message (kill-new (abbreviate-file-name filename))) + (error "Couldn't find filename in current buffer"))) + +(defmacro +hlissner-def-finder! (name dir) + "Define a pair of find-file and browse functions." + `(progn + (defun ,(intern (format "+hlissner/find-in-%s" name)) () + (interactive) + (let ((default-directory ,dir) + projectile-project-name + projectile-require-project-root + projectile-cached-buffer-file-name + projectile-cached-project-root) + (call-interactively (command-remapping #'projectile-find-file)))) + (defun ,(intern (format "+hlissner/browse-%s" name)) () + (interactive) + (let ((default-directory ,dir)) + (call-interactively (command-remapping #'find-file)))))) + +;;;###autoload (autoload '+hlissner/find-in-templates "autoload/hlissner" nil t) +;;;###autoload (autoload '+hlissner/browse-templates "autoload/hlissner" nil t) +(+hlissner-def-finder! templates +file-templates-dir) + +;;;###autoload (autoload '+hlissner/find-in-snippets "autoload/hlissner" nil t) +;;;###autoload (autoload '+hlissner/browse-snippets "autoload/hlissner" nil t) +(+hlissner-def-finder! snippets +hlissner-snippets-dir) + +;;;###autoload (autoload '+hlissner/find-in-dotfiles "autoload/hlissner" nil t) +;;;###autoload (autoload '+hlissner/browse-dotfiles "autoload/hlissner" nil t) +(+hlissner-def-finder! dotfiles (expand-file-name ".dotfiles" "~")) + +;;;###autoload (autoload '+hlissner/find-in-emacsd "autoload/hlissner" nil t) +;;;###autoload (autoload '+hlissner/browse-emacsd "autoload/hlissner" nil t) +(+hlissner-def-finder! emacsd doom-emacs-dir) + +;;;###autoload (autoload '+hlissner/find-in-notes "autoload/hlissner" nil t) +;;;###autoload (autoload '+hlissner/browse-notes "autoload/hlissner" nil t) +(+hlissner-def-finder! notes +org-dir) |