@@ -1,255 +0,0 @@
7−Let’s get started using the `:chat-cli` application, also known more simply as
8−_Chat_. It's the simplest way to talk to people using the command line
13−The most common use for `:chat-cli` right now is, of course, communicating in group chats.
17−In `:chat-cli`, any kind of medium for a message is called a _chat_. There are four "types" of chats, but for now we'll be dealing with the _channel_, a publicly accessible chatroom for general use. We'll discuss the other three kinds in the [chat management](#chat-management) section later on.
19−Join the Urbit Community from Dojo using `:group-view &group-view-action [%join [~bitbet-bolbel %urbit-community] ~bitbet-bolbel]`. Once you've joined, join the General chat from chat-cli. Use `ctrl-x` to switch from the Dojo prompt to the Chat prompt.
24−~sampel-palnet:chat-cli/ ;join ~darrux-landes/general
27−Now that you're in, try post a line to `~darrux-landes/general`:
30−~sampel-palnet:chat-cli= Hello, world!
33−You'll see your message printed below messages from others that came before it. You can always type `;chats` in the `chat-cli` prompt to list all the chats you're in:
36−~sampel-palnet:chat-cli= ;chats
37−~darrux-landes/general
40−Glyphs will be automatically assigned to channels, but have the option of binding a glyph (single non-alphanumeric character) to the channel you're joining; the syntax is in the form of `;join ~/~dopzod/books +`. The chosen glyph will be the symbol that ends your prompt, and it will be what you use as a shortcut to switch to this channel.
43−~sampel-palnet:chat-cli= ;+
44−~sampel-palnet:chat-cli+
47−Use `;leave` to unsubscribe from a channel:
50−~sampel-palnet:chat-cli= ;leave ~darrux-landes/general
53−Now, let's create a channel we can invite some friends to:
56−~sampel-palnet:chat-cli= ;create channel /my-channel
59−Now you can tell your friends to `;join ~your-urbit/my-channel`.
61−In order to see messages in `:chat-cli` you may need to do the following in Dojo:
67−### Creating and managing chats {% #chat-management %}
69−As mentioned before, any urbit can host any number of chats. Existing chats can be deleted or modified with various commands. All commands in this section should be sent from the `chat-cli>` prompt.
73−Syntax: `;create [type] /name +`, where `+` represents an optional glyph.
75−Creates and joins a chat, where `[type]` is any of the following:
77−- `channel`: public chat. Has a blacklist for write control.
78−- `village`: invite-only chat.
79−- `journal`: publicly readable, invite-only for writing.
80−- `mailbox`: publicly writeable, invite-only for reading.
82−Let's create an example mailbox:
85−~sampel-palnet:chat-cli> ;create mailbox /coolbox ^
90−Syntax: `;delete /name`
94−#### Permission management
96−You can permit and ban people from reading and/or writing to the chats you host, using `;invite` and `;banish` command respectively.
98−Syntax: `;invite [rw] /name ~ships`
100−Where `rw` is either `r`, `w`, or `rw`, representing "read" and "write" permissions.
101−And where `~ships` is a comma-seperated list of ships to invite.
103−For example, to grant two people full access to a `village` we created:
106−~sampel-palnet:chat-cli> ;invite rw /hidden-village ~ravmel-ropdyl, ~rapfyr-diglyt
109−Similarly, if we later want to revoke the writing permissions for one of them, but still allow them to read new messages, we can run:
112−~sampel-palnet:chat-cli> ;banish w /hidden-village ~rapfyr-diglyt
117−Glyphs are found at the end of your prompt, as a quick indicator of where
118−your messages will be sent.
120−Glyphs are assigned by chat hash out of the following list:
123−! @ # $ % ^ & ( ) - = _ + [ ] { } ; ' \ : " , . < > ?
126−Alphanumeric characters and `|#/*~` are reserved; all others can be manually assigned.
128−For example, `-` the glyph at the end of the prompt below might indicates that
129−messages sent from this prompt will go to some chat with that glyph:
132−~sampel-palnet:chat-cli-
135−To see what chat is bound to a glyph, use the `;what` command followed by the
136−glyph in question, or use `;what` without specifying a glyph to see all of your
137−subscriptions which are bound to glyphs. For example, to see `=`:
140−~sampel-palnet:chat-cli> ;what =
144−To see all of your glyph bindings:
147−~sampel-palnet:chat-cli> ;what
148−> ~paldev/numismatic-forum
149−. ~middev/ny-martians
153−When the messaging target doesn't have a glyph, we see their name at the end of
154−the prompt instead. Here we're talking into `~dannum-mitryl/homework`:
157−~sampel-palnet:chat-cli[~dannum-mitryl/homework]
162−Syntax: `;bind [glyph] ~host/chat-name`
164−Assigns the chosen glyph to a chat.
169−~sampel-palnet:chat-cli> ;bind + ~dopzod/urbit-help
174−Syntax: `;unbind [glyph] ~host/chat-name`
176−Unassigns the chosen glyph from a chat owned by your ship.
181−~sampel-palnet:chat-cli> ;unbind + ~dopzod/urbit-help
184−If you don't specify a chat, all bindings for that glyph are removed.
188−Received posts are prefixed with a glyph to let you know what the
189−audience is. You can activate an individual post to see the full
192−There are a few special-purpose "glyphs":
194−- `|` - Informational messages
195−- `*` - Posts to a target you don't have a glyph binding for
203−Set audience to `~ship/chat`.
205−#### Set audience by glyph
209−Set audience to the chat previously bound to the chosen glyph.
211−#### Set audience to own chat
215−Set audience to a chat on your own ship.
217−### Miscellaneous configuration
221−Syntax: `;set timezone [+/-][hours]`
223−Adjust the display of timestamps to a specific timezone. Relative to UTC.
227−Syntax: `;set width [number]`
229−Set the rendering width of `:chat-cli` to a specific number of characters.
234−Syntax: `;set showtime`
236−Show the timestamp for each message. This is set by default.
240−Syntax: `;unset showtime`
242−Stop showing the timestamp for each message.
244−#### Sound notification on
246−Syntax: `;set notify`
248−Emit a terminal bell sound if your six-syllable ship name is mentioned in
249−a message. This is set by default.
251−#### Sound notification off
253−Syntax `;unset notify`
255−Do not notify when your ship name is mentioned.