# Define SciTE settings for other simple files.

file.patterns.props=*.properties;*.session;*.ini;*.inf;*.url;*.cfg;*.cnf;*.aut
file.patterns.text=*.txt;*.log;*.lst;*.doc;*.diz;*.nfo
file.patterns.batch=*.bat;*.cmd;*.nt
file.patterns.diff=*.diff;*.patch
file.patterns.make=makefile;Makefile;*.mak;configure
file.patterns.indent=*.indent

*source.patterns.props=$(file.patterns.props);
*source.patterns.batch=$(file.patterns.batch);
*source.patterns.diff=$(file.patterns.diff);
*source.patterns.make=$(file.patterns.make);*.iface;

filter.properties=Properties (ini inf reg url cfg cnf)|$(file.patterns.props)|
filter.text=Text (txt log lst doc diz nfo)|$(file.patterns.text);make*|
filter.batch=Batch (bat cmd nt)|$(file.patterns.batch)|
filter.diff=Difference (diff patch)|$(file.patterns.diff)|

*filter.properties=$(filter.properties)
*filter.text=$(filter.text)

lexer.$(file.patterns.props)=props
lexer.$(file.patterns.batch)=batch
lexer.*.err=errorlist
lexer.$(file.patterns.make)=makefile
lexer.*.iface=makefile
lexer.$(file.patterns.diff)=diff
lexer.$(file.patterns.indent)=indent

*language.batch=&Batch|bat||
*language.difference=&Difference|diff||
*language.errorlist=&Errorlist|err||
*language.properties=&Properties|properties||
*language.makefile=&Makefile|mak|$(keyMake)|
*language._text=Text|txt|$(keyText)|
*language.indent=Indent|indent|$(keyIndent)|

word.characters.$(file.patterns.text)=$(chars.alpha)$(chars.numeric)$(chars.accented)-'

colour.other.operator=fore:#B06000

# Properties styles

# Default
style.props.0=
# Comment
style.props.1=fore:#007F7F,$(font.comment)
# Section
style.props.2=$(colour.string),back:#E0F0F0,eolfilled
# Assignment operator
style.props.3=$(colour.other.operator)
# Default value (@)
style.props.4=$(colour.preproc)
# Key
style.props.5=
# Matched Operators
style.props.34=fore:#0000FF,notbold
style.props.35=fore:#FF0000,notbold
comment.block.props=#~

#lexer.props.allow.initial.spaces=0

# Batch styles

# List from http://www.easydos.com/dosindex.html and https://sourceforge.net/p/scintilla/bugs/1686/
# I limit here the commands to those built in command.com, ie. I don't list external Dos commands
# if [no] (test) (command) -- test is EXIST (filename) | (string1)==(string2) | ERRORLEVEL (number)
# for %%(variable) IN (set) DO (command) -- variable is [a-zA-Z] -- eg for %%X in (*.txt) do type %%X
# Also includes device names.
keywordclass.batch=\
assoc aux break call cd chcp chdir choice cls cmdextversion \
color com1 com2 com3 com4 con copy ctty date defined \
del dir do dpath echo else endlocal erase errorlevel exist \
exit for ftype goto if in lpt1 lpt2 lpt3 lpt4 md mkdir move \
not nul path pause popd prompt prn pushd rd rem ren \
rename rmdir set setlocal shift start time title type ver \
verify vol
keywords.$(file.patterns.batch)=$(keywordclass.batch)

# Optional list of external commands to highlight in style 5.
# If not set all commands are highlighted in style 5.
#keywords2.$(file.patterns.batch)=append attrib chkdsk comp diskcomp

# Default
style.batch.0=fore:#000000
# Comment (rem or ::)
style.batch.1=fore:#007F00,$(font.comment)
# Keywords
style.batch.2=$(colour.keyword),bold
# Label (line beginning with ':')
style.batch.3=$(colour.string),back:#606060,fore:#FFFF00,eolfilled
# Hide command character ('@')
style.batch.4=$(colour.preproc)
# External commands
style.batch.5=fore:#007090,$(font.monospace),bold
# Variable: %%x (x is almost whatever, except space and %), %n (n in [0-9]), %EnvironmentVar%
style.batch.6=fore:#800080
# Operator: * ? < > |
style.batch.7=fore:#000000
# After label command has no effect
style.batch.8=fore:#000000,back:#FF4000,eolfilled

comment.block.batch=REM ~

# Makefile styles

keywords.$(file.patterns.make)=\
define else endef endif export \
if ifdef ifeq ifndef ifneq include \
load override private sinclude undefine unexport vpath

# Default
style.makefile.0=fore:#000000
# Comment: #
style.makefile.1=$(colour.other.comment),$(font.code.comment.box)
# Pre-processor or other comment: !
style.makefile.2=$(colour.preproc)
# Variable: $(x)
style.makefile.3=fore:#000080
# Operator
style.makefile.4=$(colour.other.operator)
# Target
style.makefile.5=fore:#A00000
# Error
style.makefile.9=$(colour.error),eolfilled
# Matched Operators
style.makefile.34=fore:#0000FF,notbold
style.makefile.35=fore:#FF0000,notbold

comment.block.makefile=#~

