anchor.diff:  
   add_shell_functions(Env0) ->
       Fs = [{cd,1,[lambda,[d],[':',lfe_shell,cd,d]]},
  -          {doc,1,[lambda,[f],[':',lfe_shell,doc,f]]},
             {help,0,[lambda,[],[':',lfe_shell,help]]},
             {i,0,[lambda,[],[':',lfe_shell,i]]},
             {i,1,[lambda,[ps],[':',lfe_shell,i,ps]]},
  
positive.code:     end.
  
  print_module_doc(Mod, Mdoc) ->
      lfe_io:format(?BLU("~p")++"\n\n~s\n", [Mod,Mdoc]).
  
  print_macro_doc(Mac, Docs) ->
      case lists:keyfind(Mac, #doc.name, Docs) of
          #doc{patterns=Pats,doc=Doc} ->
              lfe_io:format(?BLU("~p")++"\n  ~p\n\n~s\n", [Mac,Pats,Doc]);
          false ->
              lfe_io:format("~s\n", [<<"No macro defined">>])
      end.
  
  print_function_doc(Fun, Ar, Docs) ->
      case lists:keyfind({Fun,Ar}, #doc.name, Docs) of
          #doc{patterns=Pats,doc=Doc} ->
              lfe_io:format(?BLU("~p/~p")++"\n  ~p\n\n~s\n", [Fun,Ar,Pats,Doc]);
          false ->
              lfe_io:format("~s\n", [<<"No function defined">>])
      end.
  
negative.code:          run_script/2,run_script/3,run_string/2,run_string/3]).
  
  %% The shell commands which generally callable.
  -export([c/1,c/2,cd/1,doc/1,docs/1,ec/1,ec/2,help/0,i/0,i/1,l/1,
           ls/1,clear/0,m/0,m/1,pid/3,p/1,pp/1,pwd/0,q/0,
           flush/0,regs/0,exit/0]).
  
  