Skip to content

Instantly share code, notes, and snippets.

@Zeex
Last active December 10, 2015 20:08
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Zeex/4486467 to your computer and use it in GitHub Desktop.
Save Zeex/4486467 to your computer and use it in GitHub Desktop.
Pawn syntax for SciTE
# SciTE settings for the Pawn language
file.patterns.pawn=*.pwn;*.inc
filter.pawn=Pawn (pwn inc)|$(file.patterns.pawn)|
lexer.$(file.patterns.pawn)=cpp
keywords.$(file.patterns.pawn)=assert break case char const continue \
default do else enum exit false for forward goto if native new operator \
public return sizeof state static stock switch tagof true typeof while
# keywords2 is for highlighting user defined keywords or function calls or similar
keywords2.$(file.patterns.pawn)=foreach
word.chars.pawn=$(chars.alpha)$(chars.numeric)_#
word.characters.$(file.patterns.pawn)=$(word.chars.cxx)
calltip.pawn.word.characters=$(chars.alpha)$(chars.numeric)_
comment.block.pawn=//~
#comment.block.at.line.start.pawn=1
comment.stream.start.pawn=/*
comment.stream.end.pawn=*/
comment.box.start.pawn=/*
comment.box.middle.pawn= *
comment.box.end.pawn= */
#fold.at.else=1
statement.indent.$(file.patterns.pawn)=5 case default do else for if while
statement.end.$(file.patterns.pawn)=10 ;
statement.lookback.$(file.patterns.pawn)=20
block.start.$(file.patterns.pawn)=10 {
block.end.$(file.patterns.pawn)=10 }
#autocomplete.pawn.fillups=(
#styling.within.preprocessor=1
preprocessor.symbol.$(file.patterns.pawn)=#
preprocessor.start.$(file.patterns.pawn)=if ifdef ifndef
preprocessor.middle.$(file.patterns.pawn)=else elif
preprocessor.end.$(file.patterns.pawn)=endif
# styles
# Default
style.pawn.32=$(font.monospace)
# White space
style.pawn.0=fore:#808080
# Comment: /* */.
style.pawn.1=$(colour.code.comment.box),$(font.monospace)
# Line Comment: //.
style.pawn.2=$(colour.code.comment.line),$(font.monospace)
# Doc comment: block comments beginning with /** or /*!
style.pawn.3=$(colour.code.comment.doc),$(font.monospace)
# Number
style.pawn.4=$(colour.number)
# Keyword
style.pawn.5=$(colour.keyword),bold
# Double quoted string
style.pawn.6=$(colour.string)
# Single quoted string
style.pawn.7=$(colour.char)
# UUIDs (only in IDL)
style.pawn.8=fore:#804080
# Preprocessor
style.pawn.9=$(colour.preproc)
# Operators
style.pawn.10=$(colour.operator),bold
# Identifiers
style.pawn.11=
# End of line where string is not closed
style.pawn.12=fore:#000000,$(font.monospace),back:#E0C0E0,eolfilled
# Verbatim strings for C#
style.pawn.13=fore:#007F00,$(font.monospace),back:#E0FFE0,eolfilled
# Regular expressions for JavaScript
style.pawn.14=fore:#3F7F3F,$(font.monospace),back:#E0F0FF,eolfilled
# Doc Comment Line: line comments beginning with /// or //!.
style.pawn.15=$(colour.code.comment.doc),$(font.code.comment.doc)
# Keywords2
style.pawn.16=fore:#B00040
# Comment keyword
style.pawn.17=fore:#3060A0,$(font.code.comment.doc)
# Comment keyword error
style.cpp.18=fore:#804020,$(font.code.comment.doc)
# Braces are only matched in operator style
braces.cpp.style=10
pawncc.include=-i$(SAMP_SERVER_ROOT)/pawno/include -i$(SAMP_SERVER_ROOT)/include
if PLAT_WIN
pawncc.options=-;+ -(+
if PLAT_GTK
pawncc.options=-\;+ -\(+
pawncc=pawncc $(pawncc.options) $(pawncc.include) -c $(FileNameExt)
command.compile.$(file.patterns.pawn)=$(pawncc)
command.1.$(file.patterns.pawn)=$(pawncc) -d0
command.name.1.$(file.patterns.pawn)=Compile Release
command.2.$(file.patterns.pawn)=$(pawncc) -d3
command.name.2.$(file.patterns.pawn)=Compile Debug
command.3.$(file.patterns.pawn)=$(pawncc) -l
command.name.3.$(file.patterns.pawn)=Preprocess only
command.4.$(file.patterns.pawn)=$(pawncc) -d0 -a
command.name.4.$(file.patterns.pawn)=Assembly listing
command.5.$(file.patterns.pawn)=pawndisasm $(FileName).amx
command.name.5.$(file.patterns.pawn)=Disassemble
api.$(file.patterns.pawn)=pawn.api
# SciTE settings for the Pawn language
file.patterns.pawn=*.pwn;*.inc
filter.pawn=Pawn (pwn inc)|$(file.patterns.pawn)|
lexer.$(file.patterns.pawn)=cpp
keywords.$(file.patterns.pawn)=assert break case char const continue \
default do else enum exit false for forward goto if native new operator \
public return sizeof state static stock switch tagof true typeof while
# keywords2 is for highlighting user defined keywords or function calls or similar
keywords2.$(file.patterns.pawn)=foreach
word.chars.pawn=$(chars.alpha)$(chars.numeric)_#
word.characters.$(file.patterns.pawn)=$(word.chars.cxx)
calltip.pawn.word.characters=$(chars.alpha)$(chars.numeric)_
comment.block.pawn=//~
#comment.block.at.line.start.pawn=1
comment.stream.start.pawn=/*
comment.stream.end.pawn=*/
comment.box.start.pawn=/*
comment.box.middle.pawn= *
comment.box.end.pawn= */
#fold.at.else=1
statement.indent.$(file.patterns.pawn)=5 case default do else for if while
statement.end.$(file.patterns.pawn)=10 ;
statement.lookback.$(file.patterns.pawn)=20
block.start.$(file.patterns.pawn)=10 {
block.end.$(file.patterns.pawn)=10 }
#autocomplete.pawn.fillups=(
#styling.within.preprocessor=1
preprocessor.symbol.$(file.patterns.pawn)=#
preprocessor.start.$(file.patterns.pawn)=if ifdef ifndef
preprocessor.middle.$(file.patterns.pawn)=else elif
preprocessor.end.$(file.patterns.pawn)=endif
# styles
# Default
style.pawn.32=$(font.monospace)
# White space
style.pawn.0=fore:#808080
# Comment: /* */.
style.pawn.1=$(colour.code.comment.box),$(font.monospace)
# Line Comment: //.
style.pawn.2=$(colour.code.comment.line),$(font.monospace)
# Doc comment: block comments beginning with /** or /*!
style.pawn.3=$(colour.code.comment.doc),$(font.monospace)
# Number
style.pawn.4=$(colour.number)
# Keyword
style.pawn.5=$(colour.keyword),bold
# Double quoted string
style.pawn.6=$(colour.string)
# Single quoted string
style.pawn.7=$(colour.char)
# UUIDs (only in IDL)
style.pawn.8=fore:#804080
# Preprocessor
style.pawn.9=$(colour.preproc)
# Operators
style.pawn.10=$(colour.operator),bold
# Identifiers
style.pawn.11=
# End of line where string is not closed
style.pawn.12=fore:#000000,$(font.monospace),back:#E0C0E0,eolfilled
# Verbatim strings for C#
style.pawn.13=fore:#007F00,$(font.monospace),back:#E0FFE0,eolfilled
# Regular expressions for JavaScript
style.pawn.14=fore:#3F7F3F,$(font.monospace),back:#E0F0FF,eolfilled
# Doc Comment Line: line comments beginning with /// or //!.
style.pawn.15=$(colour.code.comment.doc),$(font.code.comment.doc)
# Keywords2
style.pawn.16=fore:#B00040
# Comment keyword
style.pawn.17=fore:#3060A0,$(font.code.comment.doc)
# Comment keyword error
style.cpp.18=fore:#804020,$(font.code.comment.doc)
# Braces are only matched in operator style
braces.cpp.style=10
pawncc.include=-i$(SAMP_SERVER_ROOT)/include \
-i$(SAMP_SERVER_ROOT)/pawno/include \
-i$(SAMP_SERVER_ROOT)/amx_assembly \
-i$(SAMP_SERVER_ROOT)/include/YSI/ \
-i../../include
if PLAT_WIN
pawncc.options=-;+ -(+
if PLAT_GTK
pawncc.options=-\;+ -\(+
pawncc=pawncc $(pawncc.options) $(pawncc.include) -c $(FileNameExt)
command.compile.$(file.patterns.pawn)=$(pawncc)
command.1.$(file.patterns.pawn)=$(pawncc) -d0
command.name.1.$(file.patterns.pawn)=Compile Release
command.2.$(file.patterns.pawn)=$(pawncc) -d3
command.name.2.$(file.patterns.pawn)=Compile Debug
command.3.$(file.patterns.pawn)=$(pawncc) -l
command.name.3.$(file.patterns.pawn)=Preprocess only
command.4.$(file.patterns.pawn)=$(pawncc) -d0 -a
command.name.4.$(file.patterns.pawn)=Assembly listing
command.5.$(file.patterns.pawn)=pawndisasm $(FileName).amx
command.name.5.$(file.patterns.pawn)=Disassemble
api.$(file.patterns.pawn)=pawn.api
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment