Skip to content

Latest commit

History

507 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

A Matrix chat client

screenshot

Usage

  1. ./build.py (requires Java ≥ 11)
  2. make accounts/profile.json with:
    {"accounts": [{"type": "matrix","server": "https://matrix.org",// or your homeserver"userid": "@example:matrix.org","password": "yourPassword"}// you can add more accounts here],"global": {"theme": "dark"}// or "light"}
  3. ./run (alternatively, ./run path/to/alternateProfile.json; the password field can be removed after closing the app, the stored token will keep you logged in)

keybindings

keyaction
upedit previous message
downedit next message (or stop editing if at last)
alt+upreply to message above current
alt+downreply to message below current
alt+clickreply to currently hovered over message
esccancel reply/edit/message
ctrl+alt+shift+deldelete message currently selected for editing
ctrl+upgo to room above
ctrl+downgo to room below
ctrl+plusincrease UI scale
ctrl+minusdecrease UI scale
ctrl+shift+vpaste clipboard as code block

Most of those (along with some other things) are configurable.

res/chat.dzcfg contains the defaults, and while it can be directly modified, it is preferred to make a file local.dzcfg in the root folder of the project and copy the necessary fields in.

You can reload the config with f5 (some things may not update (instead requiring a restart), but most things reload live fine).

syntax

by default, messages are interpreted as a markdown-ish thing. This default can be changed in res/chat.dzcfg `markdown = true`
/md forced *markdown*
/text forced plain text (also "/plain ..." works)
/me does something
/html <p>manually enter HTML</p>
/goto https://matrix.to/#/!foo:matrix.org/$bar // same behavior as clicking a link containing that URL
/sort // if there were federation issues and messages are shown in non-chronological order, this command will (visually, locally, temporarily) sort them.
/theme light, /theme dark // change theme
File uploading mostly works; the client can display images & gifs inline, but videos will open externally.
Right click on many things (rooms, messages, links, images, user @s, code blocks) gives more options.
_italics_
*bold*
\*text surrounded by asterisks\*
[link text](https://example.org)
---strikethrough--- (alternatively, ~~strikethrough~~)
||spoiler|| (or select and press "|")
`code block`
`backticks: \` inside code block`
`` alternatively: ` in doubled backticks ``
``` that continues for any number of backticks ```
select some text and press "`" to automatically escape things as needed
```java
public static void main(String[] args) {
System.out.println("codeblock with language");
}
```

About

A Matrix chat client

Topics

Resources

Stars

16 stars

Watchers

3 watching

Forks

Contributors

Languages