X-Git-Url: https://git.shemshak.org/gitweb.cgi/~bandali/configs/blobdiff_plain/673d5faae25967024eee99332d69208be127e291..23cd3185f768c68aed6d8035a72502e95587db1d:/init.org diff --git a/init.org b/init.org index ae458c7..31c7a86 100644 --- a/init.org +++ b/init.org @@ -946,6 +946,7 @@ There's no way I could top that, so I won't attempt to. (use-package eshell :defer 1 :commands eshell + :bind ("C-c a s e" . eshell) :config (eval-when-compile (defvar eshell-prompt-regexp)) (defun amin/eshell-quit-or-delete-char (arg) @@ -1714,53 +1715,6 @@ Emacs package that displays available keybindings in popup ("C-S-h p" . helpful-at-point))) #+end_src -** [[https://github.com/knu/shell-toggle.el][shell-toggle]] - -#+begin_src emacs-lisp -(use-package shell-toggle - :after eshell - :bind ("C-c a s e" . amin/shell-toggle) - :config - (defun amin/shell-toggle (make-cd) - "Toggle between the shell buffer and whatever buffer you are editing. -With a prefix argument MAKE-CD also insert a \"cd DIR\" command -into the shell, where DIR is the directory of the current buffer. - -When called in the shell buffer returns you to the buffer you were editing -before calling this the first time. - -Options: `shell-toggle-goto-eob'" - (interactive "P") - ;; Try to decide on one of three possibilities: - ;; If not in shell-buffer, switch to it. - ;; If in shell-buffer, return to state before going to the shell-buffer - (if (eq (current-buffer) shell-toggle-shell-buffer) - (shell-toggle-buffer-return-from-shell) - (progn - (shell-toggle-buffer-goto-shell make-cd) - (if shell-toggle-full-screen-window-only (delete-other-windows))))) - - ;; override to split horizontally instead - (defun shell-toggle-buffer-switch-to-other-window () - "Switch to other window. -If the current window is the only window in the current frame, -create a new window and switch to it. - -\(This is less intrusive to the current window configuration than -`switch-buffer-other-window')" - (let ((this-window (selected-window))) - (other-window 1) - ;; If we did not switch window then we only have one window and need to - ;; create a new one. - (if (eq this-window (selected-window)) - (progn - (split-window-horizontally) - (other-window 1))))) - - :custom - (shell-toggle-launch-shell 'shell-toggle-eshell)) -#+end_src - ** [[https://github.com/EricCrosson/unkillable-scratch][unkillable-scratch]] Make =*scratch*= and =*Messages*= unkillable. @@ -2229,7 +2183,59 @@ Convenient footnotes in =message-mode=. footnote-style 'unicode)) #+end_src -** bbdb +** ebdb + +#+begin_src emacs-lisp +(use-package ebdb + :defer 1 + :bind (:map gnus-group-mode-map ("e" . ebdb)) + :config + (setq ebdb-sources (no-littering-expand-var-file-name "ebdb")) + (after! swiper + (add-to-list 'swiper-font-lock-exclude 'ebdb-mode t))) + +(use-package ebdb-com + :after ebdb) + +;; (use-package ebdb-complete +;; :after ebdb +;; :config +;; (ebdb-complete-enable)) + +(use-package company-ebdb + :after (:all company message) + :config + (defun company-ebdb--post-complete (_) nil) + :hook + (message-mode . (lambda () + (add-to-list (make-local-variable 'company-backends) + 'company-ebdb)))) + +(use-package ebdb-gnus + :after ebdb + :custom + (ebdb-gnus-window-configuration + '(article + (vertical 1.0 + (summary 0.25 point) + (horizontal 1.0 + (article 1.0) + (ebdb-gnus 0.3)))))) + +(use-package ebdb-mua + :after ebdb + ;; :custom (ebdb-mua-pop-up nil) + ) + +;; (use-package ebdb-message +;; :after ebdb) + + +;; (use-package ebdb-vcard +;; :after ebdb) +#+end_src + +** COMMENT bbdb Manually install bbdb (=lisp/bbdb= copied from an ELPA-based setup), because installing it from source on Emacs 27 using the following