c1e381eecc
TL;DR: - prefer WPCARRO env-var to BRIEFCASE - remove repository URLs from Emacs libraries - prefer tvl-depot-path where possible - reduce the scope of constants.el - prune (some not all) stale CI configuration Change-Id: I21e9130402502ec6fa2fc4b46753c890069be62d Reviewed-on: https://cl.tvl.fyi/c/depot/+/4545 Tested-by: BuildkiteCI Reviewed-by: wpcarro <wpcarro@gmail.com>
46 lines
1.3 KiB
EmacsLisp
46 lines
1.3 KiB
EmacsLisp
;;; functions.el --- Helper functions -*- lexical-binding: t -*-
|
|
|
|
;; Author: William Carroll <wpcarro@gmail.com>
|
|
;; Version: 0.0.1
|
|
;; Package-Requires: ((emacs "24"))
|
|
|
|
;;; Commentary:
|
|
;; This file hopefully contains friendly APIs that making ELisp development more
|
|
;; enjoyable.
|
|
|
|
;; TODO: Break these out into separate modules.
|
|
|
|
;;; Code:
|
|
(defun functions-evil-window-vsplit-right ()
|
|
"Split the window vertically and focus the right half."
|
|
(interactive)
|
|
(evil-window-vsplit)
|
|
(windmove-right))
|
|
|
|
(defun functions-evil-window-split-down ()
|
|
"Split the window horizontal and focus the bottom half."
|
|
(interactive)
|
|
(evil-window-split)
|
|
(windmove-down))
|
|
|
|
(defun functions-create-snippet ()
|
|
"Create a window split and then opens the Yasnippet editor."
|
|
(interactive)
|
|
(evil-window-vsplit)
|
|
(call-interactively #'yas-new-snippet))
|
|
|
|
(defun functions-evil-replace-under-point ()
|
|
"Faster than typing %s//thing/g."
|
|
(interactive)
|
|
(let ((term (s-replace "/" "\\/" (symbol-to-string (symbol-at-point)))))
|
|
(save-excursion
|
|
(evil-ex (concat "%s/\\b" term "\\b/")))))
|
|
|
|
(defun functions-buffer-dirname ()
|
|
"Return the directory name of the current buffer as a string."
|
|
(->> buffer-file-name
|
|
f-dirname
|
|
f-filename))
|
|
|
|
(provide 'functions)
|
|
;;; functions.el ends here
|