Allow specifying mnemonic of a channel when joining
Currently when I join to a channel, tiny selects one of the letters in the channel name as the channel's mnemonic. The letter is rendered with an underscore and M-<letter> switches to the channel. I use this all the time, but one problem with this feature is that if I change the order in which I join the channels, or add/remove channels from the join list I get different mnemonics for channels.
I think any algorithm for choosing letters for channels will cause problems, so I think it'd be best if we could allow specifying mnemonic of a channel when joining. For example, maybe something like #join r[u]st to set u as the mnemonic for the channel #rust. (of course this syntax doesn't work because r[u]st is a valid channel name)
I think it'd work if we find a character that is not valid in a channel name, and use it as a prefix for the mnemonic.
The RFC says channel names can't contain spaces, control chars, or comma, but using one of these as mnemonic marker won't look good, I think. I think a better idea to actually turn commands into something like command line arguments where you can specify parameters with --param foo or -p foo etc. So for example, join command would take a --mnemonic/-m argument which could be used like join #rust -m u for setting u as the mnemonic for channel #rust.
Relevant: #66