zed/crates
Kirill Bulatov f702efca3e language: Cache buffer syntax highlighting per row chunk
BufferSnapshot::chunks re-ran the tree-sitter highlight query over the
requested range on every call, so scrolling and cursor movement paid the full
query cost per frame.

Highlight captures are now computed once per 50-row chunk (the same RowChunks
that back bracket colorization), flattened into runs of capture-id stacks, and
kept in a cost-budgeted per-buffer LRU (10MB). Runs resolve through the
current HighlightMap at read time, so theme changes need no invalidation;
edits and reparses drop the cache through the existing TreeSitterData swap.
Chunks spanning more than 64KB bypass the cache and fall back to direct
querying, so files with giant lines behave as before.

New editor_render_highlighted and editor_render_highlighted_minimap benches
move the cursor through a generated 10K-line Rust file with real highlighting,
with and without the minimap; ZED_DISABLE_HIGHLIGHT_CACHE=1 routes rendering
through the pre-existing direct-query path for comparison.
2026-08-21 15:59:41 +02:00
..
acp_thread Use Duration to improve type safety and unit correctness (#62969) 2026-08-21 07:28:05 +00:00
acp_tools Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
action_log git: Add diff_base setting for showing changes since the default branch (#61501) 2026-07-31 19:57:13 +00:00
activity_indicator Make file scanner less eager in non-git-tracked directory trees (#62583) 2026-08-13 17:07:06 +00:00
agent Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
agent_servers Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
agent_settings Fix the git_gutter_width setting (#62704) 2026-08-18 12:40:18 +00:00
agent_skills
agent_ui agent_ui: Fix inline assistant when reasoning precedes tool use (#61220) 2026-08-20 11:48:31 +00:00
ai_onboarding Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
anthropic anthropic: Handle additional API error codes (#62984) 2026-08-21 05:38:56 +00:00
askpass Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
assets
audio Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
auto_update Preserve --user-data-dir across restarts (#62022) 2026-08-19 14:32:19 +00:00
auto_update_helper Preserve --user-data-dir across restarts (#62022) 2026-08-19 14:32:19 +00:00
auto_update_ui Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
aws_http_client
bedrock Fix Bedrock effort and regional routing (#61597) 2026-07-27 15:59:19 +00:00
benchmarks language: Cache buffer syntax highlighting per row chunk 2026-08-21 15:59:41 +02:00
breadcrumbs
buffer_diff Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
call Bump rustc to 1.97 (#62395) 2026-08-09 22:29:52 +00:00
channel Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
cli cli: Fix Flatpak launcher argument ordering (#61577) 2026-08-20 16:37:31 +00:00
client Bump rustc to 1.97 (#62395) 2026-08-09 22:29:52 +00:00
clock
cloud_api_client cloud_api_client: Move spawn native websocket to the background (#62874) 2026-08-19 14:07:46 +00:00
cloud_api_types extensions_ui: Move logic to render extension card details into ExtensionCard component (#61850) 2026-07-30 14:55:00 +00:00
cloud_llm_client cloud_llm_client: Add Baseten language model provider (#62950) 2026-08-20 17:53:44 +00:00
codestral Add configurable inline completion debounce timeout (#61568) 2026-08-20 16:42:42 +00:00
collab Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
collab_ui Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
collections
command_palette Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
command_palette_hooks
component
component_preview Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
context_server Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
copilot Add configurable inline completion debounce timeout (#61568) 2026-08-20 16:42:42 +00:00
copilot_chat copilot_chat: Remove dependency on zed_credentials_provider (#62208) 2026-08-05 13:42:28 +00:00
copilot_ui copilot: Use separate authentication paths for edit prediction and chat (#60535) 2026-07-30 10:34:16 +00:00
crashes crashes: Capture glibc's abort diagnostic in crash reports (#60624) 2026-07-14 21:47:47 +00:00
credentials_provider Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
dap Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
dap_adapters Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
db
debug_adapter_extension
debugger_tools
debugger_ui Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
deepseek deepseek: Support low reasoning effort for V4 models (#62577) 2026-08-14 09:38:52 +00:00
dev_container Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
diagnostics Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
docs_preprocessor Bump rustc to 1.97 (#62395) 2026-08-09 22:29:52 +00:00
edit_prediction Add configurable inline completion debounce timeout (#61568) 2026-08-20 16:42:42 +00:00
edit_prediction_cli Use Duration to improve type safety and unit correctness (#62969) 2026-08-21 07:28:05 +00:00
edit_prediction_context Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
edit_prediction_metrics Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
edit_prediction_types Add configurable inline completion debounce timeout (#61568) 2026-08-20 16:42:42 +00:00
edit_prediction_ui Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
editor Use Duration to improve type safety and unit correctness (#62969) 2026-08-21 07:28:05 +00:00
editor_benchmarks
encoding_selector a11y: Landmarks and menu improvements (#60397) 2026-07-13 16:37:28 +00:00
env_var
etw_tracing
eval_cli Bump rustc to 1.97 (#62395) 2026-08-09 22:29:52 +00:00
eval_utils Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
explorer_command_injector explorer_command_injector: Fix localized Windows context menu title (#60634) 2026-08-19 16:51:32 +00:00
extension Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
extension_api Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
extension_cli Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
extension_host Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
extensions_ui Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
feature_flags Remove project panel undo and redo feature flag (#62124) 2026-08-04 15:35:05 +00:00
feature_flags_macros
feedback
file_finder workspace: Persist recent navigation history across sessions (#55034) 2026-08-20 11:27:03 +00:00
file_icons Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
fs Deduplicate worktree entries from LSP paths with mismatched casing (#61392) 2026-08-20 11:19:14 +00:00
fs_benchmarks
fuzzy fuzzy: Remove util dependency (#61933) 2026-07-30 13:24:19 +00:00
fuzzy_nucleo fuzzy_nucleo: Remove util dependency (#61929) 2026-07-30 12:59:16 +00:00
git Added Tracked , Staged options to stash (#62254) 2026-08-18 05:36:16 +00:00
git_hosting_providers Bump rustc to 1.97 (#62395) 2026-08-09 22:29:52 +00:00
git_ui Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
git_ui_core Render control characters in tab titles and project panel entries (#62875) 2026-08-19 21:10:56 +00:00
go_to_line Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
google_ai google_ai: Add Gemini 3.7 Flash (#62670) 2026-08-17 08:28:00 +00:00
gpui gpui: Make the Wayland render loop demand-driven (#60690) 2026-08-21 09:43:16 +00:00
gpui_apple Extract shared Apple renderer from gpui_macos (#62649) 2026-08-14 19:53:25 +00:00
gpui_linux gpui: Make the Wayland render loop demand-driven (#60690) 2026-08-21 09:43:16 +00:00
gpui_macos gpui_macos: Fix fullscreen behavior on non-macOS and after restart (#62819) 2026-08-19 14:46:01 +00:00
gpui_macros Unify Render and RenderOnce into View (#58087) 2026-07-08 15:52:48 +00:00
gpui_platform gpui: Webgl backend (#62165) 2026-08-04 15:53:09 +00:00
gpui_shared_string Properly measure invisible character replacement (#62478) 2026-08-14 09:35:59 +00:00
gpui_tokio
gpui_util gpui: Add track_caller to gpui_util::log_err (#62538) 2026-08-12 18:44:06 +00:00
gpui_web gpui: Make the Wayland render loop demand-driven (#60690) 2026-08-21 09:43:16 +00:00
gpui_wgpu Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
gpui_windows Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
grammars Add Python runnable for __name__ in ("__main__",) pattern (#58911) 2026-08-19 22:16:44 +00:00
html_to_markdown
http_client http_client: Bound GitHub release requests (#62175) 2026-08-11 15:16:03 +00:00
http_client_tls
http_proxy agent: Sandbox DNS rebinding and redirect cleanup (#60941) 2026-07-14 15:29:30 +00:00
icons csv_preview: Evolve into tabular data preview (#60768) 2026-08-14 15:58:14 +00:00
image_viewer Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
input_latency_ui gpui: Unify performance tracking under the profiler feature (#62496) 2026-08-14 16:33:25 +00:00
inspector_ui Implement inspector flag (#62920) 2026-08-20 22:09:43 +00:00
install_cli
journal Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
json_schema_store Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
keymap_editor Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
language language: Cache buffer syntax highlighting per row chunk 2026-08-21 15:59:41 +02:00
language_core language: Cache buffer syntax highlighting per row chunk 2026-08-21 15:59:41 +02:00
language_extension Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
language_model Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
language_model_core cloud_llm_client: Add Baseten language model provider (#62950) 2026-08-20 17:53:44 +00:00
language_models Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
language_models_cloud cloud_llm_client: Add Baseten language model provider (#62950) 2026-08-20 17:53:44 +00:00
language_onboarding
language_selector language: Refactor available_languages into its own struct (#61388) 2026-07-23 11:22:43 +00:00
language_tools markdown: Cache code block syntax highlighting at parse time instead of re-highlighting every frame 2026-08-21 13:11:42 +02:00
languages bash: Hook up workspace configuration for bash-language-server (#57487) 2026-08-19 17:27:34 +00:00
line_ending_selector a11y: Landmarks and menu improvements (#60397) 2026-07-13 16:37:28 +00:00
livekit_api Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
livekit_client Stop bundling GLib in Linux release archives (#61593) 2026-08-20 10:20:14 +00:00
llama_cpp Add llama.cpp as a language model provider (#59964) 2026-06-29 13:24:33 +00:00
lmstudio lmstudio: Fix context wheel by including token usage in streaming responses (#57861) 2026-07-10 15:32:21 +00:00
lsp Bump rustc to 1.97 (#62395) 2026-08-09 22:29:52 +00:00
lsp_locations Respect lsp_results_location for declaration and type definition (#61060) 2026-08-20 11:17:57 +00:00
markdown markdown: Cache code block syntax highlighting at parse time instead of re-highlighting every frame 2026-08-21 13:11:42 +02:00
markdown_preview Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
media Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
menu
mermaid_render Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
migrator Fix the git_gutter_width setting (#62704) 2026-08-18 12:40:18 +00:00
miniprofiler_ui Use Duration to improve type safety and unit correctness (#62969) 2026-08-21 07:28:05 +00:00
mistral Add reasoning effort support for Mistral models (#61393) 2026-07-21 14:51:27 +00:00
multi_buffer Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
net Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
node_runtime Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
notifications Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
oauth_callback_server
ollama
onboarding Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
open_ai open_ai: Classify Responses API send failures as transport errors (#62660) 2026-08-18 03:20:44 +00:00
open_path_prompt Fix project path handling when connecting from Unix to Windows remotes (#62038) 2026-08-19 12:16:37 +00:00
open_router agent: Share compatible Chat Completions infrastructure (#62652) 2026-08-14 22:42:27 +00:00
openai_subscribed Use Duration to improve type safety and unit correctness (#62969) 2026-08-21 07:28:05 +00:00
opencode agent: OpenCode model updates (+6 Go, +7/-1 Zen, removed Free) (#61199) 2026-08-19 11:07:38 +00:00
outline outline: Add preview pane to buffer symbols (#61069) 2026-07-17 11:41:08 +00:00
outline_panel Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
panel
path Fix project path handling when connecting from Unix to Windows remotes (#62038) 2026-08-19 12:16:37 +00:00
paths Split out RelPath into a separate crate (#61029) 2026-07-15 08:33:25 +00:00
picker Render control characters in tab titles and project panel entries (#62875) 2026-08-19 21:10:56 +00:00
picker_preview pickers: Remove picker::ToMultiBuffer action we did not land (#60979) 2026-07-14 17:18:23 +00:00
platform_title_bar gpui_macos: Add simple fullscreen mode that covers the notch (#60020) 2026-08-18 07:00:34 +00:00
prettier
project Use Duration to improve type safety and unit correctness (#62969) 2026-08-21 07:28:05 +00:00
project_benchmarks git_ui: Dismiss askpass prompts when requests end (#61292) 2026-08-18 10:02:20 +00:00
project_panel project_panel: Remove directories created by rename on undo (#60082) 2026-08-20 11:25:47 +00:00
project_symbols language: Refactor available_languages into its own struct (#61388) 2026-07-23 11:22:43 +00:00
prompt_store
proto Added Tracked , Staged options to stash (#62254) 2026-08-18 05:36:16 +00:00
proxy_handshake client: Extract proxy handshakes into a new proxy_handshake crate (#61427) 2026-07-23 22:46:06 +00:00
recent_projects Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
refineable
release_channel release_channel: Allow compile time overrides that don't use include_str! (#61731) 2026-07-27 18:20:35 +00:00
remote git_ui: Dismiss askpass prompts when requests end (#61292) 2026-08-18 10:02:20 +00:00
remote_connection git_ui: Dismiss askpass prompts when requests end (#61292) 2026-08-18 10:02:20 +00:00
remote_server Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
repl Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
reqwest_client Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
rope Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
rpc project_panel: Add remote support for undo/redo system (#59709) 2026-07-16 09:41:21 +00:00
sandbox agent: Fix NTFS warning breaking terminal tool when WSL not available (#62049) 2026-08-03 11:53:30 +00:00
scheduler treesitter: Worker-pinned treesitter parsing (#62784) 2026-08-18 16:55:09 +00:00
schema_generator Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
search Use Duration to improve type safety and unit correctness (#62969) 2026-08-21 07:28:05 +00:00
session project: Create LSP file watcher on the background (#60530) 2026-07-07 11:48:14 +00:00
settings Fix the git_gutter_width setting (#62704) 2026-08-18 12:40:18 +00:00
settings_content settings_content: Add OpenAI subscription provider autocomplete (#62989) 2026-08-21 09:48:51 +00:00
settings_json Show error toast on startup for malformed tasks (#62387) 2026-08-10 16:42:30 +00:00
settings_macros
settings_profile_selector
settings_ui settings_ui: Add Clear button to the search field (#56033) 2026-08-20 21:30:49 +00:00
shell_command_parser
sidebar gpui_macos: Add simple fullscreen mode that covers the notch (#60020) 2026-08-18 07:00:34 +00:00
snippet snippet: Preserve escaped characters in non-default choice options (#61313) 2026-07-20 11:17:43 +00:00
snippet_provider
snippets_ui snippets: Strip path separators from language snippet file names (#61421) 2026-07-23 04:49:39 +00:00
sqlez
sqlez_macros Bump rustc to 1.97 (#62395) 2026-08-09 22:29:52 +00:00
streaming_diff
sum_tree Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
svg_preview Fix preview button acting on the focused editor instead of its own pane (#61218) 2026-07-20 04:08:28 +00:00
syntax_theme
system_specs
tab_switcher git: Add diff_base setting for showing changes since the default branch (#61501) 2026-07-31 19:57:13 +00:00
tabular_data_preview Render control characters in tab titles and project panel entries (#62875) 2026-08-19 21:10:56 +00:00
task task: Support path property on VS Code npm tasks (#62044) 2026-08-18 07:58:21 +00:00
tasks_ui Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
telemetry Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
telemetry_events
terminal Use Duration to improve type safety and unit correctness (#62969) 2026-08-21 07:28:05 +00:00
terminal_view Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
text Send correct line endings to language servers (#59941) 2026-08-12 18:14:22 +00:00
theme Recognize .brushrc files as shell scripts (#62720) 2026-08-17 00:36:13 +00:00
theme_extension
theme_importer theme: Specify color format and pattern in schema (#49136) 2026-07-29 20:59:24 +00:00
theme_selector Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
theme_settings editor: Fix buffer header context menu line height in multibuffers (#61923) 2026-08-16 11:41:17 +00:00
time_format
title_bar Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
toolchain_selector Bump rustc to 1.97 (#62395) 2026-08-09 22:29:52 +00:00
ui Implement inspector flag (#62920) 2026-08-20 22:09:43 +00:00
ui_input settings_ui: Remove feature flag for AI settings and adjust design (#59860) 2026-07-01 04:25:40 +00:00
ui_macros
ui_prompt
util Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
util_macros
vim Make opening large files use less peak memory (#62748) 2026-08-18 16:59:08 +00:00
vim_mode_setting
watch
web_search Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
web_search_providers Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
which_key Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
windows_resources
workspace workspace: Persist recent navigation history across sessions (#55034) 2026-08-20 11:27:03 +00:00
worktree worktree: Fix global gitignore matching outside the worktree root (#62130) 2026-08-20 12:29:17 +00:00
worktree_benchmarks
x_ai
zed Implement inspector flag (#62920) 2026-08-20 22:09:43 +00:00
zed_actions Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
zed_credentials_provider Switch from cargo-machete to cargo-shear (#62643) 2026-08-20 10:08:48 +00:00
zed_env_vars
zeta_prompt Bump rustc to 1.97 (#62395) 2026-08-09 22:29:52 +00:00
zlog Suppress pet log spam when opening Python projects (#60204) 2026-07-01 15:18:54 +00:00
zlog_settings
ztracing gpui: Map ztracing events to browser performance APIs on web (#62898) 2026-08-20 17:56:02 +00:00
ztracing_macro