aboutsummaryrefslogtreecommitdiffstats
path: root/epan/wslua/template-init.lua
diff options
context:
space:
mode:
authorLuis Ontanon <luis.ontanon@gmail.com>2006-09-27 02:51:08 +0000
committerLuis Ontanon <luis.ontanon@gmail.com>2006-09-27 02:51:08 +0000
commit611d1e64433b8686d5f676ddf486ae7d11ea36ae (patch)
treeb30263f0f138146bef90d8257f2120962cc48741 /epan/wslua/template-init.lua
parent354983d30d5f22189dd134c43a71e2a6d9a55231 (diff)
Add a simple lua console to allow evaluation of conde into init.lua
svn path=/trunk/; revision=19332
Diffstat (limited to 'epan/wslua/template-init.lua')
-rw-r--r--epan/wslua/template-init.lua25
1 files changed, 25 insertions, 0 deletions
diff --git a/epan/wslua/template-init.lua b/epan/wslua/template-init.lua
index d1b139f4af..76d8c76543 100644
--- a/epan/wslua/template-init.lua
+++ b/epan/wslua/template-init.lua
@@ -51,6 +51,31 @@ end
-- have print() call info() instead.
print = info
+
+-- a Console to execute commands in lua
+function wslua_console()
+ local w = TextWindow.new("Lua Console")
+ w:set_editable(TRUE)
+
+ function eval()
+ local text = string.gsub(w:get_text(),"%c*--%[%[.*--%]%]$","")
+ text = string.gsub(text,"^=","return ")
+
+ local result = assert(loadstring(text))()
+
+ if (result ~= nil) then
+ w:set(text .. '\n\n--[[ Result:\n' .. result .. '\n--]]')
+ else
+ w:set(text .. '\n\n--[[ Evaluated --]]')
+ end
+ end
+
+ w:add_button("Evaluate",eval)
+end
+
+register_menu("Lua Console",wslua_console)
+
+
-- %WTAP_ENCAPS%
-- %FT_TYPES%