Commit b424ccfb authored by Sebastien Robin's avatar Sebastien Robin

add business template for CodeMirror

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@42291 20353a03-c40f-0410-a6d1-a30d3c3de9de
parent 271f24cf
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>erp5_code_mirror</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>codemirror</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>contrib</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>csharp</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>css</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="File" module="OFS.Image"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts87948228.91</string> </value>
</item>
<item>
<key> <string>__name__</string> </key>
<value> <string>csharpcolors.css</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>application/x-javascript</string> </value>
</item>
<item>
<key> <string>data</string> </key>
<value> <string>html {\n
cursor: text;\n
}\n
\n
.editbox {\n
margin: .4em;\n
padding: 0;\n
font-family: monospace;\n
font-size: 10pt;\n
color: black;\n
}\n
\n
pre.code, .editbox {\n
color: #666666;\n
}\n
\n
.editbox p {\n
margin: 0;\n
}\n
\n
span.csharp-punctuation {\n
color: green;\n
}\n
\n
span.csharp-operator {\n
color: purple;\n
}\n
\n
span.csharp-keyword {\n
color: blue;\n
}\n
\n
span.csharp-atom {\n
color: brown;\n
}\n
\n
span.csharp-variable {\n
color: black;\n
}\n
\n
span.csharp-variabledef {\n
color: #0000FF;\n
}\n
\n
span.csharp-localvariable {\n
color: #004499;\n
}\n
\n
span.csharp-property {\n
color: black;\n
}\n
\n
span.csharp-comment {\n
color: green;\n
}\n
\n
span.csharp-string {\n
color: red;\n
}\n
\n
</string> </value>
</item>
<item>
<key> <string>precondition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>size</string> </key>
<value> <int>627</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>js</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="File" module="OFS.Image"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts87948228.92</string> </value>
</item>
<item>
<key> <string>__name__</string> </key>
<value> <string>tokenizecsharp.js</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>application/x-javascript</string> </value>
</item>
<item>
<key> <string>data</string> </key>
<value> <string encoding="cdata"><![CDATA[
/* Tokenizer for CSharp code */\n
\n
var tokenizeCSharp = (function() {\n
// Advance the stream until the given character (not preceded by a\n
// backslash) is encountered, or the end of the line is reached.\n
function nextUntilUnescaped(source, end) {\n
var escaped = false;\n
var next;\n
while (!source.endOfLine()) {\n
var next = source.next();\n
if (next == end && !escaped)\n
return false;\n
escaped = !escaped && next == "\\\\";\n
}\n
return escaped;\n
}\n
\n
// A map of JavaScript\'s keywords. The a/b/c keyword distinction is\n
// very rough, but it gives the parser enough information to parse\n
// correct code correctly (we don\'t care that much how we parse\n
// incorrect code). The style information included in these objects\n
// is used by the highlighter to pick the correct CSS style for a\n
// token.\n
var keywords = function(){\n
function result(type, style){\n
return {type: type, style: "csharp-" + style};\n
}\n
// keywords that take a parenthised expression, and then a\n
// statement (if)\n
var keywordA = result("keyword a", "keyword");\n
// keywords that take just a statement (else)\n
var keywordB = result("keyword b", "keyword");\n
// keywords that optionally take an expression, and form a\n
// statement (return)\n
var keywordC = result("keyword c", "keyword");\n
var operator = result("operator", "keyword");\n
var atom = result("atom", "atom");\n
// just a keyword with no indentation implications\n
var keywordD = result("keyword d", "keyword"); \n
\n
return {\n
"if": keywordA, "while": keywordA, "with": keywordA,\n
"else": keywordB, "do": keywordB, "try": keywordB, "finally": keywordB,\n
"return": keywordC, "break": keywordC, "continue": keywordC, "new": keywordC, "delete": keywordC, "throw": keywordC,\n
"in": operator, "typeof": operator, "instanceof": operator,\n
"var": result("var", "keyword"), "function": result("function", "keyword"), "catch": result("catch", "keyword"),\n
"for": result("for", "keyword"), "switch": result("switch", "keyword"),\n
"case": result("case", "keyword"), "default": result("default", "keyword"),\n
"true": atom, "false": atom, "null": atom,\n
\n
"class": result("class", "keyword"), "namespace": result("class", "keyword"),\n
\n
"public": keywordD, "private": keywordD, "protected": keywordD, "internal": keywordD,\n
"extern": keywordD, "override": keywordD, "virtual": keywordD, "abstract": keywordD, \n
"static": keywordD, "out": keywordD, "ref": keywordD, "const": keywordD,\n
\n
"foreach": result("for", "keyword"), "using": keywordC,\n
\n
"int": keywordD, "double": keywordD, "long": keywordD, "bool": keywordD, "char": keywordD, \n
"void": keywordD, "string": keywordD, "byte": keywordD, "sbyte": keywordD, "decimal": keywordD,\n
"float": keywordD, "uint": keywordD, "ulong": keywordD, "object": keywordD,\n
"short": keywordD, "ushort": keywordD,\n
\n
"get": keywordD, "set": keywordD, "value": keywordD \n
};\n
}();\n
\n
// Some helper regexps\n
var isOperatorChar = /[+\\-*&%=<>!?|]/;\n
var isHexDigit = /[0-9A-Fa-f]/;\n
var isWordChar = /[\\w\\$_]/;\n
\n
// Wrapper around jsToken that helps maintain parser state (whether\n
// we are inside of a multi-line comment and whether the next token\n
// could be a regular expression).\n
function jsTokenState(inside, regexp) {\n
return function(source, setState) {\n
var newInside = inside;\n
var type = jsToken(inside, regexp, source, function(c) {newInside = c;});\n
var newRegexp = type.type == "operator" || type.type == "keyword c" || type.type.match(/^[\\[{}\\(,;:]$/);\n
if (newRegexp != regexp || newInside != inside)\n
setState(jsTokenState(newInside, newRegexp));\n
return type;\n
};\n
}\n
\n
// The token reader, inteded to be used by the tokenizer from\n
// tokenize.js (through jsTokenState). Advances the source stream\n
// over a token, and returns an object containing the type and style\n
// of that token.\n
function jsToken(inside, regexp, source, setInside) {\n
function readHexNumber(){\n
source.next(); // skip the \'x\'\n
source.nextWhileMatches(isHexDigit);\n
return {type: "number", style: "csharp-atom"};\n
}\n
\n
function readNumber() {\n
source.nextWhileMatches(/[0-9]/);\n
if (source.equals(".")){\n
source.next();\n
source.nextWhileMatches(/[0-9]/);\n
}\n
if (source.equals("e") || source.equals("E")){\n
source.next();\n
if (source.equals("-"))\n
source.next();\n
source.nextWhileMatches(/[0-9]/);\n
}\n
return {type: "number", style: "csharp-atom"};\n
}\n
// Read a word, look it up in keywords. If not found, it is a\n
// variable, otherwise it is a keyword of the type found.\n
function readWord() {\n
source.nextWhileMatches(isWordChar);\n
var word = source.get();\n
var known = keywords.hasOwnProperty(word) && keywords.propertyIsEnumerable(word) && keywords[word];\n
return known ? {type: known.type, style: known.style, content: word} :\n
{type: "variable", style: "csharp-variable", content: word};\n
}\n
function readRegexp() {\n
nextUntilUnescaped(source, "/");\n
source.nextWhileMatches(/[gi]/);\n
return {type: "regexp", style: "csharp-string"};\n
}\n
// Mutli-line comments are tricky. We want to return the newlines\n
// embedded in them as regular newline tokens, and then continue\n
// returning a comment token for every line of the comment. So\n
// some state has to be saved (inside) to indicate whether we are\n
// inside a /* */ sequence.\n
function readMultilineComment(start){\n
var newInside = "/*";\n
var maybeEnd = (start == "*");\n
while (true) {\n
if (source.endOfLine())\n
break;\n
var next = source.next();\n
if (next == "/" && maybeEnd){\n
newInside = null;\n
break;\n
}\n
maybeEnd = (next == "*");\n
}\n
setInside(newInside);\n
return {type: "comment", style: "csharp-comment"};\n
}\n
function readOperator() {\n
source.nextWhileMatches(isOperatorChar);\n
return {type: "operator", style: "csharp-operator"};\n
}\n
function readString(quote) {\n
var endBackSlash = nextUntilUnescaped(source, quote);\n
setInside(endBackSlash ? quote : null);\n
return {type: "string", style: "csharp-string"};\n
}\n
\n
// Fetch the next token. Dispatches on first character in the\n
// stream, or first two characters when the first is a slash.\n
if (inside == "\\"" || inside == "\'")\n
return readString(inside);\n
var ch = source.next();\n
if (inside == "/*")\n
return readMultilineComment(ch);\n
else if (ch == "\\"" || ch == "\'")\n
return readString(ch);\n
// with punctuation, the type of the token is the symbol itself\n
else if (/[\\[\\]{}\\(\\),;\\:\\.]/.test(ch))\n
return {type: ch, style: "csharp-punctuation"};\n
else if (ch == "0" && (source.equals("x") || source.equals("X")))\n
return readHexNumber();\n
else if (/[0-9]/.test(ch))\n
return readNumber();\n
else if (ch == "/"){\n
if (source.equals("*"))\n
{ source.next(); return readMultilineComment(ch); }\n
else if (source.equals("/"))\n
{ nextUntilUnescaped(source, null); return {type: "comment", style: "csharp-comment"};}\n
else if (regexp)\n
return readRegexp();\n
else\n
return readOperator();\n
}\n
else if (ch == "#") { // treat c# regions like comments\n
nextUntilUnescaped(source, null); return {type: "comment", style: "csharp-comment"};\n
}\n
else if (isOperatorChar.test(ch))\n
return readOperator();\n
else\n
return readWord();\n
}\n
\n
// The external interface to the tokenizer.\n
return function(source, startState) {\n
return tokenizer(source, startState || jsTokenState(false, true));\n
};\n
})();\n
]]></string> </value>
</item>
<item>
<key> <string>precondition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>size</string> </key>
<value> <int>7872</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>lua</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>css</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="File" module="OFS.Image"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts87948228.92</string> </value>
</item>
<item>
<key> <string>__name__</string> </key>
<value> <string>luacolors.css</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>application/x-javascript</string> </value>
</item>
<item>
<key> <string>data</string> </key>
<value> <string>html {\n
cursor: text;\n
}\n
\n
.editbox {\n
margin: .4em;\n
padding: 0;\n
font-family: monospace;\n
font-size: 10pt;\n
color: black;\n
}\n
\n
pre.code, .editbox {\n
color: #666666;\n
}\n
\n
.editbox p {\n
margin: 0;\n
}\n
\n
span.lua-comment {\n
color: #BB9977;\n
}\n
\n
span.lua-keyword {\n
font-weight: bold;\n
color: blue;\n
}\n
\n
span.lua-string {\n
color: #AA2222;\n
}\n
\n
span.lua-stdfunc {\n
font-weight: bold;\n
color: #077;\n
}\n
span.lua-customfunc {\n
font-weight: bold;\n
color: #0AA;\n
}\n
\n
\n
span.lua-identifier {\n
color: black;\n
}\n
\n
span.lua-number {\n
color: #3A3;\n
}\n
\n
span.lua-token {\n
color: #151;\n
}\n
\n
span.lua-error {\n
color: #FFF;\n
background-color: #F00;\n
}\n
\n
\n
\n
\n
</string> </value>
</item>
<item>
<key> <string>precondition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>size</string> </key>
<value> <int>634</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>js</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="File" module="OFS.Image"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts87948228.92</string> </value>
</item>
<item>
<key> <string>__name__</string> </key>
<value> <string>parselua.js</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>application/x-javascript</string> </value>
</item>
<item>
<key> <string>data</string> </key>
<value> <string encoding="cdata"><![CDATA[
/* \n
Simple parser for LUA \n
Written for Lua 5.1, based on parsecss and other parsers. \n
features: highlights keywords, strings, comments (no leveling supported! ("[==[")),tokens, basic indenting\n
\n
to make this parser highlight your special functions pass table with this functions names to parserConfig argument of creator,\n
\t\n
parserConfig: ["myfunction1","myfunction2"],\n
*/\n
\n
\n
function findFirstRegexp(words) {\n
return new RegExp("^(?:" + words.join("|") + ")", "i");\n
}\n
\n
function matchRegexp(words) {\n
return new RegExp("^(?:" + words.join("|") + ")$", "i");\n
}\n
\n
\n
\n
var luaCustomFunctions= matchRegexp([]);\n
\n
function configureLUA(parserConfig){\n
\tif(parserConfig)\n
\tluaCustomFunctions= matchRegexp(parserConfig);\n
}\n
\n
\n
//long list of standard functions from lua manual\n
var luaStdFunctions = matchRegexp([\n
"_G","_VERSION","assert","collectgarbage","dofile","error","getfenv","getmetatable","ipairs","load","loadfile","loadstring","module","next","pairs","pcall","print","rawequal","rawget","rawset","require","select","setfenv","setmetatable","tonumber","tostring","type","unpack","xpcall",\n
\n
"coroutine.create","coroutine.resume","coroutine.running","coroutine.status","coroutine.wrap","coroutine.yield",\n
\n
"debug.debug","debug.getfenv","debug.gethook","debug.getinfo","debug.getlocal","debug.getmetatable","debug.getregistry","debug.getupvalue","debug.setfenv","debug.sethook","debug.setlocal","debug.setmetatable","debug.setupvalue","debug.traceback",\n
\n
"close","flush","lines","read","seek","setvbuf","write",\n
\n
"io.close","io.flush","io.input","io.lines","io.open","io.output","io.popen","io.read","io.stderr","io.stdin","io.stdout","io.tmpfile","io.type","io.write",\n
\n
"math.abs","math.acos","math.asin","math.atan","math.atan2","math.ceil","math.cos","math.cosh","math.deg","math.exp","math.floor","math.fmod","math.frexp","math.huge","math.ldexp","math.log","math.log10","math.max","math.min","math.modf","math.pi","math.pow","math.rad","math.random","math.randomseed","math.sin","math.sinh","math.sqrt","math.tan","math.tanh",\n
\n
"os.clock","os.date","os.difftime","os.execute","os.exit","os.getenv","os.remove","os.rename","os.setlocale","os.time","os.tmpname",\n
\n
"package.cpath","package.loaded","package.loaders","package.loadlib","package.path","package.preload","package.seeall",\n
\n
"string.byte","string.char","string.dump","string.find","string.format","string.gmatch","string.gsub","string.len","string.lower","string.match","string.rep","string.reverse","string.sub","string.upper",\n
\n
"table.concat","table.insert","table.maxn","table.remove","table.sort"\n
]);\n
\n
\n
\n
var luaKeywords = matchRegexp(["and","break","elseif","false","nil","not","or","return",\n
\t\t\t\t"true","function", "end", "if", "then", "else", "do", \n
\t\t\t\t"while", "repeat", "until", "for", "in", "local" ]);\n
\n
var luaIndentKeys = matchRegexp(["function", "if","repeat","for","while", "[\\(]", "{"]);\n
var luaUnindentKeys = matchRegexp(["end", "until", "[\\)]", "}"]);\n
\n
var luaUnindentKeys2 = findFirstRegexp(["end", "until", "[\\)]", "}"]);\n
var luaMiddleKeys = findFirstRegexp(["else","elseif"]);\n
\n
\n
\n
var LUAParser = Editor.Parser = (function() {\n
var tokenizeLUA = (function() {\n
function normal(source, setState) {\n
var ch = source.next();\n
\n
if (ch == "-" && source.equals("-")) {\n
source.next();\n
\t\tsetState(inSLComment);\n
return null;\n
} \n
\telse if (ch == "\\"" || ch == "\'") {\n
setState(inString(ch));\n
return null;\n
}\n
if (ch == "[" && (source.equals("[") || source.equals("="))) {\n
var level = 0;\n
\t\twhile(source.equals("=")){\n
\t\t\tlevel ++;\n
\t\t\tsource.next();\n
\t\t}\n
\t\tif(! source.equals("[") )\n
\t\t\treturn "lua-error";\t\t\n
\t\tsetState(inMLSomething(level,"lua-string"));\n
return null;\n
} \n
\t \n
else if (ch == "=") {\n
\tif (source.equals("="))\n
\t\tsource.next();\n
return "lua-token";\n
}\n
\t\n
else if (ch == ".") {\n
\tif (source.equals("."))\n
\t\tsource.next();\n
\tif (source.equals("."))\n
\t\tsource.next();\n
return "lua-token";\n
}\n
\n
else if (ch == "+" || ch == "-" || ch == "*" || ch == "/" || ch == "%" || ch == "^" || ch == "#" ) {\n
return "lua-token";\n
}\n
else if (ch == ">" || ch == "<" || ch == "(" || ch == ")" || ch == "{" || ch == "}" || ch == "[" ) {\n
return "lua-token";\n
}\n
else if (ch == "]" || ch == ";" || ch == ":" || ch == ",") {\n
return "lua-token";\n
}\n
else if (source.equals("=") && (ch == "~" || ch == "<" || ch == ">")) {\n
source.next();\n
return "lua-token";\n
}\n
\n
else if (/\\d/.test(ch)) {\n
source.nextWhileMatches(/[\\w.%]/);\n
return "lua-number";\n
}\n
else {\n
source.nextWhileMatches(/[\\w\\\\\\-_.]/);\n
return "lua-identifier";\n
}\n
}\n
\n
function inSLComment(source, setState) {\n
var start = true;\n
\tvar count=0;\n
while (!source.endOfLine()) {\n
\t \tvar ch = source.next();\n
\t\tvar level = 0;\n
\t\tif ((ch =="[") && start){\n
\t\t\twhile(source.equals("=")){\n
\t\t\tsource.next();\n
\t\t\tlevel++;\n
\t\t\t}\n
\t\t\tif (source.equals("[")){\n
\t\t\t\tsetState(inMLSomething(level,"lua-comment"));\n
\t\t\treturn null;\n
\t\t\t\t}\n
\t\t }\n
\t\t start = false;\t\n
\t}\n
\tsetState(normal); \t\t\n
return "lua-comment";\n
\t\n
}\n
\n
function inMLSomething(level,what) {\n
\t//wat sholud be "lua-string" or "lua-comment", level is the number of "=" in opening mark.\n
\treturn function(source, setState){\n
var dashes = 0;\n
while (!source.endOfLine()) {\n
var ch = source.next();\n
if (dashes == level+1 && ch == "]" ) {\n
setState(normal);\n
break;\n
}\n
\t\tif (dashes == 0) \n
\t\t\tdashes = (ch == "]") ? 1:0;\n
\t\telse\n
\t\t\tdashes = (ch == "=") ? dashes + 1 : 0;\n
}\n
return what;\n
\t }\n
}\n
\n
\n
function inString(quote) {\n
return function(source, setState) {\n
var escaped = false;\n
while (!source.endOfLine()) {\n
var ch = source.next();\n
if (ch == quote && !escaped)\n
break;\n
escaped = !escaped && ch == "\\\\";\n
}\n
if (!escaped)\n
setState(normal);\n
return "lua-string";\n
};\n
}\n
\n
return function(source, startState) {\n
return tokenizer(source, startState || normal);\n
};\n
})();\n
\n
function indentLUA(indentDepth, base) {\n
return function(nextChars) {\n
\n
var closing = (luaUnindentKeys2.test(nextChars) || luaMiddleKeys.test(nextChars));\n
\n
\t\n
\treturn base + ( indentUnit * (indentDepth - (closing?1:0)) );\n
};\n
}\n
\n
\n
function parseLUA(source,basecolumn) {\n
basecolumn = basecolumn || 0;\n
\n
\tvar tokens = tokenizeLUA(source);\n
var indentDepth = 0;\n
\n
var iter = {\n
next: function() {\n
var token = tokens.next(), style = token.style, content = token.content;\n
\n
\n
\t\n
\tif (style == "lua-identifier" && luaKeywords.test(content)){\n
\t token.style = "lua-keyword";\n
\t}\t\n
\tif (style == "lua-identifier" && luaStdFunctions.test(content)){\n
\t token.style = "lua-stdfunc";\n
\t}\n
\tif (style == "lua-identifier" && luaCustomFunctions.test(content)){\n
\t token.style = "lua-customfunc";\n
\t}\n
\n
\tif (luaIndentKeys.test(content))\n
\tindentDepth++;\n
\telse if (luaUnindentKeys.test(content))\n
\t\tindentDepth--;\n
\n
\n
if (content == "\\n")\n
token.indentation = indentLUA( indentDepth, basecolumn);\n
\n
return token;\n
},\n
\n
copy: function() {\n
var _tokenState = tokens.state, _indentDepth = indentDepth;\n
return function(source) {\n
tokens = tokenizeLUA(source, _tokenState);\n
\n
\t indentDepth = _indentDepth;\n
return iter;\n
};\n
}\n
};\n
return iter;\n
}\n
\n
return {make: parseLUA, configure:configureLUA, electricChars: "delf})"}; //en[d] els[e] unti[l] elsei[f] // this should be taken from Keys keywords\n
})();\n
\n
]]></string> </value>
</item>
<item>
<key> <string>precondition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>size</string> </key>
<value> <int>7721</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>ometa</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>css</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="File" module="OFS.Image"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts87948228.92</string> </value>
</item>
<item>
<key> <string>__name__</string> </key>
<value> <string>ometacolors.css</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>application/x-javascript</string> </value>
</item>
<item>
<key> <string>data</string> </key>
<value> <string>html {\n
cursor: text;\n
}\n
\n
.editbox {\n
margin: .4em;\n
padding: 0;\n
font-family: monospace;\n
font-size: 10pt;\n
color: black;\n
}\n
\n
pre.code, .editbox {\n
color: #666666;\n
}\n
\n
.editbox p {\n
margin: 0;\n
}\n
\n
span.js-punctuation {\n
color: #666666;\n
}\n
\n
span.js-operator {\n
color: #E1570F;\n
}\n
\n
span.js-keyword {\n
color: #770088;\n
}\n
\n
span.js-atom {\n
color: #228811;\n
}\n
\n
span.js-variable {\n
color: black;\n
}\n
\n
span.js-variabledef {\n
color: #0000FF;\n
}\n
\n
span.js-localvariable {\n
color: #004499;\n
}\n
\n
span.js-property {\n
color: black;\n
}\n
\n
span.js-comment {\n
color: #AA7700;\n
}\n
\n
span.js-string {\n
color: #AA2222;\n
}\n
\n
span.ometa-binding {\n
color: #FF0000;\n
}\n
</string> </value>
</item>
<item>
<key> <string>precondition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>size</string> </key>
<value> <int>642</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>js</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="File" module="OFS.Image"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts87948228.92</string> </value>
</item>
<item>
<key> <string>__name__</string> </key>
<value> <string>tokenizeometa.js</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>application/x-javascript</string> </value>
</item>
<item>
<key> <string>data</string> </key>
<value> <string encoding="cdata"><![CDATA[
/* Tokenizer for JavaScript code */\n
\n
var tokenizeJavaScript = (function() {\n
// Advance the stream until the given character (not preceded by a\n
// backslash) is encountered, or the end of the line is reached.\n
function nextUntilUnescaped(source, end) {\n
var escaped = false;\n
while (!source.endOfLine()) {\n
var next = source.next();\n
if (next == end && !escaped)\n
return false;\n
escaped = !escaped && next == "\\\\";\n
}\n
return escaped;\n
}\n
\n
// A map of JavaScript\'s keywords. The a/b/c keyword distinction is\n
// very rough, but it gives the parser enough information to parse\n
// correct code correctly (we don\'t care that much how we parse\n
// incorrect code). The style information included in these objects\n
// is used by the highlighter to pick the correct CSS style for a\n
// token.\n
var keywords = function(){\n
function result(type, style){\n
return {type: type, style: "js-" + style};\n
}\n
// keywords that take a parenthised expression, and then a\n
// statement (if)\n
var keywordA = result("keyword a", "keyword");\n
// keywords that take just a statement (else)\n
var keywordB = result("keyword b", "keyword");\n
// keywords that optionally take an expression, and form a\n
// statement (return)\n
var keywordC = result("keyword c", "keyword");\n
var operator = result("operator", "keyword");\n
var atom = result("atom", "atom");\n
return {\n
"if": keywordA, "while": keywordA, "with": keywordA,\n
"else": keywordB, "do": keywordB, "try": keywordB, "finally": keywordB,\n
"return": keywordC, "break": keywordC, "continue": keywordC, "new": keywordC, "delete": keywordC, "throw": keywordC,\n
"in": operator, "typeof": operator, "instanceof": operator,\n
"var": result("var", "keyword"), "function": result("function", "keyword"), "catch": result("catch", "keyword"),\n
"for": result("for", "keyword"), "switch": result("switch", "keyword"),\n
"case": result("case", "keyword"), "default": result("default", "keyword"),\n
"true": atom, "false": atom, "null": atom, "undefined": atom, "NaN": atom, "Infinity": atom,\n
"ometa": keywordB\n
};\n
}();\n
\n
// Some helper regexps\n
var isOperatorChar = /[+\\-*&%=<>!?|~]/;\n
var isHexDigit = /[0-9A-Fa-f]/;\n
var isWordChar = /[\\w\\$_]/;\n
\n
// Wrapper around jsToken that helps maintain parser state (whether\n
// we are inside of a multi-line comment and whether the next token\n
// could be a regular expression).\n
function jsTokenState(inside, regexp) {\n
return function(source, setState) {\n
var newInside = inside;\n
var type = jsToken(inside, regexp, source, function(c) {newInside = c;});\n
var newRegexp = type.type == "operator" || type.type == "keyword c" || type.type.match(/^[\\[{}\\(,;:]$/);\n
if (newRegexp != regexp || newInside != inside)\n
setState(jsTokenState(newInside, newRegexp));\n
return type;\n
};\n
}\n
\n
// The token reader, intended to be used by the tokenizer from\n
// tokenize.js (through jsTokenState). Advances the source stream\n
// over a token, and returns an object containing the type and style\n
// of that token.\n
function jsToken(inside, regexp, source, setInside) {\n
function readHexNumber(){\n
source.next(); // skip the \'x\'\n
source.nextWhileMatches(isHexDigit);\n
return {type: "number", style: "js-atom"};\n
}\n
\n
function readNumber() {\n
source.nextWhileMatches(/[0-9]/);\n
if (source.equals(".")){\n
source.next();\n
source.nextWhileMatches(/[0-9]/);\n
}\n
if (source.equals("e") || source.equals("E")){\n
source.next();\n
if (source.equals("-"))\n
source.next();\n
source.nextWhileMatches(/[0-9]/);\n
}\n
return {type: "number", style: "js-atom"};\n
}\n
// Read a word, look it up in keywords. If not found, it is a\n
// variable, otherwise it is a keyword of the type found.\n
function readWord() {\n
source.nextWhileMatches(isWordChar);\n
var word = source.get();\n
var known = keywords.hasOwnProperty(word) && keywords.propertyIsEnumerable(word) && keywords[word];\n
return known ? {type: known.type, style: known.style, content: word} :\n
{type: "variable", style: "js-variable", content: word};\n
}\n
function readRegexp() {\n
nextUntilUnescaped(source, "/");\n
source.nextWhileMatches(/[gi]/);\n
return {type: "regexp", style: "js-string"};\n
}\n
// Mutli-line comments are tricky. We want to return the newlines\n
// embedded in them as regular newline tokens, and then continue\n
// returning a comment token for every line of the comment. So\n
// some state has to be saved (inside) to indicate whether we are\n
// inside a /* */ sequence.\n
function readMultilineComment(start){\n
var newInside = "/*";\n
var maybeEnd = (start == "*");\n
while (true) {\n
if (source.endOfLine())\n
break;\n
var next = source.next();\n
if (next == "/" && maybeEnd){\n
newInside = null;\n
break;\n
}\n
maybeEnd = (next == "*");\n
}\n
setInside(newInside);\n
return {type: "comment", style: "js-comment"};\n
}\n
function readMultilineString(start, quotes) {\n
var newInside = quotes;\n
var quote = quotes.charAt(0);\n
var maybeEnd = (start == quote);\n
while (true) {\n
if (source.endOfLine())\n
break;\n
var next = source.next();\n
if (next == quote && source.peek() == quote && maybeEnd) {\n
source.next();\n
newInside = null;\n
break;\n
}\n
maybeEnd = (next == quote);\n
}\n
setInside(newInside);\n
return {type: "multilineString", style: "js-string"};\n
}\n
function readOperator() {\n
source.nextWhileMatches(isOperatorChar);\n
return {type: "operator", style: "js-operator"};\n
}\n
function readString(quote) {\n
var endBackSlash = nextUntilUnescaped(source, quote);\n
setInside(endBackSlash ? quote : null);\n
return {type: "string", style: "js-string"};\n
}\n
function readOmetaIdentifierString() {\n
source.nextWhileMatches(isWordChar);\n
return {type: "string", style: "js-string"};\n
}\n
function readOmetaBinding() {\n
source.nextWhileMatches(isWordChar);\n
return {type: "variable", style: "ometa-binding"};\n
}\n
\n
// Fetch the next token. Dispatches on first character in the\n
// stream, or first two characters when the first is a slash.\n
if (inside == "\\"" || inside == "\'")\n
return readString(inside);\n
var ch = source.next();\n
if (inside == "/*")\n
return readMultilineComment(ch);\n
if (inside == \'"""\' || inside == "\'\'\'")\n
return readMultilineString(ch, inside);\n
if (ch == \'"\' && source.lookAhead(\'""\', true) || ch == "\'" && source.lookAhead("\'\'", true))\n
return readMultilineString(\'-\', ch+ch+ch); // work as far as \'-\' is not \'"\' nor "\'"\n
else if (ch == "\\"" || ch == "\'")\n
return readString(ch);\n
else if (ch == "`" || ch == "#" )\n
return readOmetaIdentifierString();\n
else if (ch == \':\' && isWordChar.test(source.peek())) \n
return readOmetaBinding();\n
// with punctuation, the type of the token is the symbol itself\n
else if (/[\\[\\]{}\\(\\),;\\:\\.]/.test(ch))\n
return {type: ch, style: "js-punctuation"};\n
else if (ch == "0" && (source.equals("x") || source.equals("X")))\n
return readHexNumber();\n
else if (/[0-9]/.test(ch))\n
return readNumber();\n
else if (ch == "/"){\n
if (source.equals("*"))\n
{ source.next(); return readMultilineComment(ch); }\n
else if (source.equals("/"))\n
{ nextUntilUnescaped(source, null); return {type: "comment", style: "js-comment"};}\n
else if (regexp)\n
return readRegexp();\n
else\n
return readOperator();\n
}\n
else if (isOperatorChar.test(ch))\n
return readOperator();\n
else\n
return readWord();\n
}\n
\n
// The external interface to the tokenizer.\n
return function(source, startState) {\n
return tokenizer(source, startState || jsTokenState(false, true));\n
};\n
})();\n
]]></string> </value>
</item>
<item>
<key> <string>precondition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>size</string> </key>
<value> <int>8070</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>php</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>css</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="File" module="OFS.Image"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts87948228.92</string> </value>
</item>
<item>
<key> <string>__name__</string> </key>
<value> <string>phpcolors.css</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>application/x-javascript</string> </value>
</item>
<item>
<key> <string>data</string> </key>
<value> <string encoding="cdata"><![CDATA[
/*\n
Copyright (c) 2008-2009 Yahoo! Inc. All rights reserved.\n
The copyrights embodied in the content of this file are licensed by\n
Yahoo! Inc. under the BSD (revised) open source license\n
\n
@author Dan Vlad Dascalescu <dandv@yahoo-inc.com>\n
*/\n
\n
html {\n
cursor: text;\n
}\n
\n
.editbox {\n
margin: .4em;\n
padding: 0;\n
font-family: monospace;\n
font-size: 10pt;\n
}\n
\n
/*We should define specific styles for every element of the syntax.\n
the setting below will cause some annoying color to show through if we missed\n
defining a style for a token. This is also the "color" of the whitespace and\n
of the cursor.\n
*/\n
pre.code, .editbox {\n
color: red;\n
}\n
\n
.editbox p {\n
margin: 0;\n
}\n
\n
span.php-punctuation {\n
color: blue;\n
}\n
\n
span.php-keyword {\n
color: #770088;\n
font-weight: bold;\n
}\n
\n
span.php-operator {\n
color: blue;\n
}\n
\n
/* __FILE__ etc.; http://php.net/manual/en/reserved.php */\n
span.php-compile-time-constant {\n
color: #776088;\n
font-weight: bold;\n
}\n
\n
/* output of get_defined_constants(). Differs from http://php.net/manual/en/reserved.constants.php */\n
span.php-predefined-constant {\n
color: darkgreen;\n
font-weight: bold;\n
}\n
\n
/* PHP reserved "language constructs"... echo() etc.; http://php.net/manual/en/reserved.php */\n
span.php-reserved-language-construct {\n
color: green;\n
font-weight: bold;\n
}\n
\n
/* PHP built-in functions: glob(), chr() etc.; output of get_defined_functions()["internal"] */\n
span.php-predefined-function {\n
color: green;\n
}\n
\n
/* PHP predefined classes: PDO, Exception etc.; output of get_declared_classes() and different from http://php.net/manual/en/reserved.classes.php */\n
span.php-predefined-class {\n
color: green;\n
}\n
\n
span.php-atom {\n
color: #228811;\n
}\n
\n
/* class, interface, namespace or function names, but not $variables */\n
span.php-t_string {\n
color: black;\n
}\n
\n
span.php-variable {\n
color: black;\n
font-weight: bold;\n
}\n
\n
\n
span.js-localvariable {\n
color: #004499;\n
}\n
\n
span.php-comment {\n
color: #AA7700;\n
font-stretch: condensed;\n
/* font-style: italic; This causes line height to slightly change, getting line numbers out of sync */\n
}\n
\n
span.php-string-single-quoted {\n
color: #AA2222;\n
}\n
/* double quoted strings allow interpolation */\n
span.php-string-double-quoted {\n
color: #AA2222;\n
font-weight: bold;\n
}\n
\n
span.syntax-error {\n
background-color: red;\n
}\n
\n
span.deprecated {\n
font-size: smaller;\n
}\n
]]></string> </value>
</item>
<item>
<key> <string>precondition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>size</string> </key>
<value> <int>2325</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>js</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="File" module="OFS.Image"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts87948228.92</string> </value>
</item>
<item>
<key> <string>__name__</string> </key>
<value> <string>parsephphtmlmixed.js</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>application/x-javascript</string> </value>
</item>
<item>
<key> <string>data</string> </key>
<value> <string encoding="cdata"><![CDATA[
/*\n
Copyright (c) 2008-2009 Yahoo! Inc. All rights reserved.\n
The copyrights embodied in the content of this file are licensed by\n
Yahoo! Inc. under the BSD (revised) open source license\n
\n
@author Dan Vlad Dascalescu <dandv@yahoo-inc.com>\n
\n
Based on parsehtmlmixed.js by Marijn Haverbeke.\n
*/\n
\n
var PHPHTMLMixedParser = Editor.Parser = (function() {\n
var processingInstructions = ["<?php"];\n
\n
if (!(PHPParser && CSSParser && JSParser && XMLParser))\n
throw new Error("PHP, CSS, JS, and XML parsers must be loaded for PHP+HTML mixed mode to work.");\n
XMLParser.configure({useHTMLKludges: true});\n
\n
function parseMixed(stream) {\n
var htmlParser = XMLParser.make(stream), localParser = null,\n
inTag = false, lastAtt = null, phpParserState = null;\n
var iter = {next: top, copy: copy};\n
\n
function top() {\n
var token = htmlParser.next();\n
if (token.content == "<")\n
inTag = true;\n
else if (token.style == "xml-tagname" && inTag === true)\n
inTag = token.content.toLowerCase();\n
else if (token.style == "xml-attname")\n
lastAtt = token.content;\n
else if (token.type == "xml-processing") {\n
// see if this opens a PHP block\n
for (var i = 0; i < processingInstructions.length; i++)\n
if (processingInstructions[i] == token.content) {\n
iter.next = local(PHPParser, "?>");\n
break;\n
}\n
}\n
else if (token.style == "xml-attribute" && token.content == "\\"php\\"" && inTag == "script" && lastAtt == "language")\n
inTag = "script/php";\n
// "xml-processing" tokens are ignored, because they should be handled by a specific local parser\n
else if (token.content == ">") {\n
if (inTag == "script/php")\n
iter.next = local(PHPParser, "</script>");\n
else if (inTag == "script")\n
iter.next = local(JSParser, "</script");\n
else if (inTag == "style")\n
iter.next = local(CSSParser, "</style");\n
lastAtt = null;\n
inTag = false;\n
}\n
return token;\n
}\n
function local(parser, tag) {\n
var baseIndent = htmlParser.indentation();\n
if (parser == PHPParser && phpParserState)\n
localParser = phpParserState(stream);\n
else\n
localParser = parser.make(stream, baseIndent + indentUnit);\n
\n
return function() {\n
if (stream.lookAhead(tag, false, false, true)) {\n
if (parser == PHPParser) phpParserState = localParser.copy();\n
localParser = null;\n
iter.next = top;\n
return top(); // pass the ending tag to the enclosing parser\n
}\n
\n
var token = localParser.next();\n
var lt = token.value.lastIndexOf("<"), sz = Math.min(token.value.length - lt, tag.length);\n
if (lt != -1 && token.value.slice(lt, lt + sz).toLowerCase() == tag.slice(0, sz) &&\n
stream.lookAhead(tag.slice(sz), false, false, true)) {\n
stream.push(token.value.slice(lt));\n
token.value = token.value.slice(0, lt);\n
}\n
\n
if (token.indentation) {\n
var oldIndent = token.indentation;\n
token.indentation = function(chars) {\n
if (chars == "</")\n
return baseIndent;\n
else\n
return oldIndent(chars);\n
}\n
}\n
\n
return token;\n
};\n
}\n
\n
function copy() {\n
var _html = htmlParser.copy(), _local = localParser && localParser.copy(),\n
_next = iter.next, _inTag = inTag, _lastAtt = lastAtt, _php = phpParserState;\n
return function(_stream) {\n
stream = _stream;\n
htmlParser = _html(_stream);\n
localParser = _local && _local(_stream);\n
phpParserState = _php;\n
iter.next = _next;\n
inTag = _inTag;\n
lastAtt = _lastAtt;\n
return iter;\n
};\n
}\n
return iter;\n
}\n
\n
return {\n
make: parseMixed,\n
electricChars: "{}/:",\n
configure: function(conf) {\n
if (conf.opening != null) processingInstructions = conf.opening;\n
}\n
};\n
\n
})();\n
]]></string> </value>
</item>
<item>
<key> <string>precondition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>size</string> </key>
<value> <int>3981</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>plsql</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>css</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="File" module="OFS.Image"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts87948228.93</string> </value>
</item>
<item>
<key> <string>__name__</string> </key>
<value> <string>plsqlcolors.css</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>application/x-javascript</string> </value>
</item>
<item>
<key> <string>data</string> </key>
<value> <string>html {\n
cursor: text;\n
}\n
\n
.editbox {\n
margin: .4em;\n
padding: 0;\n
font-family: monospace;\n
font-size: 10pt;\n
color: black;\n
}\n
\n
.editbox p {\n
margin: 0;\n
}\n
\n
span.plsql-keyword {\n
color: blue;\n
}\n
\n
span.plsql-var {\n
color: red;\n
}\n
\n
span.plsql-comment {\n
color: #AA7700;\n
}\n
\n
span.plsql-literal {\n
color: green;\n
}\n
\n
span.plsql-operator {\n
color: blue;\n
}\n
\n
span.plsql-word {\n
color: black;\n
}\n
\n
span.plsql-function {\n
color: darkorange;\n
}\n
\n
span.plsql-type {\n
color: purple;\n
}\n
\n
span.plsql-separator {\n
color: #666666;\n
}\n
\n
span.plsql-number {\n
color: darkcyan;\n
}\n
\n
\n
</string> </value>
</item>
<item>
<key> <string>precondition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>size</string> </key>
<value> <int>563</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>js</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>python</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>css</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="File" module="OFS.Image"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts87948228.93</string> </value>
</item>
<item>
<key> <string>__name__</string> </key>
<value> <string>pythoncolors.css</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>application/x-javascript</string> </value>
</item>
<item>
<key> <string>data</string> </key>
<value> <string>html {\n
cursor: text;\n
}\n
\n
.editbox {\n
padding: .4em;\n
margin: 0;\n
font-family: monospace;\n
font-size: 10pt;\n
line-height: 1.1em;\n
color: black;\n
}\n
\n
pre.code, .editbox {\n
color: #666666;\n
}\n
\n
.editbox p {\n
margin: 0;\n
}\n
\n
span.py-delimiter, span.py-special {\n
color: #666666;\n
}\n
\n
span.py-operator {\n
color: #666666;\n
}\n
\n
span.py-error {\n
background-color: #660000;\n
color: #FFFFFF;\n
}\n
\n
span.py-keyword {\n
color: #770088;\n
font-weight: bold;\n
}\n
\n
span.py-literal {\n
color: #228811;\n
}\n
\n
span.py-identifier, span.py-func {\n
color: black;\n
}\n
\n
span.py-type, span.py-decorator {\n
color: #0000FF;\n
}\n
\n
span.py-comment {\n
color: #AA7700;\n
}\n
\n
span.py-string, span.py-bytes, span.py-raw, span.py-unicode {\n
color: #AA2222;\n
}\n
</string> </value>
</item>
<item>
<key> <string>precondition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>size</string> </key>
<value> <int>718</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>js</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>scheme</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>css</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="File" module="OFS.Image"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_EtagSupport__etag</string> </key>
<value> <string>ts87948228.93</string> </value>
</item>
<item>
<key> <string>__name__</string> </key>
<value> <string>schemecolors.css</string> </value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>application/x-javascript</string> </value>
</item>
<item>
<key> <string>data</string> </key>
<value> <string>html {\n
cursor: text;\n
width: 100%;\n
height: 100%;\n
background-color: white;\n
}\n
\n
.editbox {\n
width: 100%;\n
height: 100%;\n
margin: 0pt;\n
padding: 0;\n
font-family: monospace;\n
font-size: 10pt;\n
color: black;\n
}\n
\n
\n
\n
pre.code, .editbox {\n
color: #666666;\n
}\n
\n
.editbox p {\n
margin: 0;\n
}\n
\n
span.scheme-string\t{color: green;}\n
span.scheme-number\t{color: blue;}\n
span.scheme-boolean {color: darkred;}\n
span.scheme-character\t{color: orange;}\n
span.scheme-symbol\t{color: steelblue;}\n
span.scheme-punctuation {color: black;}\n
span.scheme-lparen {color: black;}\n
span.scheme-rparen {color: black;}\n
span.scheme-comment { color: orange; }\n
\n
span.good-matching-paren { \n
font-weight: bold;\n
color: #3399FF; \n
}\n
span.bad-matching-paren {\n
font-weight: bold;\n
color: red;\n
}\n
</string> </value>
</item>
<item>
<key> <string>precondition</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>size</string> </key>
<value> <int>787</int> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>js</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>sql</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>css</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>js</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Folder" module="OFS.Folder"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_objects</string> </key>
<value>
<tuple/>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>xquery</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string></string> </value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
2011-01-13 Seb
* Initial creation
\ No newline at end of file
Copyright (c) 2011 Nexedi SA
\ No newline at end of file
erp5_view_style
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment