Sublime Text may be downloaded and evaluated for free, however a license must be purchased for continued use. There is currently no enforced time limit for the evaluation.
Changelog
3.2.2 (Build 3211)
1 October 2019
Mac: Added Notarization
Fixed a performance regression when moving the caret upwards in large files
Fixed a memory leak
Fixed not being able to swap lines down with the last line if it was empty
Git: Fixed includeIf handling in git config files not interpreting ~ relative paths correctly
3.2.1 (Build 3207)
6 April 2019
Various syntax highlighting improvements
Git: Git repositories at the top level of a users home directory are ignored for performance reasons. This can be changed via the allow_git_home_dir setting.
Git: Improved performance with a large number of git repositories in the side bar
Git: Fixed UTF8 BOMs not being handled correctly in .gitignore files
Fixed a crash in the Git repository handling
Improved file indexing behavior in some scenarios
Improved scrolling logic in some scenarios
Fixed block carets changing the way text selection works
Fixed swap_line_up and swap_line_down transforming tabs into spaces
Mac: Added a workaround for a MacOS issue with DisplayLink adapters
Linux: Fixed compatibility with old Linux distributions
Linux: Improved high dpi handling under KDE
Linux: Tweaked the way text scaling is handled
Linux: Fixed incorrect file ownership in the deb packages
API: Fixed an incompatibility with SublimeREPL
API: Fixed regression with phantoms interfering with home/end behavior
Improve positioning and sizing of gutter icons in some situations
Fixed draw_minimap_border setting not working
Linux: Improved input method (IM) support - fcitx, ibus, etc
Linux: Fixed a crash when using GTK_IM_MODULE=xim
Linux: Tweaked behavior of up/down when on the first and last lines of a file to better match platform conventions
Windows: Improved IME support
Themes/UI
Enhanced the .sublime-theme format:
Added variables support and associated revised JSON format with variables key
Added extends keyword to have one theme derive from another
Colors may be specified via CSS syntax
Improved performance with large numbers of rules in a .sublime-theme
Linux: Moved to GTK3
Linux: Various high DPI fixes
Mac: Added Mojave support
Mac: Add full support for macOS native tabs
Mac: Ensure context menus are shown without scrolling
Mac: Error message dialogs can now be closed with the escape key
Mac: Improved window placement
Mac: Improved resize performance
Windows: Fixed minimized and maximized state not restoring
Windows: Fixed a bug where auto complete entries would contain an ellipsis when not required
Text Rendering
Support for Unicode 11.0
Improved rendering of combining characters
Fixed a caret positioning bug when non-trivial graphemes are present
Fixed some cases of incorrect glyph positions on Windows and Mac
Linux: Color glyphs are now drawn properly on light backgrounds
Windows: Fixed a rendering issue with certain combining characters
Windows: Fixed some fonts having an incorrect baseline
Color Schemes
Added block_caret key to use in conjunction with block carets
caret values now respect alpha as expected, rather than pre-blending against the background color
Added the foreground_adjust property to rules with a background. Accepts CSS color mod adjusters to manipulate the saturation, lightness or opacity of the foreground color.
Syntax Highlighting
Many syntax highlighting improvements, including significant improvements to:
Added automatically generated scope names for use with the regions API: region.redish, region.orangish, region.yellowish, region.greenish, region.bluish, region.purplish and region.pinkish
Improve View.find() and View.find_all() performance when doing literal matches
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
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()
API: Added Window.find_output_panel(), Window.destroy_output_panel(), Window.active_panel() and Window.panels()
API: Added Window.create_output_panel() now accepts an optional parameter, "unlisted"
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 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
27 August 2014
Added sidebar icons
Added sidebar loading indicators
Sidebar remembers which folders are expanded
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
17 December 2013
Added tab scrolling, controlled by the enable_tab_scrolling setting
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
Improved error messages when unable to save files
Auto complete now works as expected in macros
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
27 June 2013
Beta is now open to non-registered users
Windows and Linux: Added High DPI support
Improved file change detection
Improved rendering performance
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
7 May 2013
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
Improved HTML completions when typing outside of tags
Fixed Close Tag not respecting self closing tags
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: EventListener.on_text_command() and EventListener.on_window_command() are now called when the menu is used
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
14 March 2013
Linux: Fixed atomic_save working incorrectly with symlinks
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
10 February 2013
Fixed a syntax highlighting regression in 3011
Build 3011
9 February 2013
Improved protection against degenerate syntax definitions
Linux: Fixed version incompatibilities with libffi
OSX: Fixed exec command on 10.7
OSX: Fixed incompatibility between Dictionary lookup and gpu_window_buffer
Objective-C: Improved symbol indexing
API: Plugins may import modules from plugin_loaded()
API: sublime.version(), sublime.platform(), sublime.architecture(), and sublime.channel() may now be used before plugin_loaded() is called
API: Added View.command_history()
Build 3010
3 February 2013
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
1 February 2013
Improved symbol indexing for Ruby
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
Removed undesirable animation during startup
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
30 January 2013
Fixed Open all with current extension as
Fixed the Tools/Macros menu
Linux: Restored compatibility with older glibc versions
Linux: Added Installed-Size field to the .deb
API: urllib.request can be imported on OS X
API: Fixed missing _socket module on 32 bit Windows
Build 3007
30 January 2013
OSX: Fixed extraneous dock icons
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()
API: Selection.add() no longer ignores the xpos
Build 3006
29 January 2013
Added Goto Definition, and Goto Symbol in Project
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: Improved performance on Retina displays
OSX: 10.7 or later is required
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: Plugin API is now threadsafe
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