email client in uxn + crystal
Find a file
2023-03-23 07:44:41 -06:00
.gitignore first commit - resizable uxn window lists inbox and crystal module can talk to it 2023-03-14 23:39:19 -06:00
build.sh first commit - resizable uxn window lists inbox and crystal module can talk to it 2023-03-14 23:39:19 -06:00
conf.cr shell out for reader and compose windows - this should work for a while; v0.1.0 2023-03-23 07:44:41 -06:00
mread shell out for reader and compose windows - this should work for a while; v0.1.0 2023-03-23 07:44:41 -06:00
README.md shell out for reader and compose windows - this should work for a while; v0.1.0 2023-03-23 07:44:41 -06:00
taro-ctl.cr shell out for reader and compose windows - this should work for a while; v0.1.0 2023-03-23 07:44:41 -06:00
taro-ls.tal shell out for reader and compose windows - this should work for a while; v0.1.0 2023-03-23 07:44:41 -06:00

taro

mblaze frontend in uxn and crystal

build and install

  1. Configure mblaze
  2. Install uxn and crystal
  3. Edit conf.cr and probably the handle function in mread
  4. Run build.sh
  5. Copy taro-ctl to your path

messages

Messages are in the format [1][2:3][...]:

  • byte 1 is the message type
  • bytes 2 and 3 are the length of the message, in bytes
  • bytes 4 and beyond are the message itself (payload) - won't be present if the length is 0

Even messages go from taro-ctl to the uxn windows.

  • 0: mailbox list
  • 2: list mail in current mailbox (or search results)

Odd messages go from the uxn windows to taro-ctl.

  • 1: change/refresh mailbox; payload is the mailbox to read
  • 3: mark all as read in current mailbox; no payload
  • 5: search mail; payload is the regex
  • 7: refile mail; payload is the beginning and end of the mmsg range in u16, and then the mailbox name
  • 9: trash mail; payload is the beginning and end of the mmsg range in u16
  • 11: read mail; payload is a single u16 message number in the current sequence
  • 13: compose mail; no payload