43 lines
1.1 KiB
JavaScript
43 lines
1.1 KiB
JavaScript
const flask = getEditor("#code", "lua")
|
|
let consoleElmt = document.getElementById("console")
|
|
|
|
function run() {
|
|
console = newConsole
|
|
console.clear()
|
|
try {
|
|
fengari.load(flask.getCode())()
|
|
}
|
|
catch (e) {
|
|
console.error(e)
|
|
}
|
|
console = oldConsole
|
|
}
|
|
|
|
function example() {
|
|
flask.updateCode("function foo(n)\n for i = 0, n-1, 1 do\n print('passe ' .. tostring(i))\n end\n return n*n\nend\n\nprint(foo(5))")
|
|
}
|
|
|
|
function clearCode() {
|
|
flask.updateCode("")
|
|
}
|
|
|
|
/* Penser à réimplémenter toute la console : https://developer.mozilla.org/fr/docs/Web/API/Console */
|
|
const oldConsole = console
|
|
const newConsole = {
|
|
log: function (...msg) {
|
|
var outMsg = ""
|
|
outMsg += msg[0]
|
|
for (var i = 1; i < msg.length; i++) outMsg += " " + msg[i]
|
|
consoleElmt.innerHTML += "\<div class=\"message\">" + outMsg + "</div>"
|
|
},
|
|
clear: function () {
|
|
consoleElmt.innerHTML = ""
|
|
},
|
|
error: function (...msg) {
|
|
var outMsg = ""
|
|
outMsg = msg[0]
|
|
for (var i = 1; i < msg.length; i++) outMsg += " " + msg[i]
|
|
consoleElmt.innerHTML += "<div class=\"error\">" + outMsg + "</div>"
|
|
}
|
|
}
|