diff --git a/emacs/.config/doom/config.el b/emacs/.config/doom/config.el index 588db6e..98576fa 100644 --- a/emacs/.config/doom/config.el +++ b/emacs/.config/doom/config.el @@ -112,3 +112,21 @@ ;; Or globally (with-eval-after-load 'org (global-org-modern-mode)) +(require 'cl-lib) + + +(defun eshell-load-bash-aliases () + "Read Bash aliases and add them to the list of eshell aliases." + ;; Bash needs to be run - temporarily - interactively + ;; in order to get the list of aliases. + (with-temp-buffer + (call-process "bash" nil '(t nil) nil "-ci" "alias") + (goto-char (point-min)) + (cl-letf (((symbol-function 'eshell-write-aliases-list) #'ignore)) + (while (re-search-forward "alias \\(.+\\)='\\(.+\\)'$" nil t) + (eshell/alias (match-string 1) (match-string 2)))) + (eshell-write-aliases-list))) + +;; We only want Bash aliases to be loaded when Eshell loads its own aliases, +;; rather than every time `eshell-mode' is enabled. +(add-hook 'eshell-alias-load-hook 'eshell-load-bash-aliases) diff --git a/emacs/.config/doom/custom.el b/emacs/.config/doom/custom.el index 7f4a093..114703b 100644 --- a/emacs/.config/doom/custom.el +++ b/emacs/.config/doom/custom.el @@ -4,7 +4,7 @@ ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(magit-todos-insert-after '(bottom) nil nil "Changed by setter of obsolete option `magit-todos-insert-at'") - '(package-selected-packages '(nov w3m vulpea ef-themes)) + '(package-selected-packages '(helix-theme nov w3m vulpea ef-themes)) '(safe-local-variable-values '((pytest-global-name . "docker-compose run --rm test --")))) (custom-set-faces ;; custom-set-faces was added by Custom. diff --git a/emacs/.config/doom/init.el b/emacs/.config/doom/init.el index 9778a97..8d0debd 100644 --- a/emacs/.config/doom/init.el +++ b/emacs/.config/doom/init.el @@ -180,7 +180,7 @@ ;;solidity ; do you need a blockchain? No. ;;swift ; who asked for emoji variables? ;;terra ; Earth and Moon in alignment for performance. - (web +lsp) ; the tubes + web ; the tubes yaml ; JSON, but readable ;;zig ; C, but simpler