-- ************************************************** -- Provide Moho with the name of this script object -- ************************************************** ScriptName = "DR_Edit_in_Gimp" -- ************************************************** -- General information about this script -- ************************************************** DR_Edit_in_Gimp = {} function DR_Edit_in_Gimp:Name() return "Edit an image in Gimp." end function DR_Edit_in_Gimp:Version() return "0.9" end function DR_Edit_in_Gimp:Description() return "Edit an image in Gimp" end function DR_Edit_in_Gimp:Creator() return "David Rylander, 2008 (CC-licenced)" end function DR_Edit_in_Gimp:UILabel() return("Edit in Gimp") end -- ************************************************** -- The guts of this script -- ************************************************** function DR_Edit_in_Gimp.getOS() if os.getenv("OS") ~= nil then local opSys = string.lower(string.sub(os.getenv("OS"), 1, 3)) if opSys == "win" then return "win" else return "unix" end else return "unix" end end function DR_Edit_in_Gimp:Run(moho) if (moho.layer:LayerType() ~= MOHO.LT_IMAGE) then LM.GUI.Alert(LM.GUI.ALERT_INFO, "This Script only works with Image Layers.", nil, nil, "OK", nil, nil) return end moho:LayerAsImage(moho.layer) image = (moho.layer:SourceImage()) if(DR_Edit_in_Gimp.getOS()=="win") then os.execute('start "GIMP" "C:\\Program Files\\GIMP-2.0\\bin\\gimp-2.6.exe" ' .. image) --WINDOWS - EDIT path to Gimp according to your system. else os.execute("gimp " .. image .."&") --LINUX & Mac - edit path "gimp " if it doesn't work. end LM.GUI.Alert(LM.GUI.ALERT_INFO, "Press 'OK' to reload image when you're done.", nil, nil, "OK", nil, nil) moho.layer:SetSourceImage(image) end