# external lpeg lexers

lexer.lpeg.home=$(SciteDefaultHome)/context/lexers

lexer.lpeg.color.theme=scite-context-theme
# lexer.lpeg.color.theme=$(SciteDefaultHome)/context/lexers/themes/scite-context-theme.lua

# The lexer dll no longer interfaces to the following properties. It never had a full
# interface, so maybe I'll make my own.

fold.by.parsing=1
fold.by.indentation=0
fold.by.line=0
fold.line.comments=0

# you can put the dll/so file in the <scitehome>/context/lexers path or keep it in
# <scitehome>/lexers

if PLAT_WIN
    lexerpath.*.lpeg=$(lexer.lpeg.home)/../../lexers/lexlpeg.dll
#   lexerpath.*.lpeg=$(lexer.lpeg.home)/lexers/lexlpeg.dll

if PLAT_GTK
    lexerpath.*.lpeg=$(lexer.lpeg.home)/../../lexers/liblexlpeg.so
#   lexerpath.*.lpeg=$(lexer.lpeg.home)/lexers/liblexlpeg.so

# the variable lexer.name is automatically set but I'm not sure what the following
# one is supposed to do so we keep it around (sams as in lpeg.properties, which we
# don't load)

lexer.*.lpeg=lpeg

# in principle you can do the following, as we're mostly compatible with the
# default lexers but for a regular context setup the lexers built-in scite are
# just fine so in principle we only need the dll/so
#
# import lexers/lpeg

# patterns should be original (not clash with built in)

file.patterns.cweb=*.w;*.ww;
file.patterns.cpp=*.h;*.c;*.hh;*.cc;*.hpp;*.cpp;*.hxx;*.cxx;
file.patterns.bib=*.bib
file.patterns.sql=*.sql

lexer.$(file.patterns.metapost)=lpeg_scite-context-lexer-mps
lexer.$(file.patterns.metafun)=lpeg_scite-context-lexer-mps
lexer.$(file.patterns.context)=lpeg_scite-context-lexer-tex
lexer.$(file.patterns.lua)=lpeg_scite-context-lexer-lua
lexer.$(file.patterns.example)=lpeg_scite-context-lexer-xml
lexer.$(file.patterns.text)=lpeg_scite-context-lexer-txt
lexer.$(file.patterns.pdf)=lpeg_scite-context-lexer-pdf
lexer.$(file.patterns.cweb)=lpeg_scite-context-lexer-web
lexer.$(file.patterns.cpp)=lpeg_scite-context-lexer-cpp
lexer.$(file.patterns.bib)=lpeg_scite-context-lexer-bibtex
lexer.$(file.patterns.sql)=lpeg_scite-context-lexer-sql

lexer.$(file.patterns.tex)=lpeg_scite-context-lexer-tex
lexer.$(file.patterns.xml)=lpeg_scite-context-lexer-xml
lexer.$(file.patterns.html)=lpeg_scite-context-lexer-xml

# It's a real pitty that we cannot overload the errorlist lexer. That would
# make scite even more interesting. Add to that including lpeg and the lpeg
# lexer and thereby providing an interface to properties.

#~ lexer.errorlist=lpeg_scite-context-lexer-txt
#~ lexer.output=lpeg_scite-context-lexer-txt

comment.block.lpeg_scite-context-lexer-tex=%
comment.block.at.line.start.lpeg_scite-context-lexer-tex=1

#~ comment.box.start.lpeg_scite-context-lexer-tex=%
#~ comment.box.middle.lpeg_scite-context-lexer-tex=%
#~ comment.box.end.lpeg_scite-context-lexer-tex=%

comment.block.lpeg_scite-context-lexer-mps=%
comment.block.at.line.start.lpeg_scite-context-lexer-mps=1

comment.block.lpeg_scite-context-lexer-lua=--
comment.block.at.line.start.lpeg_scite-context-lexer-lua=1

comment.block.lpeg_scite-context-lexer-cld=--
comment.block.at.line.start.lpeg_scite-context-lexer-cld=1

comment.block.lpeg_scite-context-lexer-bibtex=%
comment.block.at.line.start.lpeg_scite-context-lexer-bibtex=1

comment.block.lpeg_props=#
comment.block.at.line.start.lpeg_props=1

#~ comment.block.lpeg_ctx-tex=%
#~ comment.block.at.line.start.lpeg_ctx-tex=1

#~ comment.block.lpeg_ctx-mps=%
#~ comment.block.at.line.start.lpeg_ctx-mps=1

#~ comment.block.lpeg_ctx-lua=--
#~ comment.block.at.line.start.lpeg_ctx-lua=1

#~ comment.block.lpeg_ctx-cld=--
#~ comment.block.at.line.start.lpeg_ctx-cld=1

#~ comment.block.lpeg_props=#
#~ comment.block.at.line.start.lpeg_props=1

#~ style.*.34=bold
#~ style.*.35=bold

style.*.34=$(styles.bracelight)
style.*.35=$(styles.bracebad)