preprocessor.symbol.$(file.patterns.make)=!
preprocessor.start.$(file.patterns.make)=IF IFDEF IFNDEF
preprocessor.middle.$(file.patterns.make)=ELSE ELSEIF ELSEIFDEF ELSEIFNDEF
preprocessor.end.$(file.patterns.make)=ENDIF

# Error list styles

style.errorlist.32=fore:#B06000,$(font.small)
# Default
style.errorlist.0=fore:#000000
# python Error
style.errorlist.1=fore:#FF0000
# gcc Error
style.errorlist.2=fore:#800080
# Microsoft Error
style.errorlist.3=fore:#808000
# command or return status
style.errorlist.4=fore:#0000FF
# Borland error and warning messages
style.errorlist.5=fore:#B06000
# perl error and warning messages
style.errorlist.6=fore:#FF0000
# .NET tracebacks
style.errorlist.7=fore:#FF0000
# Lua error and warning messages
style.errorlist.8=fore:#FF0000
# ctags
style.errorlist.9=fore:#FF00FF
# diff changed !
style.errorlist.10=fore:#007F00
# diff addition +
style.errorlist.11=fore:#00007F
# diff deletion -
style.errorlist.12=fore:#007F7F
# diff message ---
style.errorlist.13=fore:#7F0000
# PHP error
style.errorlist.14=fore:#FF0000
# Essential Lahey Fortran 90 error
style.errorlist.15=fore:#FF0000
# Intel Fortran Compiler error
style.errorlist.16=fore:#FF0000
# Intel Fortran Compiler v8.0 error/warning
style.errorlist.17=fore:#FF0000
# Absoft Pro Fortran 90/95 v8.2 error or warning
style.errorlist.18=fore:#FF0000
# HTML Tidy
style.errorlist.19=fore:#FF0000
# Java runtime stack trace
style.errorlist.20=fore:#FF0000
# Text matched with find in files and message part of GCC errors
style.errorlist.21=fore:#000000
# GCC showing include path to following error
style.errorlist.22=fore:#800080
# GCC showing excerpt of code with pointer
style.errorlist.25=fore:#CF008F,$(font.monospace.small)
# Bash diagnostic
style.errorlist.26=fore:#3F009F
# Escape sequence
style.errorlist.23=fore:#000000,notvisible,back:#FFFFFF,$(error.background)
# Escape sequence unknown
style.errorlist.24=back:#FFE0A0
# Ensures that spacing is not affected by line number styles
style.errorlist.33=$(font.small)
# Basic colours
style.errorlist.40=fore:#000000
style.errorlist.41=fore:#800000,$(error.background)
style.errorlist.42=fore:#008000,$(error.background)
style.errorlist.43=fore:#808000,$(error.background)
style.errorlist.44=fore:#000080,$(error.background)
style.errorlist.45=fore:#800080,$(error.background)
style.errorlist.46=fore:#008080,$(error.background)
style.errorlist.47=fore:#A0A0A0,$(error.background)
# Intense colours
style.errorlist.48=fore:#000000,bold,$(error.background)
style.errorlist.49=fore:#800000,bold,$(error.background)
style.errorlist.50=fore:#008000,bold,$(error.background)
style.errorlist.51=fore:#808000,bold,$(error.background)
style.errorlist.52=fore:#000080,bold,$(error.background)
style.errorlist.53=fore:#800080,bold,$(error.background)
style.errorlist.54=fore:#008080,bold,$(error.background)
style.errorlist.55=fore:#A0A0A0,bold,$(error.background)

error.background=back:#FFF7E7,eolfilled

lexer.errorlist.value.separate=1
#lexer.errorlist.escape.sequences=1

# Difference styles

# Default
style.diff.0=fore:#000000
# Comment (part before "diff ..." or "--- ..." and , Only in ..., Binary file...)
style.diff.1=fore:#007F00
# Command (diff ...)
style.diff.2=fore:#7F7F00
# Source file (--- ...) and Destination file (+++ ...)
style.diff.3=fore:#7F0000
# Position setting (@@ ...)
style.diff.4=fore:#7F007F
# Line removal (-...)
style.diff.5=fore:#007F7F
# Line addition (+...)
style.diff.6=fore:#00007F
# Line change (!...)
style.diff.7=fore:#7F7F7F
# Patch add (++...)
style.diff.8=fore:#00007F,back:#F0FAFF,eolfilled
# Patch delete (+-...)
style.diff.9=fore:#007F7F,back:#F0FAFF,eolfilled
# Removed patch add (-+...)
style.diff.10=fore:#00007F,back:#FFFAF0,eolfilled
# Removed patch delete (--...)
style.diff.11=fore:#007F7F,back:#FFFAF0,eolfilled

command.build.makefile=make
command.build.*.mak=make

if PLAT_WIN
	command.help.*.properties="file://$(SciteDefaultHome)/SciTEDoc.html#property-$(CurrentSelection)"
	command.help.subsystem.*.properties=2
if PLAT_GTK
	command.help.*.properties=xdg-open "file://$(SciteDefaultHome)/SciTEDoc.html#property-$(CurrentSelection)"

if PLAT_WIN
	command.go.*.bat="$(FileNameExt)"
	command.name.0.*.bat=Execute Selection
	command.0.*.bat=$(CurrentSelection)
	command.name.1.*.mak=nmake
	command.1.*.mak=nmake -f "$(FileNameExt)"
