
 prolog_colour.pl -- Prolog syntax colouring support.
prolog_colour.pl -- Prolog syntax colouring support.This module defines reusable code to colourise Prolog source.
 prolog_colourise_stream(+Stream, +SourceID, :ColourItem) is det
 prolog_colourise_stream(+Stream, +SourceID, :ColourItem) is det prolog_colourise_stream(+Stream, +SourceID, :ColourItem, +Opts) is det
 prolog_colourise_stream(+Stream, +SourceID, :ColourItem, +Opts) is detxref_source(SourceID).
ColourItem is a closure that is called for each identified fragment with three additional arguments:
Options
 source_module(+State, -Module) is semidet[private]
 source_module(+State, -Module) is semidet[private] read_error(+Error, +TB, +Start, +Stream) is failure[private]
 read_error(+Error, +TB, +Start, +Stream) is failure[private] warnable_singletons(+Singletons, -Warn) is det[private]
 warnable_singletons(+Singletons, -Warn) is det[private] colour_item(+Class, +TB, +Pos) is det[private]
 colour_item(+Class, +TB, +Pos) is det[private] safe_push_op(+Prec, +Type, :Name, +State)[private]
 safe_push_op(+Prec, +Type, :Name, +State)[private] fix_operators(+Term, +Module, +State) is det[private]
 fix_operators(+Term, +Module, +State) is det[private] process_use_module1(+Imports, +Src)[private]
 process_use_module1(+Imports, +Src)[private] prolog_colourise_query(+Query:string, +SourceId, :ColourItem)
 prolog_colourise_query(+Query:string, +SourceId, :ColourItem) prolog_colourise_term(+Stream, +SourceID, :ColourItem, +Options)
 prolog_colourise_term(+Stream, +SourceID, :ColourItem, +Options)Options:
error_position(StartClause, EndClause, ErrorPos) singleton(@Var, +TB) is semidet[private]
 singleton(@Var, +TB) is semidet[private] colourise_term(+Term, +TB, +Termpos, +Comments)[private]
 colourise_term(+Term, +TB, +Termpos, +Comments)[private] structured_comment_start(-Start)[private]
 structured_comment_start(-Start)[private] colourise_term(+Term, +TB, +Pos)[private]
 colourise_term(+Term, +TB, +Pos)[private] colourise_extended_head(+Head, +ExtraArgs, +TB, +Pos) is det[private]
 colourise_extended_head(+Head, +ExtraArgs, +TB, +Pos) is det[private] colourise_extern_head(+Head, +Module, +TB, +Pos)[private]
 colourise_extern_head(+Head, +Module, +TB, +Pos)[private] functor_position(+Term, -FunctorPos, -ArgPosList)[private]
 functor_position(+Term, -FunctorPos, -ArgPosList)[private] colourise_directive(+Body, +TB, +Pos)[private]
 colourise_directive(+Body, +TB, +Pos)[private] colourise_method_body(+MethodBody, +TB, +Pos)[private]
 colourise_method_body(+MethodBody, +TB, +Pos)[private]pce(comment) and proceed
with the body.
 colourise_goals(+Body, +Origin, +TB, +Pos)[private]
 colourise_goals(+Body, +Origin, +TB, +Pos)[private] colourise_dcg(+Body, +Head, +TB, +Pos)[private]
 colourise_dcg(+Body, +Head, +TB, +Pos)[private] colourise_goal(+Goal, +Origin, +TB, +Pos)[private]
 colourise_goal(+Goal, +Origin, +TB, +Pos)[private] colourise_goal_args(+Goal, +TB, +Pos)[private]
 colourise_goal_args(+Goal, +TB, +Pos)[private] meta_args(+Goal, +TB, -ArgSpec) is semidet[private]
 meta_args(+Goal, +TB, -ArgSpec) is semidet[private]
