Changeset 18120 for misc/runpugs

Show
Ignore:
Timestamp:
09/23/07 21:47:27 (14 months ago)
Author:
azawawi
Message:

[runpugs] fixed 'copy to clipboard' not working bug
[runpugs] default :show example theme is now black
[runpugs] implemented multi-line comments

Location:
misc/runpugs/htdocs
Files:
7 modified

Legend:

Unmodified
Added
Removed
  • misc/runpugs/htdocs/p6_syntax_hilite/SyntaxHighlighter.css

    r18101 r18120  
    33        font-family: "Consolas", "Courier New", Courier, mono, serif; 
    44        font-size: 12px; 
    5         background-color: #E7E5DC; 
     5        /*background-color: #E7E5DC;*/ 
     6        background-color:black; 
    67        width: 99%; 
    78        overflow: auto; 
     
    4647        margin: 0px 0px 1px 45px !important; /* 1px bottom margin seems to fix occasional Firefox scrolling */ 
    4748        padding: 0px; 
    48         color: #5C5C5C; 
     49        /*color: #5C5C5C;*/ 
     50        color:white; 
    4951} 
    5052 
     
    6264        list-style-position: outside !important; 
    6365        border-left: 3px solid #6CE26C; 
    64         background-color: #F8F8F8; 
    65         color: #5C5C5C; 
     66        /*background-color: #F8F8F8;*/ 
     67        /*color: #5C5C5C;*/ 
     68        background-color: black; 
     69        color:white; 
    6670        padding: 0 3px 0 10px !important; 
    6771        margin: 0 !important; 
     
    7882{ 
    7983        background-color: #F8F8F8; 
    80         color: gray; 
     84        /*color: gray;*/ 
     85        color:white; 
    8186        overflow: hidden; 
    8287        width: 100%; 
     
    9095.dp-highlighter ol li.alt 
    9196{ 
    92         background-color: #FFF; 
     97        /*background-color: #FFF;*/ 
     98        background-color: black; 
    9399        color: inherit; 
    94100} 
     
    96102.dp-highlighter ol li span 
    97103{ 
    98         color: black; 
     104        /*color: black;*/ 
     105        color: white; 
    99106        background-color: inherit; 
    100107} 
     
    135142        padding: 3px 8px 3px 10px; 
    136143        font: 9px Verdana, Geneva, Arial, Helvetica, sans-serif; 
    137         color: silver; 
    138         background-color: #f8f8f8; 
     144        /*color: silver; 
     145        background-color: #f8f8f8;*/ 
     146        color: white; 
     147        background-color: black; 
    139148        padding-bottom: 10px; 
    140149        border-left: 3px solid #6CE26C; 
     
    180189/* Language specific styles */ 
    181190 
    182 .dp-highlighter .comment, .dp-highlighter .comments { color: #008200; background-color: inherit; } 
     191.dp-highlighter .comment, .dp-highlighter .comments { color: #00FF00; background-color: inherit; } 
    183192.dp-highlighter .string { color: blue; background-color: inherit; } 
    184 .dp-highlighter .keyword { color: #069; font-weight: bold; background-color: inherit; } 
    185 .dp-highlighter .preprocessor { color: gray; background-color: inherit; } 
     193.dp-highlighter .keyword { color: orange; font-weight: bold; background-color: inherit; } 
     194.dp-highlighter .preprocessor { color: green; background-color: inherit; } 
  • misc/runpugs/htdocs/p6_syntax_hilite/js/shBrushPerl6.js

    r18101 r18120  
    102102            css: 'comment'  
    103103        },               
    104         /* 
    105104                {  
    106105            // multiline comments 
    107             regex: dp.sh.RegexLib.MultiLineCComments,                                                            
     106            regex: new RegExp('=\\w[\\s\\S]+=cut', 'gmi'), 
    108107            css: 'comment'  
    109108        }, 
    110         */         
    111109                {  
    112110            // $global, @array, and %hash variables 
     
    124122            css: 'string'  
    125123        },               
     124/*              {  
     125            // multi-line strings 
     126            regex: new RegExp('"[\\s\\S]*"', 'gmi'), 
     127            css: 'string'  
     128        },              */ 
    126129                {  
    127130            // numbers 
     
    155158 
    156159        this.CssClass = 'dp-p6'; 
    157         this.Style =    '.dp-p6 .builtin { color: #ff1493; }' + 
    158                     '.dp-p6 .symbol { color: #a70; }' + 
     160        this.Style =    '.dp-p6 .builtin { color: orange; }' + 
     161                    '.dp-p6 .symbol { color: yellow; }' + 
    159162                                        '.dp-p6 .op { color: #808080; }' + 
    160163                                        '.dp-p6 .number { color: #C00000; }' + 
    161                     '.dp-p6 .variable { color: #a70; font-weight: bold; }'; 
     164                    '.dp-p6 .variable { color: yellow; font-weight: bold; }'; 
    162165} 
    163166 
  • misc/runpugs/htdocs/p6_syntax_hilite/js/shBrushPerl6.min.js

    r18101 r18120  
    1  
    2 dp.sh.Brushes.p6=function() 
    3 {var builtins="substr index rindex "+"grep map sort join split reduce min max reverse truncate zip "+"cat roundrobin classify first "+"keys values pairs defined delete exists elems end kv "+"arity assuming gather take any pick all none "+"pop push shift splice unshift "+"abs exp log log10 rand sign sqrt sin cos tan "+"floor ceil round srand roots cis unpolar polar "+"p5chop chop p5chomp chomp lc lcfirst uc ucfirst "+"capitalize normalize pack unpack quotemeta comb "+"nfd nfc nfkd nfkc "+"printf sprintf caller evalfile run runinstead "+"nothing want bless chr ord list item gmtime "+"localtime time gethost getpw chroot getlogin kill "+"fork wait perl context";var keywords="module class role use require package enum grammar "+"coro sub submethod method is but does trusts multi "+"rule token regex category "+"let my our state temp has constant proto "+"if else elsif unless "+"for foreach loop while until when next last redo "+"given not or and andthen orelse xor return default exit "+"BEGIN CHECK INIT START FIRST ENTER LEAVE KEEP UNDO NEXT LAST "+"PRE POST END rw signature returns of parsed cached "+"readonly ref copy "+"inline tighter looser equiv assoc "+"deep also "+"die fail try CATCH CONTROL warn "+"print open read write readline say seek close slurp "+"opendir readdir "+"constant prec key value irs ofs ors pos export "+"float int str true false int1 int2 int4 int8 "+"int16 int32 int64 uint1 uint2 uint4 uint8 uint16 "+"uint32 uint64 num16 num32 num64 complex16 complex32 "+"complex64 complex128 buf8 buf16 buf32 buf64 "+"WHAT HOW "+"Array Bool Class Code Hash Int IO Num NumRange "+"Str StrRange Sub Role Rule Rat Complex Any "+"Scalar List "+"eval operator undef undefine "+"infix postfix prefix cirumfix postcircumfix";this.regexList=[{regex:dp.sh.RegexLib.SingleLinePerlComments,css:'comment'},{regex:new RegExp('(\\$|@|%)\\w+','g'),css:'variable'},{regex:dp.sh.RegexLib.DoubleQuotedString,css:'string'},{regex:dp.sh.RegexLib.SingleQuotedString,css:'string'},{regex:new RegExp('\\b([\\d]+(\\.[\\d]+)?|0x[a-f0-9]+)\\b','gi'),css:'number'},{regex:new RegExp(this.GetKeywords(keywords),'gm'),css:'keyword'},{regex:new RegExp(this.GetKeywords(builtins),'gm'),css:'builtin'},{regex:new RegExp(' [a-z][A-Za-z0-9_]*[\-A-Za-z0-9_]*','g'),css:'symbol'}];this.CssClass='dp-p6';this.Style='.dp-p6 .builtin { color: #ff1493; }'+'.dp-p6 .symbol { color: #a70; }'+'.dp-p6 .op { color: #808080; }'+'.dp-p6 .number { color: #C00000; }'+'.dp-p6 .variable { color: #a70; font-weight: bold; }';} 
    4 dp.sh.Brushes.p6.prototype=new dp.sh.Highlighter();dp.sh.Brushes.p6.Aliases=['perl6','p6']; 
     1dp.sh.Brushes.p6=function(){var B="substr index rindex grep map sort join split reduce min max reverse truncate zip cat roundrobin classify first keys values pairs defined delete exists elems end kv arity assuming gather take any pick all none pop push shift splice unshift abs exp log log10 rand sign sqrt sin cos tan floor ceil round srand roots cis unpolar polar p5chop chop p5chomp chomp lc lcfirst uc ucfirst capitalize normalize pack unpack quotemeta comb nfd nfc nfkd nfkc printf sprintf caller evalfile run runinstead nothing want bless chr ord list item gmtime localtime time gethost getpw chroot getlogin kill fork wait perl context";var A="module class role use require package enum grammar coro sub submethod method is but does trusts multi rule token regex category let my our state temp has constant proto if else elsif unless for foreach loop while until when next last redo given not or and andthen orelse xor return default exit BEGIN CHECK INIT START FIRST ENTER LEAVE KEEP UNDO NEXT LAST PRE POST END rw signature returns of parsed cached readonly ref copy inline tighter looser equiv assoc deep also die fail try CATCH CONTROL warn print open read write readline say seek close slurp opendir readdir constant prec key value irs ofs ors pos export float int str true false int1 int2 int4 int8 int16 int32 int64 uint1 uint2 uint4 uint8 uint16 uint32 uint64 num16 num32 num64 complex16 complex32 complex64 complex128 buf8 buf16 buf32 buf64 WHAT HOW Array Bool Class Code Hash Int IO Num NumRange Str StrRange Sub Role Rule Rat Complex Any Scalar List eval operator undef undefine infix postfix prefix cirumfix postcircumfix";this.regexList=[{regex:dp.sh.RegexLib.SingleLinePerlComments,css:"comment"},{regex:new RegExp("=\\w[\\s\\S]+=cut","gmi"),css:"comment"},{regex:new RegExp("(\\$|@|%)\\w+","g"),css:"variable"},{regex:dp.sh.RegexLib.DoubleQuotedString,css:"string"},{regex:dp.sh.RegexLib.SingleQuotedString,css:"string"},{regex:new RegExp("\\b([\\d]+(\\.[\\d]+)?|0x[a-f0-9]+)\\b","gi"),css:"number"},{regex:new RegExp(this.GetKeywords(A),"gm"),css:"keyword"},{regex:new RegExp(this.GetKeywords(B),"gm"),css:"builtin"},{regex:new RegExp(" [a-z][A-Za-z0-9_]*[-A-Za-z0-9_]*","g"),css:"symbol"}];this.CssClass="dp-p6";this.Style=".dp-p6 .builtin { color: orange; }.dp-p6 .symbol { color: yellow; }.dp-p6 .op { color: #808080; }.dp-p6 .number { color: #C00000; }.dp-p6 .variable { color: yellow; font-weight: bold; }"};dp.sh.Brushes.p6.prototype=new dp.sh.Highlighter();dp.sh.Brushes.p6.Aliases=["perl6","p6"] 
  • misc/runpugs/htdocs/p6_syntax_hilite/syntax_hilite.html

    r18101 r18120  
    1 <form id="hilite_form" action=""> 
    2     <select id="hilite_examples" class="dp-p6"></select> 
    3     <div id="hilite_status"></div> 
    4 </form> 
     1<select id="hilite_examples" class="dp-p6"></select> 
     2<div id="hilite_status"></div> 
    53<pre id="hilite_code" name="hilite_code"  
    64    style="display:none;" class="perl6"></pre> 
    7      
    85<script language="javascript"> 
    9  
    106    function highliteCode() { 
    117        $(".dp-highlighter").remove(); 
     
    6864        
    6965        //Render the example the first time... 
    70         dp.SyntaxHighlighter.ClipboardSwf = 'clipboard.swf'; 
     66        dp.SyntaxHighlighter.ClipboardSwf = '../p6_syntax_hilite/clipboard.swf'; 
    7167         
    7268        if(exampleUrl) { 
     
    7470        } 
    7571 
    76  
    7772        $("#hilite_examples").change(handleHighlight); 
    7873    } 
    7974     
    8075    highliteInit(); 
    81     
    82 </script>    
    83  
     76</script> 
  • misc/runpugs/htdocs/runpugs/index.html

    r18101 r18120  
    66        <title>Run Perl 6 Now -- in your browser!</title> 
    77        <link rel="stylesheet" type="text/css" href="../runpugs.css"/> 
    8         <link type="text/css" rel="stylesheet" href="../p6_syntax_highlite/SyntaxHighlighter.css"></link> 
     8        <link type="text/css" rel="stylesheet" href="../p6_syntax_hilite/SyntaxHighlighter.css"></link> 
    99        <script type="text/javascript" src="jquery-1.2.min.js"></script> 
    10         <script type="text/javascript" src="../p6_syntax_highlite/js/shCore.min.js"></script> 
    11         <script type="text/javascript" src="../p6_syntax_highlite/js/shBrushPerl6.min.js"></script> 
    12         <script type="text/javascript" src="../p6_syntax_highlite/js/pugs_examples.js"></script> 
     10        <script type="text/javascript" src="../p6_syntax_hilite/js/shCore.min.js"></script> 
     11        <script type="text/javascript" src="../p6_syntax_hilite/js/shBrushPerl6.min.js"></script> 
     12        <script type="text/javascript" src="../p6_syntax_hilite/js/pugs_examples.js"></script> 
    1313        <script type="text/javascript" src="runpugs.js"></script> 
    1414    </head> 
  • misc/runpugs/htdocs/runpugs/runpugs-min.js

    r18101 r18120  
    1 var debug=0;var histlist=new Array();var histentry=0;var sessionid=0;var reldev=0;var curpos=0;var cmd="";var prompt="pugs> ";var cmds=new Array();var theme="wb_theme";var fixedCharWidth;var tutorialMode=0;var slide=0;var FIRST_TUTORIAL_SLIDE=2;var slides=new Array("default_info.html","../p6_syntax_highlite/syntax_hilite.html","tutorial/01_helloworld.html","tutorial/02_vars.html","tutorial/03_iteration_array.html","tutorial/04_iteration_hash.html","tutorial/05_iteration_many.html","tutorial/06_conditionals.html","tutorial/07_junctions.html","tutorial/08_junctions_array.html","tutorial/09_chained_comparison.html","tutorial/10_io.html","tutorial/11_io_iteration.html","tutorial/12_io_reading.html","tutorial/13_lists_reduction.html","tutorial/14_lists_hyper.html","tutorial/15_lists_cross.html","tutorial/16_grammar.html","tutorial/17_final.html");function showCursor(){var A=cmds.length;var B=(A==0)?"#d0":"#d"+(A-1);$(B).toggleClass("cursorOff");$(B).toggleClass("cursorOn");setTimeout("showCursor()",1000)}function moveCursor(){var B=-(cmd.length-curpos)*fixedCharWidth;var A="#d"+(cmds.length-1);$(A).css("left",B+"px")}function showCmd(){var A="#c"+(cmds.length-1);$(A).text(prompt+cmd)}function updateConsole(){$.each(cmds,function(C,E){if(C==0){$("#tt").empty()}var B=(E=="")?"&nbsp;":E;var D="<tr><td><pre id='c"+C+"' class='"+theme+"'>"+B+"</pre>";if(C==cmds.length-1){D+="<span id='d"+C+"' class='cursorOff'>&nbsp;</span>"}$("#tt").append(D+"</td></tr>")});var A=$("#termwin")[0].scrollHeight;$("#termwin").animate({scrollTop:A},"fast")}$(document).ready(function(){var A="Please wait while Pugs starts up...";$("#tt").empty();$("#tt").append("<tr><td><pre id='c0' class='wb_theme'>"+A+"</pre><span id='d0' class='cursorOff'>&nbsp;</span></td></tr>");fixedCharWidth=($("#c0")[0])?$("#c0")[0].offsetWidth/A.length:8;$("#theme").change(function(){$("pre").toggleClass(theme);theme=$("#theme").val();$("pre").toggleClass(theme)});$("#logo").slideDown(2000);showCursor();$(document).keydown(function(B){return onKeyDown(B)});$(document).keypress(function(B){return onKeyPress(B)});$(window).unload(function(){$.ajax({url:"/perl/runpugs.pl?sessionid="+sessionid+"&reldev=1&ia=1&cmd=%3Aq",async:true})});loadSlide();$("#hidden_iframe").append("<iframe src=\"/perl/runpugs.pl\" id=\"scratch\" name=\"scratch\" style=\"visibility:hidden\" width=\"700px\" height=\"1px\" onLoad=\"getreply()\"></iframe>")});function loadSlide(){if(debug){alert("slide url to be loaded = '"+slides[slide]+"'")}$("#info").slideUp("fast");$.ajax({url:slides[slide],async:true,success:function(A){if(debug){alert("slide data received: "+A)}$("#info").html(A);$("#info").slideDown("slow")}})}function insert(D,C,E){var B=D.substring(0,E);var A=D.substring(E,D.length);return B+C+A}function focusOnCmd(B){$(B).focus();var A=$("#termwin")[0].scrollHeight;$("#termwin").animate({scrollTop:A},"fast")}function handleEnter(){var A=document.terminal.cmd.value+cmd;var D=A.split(prompt);var C=D[D.length-1];var B=$.trim(C);if(B!=""){histlist.push(C)}if(B==":tutorial"){tutorialMode=!tutorialMode;slide=(tutorialMode)?FIRST_TUTORIAL_SLIDE:0;loadSlide()}else{if(B==":back"||B==":next"){if(tutorialMode){if(B==":back"){slide--;if(slide<FIRST_TUTORIAL_SLIDE){slide=FIRST_TUTORIAL_SLIDE}loadSlide()}else{slide++;if(slide>=slides.length){slide--}loadSlide()}}}else{if(B==":show"){slide=1;loadSlide()}}}if(debug){alert("data to be sent: "+A)}frames["scratch"].document.getElementById("cmd").value=A;frames["scratch"].document.terminal.submit();cmd=""}function onKeyDown(C){if(C.ctrlKey||C.altKey||C.shiftKey){return true}var D=C.keyCode;focusOnCmd("#status");if(D==13){handleEnter();return false}else{if(D==8){if(curpos>0){curpos-=1;var A="";for(var B=0;B<cmd.length;B++){if(B!=curpos){A+=cmd.charAt(B)}}cmd=A;showCmd();debugKeys()}return false}else{if(D==38){hist_next();return false}else{if(D==40){hist_prev();return false}else{if(D==37){if(curpos>0){curpos--;moveCursor()}return false}else{if(D==39){if(curpos<cmd.length){curpos++;moveCursor()}return false}else{if(D==36){curpos=0;moveCursor();return false}else{if(D==35){curpos=cmd.length;moveCursor();return false}else{if(D==46){if(curpos>=0){var A="";for(var B=0;B<cmd.length;B++){if(B!=curpos){A+=cmd.charAt(B)}}cmd=A;showCmd();moveCursor();debugKeys()}return false}}}}}}}}}return true}function toAscii(C){var D="abcdefghijklmnopqrstuvwxyz";var B=" !\"#$%&'()*+'-./0123456789:;<=>?@"+D.toUpperCase()+"[\\]^_`"+D+"{|}~";var E=B.indexOf(C);var A=(E>-1)?(32+E):0;return A}function onKeyPress(B){if(B.ctrlKey||B.altKey){return }var C=B.keyCode;focusOnCmd("#status");if($.browser.msie||$.browser.opera||$.browser.safari){var A=String.fromCharCode(C);if(A>=" "){if(($.browser.opera&&(C<35||C>40))||$.browser.msie||$.browser.safari){cmd=insert(cmd,A,curpos);showCmd();curpos++;debugKeys(A)}}return false}else{if($.browser.mozilla&&C==0){var A=String.fromCharCode(B.charCode?B.charCode:B.keyCode);if(A>=" "){cmd=insert(cmd,A,curpos);showCmd();curpos++;debugKeys(A)}return false}}return true}function debugKeys(C){if(debug){var A="";for(var B=0;B<cmd.length;B++){var D=toAscii(cmd.charAt(B));A+=D+","}$("#status").text(((C)?("key = '"+C):"")+"', cmd = '"+cmd+"', cmd.length="+cmd.length+", ascii=("+A+")")}}function getreply(){scratchpad=frames["scratch"].document;var B=scratchpad.getElementById("cmd").value;histentry=histlist.length;sessionid=scratchpad.terminal.sessionid.value;document.terminal.cmd.value=B;if(scratchpad.terminal.prompt){var C=scratchpad.terminal.prompt.value;if(C&&C.length=="pugs> ".length){prompt=C}}var A=B.replace(/&/g,"&amp;").replace(/ /g,"&nbsp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;");cmds=A.split(/\r\n|\n|\r/g);if(debug){alert("reply (unescaped): "+B)}updateConsole();cmd="";curpos=0;showCmd()}function hist_next(){if(histentry>=1){histentry--;cmd=histlist[histentry];curpos=cmd.length;showCmd();moveCursor()}return false}function hist_prev(){if(histentry<histlist.length-1){histentry++;cmd=histlist[histentry];curpos=cmd.length;showCmd();moveCursor()}}function set_version(){var A=document.terminal.reldev[0].checked;if(A==true){frames["scratch"].document.terminal.reldev[0].checked=true;frames["scratch"].document.terminal.reldev[1].checked=false}else{frames["scratch"].document.terminal.reldev[0].checked=false;frames["scratch"].document.terminal.reldev[1].checked=true}frames["scratch"].document.terminal.submit();$("#rel").blur();$("#dev").blur();focusOnCmd("#tt")} 
     1var debug=0;var histlist=new Array();var histentry=0;var sessionid=0;var reldev=0;var curpos=0;var cmd="";var prompt="pugs> ";var cmds=new Array();var theme="wb_theme";var fixedCharWidth;var tutorialMode=0;var slide=0;var FIRST_TUTORIAL_SLIDE=2;var slides=new Array("default_info.html","../p6_syntax_hilite/syntax_hilite.html","tutorial/01_helloworld.html","tutorial/02_vars.html","tutorial/03_iteration_array.html","tutorial/04_iteration_hash.html","tutorial/05_iteration_many.html","tutorial/06_conditionals.html","tutorial/07_junctions.html","tutorial/08_junctions_array.html","tutorial/09_chained_comparison.html","tutorial/10_io.html","tutorial/11_io_iteration.html","tutorial/12_io_reading.html","tutorial/13_lists_reduction.html","tutorial/14_lists_hyper.html","tutorial/15_lists_cross.html","tutorial/16_grammar.html","tutorial/17_final.html");function showCursor(){var A=cmds.length;var B=(A==0)?"#d0":"#d"+(A-1);$(B).toggleClass("cursorOff");$(B).toggleClass("cursorOn");setTimeout("showCursor()",1000)}function moveCursor(){var B=-(cmd.length-curpos)*fixedCharWidth;var A="#d"+(cmds.length-1);$(A).css("left",B+"px")}function showCmd(){var A="#c"+(cmds.length-1);$(A).text(prompt+cmd)}function updateConsole(){$.each(cmds,function(C,E){if(C==0){$("#tt").empty()}var B=(E=="")?"&nbsp;":E;var D="<tr><td><pre id='c"+C+"' class='"+theme+"'>"+B+"</pre>";if(C==cmds.length-1){D+="<span id='d"+C+"' class='cursorOff'>&nbsp;</span>"}$("#tt").append(D+"</td></tr>")});var A=$("#termwin")[0].scrollHeight;$("#termwin").animate({scrollTop:A},"fast")}$(document).ready(function(){var A="Please wait while Pugs starts up...";$("#tt").empty();$("#tt").append("<tr><td><pre id='c0' class='wb_theme'>"+A+"</pre><span id='d0' class='cursorOff'>&nbsp;</span></td></tr>");fixedCharWidth=($("#c0")[0])?$("#c0")[0].offsetWidth/A.length:8;$("#theme").change(function(){$("pre").toggleClass(theme);theme=$("#theme").val();$("pre").toggleClass(theme)});$("#logo").slideDown(2000);showCursor();$(document).keydown(function(B){return onKeyDown(B)});$(document).keypress(function(B){return onKeyPress(B)});$(window).unload(function(){$.ajax({url:"/perl/runpugs.pl?sessionid="+sessionid+"&reldev=1&ia=1&cmd=%3Aq",async:true})});loadSlide();$("#hidden_iframe").append("<iframe src=\"/perl/runpugs.pl\" id=\"scratch\" name=\"scratch\" style=\"visibility:hidden\" width=\"700px\" height=\"1px\" onLoad=\"getreply()\"></iframe>")});function loadSlide(){if(debug){alert("slide url to be loaded = '"+slides[slide]+"'")}$("#info").slideUp("fast");$.ajax({url:slides[slide],async:true,success:function(A){if(debug){alert("slide data received: "+A)}$("#info").html(A);$("#info").slideDown("slow")}})}function insert(D,C,E){var B=D.substring(0,E);var A=D.substring(E,D.length);return B+C+A}function focusOnCmd(B){$(B).focus();var A=$("#termwin")[0].scrollHeight;$("#termwin").animate({scrollTop:A},"fast")}function handleEnter(){var A=document.terminal.cmd.value+cmd;var D=A.split(prompt);var C=D[D.length-1];var B=$.trim(C);if(B!=""){histlist.push(C)}if(B==":tutorial"){tutorialMode=!tutorialMode;slide=(tutorialMode)?FIRST_TUTORIAL_SLIDE:0;loadSlide()}else{if(B==":back"||B==":next"){if(tutorialMode){if(B==":back"){slide--;if(slide<FIRST_TUTORIAL_SLIDE){slide=FIRST_TUTORIAL_SLIDE}loadSlide()}else{slide++;if(slide>=slides.length){slide--}loadSlide()}}}else{if(B==":show"){slide=1;loadSlide()}}}if(debug){alert("data to be sent: "+A)}frames["scratch"].document.getElementById("cmd").value=A;frames["scratch"].document.terminal.submit();cmd=""}function onKeyDown(C){if(C.ctrlKey||C.altKey||C.shiftKey){return true}var D=C.keyCode;focusOnCmd("#status");if(D==13){handleEnter();return false}else{if(D==8){if(curpos>0){curpos-=1;var A="";for(var B=0;B<cmd.length;B++){if(B!=curpos){A+=cmd.charAt(B)}}cmd=A;showCmd();debugKeys()}return false}else{if(D==38){hist_next();return false}else{if(D==40){hist_prev();return false}else{if(D==37){if(curpos>0){curpos--;moveCursor()}return false}else{if(D==39){if(curpos<cmd.length){curpos++;moveCursor()}return false}else{if(D==36){curpos=0;moveCursor();return false}else{if(D==35){curpos=cmd.length;moveCursor();return false}else{if(D==46){if(curpos>=0){var A="";for(var B=0;B<cmd.length;B++){if(B!=curpos){A+=cmd.charAt(B)}}cmd=A;showCmd();moveCursor();debugKeys()}return false}}}}}}}}}return true}function toAscii(C){var D="abcdefghijklmnopqrstuvwxyz";var B=" !\"#$%&'()*+'-./0123456789:;<=>?@"+D.toUpperCase()+"[\\]^_`"+D+"{|}~";var E=B.indexOf(C);var A=(E>-1)?(32+E):0;return A}function onKeyPress(B){if(B.ctrlKey||B.altKey){return }var C=B.keyCode;focusOnCmd("#status");if($.browser.msie||$.browser.opera||$.browser.safari){var A=String.fromCharCode(C);if(A>=" "){if(($.browser.opera&&(C<35||C>40))||$.browser.msie||$.browser.safari){cmd=insert(cmd,A,curpos);showCmd();curpos++;debugKeys(A)}}return false}else{if($.browser.mozilla&&C==0){var A=String.fromCharCode(B.charCode?B.charCode:B.keyCode);if(A>=" "){cmd=insert(cmd,A,curpos);showCmd();curpos++;debugKeys(A)}return false}}return true}function debugKeys(C){if(debug){var A="";for(var B=0;B<cmd.length;B++){var D=toAscii(cmd.charAt(B));A+=D+","}$("#status").text(((C)?("key = '"+C):"")+"', cmd = '"+cmd+"', cmd.length="+cmd.length+", ascii=("+A+")")}}function getreply(){scratchpad=frames["scratch"].document;var B=scratchpad.getElementById("cmd").value;histentry=histlist.length;sessionid=scratchpad.terminal.sessionid.value;document.terminal.cmd.value=B;if(scratchpad.terminal.prompt){var C=scratchpad.terminal.prompt.value;if(C&&C.length=="pugs> ".length){prompt=C}}var A=B.replace(/&/g,"&amp;").replace(/ /g,"&nbsp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;");cmds=A.split(/\r\n|\n|\r/g);if(debug){alert("reply (unescaped): "+B)}updateConsole();cmd="";curpos=0;showCmd()}function hist_next(){if(histentry>=1){histentry--;cmd=histlist[histentry];curpos=cmd.length;showCmd();moveCursor()}return false}function hist_prev(){if(histentry<histlist.length-1){histentry++;cmd=histlist[histentry];curpos=cmd.length;showCmd();moveCursor()}}function set_version(){var A=document.terminal.reldev[0].checked;if(A==true){frames["scratch"].document.terminal.reldev[0].checked=true;frames["scratch"].document.terminal.reldev[1].checked=false}else{frames["scratch"].document.terminal.reldev[0].checked=false;frames["scratch"].document.terminal.reldev[1].checked=true}frames["scratch"].document.terminal.submit();$("#rel").blur();$("#dev").blur();focusOnCmd("#tt")} 
  • misc/runpugs/htdocs/runpugs/runpugs.js

    r18101 r18120  
    1919var slides = new Array( 
    2020    'default_info.html', 
    21     '../p6_syntax_highlite/syntax_hilite.html', 
     21    '../p6_syntax_hilite/syntax_hilite.html', 
    2222    'tutorial/01_helloworld.html', 
    2323    'tutorial/02_vars.html',