Permalink
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
ZeroBraneStudio/cfg/user-sample.lua
Go to fileThis commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
170 lines (130 sloc)
7.54 KB
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--[[-- This file shows examples of settings you can adjust. | |
Configuration files with preferences are loaded in the following order: | |
1. cfg/user.lua (system-wide configuration) | |
2. HOME/.zbstudio/user.lua (per-user configuration) | |
3. -cfg <lua code fragment|filename> (command line configuration) | |
See [configuration](http://studio.zerobrane.com/doc-configuration.html) page for information about location of configuration files. | |
--]]-- | |
-- to modify loaded configuration for recognized extensions for lua files | |
-- (no longer needed in v1.21+) local G = ... -- this now points to the global environment | |
local luaspec = ide.specs.lua | |
luaspec.exts[#luaspec.exts+1] = "luaz" | |
luaspec.keywords[1] = luaspec.keywords[1] .. ' foo' | |
-- to modify a key mapping; see the full list of IDs in src/editor/keymap.lua | |
-- starting from v0.95, ID.<menuid> can be used instead of G.ID_<menuid> | |
keymap[ID.STARTDEBUG] = "Ctrl-Shift-D" | |
-- to change font size to 12 | |
editor.fontsize = 12 -- this is mapped to ide.config.editor.fontsize | |
editor.fontname = "Courier New" | |
filehistorylength = 20 -- this is mapped to ide.config.filehistorylength | |
-- to specify full path to love2d *executable*; this is only needed | |
-- if the game folder and the executable are NOT in the same folder. | |
path.love2d = 'd:/lua/love/love' | |
-- to specify full path to moai *executable* if it's not in one of PATH folders | |
path.moai = 'd:/lua/moai/moai' | |
-- Moai config.lua file is searched in the following places: (1) MOAI_CONFIG, | |
-- (2) project directory (if set) or folder with the current file, | |
-- (3) folder with the moai executable. | |
-- to specify full path to gideros *executable* if it's not in one of PATH folders | |
path.gideros = 'd:/Program Files/Gideros/GiderosPlayer.exe' | |
-- to specify full path to corona *executable* if it's not in one of PATH folders | |
path.corona = 'd:/path/to/Corona SDK/Corona Simulator.exe' | |
-- to specify full path to lua interpreter if you need to use your own version | |
path.lua = 'd:/lua/lua' | |
-- to specify full path to GSL-shell *executable* if it's not in one of PATH folders | |
path.gslshell = [[D:\Lua\gsl-shell\gsl-shell.exe]] | |
-- to provide output filter for those engines that support redirecting | |
-- of "print" output to the IDE (like Corona SDK or Gideros) | |
debugger.outputfilter = function(m) return #m < 124 and m or m:sub(1,120).."...\n" end | |
-- to fix an issue with 0d0d0a line endings in MOAI examples, | |
-- which may negatively affect breakpoints during debugging | |
editor.iofilter = "0d0d0aFix" | |
-- to have 4 spaces when TAB is used in the editor | |
editor.tabwidth = 4 | |
-- to have TABs stored in the file (to allow mixing tabs and spaces) | |
editor.usetabs = true | |
-- to disable wrapping of long lines in the editor | |
editor.usewrap = false | |
-- to turn dynamic words on and to start suggestions after 4 characters | |
acandtip.nodynwords = false | |
acandtip.startat = 4 | |
-- to automatically open files requested during debugging | |
editor.autoactivate = true | |
-- to specify a list of MOAI entrypoints | |
moai = { entrypoints = { "main.lua", "source/main.lua" } } | |
-- to specify language to use in the IDE (requires a file in cfg/i18n folder) | |
language = "ru" | |
-- to change background color (or other colors in the IDE); | |
-- see cfg/tomorrow.lua for example/details on what other colors to change | |
styles.text = {bg = {240,240,220}} | |
-- to change the default color scheme; check tomorrow.lua for the list | |
-- of supported schemes or use cfg/scheme-picker.lua to pick a scheme. | |
styles = loadfile('cfg/tomorrow.lua')('Tomorrow') | |
stylesoutshell = styles -- apply the same scheme to Output/Console windows | |
styles.auxwindow = styles.text -- apply text colors to auxiliary windows | |
styles.calltip = styles.text -- apply text colors to tooltips | |
-- to change markers used in console and output windows | |
styles.marker = styles.marker or {} | |
styles.marker.message = {ch = wxstc.wxSTC_MARK_ARROWS, fg = {0, 0, 0}, bg = {240, 240, 240}} | |
styles.marker.output = {ch = wxstc.wxSTC_MARK_BACKGROUND, fg = {0, 0, 0}, bg = {240, 240, 240}} | |
styles.marker.prompt = {ch = wxstc.wxSTC_MARK_CHARACTER+('>'):byte(), fg = {0, 0, 0}, bg = {240, 240, 240}} | |
stylesoutshell = styles | |
-- to disable indicators (underlining) on function calls | |
-- styles.indicator.fncall = nil | |
-- to change the color of the indicator used for function calls | |
styles.indicator.fncall.fg = {240,0,0} | |
-- to change the type of the indicator used for function calls | |
styles.indicator.fncall.st = wxstc.wxSTC_INDIC_PLAIN | |
--[[ other possible values are: | |
wxSTC_INDIC_DOTS Dotted underline; wxSTC_INDIC_PLAIN Single-line underline | |
wxSTC_INDIC_TT Line of Tshapes; wxSTC_INDIC_SQUIGGLE Squiggly underline | |
wxSTC_INDIC_STRIKE Strike-out; wxSTC_INDIC_SQUIGGLELOW Squiggly underline (2 pixels) | |
wxSTC_INDIC_BOX Box; wxSTC_INDIC_ROUNDBOX Rounded Box | |
wxSTC_INDIC_DASH Dashed underline; wxSTC_INDIC_STRAIGHTBOX Box with trasparency | |
wxSTC_INDIC_DOTBOX Dotted rectangle; wxSTC_INDIC_DIAGONAL Diagonal hatching | |
wxSTC_INDIC_HIDDEN No visual effect; | |
--]] | |
-- to enable additional spec files (like spec/glsl.lua) | |
-- (no longer needed in v1.51+) load.specs(function(file) return file:find('spec[/\\]glsl%.lua$') end) | |
-- to specify a default EOL encoding to be used for new files: | |
-- `wxstc.wxSTC_EOL_CRLF` or `wxstc.wxSTC_EOL_LF`; | |
-- `nil` means OS default: CRLF on Windows and LF on Linux/Unix and OSX. | |
-- (OSX had CRLF as a default until v0.36, which fixed it). | |
editor.defaulteol = wxstc.wxSTC_EOL_LF | |
-- to turn off checking for mixed end-of-line encodings in loaded files | |
editor.checkeol = false | |
-- to force execution to continue immediately after starting debugging; | |
-- set to `false` to disable (the interpreter will stop on the first line or | |
-- when debugging starts); some interpreters may use `true` or `false` | |
-- by default, but can be still reconfigured with this setting. | |
debugger.runonstart = true | |
-- to set compact fold that doesn't include empty lines after a block | |
editor.foldcompact = true | |
-- to disable zoom with mouse wheel as it may be too sensitive on OSX | |
editor.nomousezoom = true | |
-- to specify a skin for Corona simulator (OSX only); | |
-- you can also change it between runs from Local Console by executing | |
-- `ide.config.corona = {skin = 'iPad'}` | |
corona = { skin = "iPad" } | |
-- to style individual keywords; `return` and `break` are shown in red | |
-- (no longer needed in v1.21+) local G = ... -- this now points to the global environment | |
local luaspec = ide.specs.lua | |
local num = #luaspec.keywords | |
-- take a new slot in the list of keywords (starting from 1) | |
luaspec.keywords[num+1] = 'return break' | |
-- remove 'return' from the list of "regular" keywords | |
luaspec.keywords[1] = luaspec.keywords[1]:gsub(' return', ''):gsub(' break', '') | |
-- assign new style to the added slot (starting from 0) | |
styles["keywords"..num] = {fg = {240, 0, 0}, b = true} | |
-- enable `Opt+Shift+Left/Right` shortcut on OSX | |
editor.keymap[#editor.keymap+1] = {wxstc.wxSTC_KEY_LEFT, wxstc.wxSTC_SCMOD_ALT+wxstc.wxSTC_SCMOD_SHIFT, wxstc.wxSTC_CMD_WORDLEFTEXTEND, "Macintosh"} | |
editor.keymap[#editor.keymap+1] = {wxstc.wxSTC_KEY_RIGHT, wxstc.wxSTC_SCMOD_ALT+wxstc.wxSTC_SCMOD_SHIFT, wxstc.wxSTC_CMD_WORDRIGHTENDEXTEND, "Macintosh"} | |
-- enable Emacs bindings to use `Ctrl-A` and `Ctrl-E` to go to the line start/end | |
editor.keymap[#editor.keymap+1] = {('A'):byte(), wxstc.wxSTC_SCMOD_CTRL, wxstc.wxSTC_CMD_HOME} | |
editor.keymap[#editor.keymap+1] = {('E'):byte(), wxstc.wxSTC_SCMOD_CTRL, wxstc.wxSTC_CMD_LINEEND} | |
keymap[ID.SELECTALL] = nil -- remove `Ctrl-A` shortcut from `SelectAll` | |
-- updated shortcuts to use them as of v1.20 | |
keymap[ID.BREAK] = "Shift-F9" | |
keymap[ID.BREAKPOINTTOGGLE] = "F9" | |
keymap[ID.BREAKPOINTNEXT] = "" | |
keymap[ID.BREAKPOINTPREV] = "" |