Venus RISC-V basic code dumping

Output basic RISC-V code in Venus

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

Advertisement:

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

Advertisement:

// ==UserScript==
// @name     Venus RISC-V basic code dumping
// @description Output basic RISC-V code in Venus
// @version  1
// @grant    none
// @match *://venus.cs61c.org/*
// @namespace https://greasyfork.org/users/248188
// ==/UserScript==

(function(){

  
  function exe(){
let stmts = [];

for (let s of document.getElementById("program-listing-body").children){
  stmts.push(s.children[2].innerText);
}

const code = stmts.join("\n");
  document.getElementById("console-output").value = code;
  }

  // create hookinh element
  let elem = document.createElement("div");
  elem.className = "control";
  let button = document.createElement("button");
  button.id = "simulator-tomcode";
  button.className = "button is-info";
  button.innerHTML = "Output Basic"
  button.addEventListener("click", exe);
  elem.appendChild(button);
  document.getElementById("simulator-buttons").appendChild(elem);
  
})()