mirror of
https://github.com/GnoConsortium/gno-docs.git
synced 2025-01-13 02:29:55 +00:00
added files for online describe(1) support
These are as they were last used in the late 90's. They need a major rework to integrate with the existing web/ftp site.
This commit is contained in:
parent
3e6bac2857
commit
3b278d83e1
136
describe/Makefile
Normal file
136
describe/Makefile
Normal file
@ -0,0 +1,136 @@
|
|||||||
|
#
|
||||||
|
# $Id: Makefile,v 1.7 1999/07/03 16:55:41 gdr-ftp Exp $
|
||||||
|
#
|
||||||
|
# Devin Reade, January 1998
|
||||||
|
#
|
||||||
|
|
||||||
|
# What is the current version of describe, descc, and descu? (They're
|
||||||
|
# in lockstep.)
|
||||||
|
VERSION_SHORT = 106
|
||||||
|
VERSION_LONG = 1.0.6
|
||||||
|
|
||||||
|
|
||||||
|
###################################################################
|
||||||
|
###### You shouldn't have to change anything below this line ######
|
||||||
|
###################################################################
|
||||||
|
|
||||||
|
# This is the describe database source file.
|
||||||
|
DB_SRC = describe.src
|
||||||
|
|
||||||
|
# We print this in comments at the top of the generated html.
|
||||||
|
WARNING = This is a generated file. Do not edit.
|
||||||
|
|
||||||
|
# This is a file we generate so that we can make the indexed pages.
|
||||||
|
XREF = xref.db
|
||||||
|
|
||||||
|
# Where, in the ftp hierarchy, will the files go?
|
||||||
|
RELDIR = /ftp/pub/apple2/gs.specific/gno/doc
|
||||||
|
|
||||||
|
# The file which explains the db NuFX archives for the ftp site.
|
||||||
|
README_IN = README.src.in
|
||||||
|
README_OUT = README.src
|
||||||
|
|
||||||
|
# Files released to the ftp site.
|
||||||
|
RELEASE_README = desc.txt
|
||||||
|
RELEASE_SRC = desc.src.shk
|
||||||
|
RELEASE_DB = desc.db.shk
|
||||||
|
|
||||||
|
HEAD = head.html
|
||||||
|
TAIL = tail.html
|
||||||
|
FINAL_DIR = /home/gno/public_html/describe
|
||||||
|
HTML = dbase.html \
|
||||||
|
index.html \
|
||||||
|
program.html \
|
||||||
|
submit.html \
|
||||||
|
view.html
|
||||||
|
|
||||||
|
# Directories for generated files
|
||||||
|
GEN = $(FINAL_DIR)/gen
|
||||||
|
ENTRY = $(FINAL_DIR)/entry
|
||||||
|
|
||||||
|
# Directory for scratch files
|
||||||
|
TDIR = ./tmp
|
||||||
|
|
||||||
|
default: setup xref web readme
|
||||||
|
readme: setup $(README_OUT)
|
||||||
|
readme-install: $(RELDIR)/$(RELEASE_README)
|
||||||
|
xref: setup $(XREF)
|
||||||
|
release: setup default readme-install \
|
||||||
|
$(RELDIR)/$(RELEASE_SRC) \
|
||||||
|
$(RELDIR)/$(RELEASE_DB)
|
||||||
|
|
||||||
|
$(XREF): $(DB_SRC)
|
||||||
|
./mkindex < $(DB_SRC) > $(XREF)
|
||||||
|
./mkgen $(XREF)
|
||||||
|
chmod 644 $(GEN)/*
|
||||||
|
chmod 644 $(ENTRY)/*
|
||||||
|
|
||||||
|
OWNER = -ogdr -ga2ftp
|
||||||
|
MODE_F = -m444
|
||||||
|
MODE_X = -m775
|
||||||
|
|
||||||
|
$(RELDIR)/$(RELEASE_README): $(README_OUT)
|
||||||
|
install $(OWNER) $(MODE_F) $(README_OUT) $@
|
||||||
|
|
||||||
|
# We redirect nulib stdout to /dev/null because for some reason
|
||||||
|
# it's printing out a "-^H".
|
||||||
|
$(RELDIR)/$(RELEASE_SRC): $(DB_SRC)
|
||||||
|
@echo "installing $@"; \
|
||||||
|
cp $(DB_SRC) $(TDIR); \
|
||||||
|
udl -g $(TDIR)/$(DB_SRC); \
|
||||||
|
rm -f $@; \
|
||||||
|
cd $(TDIR); \
|
||||||
|
rm -f $(RELEASE_SRC); \
|
||||||
|
nulib cf $(RELEASE_SRC) $(DB_SRC) > /dev/null; \
|
||||||
|
install $(OWNER) $(MODE_F) $(RELEASE_SRC) $@
|
||||||
|
|
||||||
|
# We redirect nulib stdout to /dev/null because for some reason
|
||||||
|
# it's printing out a "-^H".
|
||||||
|
$(RELDIR)/$(RELEASE_DB): $(DB_SRC)
|
||||||
|
@echo "installing $@"; \
|
||||||
|
/usr/local/sbin/descc $(DB_SRC); \
|
||||||
|
cp /usr/lib/describe.db $(TDIR); \
|
||||||
|
cd $(TDIR); \
|
||||||
|
NULIBOPT=type=BIN; export NULIBOPT; \
|
||||||
|
rm -f $(RELEASE_DB); \
|
||||||
|
nulib cf $(RELEASE_DB) describe.db > /dev/null; \
|
||||||
|
install $(OWNER) $(MODE_F) $(RELEASE_DB) $@
|
||||||
|
|
||||||
|
web: setup
|
||||||
|
@tmpfile1=/tmp/desc.build.$$$$a; \
|
||||||
|
tmpfile2=/tmp/desc.build.$$$$b; \
|
||||||
|
trap "rm -f $$tmpfile1 $$tmpfile2" 0 1 2 15; \
|
||||||
|
dbdate="`./getdate -describe < $(DB_SRC)`"; \
|
||||||
|
for f in $(HTML); do \
|
||||||
|
rm -f $$tmpfile1; \
|
||||||
|
cat $(HEAD) $$f $(TAIL) > $$tmpfile1; \
|
||||||
|
htmldate="`./getdate -printdate < $$tmpfile1`"; \
|
||||||
|
rm -f $$tmpfile2; \
|
||||||
|
sed \
|
||||||
|
-e 's/%%WARNING%%/$(WARNING)/;' \
|
||||||
|
-e 's/%%VERSION_SHORT%%/$(VERSION_SHORT)/;' \
|
||||||
|
-e 's/%%VERSION_LONG%%/$(VERSION_LONG)/;' \
|
||||||
|
-e "s/%%LAST_UPDATE%%/$$htmldate/;" \
|
||||||
|
-e "s/%%DATE%%/$$dbdate/;" \
|
||||||
|
< $$tmpfile1 > $$tmpfile2; \
|
||||||
|
cmp -s $(FINAL_DIR)/$$f $$tmpfile2; \
|
||||||
|
if [ $$? -ne 0 ]; then \
|
||||||
|
echo "creating $(FINAL_DIR)/$$f"; \
|
||||||
|
mv $$tmpfile2 $(FINAL_DIR)/$$f; \
|
||||||
|
chmod 644 $(FINAL_DIR)/$$f; \
|
||||||
|
fi; \
|
||||||
|
done; \
|
||||||
|
rm -f $$tmpfile1 $$tmpfile2
|
||||||
|
|
||||||
|
$(README_OUT): $(README_IN) $(DB_SRC)
|
||||||
|
@echo "making $@"; \
|
||||||
|
dbdate="`./getdate -describe < $(DB_SRC)`"; \
|
||||||
|
sed -e "s,%%DATE%%,$$dbdate,;" < $(README_IN) > $@
|
||||||
|
|
||||||
|
setup:
|
||||||
|
@for d in $(GEN) $(ENTRY) $(FINAL_DIR) $(ENTRY) $(RELDIR) $(TDIR); do \
|
||||||
|
[ -d $$d ] || install -d -m755 $$d; \
|
||||||
|
done
|
||||||
|
|
||||||
|
clobber:; rm -rf *~ $(XREF) $(TDIR) $(README_OUT)
|
||||||
|
nuke:; rm -rf $(FINAL_DIR)/*
|
13
describe/README.src.in
Normal file
13
describe/README.src.in
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
The describe(8) utility shows current information on various programs.
|
||||||
|
Its information is contained in the describe database. The files
|
||||||
|
desc.src.shk and desc.db.shk each contain a copy of the most recently
|
||||||
|
released database.
|
||||||
|
|
||||||
|
These files were last modified %%DATE%%.
|
||||||
|
|
||||||
|
The file desc.src.shk contains the database "source" file, which is ASCII
|
||||||
|
and human-readable. The file desc.db.shk contains the precompiled version
|
||||||
|
of the database.
|
||||||
|
|
||||||
|
NOTE: You can only use this version of the precompiled database with
|
||||||
|
describe version 1.0.5 and later.
|
43
describe/dbase.html
Normal file
43
describe/dbase.html
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
<!-- $Id: dbase.html,v 1.2 1998/01/23 22:37:04 gdr-ftp Exp $ -->
|
||||||
|
|
||||||
|
<A HREF="gno/describe/index.html"><IMG src="icons/back.gif"
|
||||||
|
alt="Back to the Describe Database Page"
|
||||||
|
align="right" width="24" height="24" border="0"></A>
|
||||||
|
<BR CLEAR=RIGHT>
|
||||||
|
|
||||||
|
<H1 ALIGN=CENTER>Obtaining a Current Database</H1>
|
||||||
|
|
||||||
|
The describe database last updated on <b>%%DATE%%</b>.
|
||||||
|
<p>
|
||||||
|
|
||||||
|
The describe database consists of two files. The first is a specially
|
||||||
|
formatted ASCII file, known as the database "source" file.
|
||||||
|
It can be manually edited with any text editor, or updated with
|
||||||
|
<A HREF="gno/man/man8/descu.8.html">descu</A>(8).
|
||||||
|
It doesn't really matter where on your system this file resides, but the path
|
||||||
|
<b>/usr/lib/describe.src</b>
|
||||||
|
is recommended.
|
||||||
|
<p>
|
||||||
|
|
||||||
|
The second file is the compiled database file. This file is compiled
|
||||||
|
from the source file by the
|
||||||
|
<A HREF="gno/man/man8/descc.8.html">descc</A>(8)
|
||||||
|
program. It is a binary file and not human-readable. Unless the
|
||||||
|
<b>DESCDB</b>
|
||||||
|
environment variable has been set, this file <em> must </em> have the
|
||||||
|
pathname
|
||||||
|
<b>/usr/lib/describe.db</b>.
|
||||||
|
<p>
|
||||||
|
|
||||||
|
Both files are available here:
|
||||||
|
<ul>
|
||||||
|
<li>database source file:
|
||||||
|
<A HREF="ftp://ftp.gno.org/pub/apple2/gs.specific/gno/doc/desc.src.shk">
|
||||||
|
ftp://ftp.gno.org/pub/apple2/gs.specific/gno/doc/desc.src.shk</A>
|
||||||
|
<li>precompiled database:
|
||||||
|
<A HREF="ftp://ftp.gno.org/pub/apple2/gs.specific/gno/doc/desc.db.shk">
|
||||||
|
ftp://ftp.gno.org/pub/apple2/gs.specific/gno/doc/desc.db.shk</A>
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
Back to the <A HREF="gno/describe/index.html">Describe Database Page</A>.
|
||||||
|
<p>
|
3325
describe/describe.src
Normal file
3325
describe/describe.src
Normal file
File diff suppressed because it is too large
Load Diff
67
describe/getdate
Executable file
67
describe/getdate
Executable file
@ -0,0 +1,67 @@
|
|||||||
|
#! /usr/bin/perl -s
|
||||||
|
#
|
||||||
|
# getdate -date
|
||||||
|
# Extract the date from the RCS Id string in a file on stdin.
|
||||||
|
#
|
||||||
|
# getdate -version
|
||||||
|
# Extract the RCS version from the RCS Id string in a file on stdin.
|
||||||
|
#
|
||||||
|
# getdate -describe
|
||||||
|
# Extract the "last modified" date from a describe(1) database
|
||||||
|
# source file.
|
||||||
|
#
|
||||||
|
# $Id: getdate,v 1.1 1998/01/14 05:10:10 gdr Exp $
|
||||||
|
#
|
||||||
|
|
||||||
|
push(@month,
|
||||||
|
"Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep",
|
||||||
|
"Oct", "Nov", "Dec" );
|
||||||
|
|
||||||
|
# for ($i=0; $i<12; $i++) {
|
||||||
|
# printf("month %d is %s\n", $i, $month[$i]);
|
||||||
|
# }
|
||||||
|
|
||||||
|
if (defined($date)) {
|
||||||
|
$printdate = 1;
|
||||||
|
}
|
||||||
|
if (defined($version)) {
|
||||||
|
$printversion = 1;
|
||||||
|
}
|
||||||
|
if (defined($describe)) {
|
||||||
|
while(<>) {
|
||||||
|
(/^\#\s+Last\s+revision:\s+(.*)/) && printf("%s\n", $1) && last;
|
||||||
|
}
|
||||||
|
exit(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
while(<>) {
|
||||||
|
if (/\$Id([^\$]*)\$/) {
|
||||||
|
$_ = $1;
|
||||||
|
if (/^:\s+(\S+)\s+(\S+)\s+(\S+)\s+(\S+)\s+/) {
|
||||||
|
$file=$1;
|
||||||
|
$version=$2;
|
||||||
|
$rawdate=$3;
|
||||||
|
$time=$4;
|
||||||
|
if ($rawdate =~ m,(\d+)/(\d+)/(\d+),) {
|
||||||
|
$year = $1;
|
||||||
|
$m = $2;
|
||||||
|
$day = $3;
|
||||||
|
$mon = @month[int($2) - 1];
|
||||||
|
$date = "$day $mon $year";
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$date = "(unspecified date)";
|
||||||
|
}
|
||||||
|
if ($printdate) {
|
||||||
|
printf("%s\n", $date);
|
||||||
|
} elsif ($printversion) {
|
||||||
|
printf("%s\n", $version);
|
||||||
|
} else {
|
||||||
|
printf("getdate: bad invocation\n");
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
exit(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
exit(1);
|
14
describe/head.html
Normal file
14
describe/head.html
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
||||||
|
<HTML>
|
||||||
|
<!-- %%WARNING%% -->
|
||||||
|
|
||||||
|
<HEAD>
|
||||||
|
<TITLE>Apple IIgs Describe Database</TITLE>
|
||||||
|
<META name="description" content="List of Utilities for GNO/ME">
|
||||||
|
<META name="keywords" content="Apple IIgs ORCA/Shell James Brookes">
|
||||||
|
<BASE HREF="http://www.gno.org/">
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY background="icons/bluebg.jpg" text="#000000" bgcolor="#00C0FF"
|
||||||
|
link="#0000FF" alink="#001177" vlink="#001177">
|
||||||
|
|
53
describe/index.html
Normal file
53
describe/index.html
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
<!-- $Id: index.html,v 1.1 1998/01/14 05:10:12 gdr Exp $ -->
|
||||||
|
|
||||||
|
<A HREF="gno"><IMG src="icons/back.gif" alt="Back to the GNO Home Page"
|
||||||
|
align="right" width="24" height="24" border="0"></A>
|
||||||
|
<BR CLEAR=RIGHT>
|
||||||
|
|
||||||
|
<H1 ALIGN=CENTER>Home of James' describe database</H1>
|
||||||
|
|
||||||
|
The current version of describe is <b>%%VERSION_LONG%%</b>.
|
||||||
|
<br>
|
||||||
|
The describe database was last updated <b>%%DATE%%</b>.
|
||||||
|
<p>
|
||||||
|
<hr>
|
||||||
|
<p>
|
||||||
|
|
||||||
|
A while ago, James Brookes wrote a utility called "describe".
|
||||||
|
It has a simple purpose: To maintain a database of utilities for
|
||||||
|
<A HREF="gno">GNO/ME</A>
|
||||||
|
and
|
||||||
|
<A HREF="http://hypermall.com/byteworks">ORCA/Shell</A>
|
||||||
|
and offer a way to get a concise description of a utility quickly and easily.
|
||||||
|
<P>
|
||||||
|
|
||||||
|
Since describe is nothing without an up-to-date database,
|
||||||
|
<A HREF="http://www.arrowweb.com/sbehrens">Sönke Behrens</A> created
|
||||||
|
the first online describe database, which provided a central repository
|
||||||
|
for the data, and an easy mechanism for updating that data.
|
||||||
|
<p>
|
||||||
|
|
||||||
|
Leslie Barstow also maintains an online version of the describe database.
|
||||||
|
(He gets his data from Sönke.)
|
||||||
|
His version is indexed by alphabet and category, and is searchable.
|
||||||
|
You can find his version at
|
||||||
|
<A href="http://www.servtech.com/public/phoenix/computers/gno">
|
||||||
|
http://www.servtech.com/public/phoenix/computers/gno</A>.
|
||||||
|
<p>
|
||||||
|
|
||||||
|
This page is based heavily on Sönke's and Leslie's work.
|
||||||
|
From this page you can:
|
||||||
|
<ul>
|
||||||
|
<li>download the current version of the
|
||||||
|
<A HREF="gno/describe/program.html">describe program</A>;
|
||||||
|
<li>download the current version of the
|
||||||
|
<A HREF="gno/describe/dbase.html">database</A>;
|
||||||
|
<li><A HREF="gno/describe/submit.html">make submissions</A>
|
||||||
|
for new entries and updates; and
|
||||||
|
<li><A HREF="gno/describe/view.html">view current entries</A>;
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
|
||||||
|
Back to the <A HREF="gno">GNO Web Page</A>.
|
||||||
|
<p>
|
||||||
|
|
255
describe/mkgen
Executable file
255
describe/mkgen
Executable file
@ -0,0 +1,255 @@
|
|||||||
|
#! /usr/bin/perl
|
||||||
|
|
||||||
|
# This script makes the generated files used by the describe(1) web
|
||||||
|
# page. It's not pretty, but it works.
|
||||||
|
#
|
||||||
|
# Devin Reade, January 1998.
|
||||||
|
#
|
||||||
|
# $Id: mkgen,v 1.5 1999/07/03 16:55:42 gdr-ftp Exp $
|
||||||
|
#
|
||||||
|
|
||||||
|
$gnohome_internal = "/home/gno/public_html";
|
||||||
|
$gnohome_external = "http://www.gno.org/~gno";
|
||||||
|
|
||||||
|
$gendir = "describe/gen"; # relative to $gnohome_*
|
||||||
|
$entrydir = "describe/entry"; # relative to $gnohome_*
|
||||||
|
$basedir = $gnohome_internal . '/' . $gendir;
|
||||||
|
|
||||||
|
$headinfo =
|
||||||
|
'<!-- This page is auto-generated -->' . "\n" .
|
||||||
|
'<META name="description" content="List of Utilities for GNO/ME">' . "\n".
|
||||||
|
'<META name="keywords" content="Apple IIgs ORCA/Shell James Brookes">'
|
||||||
|
. "\n".
|
||||||
|
'<BASE HREF="http://www.gno.org/">'. "\n";
|
||||||
|
$bodyinfo =
|
||||||
|
'<BODY background="icons/bluebg.jpg" text="#000000" bgcolor="#00C0FF"'.
|
||||||
|
' link="#0000FF" alink="#001177" vlink="#001177">' . "\n";
|
||||||
|
$tailinfo =
|
||||||
|
'<hr>' . "\n" .
|
||||||
|
'Comments on this page should be forwarded to Devin Reade at' . "\n" .
|
||||||
|
'<A HREF="mailto:gdr@trenco.gno.org">gdr@trenco.gno.org</A>' . "\n" .
|
||||||
|
'<p>' . "\n" .
|
||||||
|
'<img alt="Apple II Viewable Page" height=31 width=88 border=0' . "\n" .
|
||||||
|
'src="icons/a2viewable.gif">' . "\n" .
|
||||||
|
'<br>' . "\n" .
|
||||||
|
'</body>' . "\n" .
|
||||||
|
'</html>';
|
||||||
|
|
||||||
|
$categoryMap{""} = "";
|
||||||
|
$categoryMap{"gno/archive"} = "archive";
|
||||||
|
$categoryMap{"gno/comm"} = "comm";
|
||||||
|
$categoryMap{"gno/crypto"} = "crypto";
|
||||||
|
$categoryMap{"gno/daemons"} = "daemon";
|
||||||
|
$categoryMap{"gno/doc.utils"} = "docutil";
|
||||||
|
$categoryMap{"gno/editors"} = "edit";
|
||||||
|
$categoryMap{"gno/file.convert"} = "file.convert";
|
||||||
|
$categoryMap{"gno/file.manip"} = "file.manip";
|
||||||
|
$categoryMap{"gno/games"} = "games";
|
||||||
|
$categoryMap{"gno/graphics"} = "graphics";
|
||||||
|
$categoryMap{"gno/gui"} = "gui";
|
||||||
|
$categoryMap{"gno/languages"} = "lang";
|
||||||
|
$categoryMap{"gno/libraries"} = "lib";
|
||||||
|
$categoryMap{"gno/mail"} = "mail";
|
||||||
|
$categoryMap{"gno/network"} = "network";
|
||||||
|
$categoryMap{"gno/news"} = "news";
|
||||||
|
$categoryMap{"gno/patches"} = "patch";
|
||||||
|
$categoryMap{"gno/productivity"} = "productivity";
|
||||||
|
$categoryMap{"gno/programming"} = "prog";
|
||||||
|
$categoryMap{"gno/scripting"} = "script";
|
||||||
|
$categoryMap{"gno/shells"} = "shells";
|
||||||
|
$categoryMap{"gno/sounds"} = "sound";
|
||||||
|
$categoryMap{"gno/sys"} = "sys";
|
||||||
|
$categoryMap{"gno/sysadmin"} = "sysadmin";
|
||||||
|
$categoryMap{"gno/text.utils"} = "text";
|
||||||
|
$categoryMap{"orca/scripting"} = "script";
|
||||||
|
$categoryMap{"unsorted"} = "unsorted";
|
||||||
|
|
||||||
|
$categoryNames{"archive"} = "Archiving Utilities";
|
||||||
|
$categoryNames{"comm"} = "Communications Utilities";
|
||||||
|
$categoryNames{"crypto"} = "Cryptography";
|
||||||
|
$categoryNames{"daemon"} = "Daemons";
|
||||||
|
$categoryNames{"docutil"} = "Documentation Utilities";
|
||||||
|
$categoryNames{"edit"} = "Editors, Word Processors, and Document " .
|
||||||
|
"Viewers";
|
||||||
|
$categoryNames{"file.convert"} = "File Conversion Utilities";
|
||||||
|
$categoryNames{"file.manip"} = "File Manipulation Utilities";
|
||||||
|
$categoryNames{"games"} = "Games";
|
||||||
|
$categoryNames{"graphics"} = "Graphics Programs";
|
||||||
|
$categoryNames{"gui"} = "GUI";
|
||||||
|
$categoryNames{"lang"} = "Programming Languages";
|
||||||
|
$categoryNames{"lib"} = "Libraries";
|
||||||
|
$categoryNames{"mail"} = "Mail Readers";
|
||||||
|
$categoryNames{"network"} = "Networking Utilities";
|
||||||
|
$categoryNames{"news"} = "News Readers";
|
||||||
|
$categoryNames{"patch"} = "Patch Programs";
|
||||||
|
$categoryNames{"productivity"} = "Productivity";
|
||||||
|
$categoryNames{"prog"} = "Programming Utilities";
|
||||||
|
$categoryNames{"script"} = "Scripting Utilities";
|
||||||
|
$categoryNames{"shells"} = "Shells";
|
||||||
|
$categoryNames{"sound"} = "Sound and Music Utilities";
|
||||||
|
$categoryNames{"sys"} = "System Utilities";
|
||||||
|
$categoryNames{"sysadmin"} = "System Administration Utilities";
|
||||||
|
$categoryNames{"text"} = "Text Manipulation Utilities";
|
||||||
|
$categoryNames{"unsorted"} = "Utilities Not Yet Sorted";
|
||||||
|
|
||||||
|
while (<>) {
|
||||||
|
($name, $classes) = split;
|
||||||
|
$namelist{$name} = $classes;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keylist = keys(%namelist);
|
||||||
|
@sorted = sort(@keylist);
|
||||||
|
$currentLetter = '';
|
||||||
|
|
||||||
|
foreach $f (@sorted) {
|
||||||
|
|
||||||
|
# create the describe entry
|
||||||
|
open(pp, "/usr/local/bin/describe $f|")
|
||||||
|
|| die ("couldn't open pipe to 'describe $f'");
|
||||||
|
$filename = "$gnohome_internal/$entrydir/$f.html";
|
||||||
|
open(fp2, "> $filename") || die("couldn't open $filename");
|
||||||
|
printf(fp2
|
||||||
|
"<html>\n" .
|
||||||
|
"<head>\n" .
|
||||||
|
"<title>Apple IIgs Describe Database -- %s</title>\n" .
|
||||||
|
"</head>%s" .
|
||||||
|
"<body bgcolor=#ffffff>\n" .
|
||||||
|
"<h1>Describe Entry for %s</h1>\n" .
|
||||||
|
"<pre>\n",
|
||||||
|
$f, $headinfo, $f);
|
||||||
|
while($_ = <pp>) {
|
||||||
|
printf(fp2 "%s", $_);
|
||||||
|
}
|
||||||
|
printf(fp2 "</pre>\n%s\n", $tailinfo);
|
||||||
|
close(fp2);
|
||||||
|
close(pp);
|
||||||
|
|
||||||
|
# make the index-by-name page
|
||||||
|
$l = substr($f, 0, 1);
|
||||||
|
if ($l ne $currentLetter) {
|
||||||
|
($currentLetter eq '') ||
|
||||||
|
(printf(fp "</ul>%s\n", $tailinfo) && close(fp));
|
||||||
|
$filename = $basedir . '/' . $l . '.html';
|
||||||
|
open(fp, "> $filename") || die("couldn't open $filename");
|
||||||
|
$currentLetter = $l;
|
||||||
|
$cap = $l;
|
||||||
|
$cap =~ tr/a-z/A-Z/;
|
||||||
|
printf(fp
|
||||||
|
"<html>\n" .
|
||||||
|
"<head>\n" .
|
||||||
|
"<title>Apple IIgs Describe Database -- Index by %s</title>\n".
|
||||||
|
"%s\n" .
|
||||||
|
"</head>\n" .
|
||||||
|
"%s\n" .
|
||||||
|
"<h1>Describe Entries by Name: %s</h1>\n" .
|
||||||
|
"<ul>\n",
|
||||||
|
$cap, $headinfo, $bodyinfo, $cap);
|
||||||
|
}
|
||||||
|
printf(fp "<li><A HREF=\"%s/%s/%s.html\">%s</A>\n",
|
||||||
|
$gnohome_external, $entrydir, $f, $f);
|
||||||
|
|
||||||
|
# save the category for later
|
||||||
|
@catlist = split(/:/, $namelist{$f});
|
||||||
|
foreach $catentry (@catlist) {
|
||||||
|
if (!defined($categoryMap{$catentry})) {
|
||||||
|
printf(stderr "WARNING: Unregistered category \"%s\" for %s: " .
|
||||||
|
"skipped\n",
|
||||||
|
$catentry, $f);
|
||||||
|
} elsif ($categoryMap{$catentry} ne '') {
|
||||||
|
$categories{$categoryMap{$catentry}} .= $f . ':';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
($currentLetter eq '') ||
|
||||||
|
(printf(fp "</ul>\n%s\n", $tailinfo) && close(fp));
|
||||||
|
|
||||||
|
$letters = "a b c d e f g h i j k l m n o p q r s t u v w x y z";
|
||||||
|
@letter = split(/\s+/, $letters);
|
||||||
|
|
||||||
|
foreach $l (@letter) {
|
||||||
|
$cap = $l;
|
||||||
|
$cap =~ tr/a-z/A-Z/;
|
||||||
|
$filename = "$basedir/$l.html";
|
||||||
|
if (! -f $filename) {
|
||||||
|
open(fp, "> $filename") || die("couldn't open $filename");
|
||||||
|
printf(fp
|
||||||
|
"<html>\n" .
|
||||||
|
"<!-- This page is auto-generated -->\n" .
|
||||||
|
"<head>\n" .
|
||||||
|
"<title>Apple IIgs Describe Database -- Index by " . $cap .
|
||||||
|
"</title>\n" .
|
||||||
|
"</head>\n" .
|
||||||
|
"<body bgcolor=#ffffff>\n" .
|
||||||
|
"<H1>Empty Page</H1>\n" .
|
||||||
|
"There are currently no utilities registered that begin ".
|
||||||
|
"with " . $cap . ".<p>%s\n",
|
||||||
|
$tailinfo);
|
||||||
|
close(fp);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#
|
||||||
|
# Now do them by category
|
||||||
|
#
|
||||||
|
|
||||||
|
@catkeys = keys(%categories);
|
||||||
|
foreach $k (@catkeys) {
|
||||||
|
$file = $basedir . '/' . $k . '.html';
|
||||||
|
open(fp, "> $basedir/$k.html") || die("could not open $basedir/$k.html");
|
||||||
|
printf(fp
|
||||||
|
"<html>\n" .
|
||||||
|
"<head>\n" .
|
||||||
|
"<title>Apple IIgs Describe Database -- By Category</title>\n" .
|
||||||
|
"%s\n" .
|
||||||
|
"</head>\n" .
|
||||||
|
"%s\n",
|
||||||
|
$headinfo, $bodyinfo);
|
||||||
|
if (defined($categoryNames{$k})) {
|
||||||
|
printf(fp
|
||||||
|
"<h1>%s</h1><hr>\n",
|
||||||
|
$categoryNames{$k});
|
||||||
|
} else {
|
||||||
|
printf(stderr "WARNING: No category name for \"%s\"\n", $k);
|
||||||
|
}
|
||||||
|
printf(fp "<ul>\n");
|
||||||
|
@files = sort(split(/:/, $categories{$k}));
|
||||||
|
foreach $f (@files) {
|
||||||
|
printf(fp "<li><A HREF=\"%s/%s/%s.html\">%s</A>\n",
|
||||||
|
$gnohome_external, $entrydir, $f, $f);
|
||||||
|
}
|
||||||
|
printf(fp "</ul>\n%s\n", $tailinfo);
|
||||||
|
close(fp);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
# make category pages for which there is no entry
|
||||||
|
|
||||||
|
@catkeys = values(%categoryMap);
|
||||||
|
foreach $k (@catkeys) {
|
||||||
|
$filename = $basedir . "/" . $k . '.html';
|
||||||
|
if (! -f $filename) {
|
||||||
|
open(fp, ">$filename") || die("couldn't open $filename: $!");
|
||||||
|
printf(fp
|
||||||
|
"<html>\n" .
|
||||||
|
"<!-- This page is auto-generated -->\n" .
|
||||||
|
"<head>\n" .
|
||||||
|
"<title>Apple IIgs Describe Database -- By Category</title>\n" .
|
||||||
|
"%s\n" .
|
||||||
|
"</head>\n" .
|
||||||
|
"%s\n",
|
||||||
|
$headinfo, $bodyinfo);
|
||||||
|
if (defined($categoryNames{$k})) {
|
||||||
|
printf(fp
|
||||||
|
"<h1>%s</h1><hr>\n",
|
||||||
|
$categoryNames{$k});
|
||||||
|
} else {
|
||||||
|
printf(stderr "WARNING: No category name for \"%s\"\n", $k);
|
||||||
|
}
|
||||||
|
printf(fp
|
||||||
|
"There are currently no <b>describe</b>(1) entries in this ".
|
||||||
|
"category.\n" .
|
||||||
|
"%s\n", $tailinfo);
|
||||||
|
close(fp);
|
||||||
|
}
|
||||||
|
}
|
177
describe/mkindex
Executable file
177
describe/mkindex
Executable file
@ -0,0 +1,177 @@
|
|||||||
|
#! /usr/bin/perl
|
||||||
|
|
||||||
|
# This script makes the index listing used sort describe entries by
|
||||||
|
# category. It gets most of its information from where utilities
|
||||||
|
# reside in the GNO ftp hierarchy.
|
||||||
|
#
|
||||||
|
# Devin Reade, January 1998
|
||||||
|
#
|
||||||
|
# $Id: mkindex,v 1.4 1999/07/03 16:55:42 gdr-ftp Exp $
|
||||||
|
#
|
||||||
|
|
||||||
|
$dirroot = "/ftp/pub/apple2/gs.specific";
|
||||||
|
$dirlist = "gno orca";
|
||||||
|
$describe = '/usr/local/bin/describe';
|
||||||
|
|
||||||
|
# This is a list of describe entries which we want to force into a
|
||||||
|
# given category. This should only be used when a utility doesn't have
|
||||||
|
# an entry of its own in the .index.src files as a result of being
|
||||||
|
# archived with another utility. For example, we fudge "descc" and
|
||||||
|
# "descu" because they are archived in with "describe".
|
||||||
|
|
||||||
|
$fudgelist{"cclean"} = "gno/programming"; # with occ
|
||||||
|
$fudgelist{"ccprep"} = "gno/programming"; # with occ
|
||||||
|
$fudgelist{"cjpeg"} = "gno/graphics"; # part of jpeg tools
|
||||||
|
$fudgelist{"djpeg"} = "gno/graphics"; # part of jpeg tools
|
||||||
|
$fudgelist{"jpegtran"} = "gno/graphics"; # part of jpeg tools
|
||||||
|
$fudgelist{"rdjpgcom"} = "gno/graphics"; # part of jpeg tools
|
||||||
|
$fudgelist{"wrjpgcom"} = "gno/graphics"; # part of jpeg tools
|
||||||
|
$fudgelist{"descc"} = "gno/doc.utils"; # with describe
|
||||||
|
$fudgelist{"descu"} = "gno/doc.utils"; # with describe
|
||||||
|
$fudgelist{"fortune"} = "gno/games"; # resolve fortuna-[abc]
|
||||||
|
$fudgelist{"newuserv"} = "gno/sysadmin"; # with newuser
|
||||||
|
# $fudgelist{""} = "";
|
||||||
|
|
||||||
|
# Actually, another possibility is that the file is not up for ftp in the
|
||||||
|
# pre-packaged directories, but is rather part of the GNO base distribution.
|
||||||
|
$fudgelist{"aroff"} = "gno/doc.utils";
|
||||||
|
$fudgelist{"asml"} = "gno/programming";
|
||||||
|
$fudgelist{"assemble"} = "gno/programming";
|
||||||
|
$fudgelist{"aw30"} = "gno/doc.utils";
|
||||||
|
$fudgelist{"binprint"} = "gno/editors";
|
||||||
|
$fudgelist{"blist"} = "gno/editors";
|
||||||
|
$fudgelist{"cal"} = "gno/games";
|
||||||
|
$fudgelist{"cat"} = "gno/editors";
|
||||||
|
$fudgelist{"center"} = "gno/text.utils";
|
||||||
|
$fudgelist{"chtyp"} = "gno/file.manip";
|
||||||
|
$fudgelist{"cksum"} = "gno/archive";
|
||||||
|
$fudgelist{"cmp"} = "gno/text.utils";
|
||||||
|
$fudgelist{"cmpl"} = "gno/programming";
|
||||||
|
$fudgelist{"colcrt"} = "gno/doc.utils";
|
||||||
|
$fudgelist{"compile"} = "gno/programming";
|
||||||
|
$fudgelist{"ctags"} = "gno/programming";
|
||||||
|
$fudgelist{"cu"} = "gno/network";
|
||||||
|
$fudgelist{"df"} = "gno/sys";
|
||||||
|
$fudgelist{"dial"} = "gno/network";
|
||||||
|
$fudgelist{"duplex"} = "gno/network";
|
||||||
|
$fudgelist{"eps"} = "gno/sys";
|
||||||
|
$fudgelist{"expr"} = "gno/scripting";
|
||||||
|
$fudgelist{"false"} = "gno/scripting";
|
||||||
|
$fudgelist{"fmt"} = "gno/editors";
|
||||||
|
$fudgelist{"ftp"} = "gno/network";
|
||||||
|
$fudgelist{"gsh"} = "gno/shells";
|
||||||
|
$fudgelist{"head"} = "gno/editors";
|
||||||
|
$fudgelist{"help"} = "gno/doc.utils";
|
||||||
|
$fudgelist{"inetd"} = "gno/network";
|
||||||
|
$fudgelist{"init"} = "gno/daemons";
|
||||||
|
$fudgelist{"kill"} = "gno/sys";
|
||||||
|
$fudgelist{"link"} = "gno/programming";
|
||||||
|
$fudgelist{"list"} = "gno/doc.utils";
|
||||||
|
$fudgelist{"logger"} = "gno/scripting";
|
||||||
|
$fudgelist{"login"} = "gno/daemons";
|
||||||
|
$fudgelist{"lseg"} = "gno/programming";
|
||||||
|
$fudgelist{"mkfs"} = "gno/sysadmin";
|
||||||
|
$fudgelist{"mkso"} = "gno/sysadmin";
|
||||||
|
$fudgelist{"phone"} = "gno/mail";
|
||||||
|
$fudgelist{"pwd"} = "gno/sys";
|
||||||
|
$fudgelist{"rcp"} = "gno/network";
|
||||||
|
$fudgelist{"remote"} = "gno/network";
|
||||||
|
$fudgelist{"removerez"} = "gno/file.convert";
|
||||||
|
$fudgelist{"rlogin"} = "gno/network";
|
||||||
|
$fudgelist{"rsh"} = "gno/network";
|
||||||
|
$fudgelist{"rtf2text"} = "gno/file.convert";
|
||||||
|
$fudgelist{"sed"} = "gno/editors";
|
||||||
|
$fudgelist{"sendmail"} = "gno/mail";
|
||||||
|
$fudgelist{"sleep"} = "gno/scripting";
|
||||||
|
$fudgelist{"su"} = "gno/sysadmin";
|
||||||
|
$fudgelist{"syslogd"} = "gno/daemons";
|
||||||
|
$fudgelist{"sz"} = "gno/comm";
|
||||||
|
# $fudgelist{"tr"} = "gno/text.utils";
|
||||||
|
# $fudgelist{"trek"} = "gno/games";
|
||||||
|
$fudgelist{"true"} = "gno/scripting";
|
||||||
|
$fudgelist{"uniq"} = "gno/text.utils";
|
||||||
|
$fudgelist{"uptimed"} = "gno/daemons";
|
||||||
|
$fudgelist{"wc"} = "gno/text.utils";
|
||||||
|
$fudgelist{"who"} = "gno/sys";
|
||||||
|
$fudgelist{"whois"} = "gno/sys";
|
||||||
|
$fudgelist{"yes"} = "gno/scripting";
|
||||||
|
|
||||||
|
#
|
||||||
|
# Get the list of .index.src files. We will look in here for references
|
||||||
|
# to the describe database.
|
||||||
|
#
|
||||||
|
open(fp, "(cd $dirroot; find $dirlist -name .index.src -print)|") ||
|
||||||
|
die("couldn't get file list");
|
||||||
|
@indexfiles = <fp>;
|
||||||
|
close(fp);
|
||||||
|
|
||||||
|
# extract all the program names from the db source file.
|
||||||
|
while(<>) {
|
||||||
|
chop;
|
||||||
|
if (/^Name:\s+(.*)/) {
|
||||||
|
$name = $1;
|
||||||
|
$name =~ s/\s+$//;
|
||||||
|
if ($name =~ /\s+/) {
|
||||||
|
printf(stderr "%s:%d: Multi-word program name \"%s\". Skipped.\n",
|
||||||
|
$ARGV, $., $name);
|
||||||
|
} else {
|
||||||
|
$name =~ tr/A-Z/a-z/;
|
||||||
|
$namelist{$name} = ':';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
foreach $f (@indexfiles) {
|
||||||
|
chop($f);
|
||||||
|
if (open(fp, "$dirroot/$f")) {
|
||||||
|
$f2 = $f;
|
||||||
|
$f2 =~ s,/.index.src$,,;
|
||||||
|
while ($_ = <fp>) {
|
||||||
|
if (/%%describe%%([^%]+)%%/) {
|
||||||
|
$ref = $1;
|
||||||
|
$ref =~ tr/A-Z/a-z/;
|
||||||
|
if (defined($namelist{$ref})) {
|
||||||
|
($namelist{$ref} .= "$f2:")
|
||||||
|
unless ($namelist{$ref} =~ /:$f2:/);
|
||||||
|
} else {
|
||||||
|
printf(stderr
|
||||||
|
"%s/%s:%d: Warning: Reference to program (\"%s\") ".
|
||||||
|
"not in database. Entry skipped.\n",
|
||||||
|
$dirroot, $f, $., $ref);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
printf("couldn't open %s/%s: file skipped", $dirroot, $f);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# print out the results.
|
||||||
|
@keylist = keys(%namelist);
|
||||||
|
foreach $k (@keylist) {
|
||||||
|
$s = $namelist{$k};
|
||||||
|
if ($s eq ':') {
|
||||||
|
if (defined($fudgelist{$k})) {
|
||||||
|
$s = ':' . $fudgelist{$k} . ':';
|
||||||
|
} else {
|
||||||
|
$s = ':unsorted:';
|
||||||
|
$result = system("$describe $k > /dev/null") / 256;
|
||||||
|
if ($result == 0) {
|
||||||
|
printf(stderr
|
||||||
|
"WARNING: '$k' is showing up as 'unsorted', but has ".
|
||||||
|
"a describe(1) entry.\n\tThis probably means that the ".
|
||||||
|
".index.src file is not using an\n\texisting".
|
||||||
|
"describe entry.\n", $k);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} elsif (defined($fudgelist{$k})) {
|
||||||
|
printf(stderr
|
||||||
|
"WARNING: %s should no longer be in the fudge list\n", $k);
|
||||||
|
}
|
||||||
|
printf("%s\t%s\n", $k, $s);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
32
describe/program.html
Normal file
32
describe/program.html
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
<!-- $Id: program.html,v 1.2 1998/01/23 22:38:16 gdr-ftp Exp $ -->
|
||||||
|
|
||||||
|
<A HREF="gno/describe/index.html"><IMG src="icons/back.gif"
|
||||||
|
alt="Back to the Describe Database Page"
|
||||||
|
align="right" width="24" height="24" border="0"></A>
|
||||||
|
<BR CLEAR=RIGHT>
|
||||||
|
|
||||||
|
<H1 ALIGN=CENTER>Obtaining the Describe Program</H1>
|
||||||
|
|
||||||
|
The current version of describe is <b>%%VERSION_LONG%%</b>.
|
||||||
|
<p>
|
||||||
|
|
||||||
|
If you don't have describe yet, or if yours is out-of-date, you can
|
||||||
|
obtain a current copy from
|
||||||
|
<A HREF="ftp://ftp.gno.org/pub/apple2/gs.specific/gno/doc.utils/describe%%VERSION_SHORT%%.shk">
|
||||||
|
ftp://ftp.gno.org/pub/apple2/gs.specific/gno/doc.utils/describe%%VERSION_SHORT%%.shk</A>
|
||||||
|
|
||||||
|
This archive actually consists of three different programs:
|
||||||
|
<ul>
|
||||||
|
<li><A HREF="gno/man/man1/describe.1.html">describe</A>,
|
||||||
|
the program which prints out the requested describe entry;
|
||||||
|
<li><A HREF="gno/man/man8/descc.8.html">descc</A>,
|
||||||
|
which compiles the describe database input "source" file
|
||||||
|
into a binary database; and
|
||||||
|
<li><A HREF="gno/man/man8/descu.8.html">descu</A>,
|
||||||
|
which can be used for batch updates to the describe database
|
||||||
|
"source" file.
|
||||||
|
</ul>
|
||||||
|
<p>
|
||||||
|
|
||||||
|
Back to the <A HREF="gno/describe/index.html">Describe Database Page</A>.
|
||||||
|
<p>
|
101
describe/submit.html
Normal file
101
describe/submit.html
Normal file
@ -0,0 +1,101 @@
|
|||||||
|
<!-- $Id: submit.html,v 1.4 1998/02/18 00:24:09 gdr-ftp Exp $ -->
|
||||||
|
|
||||||
|
<A HREF="gno/describe/index.html"><IMG src="icons/back.gif"
|
||||||
|
alt="Back to the Describe Database Page"
|
||||||
|
align="right" width="24" height="24" border="0"></A>
|
||||||
|
<BR CLEAR=RIGHT>
|
||||||
|
|
||||||
|
<H1 ALIGN=CENTER>Making Submissions</H1>
|
||||||
|
|
||||||
|
If you have written a shell program for GNO or ORCA/Shell, please take a
|
||||||
|
minute and submit a describe entry. If you don't know what a describe
|
||||||
|
entry looks like, see the
|
||||||
|
<A HREF="gno/man/man8/descc.8.html">descc</A>(8)
|
||||||
|
manual page or look at the describe database source file. Alternately,
|
||||||
|
the file
|
||||||
|
<A HREF="pub/apple2/gs.specific/gno/doc/templates10.shk">
|
||||||
|
ftp://ftp.gno.org/pub/apple2/gs.specific/gno/doc/templates10.shk</A>
|
||||||
|
contains examples of describe entries plus other recommended methods of
|
||||||
|
documenting your programs.
|
||||||
|
<p>
|
||||||
|
|
||||||
|
There are two ways to submit a describe entry:
|
||||||
|
<ol>
|
||||||
|
<li>Use the <A HREF="gno/describe/submit.html#form">form</A>, below; or
|
||||||
|
<li>Email your entry or entries to
|
||||||
|
<A HREF="mailto:describe-submit@trenco.gno.org">
|
||||||
|
describe-submit@trenco.gno.org</A>.
|
||||||
|
<p>
|
||||||
|
Since the recipient of this address is a filter, is is mandatory
|
||||||
|
that your mail conform to the following conventions:
|
||||||
|
<ul>
|
||||||
|
<li>You must have the word "describe" somewhere in the
|
||||||
|
subject line. The case doesn't matter.
|
||||||
|
<li>The body of your message may only contain one or more describe
|
||||||
|
entries. All field names (such as "Name:" and
|
||||||
|
"Shell:") must be at the start of a line. The
|
||||||
|
last (description) field is ended either at the end of the
|
||||||
|
message, or when the next "Name:" field is found.
|
||||||
|
<li>If your email software appends your .signature file, ensure
|
||||||
|
that your signature is delimited from the body of the message
|
||||||
|
in the standard fashion: By two dash ('-') characters
|
||||||
|
followed by a newline. There newline may be preceeded by
|
||||||
|
whitespace.
|
||||||
|
<li>Do not use mailers which automaticly insert html formatting
|
||||||
|
information outside of the message headers.
|
||||||
|
</ul>
|
||||||
|
If your email does not conform to these conventions, then it will
|
||||||
|
be ignored by the filter.
|
||||||
|
</ol>
|
||||||
|
The master database may take a few days before it is updated, regardless
|
||||||
|
of which method you use. This is because a human reviews the entries
|
||||||
|
before they are added to the database. This check is done to avoid
|
||||||
|
abuse by malicious individuals.
|
||||||
|
<p>
|
||||||
|
|
||||||
|
We recommend that you actually include a describe entry in with your
|
||||||
|
program files. (Describe files usually use the suffix ".desc").
|
||||||
|
That way, it is easier to remember to update your describe entry when
|
||||||
|
you update your program, and you only have to fill out the information
|
||||||
|
once.
|
||||||
|
<p>
|
||||||
|
|
||||||
|
If you are updating a program that has been around for a while, you
|
||||||
|
might want to check for an existing describe entry before making a
|
||||||
|
submission. Many programs have entries in the database even though
|
||||||
|
none are included in the sources. (In most cases, the programs predate
|
||||||
|
the database.)
|
||||||
|
<p>
|
||||||
|
|
||||||
|
|
||||||
|
<A NAME="form">
|
||||||
|
<!-- http://www.arrowweb.com/cgi-bin/cgi-email/sbehrens/descform.txt -->
|
||||||
|
<form action="cgi-bin/describe.cgi"
|
||||||
|
method="post">
|
||||||
|
<table border="5">
|
||||||
|
<tr><td>Program name:<td><input type="Text" name="Name">
|
||||||
|
<tr><td>Program version:<td><input type="Text" name="Version">
|
||||||
|
<tr><td>Shell(s) supported:
|
||||||
|
<td><input type="CheckBox" name="Shell1" value="GNO/ME"> GNO/ME
|
||||||
|
<tr><td>
|
||||||
|
<td><input type="CheckBox" name="Shell2" value="ORCA/Shell"> ORCA/Shell
|
||||||
|
<tr><td>Author name:<td><input type="Text" name="Author">
|
||||||
|
<tr><td>Author email:<td><input type="Text" name="Contact">
|
||||||
|
<tr><td>Location (e.g. /usr/local/bin):<td><input type="Text" name="Location">
|
||||||
|
<tr><td>FTP site:<td><input type="Text" name="Ftp">
|
||||||
|
</TABLE>
|
||||||
|
<br>
|
||||||
|
Description of program:<br>
|
||||||
|
|
||||||
|
<textarea name="Description" cols="62" rows="6"></textarea>
|
||||||
|
<p>
|
||||||
|
|
||||||
|
Everything in order? Then send it off, and it will be online shortly.
|
||||||
|
<p>
|
||||||
|
|
||||||
|
<input type="Submit" name="Submit" value="Submit new describe entry">
|
||||||
|
<input type="Reset" name="Reset" value="Clear all fields">
|
||||||
|
</form>
|
||||||
|
|
||||||
|
Back to the <A HREF="gno/describe/index.html">Describe Database Page</A>.
|
||||||
|
<p>
|
14
describe/tail.html
Normal file
14
describe/tail.html
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
|
||||||
|
<hr>
|
||||||
|
This page was last updated <b>%%LAST_UPDATE%%</b>.
|
||||||
|
<br>
|
||||||
|
Comments on this page should be forwarded to Devin Reade at
|
||||||
|
<A HREF="mailto:gdr@gno.org">gdr@gno.org</A>
|
||||||
|
<p>
|
||||||
|
|
||||||
|
<img alt="Apple II Viewable Page" height=31 width=88 border=0
|
||||||
|
src="icons/a2viewable.gif">
|
||||||
|
<br>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
9
describe/template
Normal file
9
describe/template
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
Name:
|
||||||
|
Version:
|
||||||
|
Shell:
|
||||||
|
Author:
|
||||||
|
Contact: -
|
||||||
|
Where:
|
||||||
|
FTP: ftp.gno.org
|
||||||
|
|
||||||
|
|
102
describe/view.html
Normal file
102
describe/view.html
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
<!-- $Id: view.html,v 1.4 1999/07/03 16:55:42 gdr-ftp Exp $ -->
|
||||||
|
|
||||||
|
<A HREF="gno/describe/index.html"><IMG src="icons/back.gif"
|
||||||
|
alt="Back to the Describe Database Page"
|
||||||
|
align="right" width="24" height="24" border="0"></A>
|
||||||
|
<BR CLEAR=RIGHT>
|
||||||
|
|
||||||
|
<H1 ALIGN=CENTER>Viewing Current Entries</H1>
|
||||||
|
|
||||||
|
The entries are sorted in a few ways. Select whichever is appropriate.
|
||||||
|
<p>
|
||||||
|
|
||||||
|
<dt>By Name:
|
||||||
|
<dd>
|
||||||
|
<A HREF="gno/describe/gen/a.html">A</A>
|
||||||
|
<A HREF="gno/describe/gen/b.html">B</A>
|
||||||
|
<A HREF="gno/describe/gen/c.html">C</A>
|
||||||
|
<A HREF="gno/describe/gen/d.html">D</A>
|
||||||
|
<A HREF="gno/describe/gen/e.html">E</A>
|
||||||
|
<A HREF="gno/describe/gen/f.html">F</A>
|
||||||
|
<A HREF="gno/describe/gen/g.html">G</A>
|
||||||
|
<A HREF="gno/describe/gen/h.html">H</A>
|
||||||
|
<A HREF="gno/describe/gen/i.html">I</A>
|
||||||
|
<A HREF="gno/describe/gen/j.html">J</A>
|
||||||
|
<A HREF="gno/describe/gen/k.html">K</A>
|
||||||
|
<A HREF="gno/describe/gen/l.html">L</A>
|
||||||
|
<A HREF="gno/describe/gen/m.html">M</A>
|
||||||
|
<A HREF="gno/describe/gen/n.html">N</A>
|
||||||
|
<A HREF="gno/describe/gen/o.html">O</A>
|
||||||
|
<A HREF="gno/describe/gen/p.html">P</A>
|
||||||
|
<A HREF="gno/describe/gen/q.html">Q</A>
|
||||||
|
<A HREF="gno/describe/gen/r.html">R</A>
|
||||||
|
<A HREF="gno/describe/gen/s.html">S</A>
|
||||||
|
<A HREF="gno/describe/gen/t.html">T</A>
|
||||||
|
<A HREF="gno/describe/gen/u.html">U</A>
|
||||||
|
<A HREF="gno/describe/gen/v.html">V</A>
|
||||||
|
<A HREF="gno/describe/gen/w.html">W</A>
|
||||||
|
<A HREF="gno/describe/gen/x.html">X</A>
|
||||||
|
<A HREF="gno/describe/gen/y.html">Y</A>
|
||||||
|
<A HREF="gno/describe/gen/z.html">Z</A>
|
||||||
|
<p>
|
||||||
|
|
||||||
|
<dt>By Category:
|
||||||
|
<dd><ul>
|
||||||
|
<li><A HREF="gno/describe/gen/archive.html">Archiving Utilities</A>.
|
||||||
|
This includes utilities for compression, ascii encoding,
|
||||||
|
Binary-II encoding, and related functionality.
|
||||||
|
<li><A HREF="gno/describe/gen/comm.html">Communications Utilities</A>.
|
||||||
|
<li><A HREF="gno/describe/gen/crypto.html">Cryptography</A>.
|
||||||
|
<li><A HREF="gno/describe/gen/daemon.html">Daemons</A>.
|
||||||
|
These are programs which run periodically in the background, or
|
||||||
|
asynchronously as required.
|
||||||
|
<li><A HREF="gno/describe/gen/docutil.html">Documentation Utilities</A>.
|
||||||
|
These are utilities intended for viewing and maintaining
|
||||||
|
documentation, and for locating other utilties.
|
||||||
|
<li><A HREF="gno/describe/gen/edit.html">Editors, Word Processors, and
|
||||||
|
Document Viewers</A>.
|
||||||
|
<li><A HREF="gno/describe/gen/file.convert.html">File Conversion Utilities</A>.
|
||||||
|
This includes utilities for newline conversion, entabbing and
|
||||||
|
detabbing, stripping control characters, and file format translations.
|
||||||
|
<li><A HREF="gno/describe/gen/file.manip.html">File Manipulation Utilities</A>,
|
||||||
|
for copying, renaming, or deleting files, changing file attributes,
|
||||||
|
and similar operations.
|
||||||
|
<li><A HREF="gno/describe/gen/games.html">Games</A>.
|
||||||
|
This also includes programs that are not really games, but fall
|
||||||
|
under this category in a traditional UNIX environment such as text
|
||||||
|
banners, reminder programs, and sound and music players.
|
||||||
|
<li><A HREF="gno/describe/gen/graphics.html">Graphics Programs</A>.
|
||||||
|
<li><A HREF="gno/describe/gen/gui.html">GUI</A>.
|
||||||
|
Most GNO programs are intended for use with the text interface.
|
||||||
|
This list includes graphics programs such as window managers and
|
||||||
|
their modules.
|
||||||
|
<li><A HREF="gno/describe/gen/lang.html">Programming Languages</A>.
|
||||||
|
Assemblers, compilers, and interpreters.
|
||||||
|
<li><A HREF="gno/describe/gen/lib.html">Libraries</A>.
|
||||||
|
<li><A HREF="gno/describe/gen/mail.html">Mail Readers</A>.
|
||||||
|
<li><A HREF="gno/describe/gen/network.html">Networking Utilities</A>.
|
||||||
|
<li><A HREF="gno/describe/gen/news.html">News Readers</A>.
|
||||||
|
<li><A HREF="gno/describe/gen/patch.html">Patch Programs</A>.
|
||||||
|
<li><A HREF="gno/describe/gen/productivity.html">Personal Productivity</A>
|
||||||
|
(calculators, calendars, etc)
|
||||||
|
<li><A HREF="gno/describe/gen/prog.html">Programming Utilities</A>.
|
||||||
|
<li><A HREF="gno/describe/gen/script.html">Scripting Utilities</A>.
|
||||||
|
<li><A HREF="gno/describe/gen/shells.html">Shells</A>.
|
||||||
|
<li><A HREF="gno/describe/gen/sound.html">Sound and Music Utilities</A>.
|
||||||
|
These are programs for creating, editing, or playing music and
|
||||||
|
sound files.
|
||||||
|
<li><A HREF="gno/describe/gen/sys.html">System Utilities</A>.
|
||||||
|
These are system interface related utilities. They include
|
||||||
|
programs for logging in, directory manipulation, machine status,
|
||||||
|
and job control.
|
||||||
|
<li><A HREF="gno/describe/gen/sysadmin.html">System Administration
|
||||||
|
Utilities</A>.
|
||||||
|
<li><A HREF="gno/describe/gen/text.html">Text Utilities</A>.
|
||||||
|
This includes search and selection utilities. They are often used
|
||||||
|
in shell scripts.
|
||||||
|
<li><A HREF="gno/describe/gen/unsorted.html">Unsorted</A>.
|
||||||
|
These are utilities which have not yet been classified.
|
||||||
|
</ul>
|
||||||
|
|
||||||
|
Back to the <A HREF="gno/describe/index.html">Describe Database Page</A>.
|
||||||
|
<p>
|
Loading…
x
Reference in New Issue
Block a user