What's new in this version: Release Highlights: - Multi-select tabs to view them side-by-side - Context-aware auto complete by finding similar code elsewhere in the current project - Symbols have kind information that is shown for completions and navigation - Theme can follow system dark mode preference and title bars can be themed on all platforms - Syntax highlighting now supports back-tracking and inheritance - Many syntax highlighting improvements as well as builtin TypeScript, JSX and TSX support - GPU rendering for improved performance. Enabled by default on macOS - ARM64 support for Linux and macOS (Apple Silicon) - Many plugin API additions particularly to better support plugins like LSP - Python 3.8 support for plugins
GPU Rendering: - New hardware_acceleration setting will composite the UI on the GPU - By default, GPU rendering is enabled on Mac, and disabled on Windows and Linux - Details about the active GPU will be displayed in the Console - Context-aware Auto Complete: - The auto complete engine now suggests completions based on patterns in existing code - Uses the entire project as a source, instead of just the current view - Plugins may specify symbol kind info to be displayed in suggestions list - Tab Multi-Select: - Multiple tabs can be selected using ctrl/cmd, their contents will be shown side-by-side - Selecting multiple files from the sidebar will also preview them simultaneously - Included themes have a tab connector joining the active sheet and tab when using sheet multi-select - The sidebar can now select multiple files using alt - Goto Anything allows opening tabs side-by-side using ctrl/cmd - The Definition popup has a dedicated button for opening files side-by-side - Multiple tabs can also be selected from the tab dropdown - The menu Selection/Tab Selection contains various options for manipulating tab multi-select - File/New View into File has been replaced by File/Split View using multi-select - Python 3.8 API: - Added a Python 3.8 API environment for plugins - Plugins can choose Python version via .python-version file in plugin folder - Existing plugins are fully supported via legacy Python 3.3 API - Many API improvements and additions - see API section for more details - Goto Symbol: - Goto Symbol in Project is now significantly faster on huge projects - Icons are now shown next to symbols, indicating the symbol kind - Symbols with 3 characters or less are now indexed
Syntax Definitions: - Added out of the box support for TypeScript, JSX and TSX - thanks to Thomas Smith - Added ability to "branch" within syntax definitions, for non-deterministic or multi-line constructs - Many syntax highlighting improvements, including significant improvements to: - Erlang, with thanks to deathaxe - Significantly improved load times, match times and reduced cache size on disk - embed is now lazy loaded, resulting in much higher performance for syntaxes like markdown - Added branch and fail for non-deterministic parsing - Added version: 2 to fix edge cases while retaining backwards compatibility - Added extends to inherit from another syntax definition. Multiple inheritance is supported, provided all parents have the same base syntax - Added hidden_extensions - Allow using pop alongside push/set/embed/branch - Fixed a performance issue with bounded repeats in regular expressions - Syntax tests can now assert that reindent is working as expected - Syntax tests can now assert that symbols are indexed - Prevent infinite include loops via with_prototype - Fixed a number of scope related bugs - Fixed some regex capture related bugs - Added more information to the Show Scope Name popup
OS Compatibility: The following operating systems are no longer supported as a result of adding Python 3.8: - OS X 10.7 - OS X 10.8 - Windows XP - Windows Vista
Platform Integration: - Added automatic dark/light theme and color scheme switching, based on OS theme changes - subl - can now be used to read from stdin on all platforms - Windows will remember their Virtual Desktop/Space/Workspace, controlled by the remember_workspace setting - Scroll bars now follow platform conventions when clicking on them. Configurable using Scroll Bar.sublime-mousemap - Mac: Releases use universal binaries with Apple Silicon support - Mac: Updated icon to follow macOS 11 style - Mac: Windows will now stay maximized when using Mac window tabs - Mac: Fix various issues with the wrong cursor being used - Linux: ARM64 builds are now available - Linux: Text drag and drop is now supported - Linux: Added proper support for Wayland - Linux: Touch screen events are now handled - Linux: Better support for copy+paste with other applications that don't support utf8 text - Linux: Native file dialogs like those for KDE will be used when configured - Windows: IME preview and multi-select support - Windows, Linux: Added support for custom title bars - Windows, Linux: Use vsync for animations instead of a fixed 60hz - Mac, Linux: Improved compatibility with some keyboard layouts - Application Behavior: - Added Safe Mode, to simulate a clean install. Enabled by passing --safe-mode on the command line or holding shift+alt/option at startup on Windows/macOS respectively - Added Help/Report a Bug to link to our public issue tracker - Added options to hot_exit setting to control behavior when the last window is closed - Fixed a possible case where an update loses the current session - Settings containing a UTF-8 BOM will no longer fail to load - Added support for previewing TGA and PSD images - Added close_deleted_files setting to control behavior of session restoration when files have been deleted on disk - Popup windows now use virtual windows for improved performance - Improved performance when loading files with very long lines - Improved rendering performance on very long lines - Improved performance with large session files - Data directories have dropped the "3", though if a "3" directory still exists it will be used - Mac: Quick Switch Project now works without any windows open - Mac, Linux: The cache and index are now located in the proper location (~/.cache and ~/Library/Caches respectively)
Auto Complete: - Typing the full tab trigger of a snippet will move it to the top of the results - Manually typing in the only available completion will hide the auto complete popup - .sublime-completion files can now specify annotation, kind and details - Ranking quality improvements - Improved behavior of completions starting with non-word characters - auto_complete_trailing_symbols is now disabled by default - cancelCompletion will no longer prevent manual invocation - Added the auto_complete_when_likely setting - Added auto_complete_preserve_order setting - Added auto_complete_include_snippets_when_typing setting - Added auto_complete_use_index setting - Added auto_complete_use_history setting to control if previous choices are automatically selected - Running the auto_complete command when auto complete is already showing will re-query plugins for results - auto_complete_selector now applies to the position before the just-typed in character, matching auto_complete_triggers
Input Handling: - Modifier key taps can now be used as part of a key binding. For example, ["ctrl", "ctrl"] will trigger when Ctrl is pressed twice without pressing any other keys in between - Linux: AltGr can now be used in key bindings via altgr - Linux: Added a workaround for a touchscreen driver bug, which would cause right click and mouse scrolling to stop working - Linux: When the menu is hidden, pressing alt will show it - Mac: Fix Pinyin input - Mac: Keypad keys can now be bound to as expected - Mac: Added key bindings for macOS application tabs - Windows, Linux: Hide mouse cursor when typing. Controlled via hide_pointer_while_typing setting - Windows, Linux: Fixed being unable to bind Ctrl+Break
Editor Control: - Added File/Print, which prints via a browser - Added Edit/Copy as HTML - Build systems now use new annotations functionality instead of phantoms, reducing re-flow - Undo history is preserved in the session - Comments and layout are preserved when programmatically editing preferences - Caret blinking is disabled by default. Set caret_style setting to smooth for previous behavior - Improved automatic indentation detection - Added relative line numbers, controlled by the relative_line_numbers setting - Added setting scroll_context_lines - Added setting hide_pointer_while_typing - Added setting control_character_style - Added Project/Recent/Remove Deleted - Added chain command to run multiple commands in series - switch_file command now handles filenames with compound extensions - The scroll_past_end setting now supports customizing the scroll distance using numbers from 0.0 to 1.0 - Double-clicking a semi-transient sheet's tab will now fully open the sheet - trim_trailing_white_space_on_save can now be set to "not_on_caret" - trim_trailing_white_space_on_save now trims only newly inserted trailing whitespace by default. Controlled via trim_only_modified_white_space setting - Expanded draw_white_space setting, supporting leading and trailing white space - Unicode white space characters, such as the zero width no-break space, are now drawn as hex values. Controlled via draw_unicode_white_space setting - Fixed spelling correction to support languages with upper case characters after start of word - Added commands to simplify customizing the active theme or color scheme - Quick Switch Project will open the selected project in a new window if Ctrl (Cmd on Mac) is held down - Added wrap_width_style preference - Added console_max_history_lines - Added additional settings to control the status bar: show_sidebar_button, show_indentation and show_syntax - Console now uses Python syntax highlighting by default - Added Central European (Mac) encoding support - Key Bindings: Join Lines is now on Ctrl+Shift+J / Cmd+Shift+J - Key Bindings: Expand Selection to Indentation is no longer bound by default - Key Bindings: Ctrl+J / Cmd+J is now used as a prefix for sequential key bindings, similar to Ctrl+K / Cmd+K - Code Folding: fixed some edge-case incorrect behaviors - Linux: Added support for alternate font weight names - Linux: Selection is no longer cleared when another application makes a selection - Linux: Added Ctrl+Space to trigger Auto Complete - Linux, Windows: Added Alt+Shift+Left Mouse Button as an alternative column selection binding - Linux, Windows: Added Shift+F10 key binding to open the context menu - Text Commands: - Macros now record Find commands - Reworked Jump Back and Jump Forward commands - Improved behavior of Wrap Paragraph - Improved behavior of Swap Lines - Added Revert Diff Hunk - Added Selection/Expand Selection as a general mechanism to expand the selection - Selection/Split into Lines will now split a selection into words if the selection doesn't contain any newlines - Show a sum in the status bar when there are multiple selections and all of them are numbers - set_file_type command now accepts "scope:" prefixed syntax names - Fixed sort_lines replacing unicode newlines with regular ones - Snippets: - Added auto_complete_include_snippets setting, for disabling auto complete integration - Added ignored_snippets setting, for disabling default snippets - Indexing (Goto Definition): - Files ignored by .gitignore are not indexed by default. Controlled via index_exclude_gitignore setting - Files without known extensions are no longer indexed by default. Controlled via index_skip_unknown_extensions setting - Improved behavior with constantly changing files - Significantly improved load times - Files and Folders: - Saving files is now asynchronous - Improved performance when adding directories with extreme amounts of files - When save_on_focus_lost is enabled, closing an unsaved file will save and close it, instead of prompting to save - Improved behavior of save_on_focus_lost in conjunction with administrator owned files - Added reload_file_on_change setting to control if files are automatically reloaded or not - folder_exclude_patterns and folder_include_patterns now support project-relative paths, by starting the path with // - Folders in the sidebar can be recursively expanded via alt+arrow key - Added preview_on_click setting to support only previewing files on left click - Windows: Fixed Open Containing Folder for UNC paths - Windows: Fixed Save dialog not showing for new files with control characters on the first line - Windows: Fixed Ctrl+Backspace inserting a DEL character when a dialog is open in the background - Linux: Fix recreated directories not working correctly with file change monitoring - Linux: Recursively expanding and collapsing sidebar folders now works with alt or super
Find: - Find results are highlighted on the scroll bar, controlled by highlight_find_results_in_scrollbar - Find in Selection now highlights the area that will be searched - Commands can now be run without the find panel having input focus - Fix keypad enter not working in find panel - Improved find history behavior - Find: Various performance improvements with large files using graceful degradation - Find: Fixed adjacent matches being skipped when find in selection is in use - Find: Fixed find in selection option not being cleared when changing tabs - Find: Selection will no longer be reset after Find All is used when finding in selection - Find: Results are now properly highlighted on Find All when close_find_after_find_all is turned off - Find in Files: Improved performance with large numbers of matches - Find in Files: Can now filter by .gitignore - Find in Files: Added Preserve Case option for replacements - Find in Files: Fix not recursing into directories on networked file systems - Find in Files: Hide rulers by default in find results - Find in Files: Added Find/Cancel Find in Files menu item - Find in Files: Binary file patterns are applied when an explicit folder is given - Find in Files: Using "Find in Folder…" from the sidebar context menu will apply project file filters - Find in Files: Added close_find_after_find_all preference - Find in Files: Added close_find_after_replace_all preference
UI: - Changed default color scheme to Mariana - Added Default Dark theme - Added themed_title_bar setting - Changed file tab style, adding file_tab_style setting - Goto Symbol shows more information about symbols - Definitions hover popup shows more information about symbols - Sheets without input focus are now dimmed when using included themes - Added a New Tab button in the tab bar, and hide_new_tab_button setting - Added show_tab_close_buttons_on_left setting - Added highlight_gutter and highlight_line_number settings - Added the ability to auto hide the menu, tabs, and status bar when typing. See auto_hide_menu and related settings - Window title bar can be controlled by show_rel_path and show_project_first settings - Tab context menu now includes Close Unmodified Files and Close Deleted Files entries - Side bar row highlights now properly reflect the selected tabs - Color Schemes: Added glow font option - Color Schemes: Added support for the underline font style - Color Schemes: Added new property, inactive_selection_border - Color Schemes: Slightly darkened the background of Mariana - Color Schemes: Added support for stippled_underline and squiggly_underline - Color Schemes: .hidden-tmTheme files are now supported by the .sublime-color-scheme convertor - Themes: Included themes use variables extensively, making customization simpler - Themes: Added style property for title_bar element, for better integration with OS "dark modes" - Themes: The tree_row for the file with input focus now gets the attribute highlighted - Themes: The settings key now supports objects, with keys being settings and values being a boolean, string or array of strings - Themes: Added sheet_contents class to text, image and HTML sheets - Themes: Added the background_modifier property for sheet_contents - Themes: Added a number of new attributes to tab_control for richer tab theming - Themes: The highlighted attribute is only applied to the most recently active sheet, rather that the most recently active sheet in each group - Themes: tab_control and sheet_contents classes now synchronize their highlighted and hover attributes - Themes: tooltip controls now support animations to their opacity - Linux: Show sequential key bindings in the menu - Linux: Fixed context menu position being slightly offset
Spell Checking: - Updated dictionaries - Added support for non-utf8 dictionaries - Updated Hunspell for improved suggestions - System dictionaries are now available on Linux - Dictionaries in ~/Library/Spelling are now available on Mac - Rendering: - Properly query glyph extents in order to avoid cutting off large glyphs - Windows, Linux: Added support for per-display subpixel ordering - Mac: Improved window resize performance - Windows: Fixed rendering bug where other applications could cause persistent artifacts via window animations - Windows: Add support for color emoji
API: - Improved coverage of plugin profiling - The cProfile module is now included on Linux - Added HTML sheets, which can be created via window.new_html_sheet() - repr now works as expected - Updated OpenSSL to 1.1.1j - .sublime-commands files now support filtering commands via the "platform" key - Minihtml now handles list-style-type CSS property - circle, square and disc - Minihtml now processes subl: links, running them as commands - Minihtml now supports white-space: nowrap - Improved minihtml rendering performance - EventListener has many new features and bug fixes - on_query_completions() can now - Return suggestions asynchronously - Return command completions - Include symbol kind information - New: on_init() is called once with list of views opened before plugin was loaded - New: on_exit() is called immediately before plugin_host exits, after API is shut down - New: on_text_changed() and on_text_changed_async() provide detailed modification info - New methods: - on_reload() - on_revert() - on_new_window() - on_new_window_async() - on_pre_close_window() - on_pre_move() - on_post_move() - on_post_move_async() - on_new_project() - on_new_project_async() - on_load_project() - on_load_project_async() - on_pre_save_project() - on_post_save_project() - on_post_save_project_async() - on_pre_close_project() - on_associate_buffer() - Fixed on_selection_modified() to not be called twice when left clicking - Fixed on_selection_modified() begin called on non-selection state changes - New TextChangeListener for getting callbacks when a text buffer is changed - Can be dynamically bound to a Buffer using TextChangeListener.attach and TextChangeListener.detach - Methods: - on_text_changed() - on_text_changed_async() - on_revert() - on_revert_async() - on_reload() - on_reload_async() - Sheet has some new methods: - file_name() - group() - close() - is_semi_transient() - Sheet.is_transient - View has a number of changes and improvements - Fixed newly created views not having a valid viewport before being returned to the API - add_regions() now has an annotations parameter, to allow adding a per-region annotation to the buffer. The exec command uses this API for build errors - add_regions() calls that add an underline now have that underline applied to whitespace characters - show() now takes keep_to_left and animate parameters - text_point() and related functions now accept a clamp_column parameter - Added "glow" to style_for_scope() - Added View.rowcol_utf8(), View.rowcol_utf16(), View.text_point_utf8() and View.text_point_utf16() - Added sublime.KEEP_ON_SELECTION_MODIFIED, which can be passed to show_popup() - New: element() returns a string describing widget views (find input, quick panel input, etc) - New: assign_syntax() sets the syntax used in a view, supports Syntax objects, paths and scope selectors - New: syntax() returns the currently set Syntax - New: clones() - New: sheet() and sheet_id() - New: export_to_html() - Window has some changes and improvements: - show_quick_panel now accepts placeholder text, via the placeholder argument - Added sublime.CLEAR_TO_RIGHT and sublime.SEMI_TRANSIENT for use with open_file() - Added the flag sublime.REPLACE_MRU for use with open_file(). When multiple sheets are selected, this flag will cause the opened file to replace the most recently used sheet with the file being opened - Added the flag sublime.WANT_EVENT for use with show_quick_panel(). This will pass an event dict to the on_select callback. The dict will contain the key modifier_keys, which will be a dict that may contain zero or more of the keys: primary, ctrl, super, alt, altgr - open_file now accepts sublime.ADD_TO_SELECTION as a flag - New: selected_sheets(), selected_sheets_in_group() and select_sheets() - New: workspace_file_name() - New: bring_to_front() - sublime.ok_cancel_dialog() and sublime.yes_no_cancel_dialog() now accept an optional title parameter - Added sublime.open_dialog, sublime.save_dialog and sublime.select_folder_dialog - Syntax definitions can be queried via sublime.list_syntaxes(), sublime.find_syntax(), sublime.syntax_from_path(), sublime.find_syntax_by_name(), sublime.find_syntax_by_scope(), and sublime.find_syntax_for_file(). They return Syntax objects - Improved sys.stdout to extend io.TextIOBase - sublime.executable_path(), sublime.packages_path(), sublime.installed_packages_path() and sublime.cache_path() may now be called at import time - Added sublime.SymbolRegion and sublime.SymbolLocation with corresponding methods on View and Window - Fix a bug with popup being stuck open when a popup is shown in the hide event handler of another popup - Added open_project_or_workspace command - append command has new, optional disable_tab_translation argument - Added modifier_keys to event dicts when commands are invoked via a menu - Added sublime.DYNAMIC_COMPLETIONS. on_query_completions() can return this flag to indicate that completion results should be re-queried as the user types - Added sublime.INHIBIT_REORDER. Returned by on_query_competions() - CompletionItem now accepts a details parameter, which can include basic HTML - CommandInputHandler now has an initial_selection() method - Added Region.to_tuple and Phantom.to_tuple - Fixed ViewEventListener.on_load_async() sometimes not being called - Added sublime.QuickPanelItem() with support for kind info, annotations and basic minihtml - Plugins may now add selections to the Jump Back history list via the add_jump_record command - Plugins may suppress selections from the Jump Back history list via the jump_ignore_selection region - Plugins may now disable the default HTML and CSS completions - Added Buffer.id() and Buffer.file_name() - The TextInputHandler and ListInputHandler classes may define a method want_event() that returns True to receive an extra parameter, an event dict, when the validate() and confirm() methods are called. The dict will contain the key modifier_keys, which will be a dict that may contain zero or more of the keys: primary, ctrl, super, alt, altgr - Add sublime.ui_info() for high-level information about the UI - Popups will be properly positioned when displayed near the right-hand side of the editor - Popups near the right-hand side of the editor with wrapped lines will now be properly sized - Added ListInputItem so that ListInputHandler objects can provide kind info, annotations and details - Improvements to the API, applied to the new Python 3.8 environment only: - bool(sublime.Selection()) will return False when len() == 0 - sublime.load_binary_resource() now returns bytes instead of bytearray - Added Selection.__iter__() - Added Region.__iter__() - Added Region.__contains__() - Added Settings.to_dict() - Settings can now be treated like a dict - Plugins starting with _ will be ignored, __all__ global will be respected - Events won't be reported until plugin_loaded() has been called - .pyc files can now be imported when contained within .sublime-package files, although they will not be scanned for plugins - The certifi Python package is preinstalled - Significant performance improvements when rapidly printing to the Console - Added sublime.log_control_tree(). When enabled, clicking with ctrl+alt will log the control tree under the mouse to the console - Added sublime.log_fps(). When enabled, the render times are tracked and logged
Added logging status functions: - sublime.get_log_commands() - sublime.get_log_input() - sublime.get_log_build_systems() - sublime.get_log_result_regex() - sublime.get_log_indexing() - sublime.get_log_fps() - sublime.get_log_control_tree() - Logging functions are now toggle when no argument is passed: - sublime.log_commands() - sublime.log_input() - sublime.log_build_systems() - sublime.log_result_regex() - sublime.log_indexing() - sublime.log_fps() - sublime.log_control_tree() - Backwards Compatibility Break: The event parameter passed to commands when a minihtml link is clicked changed from a two-element list to a dict with the keys x and y
Sublime Text 4107 相關參考資料
Download - Sublime Text
4 (Build 4107). 20 May 2021 ... Linux: Added support for alternate font weight names ... Color Schemes: Added support for the underline font style ...
https://www.sublimetext.com
Free Download Sublime Text 4 build 4121 + Patcher
Sublime Text is described to be a shareware cross platform source code editor which has the ability to use the application programming interface of the ...
https://downloaddevtools.com
How do I upgrade to build 4113 from 4107? - Technical Support
TL;DR: Using Ubuntu 21.04, have Sublime Text 4 installed, how do I upgrade to new build 4113? Sublime Test 4 (release 4107) released on 20 ...
https://forum.sublimetext.com
Sublime Text - Text Editing, Done Right
Sublime Text is a sophisticated text editor for code, markup and prose. You'll love the slick user interface, extraordinary features and amazing ...
https://www.sublimetext.com
Sublime Text 4 (4107) with Python 3.9.1 (Miniconda)
Hello all, I have installed Sublime Text 4 (4107) with Python 3.9.1 (Miniconda). Now when I want to execute the Python code directly (CTRL + ...
https://forum.sublimetext.com
Sublime Text 4 Build 4107 - Neowin
2021年5月21日 — Sublime Text is a cross-platform source code editor. It natively supports many programming languages and markup languages, ...
https://www.neowin.net
Sublime Text 4 Build 4107 完美破解方法(无需激活码) - 贱书生
2021年6月28日 — 1、下载并安装Sublime Text 4 Build 4107; 2、 使用浏览器打开网站:https://hexed.it/ 3、打开Sublime Text安装目录选择文件sublime_te.
https://www.cnblogs.com
Sublime Text 4.0 Build 4121 Stable with Key - CRACKSurl
2021年10月27日 — Sublime Text is a sophisticated text editor for code, html and prose. ... Sublime Text 4.0 Build 4107 Stable [Win & Linux] Crack with Key.
https://cracksurl.com
分享最新Sublime Text4 Build 4107注册码(密钥)汉化及完美 ...
2021年5月26日 — 分享一个适用最新Sublime Text4 Build 4107注册码(密钥)及Sublime Text 4完美永久破解方法,需要的朋友可以参考下.
https://m.jb51.net
分享最新Sublime Text4 Build 4107註冊碼(金鑰)漢化及完美 ...
2021年5月28日 — 使用Sublime Text做開發工具的小程式設計客棧夥伴又有版本可以更新啦! 費話不多說先把Sublime Text4註冊碼貼出來.
https://www.796t.com
|