diff options
author | jjanzen <jjanzen@jjanzen.ca> | 2025-03-14 10:32:06 -0500 |
---|---|---|
committer | jjanzen <jjanzen@jjanzen.ca> | 2025-03-14 10:32:06 -0500 |
commit | 261396763074f866dc8386aa48f2ff0ca8147498 (patch) | |
tree | dca9eb3ffc01e87a7fd41c875b879c6b64e8ac54 /common/.config/emacs/init.el.org | |
parent | c586e740f13bbde3c388ae3a2639daf597213fe2 (diff) |
system changes
Diffstat (limited to 'common/.config/emacs/init.el.org')
-rw-r--r-- | common/.config/emacs/init.el.org | 52 |
1 files changed, 26 insertions, 26 deletions
diff --git a/common/.config/emacs/init.el.org b/common/.config/emacs/init.el.org index 32c060c..5033852 100644 --- a/common/.config/emacs/init.el.org +++ b/common/.config/emacs/init.el.org @@ -312,36 +312,36 @@ Install a better PDF viewer than =DocView=. Install and configure =eat= as a terminal emulator in Emacs with =eshell= as a shell. #+begin_src emacs-lisp + (require 'em-prompt) + ;; Overwrite a default function that makes the prompt editable for some reason + (defun eshell-emit-prompt () + "Emit a prompt if eshell is being used interactively." + (when (boundp 'ansi-color-context-region) + (setq ansi-color-context-region nil)) + (run-hooks 'eshell-before-prompt-hook) + (if (not eshell-prompt-function) + (set-marker eshell-last-output-end (point)) + (let ((prompt (funcall eshell-prompt-function))) + (add-text-properties + 0 (length prompt) + (if eshell-highlight-prompt + '( read-only t + field prompt + font-lock-face eshell-prompt + front-sticky (read-only field font-lock-face) + rear-nonsticky (read-only field font-lock-face)) + '( read-only t + field prompt + front-sticky (read-only field font-lock-face) + rear-nonsticky (read-only field font-lock-face))) + prompt) + (eshell-interactive-filter nil prompt))) + (run-hooks 'eshell-after-prompt-hook)) + (use-package eat :init (setopt eat-kill-buffer-on-exit t) (eat-eshell-mode) - (add-hook 'eshell-mode-hook (lambda () - (require 'em-prompt) - ;; Overwrite a default function that makes the prompt editable for some reason - (defun eshell-emit-prompt () - "Emit a prompt if eshell is being used interactively." - (when (boundp 'ansi-color-context-region) - (setq ansi-color-context-region nil)) - (run-hooks 'eshell-before-prompt-hook) - (if (not eshell-prompt-function) - (set-marker eshell-last-output-end (point)) - (let ((prompt (funcall eshell-prompt-function))) - (add-text-properties - 0 (length prompt) - (if eshell-highlight-prompt - '( read-only t - field prompt - font-lock-face eshell-prompt - front-sticky (read-only field font-lock-face) - rear-nonsticky (read-only field font-lock-face)) - '( read-only t - field prompt - front-sticky (read-only field font-lock-face) - rear-nonsticky (read-only field font-lock-face))) - prompt) - (eshell-interactive-filter nil prompt))) - (run-hooks 'eshell-after-prompt-hook)))) (defun jj/shorten-path-str (path) (let* ((components (split-string (replace-regexp-in-string (getenv "HOME") "~" path) "/")) |