From c30ba5f3272546f172895a22fe0700c24dabc4af Mon Sep 17 00:00:00 2001 From: Eshel Yaron Date: Sun, 29 Jan 2023 14:43:48 +0200 Subject: [PATCH] Update Emacs and zsh config --- .emacs.d/esy.org | 496 +++++++++++++---------------------------------- .zshenv | 2 +- 2 files changed, 131 insertions(+), 367 deletions(-) diff --git a/.emacs.d/esy.org b/.emacs.d/esy.org index 9e51c58..1dc0f9b 100644 --- a/.emacs.d/esy.org +++ b/.emacs.d/esy.org @@ -246,21 +246,21 @@ Ensure they're all installed: #+begin_src emacs-lisp (add-to-list 'initial-frame-alist '(fullscreen . fullboth)) - (set-face-font 'default "Iosevka-13") - - (set-face-attribute 'variable-pitch nil - :inherit 'default - :family "Iosevka Etoile") + (set-face-attribute 'default nil + :height 130 + :family "Iosevka") (set-face-attribute 'fixed-pitch nil - :inherit 'default :family "Iosevka") + (set-face-attribute 'variable-pitch nil + :family "Iosevka Etoile") + (setq ef-themes-mixed-fonts t ef-themes-variable-pitch-ui t - ef-themes-to-toggle '(ef-day ef-bio)) + ef-themes-to-toggle '(ef-bio ef-day)) (mapc #'disable-theme custom-enabled-themes) - (load-theme 'ef-day :no-confirm) + (load-theme 'ef-bio :no-confirm) (tool-bar-mode -1) (set-scroll-bar-mode nil) @@ -288,10 +288,6 @@ Ensure they're all installed: (show-paren-mode) - (put 'narrow-to-region 'disabled nil) - (put 'narrow-to-page 'disabled nil) - (put 'suspend-frame 'disabled t) - (global-hl-line-mode) (require 'lin) @@ -782,7 +778,6 @@ refiling directly into deeper headings as well. (keymap-global-set "C-c l" #'org-store-link) (keymap-global-set "C-c a" #'org-agenda) (keymap-global-set "C-c !" #'consult-flymake) - (keymap-global-set "C-c f" #'fontaine-set-preset) (keymap-global-set "C-c E" #'elfeed) (keymap-global-set "C-c G" #'gnus) (keymap-global-set "C-c M" #'mastodon) @@ -819,9 +814,6 @@ refiling directly into deeper headings as well. "Pulse current line." (interactive) (pulse-momentary-highlight-one-line)) - - ; (add-to-list 'window-state-change-functions #'esy/pulse-line) - #+end_src ** Misc. keybindings @@ -830,51 +822,40 @@ refiling directly into deeper headings as well. :END: #+begin_src emacs-lisp - (defun esy/customize-global-keymap () - "Configure the global keymap." - (require 'consult) - (require 'consult-imenu) - (require 'avy) - (require 'move-dup) - (require 'embark) - (keymap-global-unset "s-a") - (keymap-global-unset "s-d") - (keymap-global-unset "s-e") - (keymap-global-unset "s-f") - (keymap-global-unset "s-g") - (keymap-global-unset "s-h") - (keymap-global-unset "s-j") - (keymap-global-unset "s-k") - (keymap-global-unset "s-l") - (keymap-global-unset "s-m") - (keymap-global-unset "s-o") - (keymap-global-unset "s-q") - (keymap-global-unset "s-s") - (keymap-global-unset "s-t") - (keymap-global-unset "s-u") - (keymap-global-unset "s-w") - (keymap-global-unset "s-x") - (keymap-global-unset "s-y") - (keymap-global-unset "s-z") - (global-set-key [remap kill-region] #'esy/kill-dwim) - (global-set-key [remap goto-line] #'consult-goto-line) - (global-set-key [remap suspend-frame] #'zap-up-to-char) - (global-set-key [remap imenu] #'consult-imenu) - (global-set-key [remap make-frame] #'move-dup-duplicate-down) - (global-set-key [remap ns-print-buffer] #'move-dup-duplicate-up) - ;; (global-set-key (kbd "M-p") #'move-dup-move-lines-up) - ;; (global-set-key (kbd "M-n") #'move-dup-move-lines-down) - (global-set-key (kbd "M-#") #'define-word-at-point) - (global-set-key (kbd "M-o") #'previous-buffer) - (global-set-key (kbd "M-O") #'next-buffer) - (global-set-key (kbd "C-,") #'backward-delete-char) - (global-set-key (kbd "C-.") #'embark-act) - (global-set-key (kbd "C-;") #'avy-goto-char-timer) - (global-set-key (kbd "C-s-p") #'esy/present-buffer) - (global-set-key (kbd "C-s-f") #'toggle-frame-fullscreen) - (global-set-key (kbd "C-s-l") #'esy/pulse-line)) - - (add-hook 'after-init-hook #'esy/customize-global-keymap) + (keymap-global-unset "s-a") + (keymap-global-unset "s-d") + (keymap-global-unset "s-e") + (keymap-global-unset "s-f") + (keymap-global-unset "s-g") + (keymap-global-unset "s-h") + (keymap-global-unset "s-j") + (keymap-global-unset "s-k") + (keymap-global-unset "s-l") + (keymap-global-unset "s-m") + (keymap-global-unset "s-o") + (keymap-global-unset "s-q") + (keymap-global-unset "s-s") + (keymap-global-unset "s-t") + (keymap-global-unset "s-u") + (keymap-global-unset "s-w") + (keymap-global-unset "s-x") + (keymap-global-unset "s-y") + (keymap-global-unset "s-z") + (global-set-key [remap kill-region] #'esy/kill-dwim) + (global-set-key [remap goto-line] #'consult-goto-line) + (global-set-key [remap suspend-frame] #'zap-up-to-char) + (global-set-key [remap imenu] #'consult-imenu) + (global-set-key [remap make-frame] #'move-dup-duplicate-down) + (global-set-key [remap ns-print-buffer] #'move-dup-duplicate-up) + (global-set-key (kbd "M-#") #'define-word-at-point) + (global-set-key (kbd "M-o") #'previous-buffer) + (global-set-key (kbd "M-O") #'next-buffer) + (global-set-key (kbd "C-,") #'backward-delete-char) + (global-set-key (kbd "C-.") #'embark-act) + (global-set-key (kbd "C-;") #'avy-goto-char-timer) + (global-set-key (kbd "C-s-p") #'esy/present-buffer) + (global-set-key (kbd "C-s-f") #'toggle-frame-fullscreen) + (global-set-key (kbd "C-s-l") #'esy/pulse-line) #+end_src ** =C-x= keybindings @@ -883,15 +864,14 @@ refiling directly into deeper headings as well. :END: #+begin_src emacs-lisp - (defun esy/customize-ctl-x-map () - "Configure the `ctrl-x-map' keymap." - (keymap-set ctl-x-map "b" #'consult-buffer) - (keymap-set ctl-x-4-map "b" #'consult-buffer-other-window) - (keymap-set ctl-x-map "C-b" #'ibuffer) - (put 'set-goal-column 'disabled nil)) + (keymap-set ctl-x-map "b" #'consult-buffer) + (keymap-set ctl-x-4-map "b" #'consult-buffer-other-window) + (keymap-set ctl-x-map "C-b" #'ibuffer) - (add-hook 'after-init-hook #'esy/customize-ctl-x-map) - ;; (add-hook 'after-init-hook #'swsw-mode) + (put 'set-goal-column 'disabled nil) + (put 'narrow-to-region 'disabled nil) + (put 'narrow-to-page 'disabled nil) + (put 'suspend-frame 'disabled t) #+end_src ** =M-s= keybindings @@ -900,13 +880,9 @@ refiling directly into deeper headings as well. :END: #+begin_src emacs-lisp - (defun esy/customize-search-map () - "Configure the `search-map' keymap." - (keymap-set search-map "r" #'rg) - (keymap-set search-map "l" #'rg-literal) - (keymap-set search-map "b" #'some-button)) - - (add-hook 'after-init-hook #'esy/customize-search-map) + (keymap-set search-map "r" #'rg) + (keymap-set search-map "l" #'rg-literal) + (keymap-set search-map "b" #'some-button) #+end_src * Applications @@ -997,8 +973,11 @@ over ssh for remote connections. (vterm arg))) (with-eval-after-load 'vterm - (setq vterm-shell "/bin/bash") - (setq vterm-use-vterm-prompt-detection-method nil) + (setq vterm-shell "/bin/zsh" + vterm-max-scrollback 2048 + vterm-kill-buffer-on-exit nil + vterm-use-vterm-prompt-detection-method t) + (add-to-list 'vterm-tramp-shells '("kubernetes" "/bin/bash")) (add-hook 'vterm-mode-hook #'esy/vterm-mode-hook-function)) #+end_src @@ -1012,6 +991,9 @@ over ssh for remote connections. (setq elfeed-feeds '( "https://ajroach42.com/feed.xml" + "https://emacs.dyerdwelling.family/index.xml" + "https://www.typetheoryforall.com/episodes.mp3.rss" + "https://www.fsf.org/static/fsforg/rss/news.xml" "https://amodernist.com/all.atom" "https://arcology.garden/updates.xml" "https://atthis.link/rss.xml" @@ -1023,6 +1005,7 @@ over ssh for remote connections. "https://lwn.net/headlines/rss" "https://maggieappleton.com/rss.xml" "https://matt-rickard.com/rss" + "https://node2.feed43.com/7487052648530856.xml" "https://njoseph.me/shaarli/feed/atom?" "https://nullprogram.com/feed/" "https://olddeuteronomy.github.io/index.xml" @@ -1038,7 +1021,10 @@ over ssh for remote connections. "https://writer13.neocities.org/rss.xml" "https://www.draketo.de/rss-feed.xml" "https://www.haskellforall.com/feeds/posts/default" + "https://cce.whatthefuck.computer/updates.xml" "https://xkcd.com/rss.xml" + "https://bitspook.in/blog/feed.xml" + "https://flower.codes/feed.xml" ))) #+end_src @@ -1262,13 +1248,8 @@ does in the shell. :END: #+begin_src emacs-lisp - (defun esy/setup-recursive-minibuffers () - "Setup recursive minibuffers." - (require 'mb-depth) - (setq enable-recursive-minibuffers t) - (minibuffer-depth-indicate-mode)) - - (add-hook 'after-init-hook #'esy/setup-recursive-minibuffers) + (setq enable-recursive-minibuffers t) + (minibuffer-depth-indicate-mode) #+end_src ** Completions @@ -1307,20 +1288,13 @@ does in the shell. " "))) ('dabbrev (lambda (_) "… ")))) - (defun esy/setup-completion-at-point () - "Setup `completion-at-point'." - (require 'corfu) - (require 'corfu-indexed) - (setq corfu-cycle t - corfu-margin-formatters '(esy/margin-formatter) - corfu-indexed-start 1) - (global-corfu-mode) - (corfu-indexed-mode 1) - ;; (global-fancy-dabbrev-mode) - (add-to-list 'completion-at-point-functions #'esy/dabbrev-capf) - (add-to-list 'completion-at-point-functions #'esy/file-capf)) - - (add-hook 'after-init-hook #'esy/setup-completion-at-point) + (setq corfu-cycle t + corfu-margin-formatters '(esy/margin-formatter) + corfu-indexed-start 1) + (global-corfu-mode) + (corfu-indexed-mode 1) + (add-to-list 'completion-at-point-functions #'esy/dabbrev-capf) + (add-to-list 'completion-at-point-functions #'esy/file-capf) #+end_src *** Minibuffer-based completions @@ -1329,41 +1303,33 @@ does in the shell. :END: #+begin_src emacs-lisp - (defun esy/setup-minibuffer () - "setup minibuffer and completions." - (require 'marginalia) - (require 'orderless) - (require 'all-the-icons) - (require 'all-the-icons-completion) - (setq read-extended-command-predicate #'command-completion-default-include-p - completions-format 'one-column - completion-auto-select nil - completions-detailed nil - completion-styles '(orderless partial-completion basic) - completion-show-help nil - completions-header-format (propertize "%s candidates:\n" - 'face 'shadow) - completion-auto-help 'visual - completions-max-height 16 - completion-auto-wrap t) - (define-key minibuffer-local-completion-map - [remap previous-line] - #'minibuffer-previous-completion) - (define-key minibuffer-local-completion-map - [remap next-line] - #'minibuffer-next-completion) - (add-hook 'marginalia-mode-hook - #'all-the-icons-completion-marginalia-setup) - (marginalia-mode) - (add-to-list 'display-buffer-alist - '("\\*Completions\\*" - (display-buffer-reuse-window display-buffer-at-bottom) - (window-parameters . ((mode-line-format . none))))) - (add-to-list 'all-the-icons-extension-icon-alist - '("pl" all-the-icons-alltheicon "prolog" - :height 1.1 :face all-the-icons-lmaroon))) - - (add-hook 'after-init-hook #'esy/setup-minibuffer) + (setq read-extended-command-predicate #'command-completion-default-include-p + completions-format 'one-column + completion-auto-select nil + completions-detailed nil + completion-styles '(orderless partial-completion basic) + completion-show-help nil + completions-header-format (propertize "%s candidates:\n" + 'face 'shadow) + completion-auto-help 'visual + completions-max-height 16 + completion-auto-wrap t) + (define-key minibuffer-local-completion-map + [remap previous-line] + #'minibuffer-previous-completion) + (define-key minibuffer-local-completion-map + [remap next-line] + #'minibuffer-next-completion) + (add-hook 'marginalia-mode-hook + #'all-the-icons-completion-marginalia-setup) + (marginalia-mode) + (add-to-list 'display-buffer-alist + '("\\*Completions\\*" + (display-buffer-reuse-window display-buffer-at-bottom) + (window-parameters . ((mode-line-format . none))))) + (add-to-list 'all-the-icons-extension-icon-alist + '("pl" all-the-icons-alltheicon "prolog" + :height 1.1 :face all-the-icons-lmaroon)) #+end_src * Mode-line customizations @@ -1372,128 +1338,11 @@ does in the shell. :END: #+begin_src emacs-lisp - (defvar esy/ping-target "1.1.1.1" - "Target host to ping with `esy/ping'.") - - (defvar esy/ping-buffer "*ping*" - "Output buffer used by `esy/ping'.") - - (defvar esy/ping-count 1 - "Number of pings to emit in `esy/ping'.") - - (defvar esy/ping-wait-duration 1 - "Number of seconds to wait for each ping in `esy/ping'.") - - (defvar esy/ping-timeout-duration 1 - "Number of seconds to be used as a timeout in `esy/ping'.") - - (defvar esy/ping-program-options - `("-n" "-q" - "-c" ,(number-to-string esy/ping-count) - "-i" ,(number-to-string esy/ping-wait-duration) - "-t" ,(number-to-string esy/ping-timeout-duration)) - "Command line options used in `esy/ping'.") - - (defvar esy/ping-program "ping" - "Command used in `esy/ping'.") - - (defvar esy/ping-rtt 0 - "Last ping RTT.") - - (defvar esy/ping-start-time 0 - "Last ping RTT.") - - (defvar esy/ping-interval 60 - "Interval in seconds to wait between `esy/ping' runs.") - - (defun esy/ping-update (proc rtt) - "Update results of ping process PROC yielding RTT." - (save-excursion - (with-current-buffer (process-buffer proc) - (goto-char (point-max)) - (if rtt - (insert (format "%d %d" (- (float-time) esy/ping-start-time) rtt)) - (insert (format "%d %d" (- (float-time) esy/ping-start-time) (* 1000 esy/ping-timeout-duration)))) - (newline))) - (setq esy/ping-rtt rtt) - (force-mode-line-update t)) - - (defun esy/ping (&optional report) - "Ping `esy/ping-target'. - If REPORT in non-nil, print a message in the echo area with the - resulting ping RTT." - (interactive "p") - (make-process - :name "Ping" - :noquery t - :connection-type 'pipe - :command `(,esy/ping-program ,esy/ping-target . ,esy/ping-program-options) - :buffer esy/ping-buffer - :filter (lambda (proc output) - (when (string-match "/\\([0-9]+\.[0-9]*\\)/" output) - (let ((rtt (string-to-number (match-string 1 output)))) - (when report - (message (format "Ping RTT: %d." rtt))) - (esy/ping-update proc rtt)))) - :sentinel (lambda (proc event) - (when (not (string= event "finished\n")) - (esy/ping-update proc nil) - (message "Ping failed."))))) - - (defun esy/ping-plot () - "Plot ping RTT history with gnuplot." - (interactive) - (require 'gnuplot) - (gnuplot-send-string-to-gnuplot "set term dumb\n" 'line) - (let ((temp (expand-file-name (format "ping_%d" (float-time)) temporary-file-directory)) - (buff (generate-new-buffer esy/ping-buffer))) - (with-current-buffer esy/ping-buffer - (copy-to-buffer buff (point-min) (point-max))) - (with-current-buffer buff - (write-file temp)) - (gnuplot-send-string-to-gnuplot (format "plot \"%s\"\n" temp) 'line) - (delete-file temp))) - - (defvar esy/ping-mode-line-string-format "RTT: %d" - "Format string for the modeline to be interpolated the last RTT.") - - (defvar esy/ping-timeout-mode-line-string "Ping failed!" - "String shown in the modeline whenever ping fails.") - - (defconst esy/ping-mode-line-local-map - (make-mode-line-mouse-map 'mouse-1 'esy/ping-plot) - "Keymap for modeline integration.") - - (define-minor-mode esy/ping-mode - "Toggle background pinging on and off." - :global t :group 'mode-line - (setq esy/ping-start-time (float-time)) - (run-with-timer 0 esy/ping-interval #'esy/ping) - (add-to-list 'global-mode-string '((:eval (propertize - (if esy/ping-rtt - (format esy/ping-mode-line-string-format esy/ping-rtt) - esy/ping-timeout-mode-line-string) - 'mouse-face - 'mode-line-highlight - 'local-map esy/ping-mode-line-local-map)) - " "))) - (setq display-time-mail-function - (lambda () nil)) - + (setq display-time-mail-function (lambda () nil)) (display-time-mode) (column-number-mode) - - (add-hook 'after-init-hook #'esy/ping-mode) -#+end_src - -** Display battery status in the modeline -:PROPERTIES: -:CUSTOM_ID: battery -:END: - -#+begin_src emacs-lisp - (add-hook 'after-init-hook #'display-battery-mode) -#+end_src + (display-battery-mode) + #+end_src * Text mode and derivatives :PROPERTIES: @@ -1514,22 +1363,14 @@ does in the shell. :END: #+begin_src emacs-lisp - (defun esy/pdf-tools-install () - "Install PDF-Tools on demand." - (interactive) - (require 'tex) - (require 'pdf-tools) - (require 'pdf-view) - (pdf-tools-install t) - (add-hook 'pdf-view-mode-hook #'pdf-view-midnight-minor-mode) - (setq TeX-view-program-selection '((output-pdf "PDF Tools")) - TeX-source-correlate-start-server t) - (add-to-list 'revert-without-query "\\.pdf\\'") - (add-hook 'TeX-after-compilation-finished-functions - #'TeX-revert-document-buffer) - (add-to-list 'auto-mode-alist '("\\.pdf\\'" . pdf-view-mode))) - - (add-hook 'after-init-hook #'esy/pdf-tools-install) + (pdf-tools-install t) + (add-hook 'pdf-view-mode-hook #'pdf-view-midnight-minor-mode) + (setq TeX-view-program-selection '((output-pdf "PDF Tools")) + TeX-source-correlate-start-server t) + (add-to-list 'revert-without-query "\\.pdf\\'") + (add-hook 'TeX-after-compilation-finished-functions + #'TeX-revert-document-buffer) + (add-to-list 'auto-mode-alist '("\\.pdf\\'" . pdf-view-mode)) #+end_src * Programming @@ -1630,6 +1471,18 @@ include =emacs-lisp-mode= and =lisp-interaction-mode=. (add-to-list 'rg-custom-type-aliases '("Prolog" . "*.pl *.plt *.pro *.prolog"))) #+end_src +** Terraform +:PROPERTIES: +:CUSTOM_ID: terraform +:END: + +#+begin_src emacs-lisp + (use-package terraform-mode + :config + (setq terraform--resource-name-face font-lock-function-name-face + terraform--resource-type-face font-lock-type-face)) +#+end_src + * =vc= customizations :PROPERTIES: :CUSTOM_ID: vc-follow-symlinks-t @@ -1683,90 +1536,6 @@ without asking each time. (define-key project-prefix-map "m" #'magit-project-status))) #+end_src -* Presentation mode -:PROPERTIES: -:CUSTOM_ID: presentation-mode -:END: - -** Minor mode for moving between Org headings in a narrowed buffer -:PROPERTIES: -:CUSTOM_ID: org-present -:END: -#+begin_src emacs-lisp - (defun org-present-forward-heading-same-level (arg) - "Widen, move forward ARG headings, and narrow to subtree." - (interactive "p" org-mode) - (org-present-widen-and-narrow #'org-forward-heading-same-level - `(,arg t))) - - (defun org-present-backward-heading-same-level (arg) - "Widen, move backward ARG headings, and narrow to subtree." - (interactive "p" org-mode) - (org-present-widen-and-narrow #'org-backward-heading-same-level - `(,arg t))) - - (defun org-present-next-visible-heading (arg) - "Widen, move to the next ARG'th heading, and narrow to subtree." - (interactive "p" org-mode) - (org-present-widen-and-narrow #'org-next-visible-heading - `(,arg))) - - (defun org-present-previous-visible-heading (arg) - "Widen, move to the previous ARG'th heading, and narrow to subtree." - (interactive "p" org-mode) - (org-present-widen-and-narrow #'org-previous-visible-heading - `(,arg))) - - (defun org-present-up-heading (arg) - "Widen, move up ARG headings, and narrow to subtree." - (interactive "p" org-mode) - (org-present-widen-and-narrow #'outline-up-heading - `(,arg t))) - - (defun org-present-widen-and-narrow (f args) - "Widen, apply F to ARGS, narrow to subtree and adjust visibility." - (widen) - (apply f args) - (org-narrow-to-subtree) - (outline-hide-subtree) - (outline-show-branches) - (org-show-entry) - (org-show-children)) - - (define-minor-mode org-present-mode - "Minor mode for seamlessly widening and narrowing in `org-mode'. - When `org-present-mode' is enabled is a buffer, it remaps several - keybindings which normally invoke common commands that move point - from one heading to another to, invoke equivalent commands with - the sole change of widening before applying the command, and - narrowing to the target subtree after it. This allows for - presenting Org mode files one heading at a time, by narrowing and - moving freely between headings like presentation slides, without - the need to explicitly use `\\[widen]' followed by - '\\[org-narrow-to-subtree]' in another heading. - - The commands currenlty remapped by `org-present-mode' are - `\\[org-forward-heading-same-level]', - `\\[org-backward-heading-same-level]', - `\\[org-next-visible-heading]', - `\\[org-previous-visible-heading]' and `\\[outline-up-heading]'." - :init-value nil - :keymap '(([ remap org-forward-heading-same-level ] - . org-present-forward-heading-same-level ) - ([ remap org-backward-heading-same-level ] - . org-present-backward-heading-same-level) - ([ remap org-next-visible-heading ] - . org-present-next-visible-heading ) - ([ remap outline-next-visible-heading ] - . org-present-next-visible-heading ) - ([ remap org-previous-visible-heading ] - . org-present-previous-visible-heading ) - ([ remap outline-previous-visible-heading ] - . org-present-previous-visible-heading ) - ([ remap outline-up-heading ] - . org-present-up-heading ))) -#+end_src - * =shell= customizations :PROPERTIES: :CUSTOM_ID: shell @@ -1843,7 +1612,6 @@ terminates, e.g. when pressing =C-d=. (with-eval-after-load 'comint (keymap-set comint-mode-map "C-c C-q" #'esy/log-buffer)) - #+end_src * Misc. settings @@ -1852,17 +1620,11 @@ terminates, e.g. when pressing =C-d=. :END: #+begin_src emacs-lisp - (defun esy/setup-misc () - "Catch-all for miscellaneous settings that can wait for `after-init-hook'." - (require 'autorevert) - (require 'whitespace-cleanup-mode) - (setq global-auto-revert-non-file-buffers t - auto-revert-verbose nil - query-about-changed-file t) - (global-auto-revert-mode) - (global-whitespace-cleanup-mode 1)) - - (add-hook 'after-init-hook #'esy/setup-misc) + (setq global-auto-revert-non-file-buffers t + auto-revert-verbose nil + query-about-changed-file t) + (global-auto-revert-mode) + (global-whitespace-cleanup-mode 1) #+end_src ** Enable ~embark-consult~ @@ -1880,6 +1642,7 @@ and friends work correctly with ~consult~ enabled completions. :PROPERTIES: :CUSTOM_ID: repeat-transpose-lines :END: + #+begin_src emacs-lisp (defvar-keymap transpose-lines-repeat-map :doc "Repeat map for \\[transpose-lines]" @@ -1892,6 +1655,7 @@ and friends work correctly with ~consult~ enabled completions. :PROPERTIES: :CUSTOM_ID: consult-xref :END: + #+begin_src emacs-lisp (with-eval-after-load 'xref (setq xref-show-definitions-function #'consult-xref diff --git a/.zshenv b/.zshenv index 8cb1be7..4c0038f 100644 --- a/.zshenv +++ b/.zshenv @@ -1 +1 @@ -export PATH=/Users/eshelyaron/checkouts/emacs/nextstep/Emacs.app/Contents/MacOS/:$PATH +export PATH=/Users/eshelyaron/checkouts/emacs/nextstep/Emacs.app/Contents/MacOS:/Users/eshelyaron/.cargo/bin:/Users/eshelyaron/go/bin:$PATH -- 2.39.2