ement: fix commandp error — move defuns outside after! block

Functions defined inside (after! ement ...) are not registered as
interactive commands by Doom. Move my/ement-maybe-restore and
my/ement-open to top level.

Also move add-hook from inside after! to top level (after-init-hook
fires before lazy packages load — use doom-after-init-hook instead).
This commit is contained in:
2026-02-23 13:36:01 +01:00
parent 8bc82d358f
commit 61bc7e7490

View File

@@ -880,22 +880,25 @@ Keeps the status bar and tab bar fully visible at any zoom level.")
(setq ement-notify-mentions-p t
ement-notify-dingalings-p nil) ; no sound
;; Auto-connect on startup: restore saved session without prompting for credentials.
;; Activates only when session file exists (requires one manual ement-connect first).
(defun my/ement-maybe-restore ()
"Restore saved ement session silently (no credentials prompt)."
(when (file-exists-p (expand-file-name ement-sessions-file))
(ement-connect :user-id "@martin:sukany.cz")))
) ; end after! ement
;; Open Matrix panel: restore/connect if needed, then show room list.
(defun my/ement-open ()
"Switch to Matrix: reconnect if needed, then open room list."
(interactive)
(if (and (boundp 'ement-sessions) ement-sessions)
(ement-list-rooms)
(my/ement-maybe-restore)))
;; Defined outside after! so Doom registers them as proper interactive commands.
(defun my/ement-maybe-restore ()
"Restore saved ement session silently (no credentials prompt)."
(require 'ement)
(when (file-exists-p (expand-file-name ement-sessions-file))
(ement-connect :user-id "@martin:sukany.cz")))
(add-hook 'after-init-hook #'my/ement-maybe-restore))
(defun my/ement-open ()
"Switch to Matrix: reconnect if needed, then open room list."
(interactive)
(require 'ement)
(if (and (boundp 'ement-sessions) ement-sessions)
(ement-list-rooms)
(my/ement-maybe-restore)))
;; Auto-connect on Emacs startup (outside after! — ement may be deferred)
(add-hook 'doom-after-init-hook #'my/ement-maybe-restore)
;; Keybindings under SPC o M (uppercase M — o m is taken by mu4e)
(map! :leader