jupiter
This commit is contained in:
parent
b2c8b9a06e
commit
ec518d7d36
@ -11,7 +11,7 @@
|
||||
})(function(CodeMirror) {
|
||||
"use strict";
|
||||
|
||||
CodeMirror.defineMode("prolog", function(cmConfig, modeConfig) {
|
||||
CodeMirror.defineMode("prolog", function(cm_config, parserConfig) {
|
||||
|
||||
function chain(stream, state, f) {
|
||||
state.tokenize = f;
|
||||
@ -22,17 +22,15 @@
|
||||
* CONFIG DATA *
|
||||
*******************************/
|
||||
|
||||
var config = { quasiQuotations: false, /* {|Syntax||Quotation|} */
|
||||
var config = {
|
||||
quasiQuotations : false, /* {|Syntax||Quotation|} */
|
||||
dicts : false, /* tag{k:v, ...} */
|
||||
unicodeEscape : true, /* \uXXXX and \UXXXXXXXX */
|
||||
multiLineQuoted : true, /* "...\n..." */
|
||||
groupedIntegers : false /* 10 000 or 10_000 */
|
||||
};
|
||||
|
||||
var quoteType = { '"': "string",
|
||||
"'": "qatom",
|
||||
"`": "bqstring"
|
||||
};
|
||||
var quoteType = {'"' : "string", "'" : "qatom", "`" : "bqstring"};
|
||||
|
||||
var isSingleEscChar = /[abref\\'"nrtsv]/;
|
||||
var isOctalDigit = /[0-7]/;
|
||||
@ -43,7 +41,6 @@
|
||||
var isNeck = /^(:-|-->)$/;
|
||||
var isControlOp = /^(,|;|->|\*->|\\+|\|)$/;
|
||||
|
||||
|
||||
/*******************************
|
||||
* CHARACTER ESCAPES *
|
||||
*******************************/
|
||||
@ -65,8 +62,8 @@
|
||||
var next = stream.next();
|
||||
if (isSingleEscChar.test(next))
|
||||
return true;
|
||||
switch( next )
|
||||
{ case "u":
|
||||
switch (next) {
|
||||
case "u":
|
||||
if (config.unicodeEscape)
|
||||
return readDigits(stream, isHexDigit, 4); /* SWI */
|
||||
return false;
|
||||
@ -74,9 +71,13 @@
|
||||
if (config.unicodeEscape)
|
||||
return readDigits(stream, isHexDigit, 8); /* SWI */
|
||||
return false;
|
||||
case null: return true; /* end of line */
|
||||
case "c": stream.eatSpace(); return true;
|
||||
case "x": return readDigits(stream, isHexDigit, 2);
|
||||
case null:
|
||||
return true; /* end of line */
|
||||
case "c":
|
||||
stream.eatSpace();
|
||||
return true;
|
||||
case "x":
|
||||
return readDigits(stream, isHexDigit, 2);
|
||||
}
|
||||
if (isOctalDigit.test(next)) {
|
||||
if (!readDigits(stream, isOctalDigit, -1))
|
||||
@ -91,12 +92,12 @@
|
||||
function nextUntilUnescaped(stream, state, end) {
|
||||
var next;
|
||||
while ((next = stream.next()) != null) {
|
||||
if ( next == end && end != stream.peek() )
|
||||
{ state.nesting.pop();
|
||||
if (next == end && end != stream.peek()) {
|
||||
state.nesting.pop();
|
||||
return false;
|
||||
}
|
||||
if ( next == "\\" )
|
||||
{ if ( !readEsc(stream) )
|
||||
if (next == "\\") {
|
||||
if (!readEsc(stream))
|
||||
return false;
|
||||
}
|
||||
}
|
||||
@ -107,9 +108,7 @@
|
||||
* CONTEXT NESTING *
|
||||
*******************************/
|
||||
|
||||
function nesting(state) {
|
||||
return state.nesting.slice(-1)[0];
|
||||
}
|
||||
function nesting(state) { return state.nesting.slice(-1)[0]; }
|
||||
|
||||
/* Called on every non-comment token */
|
||||
function setArg1(state) {
|
||||
@ -159,18 +158,17 @@
|
||||
// consing up tons of objects.
|
||||
var type, content;
|
||||
function ret(tp, style, cont) {
|
||||
type = tp; content = cont;
|
||||
type = tp;
|
||||
content = cont;
|
||||
return style;
|
||||
}
|
||||
|
||||
function peekSpace(stream) { /* TBD: handle block comment as space */
|
||||
if ( stream.eol() ||
|
||||
/[\s%]/.test(stream.peek()) )
|
||||
if (stream.eol() || /[\s%]/.test(stream.peek()))
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/*******************************
|
||||
* SUB TOKENISERS *
|
||||
*******************************/
|
||||
@ -180,7 +178,8 @@
|
||||
|
||||
if (ch == "(") {
|
||||
if (state.lastType == "functor") {
|
||||
state.nesting.push({ functor: state.functorName,
|
||||
state.nesting.push({
|
||||
functor : state.functorName,
|
||||
column : stream.column(),
|
||||
leftCol : state.functorColumn,
|
||||
arg : 0
|
||||
@ -188,7 +187,8 @@
|
||||
delete state.functorName;
|
||||
delete state.functorColumn;
|
||||
} else {
|
||||
state.nesting.push({ type: "control",
|
||||
state.nesting.push({
|
||||
type : "control",
|
||||
closeColumn : stream.column(),
|
||||
alignment : stream.column() + 4
|
||||
});
|
||||
@ -197,7 +197,8 @@
|
||||
}
|
||||
|
||||
if (ch == "{" && state.lastType == "tag") {
|
||||
state.nesting.push({ tag: state.tagName,
|
||||
state.nesting.push({
|
||||
tag : state.tagName,
|
||||
column : stream.column(),
|
||||
leftCol : state.tagColumn,
|
||||
arg : 0
|
||||
@ -218,31 +219,35 @@
|
||||
setArg1(state);
|
||||
|
||||
if (isSoloChar.test(ch)) {
|
||||
switch ( ch )
|
||||
{ case ")":
|
||||
switch (ch) {
|
||||
case ")":
|
||||
state.nesting.pop();
|
||||
break;
|
||||
case "]":
|
||||
state.nesting.pop();
|
||||
return ret("list_close", null);
|
||||
case "}":
|
||||
{ var nest = nesting(state);
|
||||
case "}": {
|
||||
var nest = nesting(state);
|
||||
var type = (nest && nest.tag) ? "dict_close" : "brace_term_close";
|
||||
|
||||
state.nesting.pop();
|
||||
return ret(type, null);
|
||||
}
|
||||
}; break;
|
||||
case ",":
|
||||
if (stream.eol())
|
||||
state.commaAtEOL = true;
|
||||
nextArg(state);
|
||||
/*FALLTHROUGH*/
|
||||
if (isControl(state))
|
||||
state.goalStart = true;
|
||||
break;
|
||||
case ";":
|
||||
if (isControl(state))
|
||||
state.goalStart = true;
|
||||
break;
|
||||
case "[":
|
||||
state.nesting.push({ type: "list",
|
||||
state.nesting.push({
|
||||
type : "list",
|
||||
closeColumn : stream.column(),
|
||||
alignment : stream.column() + 2
|
||||
});
|
||||
@ -250,12 +255,12 @@
|
||||
break;
|
||||
case "{":
|
||||
if (config.quasiQuotations && stream.eat("|")) {
|
||||
state.nesting.push({ type: "quasi-quotation",
|
||||
alignment: stream.column()+1
|
||||
});
|
||||
state.nesting.push(
|
||||
{type : "quasi-quotation", alignment : stream.column() + 1});
|
||||
return ret("qq_open", "qq_open");
|
||||
} else {
|
||||
state.nesting.push({ type: "curly",
|
||||
state.nesting.push({
|
||||
type : "curly",
|
||||
closeColumn : stream.column(),
|
||||
alignment : stream.column() + 2
|
||||
});
|
||||
@ -279,10 +284,8 @@
|
||||
return ret("solo", null, ch);
|
||||
}
|
||||
|
||||
if (ch == '"' || ch == "'" || ch == "`")
|
||||
{ state.nesting.push({ type: "quoted",
|
||||
alignment: stream.column()+1
|
||||
});
|
||||
if (ch == '"' || ch == "'" || ch == "`") {
|
||||
state.nesting.push({type : "quoted", alignment : stream.column() + 1});
|
||||
return chain(stream, state, plTokenString(ch));
|
||||
}
|
||||
|
||||
@ -310,9 +313,8 @@
|
||||
stream.match(/^\d*((_|\s+)\d+)*(?:\.\d+)?(?:[eE][+\-]?\d+)?/);
|
||||
else
|
||||
stream.match(/^\d*(?:\.\d+)?(?:[eE][+\-]?\d+)?/);
|
||||
return ret(ch == "-" ? "neg-number" :
|
||||
ch == "+" ? "pos-number" :
|
||||
"number");
|
||||
return ret(ch == "-" ? "neg-number"
|
||||
: ch == "+" ? "pos-number" : "number");
|
||||
}
|
||||
|
||||
if (isSymbolChar.test(ch)) {
|
||||
@ -322,7 +324,8 @@
|
||||
if (nesting(state)) {
|
||||
return ret("fullstop", "error", atom);
|
||||
} else {
|
||||
} return ret("fullstop", "fullstop", atom);
|
||||
}
|
||||
return ret("fullstop", "fullstop", atom);
|
||||
} else if (isNeck.test(atom)) {
|
||||
return ret("neck", "neck", atom);
|
||||
} else if (isControl(state) && isControlOp.test(atom)) {
|
||||
@ -401,12 +404,12 @@
|
||||
return ret("comment", "comment");
|
||||
}
|
||||
|
||||
|
||||
// /*******************************
|
||||
// * ACTIVE KEYS *
|
||||
// *******************************/
|
||||
|
||||
// /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
// /* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
// - -
|
||||
// Support if-then-else layout like this:
|
||||
|
||||
// goal :-
|
||||
@ -414,8 +417,8 @@
|
||||
// -> IfTrue
|
||||
// ; IfFalse
|
||||
// ).
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
// - - */
|
||||
|
||||
// CodeMirror.commands.prologStartIfThenElse = function(cm) {
|
||||
// var start = cm.getCursor("start");
|
||||
@ -496,10 +499,9 @@
|
||||
// Default (SWI-)Prolog operator table. To be used later to enhance the
|
||||
// offline experience.
|
||||
|
||||
var ops = { "-->": { p:1200, t:"xfx" },
|
||||
":-": [ { p:1200, t:"xfx" },
|
||||
{ p:1200, t:"fx" }
|
||||
],
|
||||
var ops = {
|
||||
"-->" : {p : 1200, t : "xfx"},
|
||||
":-" : [ {p : 1200, t : "xfx"}, {p : 1200, t : "fx"} ],
|
||||
"?-" : {p : 1200, t : "fx"},
|
||||
|
||||
"dynamic" : {p : 1150, t : "fx"},
|
||||
@ -543,12 +545,8 @@
|
||||
|
||||
":" : {p : 600, t : "xfy"},
|
||||
|
||||
"+": [ { p:500, t:"yfx" },
|
||||
{ p:200, t:"fy" }
|
||||
],
|
||||
"-": [ { p:500, t:"yfx" },
|
||||
{ p:200, t:"fy" }
|
||||
],
|
||||
"+" : [ {p : 500, t : "yfx"}, {p : 200, t : "fy"} ],
|
||||
"-" : [ {p : 500, t : "yfx"}, {p : 200, t : "fy"} ],
|
||||
"/\\" : {p : 500, t : "yfx"},
|
||||
"\\/" : {p : 500, t : "yfx"},
|
||||
"xor" : {p : 500, t : "yfx"},
|
||||
@ -598,72 +596,17 @@
|
||||
};
|
||||
|
||||
var builtins = {
|
||||
"asserta": "prolog",
|
||||
"atomic_list_concat": "prolog",
|
||||
"char_type": "prolog",
|
||||
"compile_expressions": "prolog",
|
||||
"compile": "prolog",
|
||||
"create_prolog_flag": "prolog",
|
||||
"current_module": "prolog",
|
||||
"current_op": "prolog",
|
||||
"del_attrs": "prolog",
|
||||
"depth_bound_call": "prolog",
|
||||
"dule": "prolog",
|
||||
"exo_files": "prolog",
|
||||
"export_list": "prolog",
|
||||
"foreign_directory": "prolog",
|
||||
"garbage_collect_atoms": "prolog",
|
||||
"garbage_collect": "prolog",
|
||||
"get_attrs": "prolog",
|
||||
"hread_signal": "prolog",
|
||||
"ignore": "prolog",
|
||||
"incore": "prolog",
|
||||
"initialization": "prolog",
|
||||
"int_message": "prolog",
|
||||
"message_to_string": "prolog",
|
||||
"module_property": "prolog",
|
||||
"msort": "prolog",
|
||||
"mutex_unlock_all": "prolog",
|
||||
"no_style_check": "prolog",
|
||||
"nospy": "prolog",
|
||||
"notrace": "prolog",
|
||||
"ortray_clause": "prolog",
|
||||
"otherwise": "prolog",
|
||||
"predsort": "prolog",
|
||||
"prolog_initialization": "prolog",
|
||||
"qend_program": "prolog",
|
||||
"qsave_file": "prolog",
|
||||
"recordaifnot": "prolog",
|
||||
"set_base_module": "prolog",
|
||||
"sformat": "prolog",
|
||||
"source_file": "prolog",
|
||||
"split_path_file": "prolog",
|
||||
"stream_position": "prolog",
|
||||
"system_error": "prolog",
|
||||
"system_module": "prolog",
|
||||
"t_head": "prolog",
|
||||
"table_statistics": "prolog",
|
||||
"tabling_mode": "prolog",
|
||||
"tabling_statistics": "prolog",
|
||||
"thread_defaults": "prolog",
|
||||
"thread_local": "prolog",
|
||||
"thread_set_defaults": "prolog",
|
||||
"thread_statistics": "prolog",
|
||||
"unix": "prolog",
|
||||
"use_system_module": "prolog",
|
||||
"user_defined_directive": "prolog",
|
||||
"version": "prolog",
|
||||
"C" : "prolog",
|
||||
"abolish" : "prolog",
|
||||
"abolish_all_tables" : "prolog",
|
||||
"abolish_frozen_choice_points" : "prolog",
|
||||
"abolish_module" : "prolog",
|
||||
"abolish_table" : "prolog",
|
||||
"abolish": "prolog",
|
||||
"abort" : "prolog",
|
||||
"absolute_file_name" : "prolog",
|
||||
"absolute_file_system_path" : "prolog",
|
||||
"access_file": "prolog",
|
||||
"access" : "prolog",
|
||||
"access_file" : "prolog",
|
||||
"acyclic_term" : "prolog",
|
||||
"add_import_module" : "prolog",
|
||||
"add_to_array_element" : "prolog",
|
||||
@ -673,17 +616,19 @@
|
||||
"always_prompt_user" : "prolog",
|
||||
"arena_size" : "prolog",
|
||||
"arg" : "prolog",
|
||||
"array_element": "prolog",
|
||||
"array" : "prolog",
|
||||
"assert_static": "prolog",
|
||||
"asserta_static": "prolog",
|
||||
"assertz_static": "prolog",
|
||||
"assertz": "prolog",
|
||||
"array_element" : "prolog",
|
||||
"assert" : "prolog",
|
||||
"assert_static" : "prolog",
|
||||
"asserta" : "prolog",
|
||||
"asserta_static" : "prolog",
|
||||
"assertz" : "prolog",
|
||||
"assertz_static" : "prolog",
|
||||
"at_end_of_line" : "prolog",
|
||||
"at_end_of_stream_0": "prolog",
|
||||
"at_end_of_stream" : "prolog",
|
||||
"at_end_of_stream_0" : "prolog",
|
||||
"at_halt" : "prolog",
|
||||
"atom" : "prolog",
|
||||
"atom_chars" : "prolog",
|
||||
"atom_codes" : "prolog",
|
||||
"atom_concat" : "prolog",
|
||||
@ -695,8 +640,6 @@
|
||||
"atomic_length" : "prolog",
|
||||
"atomic_list_concat" : "prolog",
|
||||
"atomics_to_string" : "prolog",
|
||||
"atomic": "prolog",
|
||||
"atom": "prolog",
|
||||
"attvar" : "prolog",
|
||||
"b_getval" : "prolog",
|
||||
"b_setval" : "prolog",
|
||||
@ -708,41 +651,41 @@
|
||||
"between" : "prolog",
|
||||
"bootstrap" : "prolog",
|
||||
"break" : "prolog",
|
||||
"call" : "prolog",
|
||||
"call_cleanup" : "prolog",
|
||||
"call_count" : "prolog",
|
||||
"call_count_data" : "prolog",
|
||||
"call_count_reset" : "prolog",
|
||||
"call_count": "prolog",
|
||||
"call_residue_vars": "prolog",
|
||||
"call_residue" : "prolog",
|
||||
"call_residue_vars" : "prolog",
|
||||
"call_shared_object_function" : "prolog",
|
||||
"call_with_args" : "prolog",
|
||||
"callable" : "prolog",
|
||||
"call": "prolog",
|
||||
"catch_ball": "prolog",
|
||||
"catch" : "prolog",
|
||||
"catch_ball" : "prolog",
|
||||
"cd" : "prolog",
|
||||
"cfile_search_path" : "prolog",
|
||||
"char_code" : "prolog",
|
||||
"char_conversion" : "prolog",
|
||||
"char_type" : "prolog",
|
||||
"clause_property": "prolog",
|
||||
"clause" : "prolog",
|
||||
"clause_property" : "prolog",
|
||||
"close" : "prolog",
|
||||
"close_shared_object" : "prolog",
|
||||
"close_static_array" : "prolog",
|
||||
"close": "prolog",
|
||||
"code_type" : "prolog",
|
||||
"commons_directory" : "prolog",
|
||||
"commons_library" : "prolog",
|
||||
"compare" : "prolog",
|
||||
"compile" : "prolog",
|
||||
"compile_expressions" : "prolog",
|
||||
"compile_predicates" : "prolog",
|
||||
"compile": "prolog",
|
||||
"compound" : "prolog",
|
||||
"consult_depth": "prolog",
|
||||
"consult" : "prolog",
|
||||
"consult_depth" : "prolog",
|
||||
"context_module" : "prolog",
|
||||
"copy_term_nat": "prolog",
|
||||
"copy_term" : "prolog",
|
||||
"copy_term_nat" : "prolog",
|
||||
"create_mutable" : "prolog",
|
||||
"create_prolog_flag" : "prolog",
|
||||
"creep_allowed" : "prolog",
|
||||
@ -755,7 +698,6 @@
|
||||
"current_module" : "prolog",
|
||||
"current_mutex" : "prolog",
|
||||
"current_op" : "prolog",
|
||||
"current_output": "prolog",
|
||||
"current_predicate" : "prolog",
|
||||
"current_prolog_flag" : "prolog",
|
||||
"current_reference_count" : "prolog",
|
||||
@ -763,11 +705,11 @@
|
||||
"current_thread" : "prolog",
|
||||
"db_files" : "prolog",
|
||||
"db_reference" : "prolog",
|
||||
"debugging": "prolog",
|
||||
"debug" : "prolog",
|
||||
"debugging" : "prolog",
|
||||
"decrease_reference_count" : "prolog",
|
||||
"del_attrs": "prolog",
|
||||
"del_attr" : "prolog",
|
||||
"del_attrs" : "prolog",
|
||||
"delete_import_module" : "prolog",
|
||||
"depth_bound_call" : "prolog",
|
||||
"dif" : "prolog",
|
||||
@ -776,33 +718,34 @@
|
||||
"do_c_built_in" : "prolog",
|
||||
"do_c_built_metacall" : "prolog",
|
||||
"do_not_compile_expressions" : "prolog",
|
||||
"dump_active_goals": "prolog",
|
||||
"dule" : "prolog",
|
||||
"dum" : "prolog",
|
||||
"dump_active_goals" : "prolog",
|
||||
"duplicate_term" : "prolog",
|
||||
"dynamic" : "prolog",
|
||||
"dynamic_predicate" : "prolog",
|
||||
"dynamic_update_array" : "prolog",
|
||||
"dynamic": "prolog",
|
||||
"eamconsult" : "prolog",
|
||||
"eamtrans" : "prolog",
|
||||
"end_of_file" : "prolog",
|
||||
"ensure_loaded" : "prolog",
|
||||
"erase" : "prolog",
|
||||
"eraseall" : "prolog",
|
||||
"erased" : "prolog",
|
||||
"erase": "prolog",
|
||||
"exists" : "prolog",
|
||||
"exists_directory" : "prolog",
|
||||
"exists_file" : "prolog",
|
||||
"exists_source" : "prolog",
|
||||
"exists": "prolog",
|
||||
"exo_files" : "prolog",
|
||||
"expand_exprs": "prolog",
|
||||
"expand_expr" : "prolog",
|
||||
"expand_exprs" : "prolog",
|
||||
"expand_file_name" : "prolog",
|
||||
"expand_goal" : "prolog",
|
||||
"expand_term" : "prolog",
|
||||
"expects_dialect" : "prolog",
|
||||
"export" : "prolog",
|
||||
"export_list" : "prolog",
|
||||
"export_resource" : "prolog",
|
||||
"export": "prolog",
|
||||
"extend" : "prolog",
|
||||
"fail" : "prolog",
|
||||
"false" : "prolog",
|
||||
@ -819,15 +762,17 @@
|
||||
"forall" : "prolog",
|
||||
"foreign_directory" : "prolog",
|
||||
"format" : "prolog",
|
||||
"freeze_choice_point": "prolog",
|
||||
"freeze" : "prolog",
|
||||
"freeze_choice_point" : "prolog",
|
||||
"frozen" : "prolog",
|
||||
"functor" : "prolog",
|
||||
"garbage_collect_atoms": "prolog",
|
||||
"garbage_collect" : "prolog",
|
||||
"garbage_collect_atoms" : "prolog",
|
||||
"gc" : "prolog",
|
||||
"get" : "prolog",
|
||||
"get0" : "prolog",
|
||||
"get_attr" : "prolog",
|
||||
"get_attrs" : "prolog",
|
||||
"get_byte" : "prolog",
|
||||
"get_char" : "prolog",
|
||||
"get_code" : "prolog",
|
||||
@ -837,7 +782,6 @@
|
||||
"get_value" : "prolog",
|
||||
"getcwd" : "prolog",
|
||||
"getenv" : "prolog",
|
||||
"get": "prolog",
|
||||
"global_trie_statistics" : "prolog",
|
||||
"ground" : "prolog",
|
||||
"grow_heap" : "prolog",
|
||||
@ -848,6 +792,7 @@
|
||||
"hide_predicate" : "prolog",
|
||||
"hostname_address" : "prolog",
|
||||
"hread_get_message" : "prolog",
|
||||
"hread_signal" : "prolog",
|
||||
"if" : "prolog",
|
||||
"ignore" : "prolog",
|
||||
"import_module" : "prolog",
|
||||
@ -855,16 +800,17 @@
|
||||
"increase_reference_count" : "prolog",
|
||||
"init_random_state" : "prolog",
|
||||
"initialization" : "prolog",
|
||||
"instance_property": "prolog",
|
||||
"instance" : "prolog",
|
||||
"instance_property" : "prolog",
|
||||
"int_message" : "prolog",
|
||||
"integer" : "prolog",
|
||||
"is" : "prolog",
|
||||
"is_absolute_file_name" : "prolog",
|
||||
"is_list" : "prolog",
|
||||
"is_mutable" : "prolog",
|
||||
"is_tabled" : "prolog",
|
||||
"isinf" : "prolog",
|
||||
"isnan" : "prolog",
|
||||
"is": "prolog",
|
||||
"key_erased_statistics" : "prolog",
|
||||
"key_statistics" : "prolog",
|
||||
"keysort" : "prolog",
|
||||
@ -879,19 +825,19 @@
|
||||
"load_foreign_files" : "prolog",
|
||||
"log_event" : "prolog",
|
||||
"logsum" : "prolog",
|
||||
"ls_imports": "prolog",
|
||||
"ls" : "prolog",
|
||||
"ls_imports" : "prolog",
|
||||
"make" : "prolog",
|
||||
"make_directory" : "prolog",
|
||||
"make_library_index" : "prolog",
|
||||
"make": "prolog",
|
||||
"message_queue_create" : "prolog",
|
||||
"message_queue_destroy" : "prolog",
|
||||
"message_queue_property" : "prolog",
|
||||
"message_to_string" : "prolog",
|
||||
"mmapped_array" : "prolog",
|
||||
"module" : "prolog",
|
||||
"module_property" : "prolog",
|
||||
"module_state" : "prolog",
|
||||
"module": "prolog",
|
||||
"msort" : "prolog",
|
||||
"multifile" : "prolog",
|
||||
"must_be_of_type" : "prolog",
|
||||
@ -918,38 +864,39 @@
|
||||
"nofileeleerrors" : "prolog",
|
||||
"nogc" : "prolog",
|
||||
"nonvar" : "prolog",
|
||||
"nospyall": "prolog",
|
||||
"nospy" : "prolog",
|
||||
"notrace": "prolog",
|
||||
"nospyall" : "prolog",
|
||||
"not" : "prolog",
|
||||
"notrace" : "prolog",
|
||||
"nth_clause" : "prolog",
|
||||
"nth_instance" : "prolog",
|
||||
"number" : "prolog",
|
||||
"number_atom" : "prolog",
|
||||
"number_chars" : "prolog",
|
||||
"number_codes" : "prolog",
|
||||
"number_string" : "prolog",
|
||||
"numbervars" : "prolog",
|
||||
"number": "prolog",
|
||||
"on_exception" : "prolog",
|
||||
"on_signal" : "prolog",
|
||||
"once" : "prolog",
|
||||
"op" : "prolog",
|
||||
"opaque" : "prolog",
|
||||
"open" : "prolog",
|
||||
"open_pipe_stream" : "prolog",
|
||||
"open_shared_object" : "prolog",
|
||||
"open": "prolog",
|
||||
"opt_statistics" : "prolog",
|
||||
"op": "prolog",
|
||||
"or_statistics" : "prolog",
|
||||
"ortray_clause" : "prolog",
|
||||
"otherwise" : "prolog",
|
||||
"parallel" : "prolog",
|
||||
"parallel_findall" : "prolog",
|
||||
"parallel_findfirst" : "prolog",
|
||||
"parallel_once" : "prolog",
|
||||
"parallel": "prolog",
|
||||
"path" : "prolog",
|
||||
"peek" : "prolog",
|
||||
"peek_byte" : "prolog",
|
||||
"peek_char" : "prolog",
|
||||
"peek_code" : "prolog",
|
||||
"peek": "prolog",
|
||||
"phrase" : "prolog",
|
||||
"plus" : "prolog",
|
||||
"portray_clause" : "prolog",
|
||||
@ -959,9 +906,9 @@
|
||||
"predmerge" : "prolog",
|
||||
"predsort" : "prolog",
|
||||
"primitive" : "prolog",
|
||||
"print_message_lines": "prolog",
|
||||
"print_message": "prolog",
|
||||
"print" : "prolog",
|
||||
"print_message" : "prolog",
|
||||
"print_message_lines" : "prolog",
|
||||
"private" : "prolog",
|
||||
"profalt" : "prolog",
|
||||
"profend" : "prolog",
|
||||
@ -970,25 +917,25 @@
|
||||
"profinit" : "prolog",
|
||||
"profoff" : "prolog",
|
||||
"profon" : "prolog",
|
||||
"prolog" : "prolog",
|
||||
"prolog_current_frame" : "prolog",
|
||||
"prolog_file_name" : "prolog",
|
||||
"prolog_file_type" : "prolog",
|
||||
"prolog_flag_property": "prolog",
|
||||
"prolog_flag" : "prolog",
|
||||
"prolog_flag_property" : "prolog",
|
||||
"prolog_initialization" : "prolog",
|
||||
"prolog_load_context" : "prolog",
|
||||
"prolog_to_os_filename" : "prolog",
|
||||
"prolog": "prolog",
|
||||
"prompt1": "prolog",
|
||||
"prompt" : "prolog",
|
||||
"put_attrs": "prolog",
|
||||
"prompt1" : "prolog",
|
||||
"put" : "prolog",
|
||||
"put_attr" : "prolog",
|
||||
"put_attrs" : "prolog",
|
||||
"put_byte" : "prolog",
|
||||
"put_char1": "prolog",
|
||||
"put_char" : "prolog",
|
||||
"put_char1" : "prolog",
|
||||
"put_code" : "prolog",
|
||||
"putenv" : "prolog",
|
||||
"put": "prolog",
|
||||
"pwd" : "prolog",
|
||||
"qend_program" : "prolog",
|
||||
"qload_file" : "prolog",
|
||||
@ -998,24 +945,24 @@
|
||||
"qsave_module" : "prolog",
|
||||
"qsave_program" : "prolog",
|
||||
"raise_exception" : "prolog",
|
||||
"rational_term_to_tree": "prolog",
|
||||
"rational" : "prolog",
|
||||
"rational_term_to_tree" : "prolog",
|
||||
"read" : "prolog",
|
||||
"read_clause" : "prolog",
|
||||
"read_sig" : "prolog",
|
||||
"read_term_from_atomic": "prolog",
|
||||
"read_term_from_atom": "prolog",
|
||||
"read_term_from_string": "prolog",
|
||||
"read_term" : "prolog",
|
||||
"read": "prolog",
|
||||
"read_term_from_atom" : "prolog",
|
||||
"read_term_from_atomic" : "prolog",
|
||||
"read_term_from_string" : "prolog",
|
||||
"real_path" : "prolog",
|
||||
"reconsult" : "prolog",
|
||||
"recorda" : "prolog",
|
||||
"recorda_at" : "prolog",
|
||||
"recordaifnot" : "prolog",
|
||||
"recorda": "prolog",
|
||||
"recorded" : "prolog",
|
||||
"recordz" : "prolog",
|
||||
"recordz_at" : "prolog",
|
||||
"recordzifnot" : "prolog",
|
||||
"recordz": "prolog",
|
||||
"release_random_state" : "prolog",
|
||||
"remove_from_path" : "prolog",
|
||||
"rename" : "prolog",
|
||||
@ -1024,21 +971,21 @@
|
||||
"reset_total_choicepoints" : "prolog",
|
||||
"resize_static_array" : "prolog",
|
||||
"restore" : "prolog",
|
||||
"retractall": "prolog",
|
||||
"retract" : "prolog",
|
||||
"retractall" : "prolog",
|
||||
"rmdir" : "prolog",
|
||||
"same_file" : "prolog",
|
||||
"save_program" : "prolog",
|
||||
"see" : "prolog",
|
||||
"seeing" : "prolog",
|
||||
"seen" : "prolog",
|
||||
"see": "prolog",
|
||||
"set_base_module" : "prolog",
|
||||
"set_input" : "prolog",
|
||||
"set_output" : "prolog",
|
||||
"set_prolog_flag" : "prolog",
|
||||
"set_random_state" : "prolog",
|
||||
"set_stream_position": "prolog",
|
||||
"set_stream" : "prolog",
|
||||
"set_stream_position" : "prolog",
|
||||
"set_value" : "prolog",
|
||||
"setarg" : "prolog",
|
||||
"setenv" : "prolog",
|
||||
@ -1046,57 +993,57 @@
|
||||
"setup_call_catcher_cleanup" : "prolog",
|
||||
"setup_call_cleanup" : "prolog",
|
||||
"sformat" : "prolog",
|
||||
"sh" : "prolog",
|
||||
"show_all_local_tables" : "prolog",
|
||||
"show_all_tables" : "prolog",
|
||||
"show_global_trieshow_tabled_predicates": "prolog",
|
||||
"show_global_trie" : "prolog",
|
||||
"show_global_trieshow_tabled_predicates" : "prolog",
|
||||
"show_low_level_trace" : "prolog",
|
||||
"show_tabled_predicates": "prolog",
|
||||
"show_table" : "prolog",
|
||||
"show_tabled_predicates" : "prolog",
|
||||
"showprofres" : "prolog",
|
||||
"sh": "prolog",
|
||||
"simple" : "prolog",
|
||||
"skip1": "prolog",
|
||||
"skip" : "prolog",
|
||||
"skip1" : "prolog",
|
||||
"socket" : "prolog",
|
||||
"socket_accept" : "prolog",
|
||||
"socket_bind" : "prolog",
|
||||
"socket_close" : "prolog",
|
||||
"socket_connect" : "prolog",
|
||||
"socket_listen" : "prolog",
|
||||
"socket": "prolog",
|
||||
"sort2": "prolog",
|
||||
"sort" : "prolog",
|
||||
"source_file_property": "prolog",
|
||||
"sort2" : "prolog",
|
||||
"source" : "prolog",
|
||||
"source_file" : "prolog",
|
||||
"source_file_property" : "prolog",
|
||||
"source_location" : "prolog",
|
||||
"source_mode" : "prolog",
|
||||
"source_module" : "prolog",
|
||||
"source": "prolog",
|
||||
"split_path_file" : "prolog",
|
||||
"spy" : "prolog",
|
||||
"srandom" : "prolog",
|
||||
"start_low_level_trace" : "prolog",
|
||||
"stash_predicate" : "prolog",
|
||||
"static_array" : "prolog",
|
||||
"static_array_location" : "prolog",
|
||||
"static_array_properties" : "prolog",
|
||||
"static_array_to_term" : "prolog",
|
||||
"static_array": "prolog",
|
||||
"statistics" : "prolog",
|
||||
"stop_low_level_trace" : "prolog",
|
||||
"stream_position_data": "prolog",
|
||||
"stream_position" : "prolog",
|
||||
"stream_position_data" : "prolog",
|
||||
"stream_property" : "prolog",
|
||||
"stream_select" : "prolog",
|
||||
"string" : "prolog",
|
||||
"string_chars" : "prolog",
|
||||
"string_codes": "prolog",
|
||||
"string_code" : "prolog",
|
||||
"string_codes" : "prolog",
|
||||
"string_concat" : "prolog",
|
||||
"string_length" : "prolog",
|
||||
"string_number" : "prolog",
|
||||
"string_to_atomic": "prolog",
|
||||
"string_to_atom" : "prolog",
|
||||
"string_to_atomic" : "prolog",
|
||||
"string_to_list" : "prolog",
|
||||
"string": "prolog",
|
||||
"strip_module" : "prolog",
|
||||
"style_check" : "prolog",
|
||||
"sub_atom" : "prolog",
|
||||
@ -1104,24 +1051,24 @@
|
||||
"subsumes_term" : "prolog",
|
||||
"succ" : "prolog",
|
||||
"sys_debug" : "prolog",
|
||||
"system" : "prolog",
|
||||
"system_error" : "prolog",
|
||||
"system_library" : "prolog",
|
||||
"system_module" : "prolog",
|
||||
"system_predicate" : "prolog",
|
||||
"system": "prolog",
|
||||
"t_body" : "prolog",
|
||||
"t_head" : "prolog",
|
||||
"t_hgoal" : "prolog",
|
||||
"t_hlist" : "prolog",
|
||||
"t_tidy" : "prolog",
|
||||
"tab" : "prolog",
|
||||
"tab1" : "prolog",
|
||||
"table_statistics": "prolog",
|
||||
"table" : "prolog",
|
||||
"table_statistics" : "prolog",
|
||||
"tabling_mode" : "prolog",
|
||||
"tabling_statistics" : "prolog",
|
||||
"tab": "prolog",
|
||||
"telling": "prolog",
|
||||
"tell" : "prolog",
|
||||
"telling" : "prolog",
|
||||
"term_attvars" : "prolog",
|
||||
"term_factorized" : "prolog",
|
||||
"term_to_atom" : "prolog",
|
||||
@ -1130,8 +1077,8 @@
|
||||
"thread_at_exit" : "prolog",
|
||||
"thread_cancel" : "prolog",
|
||||
"thread_create" : "prolog",
|
||||
"thread_defaults": "prolog",
|
||||
"thread_default" : "prolog",
|
||||
"thread_defaults" : "prolog",
|
||||
"thread_detach" : "prolog",
|
||||
"thread_exit" : "prolog",
|
||||
"thread_get_message" : "prolog",
|
||||
@ -1141,27 +1088,27 @@
|
||||
"thread_property" : "prolog",
|
||||
"thread_self" : "prolog",
|
||||
"thread_send_message" : "prolog",
|
||||
"thread_set_defaults": "prolog",
|
||||
"thread_set_default" : "prolog",
|
||||
"thread_set_defaults" : "prolog",
|
||||
"thread_signal" : "prolog",
|
||||
"thread_sleep" : "prolog",
|
||||
"thread_statistics" : "prolog",
|
||||
"threads" : "prolog",
|
||||
"throw" : "prolog",
|
||||
"time_file64": "prolog",
|
||||
"time_file": "prolog",
|
||||
"time" : "prolog",
|
||||
"time_file" : "prolog",
|
||||
"time_file64" : "prolog",
|
||||
"told" : "prolog",
|
||||
"tolower" : "prolog",
|
||||
"total_choicepoints" : "prolog",
|
||||
"total_erased" : "prolog",
|
||||
"toupper" : "prolog",
|
||||
"trace" : "prolog",
|
||||
"true_file_name": "prolog",
|
||||
"true" : "prolog",
|
||||
"true_file_name" : "prolog",
|
||||
"tthread_peek_message" : "prolog",
|
||||
"ttyget0": "prolog",
|
||||
"ttyget" : "prolog",
|
||||
"ttyget0" : "prolog",
|
||||
"ttynl" : "prolog",
|
||||
"ttyput" : "prolog",
|
||||
"ttyskip" : "prolog",
|
||||
@ -1186,12 +1133,12 @@
|
||||
"with_mutex" : "prolog",
|
||||
"with_output_to" : "prolog",
|
||||
"working_directory" : "prolog",
|
||||
"write" : "prolog",
|
||||
"write_canonical" : "prolog",
|
||||
"write_depth" : "prolog",
|
||||
"write_term" : "prolog",
|
||||
"writeln" : "prolog",
|
||||
"writeq" : "prolog",
|
||||
"write": "prolog",
|
||||
"yap_flag" : "prolog"
|
||||
};
|
||||
|
||||
@ -1211,13 +1158,10 @@
|
||||
curToken : null /* token in term */
|
||||
};
|
||||
},
|
||||
|
||||
|
||||
token : function(stream, state) {
|
||||
var nest;
|
||||
// var nest;
|
||||
|
||||
if ( state.curTerm == null && mode
|
||||
Config.metainfo ) {
|
||||
if (state.curTerm == null && parserConfig.metainfo) {
|
||||
state.curTerm = 0;
|
||||
state.curToken = 0;
|
||||
}
|
||||
@ -1246,16 +1190,22 @@
|
||||
|
||||
state.lastType = type;
|
||||
|
||||
|
||||
if (builtins[state.curToken] == "prolog")
|
||||
return "builtin";
|
||||
if (ops[state.curToken])
|
||||
return "operator";
|
||||
|
||||
if (typeof(parserConfig.enrich) == "function")
|
||||
style = parserConfig.enrich(stream, state, type, content, style);
|
||||
|
||||
return style;
|
||||
|
||||
return translType[type];
|
||||
},
|
||||
|
||||
indent : function(state, textAfter) {
|
||||
if (state.tokenize == plTokenComment) return CodeMirror.Pass;
|
||||
if (state.tokenize == plTokenComment)
|
||||
return CodeMirror.Pass;
|
||||
|
||||
var nest;
|
||||
if ((nest = nesting(state))) {
|
||||
@ -1280,4 +1230,5 @@
|
||||
});
|
||||
|
||||
CodeMirror.defineMIME("text/x-prolog", "prolog");
|
||||
|
||||
});
|
||||
|
Reference in New Issue
Block a user