Skip to content

Fixes and Improvements for WASM REPL #136251

Open
@adqm

Description

@adqm

Feature or enhancement

Proposal:

I recently ran into some issues with building and using the demo WASM REPL in Tools/wasm/emscripten/web_example/ using the instructions from this page, so I'm proposing some fixes and changes here, specifically:

  • Fixes:
    • Exporting HEAPU32 at build time so that python.worker.mjs has access to it to determine the version number
    • Properly closing a <script> tag in python.html so that xterm.js loads properly
  • New Features:
    • Augmenting the REPL implementation to support arrow keys for navigation (including accessing history)
    • Resetting things after a process is stopped so we can cleanly restart multiple times
    • Replacing the plain textarea element with a nicer code editor (Ace)

I made these changes while putting together a web demo for a different feature proposal and figured I'd share them in case they were of interest. I'll put in a PR shortly.

Has this already been discussed elsewhere?

This is a minor feature, which does not need previous discussion elsewhere

Links to previous discussion of this feature:

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    OS-wasibuildThe build process and cross-buildtype-featureA feature request or enhancement

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions