From 88fa55e29799d1cd33cc9e0d77d24b26504a3b17 Mon Sep 17 00:00:00 2001 From: Adam Goldsmith Date: Sun, 7 Aug 2022 22:45:08 -0400 Subject: [PATCH] Add utility function/binding to evaluate math in place --- .emacs.d/init.el | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/.emacs.d/init.el b/.emacs.d/init.el index 519343c..4233d43 100644 --- a/.emacs.d/init.el +++ b/.emacs.d/init.el @@ -334,6 +334,18 @@ (add-hook 'yaml-mode-hook (lambda () (setq-local show-trailing-whitespace t)))) +(use-package calc + :bind ("C-x M-e" . calc-eval-in-place) + :init + (defun calc-eval-in-place () + (interactive) + (let ((result (calc-eval (buffer-substring-no-properties (point) (mark))))) + (if (stringp result) + (progn + (delete-region (point) (mark)) + (insert result)) + (apply 'user-error "Error at charater %d: %s" result))))) + ;;;; external packages (required) (use-package auto-package-update :ensure :commands auto-package-update-cli