lua:externi_lua_debug_konzole
Externí LUA debug konzole
OBIS lze spustit ve speciálním režimu, kdy naslouchá na zvoleném TCP portu a přijímá LUA příkazy a vrací zprávy.
Spustit s následujícími parametry (6666 je číslo portu) a zalogovat se:
obis -extconsole 6666 -noxmlrpc
Následně lze z konzole pomocí programu netcat komunikovat následujícím způsobem (příklad v Linuxu):
echo -e "Restart\n<EOF/>\nProgram \"print('text') print({...})\" a b c\n<EOF/>\nExit\n<EOF/>" | nc localhost 6666 | grep -v "<EOF/>"
Doporučuje se netcat-traditional.
sudo apt-get install netcat-traditional sudo update-alternatives --config nc
Ukázka mapování příkazů pro Vim:
"F1 help na slovo na kterem stojim map <F1> :w^M:exec '!echo -e "Restart\n<EOF/>\nProgram Help:Find(\"'.expand("<cword>").'\")\n<EOF/>\nExit\n<EOF/>" \| nc localhost 6666 \| grep -v "<EOF/>"'^M "F5 spusti obislua map <F5> :!xterm -geometry 120x40+80 -e obislua -extconsole 6666 -noxmlrpc -user Admin -pass "" -data data &^M^M "F6 spusti obislua s vyberem dat map <F6> :!xterm -geometry 120x40+80 -e obislua -extconsole 6666 -noxmlrpc -user Admin -pass "" &^M "F6 terminate obis. map <F6> :w^M:!echo -e "Terminate\n<EOF/>\n" \| nc localhost 6666 &>/dev/null &^M "F7 run ./obislua.sh (v adresari obis41/user.*) map <F7> :! xterm -geometry 120x40+80 -e ./obislua.sh -extconsole 6666 -noxmlrpc &^M "F8 spusteni zvoleneho testu map <F8> :w^M:!echo -e "Restart\n<EOF/>\nProgram test_faktury_faktury:testPreceneni()\n<EOF/>\nExit\n<EOF/>" \| nc localhost 6666 \| grep -v "<EOF/>" "F9 spusteni vsech testu map <F9> :w^M:!echo -e "Restart\n<EOF/>\nProgram \"dofile(LUADIR()..'debug.lua') DEBUG.Init() LuaUnit:run()\"\n<EOF/>\nExit\n<EOF/>" \| nc localhost 6666 \| grep -v "<EOF/>" "F10 spusteni testu aktualne editovaneho souboru map <F10> :w^M:exec '!echo -e "Restart\n<EOF/>\nProgram dofile(LUADIR()..\"debug.lua\");DEBUG.Init();LuaUnit:run(\"test_'.expand("%:t:r").'\")\n<EOF/>\nExit\n<EOF/>" \| nc localhost 6666 \| grep -v "<EOF/>"'
lua/externi_lua_debug_konzole.txt · Poslední úprava: 2011/01/13 14:47 autor: Karel Petrů