2009/4/8 Vesa Jääskeläinen <ch...@nic.fi>: > Bean wrote: >> Hi, >> >> This patch integrate the LUA script engine to grub2. Before applying >> this patch, you should apply the split module patch split_3.diff >> first. >> >> BTW, I forget to add Makefile.in the previous split_3.diff, so that >> handler.lst will not be generated, I include it in this one. >> >> To try the LUA engine, you can enter command line, and use: >> >> parser.lua >> >> Inside lua, you can use grub.run to execute grub commands, such as: >> >> grub.run("ls", "-l") >> >> To switch back to sh, you can run this command: >> >> grub.run("parser.sh") > > I would prefer something like grub.return or grub.exit, or something > like that if really needed.
Hi, I add a grub library to lua, now it only contain grub.run, but it would be easy to add more function. I think it would be useful to add function to interface with the video subsystem directly, so that lua can be used to control the dynamic drawing of ui components. > Here is something that I would like that it can do: > > In GUI definition: > > action="lua:grub.run(\"ls\", \"-l\")" and action="my_lua_action.lua" > > or just > > action="lua:my_lua_action.lua" > > and > > action="ls -l" or action="(ba)sh:ls -l" > > This way one could use both grub bash scripting and lua scripting. > > Now if something is being executed in my_lua_action.lua and execution > comes to the end it should return to calling code. > > grub_lua_execute_file("<file name to lua script>"); > grub_lua_execute("<lua commands>"); In fact, I have extended the configfile command to accept parser parameter: configfile /new_script.lua lua or source /script.lua lua It would change to lua and parse script.lua, then switch back to the old parser. -- Bean _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel