# Define SciTE settings for Pascal files.
# Changed by Fernando Lozano <fsl@centroin.com.br> for Free Pascal

filter.pascal=Pascal (pas inc)|*.pas;*.inc;*.pp|

file.patterns.pascal=*.pas;*.inc;*.pp
lexer.$(file.patterns.pascal)=pascal

keywordclass.pascal=program const type var begin end array set packed record string if then else \
while for to downto do with repeat until case of goto exit label procedure \
function nil file and or not xor div mod unit uses implementation interface \
external asm inline object constructor destructor virtual far assembler near \
inherited stdcall cdecl library export exports end. \
class ansistring raise try except on index name finally \
resourcestring false true initialization finalization \
override overload

keywordclass.pascalclasses=write read default public protected private property published stored

keywords.$(file.patterns.pascal)=$(keywordclass.pascal)
keywords2.$(file.patterns.pascal)=$(keywordclass.pascalclasses)

# Pascal styles
# White space
style.pascal.0=fore:#000000,$(font.pascal)
# Comment
style.pascal.1=fore:#007F00,$(font.comment)
# Line Comment
style.pascal.2=fore:#007F00,$(font.comment)
# Doc comment
style.pascal.3=fore:#7F7F7F
# Number
style.pascal.4=fore:#007F7F

# Keyword
style.pascal.5=fore:#00007F,bold
# Double quoted string
style.pascal.6=fore:#7F007F,italics,$(font.comment)
# Single quoted string
style.pascal.7=fore:#7F007F,italics,$(font.text)
# Symbols
style.pascal.8=fore:#007F7F
# Preprocessor
style.pascal.9=fore:#7F7F00
# Operators
style.pascal.10=fore:#000000
# Brace highlight
style.pascal.34=fore:#0000FF,notbold
# Brace incomplete highlight
style.pascal.35=fore:#FF0000,notbold
# Braces are only matched in operator style
braces.pascal.style=10

statement.indent.$(file.patterns.pascal)=5 case catch class default do else for then \
private protected public struct try union while type
statement.end.$(file.patterns.pascal)=10 ;
statement.lookback.$(file.patterns.pascal)=20
block.start.$(file.patterns.pascal)=10 begin
block.end.$(file.patterns.pascal)=10 end

#using virtual pascal
#pc=C:\Vp21\Bin.w32\Vpc.exe -VC:\Vp21\Bin.w32\Vp.vpo "$(FilePath)"

#using free pascal

# compile
command.compile.*.pas=fpc "$(FilePath)"

# normal execute
if PLAT_WIN
	command.go.*.pas="$(FileName).exe"
	command.go.subsystem.*.pas=2
if PLAT_GTK
	command.go.*.pas="kvt -e $(FileName)"

# build
command.build.*.pas=fpc -B "$(FilePath)"
command.build.subsystem.*.pas=1

command.name.0.*.pas=Debug Compile
command.0.*.pas=fpc -g "$(FilePath)"
command.name.1.*.pas=Debug Build
command.1.*.pas=fpc -g -B "$(FilePath)"
command.name.2.*.pas=GDB
if PLAT_WIN
	command.2.*.pas=gdbpasw "$(FileName)"
if PLAT_GTK
	command.2.*.pas=gdb "$(FileName)"
	command.name.3.*.pas=DDD
	command.3.*.pas=ddd "$(FileName)"