E.g. meta_args(maplist(foo,x,y), X) --> X = maplist(2,_,_)
NOTE: this could be cached if performance becomes an issue.
 expand_meta(+MetaSpec, +Goal, -Expanded) is semidet[private]
 expand_meta(+MetaSpec, +Goal, -Expanded) is semidet[private] colourise_setof(+Term, +TB, +Pos)[private]
 colourise_setof(+Term, +TB, +Pos)[private] colourise_files(+Arg, +TB, +Pos, +Why)[private]
 colourise_files(+Arg, +TB, +Pos, +Why)[private] colourise_file_list(+Files, +TB, +ElmPos, +TailPos, +Why)[private]
 colourise_file_list(+Files, +TB, +ElmPos, +TailPos, +Why)[private] colourise_directory(+Arg, +TB, +Pos)[private]
 colourise_directory(+Arg, +TB, +Pos)[private] colourise_langoptions(+Term, +TB, +Pos) is det[private]
 colourise_langoptions(+Term, +TB, +Pos) is det[private] colourise_class(ClassName, TB, Pos)[private]
 colourise_class(ClassName, TB, Pos)[private] classify_class(+SourceId, +ClassName, -Classification)[private]
 classify_class(+SourceId, +ClassName, -Classification)[private] colourise_term_args(+Term, +TB, +Pos)[private]
 colourise_term_args(+Term, +TB, +Pos)[private] colourise_term_arg(+Term, +TB, +Pos)[private]
 colourise_term_arg(+Term, +TB, +Pos)[private] colourise_expression(+Term, +TB, +Pos)[private]
 colourise_expression(+Term, +TB, +Pos)[private] colourise_qq_type(+QQType, +TB, +QQTypePos)[private]
 colourise_qq_type(+QQType, +TB, +QQTypePos)[private] colourise_dict_kv(+Dict, +TB, +KVPosList)[private]
 colourise_dict_kv(+Dict, +TB, +KVPosList)[private] colourise_exports(+List, +TB, +Pos)[private]
 colourise_exports(+List, +TB, +Pos)[private] colourise_imports(+List, +File, +TB, +Pos)[private]
 colourise_imports(+List, +File, +TB, +Pos)[private] colourise_declaration(+Decl, ?Which, +TB, +Pos) is det[private]
 colourise_declaration(+Decl, ?Which, +TB, +Pos) is det[private] colourise_declarations(+Term, +Which, +TB, +Pos)[private]
 colourise_declarations(+Term, +Which, +TB, +Pos)[private]:- dynamic p/1 as incremental.. colourise_op_declaration(Op, TB, Pos) is det[private]
 colourise_op_declaration(Op, TB, Pos) is det[private] colourise_prolog_flag_name(+Name, +TB, +Pos)[private]
 colourise_prolog_flag_name(+Name, +TB, +Pos)[private] expand_macro(+TB, +Macro, -Expanded) is semidet[private]
 expand_macro(+TB, +Macro, -Expanded) is semidet[private] goal_classification(+TB, +Goal, +Origin, -Class)[private]
 goal_classification(+TB, +Goal, +Origin, -Class)[private] vararg_goal_classification(+Name, +Arity, -Class) is semidet[multifile]
 vararg_goal_classification(+Name, +Arity, -Class) is semidet[multifile] qualified_goal_classification(:Goal, +TB, -Class)[private]
 qualified_goal_classification(:Goal, +TB, -Class)[private] classify_head(+TB, +Head, -Class)[private]
 classify_head(+TB, +Head, -Class)[private] def_style(+Pattern, -Style)[private]
 def_style(+Pattern, -Style)[private] syntax_colour(?Class, ?Attributes) is nondet
 syntax_colour(?Class, ?Attributes) is nondetcolour(ColourName)background(ColourName)bold(Boolean)underline(Boolean)Attributes may be the empty list. This is used for cases where -for example- a menu is associated with the fragment. If syntax_colour/2 fails, no fragment is created for the region.
 specified_item(+Specified, +Term, +TB, +TermPosition) is det[private]
 specified_item(+Specified, +Term, +TB, +TermPosition) is det[private] specified_items(+Spec, +Term, +TB, +PosList)[private]
 specified_items(+Spec, +Term, +TB, +PosList)[private] specified_dict_kv(+PosList, +Term, +TB, +Specs)[private]
 specified_dict_kv(+PosList, +Term, +TB, +Specs)[private]The following predicates are exported, but not or incorrectly documented.
 syntax_message(Arg1, Arg2, Arg3)
 syntax_message(Arg1, Arg2, Arg3)