您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Add the Brython python interpreter to CodeSkulptor
// ==UserScript== // @name Codeskulptor Brython // @namespace http://mcimino.reaktix.com/ // @version 0.1 // @description Add the Brython python interpreter to CodeSkulptor // @match http://www.codeskulptor.org/* // @copyright 2012+, Saibotshamtul // ==/UserScript== function BrythonSetup(){ __BRYTHON__.stdout={write:Sk.output}; __BRYTHON__.stderr={write:Sk.debugout}; __BRYTHON__.VFS.simplegui = [".js",Sk.builtinFiles.files['src/lib/simplegui/__init__.js']+";var $module=$builtinmodule;"]; __BRYTHON__.VFS.simpleplot = [".js",Sk.builtinFiles.files['src/lib/simpleplot/__init__.js']+";var $module=$builtinmodule;"]; brython({debug:1}) } b = document.createElement("button") b.id="runb" b.accessKey="T" b.title="Run using Brython (Accesskey T)" b.className="tb-button-icon ui-button ui-widget ui-corner-all ui-button-icon-only ui-state-default" b.style.cssText="background:#faa;border:1px solid #faa;" $("#controls")[0].children[0].appendChild(b) b.onmouseover=function(){ runb.classList.remove("ui-state-default") runb.style.border="1px solid rgb(0,36,106)" } b.onmouseout=function(){ runb.classList.add("ui-state-default") runb.style.border="1px solid #faa" } //b.onclick=function(){ // brython(1) //} b.onfocus=function(){ //this.onmouseout() runb.blur() } b.onblur=function(){ //this.onmouseover() } a = document.createElement("span") a.className="ui-button-icon-primary ui-icon ui-icon-play" b.appendChild(a) a = document.createElement("span") a.className="ui-button-text" b.appendChild(a) //$("#controls")[0].children[0].appendChild(b) a = document.createElement("script") a.type="text/python" a.id="brycode" //c = "from browser import alert;alert('hi');" c = (function(){/* from browser import document,alert import traceback def runcode(ev): document["reset"].click() a = "" b=document.get(selector=".CodeMirror-code div pre") for z in range(len(b)): c=b[z].innerText a+=c+"\n" #print(a) try: eval(a) except: try: exec(a) except: traceback.print_exc() document['runb'].bind('click',runcode) */}).toString().slice(14,-3) a.innerHTML = c document.body.appendChild(a) $.getScript("http://brython.info/src/brython_dist.js",BrythonSetup)