diff --git a/lib/convert.js b/lib/convert.js
index 7e12465..1b894a0 100644
--- a/lib/convert.js
+++ b/lib/convert.js
@@ -276,8 +276,12 @@ function getBodyXML(chapter, contentEl) {
// This is consistently missing accents
xml = xml.replace(/Yangban/g, "Yàngbǎn");
- // In addition to one-off fixes for north/south/east/west in substitutions.json, we can consistently fix "North end".
+ // Place names need to always be capitalized
xml = xml.replace(/North end/g, "North End");
+ xml = xml.replace(/Stonemast avenue/g, "Stonemast Avenue");
+ xml = xml.replace(/Shale avenue/g, "Shale Avenue");
+ xml = xml.replace(/Lord street/g, "Lord Street");
+ xml = xml.replace(/Slater street/g, "Slater Street");
// These are usually not italicized, but sometimes are. Other foreign-language names (like Yàngbǎn) are not
// italicized, so we go in the direction of removing the italics.
@@ -300,7 +304,9 @@ function getBodyXML(chapter, contentEl) {
// These are consistently missing hyphens.
xml = xml.replace(/shoulder mounted/g, "shoulder-mounted");
- xml = xml.replace(/golden skinned/, "golden-skinned");
+ xml = xml.replace(/golden skinned/g, "golden-skinned");
+ xml = xml.replace(/creepy crawl/g, "creepy-crawl");
+ xml = xml.replace(/well armed/g, "well-armed");
// One-off fixes
(substitutions[chapter.url] || []).forEach(substitution => {
diff --git a/lib/substitutions.json b/lib/substitutions.json
index e7bb42b..53941cd 100644
--- a/lib/substitutions.json
+++ b/lib/substitutions.json
@@ -15,10 +15,6 @@
"before": "each others houses",
"after": "each others’ houses"
},
- {
- "before": "creepy crawly",
- "after": "creepy-crawly"
- },
{
"before": "x-acto",
"after": "X-Acto"
@@ -1368,6 +1364,32 @@
"after": "“…things are"
}
],
+ "https://parahumans.wordpress.com/2012/04/24/parasite-10-1/": [
+ {
+ "before": "one shoulder, “Scout",
+ "after": "one shoulder. “Scout"
+ },
+ {
+ "before": "king sized",
+ "after": "king-sized"
+ },
+ {
+ "before": "one side, “What’s",
+ "after": "one side. “What’s"
+ },
+ {
+ "before": "lights.",
+ "after": "lights."
+ },
+ {
+ "before": "groaning, “It’s",
+ "after": "groaning. “It’s"
+ },
+ {
+ "before": "mp3",
+ "after": "MP3"
+ }
+ ],
"https://parahumans.wordpress.com/2012/04/28/parasite-10-2/": [
{
"before": "So,” Weld said. “Keeping",
@@ -1376,12 +1398,134 @@
{
"before": "Master in the city",
"after": "master in the city"
+ },
+ {
+ "before": "“You gotta be kidding.”",
+ "after": "“You gotta be kidding.”"
+ },
+ {
+ "before": "frowned, “Why did",
+ "after": "frowned. “Why did"
+ },
+ {
+ "before": "then sighed, “And",
+ "after": "then sighed. “And"
+ },
+ {
+ "before": "rose, “I seem",
+ "after": "rose. “I seem"
+ },
+ {
+ "before": "to Brian, “You",
+ "after": "to Brian. “You"
+ },
+ {
+ "before": "in, “He’s not",
+ "after": "in, “he’s not"
+ },
+ {
+ "before": "his head, “You",
+ "after": "his head. “You"
+ },
+ {
+ "before": "quiet, “I just",
+ "after": "quiet. “I just"
+ },
+ {
+ "before": "Brian, “You’re",
+ "after": "Brian. “You’re"
+ },
+ {
+ "before": "Why? Why come",
+ "after": "Why? Why come"
+ },
+ {
+ "before": "‘Sides",
+ "after": "’Sides"
+ },
+ {
+ "before": "low, “If mistrust",
+ "after": "low, “if mistrust"
+ },
+ {
+ "before": "disinterested, “Don’t waste",
+ "after": "disinterested. “Don’t waste"
+ },
+ {
+ "before": "highest rated",
+ "after": "highest-rated"
+ },
+ {
+ "before": "Six-six-two",
+ "after": "six-six-two"
+ }
+ ],
+ "https://parahumans.wordpress.com/2012/05/01/parasite-10-3/": [
+ {
+ "before": "Regent doesn’t exactly",
+ "after": "Regent didn’t exactly"
+ },
+ {
+ "before": "powers, I knew",
+ "after": "powers; I knew"
+ },
+ {
+ "before": "shouted, “Charge Kid",
+ "after": "shouted. “Charge Kid"
+ },
+ {
+ "before": "When the dog",
+ "after": "The dog"
+ }
+ ],
+ "https://parahumans.wordpress.com/2012/05/05/parasite-10-4/": [
+ {
+ "before": "Epeios’",
+ "after": "Epeios’s"
+ },
+ {
+ "before": "sinous",
+ "after": "sinuous"
}
],
"https://parahumans.wordpress.com/2012/05/08/parasite-10-5/": [
{
"before": "&",
"after": "and"
+ },
+ {
+ "before": "voice low, “This",
+ "after": "voice low. “This"
+ },
+ {
+ "before": "gift shop, We’ll meet",
+ "after": "gift shop; we’ll meet"
+ },
+ {
+ "before": "fetus, the features",
+ "after": "fetus: the features"
+ }
+ ],
+ "https://parahumans.wordpress.com/2012/05/12/parasite-10-6/": [
+ {
+ "before": "face me, “Shot?",
+ "after": "face me. “Shot?"
+ },
+ {
+ "before": "from Bitch, “Just",
+ "after": "from Bitch, “just"
+ },
+ {
+ "before": "tone bored, “Her",
+ "after": "tone bored. “Her"
+ },
+ {
+ "before": "fucked upness",
+ "after": "fucked-upness"
+ },
+ {
+ "before": "intimidated, “Will work",
+ "after": "intimidated, “will work"
}
],
"https://parahumans.wordpress.com/2012/05/15/interlude-10/": [
@@ -1392,6 +1536,14 @@
{
"before": "said,” Regent shrugged. “Anger",
"after": "said,” Regent shrugged, “anger"
+ },
+ {
+ "before": "the fuck soph",
+ "after": "the fuck Soph"
+ },
+ {
+ "before": "“Mom!” He",
+ "after": "“Mom!” he"
}
],
"https://parahumans.wordpress.com/2012/05/17/interlude-10-5-bonus/": [
@@ -1402,6 +1554,34 @@
{
"before": "thinker 7",
"after": "thinker seven"
+ },
+ {
+ "before": "The Guild",
+ "after": "the Guild"
+ },
+ {
+ "before": "accented voice, “You",
+ "after": "accented voice, “you"
+ },
+ {
+ "before": "spoke, “Then I",
+ "after": "spoke. “Then I"
+ },
+ {
+ "before": "table top, “If you",
+ "after": "tabletop. “If you"
+ },
+ {
+ "before": "the Ocean",
+ "after": "the ocean"
+ },
+ {
+ "before": "completion?” She",
+ "after": "completion?” she"
+ },
+ {
+ "before": "high risk",
+ "after": "high-risk"
}
],
"https://parahumans.wordpress.com/2012/05/19/infestation-11-1/": [