Sublime Text 3.0 - Product Stars
Best products of May 2018

Sublime Text 3.0

The long awaited version 3 of the popular code editor

Upvotes 4,687 PH Page >
Ton
Hunter
That's a surprise: after years in development its finally here. Sublime Text 3.0. The sophisticated text editor for code, markup and prose. Congrats to the devs who made it happen. As for the new 3.0 features: "Certainly there are big features that 3.0 has: Goto Definition, a new syntax highlighting engine, a new UI, and an expanded API. However the difference is frequently felt in the hundreds of improvements that don't warrant being featured on their own: spell checking works better, automatic indentation does the right thing more often, word wrapping handles source code better, high DPI screens are properly supported, and Goto Anything is smarter. There's too much to list, but combined the difference is night and day."
Daveyon Mayne
It's it time to switch from atom?
Ryan Roberts
@mirmayne Nah.
cacarr
@mirmayne Yes, to VSCode. ;-)
Ronald Langeveld
@mirmayne @ryan_roberts1 Atom is a bit too bloated in my opinion, it's got awesome features, but it's got too much unnecessary plugins & stuff that comes with by default . When it comes to free options, I was recently introduced to Visual Studio Code. Despite being very anti-Microsoft, VSC performs very well on my Macbook and is very lightweight compared to Atom & most other free editors. But still, nothing beats Sublime Text in terms of performance. I'm a huge fan!
Bogdan Slovyagin
@mirmayne Yeah
Yes
@mirmayne idk do you need to open files longer than 20 lines?
Daveyon Mayne
@superspookyuser More than 20 lines of code? 🤔
Yes
@mirmayne haha only a little bit sarcastic, For me as the files get bigger, Atom gets more unresponsive. Sublime opens huge files without stuttering.
Daveyon Mayne
@superspookyuser lol then I guess they need to take my $80
Ryan Roberts
@cacarr I have actually switched to VSCode this week and love it.
Stephane Manhes
Very good, thanks.
Emily Carter
It is time to switch from sublime2)
Jane
@emilycarter008 , definitely)
Sooraj Chandran
Have been waiting for some time for this.
Kristian Gerardsson
Wow! I thought the project was dead, and I was about to switch to VS Code. Now I can stay with ST :D I just hope the next release won't take a whole year.
Lorenzo Bruno
@frexuz switch anyway, VS Code is easily the best editor out there at the moment. Then you know, it's just my opinion, coding is like fashion, everyone has his own style! ;)
cacarr
@frexuz @lorenzobruno Every now and then Microsoft makes something great. Such was the case with Visual Studio Code.
Stepan Goodween
I like this app. Thanks.
Jevgeni
Love that the new app titlebar blends in with the theme.
Leif Abraham
I love Sublime so much
Nathaniel Blackburn
After 7,000 years in beta, the day has finally come to reveal ST3 to the world. Developers rejoice as the original editor is back.
Luis Martins
@itsnblackburn the original was textmate 😉
Dre Durr💡
Will this update be the end of Atom... Glad to see more updates Dope 🚬🚬
nothing_but.flowers
@dredurr No it won't
Stefan Wirth
@dredurr haha you never fail to deliver on that dope 😜
Razvan Gavrilas
love it ;) good work!
Cody
I am excited for this release as I still use Sublime for my email building workflows but it feels a little too late to save the slow steady decline of Sublime. I use VS Code and Jetbrains products for all my day to day work now.
Maxim Zubarev
I feel like this happens way too late. Atom has taken advantage from the "downtime" that Sublime had and maybe even exist just because of this. I myself can't see myself switching back from Atom because I can't trust the people behind Sublime to update it frequently, which seems a major quality characteristic nowadays. However, I don't want to badmouth this eventual release, so I will keep an active eye again on Sublime to see how the ecosystem evolves from now on. Kudos!
Michel
@mxmzb I feel like developers have a different opinion on that. Over on Hacker News people seem to like SB much more than Atom.
Maxim Zubarev
@mictuc I was talking explicitly about "me". Besides, I am not quite sure how much HN really is representing the group of people called "developers". At least it doesn't seem to represent me, and I consider myself as a developer, too. That's just too generalizing (and generalizing based on pretty much nothing) imho...
Geoffrey Bourne
Yeah - finally - and what a change log!
Simon Bromberg
Literally just deleted Sublime Text 2 yesterday because I have been using Atom exclusively for a while. Was wondering when 3 would be released… But based on what I'm seeing here I'm not going to bother.
Brendon Brown
This is a lovely note to start my weekend. Glad to see the eternal Beta is over.
Albert Petrosyan
One of the best code editors out there. Love the minimalistic design!
Ilia
Deserves to be the product of the day!
Mberah Mubok
Good Job!
Chrissy
I switched away from Sublime 2 years ago and switched to Atom. About 6 months ago I switched back due to Atom being slow and clunky. What a lot of people don't realise is that Sublime was very much is active development as the BETA channel had a lot of updates pushed out months before this public release for paying customers. It's native, very fast and I'm staying with it! Literally all my extensions are available for it, only the pointless gimmick ones aren't (which is fine).

