Correct PRT designation capitalizations and punctuation

* Lowercase them; the earlier parts of the story uppercased them.
* Consistently omit hyphens in numbered cases like "tinker seven", and ensure they're spelled out in dialogue.
* Consistently use en dashes between dual classifications, like "tinker–mover".
* Consistently hyphenate when part of a compound adjective, like "tinker-made".
This commit is contained in:
Domenic Denicola 2017-11-11 13:34:10 -08:00
commit d114305b65
2 changed files with 177 additions and 0 deletions

View file

@ -229,6 +229,26 @@ function getBodyXML(chapter, contentEl) {
// This is sometimes missing its capitalization
xml = xml.replace(/the birdcage/g, "the Birdcage");
// Especially early in the story, PRT designations are capitalized; they should not be. This fixes the cases where we
// can be reasonably sure they don't start a sentence, although more specific instances are done in
// substitutions.json, and some need to be back-corrected.
//
// Note: "Master" is specifically omitted because it fails poorly on Interlude 4. Other instances need to be
// corrected via substitutions.json.
xml = xml.replace(
/([a-zA-Z,] |\/)(Mover|Shaker|Brute|Breaker|Tinker|Blaster|Thinker|Striker|Changer|Trump|Stranger|Shifter|Shaper)/g,
(_, prefix, designation) => prefix + designation.toLowerCase()
);
xml = xml.replace(
/(mover|shaker|brute|breaker|tinker|blaster|thinker|master|striker|changer|trump|stranger|shifter|shaper)-(\d+)/gi,
"$1 $2"
);
xml = xml.replace(
// eslint-disable-next-line max-len
/(mover|shaker|brute|breaker|tinker|blaster|thinker|master|striker|changer|trump|stranger|shifter|shaper)[ -/](mover|shaker|brute|breaker|tinker|blaster|thinker|master|striker|changer|trump|stranger|shifter|shaper)/gi,
"$1$2"
);
// This is consistently missing accents
xml = xml.replace(/Yangban/g, "Yàngbǎn");

View file

@ -198,6 +198,10 @@
{
"before": "guys,” Gallant said. “Before",
"after": "guys,” Gallant said, “before"
},
{
"before": "tinker created",
"after": "tinker-created"
}
],
"https://parahumans.wordpress.com/2011/09/24/shell-4-1/": [
@ -556,6 +560,22 @@
{
"before": "I—Yes.",
"after": "I— Yes."
},
{
"before": "brute 4-9",
"after": "brute four-nine"
},
{
"before": "blaster 2-6",
"after": "blaster two-six"
},
{
"before": "tinker 6",
"after": "tinker six"
},
{
"before": "Master 8",
"after": "master eight"
}
],
"https://parahumans.wordpress.com/2012/01/17/buzz-7-1/": [
@ -782,6 +802,10 @@
{
"before": "Northwest",
"after": "northwest"
},
{
"before": "Master 5",
"after": "master five"
}
],
"https://parahumans.wordpress.com/2012/03/24/extermination-8-7/": [
@ -792,6 +816,14 @@
{
"before": "here,” Grue spoke. “You",
"after": "here,” Grue spoke, “you"
},
{
"before": "thinker 7",
"after": "thinker seven"
},
{
"before": "Master 5",
"after": "Master five"
}
],
"https://parahumans.wordpress.com/2012/03/08/interlude-7%c2%bd-bonus/": [
@ -810,6 +842,102 @@
"after": "other: another"
}
],
"https://parahumans.wordpress.com/2012/04/03/cell-9-1/": [
{
"before": "striker 7",
"after": "striker seven"
},
{
"before": "shaker 9",
"after": "shaker nine"
},
{
"before": "tinker 4",
"after": "tinker four"
},
{
"before": "Breaker 3",
"after": "Breaker three"
},
{
"before": "stranger 2",
"after": "stranger two"
},
{
"before": "mover 1",
"after": "mover one"
},
{
"before": "shaker 2",
"after": "shaker two"
},
{
"before": "tinker 2",
"after": "tinker two"
},
{
"before": "/mover 3",
"after": " slash mover three"
},
{
"before": "shifter 4",
"after": "shifter four"
},
{
"before": "shaper 4",
"after": "shaper four"
},
{
"before": "brute 7",
"after": "brute seven"
},
{
"before": "blaster 8",
"after": "blaster eight"
},
{
"before": "mover 4",
"after": "mover four"
},
{
"before": "breaker 9",
"after": "breaker nine"
},
{
"before": "shifter 8",
"after": "shifter eight"
},
{
"before": "stranger 3",
"after": "stranger three"
},
{
"before": "Master 6",
"after": "master six"
},
{
"before": "shaker 12",
"after": "shaker twelve"
},
{
"before": "Tinker designed",
"after": "Tinker-designed"
},
{
"before": "three Master classifications",
"after": "three master classifications"
}
],
"https://parahumans.wordpress.com/2012/04/07/sentinel-9-2/": [
{
"before": "Tinker made",
"after": "Tinker-made"
},
{
"before": "Master 6",
"after": "master six"
}
],
"https://parahumans.wordpress.com/2012/04/17/sentinel-9-5/": [
{
"before": "clothes: A",
@ -824,6 +952,10 @@
{
"before": "So,” Weld said. “Keeping",
"after": "So,” Weld said, “keeping"
},
{
"before": "Master in the city",
"after": "master in the city"
}
],
"https://parahumans.wordpress.com/2012/05/08/parasite-10-5/": [
@ -846,6 +978,10 @@
{
"before": "me,” Lung said. “And",
"after": "me,” Lung said, “and"
},
{
"before": "thinker 7",
"after": "thinker seven"
}
],
"https://parahumans.wordpress.com/2012/05/19/infestation-11-1/": [
@ -1494,6 +1630,10 @@
{
"before": "Well,” Tattletale said. “Funny",
"after": "Well,” Tattletale said, “funny"
},
{
"before": "stranger class",
"after": "stranger-class"
}
],
"https://parahumans.wordpress.com/2013/02/05/monarch-18-6/": [
@ -1715,6 +1855,11 @@
{
"before": "South",
"after": "south"
},
{
"before": "Unfortunate tinker",
"after": "Unfortunate tinker",
"_comment": "See convert.js; this corrects an over-correction"
}
],
"https://parahumans.wordpress.com/2013/03/21/chrysalis-20-1/": [
@ -2153,6 +2298,10 @@
{
"before": "up,” I said. “The",
"after": "up,” I said, “the"
},
{
"before": "Master and stranger",
"after": "master and stranger"
}
],
"https://parahumans.wordpress.com/2013/07/20/sting-26-2/": [
@ -2451,6 +2600,10 @@
{
"before": "Eastern standard time",
"after": "Eastern Standard Time"
},
{
"before": "Master class cape",
"after": "master-class cape"
}
],
"https://parahumans.wordpress.com/2013/09/21/venom-29-2/": [
@ -2565,6 +2718,10 @@
{
"before": "Ladies!” One called",
"after": "Ladies!” one called"
},
{
"before": "Stranger and Master",
"after": "Stranger and master"
}
],
"https://parahumans.wordpress.com/2013/10/19/speck-30-3/": [