#+TITLE: Emacs Matrix Client — Ement.el #+AUTHOR: Martin Sukaný #+DATE: 2026-02-23 #+STARTUP: overview * Matrix v Emacsu — Ement.el Ement.el je nativní Matrix klient pro Emacs. Plná integrace s Doom Emacs přes prefix =SPC o M= (uppercase M — =SPC o m= je obsazeno mu4e). ** Instalace Balíček je deklarovaný v =packages.el=: #+begin_src elisp (package! ement) #+end_src Po přidání spustit: #+begin_src sh ~/.emacs.d/bin/doom sync #+end_src ** Server a účet - Homeserver: =https://matrix.apps.sukany.cz= - User ID: =@martin:sukany.cz= - E2EE: *zakázáno na straně serveru* (=encryption: false= v OpenClaw config) — Pantalaimon se nepoužívá a není potřeba ** Automatické připojení Emacs se automaticky připojí při startu (=doom-after-init-hook=) pomocí uložené session. Nepotřebuješ zadávat heslo — token je uložen v souboru: #+begin_example ~/.doom.d/ement-sessions.el #+end_example Při prvním použití (nebo po výmazu session souboru) spusť =SPC o M c= a zadej: #+begin_example Homeserver URL: https://matrix.apps.sukany.cz User ID: @martin:sukany.cz Password: (interaktivně) #+end_example Po úspěšném připojení se session uloží a příště je připojení automatické. ** Klávesové zkratky (SPC o M) | Zkratka | Funkce | |-------------|-----------------------------------------------| | =SPC o M o= | Otevřít panel (inteligentní — viz níže) | | =SPC o M c= | Připojit (ement-connect) | | =SPC o M C= | Odpojit | | =SPC o M l= | Seznam místností | | =SPC o M r= | Otevřít místnost | | =SPC o M d= | Přímá zpráva uživateli | | =SPC o M j= | Připojit se k místnosti | | =SPC o M n= | Notifikace (nové zprávy) | | =SPC o M m= | Zmínky (@martin) | *** Inteligentní otevření panelu (SPC o M o) =my/ement-open= se chová podle aktuálního stavu: - Již připojeno → okamžitě otevře seznam místností - Session soubor existuje → obnoví bez zadání hesla, po sync otevře místnosti - Žádná session → interaktivní =ement-connect=, pak otevře místnosti *** V místnosti (room buffer) | Klávesa | Akce | |-------------|---------------------------------| | =RET= | Napsat zprávu | | =M-RET= | Compose buffer (pro delší text) | | =S-RET= | Odpovědět na zprávu na pointu | | =n= / =p= | Další / předchozí zpráva | | =SPC= | Scroll dolů + označit přečtené | | =?= | Transient menu (všechny akce) | | =s r= | Reakce (emoji) | | =C-k= | Smazat vlastní zprávu | | =r m= | Seznam členů | | =M-g M-l= | Přejít na seznam místností | ** E2EE E2EE je na serveru *zakázáno* — veškerá komunikace mezi Emacs klientem a homeserverem probíhá nešifrovaně (ale přes HTTPS). Toto je záměrné rozhodnutí: Megolm session errors způsobovaly nečitelné zprávy na iOS zařízeních, spolehlivost je důležitější. Pantalaimon *se nepoužívá* a není potřeba instalovat. ** Konfigurace v config.el Relevantní sekce (viz =~/.doom.d/config.el=): - =ement-sessions-file= — nastaven na =~/.doom.d/ement-sessions.el= (před načtením balíčku) - =ement-save-sessions t= — session se uloží při =kill-emacs= - =ement-auto-sync t= — na pozadí se synchronizuje automaticky - =ement-room-show-avatars nil= — avatary jsou vypnuty (výkon) - =ement-notify-mentions-p t= — notifikace při zmínkách ** Místnosti | Název | Room ID | Použití | |----------------------|-----------------------------------------|-----------------------| | Daneel - AI assistant | =!bVBXrchJJVQRoyHQwU:sukany.cz= | Hlavní DM s Daneel | | Email summaries | =!okPPZiCqKrzZeGkpzv:sukany.cz= | Email notifikace | | Nakopni se (Daneel) | =!moHRlJaLrwEBYDDzGg:sukany.cz= | Nakopni se kurz | | Sprava serveru | =!NmZsNYaigZZensbSIi:sukany.cz= | Infra01 monitoring | | Weekly review | =!rHpupKCgxNRJoomtij:sukany.cz= | Týdenní přehledy | ** Časté problémy | Problém | Příčina | Řešení | |--------------------------------|--------------------------------|-------------------------------------------------| | Auto-connect nefunguje | Session soubor chybí nebo poškozený | =SPC o M c= pro nové přihlášení | | "Invalid homeserver" | Špatná URL | Zkontrolovat =https://matrix.apps.sukany.cz= | | Zprávy se nezobrazují | Session expirovala | =SPC o M C= → =SPC o M c= | | Pomalý start | Avatary zapnuty | =(setq ement-room-show-avatars nil)= | ** Reference - [[https://github.com/alphapapa/ement.el][ement.el GitHub]] - Konfigurace: =~/.doom.d/config.el= (sekce MATRIX) - Session soubor: =~/.doom.d/ement-sessions.el=