aboutsummaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/commands.txt94
-rw-r--r--doc/editing_keys.txt33
-rw-r--r--doc/ui_keys.txt15
3 files changed, 142 insertions, 0 deletions
diff --git a/doc/commands.txt b/doc/commands.txt
new file mode 100644
index 0000000..85a32f7
--- /dev/null
+++ b/doc/commands.txt
@@ -0,0 +1,94 @@
+Anything starting with a / is a command, unless it starts with
+*two* / in which case the first one is removed and the rest is
+sent as channel/query text.
+
+Example: someone asks you where the password file is on UNIX. If you
+reply "/etc/passwd", that would be considered a command. You type
+"//etc/passwd" and the string "/etc/passwd" gets sent to the channel.
+
+Anything that starts with / that isn't listed here gets sent to the
+IRC server as-is, minus the /. That's why /nick, /who, /whois aren't
+listed here, for instance.
+
+/j <channel>
+/join <channel>
+Joins a channel, creates a new screen if possible. If a screen can't
+be created, channel text will be sent to the [server] screen, and
+"/m #channel" must be used, to send to the channel.
+
+/j1 <channel>
+/join1 <channel>
+Joins a channel without creating a new screen. Channel test will be
+sent to the [server] screen. Use "/m #channel" to send to the channel.
+
+/m <nick|channel> <text>
+/msg <nick|channel> <text>
+PRIVMSG to nick or channel.
+
+/q <nick> [<msg>]
+/query <nick> [<msg>]
+Creates a screen for PMs to/from <nick> if possible. If <msg> is
+given, sends it to the <nick>. <nick> can also be a channel, which
+creates a channel screen for a channel that doesn't already have
+its own screen.
+
+/quit [<msg>]
+Quits IRC with optional quit message.
+
+/p [#chan] [<msg>]
+/part [#chan] [<msg>]
+Parts (leaves) a channel. If no #chan is given, the current screen's
+channel is parted (if you're in a channel screen). If there's a screen
+for the channel, it gets closed.
+
+/names [<channel>]
+Shows the list of users in a channel. Uses the current screen's channel,
+if no <channel> given. On most networks, it's not very useful to use
+/names on a channel you haven't joined.
+
+/topic [<channel>]
+Shows the channel topic and its creator. With no <channel>, uses the
+current screen's channel.
+
+/ping [<nick>]
+With no argument: ping the server. With arg: CTCP ping the nick.
+The contents of RTCLOK are sent as the ping data, so when the
+PONG response is received, the round-trip time can be shown, with
+up to 1/60 (NTSC) or 1/50 (PAL) second accuracy.
+TODO: not implemented yet.
+
+/me <action>
+CTCP ACTION. Only works in a channel or query screen (eventually
+it'll work in [server] and [private] too)
+
+/ver <nick>
+CTCP VERSION.
+
+/info [<nick>]
+With <nick>, CTCP CLIENTINFO. Without <nick>, INFO command for the
+server.
+
+/ctcp <nick> <command> [<text>]
+Send arbitrary CTCP commands.
+
+/list <arg(s)>
+This command will be sent to the server as-is. The only reason it's a
+local command is so the argument can be required: sending LIST without
+any arguments lists every channel on the server, which isn't useful.
+
+/color <bg> [<fg>] [<status-active>] [<status-highlight>]
+Set colors. This should be on a per-screen basis, eventually.
+TODO: this only takes bg and fg arguments, currently.
+
+/chans
+List all channels we've joined. This will actually be limited to
+something like 20 (who joins more than 20 channels anyway?)
+TODO: not implemented yet.
+
+/quote <cmd>
+Send raw IRC protocol to the server. This bypasses local command
+parsing.
+
+/alert <number>
+Set the type of alert that happens when you're PMed or highlighted
+in a channel. 0 = none, 1 = beep, 2 = flash, 3 = beep and flash.
diff --git a/doc/editing_keys.txt b/doc/editing_keys.txt
new file mode 100644
index 0000000..dfa6fd0
--- /dev/null
+++ b/doc/editing_keys.txt
@@ -0,0 +1,33 @@
+This is kind of a weird mix of UNIX/Emacs/bash and traditional Atari.
+
+^A - move to start of buffer
+^E - move to end of buffer
+^U, Shift-Del - delete (clear) buffer
+Shift-Clear or Ctrl-Clear: clear buffer and hide input box (show status)
+^W - delete word to left of cursor
+Left/Right arrows - move cursor
+Backspace - delete the character to the left of the cursor
+Ctrl-Del - delete the character under the cursor
+
+Future plans:
+
+Shift + Ctrl + Up/Down arrows - history (if we can spare the RAM)
+Up/Down arrows - move up/down by one line (40 chars)
+Up arrow *in an empty inputbox* - bring up last entered command.
+ Can coexist with regular use of Up for movement.
+^Y, Shift-Insert - paste (^K, ^U, ^W fill a paste buffer; need RAM)
+Ctrl-Insert - toggle insert/typeover (does anyone care about this?)
+Atari key - insert a ^B (meaning, toggle bold)
+^U should be "delete to start of buffer", not delete whole line.
+^K - kill (delete) to end of buffer.
+Ctrl + Shift + Left/Right - move back/forward one word (space-separated).
+Tab - tab completion. For [server], complete channels. For [private],
+complete nicks that have PM'ed us or that we have PM'ed. For channels,
+complete channel nicks (we'll never have enough RAM to have full lists;
+search back through screen memory is how it'll work)
+
+The glyphs for these will appear as inverse letters, but will actually
+be the appropriate low ASCII characters:
+^I - toggle italic
+^L - toggle underline
+^S - toggle strikethrough
diff --git a/doc/ui_keys.txt b/doc/ui_keys.txt
new file mode 100644
index 0000000..93c932f
--- /dev/null
+++ b/doc/ui_keys.txt
@@ -0,0 +1,15 @@
+Hold down Start and:
+
+1-7 - switch screens
+Up Arrow (without Control) - scroll current screen up
+Escape - close screen (but do not part channel)
+Tab - switch to last displayed screen
+Left/Right (without Control) - previous/next screen.
+A - switch to active screen
+S - show status (hide edit box)
+Q - create screen for last PM (in [private]) or last channel
+ message (in [server]). Does nothing in screens 2-7.
+
+Future plans:
+
+? - Show help (also the Help key by itself will do this).