Skip to content

Instantly share code, notes, and snippets.

@briarfox
Last active December 17, 2015 05:59
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save briarfox/5562489 to your computer and use it in GitHub Desktop.
Save briarfox/5562489 to your computer and use it in GitHub Desktop.
AutoGist Installer
--AutoGist Single Install
--Installer created by @acp edited by @Briarfox
--- This will pull the AutoGist project into Codea for you
-- Instructions:
-- * Create a new project in Codea named AutoGist If you chose another name please change the variable Below
--This is case sensitive
ProjectName = "AutoGist" --Do not change this or else AutoGist will not work
-- * Paste this into the Main (not from the raw view, as iSafari will escape special characters)
-- * Run, run again,
-- If all went well, you should have a AutoGist project now
function getJsonLib()
local tabs = listProjectTabs()
if #tabs == 1 then
print("Pulling JSON library into project...")
local handleSuccess = function(data)
saveProjectTab("json", data)
sound(SOUND_POWERUP, 42179)
print("Success! Please relaunch this project")
end
http.request("https://dl.dropboxusercontent.com/s/9e4nvqeu4hsux2q/Json.lua?token_hash=AAFyMB98j4bnt_1gawf9wSke52hsoC7hsIvARcTuZNeOEw&dl=1", handleSuccess)
return false
else
return true
end
end
function setup()
local handleSuccess = function(data,i,j)
if listProjectTabs(ProjectName) == nil then
sound(SOUND_EXPLODE, 32351)
error("AutoGist project must exist first")
end
local gist = json.decode(data)
local projName = ProjectName
if gist.files["1aTabOrder"] then
print("***Tab Order Found***")
local taborder = gist.files["1aTabOrder"].content
local strStart =1
local strEnd =0
strStart = string.find(taborder,"#",strEnd)
strEnd = string.find(taborder,"\n",strStart)
while strStart do
local tmp = string.sub(taborder,strStart+1,strEnd-1)
local name = ProjectName..":"..tmp
tmp = tmp..".lua"
saveProjectTab(name,gist.files[tmp].content)
strStart = string.find(taborder,"#",strEnd)
strEnd = string.find(taborder,"\n",strStart)
end
else
for k,v in pairs(gist.files) do
local name = ProjectName .. ":" .. string.gsub(k,".lua","")
saveProjectTab(name, v.content)
end
sound(SOUND_PICKUP, 11797)
print("Success!")
end
local handleFailure = function(data)
sound(SOUND_EXPLODE, 32351)
print(data)
end
if getJsonLib() then
http.request("https://api.github.com/gists/5525674",handleSuccess, handleFailure)
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment