# Anjuta internal configuration file

#----------------- WARNING ------------------------------------#
# Any modification in this file without knowing proper internal
# working of Anjuta may lead to instabilites.
#----------------- WARNING ------------------------------------#

# Anjuta uses this file for internal operations,
# therefore this file should never be modified.
# Only Anjuta developers will be tampering with this file. 

# Any modification if needed should be approved by the Anjuta
# developers, so that the source code is also changed (if needed)
# and the changes incorporated in the next release of Anjuta.

##################################################
# Filters to be used in file open/close/save etc #
##################################################
filter.tcl=Tcl (tcl)|*.tcl|
filter.itcl=itcl (.itcl)|*.itcl|

############################################
# File patterns defined for all file types #
############################################
file.patterns.tcl=*.tcl;*.itcl

####################################################
# Lexer to be used for corresponding file patterns #
####################################################
lexer.$(file.patterns.tcl)=tcl

################################################
# File type corresponding to the file patterns #
################################################
preprocessor.symbol.*.tcl=
preprocessor.start.*.tcl=
preprocessor.middle.*.tcl=
preprocessor.end.*.tcl=

##
# Keywords for Tcl
##
keywordclass.tcl=after append array auto_execok auto_import auto_load \
auto_load_index auto_qualify beep binary break case catch cd clock \
close concat continue dde default echo else elseif encoding eof \
error eval exec exit expr fblocked fconfigure fcopy file \
fileevent flush for foreach format gets glob global history if \
incr info interp join lappend lindex linsert list llength load \
lrange lreplace lsearch lsort namespace open package pid \
pkg_mkIndex proc puts pwd read regexp regsub rename resource \
return scan seek set socket source split string subst switch \
tclLog tclMacPkgSearch tclPkgSetup tclPkgUnknown tell time \
trace unknown unset update uplevel upvar variable vwait while

keywordclass.tk=bell bind bindtags button canvas checkbutton console \
destroy entry event focus font frame grab grid image label listbox menu \
menubutton message pack place radiobutton raise scale scrollbar \
text tk tkwait toplevel winfo wm

keywordclass.itcl=@scope body class code common component configbody \
constructor define destructor hull import inherit itcl itk itk_component \
itk_initialize itk_interior itk_option iwidgets keep method \
private protected public

keywordclass.TkCommands=tkButtonDown tkButtonEnter tkButtonInvoke \
tkButtonLeave tkButtonUp tkCancelRepeat tkCheckRadioInvoke tkDarken \
tkEntryAutoScan 	tkEntryBackspace tkEntryButton1 tkEntryClosestGap \
tkEntryInsert tkEntryKeySelect tkEntryMouseSelect tkEntryNextWord \
tkEntryPaste tkEntryPreviousWord tkEntrySeeInsert tkEntrySetCursor \
tkEntryTranspose tkEventMotifBindings tkFDGetFileTypes tkFirstMenu \
tkFocusGroup_Destroy tkFocusGroup_In tkFocusGroup_Out tkFocusOK \
tkListboxAutoScan tkListboxBeginExtend tkListboxBeginSelect \
tkListboxBeginToggle tkListboxCancel tkListboxDataExtend \
tkListboxExtendUpDown tkListboxMotion tkListboxSelectAll \
tkListboxUpDown tkMbButtonUp tkMbEnter tkMbLeave tkMbMotion \
tkMbPost tkMenuButtonDown tkMenuDownArrow tkMenuDup tkMenuEscape \
tkMenuFind tkMenuFindName tkMenuFirstEntry tkMenuInvoke tkMenuLeave \
tkMenuLeftArrow tkMenuMotion tkMenuNextEntry tkMenuNextMenu \
tkMenuRightArrow tkMenuUnpost tkMenuUpArrow tkMessageBox \
tkPostOverPoint tkRecolorTree tkRestoreOldGrab tkSaveGrabInfo \
tkScaleActivate tkScaleButton2Down tkScaleButtonDown \
tkScaleControlPress tkScaleDrag tkScaleEndDrag tkScaleIncrement \
tkScreenChanged tkScrollButton2Down tkScrollButtonDown \
tkScrollButtonUp tkScrollByPages tkScrollByUnits tkScrollDrag \
tkScrollEndDrag tkScrollSelect tkScrollStartDrag tkScrollToPos  \
tkScrollTopBottom tkTabToWindow tkTearOffMenu tkTextAutoScan \
tkTextButton1 tkTextClosestGap tkTextInsert tkTextKeyExtend \
tkTextKeySelect tkTextNextPara tkTextNextPos tkTextNextWord \
tkTextPaste tkTextPrevPara tkTextPrevPos tkTextResetAnchor \
tkTextScrollPages tkTextSelectTo tkTextSetCursor tkTextTranspose \
tkTextUpDownLine tkTraverseToMenu tkTraverseWithinMenu tk_bisque \
tk_chooseColor tk_dialog tk_focusFollowsMouse tk_focusNext \
tk_focusPrev tk_getOpenFile tk_getSaveFile tk_messageBox \
tk_optionMenu tk_popup tk_setPalette tk_textCopy tk_textCut \
tk_textPaste

keywords.*.tcl=$(keywordclass.tcl) $(keywordclass.tk) $(keywordclass.TkCommands)

keywords.*.itcl=$(keywordclass.tcl) $(keywordclass.tk) $(keywordclass.itcl) \
$(keywordclass.TkCommands)

#statement.indent.*.tcl=4 switch catch class default do else for if \
#try while
statement.end.*.tcl=8  ;
statement.lookback.*.tcl=1
block.start.*.tcl=4 {
block.end.*.tcl=4 }

#none of this has any effect, I guess a custom lexer would be needed
comment.block.tcl=#~
comment.box.start.tcl=##
comment.box.middle.tcl= #
comment.box.end.tcl= ##

file.interpreted.$(file.patterns.tcl)=1
file.is.source.$(file.patterns.tcl)=1
file.has.folds.$(file.patterns.tcl)=1

# tcl styles
# White space
style.tcl.0=$(style.default.whitespace)
# Comment
style.tcl.1=$(style.default.comment)
# Number
style.tcl.2=$(style.default.number)
# String
style.tcl.3=$(style.default.singlequote)
# Single quoted string
style.tcl.4=$(style.default.doublequote)
# Keyword
style.tcl.5=$(style.default.keyword)
# Triple quotes
style.tcl.6=$(style.default.singlequote)
# Triple double quotes
style.tcl.7=$(style.default.doublequote)
# Class name definition
style.tcl.8=$(style.default.localkeyword)
# Function or method name definition
style.tcl.9=$(style.default.syskeyword)
# Operators
style.tcl.10=$(style.default.operator)
# Identifiers
style.tcl.11=$(style.default.identifier)
# Comment-blocks
style.tcl.12=$(style.default.comment)
# End of line where string is not closed
style.tcl.13=$(style.default.unclosedstring)
# Matched Operators
style.tcl.34=fore:#0000FF,bold
style.tcl.35=fore:#FF0000,bold
# Braces are only matched in operator style
braces.tcl.style=10

######################################################
# Default Commands for handling different file types #
######################################################

command.compile.file.$(file.patterns.tcltk)=
command.build.file.$(file.patterns.tcltk)=
command.execute.file.$(file.patterns.tcltk)=tclsh "$(current.full.filename.ext)"
