#
#	-*- coding: utf-8 -*-
#	File	:	modula3.properties
#	Author	:	Dariusz Knociński
#	Date	:	2010/11/07 - 2010/12/11
#	Notes	:	Define SciTE settings for Modula-3.
#

file.patterns.m3=*.m3;*.mg;*.i3;*.ig

filter.modula3=Modula-3 (m3 i3 mg ig)|$(file.patterns.m3)|
*filter.modula3=$(filter.modula3)
lexer.$(file.patterns.m3)=modula
*language.modula3=Modula-3|m3||

#	Keywords
#
keywords.$(file.patterns.m3)=AND ANY ARRAY AS BEGIN BITS BRANDED BY CASE CONST\
	DIV DO ELSE ELSIF END EVAL EXCEPT EXCEPTION EXIT EXPORTS FINALLY FOR FROM\
	GENERIC IF IMPORT IN INTERFACE LOCK LOOP METHODS MOD MODULE NOT OBJECT OF\
	OR OVERRIDES PROCEDURE RAISE RAISES READONLY RECORD REF REPEAT RETURN\
	REVEAL ROOT SET THEN TO TRY TYPE TYPECASE UNSAFE UNTIL UNTRACED VALUE VAR\
	WHILE WITH

#	Reserved identifiers
#
keywords2.$(file.patterns.m3)=ABS ADDRESS ADR ADRSIZE BITSIZE BOOLEAN BYTESIZE\
	CARDINAL CEILING CHAR DEC DISPOSE EXTENDED FALSE FIRST FLOAT FLOOR INC\
	INTEGER ISTYPE LAST LONGINT LONGREAL LOOPHOLE MAX MIN MUTEX NARROW NEW NIL\
	NULL NUMBER ORD REAL REFANY ROUND SUBARRAY TEXT TRUE TRUNC TYPECODE VAL\
	WIDECHAR

#	Operators
#
keywords3.$(file.patterns.m3)= + < # = ; .. : - > { } | := <: * <= ( ) ^ , =>\
	/ >= [ ] . &

#	Pragmas keywords
#
keywords4.$(file.patterns.m3)= EXTERNAL INLINE ASSERT TRACE FATAL UNUSED\
	OBSOLETE NOWARN LINE PRAGMA

#	Escape sequences
#
keywords5.$(file.patterns.m3)= f n r t \ " '

#	Doxygene keywords
#
keywords6.$(file.patterns.m3)= author authors file brief date proc param result

# Default fonts
#
font.module.base=$(font.base)
font.modula.code=font:$(font.module.base),size:10
font.modula.comment=font:$(font.module.base),size:10,italics
font.modula.doxykey=font:$(font.module.base),size:10,bold,italics
font.modula.keywords=font:$(font.module.base),size:10,bold
font.modula.reserved=font:$(font.module.base),size:10
font.modula.strings=font:$(font.module.base),size:10,italics
font.modula.strspec=font:$(font.module.base),size:10,bold,italics
font.modula.char=font:$(font.module.base),size:10,italics
font.modula.charspec=font:$(font.module.base),size:10,bold,italics
font.modula.badstr=font:$(font.module.base),size:10,bold

# Default
#
style.modula.0=fore:#383838,$(font.modula.code)

# Comments
#
style.modula.1=fore:#008000,$(font.modula.comment)

# Doxygen comments
#
style.modula.2=fore:#3F5FBF,$(font.modula.comment)

# Doxygene keywords
#
style.modula.3=fore:#3F5FBF,$(font.modula.doxykey)

# Keywords
#
style.modula.4=fore:#000080,$(font.modula.keywords)

# Reserved words
#
style.modula.5=fore:#0000C0,$(font.modula.reserved)

# Numbers
#
style.modula.6=fore:#006600,$(font.modula.code)

# Based numbers / #{#}_#{#} base 2-16
#
style.modula.7=fore:#3F0066,$(font.modula.code)

# Float numbers / #{#}.#{#}Exp
#
style.modula.8=fore:#006665,$(font.modula.code)

# Strings
#
style.modula.9=fore:#FE9800,$(font.modula.strings)

# Strings special (escape sequences)
#
style.modula.10=fore:#E38800,$(font.modula.strspec)

# Char
#
style.modula.11=fore:#FE9800,$(font.modula.char)

# Char special (escape sequences and octal numbers)
#
style.modula.12=fore:#E38800,$(font.modula.charspec)

# Procedures
#
style.modula.13=fore:#BF00B0,$(font.modula.code)

# Pragmas
#
style.modula.14=fore:#BF00B0,$(font.modula.code)

# Pragmas keywords
#
style.modula.15=fore:#BF00B0,$(font.modula.keywords)

# Operators
#
style.modula.16=fore:#000080,$(font.modula.code)

# Bad strings
#
style.modula.17=fore:#FF0000,$(font.modula.badstr)

#
#	EOF
#
