Skip to content

3.1.2

Latest

Choose a tag to compare

@noahcoad noahcoad released this 09 Sep 11:50
· 1 commit to master since this release

3.1.2

Housekeeping release, from the Package Control reviewer's report on the channel
entry. No behavior changes to how URLs and paths are matched or opened.

Fixes

No more console flash on Windows

Windows gives every child process its own console window unless it's told not
to, so the helpers Open URL launches only for their side effect flashed an empty
black box on screen. Four launch sites now pass CREATE_NO_WINDOW:

  • System Openstart hands the file off and exits immediately, so its
    console was pure flicker; the app that opens is a separate process.
  • Open in a new Sublime window
  • Custom openers run through the run sentinel
  • Path transforms run through a shell command

Run in Terminal is deliberately unchanged — a visible console is the whole
point of that command.

Linux and Windows key bindings no longer leak onto macOS

The Linux/Windows bindings lived in Default.sublime-keymap, which Sublime
Text loads on every platform, macOS included. So a Mac install quietly got
three bindings it was never meant to have (ctrl+alt+u,
ctrl+alt+shift+o, ctrl+alt+shift+d) plus a collision on
ctrl+alt+shift+u, where the macOS file happened to win.

That file is now split into Default (Windows).sublime-keymap and
Default (Linux).sublime-keymap. Every platform gets exactly the bindings
documented in the readme, and nothing else.

If you had customized bindings in your User keymap, they're untouched.

Preferences → Key Bindings opens the right file off macOS

The menu item pointed at Default ($platform).sublime-keymap, which only ever
resolved on macOS — on Windows and Linux there was no such file to show. Fixed
by the split above. Both Settings and Key Bindings now also open your
User file side by side, so there's somewhere to type.

disable_default_key_bindings now also disables alt+double-click

The mouse binding was missing the guard the six key bindings all had, so it
stayed live after you'd turned the defaults off.

Internals

url.py moved to lib/url.py. Sublime Text loads every root-level .py in a
package as an independent plugin, so a shared helper sitting in the root was
being imported twice under two names. Nothing user-facing depends on it.