~parasrah/mtrx

TUI client for matrix protocol
git: add .mailmap
matrix: populate rooms on launch
main: use single event loop

refs

main
browse  log 

clone

read-only
https://git.sr.ht/~parasrah/mtrx
read/write
git@git.sr.ht:~parasrah/mtrx

You can also use your local clone with git send-email.

builds.sr.ht status

#mtrx

A chat client for matrix, implemented as a TUI (Terminal User Interface). It is a modal chat client, inspired by kakoune and vim.

a screenshot of mtrx in action

#current state

WIP

basic functionality is currently missing, and it is definitely not ready to be used. Features that absolutely need to be implemented before it can move on from this state:

#modes

There are a few different "modes" you can be in once the chat client is open

#insert mode

This is the mode you're probably most familiar with. Typing a character inserts a character into whatever input you have focused. This is the only mode that most graphical applications have.

#special keys
  • <c-b>: go back one character
  • <c-f>: go forward one character
  • <esc>: enter normal mode

#normal mode

Pressing <esc> while in any other mode will bring you to normal mode. While in normal mode, certain keybindings will allow you to navigate around the client, while the rest will do nothing.

  • q: quit the client
  • J: move focus down (remember j looks kind of like a down arrow)
  • K: move focus up
  • L: move focus right
  • H: move focus left
  • i: enter insert mode
  • :: enter command mode

In the future, this mode will also allow you to move around inside an input.

#command mode

Pressing : while in normal mode will switch the client to command mode. You will see a : appear at the bottom left side of your client. Command mode is similar to insert mode, but when you press <ret> (enter), it will "submit" the command you have written.

#commands
  • login <user_id> <password>: login to your matrix account
  • quit: quit the client

#Contributing

I don't have much information about how to contribute yet, but if you're interesting in helping out add a comment on this ticket, or if you know how to send plaintext emails send a public email to the mailing list.