[~] NERDBUDE

[?] CODE / KEYBOARDS / TERMINAL / NIXOS


[M] [POSTS] [HOWTO] [WHOAMI] [PODCASTS] [KEYBOARDS]


~~ IAMB ~~

** MATRIX TERMINAL CLIENT **

[PRO] | [20230703] | [0x17]




Wow! At the weekend, the wonderful REVENGEDAY launched the Matrix server in the environment of the CORTEX IMPLANT instance. Yes, I know - Mastodon is not the center of the Fediverse. The server has the wonderful name CYBERWA.RE and is now my new home. You can find me there under the usual @0x17:cyberwa.re. (Edit: RIP cyberwa.re :( )

0x01 - NEW CLIENT

Now I’ve always used GOMUKS on my computer. It worked and served its purpose, but I also like to look around to see what else is out there. The only requirements for a Matrix client for me are: It should be terminal-based and reasonably pretty. After a short search I came across IAMB. IAMB was and is developed by Ulyssa Mello (M: @ulyssa / G: @ulyssa and is the “Matrix Client for Vim addicts” - what more could I want? It looks good, works perfectly and has VIM keybindings. Another advantage: It is included in the NixOS packages and can easily be integrated into the configuration.nix.

0x02 - IAMB

There is hardly a tool that does not exist as a terminal tool with Vim key bindings. IAMB also falls into this category. The tool is operated purely in the terminal and is operated in a typical Vim manner.

/iamb_overview.png

IAMB offers many Vim features (at least those that make sense here). IAMB has various modes, the split view option and useful keyboard shortcuts to control IAMB. When IAMB is started, the welcome screen appears:

/iamb_welcome.png

Before you start, you need to create a config.json for IAMB. This goes in your ~/.config/iamb/ folder (which may also need to be created first). You build your Matrix account into the config:

1	  { 
2	    "profiles": {
3	  		"yourdomain.nb": { 
4	  			"url": "https://yourdomain.nb", 
5	  			"user_id": "@user:example.com"
6	  		}
7	  	}
8	  }

If you have the config.json there, IAMB will start with the login screen. After logging in, you will finally see the start screen. From here, you can start using the tool in the typical Vim way. For example, you can open various splits here and search through your subscribed rooms. This way, you can create a wonderful dashboard that gives you an overview of all the rooms. IAMB understands the following commands:

 1	  :create		- create a room
 2	  :dms		- Direct messages
 3	  :download		- Download Attachments
 4	  :edit		- Edit messages
 5	  :invite accept	- Accept invite
 6	  :invite reject	- Deny invite
 7	  :invite send	- Send invite
 8	  :join		- Enter Room
 9	  :members		- Show Room Member
10	  :open		- Open Attachments
11	  :react		- React to post
12	  :redact		- Redact message
13	  :reply		- Answer
14	  :rooms		- Show all Rooms
15	  :room name set	- Change room name
16	  :room tag set	- Change tags for Room
17	  :room topic	- Change Theme for Rooms
18	  :spaces		- browsing Spaces
19	  :unreact		- undo reaction to message
20	  :upload		- upload Attachment
21	  :verify		- Verify Account
22	  :welcome		- show startscreen

This makes IAMB very easy to use. But there are also additional commands (from Vim) that also work here:

 1	  :close		- close window
 2	  :horizontal	- new horizontal window
 3	  :leftabove	- new fenster
 4	  :only		- close all Tabs exept to selected 
 5	  :quitall		- close all windows
 6	  :quit		- close window
 7	  :rightbelow	- new window
 8	  :split		- new split window
 9	  :tab		- new Tab
10	  :tabclose		- close Tab
11	  :tabedit		- edit Tab
12	  :tablast		- go to last tab
13	  :tabmove		- move tab
14	  :tabnext		- next tab
15	  :tabonly		- close all tabs exept selected
16	  :tabprevious	- prev Tab
17	  :tabrewind	- go to first tab
18	  :vertical		- vertical split
19	  :vsplit		- vertical split

PEW! Now it’s really fun. For regular use, that’s more than enough for now. There are still a lot of features you can discover in IAMB, but I’ll leave that up to you.
Have fun with it.

EDIT: Unfortunately, the cyberwa.re instance broke and can no longer be saved. Nevertheless, a big thank you to REVENGEDAY for the short but nice fun. Maybe I’ll take a look at Synapse and build a $NB Matrix server.


[~] BACK