◊(Local Yarn Code "Artifact [9bdf219a]")

Artifact 9bdf219a9aa98016a732ef231da1a980d1a52ab7b9064d2a28ecc09ce3152509:

Wiki page [Style Guide] by joel on 2019-04-18 03:08:05.
D 2019-04-18T03:08:05.601
L Style\sGuide
P 2f5ce2a9231e2fef0986b77d796ba11ca5d20056e6599fd3abc0d81014f77991
U joel
W 2327
These are notes for my own use.

<h2>Prose</h2>

  *  <i>The Local Yarn</i> should be italicized.
  *  <i>The Local Yarn</i> is emphatically not “a web site”.

<h2>Punctuation</h2>

  *  In a list of <em>actions</em>, list items should end with a period.
  *  In a list of <em>things</em>, list items should not end with a period.
  *  Place trailing commas and periods outside of quotation marks unless they are part of the quoted text.
  *  [https://practicaltypography.com/hyphens-and-dashes.html|Em- and en-dashes], [https://practicaltypography.com/straight-and-curly-quotes.html|“smart” quotes and apostrophes], emoji, and math symbols should be stored as such in the original text source. Do not rely on [https://daringfireball.net/projects/smartypants/|smartypants-style text processing] at any step after writing to produce typographically correct&nbsp;punctuation.

<h2>Source files</h2>

  *  Header comment includes copyright notice, license information, and author contact info.
  *  Lines should be hard-wrapped at ≈100 characters. This includes prose sources.
  *  (Racket) All comments on their own line begin with <code>;;</code>

<h2>Pre-commit checklist</h2>

  #  Run <code>fossil changes --differ</code> to ensure no extra files need to be added.
  #  Run <code>fossil diff --tk</code> to ensure all edits are related.
  #  If any files have been added with <code>fossil add</code>, ensure the makefile is up to date.
  #  Ideally, any documentation (Scribble files) should be updated at the same time as the source code. If any <code>.scrbl</code> files have changed, run <code>make scribble</code> to ensure the documentation compiles and is published to this repo.
  #  Make sure you’re on the correct branch.

<h2>Commit messages</h2>

  *  Commit messages should use the imperative voice. 
  *  Commit messages should be no more than ≈ 50 characters long.
  *  If more explanation is needed, create a ticket and cross-reference it with the commit message.
  *  Link a commit to a related ticket by using brackets <code>[ ]</code> containing at least the first 6 digits of the UUID.
  *  Comments added to tickets in connection with a resolving check-in should describe <em>why</em> the change was made, not <em>how</em> (the code does that part already).
Z e8b80b5c0bd038ee64f123ce62e4994c