Scripton

Release Notes

v1.1.0

16 February 2025

  • New command palette modes

    This version adds a couple of new command palette modes. The first allows quickly searching through symbols in the active document (+shift+O) —

    You can also search for symbols across the entire workspace (+T) —

    There are a couple ways to switch between these modes (in addition to their usual keyboard shortcuts). The first is using common prefixes you may already be familiar with from other editors (like > for commands, : to jump to a line, and so on).

    You can also use the new menu at the bottom —

  • Add custom Python environments and interpreters by path.

    By default, Scripton auto-detects Python interpreters and environments on your machine (like those installed using Conda and Homebrew). However, what if you want to use a custom environment/interpreter that's not automatically discoverable? For instance, you may have a folder containing a custom virtual env that's not a part of your the open workspace. Or you may have an isolated Python binary.

    Starting this version, you can simply enter the path to any Python binary/environment and Scripton will auto-detect and persist it in its list of environments.

  • Run as Python Module

    It's now possible to get the same behavior as python -m. Scripton will now auto-detect when the active execution target is part of a Python package (based on the presence on __init__.py and __main__.py files) —

    In addition, the /run special command has been extended to support a new syntax for Run as Module:

    /run module:[optional workspace relative path]<module name>

    For instance, this is equivalent to executing python -m foo.bar when the package foo is in the currently open workspace's top-level:

    /run module:foo.bar

    If, instead, the package was located under the src sub-directory:

    /run module:src/foo.bar
  • The editor and REPL text can now be zoomed in and out.

    ++ (zoom in), +- (zoom out), +0 (reset)

  • Improved on-type formatting

    • The cursor is now correctly positioned when pressing enter after hanging indents.
    • Triple-quotes are now auto-closed.
    • Auto outdent after return, raise, pass, break
    • Auto outdent on : for else, elif, catch, finally
  • Improved dictionary key auto-completion

v1.0.0

28 January 2025

print('Hello, World!')