Download

Sublime Text 3 is the current version of Sublime Text. For bleeding-edge releases, see the dev builds.

Version: Build 3143

Changelog

  • Refreshed UI theme, including full high DPI support
  • New icon
  • Added alternate theme, Adaptive, that inherits colors from the color scheme
  • Added new color schemes Breakers, Mariana and Sixteen, derived from the excellent work of Chris Kempson and Dmitri Voronianski
  • Added color scheme and theme switchers with live preview via the command palette
  • Windows: Added touch input
  • Mac: Added Touch Bar support
  • Mac: Support for custom color window title bars on OS X 10.10+
  • Many additions and bug fixes to the theme engine, plus full documentation
  • Significant improvements to Markdown syntax highlighting, with thanks to keith-hall
  • Significant improvements to C# syntax highlighting, with thanks to gwenzek
  • Significant improvements to Java syntax highlighting, with thanks to djspiewak
  • Significant improvements to Python syntax highlighting, with thanks to FichteFoll
  • Significant improvements for R syntax highlighting, with thanks to randy3k
  • Markdown: Improved symbol handling
  • C#: Improved symbol handling
  • Various bugs with the syntax highlighting engine have been resolved
  • Fixed several crash issues
  • Improved responsiveness when the system is under high CPU load
  • High DPI textures are used on Windows and Linux when the DPI scale is greater than 1.0
  • Improved font selection on all platforms, allowing selection of different weights by name
  • Added setting theme_font_options to control font rendering of UI elements
  • Improved auto indent rules for HTML and PHP
  • Font geometry issues that prevent bold or italics are now printed in the console
  • Fixed flash-of-white that could occur when the auto complete window is closed
  • Disable scroll animation when animation_enabled is false in settings
  • Files can now be renamed when only the case has changed
  • New windows start with an empty find history
  • Find in Files panel now responds to find_all and replace_all commands
  • Various regex handling improvements in the Find panel
  • Fixed text widgets cutting off the bottom pixel of their selection border
  • Fixed an issue with close_windows_when_empty in empty session
  • Fixed empty panes on startup when hot_exit was set to false
  • Fix Open Containing Folder on Windows with a folder containing a comma
  • Fix multi-cursor pasting when clipboard contains one or more full lines
  • Prevent UNC paths from being mangled by edit_settings
  • Prevent a crash when a malformed regex is used in indentation settings
  • Improved rendering performance with a large number of gutter icons
  • Gutter icons are now sized properly on Windows and Linux high DPI screens
  • Improved sidebar performance when folders contain many thousands of files
  • Improved inline error message style
  • Fixed an issue where multiple indexing status windows could be shown
  • Windows: Font rendering defaults to DirectWrite unless using Consolas or Courier New
  • Windows: Added support for no_antialias font option when using DirectWrite
  • Windows: Improved touch pad scrolling
  • Windows: Improved file change detection robustness
  • Windows: Improved font selection logic
  • Windows: Fix ctrl+` shortcut for UK (ISO) keyboards
  • Windows: Improved fallback font handling in UI elements
  • Windows: The subl executable on OS X and plugin_host.exe on Windows are now signed
  • Windows: sublime_text.exe now has CompanyName set in VERSIONINFO
  • Mac: Handle layout changes due to macOS Sierra tabs
  • Mac: Improved default web browser detection
  • Mac: OS X 10.11 and macOS 10.12+ default to using San Francisco for the UI font
  • Mac: Fixed file change notifications from freezing UI on macOS Sierra
  • Mac: the user's default shell is executed and environmental variables are set in the plugin Python environment
  • Linux: Update X11 selection on clipboard every time selection changes
  • Linux: Improved MOD3 modifier key handling
  • minihtml: Added support for borders
  • minihtml: Respects font_options from the settings
  • minihtml: Fixed layout of html popups on Windows and Linux under High DPI
  • minihtml: Fixed crash when doctype is present
  • minihtml: Fixed a crash from non-existent CSS vars
  • minihtml: Fixed a crash triggered by bad image paths
  • API: Add View.text_to_window() and View.layout_to_window()
  • API: All API functions now accept and return device-independent-pixels
  • API: Fixed input panel not running on_cancel when re-showing the input panel
  • API: Fixed selector scoring with the & operator
  • API: Fixed a bug causing incorrect phantom contents
  • API: Fixed crash in Window.set_view_index()
  • API: Updated OpenSSL to 1.0.2k, SQLite to 3.16.02

Build 3126

23 September 2016
  • Added Indexing Status to the Help menu to give more information about what the indexer is doing
  • Fixed a compatibility issue with some third party syntax definitions that include JavaScript.sublime-syntax
  • Reduced the default number of worker processes used for indexing. This can be manually controlled via the index_workers setting
  • API: Updated OpenSSL to 1.0.2i

Build 3124

  • Settings now open in a new window, with the default and user settings side-by-side
  • Hovering over a symbol will show a popup indicating where it's defined. This is controlled with the show_definitions setting.
  • Build errors are now shown inline at the location where they occurred. This is controlled with the show_errors_inline setting.
  • Added a menu item and command palette entry to install Package Control
  • Various syntax highlighting improvements
  • Significant improvements to the Scala syntax definition, with thanks to djspiewak and gwenzek
  • Significant improvements to the LaTeX syntax definition, with thanks to randy3k
  • Improved Goto Definition performance when a large number of files are open
  • Minor improvements to file load times
  • Linux and OSX: Improved memory usage
  • Fixed Replace not working as expected in conjunction with regex look behinds
  • Fixed build systems being unable to use "file_patterns" with the exec command
  • Corrected tab overlap on High DPI Windows and Linux configurations
  • OSX: Fixed a graphical glitch when switching tabs
  • OSX: Fixed crash when entering a surrogate pair via hex input
  • Linux: Improved rendering performance for some systems
  • File encoding of open files is now stored in the session
  • Build Systems may define a cancel command using the "cancel" key
  • Syntax: Added clear_scopes directive, to give more control over the generated scopes
  • Color Schemes: Added popupCss key, for defining default popup style sheets
  • Color Schemes: Added phantomCss key, for defining default phantom style sheets
  • minihtml: High DPI support was added for Windows and Linux
  • minihtml: Windows style line endings and single quoted attributes are now supported
  • minihtml: Child selectors may now be used in style sheets
  • minihtml: The inherit CSS value has been implemented
  • minihtml: font-family stacks may now be used
  • minihtml: Support for the line-height CSS property was added
  • minihtml: Elements may now be relatively positioned
  • minihtml: Inline elements support padding and background-color set
  • minihtml: CSS variables and the var() function are now supported
  • minihtml: Added the CSS color functions color() (partial), rgb(), rgba(), hsl() and hsla()
  • minihtml: Fixed a stack overflow on Windows with too many unclosed tags
  • API: Added Phantom and PhantomSet
  • API: Added ViewEventListener
  • API: Added View.is_primary()
  • API: Added EventListener.on_hover(view, point, hover_zone)
  • API: Added functions to get and set visibility of the minimap, status bar, tabs and menu
  • API: Modifications to a selection are now constrained to the valid range
  • API: Updated Python 3.3 to commit 8e3b9bf917a7, and SQLite to 3.14.1
  • Packages: Loading packages will no longer abort if a .sublime-package is corrupt
  • Packages: Fixed an edge case when loading third party packages from unicode paths on Windows

Build 3114

12 May 2016
  • New C++, JavaScript and Rust syntax definitions with improved accuracy and performance
  • Many other syntax highlighting improvements
  • OSX: Improved rendering performance, especially on high resolution screens
  • Improved word wrap behavior
  • Improved spell check behavior
  • Themes may now be switched on the fly without artifacts
  • HTML: Pressing enter when between a tag pair will increase indentation
  • Some snippets have have been moved into a sub-directories, so custom overrides and key bindings that reference them will need to be updated
  • show_scope_name command shows the scope in a popup
  • Package Development: Added 'Syntax Tests - Regex Compatibility' build variant for evaluating syntax definition performance
  • Package Development: Expanded the set of regexes the new regex engine is able to handle
  • Syntax Definitions: Fixed some cases where pop matches with back references weren't working correctly
  • Fixed some Unicode handling issues in Goto Anything
  • Fixed a scenario where changes to .tmPreferences files weren't being picked up
  • Fixed a 3096 rendering performance regression
  • Fixed a 3096 regression in regular expressions when using \x{nnnn} escapes
  • Fixed a crash that could occur with an invalid result_file_regex settings
  • API: Added Window.status_message()
  • API: Changes to how plugins are loaded. This should be transparent, but resolves a number of corner cases
  • API: Updated to Python 3.3.6, and now includes the _ssl module on Linux, plus sqlite3 and bz2 on all platforms
  • API: Updated OpenSSL to 1.0.2h

Build 3103

  • Added new Syntax Definition file format, .sublime-syntax
  • Added a custom regex engine that matches multiple regexps in parallel, for faster file loading and indexing
  • Improved Unicode support, including combining character rendering, character classification in regex searches, and case insensitivity in Goto Anything matching
  • Packages are now on GitHub
  • Incorporates many community provided improvements to the above packages, with significant improvements to HTML, CSS, JavaScript, Go, D and SQL
  • Added Panel Switcher to status bar
  • Better handling of troublesome files during indexing
  • Improved file change detection
  • Added "Profile Events" to the Command Palette, to help identify slow plugins
  • Build Systems may now define a list of file name wildcard patterns to trigger on, via the file_patterns key
  • prompt_open_file and related commands now accept an initial_directory argument
  • Improved indenting behavior when indent_to_bracket is enabled
  • Spell Checker now reads from manually edited user preferences on the fly
  • Stability improvements for Find in Files when using regular expressions that result in significant backtracking
  • Fixed file truncation when using hexadecimal encoding
  • Fixed brackets in strings influencing auto indent
  • Fixed inconsistencies in Goto Anything when selecting symbols
  • Fixed tab completion regression in 3081, where h1..h6 HTML completions were not triggering
  • Fixed Goto Definition command not working when placed in a submenu
  • OSX: Fixed Emoji & Symbols popup failing to insert text in some cases
  • Windows: Added support for inserting characters from outside of the BMP
  • Windows: ctrl+alt+p is no longer bound by default, due to compatibility issues with some keyboard layouts
  • Windows: Updated code signing certificate to no longer use SHA1
  • Linux: Fixed a file permission issue when running without --wait
  • Linux: crash_reporter is statically linked, improving system compatibility
  • API: Added Window.is_sidebar_visible() and Window.set_sidebar_visible()
  • API: Added View.is_auto_complete_visible()

Build 3083

26 March 2015
  • Fixed high CPU usage caused by a corrupt index. This was occuring for some users upgrading from 3065
  • Added setting index_workers to control the number of threads used for file indexing. By default the number of threads is based on the number of CPU cores. By setting index_workers to 1 or 2, indexing will be slower, but less intrusive
  • Fixed a crash when showing the Command Palette with an empty .sublime-build file
  • Tab completion no longer completes numbers. Edit/Show Completions can still be used for this

Build 3080

  • Fixed Redo sometimes restoring the selection to the incorrect location
  • Reworked how Build Systems are selected (More Information)
  • Build Systems may now declare "keyfiles" (e.g., 'Makefile' for the Make build system) to better auto detect which build system to use
  • Improved handling of build systems that generate lots of output
  • New windows always use the automatic build system, rather than the build system of the last used window
  • Command Palette now remembers the last entered string
  • Improved change detection for files that disappear and reappear, as happens with disconnected network drives
  • atomic_save is disabled by default
  • Right clicking on a URL will show an "Open URL" menu item
  • Added Goto Definition to the context menu
  • Improved behavior of Goto Definition when using multiple panes
  • Misspelled words can now be added to the dictionary, in addition to being ignored
  • Fixed Ignored Words not persisting after exiting
  • Fixed a long standing issue with spell checking and non-ascii characters
  • Added spelling_selector setting, to control what text is checked for misspellings
  • Tweaked handling of syntax definitions and unused captures, resolving an issue with spell checking in Markdown links.
  • Goto Anything supports :line:col syntax in addition to :line
  • Added Edit Project to the Command palette
  • Improved quote auto pairing logic
  • Added <current file> option to Find in Files
  • Improved Console Panel scrolling behavior
  • .tmLanguage files may contain a hidden setting, to indicate they shouldn't be displayed to the user
  • Improved some error messages when parsing .tmLanguage files
  • remember_open_files setting is now defaults to false. Note that this change will have no effect if the hot_exit setting is left at its default value of true
  • Added auto_complete_cycle setting
  • Fixed Minimap refusing to draw on very large windows
  • Fixed not being able to click on the selected row of the auto complete popup
  • Fixed sidebar icons sometimes being invisible on startup
  • Transient sheets (e.g., as created by Goto Anything when previewing files) are no longer added to the Recently Closed list
  • Improved scrolling behavior when line_padding_top is > 0
  • Fixed a bug with scrolling tabs, where a 1 pixel line would occasionally appear underneath them
  • Fixed tabset background being set to the wrong color on startup if different colored tabs are used
  • Updated to a never version of leveldb, fixing constant low level CPU usage if the index becomes corrupted
  • Fixed a crash that could occur when directories are being rapidly deleted and recreated
  • Fixed a crash that occurred when dragging rows scrolled out of view in the side bar
  • Fixed a long standing plugin_host crash triggered via modal dialogs
  • Fixed a typo in the "Save Workspace As" dialog
  • Fixed incorrect menu mnemonics
  • Linux: Added sudo save
  • Windows: Popup windows are able to receive scroll wheel input
  • Windows: subl.exe command line helper accepts wildcards
  • Windows: Fixed access denied errors that could occur when saving with atomic_save disabled
  • Windows: Added workaround for broken std::condition_variable in MSVC 2012, fixing a crash in plugin_host
  • Windows: Added more descriptive errors when the Update Installer fails to rename a folder
  • Windows: Fixed incorrect window sizing after making a maximised window full screen
  • OSX: Added work around for performActionForItemAtIndex: taking an excessively long time in Yosemite. This affected any commands that had a corresponding menu item.
  • OSX: Workaround for an OS issue with zero size windows and OpenGL views
  • OSX: subl command line tool no longer uses Distributed Objects, resolving some intermittent failures
  • Posix: Fixed new files not respecting the umask permission flags
  • API: Added View.show_popup() and related functions
  • API: Added sublime.yes_no_cancel_dialog()
  • API: Added sublime.expand_variables()
  • API: Added Window.extract_variables()
  • API: Added Sheet.view()
  • API: Window.show_quick_panel() now accepts the flag sublime.KEEP_OPEN_ON_FOCUS_LOST
  • API: Window.show_quick_panel() will now scroll to the selected item when shown
  • API: Fixed EventListener.on_post_window_command() not getting called

Build 3065

  • Tweaked window closing behavior when pressing ctrl+w / cmd+w
  • Improved quote auto pairing logic
  • Selected group is now stored in the session
  • Added remember_full_screen setting
  • Fixed a lockup when transitioning from a blinking to a solid caret
  • Fixed a crash in plugin_host
  • Fixed a crash triggered by Goto Anything cloning views
  • Windows: Added command line helper, subl.exe
  • OSX: Added 'New Window' entry to dock menu
  • Posix: Using correct permissions for newly created files and folders
  • API: Updated to Python 3.3.3

Build 3059

  • Added image preview when opening images
  • Encoding and line endings can be displayed in the status bar with the show_encoding and show_line_endings settings
  • Added settings caret_extra_top, caret_extra_bottom and caret_extra_width to control the caret size
  • Added index_exclude_patterns setting to control which files get indexed
  • Automatically closing windows when the last tab is dragged out
  • Changed tab close behavior: the neighboring tab is now always selected
  • When the last file is closed, a new transient file is created automatically
  • Ctrl+Tab ordering is stored in the session
  • Added minimap_scroll_to_clicked_text setting
  • Minor improvements to Python syntax highlighting
  • Vintage: A block caret is now used
  • Vintage: Improved behavior of visual line mode with word wrapped lines
  • Find in Files will no longer block when FIFOs are encountered
  • Linux: Added menu hiding
  • Linux: Fixed incorrect handling of double clicks in the Find panel
  • Linux: Fixed incorrect underscore display in some menus
  • Posix: Fixed new files being created with unexpected permissions
  • Windows: SSE support is no longer required for 32 bit builds
  • API: Window.open_file() now accepts an optional group parameter
  • API: Plugins may now call Settings.clear_on_change() within a callback from Settings.add_on_change()
  • API: Calling Settings.add_on_change() from within a settings change callback won't cause the added callback to be run

Build 3047

  • Improved file change detection
  • HTML tag auto completion is better behaved in script tags
  • Fixed a crash on exit that could occur when hot_exit is disabled
  • Linux and OSX: atomic_save is adaptively disabled when it's not possible to preserve file permissions
  • OSX: Fixed context menus not working when the application is in the background
  • Windows: Auto updater supports updating from unicode paths
  • API: Plugins in zip files are able to be overridden via files on disk
  • API: Added support for the termios module on Linux and OS X
  • API: Fixed Selection.contains()
  • API: Fixed settings objects getting invalidated too early with cloned views

Build 3033

  • New auto update system for Windows and OS X
  • Previewing a file from the side bar will no longer add an entry to the OPEN FILES section of the side bar
  • Added Paste from History
  • Added setting auto_find_in_selection, for S2 style Find in Selection logic
  • Find panel has a drop down arrow to select previous items
  • Pressing right in the Goto Anything overlay will open the selected file without closing the overlay
  • Fixed several crash bugs
  • Further startup time improvements
  • PHP: Improved auto indenting for the alternative control syntax
  • Added setting always_prompt_for_file_reload
  • Improved handling of deleted files when restoring sessions
  • Deleting a file via the side bar will first close the corresponding view, if any
  • "Remove all Folders from Project" now prompts to confirm
  • Added telemetry. Telemetry is disabled by default, but can be turned on with the enable_telemetry setting
  • Using Google Breakpad to automatically report crashes
  • Updated syntax highlighting for PHP, Haskell and Pascal
  • Symlinks are followed by default in folders added to the side bar
  • Windows: Fixed erroneous entries in system menu
  • Windows: New style Open Folder dialogs are used on Vista and later
  • API: Significantly improved communication speed with plugin_host
  • API: Added View.close()
  • API: Added View.show_popup_menu()
  • API: Added is_valid() method to View and Window, to determine if the handle has been invalidated
  • API: Added EventListener.on_post_text_command() and EventListener.on_post_window_command()
  • API: Added sublime.get_macro()
  • API: View.substr(point) now has the same semantics as S2 for out of bounds addresses
  • API: View.command_history(0, True) now returns the last modifying command, as expected

Build 3021

  • Windows: Fixed a crash under Windows 7 x64
  • Fixed a crash that could occur on file open

Build 3019

12 March 2013
  • Added Jump Back and Jump Forward commands, available from the Goto menu
  • HTML: Improved completions and auto indent
  • HTML: Tags are closed when </ is entered. This is controlled by the auto_close_tags setting
  • Smarter word navigation
  • File saves are atomic. This can be disabled with the atomic_save setting
  • Find and Replace panels automatically resize when multi line strings are entered
  • Faster loading of large, plain text files
  • Improved console scrolling performance on high resolution displays
  • Improved handling of files with extremely long lines
  • Minimap view rectangle auto hides (controlled by the always_show_minimap_viewport setting)
  • Indexing: Added detection of stuck workers
  • Updated C# package
  • Added invert_selection command
  • CSS: Completions will not be offered when typing in selectors
  • Fixed Reveal in Side Bar
  • Fixed C++ syntax highlighting for nested class forward declarations
  • Exec panel scrolls again
  • OSX: Added support for line numbers sent via apple events
  • Windows: ok_cancel_dialog uses new visual styles
  • Linux: Using the correct version number for the deb files
  • API: Added EventListener.on_text_command() and EventListener.on_window_command()
  • API: Added sublime.load_resource(), sublime.load_binary_resource() and sublime.find_resources()
  • API: Added sublime.encode_value() and sublime.decode_value()
  • API: View.sel() supports negative indices
  • API: Implemented Settings.add_on_change() and Settings.clear_on_change()
  • API: View.add_regions() will accept package relative paths for the icon
  • API: View.add_regions() can show underlines
  • API: Added EventListener.on_pre_close() callback
  • API: View.window() will now work even if the view isn't frontmost

Build 3012

Build 3011

  • OSX: Fixed incompatibility between Dictionary lookup and gpu_window_buffer
  • Objective-C: Improved symbol indexing
  • API: sublime.version(), sublime.platform(), sublime.architecture(), and sublime.channel() may now be used before plugin_loaded() is called
  • API: Added View.command_history()
  • OSX: Buttery smooth scrolling on Retina displays
  • Symbol Indexing: fixed degenerate behavior that could cause an explosion in the number of worker processes
  • Symbol Indexing: less worker processes are used, to be more unobtrusive
  • Symbol Indexing: better handling of binary files
  • OSX: Control+C will cancel the current build
  • API: View.insert() returns the number of characters inserted

Build 3009

  • OSX: Reduced CPU usage when gpu_window_buffer is enabled
  • Symbol Indexing works on Windows XP
  • Can monitor indexing behavior by entering sublime.log_indexing(True) in the console
  • Tweaked brace matching logic
  • API: Added _ssl module on OS X and Windows
  • API: Fixed ctypes regression in 3008 on OS X
  • API: Plugins can define plugin_loaded() and plugin_unloaded() module functions. plugin_loaded() will be called when the API is ready to use.
  • API: Added View.find_by_class()
  • API: Added View.expand_by_class()
  • API: Fixed EventListener.on_new_async()
  • API: Tweaking handling of show_quick_panel when items is a mixed list of strings and sequences

Build 3008

  • Fixed the Tools/Macros menu
  • API: urllib.request can be imported on OS X
  • API: Fixed missing _socket module on 32 bit Windows

Build 3007

  • Added Symbol Indexing support for Scala
  • Fixed crash that could occur when using Goto Anything
  • Fixed the ignored_packages setting not working correctly with zipped packages
  • Vintage: Fixed 'o' and 'O'
  • API: Fixed on_query_completions not working correctly in some circumstance
  • API: Re-added view.score_selector()

Build 3006

  • Significantly improved startup time
  • Significantly improved Replace All performance
  • Improved matching algorithm used for Goto Anything and Autocomplete, now accepts transposed characters
  • UI: Enhanced pane management
  • UI: Previewing files from the sidebar creates a preview tab
  • UI: Improved animation in the side bar
  • Projects: Multiple workspaces can be created for a single project
  • Projects: When adding folders to the sidebar, symlinks are not followed by default. This can be changed by enabling follow_symlinks in the project.
  • Build Systems: Added 'shell_cmd', which supersedes 'cmd', with more intuitive syntax
  • Build Systems: Better PATH handling behavior on OS X when using shell_cmd.
  • Build Systems: 'Make' build system has an improved error message regex
  • Build Systems: Syntax file can be specified for the output
  • Build Systems: Word wrap is enabled by default
  • Find in Files: Improved handling of binary files
  • Find in Files: Line numbers are hidden in the output
  • Find: Find in Selection will no longer be automatically selected
  • Find: Removed Reverse option
  • OSX: 64 bit only
  • OSX: System version of Python is no longer a dependency
  • OSX: Italic fonts are synthesized when not available in the typeface
  • Linux: .deb files are provided
  • Linux: Starting from the command line will daemonize the process by default
  • API: Upgraded from Python 2.6 to Python 3.3
  • API: Plugins run out-of-process
  • API: Some API events are now run asynchronously
  • API: View.begin_edit() / View.end_edit() are no longer accessible
  • API: Projects are exposed to the API
  • API: Added Window.settings() and Window.template_settings()
  • API: show_quick_panel accepts an on_highlighted callback