summary refs log tree commit diff
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--README39
-rw-r--r--catgirl.1113
-rw-r--r--catgirl.754
-rw-r--r--sandman.111
4 files changed, 128 insertions, 89 deletions
diff --git a/README b/README
index b744df8..6a14ed2 100644
--- a/README
+++ b/README
@@ -7,29 +7,40 @@ DESCRIPTION
      catgirl is a curses IRC client originally intended for use over anonymous
      SSH.
 
-     It requires LibreSSL and targets FreeBSD, NetBSD and Darwin.
+     It requires LibreSSL (-ltls) and targets FreeBSD, Darwin, NetBSD.
+
+   Build
+     On platforms other than FreeBSD, copy the appropriate file to config.mk
+     and modify as needed.  The default install PREFIX is ~/.local.
+
+           cp $(uname).mk config.mk
+           make
+           make install
 
 FILES
-     chat.h     Shared state and function prototypes
-     chat.c     Command line parsing
-     event.c    Event loop and process spawning
-     tag.c      Tag (channel, query) ID assignment
-     handle.c   Incoming command handling
-     input.c    Input command handling
+     chat.h     shared state and function prototypes
+     chat.c     command line parsing
+     event.c    event loop and process spawning
+     tag.c      tag (channel, query) ID assignment
+     handle.c   incoming command handling
+     input.c    input command handling
      irc.c      TLS client connection
      format.c   IRC formatting
-     ui.c       Curses UI
-     term.c     Terminal features unsupported by curses
-     edit.c     Line editing
-     tab.c      Tab-complete
+     ui.c       cursed UI
+     term.c     terminal features unsupported by curses
+     edit.c     line editing
+     tab.c      tab-complete
      url.c      URL detection
-     pls.c      Functions which should not have to be written
-     sandman.m  Utility for Darwin to signal sleep
+     pls.c      functions which should not have to be written
+     sandman.m  utility for Darwin to signal sleep
 
-     sshd_config  Anonymous SSH configuration
+     sshd_config  anonymous SSH configuration
      man.sh       man(1) implementation for chroot
 
 SEE ALSO
      catgirl(1), sandman(1)
 
+BUGS
+     The UI is currently broken with NetBSD's curses implementation.
+
 Causal Agency                  December 2, 2018                  Causal Agency
diff --git a/catgirl.1 b/catgirl.1
index 55220a1..3c17bc7 100644
--- a/catgirl.1
+++ b/catgirl.1
@@ -1,6 +1,6 @@
-.Dd November 27, 2018
+.Dd December 2, 2018
 .Dt CATGIRL 1
-.Os "Causal Agency"
+.Os
 .
 .Sh NAME
 .Nm catgirl
@@ -20,13 +20,12 @@
 .
 .Sh DESCRIPTION
 .Nm
-is a curses IRC client
-which only supports TLS.
+is a curses, TLS-only IRC client.
 .
 .Pp
 The arguments are as follows:
 .
-.Bl -tag -width Ds
+.Bl -tag -width "-w pass"
 .It Fl N
 Send notifications with
 .Xr notify-send 1 .
@@ -90,17 +89,16 @@ are not provided,
 they will be prompted for.
 .
 .Sh COMMANDS
-Commands may be entered
-as their shortest unique prefix.
+Any unique prefix
+may be used to abbreviate a command.
 A slash followed immediately by a number
 is equivalent to
 .Ic /view .
 .
-.Bl -tag
+.Bl -tag -width Ds
 .It Ic /close
 Close the current view.
-All views after the current one
-are renumbered.
+Later views are renumbered.
 .
 .It Ic /help
 Equivalent to
@@ -126,12 +124,10 @@ Equivalent to
 Change nicknames.
 .
 .It Ic /open Op Ar range
-Open
+.Xr open 1
 .Ar range
 most recent URLs
-appearing in the current view
-with
-.Xr open 1 .
+appearing in the current view.
 .Ar range
 may be a hypen- or comma-separated range
 from the most recent URL,
@@ -141,12 +137,11 @@ The default
 is 1.
 .
 .It Ic /open Ar substring
