From 9e7475e684cd7f23a7606f5c5adf16ba43989108 Mon Sep 17 00:00:00 2001 From: LDDestroier Date: Sun, 17 Mar 2019 20:10:30 -0400 Subject: [PATCH] Create goto-snippet.lua This is a snippet, not an API. Firstly, never ever ever use GOTO. Never even code GOTO. Neve-oh fuck Declare tags with --::tagName:: Goto tags with goto(tagName). Don't include any colons or hyphens. goto(tag) will not include any local variables, so keep that in mind. --- goto-snippet.lua | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 goto-snippet.lua diff --git a/goto-snippet.lua b/goto-snippet.lua new file mode 100644 index 0000000..12dd8f5 --- /dev/null +++ b/goto-snippet.lua @@ -0,0 +1,17 @@ +-- goto +goto = function(tag) local f,c,l,o=fs.open(shell.getRunningProgram(), "r"),"","",false while l do if o then c=c..l l=f.readLine() if l then c=c.."\n" else break end else l=f.readLine() if l then o=l:find("--::"..tag.."::")==1 end end end f.close() load(c,nil,nil,_ENV)() end + +-- example +goto("test") + +print("Before") + +--::test:: + +print("After") + +--[[ + After + Before + After +--]]