summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore (renamed from RGens/.gitignore)0
-rw-r--r--REPORT.md (renamed from RGens/REPORT.md)0
-rw-r--r--RGens/.classpath31
-rw-r--r--RGens/.project23
-rw-r--r--RGens/.settings/org.eclipse.core.resources.prefs4
-rw-r--r--RGens/.settings/org.eclipse.jdt.core.prefs12
-rw-r--r--RGens/.settings/org.eclipse.m2e.core.prefs4
-rw-r--r--RGens/src/main/java/.DS_Storebin6148 -> 0 bytes
-rw-r--r--RGens/src/main/java/bjc/.DS_Storebin6148 -> 0 bytes
-rw-r--r--data/misc/700000items.gram (renamed from RGens/data/misc/700000items.gram)0
-rw-r--r--data/misc/nimble.gram (renamed from RGens/data/misc/nimble.gram)0
-rw-r--r--data/new-sample-grammars/cbs.gram (renamed from RGens/data/new-sample-grammars/cbs.gram)0
-rw-r--r--data/new-sample-grammars/drakensang/armor.gram (renamed from RGens/data/new-sample-grammars/drakensang/armor.gram)0
-rw-r--r--data/new-sample-grammars/drakensang/gems.gram (renamed from RGens/data/new-sample-grammars/drakensang/gems.gram)0
-rw-r--r--data/new-sample-grammars/drakensang/runes.gram (renamed from RGens/data/new-sample-grammars/drakensang/runes.gram)0
-rw-r--r--data/new-sample-grammars/repinsult.gram (renamed from RGens/data/new-sample-grammars/repinsult.gram)0
-rw-r--r--data/rpg-tools-cd/wands.gram (renamed from RGens/data/rpg-tools-cd/wands.gram)0
-rwxr-xr-xdata/sample-grammars/24hr-rpg.gram (renamed from RGens/data/sample-grammars/24hr-rpg.gram)4
-rw-r--r--data/sample-grammars/acronym.gram (renamed from RGens/data/sample-grammars/acronym.gram)2
-rw-r--r--data/sample-grammars/address.gram (renamed from RGens/data/sample-grammars/address.gram)2
-rwxr-xr-xdata/sample-grammars/anime.gram (renamed from RGens/data/sample-grammars/anime.gram)0
-rwxr-xr-xdata/sample-grammars/art-objects.gram (renamed from RGens/data/sample-grammars/art-objects.gram)0
-rwxr-xr-xdata/sample-grammars/awe-names.gram (renamed from RGens/data/sample-grammars/awe-names.gram)0
-rw-r--r--data/sample-grammars/buzzword.gram (renamed from RGens/data/sample-grammars/buzzword.gram)0
-rw-r--r--data/sample-grammars/career.gram (renamed from RGens/data/sample-grammars/career.gram)0
-rw-r--r--data/sample-grammars/city.gram (renamed from RGens/data/sample-grammars/city.gram)0
-rw-r--r--data/sample-grammars/college.gram (renamed from RGens/data/sample-grammars/college.gram)0
-rw-r--r--data/sample-grammars/company.gram (renamed from RGens/data/sample-grammars/company.gram)0
-rw-r--r--data/sample-grammars/computer.gram (renamed from RGens/data/sample-grammars/computer.gram)0
-rw-r--r--data/sample-grammars/congress.gram (renamed from RGens/data/sample-grammars/congress.gram)0
-rw-r--r--data/sample-grammars/dates.gram (renamed from RGens/data/sample-grammars/dates.gram)0
-rwxr-xr-xdata/sample-grammars/diablo-ii/diabloii.gram (renamed from RGens/data/sample-grammars/diablo-ii/diabloii.gram)1
-rwxr-xr-xdata/sample-grammars/diablo-ii/diabloiiitems.gram (renamed from RGens/data/sample-grammars/diablo-ii/diabloiiitems.gram)0
-rwxr-xr-xdata/sample-grammars/diablo-ii/diabloiiperish.gram (renamed from RGens/data/sample-grammars/diablo-ii/diabloiiperish.gram)0
-rwxr-xr-xdata/sample-grammars/diablo-ii/diabloiiprefixes.gram (renamed from RGens/data/sample-grammars/diablo-ii/diabloiiprefixes.gram)0
-rwxr-xr-xdata/sample-grammars/diablo-ii/diabloiisuffixes.gram (renamed from RGens/data/sample-grammars/diablo-ii/diabloiisuffixes.gram)0
-rwxr-xr-xdata/sample-grammars/dungeon-enviroment.gram (renamed from RGens/data/sample-grammars/dungeon-enviroment.gram)0
-rw-r--r--data/sample-grammars/dungeondressing/abandoned.gram (renamed from RGens/data/sample-grammars/dungeondressing/abandoned.gram)0
-rw-r--r--data/sample-grammars/dungeondressing/bedroom.gram (renamed from RGens/data/sample-grammars/dungeondressing/bedroom.gram)0
-rw-r--r--data/sample-grammars/dungeondressing/dragonencounter.gram (renamed from RGens/data/sample-grammars/dungeondressing/dragonencounter.gram)0
-rw-r--r--data/sample-grammars/dungeondressing/kitchen.gram (renamed from RGens/data/sample-grammars/dungeondressing/kitchen.gram)0
-rw-r--r--data/sample-grammars/dungeondressing/monster.gram (renamed from RGens/data/sample-grammars/dungeondressing/monster.gram)0
-rw-r--r--data/sample-grammars/eastern-sun/easternsunsocketing.gram (renamed from RGens/data/sample-grammars/eastern-sun/easternsunsocketing.gram)0
-rw-r--r--data/sample-grammars/elementals.gram (renamed from RGens/data/sample-grammars/elementals.gram)0
-rwxr-xr-xdata/sample-grammars/fantasy-locations.gram (renamed from RGens/data/sample-grammars/fantasy-locations.gram)0
-rw-r--r--data/sample-grammars/fortune.gram (renamed from RGens/data/sample-grammars/fortune.gram)0
-rw-r--r--data/sample-grammars/gemstones.gram (renamed from RGens/data/sample-grammars/gemstones.gram)0
-rwxr-xr-xdata/sample-grammars/genre-fiction.gram (renamed from RGens/data/sample-grammars/genre-fiction.gram)0
-rw-r--r--data/sample-grammars/horror.gram (renamed from RGens/data/sample-grammars/horror.gram)0
-rw-r--r--data/sample-grammars/insults.gram (renamed from RGens/data/sample-grammars/insults.gram)0
-rw-r--r--data/sample-grammars/linux.gram (renamed from RGens/data/sample-grammars/linux.gram)0
-rw-r--r--data/sample-grammars/long-data/animal.gram (renamed from RGens/data/sample-grammars/long-data/animal.gram)0
-rw-r--r--data/sample-grammars/long-data/canada-province.gram (renamed from RGens/data/sample-grammars/long-data/canada-province.gram)0
-rw-r--r--data/sample-grammars/long-data/cards.gram (renamed from RGens/data/sample-grammars/long-data/cards.gram)0
-rw-r--r--data/sample-grammars/long-data/color.gram (renamed from RGens/data/sample-grammars/long-data/color.gram)0
-rw-r--r--data/sample-grammars/long-data/first-name-female.gram (renamed from RGens/data/sample-grammars/long-data/first-name-female.gram)0
-rw-r--r--data/sample-grammars/long-data/first-name-male.gram (renamed from RGens/data/sample-grammars/long-data/first-name-male.gram)0
-rw-r--r--data/sample-grammars/long-data/geographic-thing.gram (renamed from RGens/data/sample-grammars/long-data/geographic-thing.gram)0
-rw-r--r--data/sample-grammars/long-data/greek-letters.gram (renamed from RGens/data/sample-grammars/long-data/greek-letters.gram)0
-rw-r--r--data/sample-grammars/long-data/japanese-writing.gram (renamed from RGens/data/sample-grammars/long-data/japanese-writing.gram)0
-rw-r--r--data/sample-grammars/long-data/last-name.gram (renamed from RGens/data/sample-grammars/long-data/last-name.gram)0
-rw-r--r--data/sample-grammars/long-data/letters.gram (renamed from RGens/data/sample-grammars/long-data/letters.gram)0
-rw-r--r--data/sample-grammars/long-data/nation.gram (renamed from RGens/data/sample-grammars/long-data/nation.gram)0
-rw-r--r--data/sample-grammars/long-data/numbers.gram (renamed from RGens/data/sample-grammars/long-data/numbers.gram)0
-rw-r--r--data/sample-grammars/long-data/planet.gram (renamed from RGens/data/sample-grammars/long-data/planet.gram)0
-rw-r--r--data/sample-grammars/long-data/real-city.gram (renamed from RGens/data/sample-grammars/long-data/real-city.gram)0
-rw-r--r--data/sample-grammars/long-data/real-company.gram (renamed from RGens/data/sample-grammars/long-data/real-company.gram)0
-rw-r--r--data/sample-grammars/long-data/relative.gram (renamed from RGens/data/sample-grammars/long-data/relative.gram)0
-rw-r--r--data/sample-grammars/long-data/roman-numeral.gram (renamed from RGens/data/sample-grammars/long-data/roman-numeral.gram)0
-rw-r--r--data/sample-grammars/long-data/syllables.gram (renamed from RGens/data/sample-grammars/long-data/syllables.gram)0
-rw-r--r--data/sample-grammars/long-data/town-name.gram (renamed from RGens/data/sample-grammars/long-data/town-name.gram)0
-rw-r--r--data/sample-grammars/long-data/tree.gram (renamed from RGens/data/sample-grammars/long-data/tree.gram)0
-rwxr-xr-xdata/sample-grammars/martial-arts.gram (renamed from RGens/data/sample-grammars/martial-arts.gram)0
-rwxr-xr-xdata/sample-grammars/mary-sue.gram (renamed from RGens/data/sample-grammars/mary-sue.gram)0
-rw-r--r--data/sample-grammars/media.gram (renamed from RGens/data/sample-grammars/media.gram)0
-rw-r--r--data/sample-grammars/mission.gram (renamed from RGens/data/sample-grammars/mission.gram)0
-rw-r--r--data/sample-grammars/names.gram (renamed from RGens/data/sample-grammars/names.gram)0
-rw-r--r--data/sample-grammars/newspaper.gram (renamed from RGens/data/sample-grammars/newspaper.gram)0
-rw-r--r--data/sample-grammars/numbers.gram (renamed from RGens/data/sample-grammars/numbers.gram)0
-rw-r--r--data/sample-grammars/ordinal.gram (renamed from RGens/data/sample-grammars/ordinal.gram)0
-rw-r--r--data/sample-grammars/organization.gram (renamed from RGens/data/sample-grammars/organization.gram)0
-rwxr-xr-xdata/sample-grammars/part-creature.gram (renamed from RGens/data/sample-grammars/part-creature.gram)0
-rw-r--r--data/sample-grammars/phone-number.gram (renamed from RGens/data/sample-grammars/phone-number.gram)0
-rwxr-xr-xdata/sample-grammars/pokeattacks.gram (renamed from RGens/data/sample-grammars/pokeattacks.gram)0
-rw-r--r--data/sample-grammars/president.gram (renamed from RGens/data/sample-grammars/president.gram)0
-rw-r--r--data/sample-grammars/rtwiki/adjective.gram (renamed from RGens/data/sample-grammars/rtwiki/adjective.gram)0
-rw-r--r--data/sample-grammars/rtwiki/bodyparts.gram (renamed from RGens/data/sample-grammars/rtwiki/bodyparts.gram)0
-rw-r--r--data/sample-grammars/rtwiki/class.gram (renamed from RGens/data/sample-grammars/rtwiki/class.gram)0
-rw-r--r--data/sample-grammars/rtwiki/color.gram (renamed from RGens/data/sample-grammars/rtwiki/color.gram)0
-rw-r--r--data/sample-grammars/rtwiki/creature.gram (renamed from RGens/data/sample-grammars/rtwiki/creature.gram)0
-rw-r--r--data/sample-grammars/rtwiki/death-cause.gram (renamed from RGens/data/sample-grammars/rtwiki/death-cause.gram)0
-rw-r--r--data/sample-grammars/rtwiki/fantasy-name.gram (renamed from RGens/data/sample-grammars/rtwiki/fantasy-name.gram)0
-rw-r--r--data/sample-grammars/rtwiki/favorite.gram (renamed from RGens/data/sample-grammars/rtwiki/favorite.gram)0
-rw-r--r--data/sample-grammars/rtwiki/guns.gram (renamed from RGens/data/sample-grammars/rtwiki/guns.gram)8
-rw-r--r--data/sample-grammars/rtwiki/item.gram (renamed from RGens/data/sample-grammars/rtwiki/item.gram)1
-rw-r--r--data/sample-grammars/rtwiki/traits.gram (renamed from RGens/data/sample-grammars/rtwiki/traits.gram)0
-rwxr-xr-xdata/sample-grammars/rune.gram (renamed from RGens/data/sample-grammars/rune.gram)0
-rw-r--r--data/sample-grammars/school.gram (renamed from RGens/data/sample-grammars/school.gram)0
-rw-r--r--data/sample-grammars/slashdot.gram (renamed from RGens/data/sample-grammars/slashdot.gram)0
-rw-r--r--data/sample-grammars/states.gram (renamed from RGens/data/sample-grammars/states.gram)0
-rwxr-xr-xdata/sample-grammars/superhero.gram (renamed from RGens/data/sample-grammars/superhero.gram)0
-rwxr-xr-xdata/sample-grammars/tarotcard.gram (renamed from RGens/data/sample-grammars/tarotcard.gram)0
-rwxr-xr-xdata/sample-grammars/technobabble.gram (renamed from RGens/data/sample-grammars/technobabble.gram)0
-rw-r--r--data/sample-grammars/theory.gram (renamed from RGens/data/sample-grammars/theory.gram)0
-rw-r--r--data/sample-grammars/trademark.gram (renamed from RGens/data/sample-grammars/trademark.gram)0
-rw-r--r--data/sample-grammars/vaultsofnagoh/turboghoul-hats.gram (renamed from RGens/data/sample-grammars/vaultsofnagoh/turboghoul-hats.gram)15
-rw-r--r--data/sample-grammars/web.gram (renamed from RGens/data/sample-grammars/web.gram)0
-rwxr-xr-xdata/sample-grammars/zadrons-pouch.gram (renamed from RGens/data/sample-grammars/zadrons-pouch.gram)0
-rw-r--r--data/seniordesign/dbdata.gram (renamed from RGens/data/seniordesign/dbdata.gram)0
-rw-r--r--data/server-config-sample.cfg (renamed from RGens/data/server-config-sample.cfg)3
-rw-r--r--data/todos.txt (renamed from RGens/data/todos.txt)0
-rwxr-xr-xdotest.sh (renamed from RGens/dotest.sh)0
-rw-r--r--pom.xml (renamed from RGens/pom.xml)0
-rw-r--r--src/main/java/bjc/rgens/ZadronsPouch.java (renamed from RGens/src/main/java/bjc/rgens/ZadronsPouch.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/GrammarException.java (renamed from RGens/src/main/java/bjc/rgens/parser/GrammarException.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/RGrammar.java (renamed from RGens/src/main/java/bjc/rgens/parser/RGrammar.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/RGrammarBuilder.java (renamed from RGens/src/main/java/bjc/rgens/parser/RGrammarBuilder.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/RGrammarFormatter.java (renamed from RGens/src/main/java/bjc/rgens/parser/RGrammarFormatter.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/RGrammarParser.java (renamed from RGens/src/main/java/bjc/rgens/parser/RGrammarParser.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/RGrammarSet.java (renamed from RGens/src/main/java/bjc/rgens/parser/RGrammarSet.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/RGrammarTest.java (renamed from RGens/src/main/java/bjc/rgens/parser/RGrammarTest.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/RGrammars.java (renamed from RGens/src/main/java/bjc/rgens/parser/RGrammars.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/RegexRuleCase.java (renamed from RGens/src/main/java/bjc/rgens/parser/RegexRuleCase.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/Rule.java (renamed from RGens/src/main/java/bjc/rgens/parser/Rule.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/RuleCase.java (renamed from RGens/src/main/java/bjc/rgens/parser/RuleCase.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/elements/BlankCaseElement.java (renamed from RGens/src/main/java/bjc/rgens/parser/elements/BlankCaseElement.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/elements/CaseElement.java (renamed from RGens/src/main/java/bjc/rgens/parser/elements/CaseElement.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/elements/ExpVariableCaseElement.java (renamed from RGens/src/main/java/bjc/rgens/parser/elements/ExpVariableCaseElement.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/elements/LitVariableCaseElement.java (renamed from RGens/src/main/java/bjc/rgens/parser/elements/LitVariableCaseElement.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/elements/LiteralCaseElement.java (renamed from RGens/src/main/java/bjc/rgens/parser/elements/LiteralCaseElement.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/elements/RangeCaseElement.java (renamed from RGens/src/main/java/bjc/rgens/parser/elements/RangeCaseElement.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/elements/RuleCaseElement.java (renamed from RGens/src/main/java/bjc/rgens/parser/elements/RuleCaseElement.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/elements/StringCaseElement.java (renamed from RGens/src/main/java/bjc/rgens/parser/elements/StringCaseElement.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/elements/VariableCaseElement.java (renamed from RGens/src/main/java/bjc/rgens/parser/elements/VariableCaseElement.java)0
-rw-r--r--src/main/java/bjc/rgens/parser/new-syntax.txt (renamed from RGens/src/main/java/bjc/rgens/parser/new-syntax.txt)0
-rw-r--r--src/main/java/bjc/rgens/text/markov/Markov.java (renamed from RGens/src/main/java/bjc/rgens/text/markov/Markov.java)0
-rw-r--r--src/main/java/bjc/rgens/text/markov/StandaloneMarkov.java (renamed from RGens/src/main/java/bjc/rgens/text/markov/StandaloneMarkov.java)0
-rw-r--r--src/main/java/bjc/rgens/text/markov/StandaloneTextGenerator.java (renamed from RGens/src/main/java/bjc/rgens/text/markov/StandaloneTextGenerator.java)0
-rw-r--r--src/main/java/bjc/rgens/text/markov/TextGenerator.java (renamed from RGens/src/main/java/bjc/rgens/text/markov/TextGenerator.java)0
-rw-r--r--src/main/sql/db_schema.sql (renamed from RGens/src/main/sql/db_schema.sql)0
-rw-r--r--todos.txt (renamed from RGens/todos.txt)0
141 files changed, 27 insertions, 83 deletions
diff --git a/RGens/.gitignore b/.gitignore
index 262500a..262500a 100644
--- a/RGens/.gitignore
+++ b/.gitignore
diff --git a/RGens/REPORT.md b/REPORT.md
index d1c1a7e..d1c1a7e 100644
--- a/RGens/REPORT.md
+++ b/REPORT.md
diff --git a/RGens/.classpath b/RGens/.classpath
deleted file mode 100644
index 7d5ca02..0000000
--- a/RGens/.classpath
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<classpath>
- <classpathentry kind="src" output="target/classes" path="src/main/java">
- <attributes>
- <attribute name="optional" value="true"/>
- <attribute name="maven.pomderived" value="true"/>
- </attributes>
- </classpathentry>
- <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
- <attributes>
- <attribute name="maven.pomderived" value="true"/>
- </attributes>
- </classpathentry>
- <classpathentry kind="src" output="target/test-classes" path="src/test/java">
- <attributes>
- <attribute name="optional" value="true"/>
- <attribute name="maven.pomderived" value="true"/>
- </attributes>
- </classpathentry>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8">
- <attributes>
- <attribute name="maven.pomderived" value="true"/>
- </attributes>
- </classpathentry>
- <classpathentry excluding="**" kind="src" output="target/classes" path="data">
- <attributes>
- <attribute name="maven.pomderived" value="true"/>
- </attributes>
- </classpathentry>
- <classpathentry kind="output" path="target/classes"/>
-</classpath>
diff --git a/RGens/.project b/RGens/.project
deleted file mode 100644
index 28c0e93..0000000
--- a/RGens/.project
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>RGens</name>
- <comment></comment>
- <projects>
- </projects>
- <buildSpec>
- <buildCommand>
- <name>org.eclipse.jdt.core.javabuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- <buildCommand>
- <name>org.eclipse.m2e.core.maven2Builder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>org.eclipse.m2e.core.maven2Nature</nature>
- </natures>
-</projectDescription>
diff --git a/RGens/.settings/org.eclipse.core.resources.prefs b/RGens/.settings/org.eclipse.core.resources.prefs
deleted file mode 100644
index 382b70b..0000000
--- a/RGens/.settings/org.eclipse.core.resources.prefs
+++ /dev/null
@@ -1,4 +0,0 @@
-eclipse.preferences.version=1
-encoding//src/main/java=UTF-8
-encoding/<project>=UTF-8
-encoding/data=UTF-8
diff --git a/RGens/.settings/org.eclipse.jdt.core.prefs b/RGens/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index 672496e..0000000
--- a/RGens/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,12 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.8
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
-org.eclipse.jdt.core.compiler.source=1.8
diff --git a/RGens/.settings/org.eclipse.m2e.core.prefs b/RGens/.settings/org.eclipse.m2e.core.prefs
deleted file mode 100644
index f897a7f..0000000
--- a/RGens/.settings/org.eclipse.m2e.core.prefs
+++ /dev/null
@@ -1,4 +0,0 @@
-activeProfiles=
-eclipse.preferences.version=1
-resolveWorkspaceProjects=true
-version=1
diff --git a/RGens/src/main/java/.DS_Store b/RGens/src/main/java/.DS_Store
deleted file mode 100644
index c5a38b7..0000000
--- a/RGens/src/main/java/.DS_Store
+++ /dev/null
Binary files differ
diff --git a/RGens/src/main/java/bjc/.DS_Store b/RGens/src/main/java/bjc/.DS_Store
deleted file mode 100644
index 86e50e6..0000000
--- a/RGens/src/main/java/bjc/.DS_Store
+++ /dev/null
Binary files differ
diff --git a/RGens/data/misc/700000items.gram b/data/misc/700000items.gram
index 4158dcb..4158dcb 100644
--- a/RGens/data/misc/700000items.gram
+++ b/data/misc/700000items.gram
diff --git a/RGens/data/misc/nimble.gram b/data/misc/nimble.gram
index 3567777..3567777 100644
--- a/RGens/data/misc/nimble.gram
+++ b/data/misc/nimble.gram
diff --git a/RGens/data/new-sample-grammars/cbs.gram b/data/new-sample-grammars/cbs.gram
index 8d05dd1..8d05dd1 100644
--- a/RGens/data/new-sample-grammars/cbs.gram
+++ b/data/new-sample-grammars/cbs.gram
diff --git a/RGens/data/new-sample-grammars/drakensang/armor.gram b/data/new-sample-grammars/drakensang/armor.gram
index d559761..d559761 100644
--- a/RGens/data/new-sample-grammars/drakensang/armor.gram
+++ b/data/new-sample-grammars/drakensang/armor.gram
diff --git a/RGens/data/new-sample-grammars/drakensang/gems.gram b/data/new-sample-grammars/drakensang/gems.gram
index 655bdcb..655bdcb 100644
--- a/RGens/data/new-sample-grammars/drakensang/gems.gram
+++ b/data/new-sample-grammars/drakensang/gems.gram
diff --git a/RGens/data/new-sample-grammars/drakensang/runes.gram b/data/new-sample-grammars/drakensang/runes.gram
index 28c12f0..28c12f0 100644
--- a/RGens/data/new-sample-grammars/drakensang/runes.gram
+++ b/data/new-sample-grammars/drakensang/runes.gram
diff --git a/RGens/data/new-sample-grammars/repinsult.gram b/data/new-sample-grammars/repinsult.gram
index 30ac89d..30ac89d 100644
--- a/RGens/data/new-sample-grammars/repinsult.gram
+++ b/data/new-sample-grammars/repinsult.gram
diff --git a/RGens/data/rpg-tools-cd/wands.gram b/data/rpg-tools-cd/wands.gram
index 2bf7cd8..2bf7cd8 100644
--- a/RGens/data/rpg-tools-cd/wands.gram
+++ b/data/rpg-tools-cd/wands.gram
diff --git a/RGens/data/sample-grammars/24hr-rpg.gram b/data/sample-grammars/24hr-rpg.gram
index dcfc21d..e372256 100755
--- a/RGens/data/sample-grammars/24hr-rpg.gram
+++ b/data/sample-grammars/24hr-rpg.gram
@@ -12,8 +12,8 @@
[quote-rpg-name] ( [rpg-name] )
-pragma initial-rule [rpg-name]
-pragma export-rule [rpg-name-phrase]
+pragma initial-rule [rpg-name-phrase]
+pragma export-rule [rpg-name]
[rpg-part] → tits
teeth
diff --git a/RGens/data/sample-grammars/acronym.gram b/data/sample-grammars/acronym.gram
index 52d88ad..ed18cfc 100644
--- a/RGens/data/sample-grammars/acronym.gram
+++ b/data/sample-grammars/acronym.gram
@@ -14,6 +14,8 @@ pragma despace-rule [acronym]
[acronym-part] [join-acronym]
[dot-acronym]
+pragma export-rule [acronym-part]
+
[join-acronym] [consonant] [vowel] [consonant]
[consonant-group] [consonant] [consonant]
[consonant] [consonant] [consonant] [consonant]
diff --git a/RGens/data/sample-grammars/address.gram b/data/sample-grammars/address.gram
index d2d5eef..44475c4 100644
--- a/RGens/data/sample-grammars/address.gram
+++ b/data/sample-grammars/address.gram
@@ -42,6 +42,8 @@ pragma suffix-with [address-prefix-prefix] [com-company]
route [digit] box [medium-number]
[small-number] [street]
+pragma export-rule [street-address]
+
[street] [tree]
[color] [tree]
[last-name]
diff --git a/RGens/data/sample-grammars/anime.gram b/data/sample-grammars/anime.gram
index 85cc7db..85cc7db 100755
--- a/RGens/data/sample-grammars/anime.gram
+++ b/data/sample-grammars/anime.gram
diff --git a/RGens/data/sample-grammars/art-objects.gram b/data/sample-grammars/art-objects.gram
index c824958..c824958 100755
--- a/RGens/data/sample-grammars/art-objects.gram
+++ b/data/sample-grammars/art-objects.gram
diff --git a/RGens/data/sample-grammars/awe-names.gram b/data/sample-grammars/awe-names.gram
index ea27ce1..ea27ce1 100755
--- a/RGens/data/sample-grammars/awe-names.gram
+++ b/data/sample-grammars/awe-names.gram
diff --git a/RGens/data/sample-grammars/buzzword.gram b/data/sample-grammars/buzzword.gram
index d25331f..d25331f 100644
--- a/RGens/data/sample-grammars/buzzword.gram
+++ b/data/sample-grammars/buzzword.gram
diff --git a/RGens/data/sample-grammars/career.gram b/data/sample-grammars/career.gram
index 63142f5..63142f5 100644
--- a/RGens/data/sample-grammars/career.gram
+++ b/data/sample-grammars/career.gram
diff --git a/RGens/data/sample-grammars/city.gram b/data/sample-grammars/city.gram
index b344d3b..b344d3b 100644
--- a/RGens/data/sample-grammars/city.gram
+++ b/data/sample-grammars/city.gram
diff --git a/RGens/data/sample-grammars/college.gram b/data/sample-grammars/college.gram
index 33b45e3..33b45e3 100644
--- a/RGens/data/sample-grammars/college.gram
+++ b/data/sample-grammars/college.gram
diff --git a/RGens/data/sample-grammars/company.gram b/data/sample-grammars/company.gram
index 40ea83b..40ea83b 100644
--- a/RGens/data/sample-grammars/company.gram
+++ b/data/sample-grammars/company.gram
diff --git a/RGens/data/sample-grammars/computer.gram b/data/sample-grammars/computer.gram
index a3a7814..a3a7814 100644
--- a/RGens/data/sample-grammars/computer.gram
+++ b/data/sample-grammars/computer.gram
diff --git a/RGens/data/sample-grammars/congress.gram b/data/sample-grammars/congress.gram
index cffe469..cffe469 100644
--- a/RGens/data/sample-grammars/congress.gram
+++ b/data/sample-grammars/congress.gram
diff --git a/RGens/data/sample-grammars/dates.gram b/data/sample-grammars/dates.gram
index 1ed0daa..1ed0daa 100644
--- a/RGens/data/sample-grammars/dates.gram
+++ b/data/sample-grammars/dates.gram
diff --git a/RGens/data/sample-grammars/diablo-ii/diabloii.gram b/data/sample-grammars/diablo-ii/diabloii.gram
index 411e795..df45482 100755
--- a/RGens/data/sample-grammars/diablo-ii/diabloii.gram
+++ b/data/sample-grammars/diablo-ii/diabloii.gram
@@ -57,6 +57,7 @@ pragma prefix-with [money-type] [metal-type]
[item-types] [d2-item-type]
[d2-item-type]
[ds-items]
+ [^item]
[ds-items] [ds-gem]
[ds-rune]
diff --git a/RGens/data/sample-grammars/diablo-ii/diabloiiitems.gram b/data/sample-grammars/diablo-ii/diabloiiitems.gram
index 5fa174b..5fa174b 100755
--- a/RGens/data/sample-grammars/diablo-ii/diabloiiitems.gram
+++ b/data/sample-grammars/diablo-ii/diabloiiitems.gram
diff --git a/RGens/data/sample-grammars/diablo-ii/diabloiiperish.gram b/data/sample-grammars/diablo-ii/diabloiiperish.gram
index af6c9ec..af6c9ec 100755
--- a/RGens/data/sample-grammars/diablo-ii/diabloiiperish.gram
+++ b/data/sample-grammars/diablo-ii/diabloiiperish.gram
diff --git a/RGens/data/sample-grammars/diablo-ii/diabloiiprefixes.gram b/data/sample-grammars/diablo-ii/diabloiiprefixes.gram
index 5157115..5157115 100755
--- a/RGens/data/sample-grammars/diablo-ii/diabloiiprefixes.gram
+++ b/data/sample-grammars/diablo-ii/diabloiiprefixes.gram
diff --git a/RGens/data/sample-grammars/diablo-ii/diabloiisuffixes.gram b/data/sample-grammars/diablo-ii/diabloiisuffixes.gram
index f6deea0..f6deea0 100755
--- a/RGens/data/sample-grammars/diablo-ii/diabloiisuffixes.gram
+++ b/data/sample-grammars/diablo-ii/diabloiisuffixes.gram
diff --git a/RGens/data/sample-grammars/dungeon-enviroment.gram b/data/sample-grammars/dungeon-enviroment.gram
index 0080b9a..0080b9a 100755
--- a/RGens/data/sample-grammars/dungeon-enviroment.gram
+++ b/data/sample-grammars/dungeon-enviroment.gram
diff --git a/RGens/data/sample-grammars/dungeondressing/abandoned.gram b/data/sample-grammars/dungeondressing/abandoned.gram
index c9ed653..c9ed653 100644
--- a/RGens/data/sample-grammars/dungeondressing/abandoned.gram
+++ b/data/sample-grammars/dungeondressing/abandoned.gram
diff --git a/RGens/data/sample-grammars/dungeondressing/bedroom.gram b/data/sample-grammars/dungeondressing/bedroom.gram
index 8bb9449..8bb9449 100644
--- a/RGens/data/sample-grammars/dungeondressing/bedroom.gram
+++ b/data/sample-grammars/dungeondressing/bedroom.gram
diff --git a/RGens/data/sample-grammars/dungeondressing/dragonencounter.gram b/data/sample-grammars/dungeondressing/dragonencounter.gram
index 5c299c3..5c299c3 100644
--- a/RGens/data/sample-grammars/dungeondressing/dragonencounter.gram
+++ b/data/sample-grammars/dungeondressing/dragonencounter.gram
diff --git a/RGens/data/sample-grammars/dungeondressing/kitchen.gram b/data/sample-grammars/dungeondressing/kitchen.gram
index 23abda4..23abda4 100644
--- a/RGens/data/sample-grammars/dungeondressing/kitchen.gram
+++ b/data/sample-grammars/dungeondressing/kitchen.gram
diff --git a/RGens/data/sample-grammars/dungeondressing/monster.gram b/data/sample-grammars/dungeondressing/monster.gram
index 47e1417..47e1417 100644
--- a/RGens/data/sample-grammars/dungeondressing/monster.gram
+++ b/data/sample-grammars/dungeondressing/monster.gram
diff --git a/RGens/data/sample-grammars/eastern-sun/easternsunsocketing.gram b/data/sample-grammars/eastern-sun/easternsunsocketing.gram
index 3585220..3585220 100644
--- a/RGens/data/sample-grammars/eastern-sun/easternsunsocketing.gram
+++ b/data/sample-grammars/eastern-sun/easternsunsocketing.gram
diff --git a/RGens/data/sample-grammars/elementals.gram b/data/sample-grammars/elementals.gram
index 30d256f..30d256f 100644
--- a/RGens/data/sample-grammars/elementals.gram
+++ b/data/sample-grammars/elementals.gram
diff --git a/RGens/data/sample-grammars/fantasy-locations.gram b/data/sample-grammars/fantasy-locations.gram
index 1190d68..1190d68 100755
--- a/RGens/data/sample-grammars/fantasy-locations.gram
+++ b/data/sample-grammars/fantasy-locations.gram
diff --git a/RGens/data/sample-grammars/fortune.gram b/data/sample-grammars/fortune.gram
index 8bfce32..8bfce32 100644
--- a/RGens/data/sample-grammars/fortune.gram
+++ b/data/sample-grammars/fortune.gram
diff --git a/RGens/data/sample-grammars/gemstones.gram b/data/sample-grammars/gemstones.gram
index 8f8a579..8f8a579 100644
--- a/RGens/data/sample-grammars/gemstones.gram
+++ b/data/sample-grammars/gemstones.gram
diff --git a/RGens/data/sample-grammars/genre-fiction.gram b/data/sample-grammars/genre-fiction.gram
index 92437d7..92437d7 100755
--- a/RGens/data/sample-grammars/genre-fiction.gram
+++ b/data/sample-grammars/genre-fiction.gram
diff --git a/RGens/data/sample-grammars/horror.gram b/data/sample-grammars/horror.gram
index 07d84de..07d84de 100644
--- a/RGens/data/sample-grammars/horror.gram
+++ b/data/sample-grammars/horror.gram
diff --git a/RGens/data/sample-grammars/insults.gram b/data/sample-grammars/insults.gram
index 98a7a8e..98a7a8e 100644
--- a/RGens/data/sample-grammars/insults.gram
+++ b/data/sample-grammars/insults.gram
diff --git a/RGens/data/sample-grammars/linux.gram b/data/sample-grammars/linux.gram
index ad18d65..ad18d65 100644
--- a/RGens/data/sample-grammars/linux.gram
+++ b/data/sample-grammars/linux.gram
diff --git a/RGens/data/sample-grammars/long-data/animal.gram b/data/sample-grammars/long-data/animal.gram
index 8ce3b9d..8ce3b9d 100644
--- a/RGens/data/sample-grammars/long-data/animal.gram
+++ b/data/sample-grammars/long-data/animal.gram
diff --git a/RGens/data/sample-grammars/long-data/canada-province.gram b/data/sample-grammars/long-data/canada-province.gram
index 8210d42..8210d42 100644
--- a/RGens/data/sample-grammars/long-data/canada-province.gram
+++ b/data/sample-grammars/long-data/canada-province.gram
diff --git a/RGens/data/sample-grammars/long-data/cards.gram b/data/sample-grammars/long-data/cards.gram
index 51a86d4..51a86d4 100644
--- a/RGens/data/sample-grammars/long-data/cards.gram
+++ b/data/sample-grammars/long-data/cards.gram
diff --git a/RGens/data/sample-grammars/long-data/color.gram b/data/sample-grammars/long-data/color.gram
index c71d04d..c71d04d 100644
--- a/RGens/data/sample-grammars/long-data/color.gram
+++ b/data/sample-grammars/long-data/color.gram
diff --git a/RGens/data/sample-grammars/long-data/first-name-female.gram b/data/sample-grammars/long-data/first-name-female.gram
index 0bdfc8b..0bdfc8b 100644
--- a/RGens/data/sample-grammars/long-data/first-name-female.gram
+++ b/data/sample-grammars/long-data/first-name-female.gram
diff --git a/RGens/data/sample-grammars/long-data/first-name-male.gram b/data/sample-grammars/long-data/first-name-male.gram
index 5642f9a..5642f9a 100644
--- a/RGens/data/sample-grammars/long-data/first-name-male.gram
+++ b/data/sample-grammars/long-data/first-name-male.gram
diff --git a/RGens/data/sample-grammars/long-data/geographic-thing.gram b/data/sample-grammars/long-data/geographic-thing.gram
index 178bd7f..178bd7f 100644
--- a/RGens/data/sample-grammars/long-data/geographic-thing.gram
+++ b/data/sample-grammars/long-data/geographic-thing.gram
diff --git a/RGens/data/sample-grammars/long-data/greek-letters.gram b/data/sample-grammars/long-data/greek-letters.gram
index 5976bd1..5976bd1 100644
--- a/RGens/data/sample-grammars/long-data/greek-letters.gram
+++ b/data/sample-grammars/long-data/greek-letters.gram
diff --git a/RGens/data/sample-grammars/long-data/japanese-writing.gram b/data/sample-grammars/long-data/japanese-writing.gram
index f18c6bc..f18c6bc 100644
--- a/RGens/data/sample-grammars/long-data/japanese-writing.gram
+++ b/data/sample-grammars/long-data/japanese-writing.gram
diff --git a/RGens/data/sample-grammars/long-data/last-name.gram b/data/sample-grammars/long-data/last-name.gram
index b99a40c..b99a40c 100644
--- a/RGens/data/sample-grammars/long-data/last-name.gram
+++ b/data/sample-grammars/long-data/last-name.gram
diff --git a/RGens/data/sample-grammars/long-data/letters.gram b/data/sample-grammars/long-data/letters.gram
index f561b99..f561b99 100644
--- a/RGens/data/sample-grammars/long-data/letters.gram
+++ b/data/sample-grammars/long-data/letters.gram
diff --git a/RGens/data/sample-grammars/long-data/nation.gram b/data/sample-grammars/long-data/nation.gram
index d15788d..d15788d 100644
--- a/RGens/data/sample-grammars/long-data/nation.gram
+++ b/data/sample-grammars/long-data/nation.gram
diff --git a/RGens/data/sample-grammars/long-data/numbers.gram b/data/sample-grammars/long-data/numbers.gram
index 8525102..8525102 100644
--- a/RGens/data/sample-grammars/long-data/numbers.gram
+++ b/data/sample-grammars/long-data/numbers.gram
diff --git a/RGens/data/sample-grammars/long-data/planet.gram b/data/sample-grammars/long-data/planet.gram
index 1da1678..1da1678 100644
--- a/RGens/data/sample-grammars/long-data/planet.gram
+++ b/data/sample-grammars/long-data/planet.gram
diff --git a/RGens/data/sample-grammars/long-data/real-city.gram b/data/sample-grammars/long-data/real-city.gram
index 7ca57b9..7ca57b9 100644
--- a/RGens/data/sample-grammars/long-data/real-city.gram
+++ b/data/sample-grammars/long-data/real-city.gram
diff --git a/RGens/data/sample-grammars/long-data/real-company.gram b/data/sample-grammars/long-data/real-company.gram
index f81ec14..f81ec14 100644
--- a/RGens/data/sample-grammars/long-data/real-company.gram
+++ b/data/sample-grammars/long-data/real-company.gram
diff --git a/RGens/data/sample-grammars/long-data/relative.gram b/data/sample-grammars/long-data/relative.gram
index a18e015..a18e015 100644
--- a/RGens/data/sample-grammars/long-data/relative.gram
+++ b/data/sample-grammars/long-data/relative.gram
diff --git a/RGens/data/sample-grammars/long-data/roman-numeral.gram b/data/sample-grammars/long-data/roman-numeral.gram
index 886d44c..886d44c 100644
--- a/RGens/data/sample-grammars/long-data/roman-numeral.gram
+++ b/data/sample-grammars/long-data/roman-numeral.gram
diff --git a/RGens/data/sample-grammars/long-data/syllables.gram b/data/sample-grammars/long-data/syllables.gram
index 925c2aa..925c2aa 100644
--- a/RGens/data/sample-grammars/long-data/syllables.gram
+++ b/data/sample-grammars/long-data/syllables.gram
diff --git a/RGens/data/sample-grammars/long-data/town-name.gram b/data/sample-grammars/long-data/town-name.gram
index e176c7d..e176c7d 100644
--- a/RGens/data/sample-grammars/long-data/town-name.gram
+++ b/data/sample-grammars/long-data/town-name.gram
diff --git a/RGens/data/sample-grammars/long-data/tree.gram b/data/sample-grammars/long-data/tree.gram
index 6fd0f0e..6fd0f0e 100644
--- a/RGens/data/sample-grammars/long-data/tree.gram
+++ b/data/sample-grammars/long-data/tree.gram
diff --git a/RGens/data/sample-grammars/martial-arts.gram b/data/sample-grammars/martial-arts.gram
index 2f9f557..2f9f557 100755
--- a/RGens/data/sample-grammars/martial-arts.gram
+++ b/data/sample-grammars/martial-arts.gram
diff --git a/RGens/data/sample-grammars/mary-sue.gram b/data/sample-grammars/mary-sue.gram
index cb39264..cb39264 100755
--- a/RGens/data/sample-grammars/mary-sue.gram
+++ b/data/sample-grammars/mary-sue.gram
diff --git a/RGens/data/sample-grammars/media.gram b/data/sample-grammars/media.gram
index f3a1c98..f3a1c98 100644
--- a/RGens/data/sample-grammars/media.gram
+++ b/data/sample-grammars/media.gram
diff --git a/RGens/data/sample-grammars/mission.gram b/data/sample-grammars/mission.gram
index e474fcd..e474fcd 100644
--- a/RGens/data/sample-grammars/mission.gram
+++ b/data/sample-grammars/mission.gram
diff --git a/RGens/data/sample-grammars/names.gram b/data/sample-grammars/names.gram
index 104c136..104c136 100644
--- a/RGens/data/sample-grammars/names.gram
+++ b/data/sample-grammars/names.gram
diff --git a/RGens/data/sample-grammars/newspaper.gram b/data/sample-grammars/newspaper.gram
index afa91ee..afa91ee 100644
--- a/RGens/data/sample-grammars/newspaper.gram
+++ b/data/sample-grammars/newspaper.gram
diff --git a/RGens/data/sample-grammars/numbers.gram b/data/sample-grammars/numbers.gram
index 4db84b9..4db84b9 100644
--- a/RGens/data/sample-grammars/numbers.gram
+++ b/data/sample-grammars/numbers.gram
diff --git a/RGens/data/sample-grammars/ordinal.gram b/data/sample-grammars/ordinal.gram
index da4aa4e..da4aa4e 100644
--- a/RGens/data/sample-grammars/ordinal.gram
+++ b/data/sample-grammars/ordinal.gram
diff --git a/RGens/data/sample-grammars/organization.gram b/data/sample-grammars/organization.gram
index 9c88686..9c88686 100644
--- a/RGens/data/sample-grammars/organization.gram
+++ b/data/sample-grammars/organization.gram
diff --git a/RGens/data/sample-grammars/part-creature.gram b/data/sample-grammars/part-creature.gram
index 41bbb83..41bbb83 100755
--- a/RGens/data/sample-grammars/part-creature.gram
+++ b/data/sample-grammars/part-creature.gram
diff --git a/RGens/data/sample-grammars/phone-number.gram b/data/sample-grammars/phone-number.gram
index 163ef4a..163ef4a 100644
--- a/RGens/data/sample-grammars/phone-number.gram
+++ b/data/sample-grammars/phone-number.gram
diff --git a/RGens/data/sample-grammars/pokeattacks.gram b/data/sample-grammars/pokeattacks.gram
index 649f42c..649f42c 100755
--- a/RGens/data/sample-grammars/pokeattacks.gram
+++ b/data/sample-grammars/pokeattacks.gram
diff --git a/RGens/data/sample-grammars/president.gram b/data/sample-grammars/president.gram
index 63b928c..63b928c 100644
--- a/RGens/data/sample-grammars/president.gram
+++ b/data/sample-grammars/president.gram
diff --git a/RGens/data/sample-grammars/rtwiki/adjective.gram b/data/sample-grammars/rtwiki/adjective.gram
index 09168aa..09168aa 100644
--- a/RGens/data/sample-grammars/rtwiki/adjective.gram
+++ b/data/sample-grammars/rtwiki/adjective.gram
diff --git a/RGens/data/sample-grammars/rtwiki/bodyparts.gram b/data/sample-grammars/rtwiki/bodyparts.gram
index 71b4924..71b4924 100644
--- a/RGens/data/sample-grammars/rtwiki/bodyparts.gram
+++ b/data/sample-grammars/rtwiki/bodyparts.gram
diff --git a/RGens/data/sample-grammars/rtwiki/class.gram b/data/sample-grammars/rtwiki/class.gram
index 8fcb17c..8fcb17c 100644
--- a/RGens/data/sample-grammars/rtwiki/class.gram
+++ b/data/sample-grammars/rtwiki/class.gram
diff --git a/RGens/data/sample-grammars/rtwiki/color.gram b/data/sample-grammars/rtwiki/color.gram
index 346f73b..346f73b 100644
--- a/RGens/data/sample-grammars/rtwiki/color.gram
+++ b/data/sample-grammars/rtwiki/color.gram
diff --git a/RGens/data/sample-grammars/rtwiki/creature.gram b/data/sample-grammars/rtwiki/creature.gram
index b3f7b92..b3f7b92 100644
--- a/RGens/data/sample-grammars/rtwiki/creature.gram
+++ b/data/sample-grammars/rtwiki/creature.gram
diff --git a/RGens/data/sample-grammars/rtwiki/death-cause.gram b/data/sample-grammars/rtwiki/death-cause.gram
index 74e58e8..74e58e8 100644
--- a/RGens/data/sample-grammars/rtwiki/death-cause.gram
+++ b/data/sample-grammars/rtwiki/death-cause.gram
diff --git a/RGens/data/sample-grammars/rtwiki/fantasy-name.gram b/data/sample-grammars/rtwiki/fantasy-name.gram
index c4ce02e..c4ce02e 100644
--- a/RGens/data/sample-grammars/rtwiki/fantasy-name.gram
+++ b/data/sample-grammars/rtwiki/fantasy-name.gram
diff --git a/RGens/data/sample-grammars/rtwiki/favorite.gram b/data/sample-grammars/rtwiki/favorite.gram
index ba1468a..ba1468a 100644
--- a/RGens/data/sample-grammars/rtwiki/favorite.gram
+++ b/data/sample-grammars/rtwiki/favorite.gram
diff --git a/RGens/data/sample-grammars/rtwiki/guns.gram b/data/sample-grammars/rtwiki/guns.gram
index 269aa0d..aafab8c 100644
--- a/RGens/data/sample-grammars/rtwiki/guns.gram
+++ b/data/sample-grammars/rtwiki/guns.gram
@@ -1,11 +1,13 @@
[gun-phrase] [quote-gunname] was released today
- [quote-gunname] vs. [quote-gunname] shootout
+ [quote-gunname] vs. [quote-gunname] : which is better
+ [quote-guncorp] 's [quote-gunname] : cost vs. quality
[quote-guncorp] is going out of business
[quote-guncorp] was bought by [quote-guncorp]
+ [quote-guncorp] 's [quote-gunname] vs. [quote-guncorp] 's [quote-gunname] : cost vs. quality
-[quote-gunname] ( [gun-name] )
+[quote-gunname] [gun-name]
-[quote-guncorp] ( [guncorp] )
+[quote-guncorp] [guncorp]
pragma initial-rule [gun-phrase]
diff --git a/RGens/data/sample-grammars/rtwiki/item.gram b/data/sample-grammars/rtwiki/item.gram
index 601710a..fdee69c 100644
--- a/RGens/data/sample-grammars/rtwiki/item.gram
+++ b/data/sample-grammars/rtwiki/item.gram
@@ -23,6 +23,7 @@ pragma initial-rule [item]
mouth
skull
tail
+ [bodypart]
[music] bagpipe
bell
diff --git a/RGens/data/sample-grammars/rtwiki/traits.gram b/data/sample-grammars/rtwiki/traits.gram
index c3ff790..c3ff790 100644
--- a/RGens/data/sample-grammars/rtwiki/traits.gram
+++ b/data/sample-grammars/rtwiki/traits.gram
diff --git a/RGens/data/sample-grammars/rune.gram b/data/sample-grammars/rune.gram
index 4c64e5a..4c64e5a 100755
--- a/RGens/data/sample-grammars/rune.gram
+++ b/data/sample-grammars/rune.gram
diff --git a/RGens/data/sample-grammars/school.gram b/data/sample-grammars/school.gram
index cd9298b..cd9298b 100644
--- a/RGens/data/sample-grammars/school.gram
+++ b/data/sample-grammars/school.gram
diff --git a/RGens/data/sample-grammars/slashdot.gram b/data/sample-grammars/slashdot.gram
index 2b38ee3..2b38ee3 100644
--- a/RGens/data/sample-grammars/slashdot.gram
+++ b/data/sample-grammars/slashdot.gram
diff --git a/RGens/data/sample-grammars/states.gram b/data/sample-grammars/states.gram
index 43f1402..43f1402 100644
--- a/RGens/data/sample-grammars/states.gram
+++ b/data/sample-grammars/states.gram
diff --git a/RGens/data/sample-grammars/superhero.gram b/data/sample-grammars/superhero.gram
index cdb609f..cdb609f 100755
--- a/RGens/data/sample-grammars/superhero.gram
+++ b/data/sample-grammars/superhero.gram
diff --git a/RGens/data/sample-grammars/tarotcard.gram b/data/sample-grammars/tarotcard.gram
index 43741a0..43741a0 100755
--- a/RGens/data/sample-grammars/tarotcard.gram
+++ b/data/sample-grammars/tarotcard.gram
diff --git a/RGens/data/sample-grammars/technobabble.gram b/data/sample-grammars/technobabble.gram
index 3861576..3861576 100755
--- a/RGens/data/sample-grammars/technobabble.gram
+++ b/data/sample-grammars/technobabble.gram
diff --git a/RGens/data/sample-grammars/theory.gram b/data/sample-grammars/theory.gram
index af2ce49..af2ce49 100644
--- a/RGens/data/sample-grammars/theory.gram
+++ b/data/sample-grammars/theory.gram
diff --git a/RGens/data/sample-grammars/trademark.gram b/data/sample-grammars/trademark.gram
index 7ec2fef..7ec2fef 100644
--- a/RGens/data/sample-grammars/trademark.gram
+++ b/data/sample-grammars/trademark.gram
diff --git a/RGens/data/sample-grammars/vaultsofnagoh/turboghoul-hats.gram b/data/sample-grammars/vaultsofnagoh/turboghoul-hats.gram
index e0a21d3..57eef10 100644
--- a/RGens/data/sample-grammars/vaultsofnagoh/turboghoul-hats.gram
+++ b/data/sample-grammars/vaultsofnagoh/turboghoul-hats.gram
@@ -1,15 +1,22 @@
-[turboghoul-hat] sack with eyeholes
- bucket with eyeholes
- coalscuttle with eyeholes
+[turboghoul-hat] sack
+ bucket
+ coalscuttle
[mask]
[headscarf]
[hood]
[turban]
- ]hat]
+ [hat]
[helmet]
birdcage
goldfish bowl
+pragma initial-rule [turboghoul-hat]
+
+[eyeholes] with eyeholes
+ with an eyehole
+
+pragma suffix-with [turboghoul-hat] [eyeholes]
+
[mask] [mask-type] mask
[mask-type] clown
diff --git a/RGens/data/sample-grammars/web.gram b/data/sample-grammars/web.gram
index 357fc36..357fc36 100644
--- a/RGens/data/sample-grammars/web.gram
+++ b/data/sample-grammars/web.gram
diff --git a/RGens/data/sample-grammars/zadrons-pouch.gram b/data/sample-grammars/zadrons-pouch.gram
index f72cf25..f72cf25 100755
--- a/RGens/data/sample-grammars/zadrons-pouch.gram
+++ b/data/sample-grammars/zadrons-pouch.gram
diff --git a/RGens/data/seniordesign/dbdata.gram b/data/seniordesign/dbdata.gram
index 04938ad..04938ad 100644
--- a/RGens/data/seniordesign/dbdata.gram
+++ b/data/seniordesign/dbdata.gram
diff --git a/RGens/data/server-config-sample.cfg b/data/server-config-sample.cfg
index cc0dc1f..90d3baf 100644
--- a/RGens/data/server-config-sample.cfg
+++ b/data/server-config-sample.cfg
@@ -79,6 +79,9 @@ diabloii-perish sample-grammars/diablo-ii/diabloiiperish.gram
diabloii-prefixes sample-grammars/diablo-ii/diabloiiprefixes.gram
diabloii-suffixes sample-grammars/diablo-ii/diabloiisuffixes.gram
+# Vaults of Nagoh
+turboghoul-hats sample-grammars/vaultsofnagoh/turboghoul-hats.gram
+
# Set II of grammars
repinsults new-sample-grammars/repinsult.gram
diff --git a/RGens/data/todos.txt b/data/todos.txt
index 1de8841..1de8841 100644
--- a/RGens/data/todos.txt
+++ b/data/todos.txt
diff --git a/RGens/dotest.sh b/dotest.sh
index a39a012..a39a012 100755
--- a/RGens/dotest.sh
+++ b/dotest.sh
diff --git a/RGens/pom.xml b/pom.xml
index 1bb647e..1bb647e 100644
--- a/RGens/pom.xml
+++ b/pom.xml
diff --git a/RGens/src/main/java/bjc/rgens/ZadronsPouch.java b/src/main/java/bjc/rgens/ZadronsPouch.java
index 827d022..827d022 100644
--- a/RGens/src/main/java/bjc/rgens/ZadronsPouch.java
+++ b/src/main/java/bjc/rgens/ZadronsPouch.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/GrammarException.java b/src/main/java/bjc/rgens/parser/GrammarException.java
index 9eaa0a1..9eaa0a1 100644
--- a/RGens/src/main/java/bjc/rgens/parser/GrammarException.java
+++ b/src/main/java/bjc/rgens/parser/GrammarException.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/RGrammar.java b/src/main/java/bjc/rgens/parser/RGrammar.java
index 38f38c8..38f38c8 100644
--- a/RGens/src/main/java/bjc/rgens/parser/RGrammar.java
+++ b/src/main/java/bjc/rgens/parser/RGrammar.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/RGrammarBuilder.java b/src/main/java/bjc/rgens/parser/RGrammarBuilder.java
index b4cb04a..b4cb04a 100644
--- a/RGens/src/main/java/bjc/rgens/parser/RGrammarBuilder.java
+++ b/src/main/java/bjc/rgens/parser/RGrammarBuilder.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/RGrammarFormatter.java b/src/main/java/bjc/rgens/parser/RGrammarFormatter.java
index a2454dc..a2454dc 100644
--- a/RGens/src/main/java/bjc/rgens/parser/RGrammarFormatter.java
+++ b/src/main/java/bjc/rgens/parser/RGrammarFormatter.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/RGrammarParser.java b/src/main/java/bjc/rgens/parser/RGrammarParser.java
index 3a357b1..3a357b1 100644
--- a/RGens/src/main/java/bjc/rgens/parser/RGrammarParser.java
+++ b/src/main/java/bjc/rgens/parser/RGrammarParser.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/RGrammarSet.java b/src/main/java/bjc/rgens/parser/RGrammarSet.java
index 975510a..975510a 100644
--- a/RGens/src/main/java/bjc/rgens/parser/RGrammarSet.java
+++ b/src/main/java/bjc/rgens/parser/RGrammarSet.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/RGrammarTest.java b/src/main/java/bjc/rgens/parser/RGrammarTest.java
index 4b1f283..4b1f283 100644
--- a/RGens/src/main/java/bjc/rgens/parser/RGrammarTest.java
+++ b/src/main/java/bjc/rgens/parser/RGrammarTest.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/RGrammars.java b/src/main/java/bjc/rgens/parser/RGrammars.java
index f74a756..f74a756 100644
--- a/RGens/src/main/java/bjc/rgens/parser/RGrammars.java
+++ b/src/main/java/bjc/rgens/parser/RGrammars.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/RegexRuleCase.java b/src/main/java/bjc/rgens/parser/RegexRuleCase.java
index 5e03cd6..5e03cd6 100644
--- a/RGens/src/main/java/bjc/rgens/parser/RegexRuleCase.java
+++ b/src/main/java/bjc/rgens/parser/RegexRuleCase.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/Rule.java b/src/main/java/bjc/rgens/parser/Rule.java
index 7043e0f..7043e0f 100644
--- a/RGens/src/main/java/bjc/rgens/parser/Rule.java
+++ b/src/main/java/bjc/rgens/parser/Rule.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/RuleCase.java b/src/main/java/bjc/rgens/parser/RuleCase.java
index 9c0a856..9c0a856 100644
--- a/RGens/src/main/java/bjc/rgens/parser/RuleCase.java
+++ b/src/main/java/bjc/rgens/parser/RuleCase.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/elements/BlankCaseElement.java b/src/main/java/bjc/rgens/parser/elements/BlankCaseElement.java
index 7229e92..7229e92 100644
--- a/RGens/src/main/java/bjc/rgens/parser/elements/BlankCaseElement.java
+++ b/src/main/java/bjc/rgens/parser/elements/BlankCaseElement.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/elements/CaseElement.java b/src/main/java/bjc/rgens/parser/elements/CaseElement.java
index d74ab52..d74ab52 100644
--- a/RGens/src/main/java/bjc/rgens/parser/elements/CaseElement.java
+++ b/src/main/java/bjc/rgens/parser/elements/CaseElement.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/elements/ExpVariableCaseElement.java b/src/main/java/bjc/rgens/parser/elements/ExpVariableCaseElement.java
index 30925e2..30925e2 100644
--- a/RGens/src/main/java/bjc/rgens/parser/elements/ExpVariableCaseElement.java
+++ b/src/main/java/bjc/rgens/parser/elements/ExpVariableCaseElement.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/elements/LitVariableCaseElement.java b/src/main/java/bjc/rgens/parser/elements/LitVariableCaseElement.java
index 11035b1..11035b1 100644
--- a/RGens/src/main/java/bjc/rgens/parser/elements/LitVariableCaseElement.java
+++ b/src/main/java/bjc/rgens/parser/elements/LitVariableCaseElement.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/elements/LiteralCaseElement.java b/src/main/java/bjc/rgens/parser/elements/LiteralCaseElement.java
index d96a32d..d96a32d 100644
--- a/RGens/src/main/java/bjc/rgens/parser/elements/LiteralCaseElement.java
+++ b/src/main/java/bjc/rgens/parser/elements/LiteralCaseElement.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/elements/RangeCaseElement.java b/src/main/java/bjc/rgens/parser/elements/RangeCaseElement.java
index d98bc61..d98bc61 100644
--- a/RGens/src/main/java/bjc/rgens/parser/elements/RangeCaseElement.java
+++ b/src/main/java/bjc/rgens/parser/elements/RangeCaseElement.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/elements/RuleCaseElement.java b/src/main/java/bjc/rgens/parser/elements/RuleCaseElement.java
index f4d3512..f4d3512 100644
--- a/RGens/src/main/java/bjc/rgens/parser/elements/RuleCaseElement.java
+++ b/src/main/java/bjc/rgens/parser/elements/RuleCaseElement.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/elements/StringCaseElement.java b/src/main/java/bjc/rgens/parser/elements/StringCaseElement.java
index 0e64fd3..0e64fd3 100644
--- a/RGens/src/main/java/bjc/rgens/parser/elements/StringCaseElement.java
+++ b/src/main/java/bjc/rgens/parser/elements/StringCaseElement.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/elements/VariableCaseElement.java b/src/main/java/bjc/rgens/parser/elements/VariableCaseElement.java
index 920445a..920445a 100644
--- a/RGens/src/main/java/bjc/rgens/parser/elements/VariableCaseElement.java
+++ b/src/main/java/bjc/rgens/parser/elements/VariableCaseElement.java
diff --git a/RGens/src/main/java/bjc/rgens/parser/new-syntax.txt b/src/main/java/bjc/rgens/parser/new-syntax.txt
index f6578b4..f6578b4 100644
--- a/RGens/src/main/java/bjc/rgens/parser/new-syntax.txt
+++ b/src/main/java/bjc/rgens/parser/new-syntax.txt
diff --git a/RGens/src/main/java/bjc/rgens/text/markov/Markov.java b/src/main/java/bjc/rgens/text/markov/Markov.java
index e21d60f..e21d60f 100644
--- a/RGens/src/main/java/bjc/rgens/text/markov/Markov.java
+++ b/src/main/java/bjc/rgens/text/markov/Markov.java
diff --git a/RGens/src/main/java/bjc/rgens/text/markov/StandaloneMarkov.java b/src/main/java/bjc/rgens/text/markov/StandaloneMarkov.java
index cebf2bc..cebf2bc 100644
--- a/RGens/src/main/java/bjc/rgens/text/markov/StandaloneMarkov.java
+++ b/src/main/java/bjc/rgens/text/markov/StandaloneMarkov.java
diff --git a/RGens/src/main/java/bjc/rgens/text/markov/StandaloneTextGenerator.java b/src/main/java/bjc/rgens/text/markov/StandaloneTextGenerator.java
index 339e8d5..339e8d5 100644
--- a/RGens/src/main/java/bjc/rgens/text/markov/StandaloneTextGenerator.java
+++ b/src/main/java/bjc/rgens/text/markov/StandaloneTextGenerator.java
diff --git a/RGens/src/main/java/bjc/rgens/text/markov/TextGenerator.java b/src/main/java/bjc/rgens/text/markov/TextGenerator.java
index f629d49..f629d49 100644
--- a/RGens/src/main/java/bjc/rgens/text/markov/TextGenerator.java
+++ b/src/main/java/bjc/rgens/text/markov/TextGenerator.java
diff --git a/RGens/src/main/sql/db_schema.sql b/src/main/sql/db_schema.sql
index 553c7a8..553c7a8 100644
--- a/RGens/src/main/sql/db_schema.sql
+++ b/src/main/sql/db_schema.sql
diff --git a/RGens/todos.txt b/todos.txt
index e4e39cd..e4e39cd 100644
--- a/RGens/todos.txt
+++ b/todos.txt