7 lines
12 KiB
JavaScript
7 lines
12 KiB
JavaScript
|
const lang = Object.freeze({ "displayName": "Prolog", "fileTypes": ["pl", "pro"], "name": "prolog", "patterns": [{ "include": "#comments" }, { "begin": "(?<=:-)\\s*", "end": "(\\.)", "endCaptures": { "1": { "name": "keyword.control.clause.bodyend.prolog" } }, "name": "meta.clause.body.prolog", "patterns": [{ "include": "#comments" }, { "include": "#builtin" }, { "include": "#controlandkeywords" }, { "include": "#atom" }, { "include": "#variable" }, { "include": "#constants" }, { "match": ".", "name": "meta.clause.body.prolog" }] }, { "begin": "^\\s*([a-z][a-zA-Z0-9_]*)(\\(?)(?=.*:-.*)", "beginCaptures": { "1": { "name": "entity.name.function.clause.prolog" }, "2": { "name": "punctuation.definition.parameters.begin" } }, "end": "((\\)?))\\s*(:-)", "endCaptures": { "1": { "name": "punctuation.definition.parameters.end" }, "3": { "name": "keyword.control.clause.bodybegin.prolog" } }, "name": "meta.clause.head.prolog", "patterns": [{ "include": "#atom" }, { "include": "#variable" }, { "include": "#constants" }] }, { "begin": "^\\s*([a-z][a-zA-Z0-9_]*)(\\(?)(?=.*-->.*)", "beginCaptures": { "1": { "name": "entity.name.function.dcg.prolog" }, "2": { "name": "punctuation.definition.parameters.begin" } }, "end": "((\\)?))\\s*(-->)", "endCaptures": { "1": { "name": "punctuation.definition.parameters.end" }, "3": { "name": "keyword.control.dcg.bodybegin.prolog" } }, "name": "meta.dcg.head.prolog", "patterns": [{ "include": "#atom" }, { "include": "#variable" }, { "include": "#constants" }] }, { "begin": "(?<=-->)\\s*", "end": "(\\.)", "endCaptures": { "1": { "name": "keyword.control.dcg.bodyend.prolog" } }, "name": "meta.dcg.body.prolog", "patterns": [{ "include": "#comments" }, { "include": "#controlandkeywords" }, { "include": "#atom" }, { "include": "#variable" }, { "include": "#constants" }, { "match": ".", "name": "meta.dcg.body.prolog" }] }, { "begin": "^\\s*([a-zA-Z][a-zA-Z0-9_]*)(\\(?)(?!.*(:-|-->).*)", "beginCaptures": { "1": { "name": "entity.name.function.fact.prolog" }, "2": { "name": "punctuation.definition.parameters.begin" } }, "end": "((\\)?))\\s*(\\.)(?!\\d+)", "endCaptures": { "1": { "name": "punctuation.definition.parameters.end" }, "3": { "name": "keyword.control.fact.end.prolog" } }, "name": "meta.fact.prolog", "patterns": [{ "include": "#comments" }, { "include": "#atom" }, { "include": "#variable" }, { "include": "#constants" }] }], "repository": { "atom": { "patterns": [{ "match": "(?<![a-zA-Z0-9_])[a-z][a-zA-Z0-9_]*(?!\\s*\\(|[a-zA-Z0-9_])", "name": "constant.other.atom.simple.prolog" }, { "match": "'.*?'", "name": "constant.other.atom.quoted.prolog" }, { "match": "\\[\\]", "name": "constant.other.atom.emptylist.prolog" }] }, "builtin": { "patterns": [{ "match": "\\b(op|nl|fail|dynamic|discontiguous|initialization|meta_predicate|module_transparent|multifile|public|thread_local|thread_initialization|volatile)\\b", "name": "keyword.other" }, { "match": "\\b(abolish|abort|abs|absolute_file_name|access_file|acos|acosh|acyclic_term|add_import_module|append|apropos|arg|asin|asinh|assert|asserta|assertz|at_end_of_stream|at_halt|atan|atanh|atom|atom_chars|atom_codes|atom_concat|atom_length|atom_number|atom_prefix|atom_string|atom_to_stem_list|atom_to_term|atomic|atomic_concat|atomic_list_concat|atomics_to_string|attach_packs|attr_portray_hook|attr_unify_hook|attribute_goals|attvar|autoload|autoload_path|b_getval|b_set_dict|b_setval|bagof|begin_tests|between|blob|break|byte_count|call_dcg|call_residue_vars|callable|cancel_halt|catch|ceil|ceiling|char_code|char_conversion|char_type|character_count|chdir|chr_leash|chr_notrace|chr_show_store|chr_trace|clause|clause_property|close|close_dde_conversation|close_table|code_type|collation_key|compare|compare_strings|compile_aux_clauses|compile_predicates|compiling|compound|compound_name_arguments|compound_name_arity|consult|context_module|copy_predicate_clauses|copy_stream_data|copy_term|copy_term_nat|copysign|cos|cosh|cputime|create_prolog_flag|current_arithmetic_function|current_atom|current_blob|current_char_conversion|current_engine|current_flag|current_format_predicat
|
||
|
var prolog = [
|
||
|
lang
|
||
|
];
|
||
|
|
||
|
export { prolog as default };
|