diff --git a/modules/org/org-babel/config.el b/modules/org/org-babel/config.el index e3c1332f5..fd1d39c87 100644 --- a/modules/org/org-babel/config.el +++ b/modules/org/org-babel/config.el @@ -2,6 +2,28 @@ (add-hook 'org-load-hook #'+org-babel|init t) +(defvar +org-babel-languages + '(calc + css + emacs-lisp + haskell + js + latex + ledger + lilypond + lisp + matlab + plantuml + python + restclient ; ob-restclient + ruby + rust ; ob-rust + shell + sqlite + sql-mode ; ob-sql-mode + translate) ; ob-translate + "A list of org-babel languages to load.") + (defun +org-babel|init () (setq org-src-fontify-natively t ; make code pretty org-src-preserve-indentation t ; use native major-mode indentation @@ -11,27 +33,11 @@ (org-babel-do-load-languages 'org-babel-load-languages - (mapcar (lambda (sym) (cons sym t)) - '(calc - css - emacs-lisp - haskell - js - latex - ledger - lilypond - lisp - matlab - plantuml - python - restclient ; ob-restclient - ruby - rust ; ob-rust - shell - sqlite - sql-mode ; ob-sql-mode - translate ; ob-translate - ))) + (cl-loop for sym in +org-babel-languages + collect (cons sym t))) + + ;; I prefer C-c C-c for confirming over the default C-c ' + (map! :map org-src-mode-map "C-c C-c" #'org-edit-src-exit) ;; In a recent update, `org-babel-get-header' was removed from org-mode, which ;; is something a fair number of babel plugins use. So until those plugins @@ -42,11 +48,7 @@ if (funcall fn (eq (car p) key)) collect p)) - ;; I prefer C-c C-c for confirming over the default C-c ' - (map! :map org-src-mode-map "C-c C-c" #'org-edit-src-exit) - (defun +org|src-mode-remove-header () "Remove header-line with keybinding help; I know the keybinds." - (when header-line-format - (setq header-line-format nil))) + (setq header-line-format nil)) (add-hook 'org-src-mode-hook #'+org|src-mode-remove-header))