From 62586b524ba6017e8782d1fc1e2d8e2bc4ebc47e Mon Sep 17 00:00:00 2001 From: "David E. O'Brien" Date: Sun, 25 May 1997 03:42:42 +0000 Subject: agrep is a tool for fast text searching allowing errors. The three most significant features of agrep that are not supported by the grep family are 1) the ability to search for approximate patterns 2) agrep is record oriented rather than just line oriented 3) multiple patterns with AND (or OR) logic queries --- textproc/agrep/Makefile | 29 +++++++++++++++++++++++++++++ textproc/agrep/distinfo | 1 + textproc/agrep/pkg-comment | 1 + textproc/agrep/pkg-descr | 45 +++++++++++++++++++++++++++++++++++++++++++++ textproc/agrep/pkg-plist | 3 +++ 5 files changed, 79 insertions(+) create mode 100644 textproc/agrep/Makefile create mode 100644 textproc/agrep/distinfo create mode 100644 textproc/agrep/pkg-comment create mode 100644 textproc/agrep/pkg-descr create mode 100644 textproc/agrep/pkg-plist (limited to 'textproc/agrep') diff --git a/textproc/agrep/Makefile b/textproc/agrep/Makefile new file mode 100644 index 000000000000..6e06a2b707c6 --- /dev/null +++ b/textproc/agrep/Makefile @@ -0,0 +1,29 @@ +# ex:ts=8 +# Ports collection makefile for: agrep +# Version required: 2.04 +# Date created: Fri May 23, 1997 +# Whom: David O'Brien (obrien@FreeBSD.org) +# +# $Id: Makefile,v 1.2 1997/01/25 18:08:40 obrien Exp $ +# + +DISTNAME= agrep-2.04 +CATEGORIES= textproc +MASTER_SITES= ftp://ftp.cs.arizona.edu/agrep/ +EXTRACT_SUFX= .tar.Z +#DISTFILES= ${DISTNAME}.${EXTRACT_SUFX} agrep.ps.1.Z agrep.ps.2.Z + +MAINTAINER= obrien@NUXI.com + +ALL_TARGET= +MAN1= agrep.1 + +do-install: + @${INSTALL_PROGRAM} ${WRKSRC}/agrep ${PREFIX}/bin + @${INSTALL_MAN} ${WRKSRC}/agrep.1 ${PREFIX}/man/man1 +.if !defined(NOPORTDOCS) + @${MKDIR} ${PREFIX}/share/doc/agrep + @${INSTALL_MAN} ${WRKSRC}/agrep.algorithms ${PREFIX}/share/doc/agrep +.endif + +.include diff --git a/textproc/agrep/distinfo b/textproc/agrep/distinfo new file mode 100644 index 000000000000..2516b3acb3a2 --- /dev/null +++ b/textproc/agrep/distinfo @@ -0,0 +1 @@ +MD5 (agrep-2.04.tar.Z) = abc645404d3926a57c3f5e86a6e89ee9 diff --git a/textproc/agrep/pkg-comment b/textproc/agrep/pkg-comment new file mode 100644 index 000000000000..aa7e61ecfbbd --- /dev/null +++ b/textproc/agrep/pkg-comment @@ -0,0 +1 @@ +Approximate grep (fast approximate pattern-matching tool) diff --git a/textproc/agrep/pkg-descr b/textproc/agrep/pkg-descr new file mode 100644 index 000000000000..c1c62fbf1dab --- /dev/null +++ b/textproc/agrep/pkg-descr @@ -0,0 +1,45 @@ +Agrep is a tool for fast text searching allowing errors. + +The three most significant features of agrep that are not supported by +the grep family are +1) the ability to search for approximate patterns; + for example, "agrep -2 homogenos foo" will find homogeneous as well + as any other word that can be obtained from homogenos with at most + 2 substitutions, insertions, or deletions. + "agrep -B homogenos foo" will generate a message of the form + best match has 2 errors, there are 5 matches, output them? (y/n) +2) agrep is record oriented rather than just line oriented; a record + is by default a line, but it can be user defined; + for example, "agrep -d '^From ' 'pizza' mbox" + outputs all mail messages that contain the keyword "pizza". + Another example: "agrep -d '$$' pattern foo" will output all + paragraphs (separated by an empty line) that contain pattern. +3) multiple patterns with AND (or OR) logic queries. + For example, "agrep -d '^From ' 'burger,pizza' mbox" + outputs all mail messages containing at least one of the + two keywords (, stands for OR). + "agrep -d '^From ' 'good;pizza' mbox" outputs all mail messages + containing both keywords. + +Putting these options together one can ask queries like + +agrep -d '$$' -2 ';TheAuthor;Curriculum;<198[5-9]>' bib + +which outputs all paragraphs referencing articles in CACM between +1985 and 1989 by TheAuthor dealing with curriculum. +Two errors are allowed, but they cannot be in either CACM or the year +(the <> brackets forbid errors in the pattern between them). + +Two technical papers describing agrep are available as: + + agrep.ps.1 is a technical report from June 1991 describing the + design and implementation of agrep + ftp://ftp.cs.arizona.edu/agrep/agrep.ps.1.Z + + agrep.ps.2 is a copy of the paper as appeared in the 1992 Winter + USENIX conference. + ftp://ftp.cs.arizona.edu/agrep/agrep.ps.2.Z + + +- David O'Brien +obrien@NUXI.com diff --git a/textproc/agrep/pkg-plist b/textproc/agrep/pkg-plist new file mode 100644 index 000000000000..035b26efec0e --- /dev/null +++ b/textproc/agrep/pkg-plist @@ -0,0 +1,3 @@ +bin/agrep +man/man1/agrep.1.gz +share/doc/agrep/agrep.algorithms -- cgit v1.2.3