summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorcashmere <cashmere@autistici.org>2026-08-11 19:58:55 +0200
committercashmere <cashmere@autistici.org>2026-08-11 19:58:55 +0200
commitef17a1971b70695f8b10b8ae4736be07d46c0974 (patch)
tree80b22b4e916b85031c43759b4839ea84d9e5472e /lisp
parente08aa0aa02efe771973a5eb0fdf6b77c3c7d29ad (diff)
downloademacs-ef17a1971b70695f8b10b8ae4736be07d46c0974.tar.gz
2026-08-11T19:59:00+02:00
Diffstat (limited to 'lisp')
-rw-r--r--lisp/croc-ui.el37
-rw-r--r--lisp/denote-menu.el30
-rw-r--r--lisp/feed-ui.el14
-rw-r--r--lisp/my-mode-line.el42
-rw-r--r--lisp/sync-ui.el17
5 files changed, 50 insertions, 90 deletions
diff --git a/lisp/croc-ui.el b/lisp/croc-ui.el
index c75d4b2..50c8b9a 100644
--- a/lisp/croc-ui.el
+++ b/lisp/croc-ui.el
@@ -31,7 +31,7 @@
;; RET log w copy code Q qr x kill
;; X clear done n/p next/prev g refresh q quit
;;
-;; Evil: normal state gets j/k plus the same one-key actions.
+;; Helix: normal state gets j/k plus the same one-key actions.
;;; Code:
@@ -971,28 +971,21 @@ stay square; MARGIN (default 4) modules of quiet zone wrap the code."
(face-remap-set-base 'hl-line 'croc-ui-selected)
(hl-line-mode 1))
-(declare-function evil-set-initial-state "evil")
-(declare-function evil-define-key* "evil-core")
-(with-eval-after-load 'evil
- (evil-set-initial-state 'croc-ui-mode 'normal)
- ;; `evil-define-key' is a macro: calling it from a file byte-compiled
- ;; without evil loaded yields (invalid-function evil-define-key).
- ;; `evil-define-key*' is the function underneath and is always safe.
- (evil-define-key* 'normal croc-ui-mode-map
- (kbd "j") #'croc-ui-next
- (kbd "k") #'croc-ui-previous
- (kbd "RET") #'croc-ui-open-log
- (kbd "s") #'croc-ui-send-files
- (kbd "d") #'croc-ui-send-directory
- (kbd "t") #'croc-ui-send-text
- (kbd "r") #'croc-ui-receive
- (kbd "w") #'croc-ui-copy-code
- (kbd "Q") #'croc-ui-toggle-qr
- (kbd "x") #'croc-ui-kill
- (kbd "X") #'croc-ui-clear-done
- (kbd "g") #'croc-ui-refresh
- (kbd "q") #'quit-window))
+(with-eval-after-load 'helix
+ (helix-define-key 'normal "j" #'croc-ui-next 'croc-ui-mode)
+ (helix-define-key 'normal "k" #'croc-ui-previous 'croc-ui-mode)
+ (helix-define-key 'normal "RET" #'croc-ui-open-log 'croc-ui-mode)
+ (helix-define-key 'normal "s" #'croc-ui-send-files 'croc-ui-mode)
+ (helix-define-key 'normal "d" #'croc-ui-send-directory 'croc-ui-mode)
+ (helix-define-key 'normal "t" #'croc-ui-send-text 'croc-ui-mode)
+ (helix-define-key 'normal "r" #'croc-ui-receive 'croc-ui-mode)
+ (helix-define-key 'normal "w" #'croc-ui-copy-code 'croc-ui-mode)
+ (helix-define-key 'normal "Q" #'croc-ui-toggle-qr 'croc-ui-mode)
+ (helix-define-key 'normal "x" #'croc-ui-kill 'croc-ui-mode)
+ (helix-define-key 'normal "X" #'croc-ui-clear-done 'croc-ui-mode)
+ (helix-define-key 'normal "g" #'croc-ui-refresh 'croc-ui-mode)
+ (helix-define-key 'normal "q" #'quit-window 'croc-ui-mode))
;;; § 9 Entry points
diff --git a/lisp/denote-menu.el b/lisp/denote-menu.el
index e4e9a06..eb1c76c 100644
--- a/lisp/denote-menu.el
+++ b/lisp/denote-menu.el
@@ -5,11 +5,11 @@
;;; Commentary:
-;; A keyboard-first, evil-native browser for Denote notes built on vui.el.
+;; A keyboard-first browser for Denote notes built on vui.el.
;; Lists notes from `denote-directory' (silo-aware) in a borderless table with
;; live filtering, column sorting, and one-key actions. Ships its own
;; `denote-menu-mode' derived from `vui-mode' and registers normal-state
-;; keys with evil when it is available.
+;; keys with helix when it is available.
;;; Code:
@@ -319,22 +319,18 @@ across re-renders.
:group 'denote-menu
(hl-line-mode 1))
-(declare-function evil-set-initial-state "evil")
-(declare-function evil-define-key "evil")
-(with-eval-after-load 'evil
- (evil-set-initial-state 'denote-menu-mode 'normal)
- (evil-define-key 'normal denote-menu-mode-map
- (kbd "RET") #'denote-menu-open-at-point
- (kbd "o") #'denote-menu-open-at-point
- (kbd "/") #'denote-menu-filter
- (kbd "c") #'denote-menu-clear-filter
- (kbd "s") #'denote-menu-cycle-sort
- (kbd "S") #'denote-menu-toggle-sort-direction
- (kbd "e") #'denote-menu-export-to-dired
- (kbd "n") #'denote-menu-new-note
- (kbd "r") #'denote-menu-refresh
- (kbd "q") #'vui-quit))
+(with-eval-after-load 'helix
+ (helix-define-key 'normal "RET" #'denote-menu-open-at-point 'denote-menu-mode)
+ (helix-define-key 'normal "o" #'denote-menu-open-at-point 'denote-menu-mode)
+ (helix-define-key 'normal "/" #'denote-menu-filter 'denote-menu-mode)
+ (helix-define-key 'normal "c" #'denote-menu-clear-filter 'denote-menu-mode)
+ (helix-define-key 'normal "s" #'denote-menu-cycle-sort 'denote-menu-mode)
+ (helix-define-key 'normal "S" #'denote-menu-toggle-sort-direction 'denote-menu-mode)
+ (helix-define-key 'normal "e" #'denote-menu-export-to-dired 'denote-menu-mode)
+ (helix-define-key 'normal "n" #'denote-menu-new-note 'denote-menu-mode)
+ (helix-define-key 'normal "r" #'denote-menu-refresh 'denote-menu-mode)
+ (helix-define-key 'normal "q" #'vui-quit 'denote-menu-mode))
;;;###autoload
(defun denote-menu ()
diff --git a/lisp/feed-ui.el b/lisp/feed-ui.el
index ed15fba..b5ef3f4 100644
--- a/lisp/feed-ui.el
+++ b/lisp/feed-ui.el
@@ -762,14 +762,12 @@ above and the actions row below."
"Major mode for the feed.org vui client."
(hl-line-mode 1))
-(with-eval-after-load 'evil
- (evil-set-initial-state 'feed-ui-mode 'normal)
- (evil-define-key 'normal feed-ui-mode-map
- (kbd "RET") #'feed-ui-open-thread-at-point
- "r" #'feed-ui-reply-at-point
- "m" #'feed-ui-mute-at-point
- "g" #'feed-ui-sync
- "q" #'feed-ui-back-or-quit))
+(with-eval-after-load 'helix
+ (helix-define-key 'normal "RET" #'feed-ui-open-thread-at-point 'feed-ui-mode)
+ (helix-define-key 'normal "r" #'feed-ui-reply-at-point 'feed-ui-mode)
+ (helix-define-key 'normal "m" #'feed-ui-mute-at-point 'feed-ui-mode)
+ (helix-define-key 'normal "g" #'feed-ui-sync 'feed-ui-mode)
+ (helix-define-key 'normal "q" #'feed-ui-back-or-quit 'feed-ui-mode))
;;;###autoload
(defun feed ()
diff --git a/lisp/my-mode-line.el b/lisp/my-mode-line.el
index b3179fa..b6fe532 100644
--- a/lisp/my-mode-line.el
+++ b/lisp/my-mode-line.el
@@ -2,33 +2,13 @@
(require 'mode-line-maker)
-(defface my/mode-line-evil-normal
+(defface my/mode-line-helix-normal
'((t (:background "#89b4fa" :foreground "#1e1e2e" :weight bold)))
- "Face for the evil normal state indicator.")
+ "Face for the helix normal state indicator.")
-(defface my/mode-line-evil-insert
+(defface my/mode-line-helix-insert
'((t (:background "#a6e3a1" :foreground "#1e1e2e" :weight bold)))
- "Face for the evil insert state indicator.")
-
-(defface my/mode-line-evil-visual
- '((t (:background "#cba6f7" :foreground "#1e1e2e" :weight bold)))
- "Face for the evil visual state indicator.")
-
-(defface my/mode-line-evil-replace
- '((t (:background "#f38ba8" :foreground "#1e1e2e" :weight bold)))
- "Face for the evil replace state indicator.")
-
-(defface my/mode-line-evil-operator
- '((t (:background "#fab387" :foreground "#1e1e2e" :weight bold)))
- "Face for the evil operator state indicator.")
-
-(defface my/mode-line-evil-motion
- '((t (:background "#94e2d5" :foreground "#1e1e2e" :weight bold)))
- "Face for the evil motion state indicator.")
-
-(defface my/mode-line-evil-emacs
- '((t (:background "#b4befe" :foreground "#1e1e2e" :weight bold)))
- "Face for the evil emacs state indicator.")
+ "Face for the helix insert state indicator.")
(defface my/mode-line-irc-face
'((t (:foreground "#94e2d5" :weight bold)))
@@ -94,12 +74,12 @@ the project root, falling back to the plain buffer name."
(ignore-errors (nerd-icons-icon-for-file buffer-file-name)))
(ignore-errors (nerd-icons-icon-for-mode major-mode)))))
-(defun my/mode-line-evil-state ()
- "Colored single-letter indicator for the current evil state."
- (when (and (boundp 'evil-state) evil-state)
- (let* ((tag (upcase (substring (symbol-name evil-state) 0 1)))
- (face (intern-soft (format "my/mode-line-evil-%s" evil-state))))
- (propertize (format " %s " tag) 'face (or face 'my/mode-line-evil-normal)))))
+(defun my/mode-line-helix-state ()
+ "Colored single-letter indicator for the current helix state."
+ (when (and (boundp 'helix--current-state) helix--current-state)
+ (let* ((tag (upcase (substring (symbol-name helix--current-state) 0 1)))
+ (face (intern-soft (format "my/mode-line-helix-%s" helix--current-state))))
+ (propertize (format " %s " tag) 'face (or face 'my/mode-line-helix-normal)))))
(defun my/mode-line-buffer-state ()
"Buffer state icon: lock (read-only), pencil-alert (modified), save (saved)."
@@ -163,7 +143,7 @@ the bottom mode-line is hidden."
(setq-default mode-line-format nil)
(setq-default header-line-format
(mode-line-maker
- '((:eval (my/mode-line-evil-state)) " "
+ '((:eval (my/mode-line-helix-state)) " "
(:eval (my/mode-line-buffer-state)) mode-line-remote " "
(:eval (my/mode-line-buffer-icon)) " "
(:eval (propertize (my/mode-line-buffer-name)
diff --git a/lisp/sync-ui.el b/lisp/sync-ui.el
index e8ee3d7..36a8815 100644
--- a/lisp/sync-ui.el
+++ b/lisp/sync-ui.el
@@ -31,7 +31,7 @@
;; t auto/ask a add repo d remove g refresh
;; n/p next/prev q quit
;;
-;; Evil: normal state gets j/k plus the same one-key actions.
+;; Helix: normal state gets j/k plus the same one-key actions.
;;; Code:
@@ -916,18 +916,11 @@ A ⁺ marks a remote that has no copy of the branch yet."
(face-remap-set-base 'hl-line 'sync-ui-selected)
(hl-line-mode 1))
-(declare-function evil-set-initial-state "evil")
-(declare-function evil-define-key* "evil-core")
-(with-eval-after-load 'evil
- (evil-set-initial-state 'sync-ui-mode 'normal)
- ;; `evil-define-key' is a macro: calling it from a file byte-compiled
- ;; without evil loaded yields (invalid-function evil-define-key).
- ;; `evil-define-key*' is the function underneath and is always safe.
- (evil-define-key* 'normal sync-ui-mode-map
- (kbd "j") #'sync-ui-next
- (kbd "k") #'sync-ui-previous
- (kbd "RET") #'sync-ui-magit))
+(with-eval-after-load 'helix
+ (helix-define-key 'normal "j" #'sync-ui-next 'sync-ui-mode)
+ (helix-define-key 'normal "k" #'sync-ui-previous 'sync-ui-mode)
+ (helix-define-key 'normal "RET" #'sync-ui-magit 'sync-ui-mode))
;;; § 8 Entry points