Error processing request

Parameters

CONTENT_LENGTH0
REQUEST_METHODGET
REQUEST_URI/revision/lindex?V=19
QUERY_STRINGV=19
CONTENT_TYPE
DOCUMENT_URI/revision/lindex
DOCUMENT_ROOT/var/www/nikit/nikit/nginx/../docroot
SCGI1
SERVER_PROTOCOLHTTP/1.1
HTTPSon
REMOTE_ADDR172.70.127.158
REMOTE_PORT21084
SERVER_PORT4443
SERVER_NAMEwiki.tcl-lang.org
HTTP_HOSTwiki.tcl-lang.org
HTTP_CONNECTIONKeep-Alive
HTTP_ACCEPT_ENCODINGgzip, br
HTTP_X_FORWARDED_FOR3.137.218.215
HTTP_CF_RAY87f07d41e9502a99-ORD
HTTP_X_FORWARDED_PROTOhttps
HTTP_CF_VISITOR{"scheme":"https"}
HTTP_ACCEPT*/*
HTTP_USER_AGENTMozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; [email protected])
HTTP_CF_CONNECTING_IP3.137.218.215
HTTP_CDN_LOOPcloudflare
HTTP_CF_IPCOUNTRYUS

Body


Error

Unknow state transition: LINE -> END

-code

1

-level

0

-errorstack

INNER {returnImm {Unknow state transition: LINE -> END} {}} CALL {my render_wikit lindex http://www.purl.org/tcl/home/man/tcl/TclCmd/lindex.htm\n\n\ \ \ \ :\ \ \ '''lindex'''\ ''list\ index''\ ?''index\ ...''?\n\n\nTreats\ its\ first\ argument\ as\ a\ Tcl\ list,\ returning\ the\ index'th\ \[element\]\ (where\ ''index''\ must\ be\ an\ integer\ if\ numeric)\ from\ it.\ \ The\ index\ numbers\ begin\ with\ 0\ (zero).\ \ If\ the\ index\ is\ negative\ or\ greater\ than\ or\ equal\ to\ the\ number\ of\ elements\ in\ list,\ an\ empty\ string\ is\ returned.\n\nIf\ instead\ of\ an\ integer,\ the\ string\ '''end'''\ is\ provided,\ the\ last\ element\ of\ the\ list\ is\ returned.\ \ You\ can\ use\ '''end-'''\ ''integer''\ to\ offset\ from\ the\ last\ element.\n**\ Description\ **\nA\ sequence\ of\ indices,\ or\ a\ list\ of\ indices,\ may\ be\ used\;\ this\ results\ in\ there\ being\ a\ sequence\ of\ indices\ which\ are\ used\ in\ order\ to\ drill\ down\ into\ nested\ lists\ (similar\ to\ \[lset\]).\ Thus,\ these\ three\ are\ equivalent:\nlindex\ \$nestedList\ 1\ 2\ 3\nlindex\ \$nestedList\ \{1\ 2\ 3\}\nlindex\ \[lindex\ \[lindex\ \$nestedList\ 1\]\ 2\]\ 3\n======\n\nWithout\ any\ indices,\ or\ with\ an\ empty\ ''indexList'',\ the\ contents\ of\ the\ ''list''\ argument\ are\ returned\ without\ further\ interpretation.\nWithout\ any\ indices,\ or\ with\ an\ empty\ ''indexList'',\ the\ contents\ of\ the\n<<discussion>>\nThe\ announcement\ of\ the\ nested\ list\ functionality\ was\ documented\ here\ as\ follows:\n<<br>>\nAlso\ note\ that\ recent\ http://purl.org/tcl/tip/\ TIPs\ 22\ and\ 45\ have\ been\ implemented\ and\ comitted\ to\ Tcl\ 8.4\ source\ CVS\ tree.\ \ Here\ is\ a\ summary\ of\ the\ new\ functionality\ from\ \[Kevin\ Kenny\]:\n\n\nJeff\ Hobbs\ today\ committed\ to\ the\ CVS\ HEAD\ at\ Sourceforge\ the\ changes\ndescribed\ in\ TIP's\ 22\ (Multiple\ Index\ Arguments\ to\ lindex),\ 33\ (Add\ 'lset'\nCommand\ to\ Assign\ to\ List\ Elements),\ and\ 45\ (Empty\ index\ lists\ for\ \[\[lindex\]\nand\ \[lset\])\n\nThese\ changes\ augment\ the\ \[\[lindex\]\ command\ so\ that\ it\ can\ extract\ elements\nfrom\ sublists,\ for\ example:\n\n\ \ \ \ \[lindex\ \{\{a\ b\ c\}\ \{d\ e\ f\}\ \{g\ h\ i\}\}\ 1\ 1\]\ =>\ e\n\nThey\ also\ implement\ an\ \[\[lset\]\ command\ that\ may\ be\ used\ to\ change\ individual\nelements\ within\ lists\ and\ sublists.\ \ Taken\ together,\ these\ commands\ can\ be\nused\ to\ treat\ lists\ as\ if\ they\ were\ linear\ arrays.\ \ For\ instance,\ the\nfollowing\ procedure\ might\ be\ used\ to\ reverse\ the\ order\ of\ elements\ in\ a\nlist.\n\n\ \ \ \ proc\ reverse\ \{\ list\ \}\ \{\n\ \ \ \ \ \ \ \ set\ i\ 0\n\ \ \ \ \ \ \ \ set\ j\ \[expr\ \{\ \[llength\ \$list\]\ -\ 1\ \}\]\n\ \ \ \ \ \ \ \ while\ \{\ \$j\ >\ \$i\ \}\ \{\n\ \ \ \ \ \ \ \ \ \ \ \ set\ temp\ \[lindex\ \$list\ \$i\]\n\ \ \ \ \ \ \ \ \ \ \ \ lset\ list\ \$i\ \[lindex\ \$list\ \$j\]\n\ \ \ \ \ \ \ \ \ \ \ \ lset\ list\ \$j\ \$temp\n\ \ \ \ \ \ \ \ \ \ \ \ incr\ i\n\ \ \ \ \ \ \ \ \ \ \ \ incr\ j\ -1\n\ \ \ \ \ \ \ \ \}\n\ \ \ \ \ \ \ \ return\ \$list\n\ \ \ \ \}\n\nUpdated\ documentation\ for\ the\ commands\ is\ available\ in\ the\ 'doc/'\ \nsubdirectory\ in\ the\ source\ tree.\ \ The\ original\ proposals\ may\ be\ found\ at\n\n\ \ \ \ http://www.purl.org/tcl/tip/22.htm\ \n\ \ \ \ http://www.purl.org/tcl/tip/33.htm\ \n\ \ \ \ http://www.purl.org/tcl/tip/45.htm\n\n\n--\ \n73\ de\ ke9tv/2,\ Kevin\ KENNY\ \ \ \ \ \ GE\ Corporate\ R&D,\ Niskayuna,\ New\ York,\ USA\n\n----\n\[LES\]\ on\ August\ 15\ 2005:\ What\ does\ \[lindex\]\ do\ that\ \[lrange\]\ doesn't?\n\[pmaage\]\ take\ less\ time\n\[schlenk\]\ direct\ access\ to\ elements\ in\ nested\ lists.\ \ \n\n\n======\n\ proc\ \ picknested\ \ \{\ argList\ \ args\ \}\ \ \ \ \ \ \ \ \ \ \{\nTesting:\n\ \ \ \ for\ \ \{set\ _depth\ 0\}\ \ \{\$_depth\ <\ \[llength\ \$args\]\}\ \ \{incr\ _depth\}\ \ \{\n\ \ \ \ \ \ \ \ \ \ set\ _range\ \[lrange\ \$args\ \$_depth\ \$_depth\]\n\ \ \ \ \ \ \ \ \ \ set\ argList\ \{expand\}\[lrange\ \$argList\ \$_range\ \$_range\]\n\ \ \ \ \}\n\ \ \ \ return\ \$argList\n\ \}\n\n\n======none\n\ %\ picknested\ \{\{a\ b\ c\}\ \{d\ e\ \{foo\ bar\ hey\}\ f\}\ \{g\ h\ i\}\}\ \ 0\n\ a\ b\ c\n\[Lars\ H\]:\ I'd\ go\ further\ and\ say\ `\[lrange\]`\ still\ doesn't\ give\ you\ access\ to\n\ %\ picknested\ \{\{a\ b\ c\}\ \{d\ e\ \{foo\ bar\ hey\}\ f\}\ \{g\ h\ i\}\}\ \ 0\ 1\n\ b\n\ \n\ %\ picknested\ \{\{a\ b\ c\}\ \{d\ e\ \{foo\ bar\ hey\}\ f\}\ \{g\ h\ i\}\}\ \ 1\ 2\n\ foo\ bar\ hey\n\ \n\ %\ picknested\ \{\{a\ b\ c\}\ \{d\ e\ \{foo\ bar\ hey\}\ f\}\ \{g\ h\ i\}\}\ \ 1\ 2\ 0\n\ foo\n\ \n\ %\ picknested\ \{\{a\ b\ c\}\ \{d\ e\ \{foo\ bar\ hey\}\ f\}\ \{g\ h\ i\}\}\ \ 1\ 2\ 2\n\ hey\n\n\[schlenk\]\ Should\ have\ said\ 'easy'\ access.\ You\ can\ do\ the\ same\ with\ lrange,\ yes.\ You\ do\ not\ need\ all\ list\ commands,\nmost\ can\ be\ replaced\ by\ a\ proc\ (think\ lsearch,\ lsort,\ lreplace,\ linsert,\ lindex).\ Its\ just\ a\ tradeoff\ how\ many\nlist\ commands\ exist.\ (see\ \[struct::list\]\ for\ some\ more).\ Having\ more\ or\ fewer\ commands\ is\ mostly\ an\ optimization\ in\ time\ or\ space.\ \ \ \n\ \n\[Lars\ H\]:\ I'd\ go\ further\ and\ say\ \[lrange\]\ still\ doesn't\ give\ you\ access\ to\ the\ nested\ elements--it's\ really\ \[\{expand\}\]\ (and\ in\ the\ case\ of\ the\ indices\ shimmering)\ that\ you\ rely\ on\ to\ pick\ out\ elements\ of\ lists\ (undo\ whatever\ list-quoting\ were\ applied\ to\ them).\ But\ why\ bother\ with\ \[lrange\],\ when\ it's\ all\ much\ simpler\ with\ \[foreach\]?\n\ proc\ picknested2\ \{L\ args\}\ \{\n\ \ \ \ \ \ \ \ if\ \{\$index\ <\ 0\}\ then\ \{return\ \{\}\}\n\ \ \ \ \ \ \ if\ \{\$index<0\}\ then\ \{return\ \"\"\}\n\ \ \ \ \ \ \ foreach\ L\ \$L\ \{if\ \{\[incr\ index\ -1\]<0\}\ then\ \{break\}\}\n\ \ \ \ \ \ \ if\ \{\$index>=0\}\ then\ \{return\ \"\"\}\n\ \ \ \ return\ \$L\n\}\n\ \}\n(Remove\ first\ and\ last\ \[if\]\ if\ you\ don't\ worry\ about\ correct\ behaviour\ for\ out-of-bounds\ indices.)\nRemove\ the\ first\ and\ last\ `\[if\]`\ if\ you\ don't\ worry\ about\ correct\ behaviour\n----\nTODO!\ \ Update\ this\ page\ to\ describe:\n\[AMG\],\ perhaps\ echoing\ \[Lars\ H\]:\ `\[lrange\]`\ can't\ directly\ be\ used\ to\ obtain\ a\ single\ element\ from\ a\ list.\ \ The\ closest\ it\ comes\ is\ to\ return\ a\ ''list''\ whose\ sole\ element\ is\ the\ one\ you're\ looking\ for.\ \ The\ difference\ is\ the\ same\ as\ that\ between\ a\ value\ and\ a\ single-element\ list\ containing\ that\ value.\ \ For\ many\ values,\ there\ is\ no\ script-visible\ difference\ (unless\ you're\ measuring\ performance,\ see\ \[shimmering\]).\ \ But\ you\ cannot\ rely\ on\ this\ in\ general.\ \ Here's\ an\ example:\n\ \ \ *\ index\ list\ argument\n\ \ \ *\ integer\[\[+-\]\]integer\ indexing\n\ \ \ *\ end+integer\ indexing\n\n<<discussion>>\n----\n**See\ also**\n\ \ \ *\ \[list\]\n\ \ \ *\ \[lappend\]\n\ \ \ *\ \[linsert\]\n\ \ \ *\ \[llength\]\n\ \ \ *\ \[lrange\]\n\ \ \ *\ \[lreplace\]\n\ \ \ *\ \[lsearch\]\n\ \ \ *\ \[lsort\]\n\ \ \ *\ \[Trees\ as\ nested\ lists\]\n\ \ \ *\ \[lindex\ forward\ compatibility\]\n\n----\n!!!!!!\n\[Tcl\ syntax\ help\]\n-\ \[Arts\ and\ crafts\ of\ Tcl-Tk\ programming\]\n%|\ \[Category\ Command\]\ |%\n!!!!!! regexp2} CALL {my render lindex http://www.purl.org/tcl/home/man/tcl/TclCmd/lindex.htm\n\n\ \ \ \ :\ \ \ '''lindex'''\ ''list\ index''\ ?''index\ ...''?\n\n\nTreats\ its\ first\ argument\ as\ a\ Tcl\ list,\ returning\ the\ index'th\ \[element\]\ (where\ ''index''\ must\ be\ an\ integer\ if\ numeric)\ from\ it.\ \ The\ index\ numbers\ begin\ with\ 0\ (zero).\ \ If\ the\ index\ is\ negative\ or\ greater\ than\ or\ equal\ to\ the\ number\ of\ elements\ in\ list,\ an\ empty\ string\ is\ returned.\n\nIf\ instead\ of\ an\ integer,\ the\ string\ '''end'''\ is\ provided,\ the\ last\ element\ of\ the\ list\ is\ returned.\ \ You\ can\ use\ '''end-'''\ ''integer''\ to\ offset\ from\ the\ last\ element.\n**\ Description\ **\nA\ sequence\ of\ indices,\ or\ a\ list\ of\ indices,\ may\ be\ used\;\ this\ results\ in\ there\ being\ a\ sequence\ of\ indices\ which\ are\ used\ in\ order\ to\ drill\ down\ into\ nested\ lists\ (similar\ to\ \[lset\]).\ Thus,\ these\ three\ are\ equivalent:\nlindex\ \$nestedList\ 1\ 2\ 3\nlindex\ \$nestedList\ \{1\ 2\ 3\}\nlindex\ \[lindex\ \[lindex\ \$nestedList\ 1\]\ 2\]\ 3\n======\n\nWithout\ any\ indices,\ or\ with\ an\ empty\ ''indexList'',\ the\ contents\ of\ the\ ''list''\ argument\ are\ returned\ without\ further\ interpretation.\nWithout\ any\ indices,\ or\ with\ an\ empty\ ''indexList'',\ the\ contents\ of\ the\n<<discussion>>\nThe\ announcement\ of\ the\ nested\ list\ functionality\ was\ documented\ here\ as\ follows:\n<<br>>\nAlso\ note\ that\ recent\ http://purl.org/tcl/tip/\ TIPs\ 22\ and\ 45\ have\ been\ implemented\ and\ comitted\ to\ Tcl\ 8.4\ source\ CVS\ tree.\ \ Here\ is\ a\ summary\ of\ the\ new\ functionality\ from\ \[Kevin\ Kenny\]:\n\n\nJeff\ Hobbs\ today\ committed\ to\ the\ CVS\ HEAD\ at\ Sourceforge\ the\ changes\ndescribed\ in\ TIP's\ 22\ (Multiple\ Index\ Arguments\ to\ lindex),\ 33\ (Add\ 'lset'\nCommand\ to\ Assign\ to\ List\ Elements),\ and\ 45\ (Empty\ index\ lists\ for\ \[\[lindex\]\nand\ \[lset\])\n\nThese\ changes\ augment\ the\ \[\[lindex\]\ command\ so\ that\ it\ can\ extract\ elements\nfrom\ sublists,\ for\ example:\n\n\ \ \ \ \[lindex\ \{\{a\ b\ c\}\ \{d\ e\ f\}\ \{g\ h\ i\}\}\ 1\ 1\]\ =>\ e\n\nThey\ also\ implement\ an\ \[\[lset\]\ command\ that\ may\ be\ used\ to\ change\ individual\nelements\ within\ lists\ and\ sublists.\ \ Taken\ together,\ these\ commands\ can\ be\nused\ to\ treat\ lists\ as\ if\ they\ were\ linear\ arrays.\ \ For\ instance,\ the\nfollowing\ procedure\ might\ be\ used\ to\ reverse\ the\ order\ of\ elements\ in\ a\nlist.\n\n\ \ \ \ proc\ reverse\ \{\ list\ \}\ \{\n\ \ \ \ \ \ \ \ set\ i\ 0\n\ \ \ \ \ \ \ \ set\ j\ \[expr\ \{\ \[llength\ \$list\]\ -\ 1\ \}\]\n\ \ \ \ \ \ \ \ while\ \{\ \$j\ >\ \$i\ \}\ \{\n\ \ \ \ \ \ \ \ \ \ \ \ set\ temp\ \[lindex\ \$list\ \$i\]\n\ \ \ \ \ \ \ \ \ \ \ \ lset\ list\ \$i\ \[lindex\ \$list\ \$j\]\n\ \ \ \ \ \ \ \ \ \ \ \ lset\ list\ \$j\ \$temp\n\ \ \ \ \ \ \ \ \ \ \ \ incr\ i\n\ \ \ \ \ \ \ \ \ \ \ \ incr\ j\ -1\n\ \ \ \ \ \ \ \ \}\n\ \ \ \ \ \ \ \ return\ \$list\n\ \ \ \ \}\n\nUpdated\ documentation\ for\ the\ commands\ is\ available\ in\ the\ 'doc/'\ \nsubdirectory\ in\ the\ source\ tree.\ \ The\ original\ proposals\ may\ be\ found\ at\n\n\ \ \ \ http://www.purl.org/tcl/tip/22.htm\ \n\ \ \ \ http://www.purl.org/tcl/tip/33.htm\ \n\ \ \ \ http://www.purl.org/tcl/tip/45.htm\n\n\n--\ \n73\ de\ ke9tv/2,\ Kevin\ KENNY\ \ \ \ \ \ GE\ Corporate\ R&D,\ Niskayuna,\ New\ York,\ USA\n\n----\n\[LES\]\ on\ August\ 15\ 2005:\ What\ does\ \[lindex\]\ do\ that\ \[lrange\]\ doesn't?\n\[pmaage\]\ take\ less\ time\n\[schlenk\]\ direct\ access\ to\ elements\ in\ nested\ lists.\ \ \n\n\n======\n\ proc\ \ picknested\ \ \{\ argList\ \ args\ \}\ \ \ \ \ \ \ \ \ \ \{\nTesting:\n\ \ \ \ for\ \ \{set\ _depth\ 0\}\ \ \{\$_depth\ <\ \[llength\ \$args\]\}\ \ \{incr\ _depth\}\ \ \{\n\ \ \ \ \ \ \ \ \ \ set\ _range\ \[lrange\ \$args\ \$_depth\ \$_depth\]\n\ \ \ \ \ \ \ \ \ \ set\ argList\ \{expand\}\[lrange\ \$argList\ \$_range\ \$_range\]\n\ \ \ \ \}\n\ \ \ \ return\ \$argList\n\ \}\n\n\n======none\n\ %\ picknested\ \{\{a\ b\ c\}\ \{d\ e\ \{foo\ bar\ hey\}\ f\}\ \{g\ h\ i\}\}\ \ 0\n\ a\ b\ c\n\[Lars\ H\]:\ I'd\ go\ further\ and\ say\ `\[lrange\]`\ still\ doesn't\ give\ you\ access\ to\n\ %\ picknested\ \{\{a\ b\ c\}\ \{d\ e\ \{foo\ bar\ hey\}\ f\}\ \{g\ h\ i\}\}\ \ 0\ 1\n\ b\n\ \n\ %\ picknested\ \{\{a\ b\ c\}\ \{d\ e\ \{foo\ bar\ hey\}\ f\}\ \{g\ h\ i\}\}\ \ 1\ 2\n\ foo\ bar\ hey\n\ \n\ %\ picknested\ \{\{a\ b\ c\}\ \{d\ e\ \{foo\ bar\ hey\}\ f\}\ \{g\ h\ i\}\}\ \ 1\ 2\ 0\n\ foo\n\ \n\ %\ picknested\ \{\{a\ b\ c\}\ \{d\ e\ \{foo\ bar\ hey\}\ f\}\ \{g\ h\ i\}\}\ \ 1\ 2\ 2\n\ hey\n\n\[schlenk\]\ Should\ have\ said\ 'easy'\ access.\ You\ can\ do\ the\ same\ with\ lrange,\ yes.\ You\ do\ not\ need\ all\ list\ commands,\nmost\ can\ be\ replaced\ by\ a\ proc\ (think\ lsearch,\ lsort,\ lreplace,\ linsert,\ lindex).\ Its\ just\ a\ tradeoff\ how\ many\nlist\ commands\ exist.\ (see\ \[struct::list\]\ for\ some\ more).\ Having\ more\ or\ fewer\ commands\ is\ mostly\ an\ optimization\ in\ time\ or\ space.\ \ \ \n\ \n\[Lars\ H\]:\ I'd\ go\ further\ and\ say\ \[lrange\]\ still\ doesn't\ give\ you\ access\ to\ the\ nested\ elements--it's\ really\ \[\{expand\}\]\ (and\ in\ the\ case\ of\ the\ indices\ shimmering)\ that\ you\ rely\ on\ to\ pick\ out\ elements\ of\ lists\ (undo\ whatever\ list-quoting\ were\ applied\ to\ them).\ But\ why\ bother\ with\ \[lrange\],\ when\ it's\ all\ much\ simpler\ with\ \[foreach\]?\n\ proc\ picknested2\ \{L\ args\}\ \{\n\ \ \ \ \ \ \ \ if\ \{\$index\ <\ 0\}\ then\ \{return\ \{\}\}\n\ \ \ \ \ \ \ if\ \{\$index<0\}\ then\ \{return\ \"\"\}\n\ \ \ \ \ \ \ foreach\ L\ \$L\ \{if\ \{\[incr\ index\ -1\]<0\}\ then\ \{break\}\}\n\ \ \ \ \ \ \ if\ \{\$index>=0\}\ then\ \{return\ \"\"\}\n\ \ \ \ return\ \$L\n\}\n\ \}\n(Remove\ first\ and\ last\ \[if\]\ if\ you\ don't\ worry\ about\ correct\ behaviour\ for\ out-of-bounds\ indices.)\nRemove\ the\ first\ and\ last\ `\[if\]`\ if\ you\ don't\ worry\ about\ correct\ behaviour\n----\nTODO!\ \ Update\ this\ page\ to\ describe:\n\[AMG\],\ perhaps\ echoing\ \[Lars\ H\]:\ `\[lrange\]`\ can't\ directly\ be\ used\ to\ obtain\ a\ single\ element\ from\ a\ list.\ \ The\ closest\ it\ comes\ is\ to\ return\ a\ ''list''\ whose\ sole\ element\ is\ the\ one\ you're\ looking\ for.\ \ The\ difference\ is\ the\ same\ as\ that\ between\ a\ value\ and\ a\ single-element\ list\ containing\ that\ value.\ \ For\ many\ values,\ there\ is\ no\ script-visible\ difference\ (unless\ you're\ measuring\ performance,\ see\ \[shimmering\]).\ \ But\ you\ cannot\ rely\ on\ this\ in\ general.\ \ Here's\ an\ example:\n\ \ \ *\ index\ list\ argument\n\ \ \ *\ integer\[\[+-\]\]integer\ indexing\n\ \ \ *\ end+integer\ indexing\n\n<<discussion>>\n----\n**See\ also**\n\ \ \ *\ \[list\]\n\ \ \ *\ \[lappend\]\n\ \ \ *\ \[linsert\]\n\ \ \ *\ \[llength\]\n\ \ \ *\ \[lrange\]\n\ \ \ *\ \[lreplace\]\n\ \ \ *\ \[lsearch\]\n\ \ \ *\ \[lsort\]\n\ \ \ *\ \[Trees\ as\ nested\ lists\]\n\ \ \ *\ \[lindex\ forward\ compatibility\]\n\n----\n!!!!!!\n\[Tcl\ syntax\ help\]\n-\ \[Arts\ and\ crafts\ of\ Tcl-Tk\ programming\]\n%|\ \[Category\ Command\]\ |%\n!!!!!!} CALL {my revision lindex} CALL {::oo::Obj6177891 process revision/lindex} CALL {::oo::Obj6177889 process}

-errorcode

NONE

-errorinfo

Unknow state transition: LINE -> END
    while executing
"error $msg"
    (class "::Wiki" method "render_wikit" line 6)
    invoked from within
"my render_$default_markup $N $C $mkup_rendering_engine"
    (class "::Wiki" method "render" line 8)
    invoked from within
"my render $name $C"
    (class "::Wiki" method "revision" line 31)
    invoked from within
"my revision $page"
    (class "::Wiki" method "process" line 56)
    invoked from within
"$server process [string trim $uri /]"

-errorline

4