-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Z. D. Smith
committed
Feb 18, 2014
1 parent
88fc3f2
commit 3f09d3a
Showing
4 changed files
with
11 additions
and
325 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,14 @@ | ||
# abba, the abbreviation engine | ||
# Abba: The Abbreviation engine | ||
|
||
This application works in several stages: | ||
|
||
1. It reads abbreviation definitions written in the regnet markup from a .ini file. | ||
2. It compiles each abbreviation definition into a regnet object in order to obtain a regexp and a precedence ranking. | ||
3. It builds an abbreviation dictionary by: | ||
a. creating a new abbreviation object using the regexp and putting it into the correct order indicated by the precedence ranking. | ||
b. adding that abbreviation's rendering information to a lookup table. | ||
4. It runs through a provided text, replacing matching patterns with single unicode control codepoints that are linked to abbreviation objects. | ||
5. It renders the text according to the user's preference, referencing the control codepoints to the desired render method. | ||
|
||
**abba** takes a set of text transformation rules and applies it to a text. it produces an abbreviated document which can be output in any form. | ||
|
||
abba requires python3. |