Emacs: Back to vterm

This commit is contained in:
Joseph Ferano 2024-08-01 06:29:48 +07:00
parent 0f0582c184
commit c644a4346d

View File

@ -156,113 +156,113 @@ Finish up
#+END_SRC #+END_SRC
** Package Management ** Package Management
#+begin_src emacs-lisp #+begin_src emacs-lisp
;; Also read: <https://protesilaos.com/codelog/2022-05-13-emacs-elpa-devel/> ;; Also read: <https://protesilaos.com/codelog/2022-05-13-emacs-elpa-devel/>
(setq package-archives (setq package-archives
'(("elpa" . "https://elpa.gnu.org/packages/") '(("elpa" . "https://elpa.gnu.org/packages/")
("elpa-devel" . "https://elpa.gnu.org/devel/") ("elpa-devel" . "https://elpa.gnu.org/devel/")
("nongnu" . "https://elpa.nongnu.org/nongnu/") ("nongnu" . "https://elpa.nongnu.org/nongnu/")
("melpa" . "https://melpa.org/packages/"))) ("melpa" . "https://melpa.org/packages/")))
;; Proof-of-concept to install a list of packages ;; Proof-of-concept to install a list of packages
(mapc (mapc
(lambda (package) (lambda (package)
(unless (package-installed-p package) (unless (package-installed-p package)
(package-install package))) (package-install package)))
'(recentf '(recentf
benchmark-init benchmark-init
;; dashboard ;; dashboard
;; ligature ;; ligature
;; hydra ;; hydra
;; multiple-cursors ;; multiple-cursors
;; Text Editing ;; Text Editing
evil evil
evil-collection evil-collection
evil-surround evil-surround
evil-snipe evil-snipe
evil-commentary evil-commentary
evil-goggles evil-goggles
avy avy
all-the-icons-ibuffer all-the-icons-ibuffer
drag-stuff drag-stuff
;; ace-window ;; ace-window
;; Mail ;; Mail
smtpmail smtpmail
sendmail sendmail
age age
popper popper
centaur-tabs centaur-tabs
;; VEMCO ;; VEMCO
vertico vertico
vertico-posframe vertico-posframe
savehist savehist
embark embark
embark-consult embark-consult
marginalia marginalia
orderless orderless
consult consult
consult-eglot consult-eglot
all-the-icons-completion all-the-icons-completion
helpful helpful
;; vterm vterm
eat eat
;; Enhancements ;; Enhancements
olivetti olivetti
doom-modeline doom-modeline
undo-fu undo-fu
undo-fu-session undo-fu-session
vundo vundo
which-key which-key
mono-complete mono-complete
beframe beframe
harpoon harpoon
format-all format-all
;; company ;; company
;; lsp-mode ;; lsp-mode
;; lsp-ui ;; lsp-ui
;; flycheck ;; flycheck
;; Org ;; Org
org-bullets org-bullets
org-kanban org-kanban
org-fancy-priorities org-fancy-priorities
org-roam org-roam
org-download org-download
valign valign
;; Programming Languages ;; Programming Languages
tuareg tuareg
dune dune
merlin merlin
merlin-eldoc merlin-eldoc
utop utop
highlight-quoted highlight-quoted
rustic rustic
ob-rust ob-rust
haskell-mode haskell-mode
clojure-mode clojure-mode
cider cider
fsharp-mode fsharp-mode
go-mode go-mode
json-mode json-mode
markdown-mode markdown-mode
typescript-mode typescript-mode
elm-mode elm-mode
gdscript-mode gdscript-mode
;; Tools ;; Tools
mu4e-alert mu4e-alert
dirvish dirvish
restclient restclient
gptel gptel
disaster disaster
magit)) magit))
(setopt package-vc-selected-packages (setopt package-vc-selected-packages
'((dotenv :url "https://github.com/pkulev/dotenv.el") '((dotenv :url "https://github.com/pkulev/dotenv.el")
(indent-bars :url "https://github.com/jdtsmith/indent-bars") (indent-bars :url "https://github.com/jdtsmith/indent-bars")
(doom-themes :url "https://github.com/JosephFerano/doom-themes") (doom-themes :url "https://github.com/JosephFerano/doom-themes")
(org-timeblock :url "https://github.com/ichernyshovvv/org-timeblock") (org-timeblock :url "https://github.com/ichernyshovvv/org-timeblock")
(dape :url "https://github.com/svaante/dape") (dape :url "https://github.com/svaante/dape")
(app-launcher :url "https://github.com/SebastienWae/app-launcher"))) (app-launcher :url "https://github.com/SebastienWae/app-launcher")))
(package-initialize) (package-initialize)
#+end_src #+end_src
** COMMENT Benchmarking ** COMMENT Benchmarking
@ -894,8 +894,10 @@ Fill region is great, except when you don't need it...
(kbd "SPC br") 'joe/revert-buffer-no-confirm (kbd "SPC br") 'joe/revert-buffer-no-confirm
(kbd "SPC gg") 'magit-status (kbd "SPC gg") 'magit-status
(kbd "SPC gc") 'magit-clone (kbd "SPC gc") 'magit-clone
(kbd "SPC ss") 'eat ;; (kbd "SPC ss") 'eat
(kbd "SPC sv") 'eat-other-window ;; (kbd "SPC sv") 'eat-other-window
(kbd "SPC ss") 'joe/vterm-here
(kbd "SPC sv") 'vterm-other-window
(kbd "SPC Ba") 'joe/bookmark-set-and-save (kbd "SPC Ba") 'joe/bookmark-set-and-save
(kbd "SPC Bd") 'bookmark-delete (kbd "SPC Bd") 'bookmark-delete
(kbd "SPC mr") 'joe/compile-run (kbd "SPC mr") 'joe/compile-run
@ -1994,7 +1996,7 @@ be kept here commented out in case we want to try it again.
(global-set-key (kbd "C-h C") #'helpful-command) (global-set-key (kbd "C-h C") #'helpful-command)
#+end_src #+end_src
** Terminals/Shells ** Terminals/Shells
*** COMMENT vterm *** vterm
#+begin_src emacs-lisp #+begin_src emacs-lisp
(require 'vterm) (require 'vterm)
(setq vterm-shell "/bin/fish") (setq vterm-shell "/bin/fish")
@ -2026,8 +2028,8 @@ be kept here commented out in case we want to try it again.
(defun joe/vterm-mode-hook () (defun joe/vterm-mode-hook ()
(define-key vterm-mode-map (kbd "C-c C-x") #'vterm-send-C-x) (define-key vterm-mode-map (kbd "C-c C-x") #'vterm-send-C-x)
(when (boundp 'evil-mode) (when (boundp 'evil-mode)
(evil-define-key 'insert vterm-mode-map (kbd "C-f") #'vterm-send-C-f) (evil-define-key 'insert vterm-mode-map (kbd "C-f") (lambda () (interactive) (vterm-send-key (kbd "C-f"))))
(evil-define-key 'insert vterm-mode-map (kbd "C-w") #'vterm-send-C-w) (evil-define-key 'insert vterm-mode-map (kbd "C-w") (lambda () (interactive) (vterm-send-key (kbd "C-w"))))
(evil-define-key 'insert vterm-mode-map (kbd "<delete>") #'vterm-send-delete)) (evil-define-key 'insert vterm-mode-map (kbd "<delete>") #'vterm-send-delete))
(setq-local global-hl-line-mode nil) (setq-local global-hl-line-mode nil)
(setq buffer-face-mode-face '(:family "Fira Code Nerd Font")) (setq buffer-face-mode-face '(:family "Fira Code Nerd Font"))
@ -2079,7 +2081,7 @@ the right frame, I'm going to use the frame's name to close and remove the hook
(add-hook 'delete-frame-functions #'joe/kill-vterm-scratch) (add-hook 'delete-frame-functions #'joe/kill-vterm-scratch)
(add-hook 'kill-buffer-hook #'joe/kill-frame)))) (add-hook 'kill-buffer-hook #'joe/kill-frame))))
#+end_src #+end_src
*** eat *** COMMENT eat
#+begin_src emacs-lisp #+begin_src emacs-lisp
(defun joe/eat-mode-hook () (defun joe/eat-mode-hook ()
(setq-local global-hl-line-mode nil) (setq-local global-hl-line-mode nil)