! Syntax highlighting patterns file for Logtalk (http://www.logtalk.org)
!
! Author: Paulo Moura (pmoura at logtalk.org)
!
! Last changed in: February 2, 2004
!
!
! To install this patterns file:
!
! 1. Load this file by starting nedit from the command line:
!
! 	% nedit -import logtalk.pats
!
! 2. Go to the Preferences menu and verify that the patterns were loaded 
!    correctly.
!
! 3. If everything is correct, choose the option Save Defaults from the 
!    Preferences menu.
!
!
nedit.fileVersion: 5.2

nedit.highlightPatterns: Logtalk:1:0{\n\
	Entity directives:"(?<=:\\-\\s)(object|protocol|category)(?=[(])":::Preprocessor::\n\
	Entity directives:"(?<=:\\-\\s)(end_object|end_protocol|end_category)(?=[.])":::Preprocessor::\n\
	Entity relations:"<(instantiates|specializes|extends|imports|implements)(?=[(])":::Preprocessor::\n\
	Directives:"(?<=:\\-\\s)(initialization|info|mode|dynamic|discontiguous|public|protected|private|metapredicate|op|calls|uses)(?=[(])":::Preprocessor::\n\
	Directives:"(?<=:\\-\\s)dynamic>":::Preprocessor::\n\
	Clause operators:":\\-|\\.|,":::Keyword::\n\
	Term testing:"(?<![+?@-])(var|atom|integer|float|atomic|compound|nonvar|number)(?=[(])":::Subroutine::\n\
	Message sending operators:"::|\\^\\^":::Keyword::\n\
	Control constructs:"!|;|\\-\\-\\>|\\-\\>|<(true|fail)>":::Subroutine::\n\
	Control constructs:"<(call|catch|throw)(?=[(])":::Subroutine::\n\
	Block comment:"/\\*":"\\*/"::Comment::\n\
	Line comment:"%":"$"::Comment::\n\
	Number:"0'[A-Za-z0-9]":::Numeric Const::\n\
	Number:"0b[0-1]+":::Numeric Const::\n\
	Number:"0o[0-7]+":::Numeric Const::\n\
	Number:"0x[A-Fa-f0-9]+":::Numeric Const::\n\
	Number:"[0-9]+(\.[0-9]+)?([eE][-+][0-9]+)?":::Numeric Const::\n\
	String:"""":""""::String::\n\
	String:"'":"'"::String::\n\
	Built-in methods:"<(parameter|self|sender|this|current_predicate|predicate_property|abolish|asserta|assertz|retractall|retract|bagof|findall|forall|setof|before|after|phrase)(?=[(])":::Subroutine::\n\
	Arithmetic operators:"<is>|\\+|\\*|\\-|/|=:=|=\\\\=|=\\<|\\>=|\\<|\\>":::Subroutine::\n\
	Built-in predicates:"<(current_object|current_protocol|current_category|create_object|create_protocol|create_category|object_property|protocol_property|category_property|abolish_object|abolish_protocol|abolish_vategory|extends_object|extends_protocol|omplements_protocol|instantiates_class|specializes_class|imports_category|abolish_events|current_events|define_events|current_logtalk_flag|set_logtalk_flag|logtalk_compile|logtalk_load|forall|retractall)(?=[(])":::Subroutine::\n\
	Term unification:"=|\\\\=":::Subroutine::\n\
	Term unification:"<unify_with_occurs_check(?=[(])":::Subroutine::\n\
	Term comparison:"@=\\<|==|\\\\==|@\\>=|@\\<|@\\>":::Subroutine::\n\
	Term creation and decomposition:"<(functor|arg|copy_term)(?=[(])":::Subroutine::\n\
	Term creation and decomposition:"=\\.\\.":::Subroutine::\n\
	Mode operators:"\\?|@":::Subroutine::\n\
	Stream selection and control:"<(current_input|current_output|set_input|set_output|open|close|flush_output|stream_property|at_end_of_stream|set_stream_position)(?=[(])":::Subroutine::\n\
	Stream selection and control:"<(flush_output|at_end_of_stream)>":::Subroutine::\n\
	Character input-output:"<(get_char|get_code|peek_char|peek_code|put_char|put_code|nl)(?=[(])":::Subroutine::\n\
	Character input-output:"<nl>":::Subroutine::\n\
	Byte input-output:"<(get_byte|peek_byte|put_byte)(?=[(])":::Subroutine::\n\
	Term input-output:"<(read_term|read|write_canonical|write_term|writeq|write|current_op|op|current_char_conversion|char_conversion)(?=[(])":::Subroutine::\n\
	Logic and control:"<once(?=[(])":::Subroutine::\n\
	Logic and control:"\\\\\\+|<repeat>":::Subroutine::\n\
	Atomic term processing:"<(atom_length|atom_concat|sub_atom|atom_chars|atom_codes|char_code|number_chars|number_codes)(?=[(])":::Subroutine::\n\
	Implementation defined hooks:"<(set_prolog_flag|current_prolog_flag|halt)(?=[(])":::Subroutine::\n\
	Implementation defined hooks:"<halt>":::Subroutine::\n\
	Evaluable functors:"<(rem|mod|abs|sign|float_integer_part|float_fractional_part|float|floor|truncate|round|ceiling)(?=[(])":::Subroutine::\n\
	Evaluable functors:"\\+|-|\\*|//|/":::Subroutine::\n\
	Other arithemtic functors:"\\*\\*":::Subroutine::\n\
	Other arithemtic functors:"\\*\\*|<(sin|cos|atan|exp|log|sqrt)(?=[(])":::Subroutine::\n\
	Bitwise functors:">>|<<|/\\\\|\\\\/|\\\\":::Subroutine::\n\
}
nedit.languageModes:	Logtalk:.lgt .loader .config::::4:4:\n\
