Skip to content

Commit

Permalink
Include "Figlet" and PEAR "Text_Figlet" in externals
Browse files Browse the repository at this point in the history
Summary:
Ref T7785. This prepares for (but does not yet use) a pure PHP implementation of Figlet parsing and rendering.

Figlet is somewhat complex, but a parser already exists in PEAR. I'll make sure it's suitable and hook it up in the next diff.

Test Plan: N/A, code not reachable

Reviewers: chad

Reviewed By: chad

Maniphest Tasks: T9408, T7785

Differential Revision: https://secure.phabricator.com/D14101
  • Loading branch information
epriestley committed Sep 13, 2015
1 parent c705c80 commit 935ced1
Show file tree
Hide file tree
Showing 120 changed files with 53,422 additions and 0 deletions.
8 changes: 8 additions & 0 deletions externals/figlet/.gitignore
@@ -0,0 +1,8 @@
chkfont
figlet
tags
*.o
core
*~
tests.log
*.tar.gz
205 changes: 205 additions & 0 deletions externals/figlet/CHANGES
@@ -0,0 +1,205 @@
Changes in FIGlet 2.2.5
-----------------------

FIGlet 2.2.5 is a revision of FIGlet 2.2.4 containing updated andproperly
licensed ISO8859 map files. The full list of changes is:

o Add regression tests for uskata and jis0201 control files

o Properly escape minus signs in figlist(6) man page (Jonathan
McCrohan)

o Fix chkfont coredump on invalid input (Kenneth Davies and
Jonathan McCrohan)

o Update ISO8859 map files to fix licensing issue raised in Debian
bugs 673096 and 674844

o Re-add missing figmagic and getopt.c files which were left out
of releases 2.2.3 and 2.2.4

o Fix output of test script in MacOS X

These changes were made by Claudio Matsuoka <cmatsuoka@gmail.com>
31 May 2012

Changes in FIGlet 2.2.4
-----------------------

FIGlet 2.2.4 is a revision of FIGlet 2.2.3 featuring bugfixes and support
to tlf2 fonts. The full list of changes is:

o Add support to Sam Hocevar's TOIlet TLF fonts containing UTF-8
encoded Unicode characters.

o Add infocode 5 to list supported font formats

o Fix rendering error caused by the previous attempt to fix invalid
memory accesses when smushing at start of line

o New environment variable FIGLET_FONTDIR can be used to specify
the path to search for fonts

o Add regression tests

These changes were made by Claudio Matsuoka <cmatsuoka@gmail.com>
26 January 2011

Changes in FIGlet 2.2.3
-----------------------

FIGlet 2.2.3 is a revision of FIGlet 2.2.2 featuring minor bugfixes and
important licensing changes in the zipio files. The full list of
changes is:

o License changed from "Academic Free License" to "New BSD License"
(3-clause) as agreed by FIGlet authors

o New JIS X 0201 control file (Micah Cowan)

o Fix behavior of JIS0201 SHIFT-OUT and SHIFT-IN that were previouly
inverted (Micah Cowan)

o Fix memory violation when smushing at line start

o Fix handling of memory allocation errors

o Relicense Ed Hamrick zipio under the MIT license. This should
eliminate any concerns about redistribution of FIGlet as libre
software.

o Update Makefile to meet modern standards in variable naming, using
BINDIR as the pathname for binary files and reservind DESTDIR
as the extra prefix commonly used in package building.

o Add a Turbo C makefile, just because I had the compiler. (this
also tests portability to old compilers and foreign platforms)

o Add Jonathon Abbott's man pages for figlist, showfigfonts and
chkfont originally contributed to the Debian Project

These changes were made by Claudio Matsuoka <cmatsuoka@gmail.com>
12 January 2011

Changes in FIGlet 2.2.2
-----------------------

License changed from "Artistic License" to "Academic Free
License" as agreed by FIGlet authors. 05 July 2005

Changes in FIGlet 2.2.1
-----------------------

FIGlet 2.2.1 is a minor revision of FIGlet 2.2. The files
README, Makefile, figfont.txt, figlet.c and figlet.6 have been
changed to reflect changes in documentation, official contact
details etc. FTP-NOTE merged into README. FAQ and CHANGES
added to the distribution.

All other files are identical with the 2.2 release.

These changes were made by Christiaan Keet <keet@plig.net>

Changes in FIGlet 2.2
---------------------

FIGlet 2.2 is a moderate revision of FIGlet 2.1.2. The new features are:

o font files and control files can be compressed using ``zip'', and
will be automatically decompressed

o new commands in controlfiles provide support for
single-byte (default), double-byte, HZ, Shift-JIS, and Unicode
UTF-8 encodings of the input

o ISO 2022 escape sequences are decoded and interpreted

