From dae7521ccf53e68a370d4051d6909d38d4ac2ad0 Mon Sep 17 00:00:00 2001 From: BardofSprites <89086143+BardofSprites@users.noreply.github.com> Date: Tue, 20 Jan 2026 10:18:44 -0500 Subject: enhanced LaTeX editing --- bard-elisp/bard-writing.el | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) (limited to 'bard-elisp/bard-writing.el') diff --git a/bard-elisp/bard-writing.el b/bard-elisp/bard-writing.el index 2ba5a6e..fcf2762 100644 --- a/bard-elisp/bard-writing.el +++ b/bard-elisp/bard-writing.el @@ -124,6 +124,27 @@ (org-fragtog-mode t) (org-cdlatex-mode t) (electric-pair-local-mode t) - (bard/cdlatex-add-math-symbols)) + (bard/cdlatex-add-math-symbols) + ;; sending math to calc from latex doc + (define-key org-mode-map (kbd "C-S-e") #'latex-math-from-calc)) + +;; latex into calc +(defun latex-math-from-calc () + "Evaluate `calc' on the contents of line at point." + (interactive) + (cond ((region-active-p) + (let* ((beg (region-beginning)) + (end (region-end)) + (string (buffer-substring-no-properties beg end))) + (kill-region beg end) + (insert (calc-eval `(,string calc-language latex + calc-prefer-frac t + calc-angle-mode rad))))) + (t (let ((l (thing-at-point 'line))) + (end-of-line 1) (kill-line 0) + (insert (calc-eval `(,l + calc-language latex + calc-prefer-frac t + calc-angle-mode rad))))))) (provide 'bard-writing) -- cgit v1.2.3