From 85ea911b799181e375b1553458853e54ed25f28f Mon Sep 17 00:00:00 2001
From: Curtis McEnroe
Date: Tue, 27 Nov 2018 19:13:27 -0500
Subject: Rename project catgirl
This simplifies things.
---
.gitignore | 2 +-
Makefile | 22 ++--
README | 10 +-
catgirl.1 | 380 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
catgirl.7 | 63 ++++++++++
chat.h | 2 +-
chatte.1 | 380 ------------------------------------------------------------
chatte.7 | 63 ----------
input.c | 2 +-
man.sh | 2 +-
sshd_config | 2 +-
11 files changed, 464 insertions(+), 464 deletions(-)
create mode 100644 catgirl.1
create mode 100644 catgirl.7
delete mode 100644 chatte.1
delete mode 100644 chatte.7
diff --git a/.gitignore b/.gitignore
index d3a0af8..b701a89 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,6 +1,6 @@
*.o
*.t
-chatte
+catgirl
chroot.tar
root
tags
diff --git a/Makefile b/Makefile
index ece6649..3efcbd8 100644
--- a/Makefile
+++ b/Makefile
@@ -27,12 +27,12 @@ OBJS += url.o
TESTS += format.t
TESTS += term.t
-all: tags chatte test
+all: tags catgirl test
tags: *.h *.c
ctags -w *.h *.c
-chatte: $(OBJS)
+catgirl: $(OBJS)
$(CC) $(LDFLAGS) $(OBJS) $(LDLIBS) -o $@
$(OBJS): chat.h
@@ -45,16 +45,16 @@ test: $(TESTS)
.c.t:
$(CC) $(CFLAGS) -DTEST $(LDFLAGS) $< $(LDLIBS) -o $@
-install: chatte chatte.1
+install: catgirl catgirl.1
install -d $(PREFIX)/bin $(MANPATH)/man1
- install chatte $(PREFIX)/bin/chatte
- install -m 644 chatte.1 $(MANPATH)/man1/chatte.1
+ install catgirl $(PREFIX)/bin/catgirl
+ install -m 644 catgirl.1 $(MANPATH)/man1/catgirl.1
uninstall:
- rm -f $(PREFIX)/bin/chatte
- rm -f $(MANPATH)/man1/chatte.1
+ rm -f $(PREFIX)/bin/catgirl
+ rm -f $(MANPATH)/man1/catgirl.1
-chroot.tar: chatte chatte.1 man.sh
+chroot.tar: catgirl catgirl.1 man.sh
install -d -o root -g wheel \
root \
root/bin \
@@ -88,7 +88,7 @@ chroot.tar: chatte chatte.1 man.sh
tar -c -f chroot.tar -C root bin etc home lib libexec usr
clean:
- rm -rf tags chatte $(OBJS) $(TESTS) root chroot.tar
+ rm -rf tags catgirl $(OBJS) $(TESTS) root chroot.tar
-README: chatte.7
- mandoc chatte.7 | sed $$'s/.\b//g' > README
+README: catgirl.7
+ mandoc catgirl.7 | col -b -x > README
diff --git a/README b/README
index bc7d86c..d060f24 100644
--- a/README
+++ b/README
@@ -1,10 +1,10 @@
-CHATTE(7) Miscellaneous Information Manual CHATTE(7)
+CATGIRL(7) Miscellaneous Information Manual CATGIRL(7)
NAME
- chatte – IRC for catgirls
+ catgirl – IRC client
DESCRIPTION
- chatte is a curses IRC client originally intended for use over anonymous
+ catgirl is a curses IRC client originally intended for use over anonymous
SSH.
It requires LibreSSL and targets FreeBSD and Darwin.
@@ -29,6 +29,6 @@ FILES
man.sh man(1) implementation for chroot
SEE ALSO
- chatte(1)
+ catgirl(1)
-Causal Agency September 15, 2018 Causal Agency
+Causal Agency November 27, 2018 Causal Agency
diff --git a/catgirl.1 b/catgirl.1
new file mode 100644
index 0000000..2ffd7d0
--- /dev/null
+++ b/catgirl.1
@@ -0,0 +1,380 @@
+.Dd November 27, 2018
+.Dt CATGIRL 1
+.Os "Causal Agency"
+.
+.Sh NAME
+.Nm catgirl
+.Nd IRC client
+.
+.Sh SYNOPSIS
+.Nm
+.Op Fl Nv
+.Op Fl W Ar pass
+.Op Fl h Ar host
+.Op Fl j Ar chan
+.Op Fl l Ar path
+.Op Fl n Ar nick
+.Op Fl p Ar port
+.Op Fl u Ar user
+.Op Fl w Ar pass
+.
+.Sh DESCRIPTION
+.Nm
+is a curses IRC client
+which only supports TLS.
+.
+.Pp
+The arguments are as follows:
+.
+.Bl -tag -width Ds
+.It Fl N
+Send notifications with
+.Xr notify-send 1 .
+.
+.It Fl W Ar pass
+Send
+.Ql WEBIRC
+command with
+.Ar pass .
+See
+.Sx ENVIRONMENT
+for details.
+.
+.It Fl h Ar host
+Connect to
+.Ar host .
+.
+.It Fl j Ar chan
+Join
+.Ar chan
+after connecting.
+.Ar chan
+may be a comma-separated list.
+.
+.It Fl l Ar path
+Log messages to subdirectories by target
+and files by date under
+.Ar path .
+.
+.It Fl n Ar nick
+Set nickname to
+.Ar nick .
+.
+.It Fl p Ar port
+Connect to
+.Ar port .
+The default port is 6697.
+.
+.It Fl u Ar user
+Set username to
+.Ar user .
+The default username is
+the same as the nickname.
+.
+.It Fl v
+Show raw IRC protocol in the
+.Ql ~irc
+view.
+.
+.It Fl w Ar pass
+Log in with
+.Ar pass .
+.El
+.
+.Pp
+If
+.Fl h
+or
+.Fl n
+are not provided,
+they will be prompted for.
+.
+.Sh COMMANDS
+Commands may be entered
+as their shortest unique prefix.
+A slash followed immediately by a number
+is equivalent to
+.Ic /view .
+.
+.Bl -tag
+.It Ic /close
+Close the current view.
+All views after the current one
+are renumbered.
+.
+.It Ic /help
+Equivalent to
+.Ic /man .
+.
+.It Ic /join Ar chan
+Join a channel.
+.
+.It Ic /man
+View this manual.
+.
+.It Ic /me Ar action
+Send a CTCP
+.Ql ACTION
+to the current target.
+.
+.It Ic /names
+List users in the current channel.
+Equivalent to
+.Ic /who .
+.
+.It Ic /nick Ar nick
+Change nicknames.
+.
+.It Ic /open Op Ar range
+Open
+.Ar range
+most recent URLs
+appearing in the current view
+with
+.Xr open 1 .
+.Ar range
+may be a hypen- or comma-separated range
+from the most recent URL,
+starting at 1.
+The default
+.Ar range
+is 1.
+.
+.It Ic /open Ar substring
+Open the most recent URL
+appearing in the current view
+matching
+.Ar substring
+with
+.Xr open 1 .
+.
+.It Ic /part
+Leave the current channel.
+.
+.It Ic /query Ar nick
+Open a private message view with
+.Ar nick .
+.
+.It Ic /quit Op Ar message
+Quit IRC.
+The default
+.Ar message
+is
+.Dq Goodbye .
+.
+.It Ic /topic Op Ar topic
+Show the topic of the current channel
+or set it to
+.Ar topic .
+.
+.It Ic /url
+Hide the UI and
+list the most recent URLS
+which appeared in the current view.
+Press
+.Aq Enter
+to resume the UI.
+.
+.It Ic /view Ar num
+Switch to view number
+.Ar num .
+.
+.It Ic /view Ar name
+Switch to view for
+.Ar name .
+.
+.It Ic /who
+List users in the current channel.
+.El
+.
+.Pp
+Additionally,
+messages entered in the
+.Ql ~irc
+view
+will be sent as raw IRC commands.
+.
+.Sh KEY BINDINGS
+.Nm
+provides Emacs-like
+line editing keys,
+as well as keys for entering
+IRC formatting codes.
+.
+.Ss View Keys
+.Bl -tag
+.It Aq C-l
+Redraw the UI.
+.
+.It Aq M-m
+Insert a blank line in the view.
+.
+.It Ao M-0 Ac ... Ao M-9 Ac
+Switch to view by number.
+See
+.Ic /view .
+.
+.It Aq S-Left
+Scroll view up by one line.
+.
+.It Aq S-Right
+Scroll view down by one line.
+.
+.It Aq PageUp
+Scroll view up by half a page.
+.
+.It Aq PageDown
+Scroll view down by half a page.
+.El
+.
+.Ss Line Editing
+.Bl -tag
+.It Ao C-b Ac Ao Left Ac
+Move cursor left.
+.
+.It Ao C-f Ac Ao Right Ac
+Move cursor right.
+.
+.It Ao C-a Ac Ao Home Ac
+Move cursor to beginning of line.
+.
+.It Ao C-e Ac Ao End Ac
+Move cursor to end of line.
+.
+.It Aq M-b
+Move cursor to beginning of word.
+.
+.It Aq M-f
+Move cursor to end of word.
+.
+.It Aq Backspace
+Delete character before cursor.
+.
+.It Ao C-d Ac Ao Delete Ac
+Delete character under cursor.
+.
+.It Ao C-w Ac Ao M-Backspace Ac
+Delete word before cursor.
+.
+.It Aq M-d
+Delete word after cursor.
+.
+.It Aq C-k
+Delete line after cursor.
+.
+.It Aq Tab
+Cycle through completions
+for commands, nicks and channels.
+.El
+.
+.Ss IRC Formatting
+.Bl -tag
+.It Aq C-n
+Reset formatting.
+.
+.It Aq C-o
+Toggle bold.
+Note: this may need to be typed as
+.Aq C-v C-o .
+.
+.It Aq C-t
+Toggle italic.
+.
+.It Aq C-u
+Toggle underline.
+.
+.It Aq C-v
+Toggle reverse video.
+Note: this must usually be typed as
+.Aq C-v C-v .
+.
+.It Aq C-r
+Set or reset color.
+.El
+.
+.Pp
+To reset color,
+follow
+.Aq C-r
+by a non-digit.
+To set the foreground color,
+follow
+.Aq C-r
+by one or two digits.
+To set the foreground and background colors,
+follow
+.Aq C-r
+by one or two digits,
+a comma,
+and one or two digits.
+.
+.Pp
+The colors are as follows:
+.Bl -tag -width Ds -compact
+.It 0
+white
+.It 1
+black
+.It 2
+blue
+.It 3
+green
+.It 4
+red
+.It 5
+brown (dark red)
+.It 6
+magenta
+.It 7
+orange (dark yellow)
+.It 8
+yellow
+.It 9
+light green
+.It 10
+cyan
+.It 11
+light cyan
+.It 12
+light blue
+.It 13
+pink (light magenta)
+.It 14
+gray
+.It 15
+light gray
+.El
+.
+.Sh ENVIRONMENT
+.Bl -tag
+.It Ev SSH_CLIENT
+If
+.Fl W
+is passed and
+.Ev SSH_CLIENT
+is set,
+the
+.Ql WEBIRC
+command is used
+to set the hostname
+to the first word of
+.Ev SSH_CLIENT ,
+usually the client IP address.
+.El
+.
+.Sh EXAMPLES
+.Dl catgirl -h ascii.town -j '&catgirl'
+.
+.Sh STANDARDS
+.Rs
+.%A C. Kalt
+.%T Internet Relay Chat: Client Protocol
+.%I IETF
+.%N RFC 2812
+.%D April 2000
+.%U https://tools.ietf.org/html/rfc2812
+.Re
+.
+.Sh CAVEATS
+.Nm
+does not support unencrypted connections.
diff --git a/catgirl.7 b/catgirl.7
new file mode 100644
index 0000000..e54d822
--- /dev/null
+++ b/catgirl.7
@@ -0,0 +1,63 @@
+.Dd November 27, 2018
+.Dt CATGIRL 7
+.Os "Causal Agency"
+.
+.Sh NAME
+.Nm catgirl
+.Nd IRC client
+.
+.Sh DESCRIPTION
+.Nm
+is a curses IRC client
+originally intended for
+use over anonymous SSH.
+.
+.Pp
+It requires LibreSSL
+and targets
+.Fx
+and Darwin.
+.
+.Sh FILES
+.Bl -tag -width format.c -compact
+.It Pa chat.h
+Shared state and function prototypes
+.It Pa chat.c
+Command line parsing
+.It Pa event.c
+Event loop and process spawning
+.It Pa tag.c
+Tag (channel, query) ID assignment
+.It Pa handle.c
+Incoming command handling
+.It Pa input.c
+Input command handling
+.It Pa irc.c
+TLS client connection
+.It Pa format.c
+IRC formatting
+.It Pa ui.c
+Curses UI
+.It Pa term.c
+Terminal features unsupported by curses
+.It Pa edit.c
+Line editing
+.It Pa tab.c
+Tab-complete
+.It Pa url.c
+URL detection
+.It Pa pls.c
+Functions which should not have to be written
+.El
+.
+.Pp
+.Bl -tag -width sshd_config -compact
+.It Pa sshd_config
+Anonymous SSH configuration
+.It Pa man.sh
+.Xr man 1
+implementation for chroot
+.El
+.
+.Sh SEE ALSO
+.Xr catgirl 1
diff --git a/chat.h b/chat.h
index cb05124..1a56992 100644
--- a/chat.h
+++ b/chat.h
@@ -14,7 +14,7 @@
* along with this program. If not, see .
*/
-#define SOURCE_URL "https://code.causal.agency/june/chatte"
+#define SOURCE_URL "https://code.causal.agency/june/catgirl"
#include
#include
diff --git a/chatte.1 b/chatte.1
deleted file mode 100644
index f788ff1..0000000
--- a/chatte.1
+++ /dev/null
@@ -1,380 +0,0 @@
-.Dd September 8, 2018
-.Dt CHATTE 1
-.Os "Causal Agency"
-.
-.Sh NAME
-.Nm chatte
-.Nd IRC for catgirls
-.
-.Sh SYNOPSIS
-.Nm
-.Op Fl Nv
-.Op Fl W Ar pass
-.Op Fl h Ar host
-.Op Fl j Ar chan
-.Op Fl l Ar path
-.Op Fl n Ar nick
-.Op Fl p Ar port
-.Op Fl u Ar user
-.Op Fl w Ar pass
-.
-.Sh DESCRIPTION
-.Nm
-is a curses IRC client
-which only supports TLS.
-.
-.Pp
-The arguments are as follows:
-.
-.Bl -tag -width Ds
-.It Fl N
-Send notifications with
-.Xr notify-send 1 .
-.
-.It Fl W Ar pass
-Send
-.Ql WEBIRC
-command with
-.Ar pass .
-See
-.Sx ENVIRONMENT
-for details.
-.
-.It Fl h Ar host
-Connect to
-.Ar host .
-.
-.It Fl j Ar chan
-Join
-.Ar chan
-after connecting.
-.Ar chan
-may be a comma-separated list.
-.
-.It Fl l Ar path
-Log messages to subdirectories by target
-and files by date under
-.Ar path .
-.
-.It Fl n Ar nick
-Set nickname to
-.Ar nick .
-.
-.It Fl p Ar port
-Connect to
-.Ar port .
-The default port is 6697.
-.
-.It Fl u Ar user
-Set username to
-.Ar user .
-The default username is
-the same as the nickname.
-.
-.It Fl v
-Show raw IRC protocol in the
-.Ql ~irc
-view.
-.
-.It Fl w Ar pass
-Log in with
-.Ar pass .
-.El
-.
-.Pp
-If
-.Fl h
-or
-.Fl n
-are not provided,
-they will be prompted for.
-.
-.Sh COMMANDS
-Commands may be entered
-as their shortest unique prefix.
-A slash followed immediately by a number
-is equivalent to
-.Ic /view .
-.
-.Bl -tag
-.It Ic /close
-Close the current view.
-All views after the current one
-are renumbered.
-.
-.It Ic /help
-Equivalent to
-.Ic /man .
-.
-.It Ic /join Ar chan
-Join a channel.
-.
-.It Ic /man
-View this manual.
-.
-.It Ic /me Ar action
-Send a CTCP
-.Ql ACTION
-to the current target.
-.
-.It Ic /names
-List users in the current channel.
-Equivalent to
-.Ic /who .
-.
-.It Ic /nick Ar nick
-Change nicknames.
-.
-.It Ic /open Op Ar range
-Open
-.Ar range
-most recent URLs
-appearing in the current view
-with
-.Xr open 1 .
-.Ar range
-may be a hypen- or comma-separated range
-from the most recent URL,
-starting at 1.
-The default
-.Ar range
-is 1.
-.
-.It Ic /open Ar substring
-Open the most recent URL
-appearing in the current view
-matching
-.Ar substring
-with
-.Xr open 1 .
-.
-.It Ic /part
-Leave the current channel.
-.
-.It Ic /query Ar nick
-Open a private message view with
-.Ar nick .
-.
-.It Ic /quit Op Ar message
-Quit IRC.
-The default
-.Ar message
-is
-.Dq Goodbye .
-.
-.It Ic /topic Op Ar topic
-Show the topic of the current channel
-or set it to
-.Ar topic .
-.
-.It Ic /url
-Hide the UI and
-list the most recent URLS
-which appeared in the current view.
-Press
-.Aq Enter
-to resume the UI.
-.
-.It Ic /view Ar num
-Switch to view number
-.Ar num .
-.
-.It Ic /view Ar name
-Switch to view for
-.Ar name .
-.
-.It Ic /who
-List users in the current channel.
-.El
-.
-.Pp
-Additionally,
-messages entered in the
-.Ql ~irc
-view
-will be sent as raw IRC commands.
-.
-.Sh KEY BINDINGS
-.Nm
-provides Emacs-like
-line editing keys,
-as well as keys for entering
-IRC formatting codes.
-.
-.Ss View Keys
-.Bl -tag
-.It Aq C-l
-Redraw the UI.
-.
-.It Aq M-m
-Insert a blank line in the view.
-.
-.It Ao M-0 Ac ... Ao M-9 Ac
-Switch to view by number.
-See
-.Ic /view .
-.
-.It Aq S-Left
-Scroll view up by one line.
-.
-.It Aq S-Right
-Scroll view down by one line.
-.
-.It Aq PageUp
-Scroll view up by half a page.
-.
-.It Aq PageDown
-Scroll view down by half a page.
-.El
-.
-.Ss Line Editing
-.Bl -tag
-.It Ao C-b Ac Ao Left Ac
-Move cursor left.
-.
-.It Ao C-f Ac Ao Right Ac
-Move cursor right.
-.
-.It Ao C-a Ac Ao Home Ac
-Move cursor to beginning of line.
-.
-.It Ao C-e Ac Ao End Ac
-Move cursor to end of line.
-.
-.It Aq M-b
-Move cursor to beginning of word.
-.
-.It Aq M-f
-Move cursor to end of word.
-.
-.It Aq Backspace
-Delete character before cursor.
-.
-.It Ao C-d Ac Ao Delete Ac
-Delete character under cursor.
-.
-.It Ao C-w Ac Ao M-Backspace Ac
-Delete word before cursor.
-.
-.It Aq M-d
-Delete word after cursor.
-.
-.It Aq C-k
-Delete line after cursor.
-.
-.It Aq Tab
-Cycle through completions
-for commands, nicks and channels.
-.El
-.
-.Ss IRC Formatting
-.Bl -tag
-.It Aq C-n
-Reset formatting.
-.
-.It Aq C-o
-Toggle bold.
-Note: this may need to be typed as
-.Aq C-v C-o .
-.
-.It Aq C-t
-Toggle italic.
-.
-.It Aq C-u
-Toggle underline.
-.
-.It Aq C-v
-Toggle reverse video.
-Note: this must usually be typed as
-.Aq C-v C-v .
-.
-.It Aq C-r
-Set or reset color.
-.El
-.
-.Pp
-To reset color,
-follow
-.Aq C-r
-by a non-digit.
-To set the foreground color,
-follow
-.Aq C-r
-by one or two digits.
-To set the foreground and background colors,
-follow
-.Aq C-r
-by one or two digits,
-a comma,
-and one or two digits.
-.
-.Pp
-The colors are as follows:
-.Bl -tag -width Ds -compact
-.It 0
-white
-.It 1
-black
-.It 2
-blue
-.It 3
-green
-.It 4
-red
-.It 5
-brown (dark red)
-.It 6
-magenta
-.It 7
-orange (dark yellow)
-.It 8
-yellow
-.It 9
-light green
-.It 10
-cyan
-.It 11
-light cyan
-.It 12
-light blue
-.It 13
-pink (light magenta)
-.It 14
-gray
-.It 15
-light gray
-.El
-.
-.Sh ENVIRONMENT
-.Bl -tag
-.It Ev SSH_CLIENT
-If
-.Fl W
-is passed and
-.Ev SSH_CLIENT
-is set,
-the
-.Ql WEBIRC
-command is used
-to set the hostname
-to the first word of
-.Ev SSH_CLIENT ,
-usually the client IP address.
-.El
-.
-.Sh EXAMPLES
-.Dl chatte -h ascii.town -j '&chatte'
-.
-.Sh STANDARDS
-.Rs
-.%A C. Kalt
-.%T Internet Relay Chat: Client Protocol
-.%I IETF
-.%N RFC 2812
-.%D April 2000
-.%U https://tools.ietf.org/html/rfc2812
-.Re
-.
-.Sh CAVEATS
-.Nm
-does not support unencrypted connections.
diff --git a/chatte.7 b/chatte.7
deleted file mode 100644
index 5d5b31c..0000000
--- a/chatte.7
+++ /dev/null
@@ -1,63 +0,0 @@
-.Dd September 15, 2018
-.Dt CHATTE 7
-.Os "Causal Agency"
-.
-.Sh NAME
-.Nm chatte
-.Nd IRC for catgirls
-.
-.Sh DESCRIPTION
-.Nm
-is a curses IRC client
-originally intended for
-use over anonymous SSH.
-.
-.Pp
-It requires LibreSSL
-and targets
-.Fx
-and Darwin.
-.
-.Sh FILES
-.Bl -tag -width format.c -compact
-.It Pa chat.h
-Shared state and function prototypes
-.It Pa chat.c
-Command line parsing
-.It Pa event.c
-Event loop and process spawning
-.It Pa tag.c
-Tag (channel, query) ID assignment
-.It Pa handle.c
-Incoming command handling
-.It Pa input.c
-Input command handling
-.It Pa irc.c
-TLS client connection
-.It Pa format.c
-IRC formatting
-.It Pa ui.c
-Curses UI
-.It Pa term.c
-Terminal features unsupported by curses
-.It Pa edit.c
-Line editing
-.It Pa tab.c
-Tab-complete
-.It Pa url.c
-URL detection
-.It Pa pls.c
-Functions which should not have to be written
-.El
-.
-.Pp
-.Bl -tag -width sshd_config -compact
-.It Pa sshd_config
-Anonymous SSH configuration
-.It Pa man.sh
-.Xr man 1
-implementation for chroot
-.El
-.
-.Sh SEE ALSO
-.Xr chatte 1
diff --git a/input.c b/input.c
index 84ca71c..3a3d499 100644
--- a/input.c
+++ b/input.c
@@ -144,7 +144,7 @@ static void inputClose(struct Tag tag, char *params) {
static void inputMan(struct Tag tag, char *params) {
(void)tag;
(void)params;
- eventWait((const char *[]) { "man", "1", "chatte", NULL });
+ eventWait((const char *[]) { "man", "1", "catgirl", NULL });
}
static const struct {
diff --git a/man.sh b/man.sh
index 494eeda..9d686f9 100644
--- a/man.sh
+++ b/man.sh
@@ -1,2 +1,2 @@
#!/bin/sh
-exec mandoc /usr/share/man/man1/chatte.1 | LESSSECURE=1 less
+exec mandoc /usr/share/man/man1/catgirl.1 | LESSSECURE=1 less
diff --git a/sshd_config b/sshd_config
index 98a70b6..47b5a33 100644
--- a/sshd_config
+++ b/sshd_config
@@ -4,7 +4,7 @@ Match User chat
PasswordAuthentication yes
PermitEmptyPasswords yes
ChrootDirectory /home/chat
- ForceCommand chatte
+ ForceCommand catgirl
AllowAgentForwarding no
AllowTcpForwarding no
--
cgit 1.4.1-2-gfad0