o control files can now have the format of Unicode Consortium
mapping tables (two columns of numbers representing
input character and output character, no ranges, # comments)

o new options -s (smush, same as -m-2), -k (kern, same as -m0),
-S (forced smushing), and -W (full width, same as -m-1) make
-m option unnecessary except for font designers. The -S option
works even if the font's smushmode is 0 or -1, in which case
the smushmode is read from a new parameter in the
font's first line, or does universal overlapping if no such parameter
exists

o universal smushing (-o option to force it, but -S will use it
if no smush rules are available) makes FIGcharacters overlap by
one place independent of how they are constructed
more fonts smushable.

o file "figmagic" can be appended to your system magic number
file to make the "file" command recognize FIGlet files

o file "figfont.txt" is an implementation-independent specification
for FIGlet fonts and control files

o integrated support for extended characters (extended Latin in
"standard", Greek in "big", katakana in "banner", Hebrew in new
"ivrit" fonts) with appropriate controlfiles

o smushing rule 16 has changed slightly: "/\" now smushes
into "|" and "\/" smushes into "Y"; "><" still smushes
into "X" and "<>" is still not smushed at all.

o -A option introduced in FIGlet 2.1.2 is now optional;
if any words appear on the command line after the options,
they are formatted, and the standard input is not read.

These changes were made by John Cowan <cowan@ccil.org>.

Changes in FIGlet 2.1.2
------------------------

FIGlet 2.1.2 is a minor revision of FIGlet 2.1.1. The files
README, FTP-NOTE, figlet.c and figlet.6 have been changed. All other
files are identical with the 2.1.1 release.

o The only new option is -A, which causes FIGlet to read input
from the command line.

These changes were made by Gilbert Healton <ghealton@nmia.com> as Glenn
Chappell is now busy as a new professor of Mathematics.

Changes in FIGlet 2.1
----------------------

A number of minor bugs and major incompatibility problems have been
fixed. FIGlet 2.1 should compile correctly on many operating systems for
which FIGlet 2.0 did not.

o The "-F" command line option, which used to list all the available
fonts, has been removed, since it made FIGlet incompatible with some
operating systems. It has been replaced by the "figlist" script. The
"showfigfonts" script has been updated so that it no longer requires
the "-F" option to be available.

o The FIGlet font file format has been extended to allow an arbitrarily
large number of characters. The ISO Latin-1 character set, which
includes many accented letters and special symbols, has been added to
most standard fonts.

o FIGlet can now print right-to-left. This can be specified on the
command line ("-R") or in the font file. Thus, for example, Hebrew and
Arabic fonts can be handled more easily.

o FIGlet can now right justify its output. This is the default when
right-to-left printing is selected. It can also be specified on the
command line ("-r").

o FIGlet now supports "control files". These can be used to change which
character FIGlet will print when it sees a certain input character --
sort of an expanded version of the "-D" option. For example, a control
file could convert lower-case letters to upper-case or map certain
ASCII characters to accented letters. Control file names end with the
suffix ".flc". Select a control file by using "-C controlfile" on the
command line. Several controlfiles can be used at once by giving
muliple "-C" options.

o There is now a way for programs that use FIGlet to get various
information from FIGlet, for example, what version of FIGlet is being
used or the name of the default font directory. This information is
gotten through the "-I" option. See the man page for details.
63 changes: 63 additions & 0 deletions externals/figlet/FAQ
@@ -0,0 +1,63 @@
_____ _____ _____ __ __ _____ _____ _____
| __| | __| |____| |_ | __| _ | | This FIGlet FAQ is
| __|- -| | | | - _| _| | __| | | | posted once a month
|__| |_____|_____|__|____|__| |__| |__|__|__ _| on figlet@figlet.org
info@figlet.org http://www.figlet.org/ |__| [FIGlet FAQ v0.91]

===========================================================================
The latest version of FIGlet is 2.2.5 and can be downloaded from
ftp://ftp.figlet.org/pub/figlet/program
===========================================================================

1 What is FIGlet?
2 Where can I get FIGlet from?
3 Where can I get more fonts for FIGlet?
4 Where can I hear about regular FIGlet program and font updates?
5 How can I contribute?
6 Why am I getting this mail and can you make it stop?
7 Where does the name FIGlet come from?

===========================================================================

1. What is FIGlet?
FIGlet is a program for making large letters out of ordinary text
_ _ _ _ _ _
| (_) | _____ | |_| |__ (_)___
| | | |/ / _ \ | __| '_ \| / __|
| | | < __/ | |_| | | | \__ \
|_|_|_|\_\___| \__|_| |_|_|___/

2. Where can I get FIGlet from?
From the official FIGlet website at http://www.figlet.org/
or from the FIGlet FTP site at ftp://ftp.figlet.org/pub/figlet/

3. Where can I get more fonts for FIGlet?
From the FTP site at ftp://ftp.figlet.org/pub/figlet/fonts/
There are currently over 400 fonts available for download

4 Where can I hear about regular FIGlet program and font updates?
There is a mailing list for FIGlet for general discussions about
FIGlet and a place where you can ask questions or share ideas
with other FIGlet users. It is also the place where we will publish
news about new fonts, new software updates etc.

To subscribe or unsubscribe from the FIGlet mailing list,
please send email to figlet-subscribe@figlet.org or visit the
following web page: http://www.figlet.org/mailman/listinfo/figlet

5. How can I contribute?
To contribute new fonts, software or information, please contact
us at info@figlet.org

6. Why am I getting this mail and can you make it stop?
If you received this email it is probably because you are subscribed
to the FIGlet mailing list. Please see Question 4 of this FAQ on how
to unsubscribe from the FIGlet list.

7. Where does the name FIGlet come from?
"Frank, Ian and Glen's letters"


= FAQ Maintainer ==========================================================
Christiaan Keet keet@plig.net July 2005
===========================================================================
30 changes: 30 additions & 0 deletions externals/figlet/LICENSE
@@ -0,0 +1,30 @@
Copyright (C) 1991, 1993, 1994 Glenn Chappell and Ian Chai
Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 John Cowan
Copyright (C) 2002 Christiaan Keet
Copyright (C) 2011 Claudio Matsuoka
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions
are met:

1. Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of the copyright holders nor the names of their
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

0 comments on commit 935ced1

Please sign in to comment.