From 03523d5ac6f364b21331fac2376bf77d5fb1a3b7 Mon Sep 17 00:00:00 2001 From: Christian Nicolai Date: Mon, 1 Aug 2011 18:53:45 +0200 Subject: [PATCH] Outsourced description into HowItWorks.md --- HowItWorks.md | 142 ++++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 141 +------------------------------------------------ 2 files changed, 143 insertions(+), 140 deletions(-) create mode 100644 HowItWorks.md diff --git a/HowItWorks.md b/HowItWorks.md new file mode 100644 index 0000000..e983eb1 --- /dev/null +++ b/HowItWorks.md @@ -0,0 +1,142 @@ +# How JOE syntax highlighting works +*from [c.jsf](http://joe-editor.hg.sourceforge.net/hgweb/joe-editor/joe-editor/file/tip/syntax/c.jsf.in)* + +A (deterministic) state machine which performs lexical analysis of C. +(This is the "assembly language" of syntax highlighting. A separate +program could be used to convert a regular expression NFA syntax into this +format). + +Each state begins with ': ' + is the color used for characters eaten by the state +(really a symbol for a user definable color). + +The first state defined is the initial state. + +Within a state, define transitions (jumps) to other states. Each +jump has the form: [