From 450e95191418939f6b14b4bdcab75e7d270760ee Mon Sep 17 00:00:00 2001 From: Alexander Rosenberg Date: Fri, 26 Sep 2025 22:49:26 -0700 Subject: [PATCH] Org babel stuff --- init.el | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/init.el b/init.el index 0b0cd95..47a3727 100644 --- a/init.el +++ b/init.el @@ -1872,6 +1872,9 @@ otherwise, call `bibtex-find-text'." :ensure nil :hook ((python-ts-mode . my/eglot-if-trusted) (python-ts-mode . my/-setup-python-ts-mode)) + :init + (setq python-shell-interpreter "ipython" + python-shell-interpreter-args "-i --simple-prompt") :config (defun my/-setup-python-ts-mode () (setq-local fill-column 79))) @@ -2269,6 +2272,19 @@ Note that this erases the buffer before doing anything." (advice-add 'jupyter-kernel-language-mode-properties :filter-return #'my/-jupyter-dont-use-ts-modes) :config + ;; fix some bugs + (defun my/-fix-jupyter-org--set-src-block-cache (oldfun) + (unless jupyter-org--src-block-cache + (setq jupyter-org--src-block-cache + (list 'invalid nil (make-marker) + (let ((end (make-marker))) + ;; Move the end marker when text is inserted + (set-marker-insertion-type end t) + end)))) + (funcall oldfun)) + (advice-add 'jupyter-org--set-src-block-cache :around + #'my/-fix-jupyter-org--set-src-block-cache) + (face-spec-set 'jupyter-repl-traceback '((default . (:background unspecified))) 'face-override-spec) @@ -3033,8 +3049,11 @@ ARG is the same as for either of the above functions." (0 (prog1 nil (compose-region (match-beginning 1) (match-end 1) "•")))))) + (defun my/-check-org-babel-eval-no-confirm (&rest args) + (not (trusted-content-p))) (setq org-directory "~/org" org-agenda-files '("~/org/") + org-confirm-babel-evaluate 'my/-check-org-babel-eval-no-confirm org-log-into-drawer t org-log-done 'time org-log-redeadline 'time @@ -3060,7 +3079,19 @@ R is rest of the arguments to OLDFUN." major-mode))) (apply oldfun r))) (advice-add 'org-element-at-point :around 'my/-org-allow-in-derived-mode) - (advice-add 'org-table-header-line-mode :around 'my/-org-allow-in-derived-mode)) + (advice-add 'org-table-header-line-mode :around + 'my/-org-allow-in-derived-mode) + :config + ;; org-babel stuff + (org-babel-do-load-languages + 'org-babel-load-languages + '((emacs-lisp . t) + (python . t) + (jupyter . t) + (shell . t))) + (setq org-babel-default-header-args:jupyter-python + '((:kernel . "python") (:session . "org-babel-python") (:async . "yes"))) + (org-babel-jupyter-override-src-block "python")) (use-package evil-org :after org :hook (org-mode . evil-org-mode)