From 61bc7e74901484a16a358fea70793cc008d6fb30 Mon Sep 17 00:00:00 2001 From: Daneel Date: Mon, 23 Feb 2026 13:36:01 +0100 Subject: [PATCH] =?UTF-8?q?ement:=20fix=20commandp=20error=20=E2=80=94=20m?= =?UTF-8?q?ove=20defuns=20outside=20after!=20block?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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). --- config.el | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/config.el b/config.el index 39d7a6d..cff6ed1 100644 --- a/config.el +++ b/config.el @@ -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