Code Monkey home page Code Monkey logo

vscode-renpy-warp's Introduction

renpy-tan and octocat

hi, im meri!

in my free time i make apps, and tooling for things i like. recently interested in ren'py, second life and web apps!

vscode-renpy-warp's People

Contributors

furudean avatar sirflobo avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

sirflobo

vscode-renpy-warp's Issues

Timeout error appears without even 10 seconds passing

I'm at commit: 78abe792f681c2ffd0b3cb813002feadba300a36
Renpy is latest stable (Ren'Py 8.2.3.24061702)

I'm in linux.

When I activate the warp functionality (Alt+Shift+E) on a line of code, it opens Ren'py and successfully connects to the server running in vscode.

However, after connecting and while still connected, the:

Timed out trying to connect to Ren'Py window. Is the socket client running?

Appears.

The logs from the autorun.py script:

renpy warp script started
connected to renpy warp socket server

Any idea what is really happening here? How can it connect successfully but cause the timeout?

Request to also publish to open-vsx

Users of derivative options to visual-studio-code do not have access to microsoft's visual studio code marketplace. There's an alternative marketplace called open-vsx: https://open-vsx.org/

Users of visual-studio-code and visual-studio-code derivatives can use this store.

To publish to Open VSX using the workflows system, you can edit https://github.com/furudean/vscode-renpy-warp/blob/main/.github/workflows/release.yaml#L68 to include HaaLeo's publish vs code premade step.

      - name: Publish to Open VSX Registry
        uses: HaaLeo/publish-vscode-extension@v1
        id: publishToOpenVSX
        with:
          pat: ${{ secrets.OPEN_VSX_TOKEN }}

I see you use vsce. If you want to use a cli for it, the equivalent is ovsx.

Most likely, the command is: ovsx publish "renpy-warp-${{ github.ref_name }}-${{ matrix.platformName }}.vsix".

Thank you in advance.

Exclude RPE from builds

See renpy/renpy#5648

The websockets import is causing problems for people building Ren'Py for web with the RPE, presumably it contains some stuff that just does not translate well to WASM.

We can probably remove it with classify, or simply render it harmless with a dynamic import.

Update existing process instead of launching a new one

Enable the extension to update an open instance of Ren'Py with whatever command is issued in VSCode.

renpy.sh does not take any input whatsoever, so what you launch is what you get. This would have to be changed upstream so that we could dynamically warp. One idea there is to enable using the console (Shift+O) via the CLI. This would allow us to execute arbitrary commands. Access to the console would also allow us to better check for readiness (#3)

Proper testing

Our current tests don't test any actual app functionality, and testing is broken in Windows

Add support to launching renpy from inside flatpak

Currently, in linux, the code only considers situations where the program is run outside any sandbox or that it to spawning a new process outside the sandbox is the same as from inside the sandbox. This is true for snap and AppImage but not so much for flatpak.
However, flatpak provides an API (behind a permission) to work with that. It also includes a command inside the sandbox flatpak-spawn --host.

To easily identify it's running inside flatpak, it also has the environment variable container set to flatpak

Using the env var for test, it should only be editing https://github.com/furudean/vscode-renpy-warp/blob/main/src/lib/sh.ts#L144-L146 to use flatpak-spawn --host if it's set.

If you are ok with having this feature that, I'll try making this myself and submit a pull request.

Glitchiness with warping

The extension could do a better effort to know if a line is warpable before we try to warp to it, especially in the case of the editor->renpy sync modes.

This will require implementing a parser/lexer which can understand the Ren'Py syntax. It would be a good idea to look at what counts as warpable currently inside the Ren'Py source code

Improve readiness detection

I made the decision to gate some smarter features behind renpyWarp.advancedProgressBars since we have no proper way to check when the game has actually started. It would be nice if this feature wasn't needed at all.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.