[e-cvs] cvs commit: e/src/esrc/scripts updoc.e eBrowser.e

markm@eros.cs.jhu.edu markm@eros.cs.jhu.edu
Wed, 4 Jul 2001 08:43:25 -0400


markm       01/07/04 08:43:25

  Modified:    src/esrc/scripts eBrowser.e
  Added:       src/esrc/scripts updoc.e
  Log:
  start on updoc script

Revision  Changes    Path
1.21      +2 -14     e/src/esrc/scripts/eBrowser.e

Index: eBrowser.e
===================================================================
RCS file: /cvs/e/src/esrc/scripts/eBrowser.e,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- eBrowser.e	2001/04/28 10:00:05	1.20
+++ eBrowser.e	2001/07/04 12:43:25	1.21
@@ -1074,9 +1074,9 @@
 }
 
 
-introducer onTheAir()
-
 def acquireBrowseServerMaker() {
+#   introducer onTheAir()
+
     def tryAgain(e) {
         traceln("trying to acquire server")
         <unsafe:org.erights.e.extern.timer.Timer> theTimer() after(10000,
@@ -1096,18 +1096,6 @@
 
 var optBrowseFile := null
 def commandArgs := interp getArgs()
-if (commandArgs size() > 0) {
-    def name := commandArgs[0]
-    optBrowseFile := <file: name>
-}
-def browser := eBrowserMaker new(textModelMaker new(optBrowseFile))
-if (optBrowseFile != null) {openFiles[optBrowseFile getCanonicalPath()] := browser}
-interp blockAtTop()
-
-
-
-
- getArgs()
 if (commandArgs size() > 0) {
     def name := commandArgs[0]
     optBrowseFile := <file: name>



1.1                  e/src/esrc/scripts/updoc.e

Index: updoc.e
===================================================================


class updocMaker(source) :any {

	def lines := source split("\n")
	var index := 0

	def readExpr() :any {
		var result := ""
		var current := lines[index] trim()
		while (true) {
			current := current run(1, current size())
			if (current startsWith(" ")) {
				current := current run(1, current size())
			}
			result += current + "\n"

			index += 1
			if (index >= lines size()) {
				break()
			}
			current := lines[index] trim()

			if (! (current startsWith(">"))) {
				break()
			}
		}
		result
	}

	def readOutput() :any {
		escape return {
			var keyword := null
			var output := ""
			if (index >= lines size()) {
				return([null, null])
			}
			if (lines[index] trim() =~ `#@prefix:@text`) {
				keyword := prefix trim()
				output += text trim() + "\n"
				index += 1
				while (index < lines size() &&
					   lines[index] trim() =~ `#@text2`) {
					output += text2 trim() + "\n"
					index += 1
				}
				return([keyword, output])
			} else {
				return([null, null])
			}
		}
	}

	def readBlankLine() {
		if (index < lines size() && lines[index] trim() == "") {
			index += 1
		}
	}

    def updoc {

        to test() :any {
			def buf := "" diverge(char)
            while (index < lines size()) {
                def current := lines[index] trim()
                if (current startsWith("?")) {
                    def expr := readExpr()
					buf append(`? $expr`)
					while (true) {
						def [optKeyword, optOutput] := readOutput()
						if (optKeyword == null) {
							break()
						}
						buf append(`# $optKeyword: $optOutput`)
						readBlankLine()
					}
	             } else {
					index += 1
				}
            }
			buf snapshot()
        }
    }
}

def orig := <d:/e/src/jsrc/net/captp/tables/AnswersTable.updoc>
def updoc1 := updocMaker new(orig getTwine())
updoc1 test()