A personal build of the TUI matrix client including image-pasting and notifications for all rooms
Go to file
2019-01-11 23:48:59 +02:00
config Fix things 2018-11-14 00:00:35 +02:00
deb/DEBIAN Add debian packaging and some build scripts 2018-05-03 10:03:25 +03:00
debug Gofmt 2018-04-19 11:10:34 +03:00
interface Switch to Go modules and make other changes 2019-01-11 23:28:47 +02:00
lib Switch to Go modules and make other changes 2019-01-11 23:28:47 +02:00
matrix Switch to Go modules and make other changes 2019-01-11 23:28:47 +02:00
scripts Update CI script 2019-01-11 23:48:59 +02:00
ui Switch to Go modules and make other changes 2019-01-11 23:28:47 +02:00
.codeclimate.yml Add .codeclimate.yml 2018-04-19 11:33:59 +03:00
.editorconfig Update README and other files 2018-03-20 23:49:37 +02:00
.gh-deployer.yaml Add gh-deployer 2018-05-15 19:56:43 +03:00
.gitignore Add .tmp to .gitignore 2018-05-15 19:59:17 +03:00
.travis.yml Enable travis for codeclimate coverage reports 2018-04-10 21:27:57 +03:00
chat-preview.png Update preview image 2018-05-24 10:34:31 +03:00
go.mod Switch to Go modules and make other changes 2019-01-11 23:28:47 +02:00
go.sum Switch to Go modules and make other changes 2019-01-11 23:28:47 +02:00
gomuks.go Move all cache to ~/.cache/gomuks 2018-05-17 16:29:18 +03:00
LICENSE Initial commit 2018-02-24 18:15:45 +02:00
main.go Disconnect UI from main Gomuks struct. Fixes #21 2018-04-18 18:35:54 +03:00
README.md Merge branch 'master' into update 2018-11-14 00:01:20 +02:00

gomuks

Languages License Release Build Status Maintainability Coverage

Chat Preview

A terminal Matrix client written in Go using mautrix and tview.

Basic usage is possible, but expect bugs and missing features.

Discussion

Matrix room: #gomuks:maunium.net

Installation

Once the client becomes actually usable, I'll start making GitHub releases with precompiled executables. For now, you can either download a CI build from dl.maunium.net/programs/gomuks or compile from source:

  1. Install Go 1.10 or higher
  2. Run go get -u maunium.net/go/gomuks
  3. gomuks should now be in $GOPATH/bin/gomuks

Developing

Running go install in $GOPATH/src/maunium.net/go/gomuks will recompile the project and dependencies into $GOPATH/bin/gomuks.

For debugging, use tail -f /tmp/gomuks-debug.log and write to it using the methods in the maunium.net/go/gomuks/debug package:

import (
	"maunium.net/go/gomuks/debug"
)
...
func Foo() {
	debug.Print("WHY ISN'T IT WORKING?!?!?")
}

Usage

  • switch rooms - Ctrl + ↑ Ctrl + ↓ Alt + ↑ Alt + ↓
  • scroll chat (line) -
  • scroll chat (page) - PgUp PgDown
  • jump to room - Alt + Enter, then Tab and Enter to navigate and select room

Commands

  • /help - Is a known command
  • /me <text> - Send an emote
  • /quit - Close gomuks
  • /clearcache - Clear room state and close gomuks
  • /leave - Leave the current room
  • /join <room> - Join the room with the given room ID or alias
  • /toggle <rooms/users/baremessages/images/typingnotif> - Change user preferences
  • /logout - Log out, clear caches and go back to the login view
  • /send <room id> <event type> <content> - Send a custom event
  • /setstate <room id> <event type> <state key/-> <content> - Change room state