2023-03-17 04:44:39 +00:00
|
|
|
# taro
|
|
|
|
|
2023-03-23 13:44:41 +00:00
|
|
|
[mblaze](https://git.vuxu.org/mblaze) frontend in [uxn](https://wiki.xxiivv.com/site/uxn.html) and [crystal](https://crystal-lang.org)
|
|
|
|
|
|
|
|
## build and install
|
|
|
|
|
|
|
|
1. [Configure mblaze](https://git.vuxu.org/mblaze/about/man/mblaze-profile.5)
|
|
|
|
2. Install [uxn](https://git.sr.ht/~rabbits/uxn) and [crystal](https://crystal-lang.org/install/)
|
|
|
|
3. Edit [conf.cr](./conf.cr) and probably the `handle` function in [mread](./mread)
|
|
|
|
4. Run [build.sh](./build.sh)
|
|
|
|
5. Copy `taro-ctl` to your path
|
2023-03-17 04:44:39 +00:00
|
|
|
|
|
|
|
## messages
|
|
|
|
|
2023-03-21 05:32:49 +00:00
|
|
|
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
|
|
|
|
|
2023-03-17 04:44:39 +00:00
|
|
|
Even messages go from `taro-ctl` to the `uxn` windows.
|
|
|
|
|
|
|
|
- `0`: mailbox list
|
2023-03-23 02:11:08 +00:00
|
|
|
- `2`: list mail in current mailbox (or search results)
|
2023-03-17 04:44:39 +00:00
|
|
|
|
|
|
|
Odd messages go from the `uxn` windows to `taro-ctl`.
|
|
|
|
|
2023-03-21 05:32:49 +00:00
|
|
|
- `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
|
2023-03-23 02:11:08 +00:00
|
|
|
- `7`: refile mail; payload is the beginning and end of the mmsg range in u16, and then the mailbox name
|
2023-03-23 13:44:41 +00:00
|
|
|
- `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
|