-Open the most recent URL
+.Xr open 1
+the most recent URL
 appearing in the current view
 matching
-.Ar substring
-with
-.Xr open 1 .
+.Ar substring .
 .
 .It Ic /part
 Leave the current channel.
@@ -169,7 +164,7 @@ or set it to
 .
 .It Ic /url
 Hide the UI and
-list the most recent URLS
+list the most recent URLs
 which appeared in the current view.
 Press
 .Aq Enter
@@ -203,116 +198,126 @@ provides Emacs-like
 line editing keys,
 as well as keys for entering
 IRC formatting codes.
+The prefixes
+.Sy C- ,
+.Sy M-
+and
+.Sy S-
+represent the control, meta and shift modifiers,
+respectively.
+Special keys are enclosed in
+.Aq angle brackets .
 .
 .Ss View Keys
-.Bl -tag
-.It Aq C-l
+.Bl -tag -width <PageDown>
+.It Sy C-l
 Redraw the UI.
 .
-.It Aq M-m
+.It Sy M-m
 Insert a blank line in the view.
 .
-.It Ao M-0 Ac ... Ao M-9 Ac
+.It Sy M-0 .. Sy M-9
 Switch to view by number.
 See
 .Ic /view .
 .
-.It Aq S-Left
+.It Sy S- Ns Aq Sy Left
 Scroll view up by one line.
 .
-.It Aq S-Right
+.It Sy S- Ns Aq Sy Right
 Scroll view down by one line.
 .
-.It Aq PageUp
+.It Aq Sy PageUp
 Scroll view up by half a page.
 .
-.It Aq PageDown
+.It Aq Sy PageDown
 Scroll view down by half a page.
 .El
 .
 .Ss Line Editing
-.Bl -tag
-.It Ao C-b Ac Ao Left Ac
+.Bl -tag -width "C-f, <Right>"
+.It Sy C-b , Aq Sy Left
 Move cursor left.
 .
-.It Ao C-f Ac Ao Right Ac
+.It Sy C-f , Aq Sy Right
 Move cursor right.
 .
-.It Ao C-a Ac Ao Home Ac
+.It Sy C-a , Aq Sy Home
 Move cursor to beginning of line.
 .
-.It Ao C-e Ac Ao End Ac
+.It Sy C-e , Aq Sy End
 Move cursor to end of line.
 .
-.It Aq M-b
+.It Sy M-b
 Move cursor to beginning of word.
 .
-.It Aq M-f
+.It Sy M-f
 Move cursor to end of word.
 .
-.It Aq Backspace
+.It Aq Sy Backspace
 Delete character before cursor.
 .
-.It Ao C-d Ac Ao Delete Ac
+.It Sy C-d , Aq Sy Delete
 Delete character under cursor.
 .
-.It Ao C-w Ac Ao M-Backspace Ac
+.It Sy C-w , Sy M- Ns Aq Sy Backspace
 Delete word before cursor.
 .
-.It Aq M-d
+.It Sy M-d
 Delete word after cursor.
 .
-.It Aq C-k
+.It Sy C-k
 Delete line after cursor.
 .
-.It Aq Tab
+.It Aq Sy Tab
 Cycle through completions
 for commands, nicks and channels.
 .El
 .
 .Ss IRC Formatting
-.Bl -tag
-.It Aq C-n
+.Bl -tag -width Ds
+.It Sy C-n
 Reset formatting.
 .
-.It Aq C-o
+.It Sy C-o
 Toggle bold.
 Note: this may need to be typed as
-.Aq C-v C-o .
+.Sy C-v C-o .
 .
-.It Aq C-t
+.It Sy C-t
 Toggle italic.
 .
-.It Aq C-u
+.It Sy C-u
 Toggle underline.
 .
-.It Aq C-v
+.It Sy C-v
 Toggle reverse video.
 Note: this must usually be typed as
-.Aq C-v C-v .
+.Sy C-v C-v .
 .
-.It Aq C-r
+.It Sy C-r
 Set or reset color.
 .El
 .
 .Pp
 To reset color,
 follow
-.Aq C-r
+.Sy C-r
 by a non-digit.
 To set the foreground color,
 follow
