Ren'Py Launch and Sync
Launch and sync your Ren'Py game at the current line directly from inside Visual
Studio Code.
Features
- Start and quit your Ren'Py game directly from Visual Studio Code
- Warp games to a specific line, or jump to a label
- Move cursor position in Visual Studio Code as dialogue progresses with the
Follow Cursor mode
- A gutter decoration to remind you where you are in the game, even when the
cursor moves away
- Automatically enable autoreload when files change (with a setting)
- Can discover and bind to games that were started outside of Visual Studio
Code
Commands
The extension provides many commands to interact with Ren'Py. You probably want
to know about the following:
Command |
Shortcut |
Shortcut (Mac) |
Start Ren'Py project |
Alt+Shift+L |
⌘+Shift+L |
Open Ren'Py at the current line |
Alt+Shift+E |
⌘+Shift+E |
Open Ren'Py at label |
Alt+Shift+J |
⌘+Shift+J |
Go to current Ren'Py line |
Ctrl+Shift+E |
⌥+Shift+E |
Toggle following cursor mode |
Alt+Shift+C |
⌘+Shift+C |
Triggers
The commands can be triggered in several ways:
- By using title bar run menu
- By using the right click context in an editor
- By using the right click context menu in the file explorer
- By using the status bar
- By opening the command palette and typing the command, i.e.
Renpy: Open Ren'Py at current line
- Via keyboard shortcut (see here)
Configuration
You must set renpyWarp.sdkPath
to a
directory where the Ren'Py SDK can be found. If you haven't done so, a prompt
will appear to inform you to set it.
Strategy
You may want to customize what to do with an open Ren'Py instance when a new
command is issued. In Renpy Launch and Sync, this is called a "strategy".
The strategy is controlled with the setting
renpyWarp.strategy
, which can be
set to one of the following values:
- Update Window
-
When a command is issued, replace an open editor by sending a
renpy.warp_to_line()
command to the currently running
Ren'Py instance
- New window
-
Open a new Ren'Py instance when a command is issued
- Replace window
-
Kill the currently running Ren'Py instance and open a new one when a
command is issued
Follow Cursor
Renpy Launch and Sync can keep its cursor in sync with the Ren'Py game. The
direction of this sync can be controlled with the setting
renpyWarp.followCursorMode
- Ren'Py updates Visual Studio Code
-
The editor will move its cursor to match the current line of dialogue in
the game.
- Visual Studio Code updates Ren'Py
-
Ren'Py will warp to the line being edited. Your game must be compatible
with warping for this to work correctly.
- Update both
-
Try and keep both in sync with each other. Because of how warping works,
this can be a bit janky, causing a feedback loop.
Cursor syncing can be turned on by default with the setting renpyWarp.followCursorOnLaunch
.
Focus Window on Warp
When a warp occurs, you may want the Ren'Py window to be focused. This can be
configured with the setting
renpyWarp.focusWindowOnWarp
.
You might be prompted to allow Visual Studio Code to control other applications
when this setting is enabled. After allowing this, restart Visual Studio Code to
apply the changes.
Version support
Ren'Py 8.2+ is fully supported.
Ren'Py 8.1 and earlier does not support RPE features.
Troubleshooting
In order to use the current line/file feature, your game must be compatible with
warping as described in
the Ren'Py documentation.
This feature has several limitations that you should be aware of, and as such
may not work in all cases.
Attribution
The icon for this extension is a cropped rendition of the Ren'Py mascot, Eileen,
taken from the Ren'Py website.