anchor.diff:     #panel {id="tabs",body=[#list{body=[ #listitem{body=[#link {text="Commands Log",url="#tab1",id="tablink"}]}, #listitem{body=[#link { text="Report Log",url="#tab2",id="tablink"}]}, #listitem{show_if = EnableShell ,body=[#link {text="Unix Shell",url="#tab3",id="tablink"}]} ]},
      #panel {id="tab1",body=[#textarea{id="cmdlog", text="Executed commands Log\n"}]},
      #panel {id="tab2",body=[#textarea{id="reportlog", text="Report Log\n"}]},
  -   #panel {show_if = EnableShell ,id="tab3",body=[#textarea{id="bashshell", text="Unix Shell\n"}]}
  +   #panel {show_if = EnableShell ,id="tab3",body=[
  +                                                (catch niter:shell())
  +                                                            ]}
       ]}
      
       ]},
  
positive.code: %This block shows the content of page.
  %<<<
  body() ->
    EnableShell = filelib:is_file("./site/src/nitre.erl"),
    Body =[#flash{},
      #hidden{id="hidden_data",text=""},%use this to hold the data before save
      #hidden{id="hidden_path",text=""},%use this to hold the path of file before save
  
negative.code:   {ok,FileContents} = file:read_file(Path),
  %   wf:wire(   wf:f("editAreaLoader.setValue(\"editor\",\"~s\");",[wf:js_escape(FileContents)]) ).
  wf:wire(   wf:f("editAreaLoader.openFile(\"editor\",{id: \"~s\", text: \"~s\", syntax: 'erlang',title: '~s'});",[Path,wf:js_escape(FileContents),filename:basename(Path)] ) ).
  
  %For Use to Niter plugin  
  api_event(sendtobash, _, Char) ->
      wf:send(shell,{exec,Char}).
  
  writetoshell(Buffer)->
    wf:flash("Interpret: "++Buffer),  
  %%   wf:insert_bottom(shell,Buffer),%Here have to go to esc codes interpreter
     niter:interpreter(Buffer),%No need for catch here
    wf:wire("obj('shell').scrollTop = obj('shell').scrollHeight;"),
  wf:flush().
  
  
  
  %REPORT LOG
  tail_loop(Port, Callback) ->
  