Files
emacs-org/notes/emacs-matrix.org

126 lines
5.3 KiB
Org Mode

#+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=