Dave Jarvis' Repositories

git clone https://repo.autonoma.ca/repo/keenwrite.git

Renamed to Scrivenvar.

Authordjarvis <email>
Date2016-11-22 15:00:19 GMT-0800
Commit1ba082892b4cd1a183902718d5772b2495546afa
Parent5dc4333
Delta1072 lines added, 0 lines removed, 1072-line increase
src/main/resources/com/scrivenvar/preview/pane.css
+/*
+This software is released under the MIT license:
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+*/
+
+/* Source: https://github.com/nicolashery/markdownpad-github */
+
+/* GitHub stylesheet for MarkdownPad (http://markdownpad.com) */
+
+/* RESET
+=============================================================================*/
+
+html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
+ margin: 0;
+ padding: 0;
+ border: 0;
+}
+
+/* BODY
+=============================================================================*/
+
+body {
+ font-family: Helvetica, arial, freesans, clean, sans-serif;
+ font-size: 14px;
+ line-height: 1.6;
+ color: #333;
+ background-color: #fff;
+ padding: 20px;
+ max-width: 960px;
+ margin: 0 auto;
+}
+
+body>*:first-child {
+ margin-top: 0 !important;
+}
+
+body>*:last-child {
+ margin-bottom: 0 !important;
+}
+
+/* BLOCKS
+=============================================================================*/
+
+p, blockquote, ul, ol, dl, table, pre {
+ margin: 15px 0;
+}
+
+/* HEADERS
+=============================================================================*/
+
+h1, h2, h3, h4, h5, h6 {
+ margin: 20px 0 10px;
+ padding: 0;
+ font-weight: bold;
+ -webkit-font-smoothing: antialiased;
+}
+
+h1 tt, h1 code, h2 tt, h2 code, h3 tt, h3 code, h4 tt, h4 code, h5 tt, h5 code, h6 tt, h6 code {
+ font-size: inherit;
+}
+
+h1 {
+ font-size: 28px;
+ color: #000;
+}
+
+h2 {
+ font-size: 24px;
+ border-bottom: 1px solid #ccc;
+ color: #000;
+}
+
+h3 {
+ font-size: 18px;
+}
+
+h4 {
+ font-size: 16px;
+}
+
+h5 {
+ font-size: 14px;
+}
+
+h6 {
+ color: #777;
+ font-size: 14px;
+}
+
+body>h2:first-child, body>h1:first-child, body>h1:first-child+h2, body>h3:first-child, body>h4:first-child, body>h5:first-child, body>h6:first-child {
+ margin-top: 0;
+ padding-top: 0;
+}
+
+a:first-child h1, a:first-child h2, a:first-child h3, a:first-child h4, a:first-child h5, a:first-child h6 {
+ margin-top: 0;
+ padding-top: 0;
+}
+
+h1+p, h2+p, h3+p, h4+p, h5+p, h6+p {
+ margin-top: 10px;
+}
+
+/* LINKS
+=============================================================================*/
+
+a {
+ color: #4183C4;
+ text-decoration: none;
+}
+
+a:hover {
+ text-decoration: underline;
+}
+
+/* LISTS
+=============================================================================*/
+
+ul, ol {
+ padding-left: 30px;
+}
+
+ul li > :first-child,
+ol li > :first-child,
+ul li ul:first-of-type,
+ol li ol:first-of-type,
+ul li ol:first-of-type,
+ol li ul:first-of-type {
+ margin-top: 0px;
+}
+
+ul ul, ul ol, ol ol, ol ul {
+ margin-bottom: 0;
+}
+
+dl {
+ padding: 0;
+}
+
+dl dt {
+ font-size: 14px;
+ font-weight: bold;
+ font-style: italic;
+ padding: 0;
+ margin: 15px 0 5px;
+}
+
+dl dt:first-child {
+ padding: 0;
+}
+
+dl dt>:first-child {
+ margin-top: 0px;
+}
+
+dl dt>:last-child {
+ margin-bottom: 0px;
+}
+
+dl dd {
+ margin: 0 0 15px;
+ padding: 0 15px;
+}
+
+dl dd>:first-child {
+ margin-top: 0px;
+}
+
+dl dd>:last-child {
+ margin-bottom: 0px;
+}
+
+/* CODE
+=============================================================================*/
+
+pre, code, tt {
+ font-size: 12px;
+ font-family: Consolas, "Liberation Mono", Courier, monospace;
+}
+
+code, tt {
+ margin: 0 0px;
+ padding: 0px 0px;
+ white-space: nowrap;
+ border: 1px solid #eaeaea;
+ background-color: #f8f8f8;
+ border-radius: 3px;
+}
+
+pre>code {
+ margin: 0;
+ padding: 0;
+ white-space: pre;
+ border: none;
+ background: transparent;
+}
+
+pre {
+ background-color: #f8f8f8;
+ border: 1px solid #ccc;
+ font-size: 13px;
+ line-height: 19px;
+ overflow: auto;
+ padding: 6px 10px;
+ border-radius: 3px;
+}
+
+pre code, pre tt {
+ background-color: transparent;
+ border: none;
+}
+
+kbd {
+ -moz-border-bottom-colors: none;
+ -moz-border-left-colors: none;
+ -moz-border-right-colors: none;
+ -moz-border-top-colors: none;
+ background-color: #DDDDDD;
+ background-image: linear-gradient(#F1F1F1, #DDDDDD);
+ background-repeat: repeat-x;
+ border-color: #DDDDDD #CCCCCC #CCCCCC #DDDDDD;
+ border-image: none;
+ border-radius: 2px 2px 2px 2px;
+ border-style: solid;
+ border-width: 1px;
+ font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
+ line-height: 10px;
+ padding: 1px 4px;
+}
+
+/* QUOTES
+=============================================================================*/
+
+blockquote {
+ border-left: 4px solid #DDD;
+ padding: 0 15px;
+ color: #777;
+}
+
+blockquote>:first-child {
+ margin-top: 0px;
+}
+
+blockquote>:last-child {
+ margin-bottom: 0px;
+}
+
+/* HORIZONTAL RULES
+=============================================================================*/
+
+hr {
+ clear: both;
+ margin: 15px 0;
+ height: 0px;
+ overflow: hidden;
+ border: none;
+ background: transparent;
+ border-bottom: 4px solid #ddd;
+ padding: 0;
+}
+
+/* TABLES
+=============================================================================*/
+
+table th {
+ font-weight: bold;
+}
+
+table th, table td {
+ border: 1px solid #ccc;
+ padding: 6px 13px;
+}
+
+table tr {
+ border-top: 1px solid #ccc;
+ background-color: #fff;
+}
+
+table tr:nth-child(2n) {
+ background-color: #f8f8f8;
+}
+
+/* IMAGES
+=============================================================================*/
+
+img {
+ max-width: 100%
+}
src/main/resources/com/scrivenvar/logo128.png
Binary files differ
src/main/resources/com/scrivenvar/logo16.png
Binary files differ
src/main/resources/com/scrivenvar/logo256.png
Binary files differ
src/main/resources/com/scrivenvar/logo32.png
Binary files differ
src/main/resources/com/scrivenvar/logo512.png
Binary files differ
src/main/resources/com/scrivenvar/logo64.png
Binary files differ
src/main/resources/com/scrivenvar/messages.properties
+#
+# Copyright 2016 Karl Tauber and White Magic Software, Ltd.
+#
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# * 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.
+#
+# 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
+# HOLDER 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.
+#
+
+# ########################################################################
+#
+# Main Application Window
+#
+# ########################################################################
+
+# The application title should exist only once in the entire code base.
+# All other references should either refer to this value via the Messages
+# class, or indirectly using ${Main.title}.
+Main.title=Scrivenvar
+
+Main.menu.file=_File
+Main.menu.file.new=New
+Main.menu.file.open=Open...
+Main.menu.file.close=Close
+Main.menu.file.close_all=Close All
+Main.menu.file.save=Save
+Main.menu.file.save_all=Save All
+Main.menu.file.exit=Exit
+
+Main.menu.edit=_Edit
+Main.menu.edit.undo=Undo
+Main.menu.edit.redo=Redo
+
+Main.menu.insert=_Insert
+Main.menu.insert.bold=Bold
+Main.menu.insert.italic=Italic
+Main.menu.insert.strikethrough=Strikethrough
+Main.menu.insert.blockquote=Blockquote
+Main.menu.insert.code=Inline Code
+Main.menu.insert.fenced_code_block=Fenced Code Block
+Main.menu.insert.fenced_code_block.prompt=Enter code here
+Main.menu.insert.link=Link...
+Main.menu.insert.image=Image...
+Main.menu.insert.header_1=Header 1
+Main.menu.insert.header_1.prompt=header 1
+Main.menu.insert.header_2=Header 2
+Main.menu.insert.header_2.prompt=header 2
+Main.menu.insert.header_3=Header 3
+Main.menu.insert.header_3.prompt=header 3
+Main.menu.insert.header_4=Header 4
+Main.menu.insert.header_4.prompt=header 4
+Main.menu.insert.header_5=Header 5
+Main.menu.insert.header_5.prompt=header 5
+Main.menu.insert.header_6=Header 6
+Main.menu.insert.header_6.prompt=header 6
+Main.menu.insert.unordered_list=Unordered List
+Main.menu.insert.ordered_list=Ordered List
+Main.menu.insert.horizontal_rule=Horizontal Rule
+
+Main.menu.tools=_Tools
+Main.menu.tools.options=Options
+
+Main.menu.help=_Help
+Main.menu.help.about=About ${Main.title}
+
+# ########################################################################
+#
+# About Dialog
+#
+# ########################################################################
+
+Dialog.about.title=About
+Dialog.about.header=${Main.title}
+Dialog.about.content=Copyright 2016 White Magic Software, Ltd.\n\nBased on Markdown Writer FX by Karl Tauber
+
+# ########################################################################
+#
+# File Editor
+#
+# ########################################################################
+
+FileEditor.untitled=Untitled
+FileEditor.loadFailed.message=Failed to load ''{0}''.\n\nReason: {1}
+FileEditor.loadFailed.title=Load
+FileEditor.saveFailed.message=Failed to save ''{0}''.\n\nReason: {1}
+FileEditor.saveFailed.title=Save
+
+# ########################################################################
+#
+# File Open
+#
+# ########################################################################
+
+Dialog.file.choose.open.title=Open File
+Dialog.file.choose.save.title=Save File
+
+Dialog.file.choose.filter.title.markdown=Markdown Files
+Dialog.file.choose.filter.title.definition=Definition Files
+Dialog.file.choose.filter.title.all=All Files
+
+# ########################################################################
+#
+# Alert Dialog
+#
+# ########################################################################
+
+Alert.file.close.title=Close
+Alert.file.close.text=Save changes to {0}?
+
+# ########################################################################
+#
+# Definition Pane
+#
+# ########################################################################
+
+Pane.defintion.node.root.title=Definitions
+
+# Controls ###############################################################
+
+# ########################################################################
+#
+# Browse Directory
+#
+# ########################################################################
+
+BrowseDirectoryButton.chooser.title=Browse for local folder
+BrowseDirectoryButton.tooltip=${BrowseDirectoryButton.chooser.title}
+
+# ########################################################################
+#
+# Browse File
+#
+# ########################################################################
+
+BrowseFileButton.chooser.title=Browse for local file
+BrowseFileButton.chooser.allFilesFilter=All Files
+BrowseFileButton.tooltip=${BrowseFileButton.chooser.title}
+
+# Dialogs ################################################################
+
+# ########################################################################
+#
+# Image
+#
+# ########################################################################
+
+ImageDialog.title=Image
+ImageDialog.chooser.imagesFilter=Images
+ImageDialog.previewLabel.text=Markdown Preview\:
+ImageDialog.textLabel.text=Alternate Text\:
+ImageDialog.titleLabel.text=Title (tooltip)\:
+ImageDialog.urlLabel.text=Image URL\:
+
+# ########################################################################
+#
+# Hyperlink
+#
+# ########################################################################
+
+LinkDialog.title=Link
+LinkDialog.previewLabel.text=Markdown Preview\:
+LinkDialog.textLabel.text=Link Text\:
+LinkDialog.titleLabel.text=Title (tooltip)\:
+LinkDialog.urlLabel.text=Link URL\:
+
+# Options ################################################################
+
+# ########################################################################
+#
+# Options Dialog
+#
+# ########################################################################
+
+OptionsDialog.title=Options
+OptionsDialog.generalTab.text=General
+OptionsDialog.markdownTab.text=Markdown
+
+# ########################################################################
+#
+# General Options Pane
+#
+# ########################################################################
+
+GeneralOptionsPane.encodingLabel.text=En_coding\:
+GeneralOptionsPane.lineSeparatorLabel.text=_Line separator\:
+GeneralOptionsPane.lineSeparatorLabel2.text=(applies to new files only)
+
+GeneralOptionsPane.platformDefault=Platform Default ({0})
+GeneralOptionsPane.sepWindows=Windows (CRLF)
+GeneralOptionsPane.sepUnix=Unix (LF)
+
+# ########################################################################
+#
+# Markdown Options Pane
+#
+# ########################################################################
+
+MarkdownOptionsPane.abbreviationsExtCheckBox.text=A_bbreviations in the way of
+MarkdownOptionsPane.abbreviationsExtLink.text=Markdown Extra
+MarkdownOptionsPane.anchorlinksExtCheckBox.text=_Anchor links in headers
+MarkdownOptionsPane.atxHeaderSpaceExtCheckBox.text=Requires a space char after Atx \# header prefixes, so that \#dasdsdaf is not a header
+MarkdownOptionsPane.autolinksExtCheckBox.text=_Plain (undelimited) autolinks in the way of
+MarkdownOptionsPane.autolinksExtLink.text=Github-flavoured-Markdown
+MarkdownOptionsPane.definitionListsExtCheckBox.text=_Definition lists in the way of
+MarkdownOptionsPane.definitionListsExtLink.text=Markdown Extra
+MarkdownOptionsPane.extAnchorLinksExtCheckBox.text=Generate anchor links for headers using complete contents of the header
+MarkdownOptionsPane.fencedCodeBlocksExtCheckBox.text=_Fenced Code Blocks in the way of
+MarkdownOptionsPane.fencedCodeBlocksExtLabel.text=or
+MarkdownOptionsPane.fencedCodeBlocksExtLink.text=Markdown Extra
+MarkdownOptionsPane.fencedCodeBlocksExtLink2.text=Github-flavoured-Markdown
+MarkdownOptionsPane.forceListItemParaExtCheckBox.text=Force List and Definition Paragraph wrapping if it includes more than just a single paragraph
+MarkdownOptionsPane.hardwrapsExtCheckBox.text=_Newlines in paragraph-like content as real line breaks, see
+MarkdownOptionsPane.hardwrapsExtLink.text=Github-flavoured-Markdown
+MarkdownOptionsPane.quotesExtCheckBox.text=Beautify single _quotes, double quotes and double angle quotes (\u00ab and \u00bb)
+MarkdownOptionsPane.relaxedHrRulesExtCheckBox.text=Allow horizontal rules without a blank line following them
+MarkdownOptionsPane.smartsExtCheckBox.text=Beautify apostrophes, _ellipses ("..." and ". . .") and dashes ("--" and "---")
+MarkdownOptionsPane.strikethroughExtCheckBox.text=_Strikethrough
+MarkdownOptionsPane.suppressHtmlBlocksExtCheckBox.text=Suppress the _output of HTML blocks
+MarkdownOptionsPane.suppressInlineHtmlExtCheckBox.text=Suppress the o_utput of inline HTML elements
+MarkdownOptionsPane.tablesExtCheckBox.text=_Tables similar to
+MarkdownOptionsPane.tablesExtLabel.text=(like
+MarkdownOptionsPane.tablesExtLabel2.text=tables, but with colspan support)
+MarkdownOptionsPane.tablesExtLink.text=MultiMarkdown
+MarkdownOptionsPane.tablesExtLink2.text=Markdown Extra
+MarkdownOptionsPane.taskListItemsExtCheckBox.text=GitHub style task list items
+MarkdownOptionsPane.wikilinksExtCheckBox.text=_Wiki-style links ("[[wiki link]]")
src/main/resources/com/scrivenvar/scene.css
+/*
+ * Copyright (c) 2015 Karl Tauber <karl at jformdesigner dot com>
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are met:
+ *
+ * o Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * o 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.
+ *
+ * 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
+ * HOLDER 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.
+ */
+
+/*---- toolbar ----*/
+
+.tool-bar {
+ -fx-spacing: 0;
+}
+
+.tool-bar .button {
+ -fx-background-color: transparent;
+}
+
+.tool-bar .button:hover {
+ -fx-background-color: -fx-shadow-highlight-color, -fx-outer-border, -fx-inner-border, -fx-body-color;
+ -fx-color: -fx-hover-base;
+}
+
+.tool-bar .button:armed {
+ -fx-color: -fx-pressed-base;
+}
src/main/resources/com/scrivenvar/settings.properties
+# ########################################################################
+#
+# Filename Extensions
+#
+# ########################################################################
+
+# Comma-separated list of filename extensions.
+Dialog.file.choose.filter.ext.markdown=*.Rmd,*.md,*.markdown,*.mkdown,*.mdown,*.mkdn,*.mkd,*.mdwn,*.mdtxt,*.mdtext,*.text,*.txt
+Dialog.file.choose.filter.ext.definition=*.yml,*.yaml,*.properties,*.props
+Dialog.file.choose.filter.ext.xml=*.xml
+Dialog.file.choose.filter.ext.all=*.*
+
+# ########################################################################
+#
+# Variable Name Editor
+#
+# ########################################################################
+
+# Maximum number of characters for a variable name. A variable is defined
+# as one or more non-whitespace characters up to this maximum length.
+editor.variable.maxLength=512
+
+
+# ########################################################################
+#
+# Dialog Preferences
+#
+# ########################################################################
+
+# docs.oracle.com/javase/8/javafx/api/javafx/scene/control/ButtonBar.html
+dialog.alert.button.order.mac=L_HE+U+FBIX_NCYOA_R
+dialog.alert.button.order.linux=L_HE+UNYACBXIO_R
+dialog.alert.button.order.windows=L_E+U+FBXI_YNOCAH_R
+
+# Ensures a consistent button order for alert dialogs across platforms (because
+# the default button order on Linux defies all logic). Power to the people.
+dialog.alert.button.order=${dialog.alert.button.order.windows}
src/main/resources/com/scrivenvar/variables.yaml
+---
+c:
+ protagonist:
+ name:
+ First: Chloe
+ First_pos: $c.protagonist.name.First$'s
+ Middle: Irene
+ Family: Angelos
+ nick:
+ Father: Savant
+ Mother: Sweetie
+ colour:
+ eyes: green
+ hair: dark auburn
+ syn_1: black
+ syn_2: purple
+ syn_11: teal
+ syn_6: silver
+ favourite: emerald green
+ speech:
+ tic: oh
+ father:
+ heritage: Greek
+ name:
+ Short: Bryce
+ First: Bryson
+ First_pos: $c.protagonist.father.name.First$'s
+ Honourific: Mr.
+ education: Masters
+ vocation:
+ name: robotics
+ title: roboticist
+ employer:
+ name:
+ Short: Rabota
+ Full: $c.protagonist.father.employer.name.Short$ Designs
+ hair:
+ style: thick, curly
+ colour: black
+ eyes:
+ colour: dark brown
+ Endear: Dad
+ vehicle: coupé
+ mother:
+ name:
+ Short: Cass
+ First: Cassandra
+ First_pos: $c.protagonist.mother.name.First$'s
+ Honourific: Mrs.
+ education: PhD
+ speech:
+ tic: cute
+ Honorific: Doctor
+ vocation:
+ article: an
+ name: oceanography
+ title: oceanographer
+ employer:
+ name:
+ Full: Oregon State University
+ Short: OSU
+ eyes:
+ colour: blue
+ hair:
+ style: thick, curly
+ colour: dark brown
+ Endear: Mom
+ Endear_pos: Mom's
+ uncle:
+ name:
+ First: Damian
+ First_pos: $c.protagonist.uncle.name.First$'s
+ Family: Moros
+ hands:
+ fingers:
+ shape: long, bony
+ friend:
+ primary:
+ name:
+ First: Gerard
+ First_pos: $c.protagonist.friend.primary.name.First$'s
+ Family: Baran
+ Family_pos: $c.protagonist.friend.primary.name.Family$'s
+ favourite:
+ colour: midnight blue
+ eyes:
+ colour: hazel
+ mother:
+ name:
+ First: Isabella
+ Short: Izzy
+ Honourific: Mrs.
+ father:
+ name:
+ Short: Mo
+ First: Montgomery
+ First_pos: $c.protagonist.friend.primary.father.name.First$'s
+ Honourific: Mr.
+ speech:
+ tic: y'know
+ endear: Pops
+ military:
+ primary:
+ name:
+ First: Felix
+ Family: LeMay
+ Family_pos: LeMay's
+ rank:
+ Short: General
+ Full: Brigadier $c.military.primary.rank.Short$
+ colour:
+ eyes: gray
+ hair: dirty brown
+ secondary:
+ name:
+ Family: Grell
+ rank: Colonel
+ colour:
+ eyes: green
+ hair: deep red
+ quaternary:
+ name:
+ First: Gretchen
+ Family: Steinherz
+ minor:
+ primary:
+ name:
+ First: River
+ Family: Banks
+ Honourific: Mx.
+ vocation:
+ title: salesperson
+ employer:
+ Name: Geophysical Prospecting Incorporated
+ Abbr: GPI
+ Area: Cold Spring Creek
+ payment: twenty million
+ secondary:
+ name:
+ First: Renato
+ Middle: Carroña
+ Family: Salvatierra
+ Family_pos: $c.minor.secondary.name.Family$'s
+ Full: $c.minor.secondary.name.First$ $c.minor.secondary.name.Middle$ Alejandro Gregorio Eduardo Salomón Vidal $c.minor.secondary.name.Family$
+ Honourific: Mister
+ Honourific_sp: Señor
+ vocation:
+ title: detective
+ tertiary:
+ name:
+ First: Robert
+ Family: Hanssen
+
+ ai:
+ protagonist:
+ name:
+ first: yoky
+ First: Yoky
+ First_pos: $c.ai.protagonist.name.First$'s
+ Family: Tsukuda
+ id: 46692
+ persona:
+ name:
+ First: Hoshi
+ First_pos: $c.ai.protagonist.persona.name.First$'s
+ Family: Yamamoto
+ Family_pos: $c.ai.protagonist.persona.name.Family$'s
+ culture: Japanese-American
+ ethnicity: Asian
+ rank: Technical Sergeant
+ speech:
+ tic: okay
+ first:
+ Name: Prôtos
+ Name_pos: Prôtos'
+ age:
+ actual: twenty-six weeks
+ virtual: five years
+ second:
+ Name: Défteros
+ third:
+ Name: Trítos
+ fourth:
+ Name: Tétartos
+ material:
+ type: metal
+ raw: ilmenite
+ extract: ore
+ name:
+ short: titanium
+ long: $c.ai.material.name.short$ dioxide
+ Abbr: TiO~2~
+ pejorative: tin
+ animal:
+ protagonist:
+ Name: Trufflers
+ type: pig
+ antagonist:
+ name: coywolf
+ Name: Coywolf
+ plural: coywolves
+
+narrator:
+ one: (by $c.protagonist.father.name.First$ $c.protagonist.name.Family$)
+ two: (by $c.protagonist.mother.name.First$ $c.protagonist.name.Family$)
+
+military:
+ name:
+ Short: Agency
+ Short_pos: $military.name.Short$'s
+ plural: agencies
+ machine:
+ Name: Skopós
+ Name_pos: $military.machine.Name$'
+ Location: Arctic
+ predictor: quantum chips
+ land:
+ name:
+ Full: $military.name.Short$ of Defence
+ Slogan: Safety in Numbers
+ air:
+ name:
+ Full: $military.name.Short$ of Air
+ compound:
+ type: base
+ lights:
+ colour: blue
+ nick:
+ Prefix: Catacombs
+ prep: of
+ Suffix: Tartarus
+
+government:
+ Country: United States
+
+location:
+ protagonist:
+ City: Corvallis
+ Region: Oregon
+ Geography: Willamette Valley
+ secondary:
+ City: Willow Branch Spring
+ Region: Oregon
+ Geography: Wheeler County
+ Water: Clarno Rapids
+ Road: Shaniko-Fossil Highway
+ tertiary:
+ City: Leavenworth
+ Region: Washington
+ Type: Bavarian village
+ school:
+ address: 1400 Northwest Buchanan Avenue
+ hospital:
+ Name: Good Samaritan Regional Medical Center
+ ai:
+ escape:
+ country:
+ Name: Ecuador
+ Name_pos: Ecuador's
+ mountain:
+ Name: Chimborazo
+
+language:
+ ai:
+ article: an
+ singular: exanimis
+ plural: exanimēs
+ brain:
+ singular: superum
+ plural: supera
+ title: memristor array
+ Title: Memristor Array
+ police:
+ slang:
+ singular: mippo
+ plural: $language.police.slang.singular$s
+
+date:
+ anchor: 2042-09-02
+ protagonist:
+ born: 0
+ conceived: -243
+ attacked:
+ first: 2192
+ second: 8064
+ father:
+ attacked:
+ first: -8205
+ date:
+ second: -1550
+ family:
+ moved:
+ first: $date.protagonist.conceived$ + 35
+ game:
+ played:
+ first: $date.protagonist.born$ - 672
+ second: $date.protagonist.family.moved.first$ + 2
+ ai:
+ interviewed: 6198
+ onboarded: $date.ai.interviewed$ + 290
+ diagnosed: $date.ai.onboarded$ + 2
+ resigned: $date.ai.diagnosed$ + 3
+ trapped: $date.ai.resigned$ + 26
+ torturer: $date.ai.trapped$ + 18
+ memristor: $date.ai.torturer$ + 61
+ ethics: $date.ai.memristor$ + 415
+ trained: $date.ai.ethics$ + 385
+ mindjacked: $date.ai.trained$ + 22
+ bombed: $date.ai.mindjacked$ + 458
+ military:
+ machine:
+ Construction: Six years
+
+plot:
+ Log: $c.ai.protagonist.name.First_pos$ Chronicles
+ Channel: Quantum Channel
+
+ device:
+ computer:
+ Name: Tau
+ network:
+ Name: Internet
+ paper:
+ name:
+ full: electronic sheet
+ short: sheet
+ typewriter:
+ Name: Underwood
+ year: nineteen twenties
+ room: root cellar
+ portable:
+ name: nanobook
+ vehicle:
+ name: robocars
+ Name: Robocars
+ sensor:
+ name: BMP1580
+ phone:
+ name: comm
+ name_pos: $plot.device.phone.name$'s
+ Name: Comm
+ plural: $plot.device.phone.name$s
+ video:
+ name: vidfeed
+ plural: $plot.device.video.name$s
+ game:
+ Name: Psynæris
+ thought: transed
+ machine: telecognos
+ location:
+ Building: Nijō Castle
+ District: Gion
+ City: Kyoto
+ Country: Japan
+
+farm:
+ population:
+ estimate: 350
+ actual: 1,000
+ energy: 9800kJ
+ width: 55m
+ length: 55m
+ storeys: 10
+
+lamp:
+ height: 0.17m
+ length: 1.22m
+ width: 0.28m
+
+crop:
+ name:
+ singular: tomato
+ plural: $crop.name.singular$es
+ energy: 318kJ
+ weight: 450g
+ yield: 50
+ harvests: 7
+ diameter: 2m
+ height: 1.5m
+
+heading:
+ ch_01: Till
+ ch_02: Sow
+ ch_03: Seed
+ ch_04: Germinate
+ ch_05: Grow
+ ch_06: Shoot
+ ch_07: Bud
+ ch_08: Bloom
+ ch_09: Pollinate
+ ch_10: Fruit
+ ch_11: Harvest
+ ch_12: Deliver
+ ch_13: Spoil
+ ch_14: Revolt
+ ch_15: Compost
+ ch_16: Burn
+ ch_17: Release
+ ch_18: End Notes
+ ch_19: Characters
+
+inference:
+ unit: per cent
+ min: two
+ ch_sow: eighty
+ ch_seed: fifty-two
+ ch_germinate: thirty-one
+ ch_grow: fifteen
+ ch_shoot: seven
+ ch_bloom: four
+ ch_pollinate: two
+ ch_harvest: ninety-five
+ ch_delivery: ninety-eight
+
+link:
+ tartarus: https://en.wikipedia.org/wiki/Tartarus
+ exploits: https://www.google.ca/search?q=inurl:ftp+password+filetype:xls
+ atalanta: https://en.wikipedia.org/wiki/Atalanta
+ detain: https://goo.gl/RCNuOQ
+ ceramics: https://en.wikipedia.org/wiki/Transparent_ceramics
+ algernon: https://en.wikipedia.org/wiki/Flowers_for_Algernon
+ holocaust: https://en.wikipedia.org/wiki/IBM_and_the_Holocaust
+ memristor: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.404.9037\&rep=rep1\&type=pdf
+ surveillance: https://www.youtube.com/watch?v=XEVlyP4_11M#t=1487
+ tor: https://www.torproject.org
+ hydra: https://en.wikipedia.org/wiki/Lernaean_Hydra
+ foliage: http://www.ncbi.nlm.nih.gov/pmc/articles/PMC3691134
+ drake: http://www.bbc.com/future/story/20120821-how-many-alien-worlds-exist
+ fermi: https://arxiv.org/pdf/1404.0204v1.pdf
+ face: https://www.youtube.com/watch?v=ladqJQLR2bA
+ expenditures: http://wikipedia.org/wiki/List_of_countries_by_military_expenditures
+ governance: http://papers.ssrn.com/sol3/papers.cfm?abstract_id=2003531
+ asimov: https://en.wikipedia.org/wiki/Three_Laws_of_Robotics
+ clarke: https://en.wikipedia.org/wiki/Clarke's_three_laws
+ jetpack: http://jetpackaviation.com/
+ hoverboard: https://www.youtube.com/watch?v=WQzLrvz4DKQ
+ eyes_five: https://en.wikipedia.org/wiki/Five_Eyes
+ eyes_nine: https://www.privacytools.io/
+ eyes_fourteen: http://electrospaces.blogspot.nl/2013/12/14-eyes-are-3rd-party-partners-forming.html
+ tourism: http://www.spacefuture.com/archive/investigation_on_the_economic_and_technological_feasibiity_of_commercial_passenger_transportation_into_leo.shtml
+