### Global configuration file for SciTE ### ### Heavily based on the SciteGlobal.properties distributed with ### Bruce Dodson's installer, which you can find at this URL: ### ### http://gisdeveloper.tripod.com/scite_lua.html ### ### Useful shortcuts: ### ### http://www.tutorials-blog.com/dolphin/Useful-Scintilla/ ### ### Ctrl+L Cut current line ### Ctrl+Shift+U Uppercase selection ### Ctrl+T widdle lines ### ### ## legacy from Bruce's file ## USE_CUSTOM_SETTINGS=1 ## BEHAVIOUR - OPENING MULTIPLE FILES ## # define the maximum number of files a single SciTE process can open buffers=30 ## tab switching order with ctrl+tab (0 = cycle through open tabs; 1 = switch to previous tab) buffers.zorder.switching=1 ## APPEARANCE - NEW WINDOWS ## # Window sizes and visibility position.left=180 position.top=80 position.width=850 position.height=800 # open new process tiled next to existing SciTE windows? position.tile=0 ## APPEARANCE - MAIN WINDOW SCROLL BARS ## horizontal.scrollbar=1 # width of the document assumed for scrolling #horizontal.scroll.width=80 ## APPEARANCE - OUTPUT WINDOW ## # When a command execution produces error messages, and you step with F4 key through the matching source lines, this option selects the line where the error occurs. Most useful if the error message contains the column of error too as the selection will start at the column of the error. The error message must contain the column and must be understood by SciTE (currently only supported for HTML Tidy). The tab size assumed by the external tool must match the tab size of your source file for correct column reporting. error.select.line=1 #error.marker.fore=#0000A0 #error.marker.back=#DADAFF # 0 = output does not automatically scroll; 1 = scroll then return; 2 = scroll and stay output.scroll=0 output.horizontal.scrollbar=0 #output.horizontal.size=200 #output.vertical.size=60 ## APPEARANCE - BARS - OPEN FILES TAB BAR ## tabbar.visible=1 tabbar.multiline=0 # hide the tab bar if only one file is open? tabbar.hide.one=1 ## APPEARANCE - BARS - APPLICATION TITLE BAR ## # show full path to the currently open file in the window title? title.full.path=0 # display (eg) [1 of 3] to indicate which file is being edited? title.show.buffers=1 ## APPEARANCE - BARS - TOP ICON TOOLBAR ## toolbar.visible=1 # updates toolbar icons for undo & redo quicker but more reliably undo.redo.lazy=0 ## APPEARANCE - BARS - BOTTOM STATUS BAR ## #~ The statusbar.text.1 option defines the information displayed in the status bar by default on all platforms. Property values may be used in this text using the $() syntax. Commonly used properties are: ReadOnly, EOLMode, BufferLength, NbOfLines (in buffer), SelLength (chars), SelHeight (lines). Extra properties defined for the status bar are LineNumber, ColumnNumber, and OverType which is either "OVR" or "INS" depending on the overtype status. You can also use file properties, which, unlike those above, are not updated on each keystroke: FileName or FileNameExt, FileDate and FileTime and FileAttr. Plus CurrentDate and CurrentTime. #~ On Windows only, further texts may be set as statusbar.text.2 .. and these may be cycled between by clicking the status bar. #~ The statusbar.number option defines how many texts are to be cycled through. statusbar.visible=1 statusbar.number=2 statusbar.text.1= line $(LineNumber), column $(ColumnNumber) ($(OverType)) ($(EOLMode)) $(FileAttr) - $(SelLength) chars selected - $(FilePath) statusbar.text.2=\ $(FileNameExt) (Total size: $(BufferLength) chars, $(NbOfLines) lines) #statusbar.text.3=\ #$(FileNameExt) (modified $(FileDate) at $(FileTime)) $(FileAttr) ## APPEARANCE - MISC ## # minimize to system tray icon or taskbar? minimize.to.tray=1 # hide the file menu in fullscreen mode (press F11 or View -> Full Screen) full.screen.hides.menu=0 # enable greater than 8 bit colour in Windows? use.palette=1 # buffer display output? (buffered flickers less but is slower) buffered.draw=1 # two phased draw is slower but better way of drawing text (may flicker more without buffered.draw set two.phase.draw=1 # 0 = disable caching; 1 = cache current line; 2 = cache visible page + caret; 3 = cache entire document cache.layout=3 output.cache.layout=0 # GTK only menubar.detachable=1 #magnification=-1 #output.magnification=-1 # Element styles #control.char.symbol=. ## APPEARANCE - BLANK MARGINS ## blank.margin.left=4 blank.margin.right=4 ## APPEARANCE - LINE MARKER MARGIN ## #margin.width=0 ## APPEARANCE - BOOKMARKS (FOR DISABLED MARGIN) ## # (used when margin is disabled) if bookmark.fore is unset, a blue sphere is shown #bookmark.fore=#000000 #bookmark.back=#00BBFF #bookmark.alpha=100 ## LINE NUMBERS ## #~ SciTE is able to display a column of line numbers to the left of the selection margin. Setting line.margin.visible to 1 makes this column visible at startup. The line.margin.width property controls how much space is reserved for the line numbers, in terms of the number of digits that can be displayed. To specify that the margin should expand if needed to accomodate larger line numbers, add a '+' after the number of digits, e.g. line.margin.width=3+. #~ These properties replace the old line.numbers property, which was overloaded to perform both of the actions described above. The line.numbers property is no longer available. line.margin.width=1+ line.margin.visible=1 ## DISPLAY - WHITESPACE AND INDENTATION ## view.whitespace=0 view.whitespace=1 #whitespace.fore=#FF0000 #whitespace.fore=#E8E8E8 #whitespace.back=#FFFFEE whitespace.fore=#EFEFEF view.indentation.whitespace=1 view.indentation.guides=1 highlight.indentation.guides=1 ## BEHAVIOUR - LONG LINE SUPPORT (EDGE MODE) ## # 0 = disable; 1 = display vertical line at $(edge.column); 2 = changes background of characters past column $(edge.column) edge.mode=1 edge.column=76 edge.colour=#C0DCC0 # whether to move to the beginning of the line or indentation on home vc.home.key=0 wrap.aware.home.end.keys=1 visible.policy.strict=1 visible.policy.slop=0 visible.policy.lines=5 ## BEHAVIOUR - BRACE MATCHING ## # 0 = normal; 1 = match brace after caret unless brace character before braces.check=1 braces.sloppy=1 ## DISPLAY - SELECTION ## selection.alpha=80 selection.back=#006000 selection.fore=#000060 ## BEHAVIOUR - CONFIRMATION ## are.you.sure=1 are.you.sure.on.reload=1 are.you.sure.on.activate=1 are.you.sure.for.build=1 ## BEHAVIOUR - LOADING AND SAVING ## check.if.already.open=1 open.dialog.in.file.directory=1 read.only=0 reload.preserves.undo=1 quit.on.close.last=1 default.file.ext=.txt save.recent=1 save.session=1 save.deletes.first=0 # 0 = no limits; 1 = check before opening bigger file (size in s) max.file.size=5000000 # save all open files before building? #save.all.for.build=1 # save open files when the application loses focus? save.on.deactivate=0 # reload open files when updated by an external application? load.on.activate=1 ## APPEARANCE - LOADING AND SAVING ## #fileselector.width=800 #fileselector.height=600 # start with monospace settings overriding defaults? start.in.monospaced.mode=1 ## BEHAVIOUR - MISC ## strip.trailing.spaces=1 ensure.final.line.end=0 ensure.consistent.line.ends=1 html.tags.case.sensitive=0 # enable or disable backslashes as escape characters for SQL sql.backslash.escapes=1 autocompleteword.automatic=1 #autocomplete.choose.single=1 xml.auto.close.tags=1 #api.*.cxx=d:\api\w.api #win95.death.delay=1000 #translation.missing=*** ## DISPLAY - TABS AND INDENTATION ## # when not using tabs for indenting, how many spaces are shown per tab tabsize=8 # when using tabs for indenting, how many spaces are shown per tab indent.size=8 ## BEHAVIOUR - TABS AND INDENTATION ## # use tabs or spaces when pressing to indent? use.tabs=1 indent.automatic=1 indent.opening=0 indent.closing=1 # inside indentation, pressing space will indent and move to first character tab.indents=1 # inside indentation, pressing backspace removes tabs after the caret backspace.unindents=1 ## BEHAVIOUR - LINE WRAPPING ## #~ wrap #~ output.wrap # If wrap set to 1 then the edit pane is dynamically line wrapped. If output.wrap set to 1 then the output pane is dynamically line wrapped. These options have a high performance cost which is proportional to the amount of text so should be turned off for large documents on slow machines. #~ wrap.style # Chooses between word wrapping (1, the default) and character wrapping (2). Character wrapping is a better choice for Asian languages with no spaces between words. #~ wrap.visual.flags # Flags to display markers at end and begin of wrapped lines for visual identify them. Set to 0 to not display markers (default). Set to 1 to display markers at end of wrapped lines, to 2 to display markers at begin of wrapped lines and to 3 to display markers at begin and end. #~ wrap.visual.flags.location # Flags to set the location of the display markers (if enabled) near to text or near to border. Set to 0 to have begin and end markers near to border (default). Set to 1 to have end markers near text, to 2 to have begin markers near text and to 3 to have all markers near text. #~ wrap.visual.startindent # Sets the indention of continued wrapped lines to better visually identify the wrapping. Default is 0 (no indention). Note if wrap.visual.flags is 2 or 3 (begin marker displayed) the line is indented at least 1, even if wrap.visual.startindent is still 0. #~ wrap.aware.home.end.keys # This property changes the behavior of the home and end keys when dynamic line wrapping is turned on. # When set to 0 (the default), the Home and End keys will move the caret to the very beginning / end of the 'logical' line, whether or not the line is wrapped over multiple lines in the display. # When this property is set to 1, the caret moves to the end of the current 'display' line if you press End once, or to the very end of the 'logical' line if you press End again. Likewise, the Home key moves first to the beginning of the 'display' line, then on to the very beginning of the line. In a pane where dynamic line-wrapping is not enabled, this setting has no effect. wrap=1 wrap.style=1 wrap.visual.flags=3 wrap.visual.flags.location=3 wrap.visual.startindent=1 #wrap.visual.flags.location=3 wrap.aware.home.keys=0 output.wrap=1 ## APPEARANCE - BLOCK FOLDING ## #~ Options to control folding. Folding is turned on be setting fold to 1. The fold.symbols setting chooses between four ways of showing folding. # ~ 0 (the default) for MacOS style arrows to indicate contracted (facing right) and expanded (facing down); # ~ 1 to display contracted folds with "+" and expanded with "-"; # ~ 2 for a flattened tree control with round headers and rounded joins; # ~ 3 for a flattened tree control with square headers. To automatically fold files as much as possible when loaded, set fold.on.open to 1. fold=2 fold.compact=0 fold.flags=16 fold.symbols=2 fold.on.open=0 fold.comment=1 fold.preprocessor=1 fold.margin.width=16+ #fold.margin.colour=#000060 #fold.margin.highlight.colour=#000000 #~ For HTML, XML, Lua and C++ and similar files, turning this option on leads to blank lines following the end of an element folding with that element. Defaults to on. fold.compact=0 ## BEHAVIOUR - FIND AND REPLACE ## find.replace.matchcase=0 find.replace.wrap=1 find.replacewith.focus=0 find.replace.advanced=1 find.replace.regexp=1 find.replace.regexp.posix=1 find.replace.escapes=1 escapes.in.find.replace=1 ## BEHAVIOUR - FIND IN FILES ## #~ The Find in Files command works in a similar way to the building commands executing a command line tool with output redirected to the output pane. If the command produces output understood by one of the error output passes, as does grep, then the F4 and Shift+F4 keys can be used to move through all the matches. The $(find.what), $(find.files), and $(find.directory) variables can be used for the values from the Find in Files dialog. #~ There are some scripts that implement this feature in Perl better than grep does itself here and here. This command line works with Cygwin on Windows, with modifications to suit the Cygwin installation directory: #~ find.command=cmd /c c:\cygwin\bin\find "$(find.directory)" -name "$(find.files)" -print0 | c:\cygwin\bin\xargs -0 fgrep -G -n "$(find.what)" #~ On Windows, the find string can be given to the find command through its standard input stream to avoid problems with quote interpretation. To do this, specify find.input to be the search string, $(find.what). #~ If find.command is empty then SciTE's own search code is used. This only does a simple case sensitive search and is faster than running an external program. #~ find.mark: If set, then the Mark All command in the Find dialog will draw translucent boxes over each string found. find.mark=#0000FF # findstr is available on recent versions of Windows including 2000 find.command=findstr /I /P /R /S /N /G:/ $(find.files) find.input=$(find.what) #~ This is the default set of files to search through using the Find in Files command. The find.files property can contain a list of sets of files separated by '|' like "*.cxx *.h|*.py *.pyw|*.html" which adds three entries to the history and uses the first as the default value. #~ The evaluation of this setting is a little unusual in that each entry in the value from the property files is appended to the end of the history if that entry is not already present. This means that opening files from different directories will result in any local setting of find.files being added to the list. find.files=*.*|*.c *.cpp *.cxx *.h|*.bas *.cls *.frm *.dsr find.in.files.close.on.find=0 find.in.dot=1 find.in.binary=0 ## BEHAVIOUR - LINE ENDINGS ## # display visual marker for eol characters? view.eol=0 # eol characters to use (LF = UNIX format; CR = Mac; CRLF = Windows) #eol.mode=CRLF # autodetect eol style to use based on file contents eol.auto=1 # This property changes the behavior of the home and end keys when dynamic line wrapping is turned on. When set to 0 (the default), the Home and End keys will move the caret to the very beginning / end of the 'logical' line, whether or not the line is wrapped over multiple lines in the display. When this property is set to 1, the caret moves to the end of the current 'display' line if you press End once, or to the very end of the 'logical' line if you press End again. Likewise, the Home key moves first to the beginning of the 'display' line, then on to the very beginning of the line. In a pane where dynamic line-wrapping is not enabled, this setting has no effect. wrap.aware.home.end.keys=1 ## BEHAVIOUR - OUTPUT WINDOW ## time.commands=1 clear.before.execute=1 ## System caret (cursor / blinking indicator of current position in text) ## caret.policy.xslop=1 caret.policy.width=20 caret.policy.xstrict=0 caret.policy.xeven=0 caret.policy.xjumps=0 caret.policy.yslop=1 caret.policy.lines=1 caret.policy.ystrict=1 caret.policy.yeven=1 caret.policy.yjumps=0 # background colour for the line the caret is currently on caret.line.back=#FFCC66 caret.line.back.alpha=35 # colour of the caret itself #caret.fore=#026439 caret.fore=#FF0000 # caret width in pixels caret.width=4 # period between blinks for the caret #caret.period=500 # setting this to 1 makes the caret return to its previous start position in a line # after pasting something and moving up or down a line (instead of being at the # position in the line where the pasted text ended) caret.sticky=1 ## Miscellanous warnings ## #warning.findwrapped=100,E:\Windows\Media\SFX\Boing.wav #warning.notfound=0,Effect.wav #warning.wrongfile=0,Glass.wav #warning.executeok=0,Fanfare.wav #warning.executeko=100,GlassBreak.wav #warning.nootherbookmark=100,Boing2.wav warning.findwrapped=25,0 ## BEHAVIOUR - CHARACTER SETS AND INTERNATIONALIZATION ## # Japanese input code page 932 and ShiftJIS character set 128 #code.page=932 #character.set=128 # Unicode #code.page=65001 code.page=0 ## Settings for exporting files to different formats ## #export.keep.ext=1 # ... when exporting as HTML export.html.wysiwyg=0 #export.html.tabs=1 #export.html.folding=1 #export.html.title.fullpath=1 export.html.styleused=0 # ... when exporting as RTF #export.rtf.tabs=1 #export.rtf.font.face=Arial #export.rtf.font.size=9 #export.rtf.tabsize=8 # ... when exporting as PDF export.pdf.magnification=0 # Font: Courier, Helvetica or Times (Courier line-wraps) export.pdf.font=Helvetica # Page size (in points): width, height (Letter: 612,792; A4 595,842; maximum 14400,14400) export.pdf.pagesize=595,842 # Margins (in points): left, right, top, bottom export.pdf.margins=72,72,72,72 # ... when exporting as XML export.xml.collapse.spaces=1 export.xml.collapse.lines=1 # Define values for use in the imported properties files chars.alpha=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ chars.numeric=0123456789 chars.accented=ŠšŒœŸÿÀàÁáÂâÃãÄäÅ寿ÇçÈèÉéÊêËëÌìÍíÎîÏïÐðÑñÒòÓóÔôÕõÖØøÙùÚúÛûÜüÝýÞþßö # This is a better set for Russian: #chars.accented=ÀàÁáÂâÃãÄäÅå¨¸ÆæÇçÈèÉéÊêËëÌìÍíÎîÏïÐðÑñÒòÓóÔôÕõÖö×÷ØøÙùÚúÛûÜüÝýÞþßÿ ## open.filter: default value of the "type" field in the dialog window ## displayed when going to File -> Open ## ## format: | ## eg: Special files|*.special| ## source.files=*.asm;*.c;*.cc;*.cpp;*.cxx;*.cs;*.h;*.hh;*.hxx;*.hpp;*.idl;*.odl;*.rc;*.rc2;*.dlg;*.def;*.vb;*.vbs;*.bas;*.frm;*.cls;*.ctl;*.java;*.js;*.py;*.pl;*.rb;*.cgi;*.lua;*.conf;make*;*.mak;*.properties;*.html;*.xml;*.iface;*.bat;*.e all.files=All Files (*.*)|*.*| open.filter=\ All files (*.*)|*.*|\ $(all.files)\ Source and Text Files|$(source.files);*.txt|\ $(filter.ada)\ $(filter.conf)\ #$(filter.asm)\ #$(filter.asn1)\ #$(filter.ave)\ #$(filter.baan)\ #$(filter.bash)\ #$(filter.caml)\ #$(filter.cpp)\ #$(filter.ch)\ $(filter.css)\ #$(filter.eiffel)\ #$(filter.erlang)\ #$(filter.fortran)\ #$(filter.idl)\ $(filter.java)\ $(filter.js)\ #$(filter.kix)\ #$(filter.lout)\ $(filter.lua)\ #$(filter.matlab)\ #$(filter.metapost)\ #$(filter.mmixal)\ #$(filter.nncrontab)\ #$(filter.nsis)\ #$(filter.pascal)\ $(filter.perl)\ $(filter.php)\ #$(filter.pov)\ #$(filter.prg)\ $(filter.properties)\ #$(filter.ps)\ #$(filter.python)\ #$(filter.ruby)\ $(filter.sql)\ #$(filter.specman)\ $(filter.tcl)\ #$(filter.tex)\ $(filter.text)\ #$(filter.vb)\ #$(filter.web) #\ #$(filter.yaml)\ #$(filter.verilog)\ #$(filter.vhdl) ## Styles - colours for use in style definitions ## #colour.code.comment.box=fore:#3F726B #colour.code.comment.line=fore:#34665E #colour.code.comment.doc=fore:#3F77C1 #colour.text.comment=fore:#0000FF,back:#D0F0D0 #colour.other.comment=fore:#3F77C1 #colour.embedded.comment=back:#E0EEFF colour.embedded.js=back:#F0F0FF colour.notused=back:#FF0000 colour.number=fore:#13A103 colour.keyword=fore:#00007F colour.string=fore:#660033 colour.char=fore:#7F007F colour.operator=fore:#000000 colour.preproc=fore:#7F7F00 colour.error=fore:#FFFF00,back:#FF0000 ## Styles - fonts for use in style definitions ## # NB: settings applied BEFORE that of font.monospace when "use.monospace" is true font.lucida.mono=font:ProggySquareTT,size:11 #font.lucida.mono=font:ProggyClean font.lucida.sans=font:Lucida Sans Unicode,size:9 font.base=font:Lucida Sans Unicode,size:10 font.small=font:Lucida Sans Unicode,size:8 font.comment=font:Comic Sans MS,size:9 font.code.comment.box=$(font.comment) font.code.comment.line=$(font.comment) font.code.comment.doc=$(font.comment) font.text=font:Arial,size:10 font.text.comment=font:Lucida Sans Unicode,size:10 font.embedded.base=font:Lucida Sans Unicode,size:10 font.embedded.comment=font:Comic Sans MS,size:8,italics font.monospace=$(font.lucida.mono) font.vbs=$(font.lucida.sans) font.js=font:Courier New,size:9 font.line.number=font:Tahoma,size:7 # font.monospace applied AFTER above settings if "use.monospace" is true font.monospace=$(font.lucida.mono) # Global default styles for all languages # Default style.*.32=$(font.base) # Line numbers style.*.33=back:#FFFFDD,$(font.line.number) # Brace highlight style.*.34=fore:#0000FF,bold # Brace incomplete highlight style.*.35=fore:#FF0000,bold # Control characters style.*.36= # Indentation guides style.*.37=fore:#B0B0B0,back:#FFFFFF #style.*.37=fore:#DADADA,back:#FFFFFF ## Print setup - valid for Win32 only ## #print.colour.mode=1 print.magnification=-1 # margins: values represent the left, right, top, then bottom in mm or 0.001" print.margins=1500,1000,1000,1500 # Header / footers - can use these strings to print dynamic information: # &f - filename; &d - file date; &t - file time; &F - path to file # &D - date; &T - time; &p - current page; && - literal "&" print.header.format=$(FileNameExt) — Printed on $(CurrentDate), $(CurrentTime) — Page $(CurrentPage) print.footer.format=$(FilePath) — File date: $(FileDate) — File time: $(FileTime) print.header.style=font:Arial,size:12,bold print.footer.style=font:Arial Narrow,size:10,italics #menu.options=\ #Open &CommandValues.html|fds| # Define the Lexer menu, # Each item contains three parts: menu string | file extension | key # The only keys allowed currently are based on F-keys and alphabetic keys and look like # [Ctrl+][Shift+][Fn|a] such as F12 or Ctrl+Shift+D. # A '&' may be placed before a letter to be used as an accelerator. This does not work on GTK+. menu.language=\ #FreeBasic|bas||\ &Text|txt|Shift+F11|\ #Ada|ads||\ #Apache Confi&g|conf||\ #Assembler|asm||\ #ASN.1|asn1||\ #Avenue|ave||\ #Baan|bc||\ &Batch|bat||\ ##Bullant|ant||\ &C / C++|c||\ #C&#|cs||\ #Csound|orc||\ CSS|css||\ &Diff / Patch|diff||\ #&Eiffel|e||\ #Erlang|erl||\ #&Errorlist|err||\ ##FlagShip|prg||\ #&Fortran|f90||\ H&ypertext|html|F12|\ #&Java|java||\ Java&Script|js||\ #&Kix|kix||\ #TeX|tex||\ #Lisp|lisp||\ #Lot|lot||\ #Lout|lt||\ Lu&a|lua||\ #Matlab|m.matlab||\ #&Makefile|mak|Ctrl+Shift+F11|\ #MetaPost|mp||\ #MMIXAL|mms||\ #&nnCron crontab|tab||\ #NSIS|nsis||\ #Objective Caml|ml||\ #Octave|m.octave||\ #Pascal|pas||\ Pe&rl|pl||\ P&HP|php||\ #P&L/SQL|spec||\ &Properties|properties||\ #P&ostScript|ps||\ #P&OV-Ray SDL|pov||\ #Pytho&n|py||\ #Reso&urce|rc||\ #Ruby|rb||\ &Shell|sh||\ #S&QL|sql||\ #Specman|e||\ #&TCL|tcl||\ #&VB|vb||\ #VBScr&ipt|vbs||\ #Verilog|v||\ #VHDL|vhd||\ &XML|xml|Shift+F12| #\ #&YAML|yaml|| # Import all the language specific properties files #import ada #import asm #import asn1 #import au3 #import ave #import baan #import freebasic #import blitzbasic #import bullant #import caml import conf #import cpp #import csound import css #import eiffel #import erlang #import escript #import flagship #import forth #import fortran import html #import kix #import lisp #import lot #import lout import lua #import matlab #import metapost #import mmixal #import nncrontab #import nsis import others #import pascal import perl #import pov #import ps #import purebasic import python #import rebol #import ruby #import scriptol #import smalltalk import sql #import specman #import tcl #import tex #import vb #import yaml #import verilog #import vhdl ## language function display type stuff ## #~ calltip.lexer.ignorecase #~ calltip.*.ignorecase When set to 1 the API file is searched in a case insensitive way to find the function which will have its signature displayed as a calltip. The * form is use if there is no lexer specific setting. #~ calltip.lexer.word.characters #~ calltip.*.word.characters To determine the identifier to look up for calltips, a search is performed allowing the characters in this set to be included in the identifier. While the same setting can be used as for word.characters, sometimes additional characters may be allowed. For example, in Python, '.' is not normally considered part of a word when selecting text, but it is good to allow "string.replace" to show a calltip so calltip.python.word.characters=._$(chars.alpha) would be a reasonable setting. The * form is used if there is no lexer specific setting. #~ calltip.lexer.end.definition #~ calltip.*.end.definition API files may contain explanatory text after each function definition. To display the explanation on a second line, set this property to the character used at the end of the definition part. For most languages, this is ')'. The * form is used if there is no lexer specific setting. #~ calltip.back Sets the colour used for the background of any calltips. The default is white. #calltip.back=#FFF0FE ## comments ## #~ These settings are for the comment commands in the Edit menu and are defined separately for each lexer. Not all languages support both stream and block comments. #~ Block comments are comments that start with a particular string and continue until the end of line. The comment.block property sets the string to be inserted or deleted at the start of the selected lines when the Block Comment or Uncomment command is performed. To make this command perform sensibly over a range of text that already contains comments and other code, the string can be defined to contain a character such as '~' that is not used in real comments. #~ Set comment.block.at.line.start to "1" to place block comment symbols at the start of the lines, instead of just before the first non-blank character of the lines. #~ Stream comments start with a particular string and end with another particular string and may continue over line ends. These are defined with comment.stream.start and comment.stream.end. #~ Box comments are a form of stream comment that takes several lines and uses different strings for the start, end and other lines in the range. These are defined with comment.box.start, comment.box.middle and comment.stream.end. # add comment blocks at the beginning of the line, or at the first non-whitespace character? comment.block.at.line.start=1 # comment.stream.start.*=~ comment.stream.end.*=~ # * Please read the following to get started with Lua Scripting. # These properties only work if you're using a Lua-enabled build # of SciTE. # The startup script is run to initialise SciTE. This property # is checked, and the script run only run once - at startup time. # Afterward, whenever you switch buffers, Lua is restored to the # state established by this script. Unless the ext.lua.reset # property is set, you need to restart SciTE in order to see # changes in this property or in the underlying script file. # #ext.lua.startup.script=$(SciteDefaultHome)\SciTEStartup.lua #ext.lua.startup.script=$(SciteDefaultHome)\extman.lua # Normally, when the global state needs to be restored, this # is done without re-evaluating the startup script. However, # if you are in the process of editing the startup script, # you may want to re-execute it without having to restart # SciTE. # ext.lua.auto.reload will immediately re-initialize the # global scope if the startup script or extension script # is saved from within SciTE. This may have side effects. # However, it doesn't do anything unless you have been # editing the startup script, so I would just leave it on. # ext.lua.auto.reload=1 # ext.lua.reset will cause the Lua global environment to be # cleared and reloaded whenever you switch buffers or open # a new file. As such, it has a different set of side # effects than auto.reload. In some situations it will make # sense for both auto.reload and reset to be enabled. # #ext.lua.reset=1 # When errors occur in Lua, the error message is displayed # using the _ALERT function. (By default, _ALERT is an alias for # print.) Error messages generally contain a descriptive message, # including the line and file where the error occurred. # # If debug.traceback is set to 1, this will cause SciTE to append # a trace of the call stack onto the error message. It does this # by calling the _TRACEBACK function. (By default, _TRACEBACK is # an alias for debug.traceback.) # ext.lua.debug.traceback=1 # The extension script is used to set up the Lua environment # for a specific buffer in SciTE. This property is optional, # and can be used to define different behavior for each file # type. Furthermore, if a simple filename is used rather # than an absolute path, then SciTE will look for the file # in the local folder for the buffer (like SciTE.properties) # before falling back to $(SciTEDefaultHome). # #extension.*=SciTE.lua #command.scite.help="file://$(SciteDefaultHome)\SciTEDoc.html" command.scite.help="http://scintilla.sourceforge.net/SciTEDoc.html" command.scite.help.subsystem=2 ## custom commands ## # Anything specified after the command name is passed to the Lua # function as a single string argument. An example of a command, # using the built-in dofile command, is shown below. # # command.name.1.*=Run My Script # command.subsystem.1.*=3 # command.1.*=dofile $(SciteDefaultHome)/My Script.lua #~ How can I add [some external application] to the tools menu on SciTE? #~ In your properties file, you'll need to add some lines: #~ command.name.number.filepattern #~ (e.g.: command.name.1.$(file.patterns.web)=HTML Tidy) #~ This defines the Text that will appear on the Tools Menu. #~ command.number.filepattern #~ (e.g.: command.1.$(file.patterns.web)=tidy -i -wrap 0 -m $(FilePath) ) #~ This is the actual command that SciTE executes. You should provide the appropriate paths, options and parameters as you would from a command line. See SciTEDoc.html for more information on parameters and how to make SciTE prompt a Parameters Dialog. #~ command.is.filter.number.filepattern #~ (e.g.: command.is.filter.1.$(file.patterns.web)=1) #~ The external application may have modified your file, so setting this to true makes SciTE reload the file after execution of the command. #~ command.subsystem.number.filepattern #~ (e.g.: command.subsystem.1.$(file.patterns.web)=2) #~ This is for Windows and defines the subsystem through which the program is called. See SciTEDoc.html for more information on this. #~ You can set a command for all files using * as a file pattern. Up to 10 commands (0 - 9) can be defined in the Tools Menu at any time. Commands also get executed with Ctrl+number. #This is the same as the next two together. #Probably comment out the others if you uncomment this. #command.name.31.*=Clean Document Whitespace #command.mode.31.*=subsystem:lua,savebefore:no,groupundo #command.shortcut.31.*=Alt+Shift+I #command.31.*=cleanDocWhitespace #~ command.name.31.*=Fix Indentation #~ command.mode.31.*=subsystem:lua,savebefore:no,groupundo #~ command.shortcut.31.*=Alt+Shift+I #~ command.31.*=fixIndentation #~ command.name.32.*=Strip Trailing Spaces #~ command.mode.32.*=subsystem:lua,savebefore:no,groupundo #~ command.shortcut.32.*=Alt+Shift+S #~ command.32.*=stripTrailingSpaces #~ command.name.33.*=Run Document as Lua Extension #~ command.33.*=dofile $(FilePath) #~ command.subsystem.33.*=3 #~ command.mode.33.*=savebefore:yes #~ command.shortcut.33.*=Ctrl+R #~ command.name.34.*=Run HTML Tidy on current file #~ command.subsystem.34.*=0 #~ command.is.filter.34.*=1 #~ command.34.*="F:\\Program Files\\cygwin\\bin\\tidy.exe" "-i" "-wrap" "72" "-m" "$(FilePath)" #~ command.shortcut.34.*=Ctrl+E #command.34.*=tidy -i -wrap 72 -m -- \\"$(FilePath)\\" #command.name.33.*=Run HTML Tidy on current file #command.33.*=,savebefore:yes #command.34.*="F:\Progra~1\cygwin\bin\tidy.exe" -i -wrap 72 -m #command.34.*=F:\Progra~1\cygwin\bin\tidy.exe -i -wrap 72 -m $(FilePath) #"F:\Program Files\cygwin\bin\bash.exe" "-c" "~/scripts/addons.sh" #command.34.*=tidy -i -wrap 72 $(FilePath) || sleep 30 ## bookmark stuff ## #~ function next_bookmark() #~ Command 'IDM_BOOKMARK_NEXT' #~ local line = editor:LineFromPosition(editor.CurrentPos) #~ local top = editor.FirstVisibleLine #~ local middle = top + editor.LinesOnScreen/2 #~ editor:LineScroll(0,line - middle) #~ end #~ function find_in_other(f) #~ PerformOther('find',f) #~ Command('IDM_BOOKMARK_TOGGLE','other') #~ end ## user defined context menu entries (right click menu for the currently ## opened file) ## #user.context.menu=\ #||\ #Next File|IDM_NEXTFILE|\ #Prev File|IDM_PREVFILE| ## keyboard shortcuts ## ## NB: can also be defined with "menukey." config entries, eg: ## ## menukey.file.close=w ## #~ Define keys that perform commands. This is a '|' delimited list of keys and the commands they produce. The commands are either string or numeric IDs. Numeric IDs above 2000 are Scintilla commands and are sent to the focussed pane. Named IDs and numeric IDs below 2000 are SciTE menu commands which can be found in from scite/src/SciTE.h. The modifiers are Ctrl, Shift, and Alt and the named keys are Left, Right, Up, Down, Insert, End, Home, Enter, Space, KeypadPlus, KeypadMinus, Escape, Delete, PageUp, PageDown, Slash, Question, Equal. #user.shortcuts=\ #Ctrl+Shift+Q|IDM_QUIT|\ #Ctrl+PageUp|IDM_PREVFILE|\ #Ctrl+PageDown|IDM_NEXTFILE| #Ctrl+F12|IDM_WRAP|\ #Ctrl+Shift+V|IDM_PASTEANDDOWN|\ #Ctrl+q|IDM_QUIT|\ #Ctrl+w|IDM_CLOSE|\ #Ctrl+Alt+Left|IDM_PREVFILE|\ #Ctrl+Alt+Right|IDM_NEXTFILE| #Ctrl+b|IDM_BOOKMARK|\Bookmark| #KeypadPlus|IDM_EXPAND|\ #KeypadMinus|IDM_BLOCK_COMMENT| menukey.file.close=w menukey.file.exit=q