# This file tells indoc, the Inform documentation tool, about the structure # of the linked manuals currently used as Inform's main in-application # documentation, and also on the Inform website. volume: Writing with Inform volume: The Inform Recipe Book (RB) = The Recipe Book.txt examples images: resources/Imagery/doc_images/ cover: combined_cover.png dc:title: Inform - A Design System for Interactive Fiction dc:creator: Graham Nelson and Emily Short dc:subject: Interactive Fiction dc:identifier: wwi-rb-combined contents_expandable = yes treat_code_as_verbatim = no inform_definitions_mode = yes alphabetization = word-by-word css: p.quoted + { font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; } css: RB: body.papertint + { background-color: #ffffe0; } css: td.midnightrighthalfpage ++ { background-color: #ffffe5; } css: RB: div.egpanel + { background-color: #ffffc0; } css: RB: span.midnightbannertext + { color: #ffffe0; } css: text = italic css: text = boldface # Define all the index notations. Most of these have the form "headword+KEY+", # because that's easy to read. A couple of the most commonly used also have # magic prefix symbols. # All of these categories are going to come down to a handful of display # styles: # - normal # - dark blue monospace (for terms that appear in I7 source) # - light blue italics (for bracketed arguments in I7 source terms) # - dark green serif (for words that appear in player commands) # Note that the manual itself uses dark blue indented blocks, but not # monospace, to display I7 source. We don't have the opportunity to indent, # so we use the monospace font to distinguish it. # General source-text category. Used for all sorts of cases. (Thus, no # label is attached.) index: ^{headword+source+} = source index: ^{`headword} = source # Category for player commands. index: ^{headword+command+} = command index: ^{>headword} = command # Category for people's names. index: ^{headword+name+} = name (invert) index: ^{@headword} = name (invert) # For source text which will include bracketed arguments. # (The brackets are displayed.) index: ^{headword+sourcearg+} = sourcearg (bracketed) # For terms which will contain just a few source-text words in a normal line. # (Here, in contrast, the brackets are markup -- they are not displayed.) index: ^{headword+sourcepart+} = sourcepart (unbracketed) # For terms which will contain just a few player-command words in a normal # line. index: ^{headword+commandpart+} = commandpart (unbracketed) # Category for terms labelled "user interface". index: ^{headword+ui+} = ui ("user interface") # Category for terms labelled "use option". index: ^{headword+useopt+} = useopt ("use option") # Category for terms labelled "of source text". Words may be bracketed for # the source-text style. index: ^{headword+ofsource+} = ofsource ("of source text") (unbracketed) # Category of terms labelled "bibliographic data". index: ^{headword+biblio+} = biblio ("bibliographic data") # Category of terms labelled "web site". index: ^{headword+web+} = web ("web site") # Category of terms which are titles, so should be in italics. (No label, # because it could be a title of any sort of thing.) index: ^{headword+title+} = title # Category of terms labelled "extension". index: ^{headword+ext+} = ext ("extension") # For player commands labelled "testing command". index: ^{headword+testcmd+} = testcmd ("testing command") # For kinds (source text style). index: ^{headword+kind+} = kind ("kind") # For top-level assertions, with bracketed arguments. index: ^{headword+assert+} = assert ("assertion") (bracketed) # For rulebooks, with bracketed arguments. (Not rulebook arguments per se, # but parameterized cases like "check (action)".) index: ^{headword+rb+} = rb ("rulebook") (bracketed) # For phrases, with bracketed arguments. Note that there is a prefix form # for this one. index: ^{headword+phr+} = phrase ("phrase") (bracketed) index: ^{+to+headword} = phrase ("phrase") (bracketed) # For "say" phrases, with bracketed arguments. With prefix form. index: ^{headword+sayphr+} = sayphrase ("say phrase") (bracketed) index: ^{+tosay+headword} = sayphrase ("say phrase") (bracketed) # For "if" phrases, with bracketed arguments. With prefix form. index: ^{headword+ifphr+} = ifphrase ("if phrase") (bracketed) index: ^{+toif+headword} = ifphrase ("if phrase") (bracketed) # For "outcome" phrases (e.g. "it is likely"). The bracketed argument # is the rulebook name to which the outcome applies. index: ^{headword+outphr+} = outphrase ("outcome phrase") (bracketed) index: ^{+toout+headword} = outphrase ("outcome phrase") (bracketed) # For properties (source text style). index: ^{headword+prop+} = prop ("property") (bracketed) # For properties (source text style), auto-filed into "properties: catalogue". # This has no label, because the group term is sufficient. index: ^{headword+propcat+} = propcat (bracketed) (under {properties: catalogue}) # For adjectives, with bracketed arguments (the kind the adj applies to). index: ^{headword+adj+} = adj ("adjective") (bracketed) # For relations. We permit bracketed arguments for the odd case of # "mapping (direction)". index: ^{headword+rel+} = rel ("relation") (bracketed) # For relations, auto-filed into "relations: predefined". No label. index: ^{headword+relcat+} = relcat (under {relations: predefined}) (bracketed) # For relation verbs. index: ^{headword+relverb+} = relverb ("relation verb") # For global variables, with type. We conventionally format this as # "{VARNAME (-- TYPE)}", using an em-dash inside the brackets. index: ^{headword+glob+} = glob ("global variable") (unbracketed) # For action variables, with type. We conventionally format this as # "{VARNAME (-- TYPE)}", using an em-dash inside the brackets. index: ^{headword+actvar+} = actvar ("action variable") (unbracketed) # For constants, with type. We conventionally format this as # "{CONSTNAME (-- TYPE)}", using an em-dash inside the brackets. index: ^{headword+const+} = const ("constant") (unbracketed) # For actions. We generally use the short form ("taking") unless the action # has two arguments, in which case we mention the first one # ("asking (actor) about"). index: ^{headword+action+} = action ("action") (bracketed) # For activities. index: ^{headword+activity+} = activity ("activity") # Another entry for activities, auto-filed into "activities: catalogue". index: ^{headword+activitycat+} = activitycat (under {activities: catalogue}) # One more for activities. Enough of them fit in this subgroup that it's # worth having a special tag. index: ^{headword+descactivity+} = descactivity (under {descriptions (displayed): activities}) # For tokens of understanding. (Square brackets are generated for the # index listing.) index: ^{headword+token+} = token ("grammar token") (bracketed) (prefix "[") (suffix "]") # The category for everything else. index: ^{headword} = standard # Auto-generated entries for each activity. index: {act_} = activity ("activity") # Another auto-generated entry for activities, auto-filed into # "activities: catalogue". index: {act_} = activitycat (under {activities: catalogue}) index: definition = phrase ("phrase") (bracketed) index: if-definition = ifphrase ("if phrase") (bracketed) index: say-definition = sayphrase ("say phrase") (bracketed) index: example = example ("example") # Now we define all the CSS stanzas for index categories. There's a lot # of redundancy here -- there are many categories that display in # "source text" blue-typewriter, for example. (Some have visible category # tags, others don't. Some only apply the style to bracketed words, # some to the whole term. It's all very ad-hoc.) css: span.indexstandard ++ { } css: span.indexsource ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexsourcearg ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexsourceargbracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexsourcepartbracketed ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexphrase ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexphrasebracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexifphrase ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexifphrasebracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexsayphrase ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexsayphrasebracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexoutphrase ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexoutphrasebracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexassert ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexassertbracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexrb ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexrbbracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexprop ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexpropbracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexpropcat ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexpropcatbracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexadj ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexadjbracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexrelbracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexrelcatbracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexrelverb ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexglob ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexglobbracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexactvar ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexactvarbracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexconst ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexconstbracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexaction ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexactionbracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexactivity ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexactivitycat ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexdescactivity ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexexample ++ { font-style: italic; } css: span.indextitle ++ { font-style: italic; } css: span.indexofsourcebracketed ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indexuseopt ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indextoken ++ { color: #000080; font-family: "Lucida Console", Monaco, "Courier New", Courier, monospace; font-size: 0.9em; } css: span.indextokenbracketed ++ { color: #8080ff; font-family: "Lucida Grande", Geneva, Arial, Tahoma, Verdana, Helvetica, Helv; font-style: italic; } css: span.indexcommand ++ { color: #186000; font-family: Georgia, "Times New Roman", Times, serif; font-size: 0.9em; } css: span.indextestcmd ++ { color: #186000; font-family: Georgia, "Times New Roman", Times, serif; font-size: 0.9em; } css: span.indexcommandpartbracketed ++ { color: #186000; font-family: Georgia, "Times New Roman", Times, serif; font-size: 0.9em; } ebook { granularity = 2 examples_mode = open follow: epub-css-tweaks.txt } osx_app { # HTML documentation for the OS X app follow: in-application-instructions.txt assume_Public_Library = yes support_creation = yes retina_images = yes declare: OSX javascript_paste_method = Andrew destination = ../Inform.app/Contents/Resources/English.lproj/ } windows_app { # HTML documentation for the Windows app follow: in-application-instructions.txt follow: windows-css-tweaks.txt assume_Public_Library = yes support_creation = yes suppress_fonts = yes declare: Windows javascript_paste_method = David destination = ../Build/Documentation/ } linux_app { # HTML documentation for the Linux app # This is for command-line Linux, so there's no in-application tweaking declare: Linux assume_Public_Library = yes javascript_paste_method = Andrew destination = i7/Documentation/ images_copy = no } gnome_app { # HTML documentation for the GNOME app follow: in-application-instructions.txt assume_Public_Library = yes declare: GNOME javascript_paste_method = David destination = gnome-inform7/data/Documentation/ } website { # HTML for the pre-2019 I7 website destination = Website/content/learn/man/ images_copy = no images_path = doc_images/ examples_mode = openable } newwebsite { # HTML for the post-2019 I7 website images_copy = no images_path = /assets/images/doc_images/ examples_mode = openable } plain { # Plain text for screenreaders destination = Website/content/learn/man/plain-text- format = text images_copy = no navigation = lacuna examples_mode = open }