diff options
Diffstat (limited to '')
-rw-r--r-- | Makefile | 4 | ||||
-rw-r--r-- | README | 62 | ||||
-rw-r--r-- | torus.1 | 124 | ||||
-rw-r--r-- | torus.7 | 58 |
4 files changed, 174 insertions, 74 deletions
diff --git a/Makefile b/Makefile index 6169e4d..776a032 100644 --- a/Makefile +++ b/Makefile @@ -44,5 +44,5 @@ chroot.tar: server client clean: rm -f tags $(OBJS) $(BINS) chroot.tar -README: torus.7 - mandoc torus.7 | col -b -x > README +README: torus.1 + mandoc torus.1 | col -b -x > README diff --git a/README b/README index e7f3e3b..c4f2494 100644 --- a/README +++ b/README @@ -1,22 +1,56 @@ -TORUS(7) FreeBSD Miscellaneous Information Manual TORUS(7) +torus(1) FreeBSD General Commands Manual torus(1) NAME - torus – welcome to ascii.town! + server, client, image, meta, merge – collaborative ASCII art + +SYNOPSIS + server [-d data] [-s sock] + client [-h] [-s sock] + image [-d data] [-f font] [-x x] [-y y] + meta + merge data1 data2 data3 DESCRIPTION + server maps a data file and listens on a UNIX-domain socket to + synchronize events between clients. + + client connects to a UNIX-domain socket and presents a curses(3) + interface. + + image renders a tile from a data file using a PSF2 font to PNG on + standard output. + + meta extracts metadata from a data file on standard input to CSV on + standard ouput. The CSV fields are tileX, tileY, createTime, + modifyCount, modifyTime, accessCount, accessTime. + + merge interactively merges two data files data1 and data2 into data3. + Differing tiles are presented in a curses(3) interface and are chosen by + typing a or b. + + The arguments are as follows: + + -d data + Set path to data file. The default path is torus.dat. + + -f font + Set path to PSF2 font. The default path is default8x16.psfu. + + -h Write help page data to standard output and exit. + + -s sock + Set path to UNIX-domain socket. The default path is torus.sock. + + -x x -y y + Set tile coordinates to render. The default coordinates are + 32,32. + +IMPLEMENTATION NOTES This software targets FreeBSD and Darwin. - torus.h Shared structures and message protocol. - server.c Maps torus.dat and listens on torus.sock. - client.c curses(3) client. - help.h Tile data for help page. - image.c Renders PNGs of tiles. - meta.c Exports metadata from data file to CSV. - merge.c Interactively merges two data files. - snapshot.sh Snapshots data file, appropriate for cron. + help.h contains tile data for the help page and can be generated from the + first tile of torus.dat. - sshd_config Anonymous login to chroot(8)'d client. - index.html Friendly directions. - default8x16.psfu Bitmap font from kbd: http://kbd-project.org. + default8x16.psfu is taken from kbd: http://kbd-project.org. -Causal Agency October 10, 2018 Causal Agency +Causal Agency October 12, 2018 Causal Agency diff --git a/torus.1 b/torus.1 new file mode 100644 index 0000000..52f12db --- /dev/null +++ b/torus.1 @@ -0,0 +1,124 @@ +.Dd October 12, 2018 +.Dt torus 1 +.Os "Causal Agency" +. +.Sh NAME +.Nm server , +.Nm client , +.Nm image , +.Nm meta , +.Nm merge +.Nd collaborative ASCII art +. +.Sh SYNOPSIS +.Nm server +.Op Fl d Ar data +.Op Fl s Ar sock +. +.Nm client +.Op Fl h +.Op Fl s Ar sock +. +.Nm image +.Op Fl d Ar data +.Op Fl f Ar font +.Op Fl x Ar x +.Op Fl y Ar y +. +.Nm meta +. +.Nm merge +.Ar data1 +.Ar data2 +.Ar data3 +. +.Sh DESCRIPTION +.Nm server +maps a data file +and listens on a UNIX-domain socket +to synchronize events between clients. +. +.Pp +.Nm client +connects to a UNIX-domain socket +and presents a +.Xr curses 3 +interface. +. +.Pp +.Nm image +renders a tile from a data file +using a PSF2 font +to PNG on standard output. +. +.Pp +.Nm meta +extracts metadata +from a data file on standard input +to CSV on standard ouput. +The CSV fields are +.Va tileX , +.Va tileY , +.Va createTime , +.Va modifyCount , +.Va modifyTime , +.Va accessCount , +.Va accessTime . +. +.Pp +.Nm merge +interactively merges two data files +.Ar data1 +and +.Ar data2 +into +.Ar data3 . +Differing tiles are presented in a +.Xr curses 3 +interface +and are chosen by typing +.Ic a +or +.Ic b . +. +.Pp +The arguments are as follows: +.Bl -tag -width Ds +.It Fl d Ar data +Set path to data file. +The default path is +.Pa torus.dat . +. +.It Fl f Ar font +Set path to PSF2 font. +The default path is +.Pa default8x16.psfu . +. +.It Fl h +Write help page data to standard output and exit. +. +.It Fl s Ar sock +Set path to UNIX-domain socket. +The default path is +.Pa torus.sock . +. +.It Fl x Ar x Fl y Ar y +Set tile coordinates to render. +The default coordinates are 32,32. +.El +. +.Sh IMPLEMENTATION NOTES +This software targets +.Fx +and Darwin. +. +.Pp +.Pa help.h +contains tile data for the help page +and can be generated from the first tile of +.Pa torus.dat . +. +.Pp +.Pa default8x16.psfu +is taken from +.Lk http://kbd-project.org kbd . diff --git a/torus.7 b/torus.7 deleted file mode 100644 index 3394086..0000000 --- a/torus.7 +++ /dev/null @@ -1,58 +0,0 @@ -.Dd October 10, 2018 -.Dt TORUS 7 -.Os "Causal Agency" -. -.Sh NAME -.Nm torus -.Nd welcome to ascii.town! -. -.Sh DESCRIPTION -This software targets -.Fx -and Darwin. -. -.Pp -.Bl -tag -width "snapshot.sh" -compact -.It Pa torus.h -Shared structures and message protocol. -. -.It Pa server.c -Maps -.Pa torus.dat -and listens on -.Pa torus.sock . -. -.It Pa client.c -.Xr curses 3 -client. -. -.It Pa help.h -Tile data for help page. -. -.It Pa image.c -Renders PNGs of tiles. -. -.It Pa meta.c -Exports metadata from data file to CSV. -. -.It Pa merge.c -Interactively merges two data files. -. -.It Pa snapshot.sh -Snapshots data file, appropriate for cron. -.El -. -.Pp -.Bl -tag -width "default8x16.psfu" -compact -.It Pa sshd_config -Anonymous login to -.Xr chroot 8 Ap d -client. -. -.It Pa index.html -Friendly directions. -. -.It Pa default8x16.psfu -Bitmap font from -.Lk http://kbd-project.org kbd . -.El |