local exe local function exePath() local mainpath = ide.editorFilename:gsub("[^/\\]+$","") local macExe = mainpath..'bin/murgaLua' return (ide.osname == "Windows" and mainpath..[[bin\EGSL\egsl.exe]] or (ide.osname == "Unix" and [[egsl]]) -- using installed murgaLua or (wx.wxFileExists(macExe) and macExe or mainpath..[[bin/egsl]])) end return { name = "egsl (basic)", description = "egsl interpreter with debugger", api = {"baselib"}, frun = function(self,wfilename,rundebug) exe = exe or exePath() if rundebug then DebuggerAttachDefault() end local cmd = ('"%s" "%s"'):format(exe, wfilename:GetFullPath()) -- CommandLineRun(cmd,wdir,tooutput,nohide,stringcallback,uid,endcallback) return CommandLineRun(cmd,self:fworkdir(wfilename),true,false,nil,nil, function() ide.debugger.pid = nil end) end, fprojdir = function(self,wfilename) return wfilename:GetPath(wx.wxPATH_GET_VOLUME) end, fworkdir = function (self,wfilename) return ide.config.path.projectdir or wfilename:GetPath(wx.wxPATH_GET_VOLUME) end, hasdebugger = true, fattachdebug = function(self) DebuggerAttachDefault() end, skipcompile = true, scratchextloop = true, unhideanywindow = true, }