-.Aq C-r
+.Sy C-r
 by one or two digits.
 To set the foreground and background colors,
 follow
-.Aq C-r
+.Sy C-r
 by one or two digits,
 a comma,
 and one or two digits.
 .
 .Pp
 The colors are as follows:
+.Pp
 .Bl -tag -width Ds -compact
 .It 0
 white
@@ -349,7 +354,7 @@ light gray
 .El
 .
 .Sh ENVIRONMENT
-.Bl -tag
+.Bl -tag -width SSH_CLIENT
 .It Ev SSH_CLIENT
 If
 .Fl W
@@ -366,7 +371,7 @@ usually the client IP address.
 .El
 .
 .Sh EXAMPLES
-.Dl catgirl -h ascii.town -j '&catgirl'
+.Dl catgirl -h ascii.town -j '&town'
 .
 .Sh STANDARDS
 .Rs
diff --git a/catgirl.7 b/catgirl.7
index 6f73a86..4151b80 100644
--- a/catgirl.7
+++ b/catgirl.7
@@ -14,49 +14,68 @@ use over anonymous SSH.
 .
 .Pp
 It requires LibreSSL
+.Pq Fl ltls
 and targets
 .Fx ,
-.Nx
-and Darwin.
+Darwin,
+.Nx .
+.
+.Ss Build
+On platforms other than
+.Fx ,
+copy the appropriate file to
+.Pa config.mk
+and modify as needed.
+The default install
+.Ev PREFIX
+is
+.Pa ~/.local .
+.
+.Pp
+.Bd -literal -offset indent
+cp $(uname).mk config.mk
+make
+make install
+.Ed
 .
 .Sh FILES
 .Bl -tag -width sandman.m -compact
 .It Pa chat.h
-Shared state and function prototypes
+shared state and function prototypes
 .It Pa chat.c
-Command line parsing
+command line parsing
 .It Pa event.c
-Event loop and process spawning
+event loop and process spawning
 .It Pa tag.c
-Tag (channel, query) ID assignment
+tag (channel, query) ID assignment
 .It Pa handle.c
-Incoming command handling
+incoming command handling
 .It Pa input.c
-Input command handling
+input command handling
 .It Pa irc.c
 TLS client connection
 .It Pa format.c
 IRC formatting
 .It Pa ui.c
-Curses UI
+cursed UI
 .It Pa term.c
-Terminal features unsupported by curses
+terminal features unsupported by curses
 .It Pa edit.c
-Line editing
+line editing
 .It Pa tab.c
-Tab-complete
+tab-complete
 .It Pa url.c
 URL detection
 .It Pa pls.c
-Functions which should not have to be written
+functions which should not have to be written
 .It Pa sandman.m
-Utility for Darwin to signal sleep
+utility for Darwin to signal sleep
 .El
 .
 .Pp
 .Bl -tag -width sshd_config -compact
 .It Pa sshd_config
-Anonymous SSH configuration
+anonymous SSH configuration
 .It Pa man.sh
 .Xr man 1
 implementation for chroot
@@ -65,3 +84,8 @@ implementation for chroot
 .Sh SEE ALSO
 .Xr catgirl 1 ,
 .Xr sandman 1
+.
+.Sh BUGS
+The UI is currently broken with
+.Nx Ap s
+curses implementation.
diff --git a/sandman.1 b/sandman.1
index 1cd0583..0f6606b 100644
--- a/sandman.1
+++ b/sandman.1
@@ -1,6 +1,6 @@
-.Dd November 30, 2018
+.Dd December 2, 2018
 .Dt SANDMAN 1
-.Os "Causal Agency"
+.Os
 .
 .Sh NAME
 .Nm sandman
@@ -13,16 +13,15 @@
 .Sh DESCRIPTION
 .Nm
 is a utility for Darwin systems.
-.Nm
-runs the
+It runs the
 .Ar command
-in a child process
+as a child process
 and sends it
 .Dv SIGTSTP
 and
 .Dv SIGCONT
 signals
-when the computer goes to sleep
+when the system goes to sleep
 and wakes from sleep,
 respectively.
 .