Keybinds now manage upper-case characters, interpreting special keys like F8, CTRL, and SHIFT without regard to case. In context menus, keybinds will appear dimmed when the associated action is currently disabled. A feature has been introduced that allows users to double-click on an empty pane to open a new file.
Git now displays previous commits in Zed, and the Git UI presents only one repository when two subdirectories of a shared repository root are open in Zed. The git panel will now utilize GIT_ASKPASS if it is already configured, rather than replacing it with our own implementation.
Vim has introduced commands such as :ls, :buffers, :options, and :map, while AI has incorporated support for DeepSeek R1 hosted on AWS Bedrock. Resolved issues encompass fuzzy matching discrepancies in the file finder, padding inconsistencies in signature popovers, tooltip behavior of code actions appearing above the code actions menu, mouse cursor visibility during typing in Vim mode, and various workspace-related concerns. The ToggleRightDock feature is activating the assistant panel despite being disabled in the settings.
Zed 0.181.5
Enhancements
- Added support for automatically inserting a newline when hitting enter between opening and closing tags in JSX/TSX ( #27618)
- Improved restoration of editor state when files are reopened (folds, selections, scroll position). ( #27672)
- Added persistent history of command palette usages. ( #26948; thanks KyleBarton)
- Added correct syntax highlighting for use bounds and async closures in Rust. ( #27875)
- Mouse cursor now auto-hides in more circumstances. This behavior can be changed by setting
hide_mouse
toon_typing_and_movement
,on_typing
ornever
.- Improved how upper-case characters are handled in keybinds. "Special" keys such as the function keys,
control
,shift
, etc. are now parsed case-insensitively, so for exampleF8
,CTRL
,SHIFT
are now acceptable alternatives tof8
,ctrl
, andshift
when declaring keybindings. Additionally, upper-case (ASCII) characters will now be converted explicitly toshift
+ the lowercase version of the character, to match the Vim behavior. ( #27813)- Keybinds in context menus will now be dimmed if the corresponding action is currently disabled ( #27693; thanks MrSubidubi)
- Added ability to double click on empty pane to open a new file ( #27521; thanks loczek)
- Added support for project panel hiding gitignored files. Use the
ProjectPanel::ToggleHideGitIgnore
action to toggle the newproject_panel.hide_gitignore
setting. ( #26636; thanks AlvaroParker)Git
- Added the ability to show past commits in Zed. You can view the most recent commit by clicking its message in the commit panel. And when viewing a git blame, you can show any commit by clicking its sha. ( #27636)
- Ensured that only one repository is shown in the git UI when two subdirectories of a common repository root are open in Zed. ( #27884)
- Zed will now use
GIT_ASKPASS
if you already have one set instead of overriding with our own. Fixesgit push
in Coder. ( #27681)- Changed the git panel to prompt before restoring a file. ( #27525)
- Fixed git repositories being added for files outside the project. ( #27894)
- Fixed a bug where the git panel displayed a commit's committer in place of its author. ( #27856)
- Fixed an issue where Git committer was displayed instead of Git author. ( #27628)
Languages
- Python: Improved detection of virtualenvwrapper environments in work trees. ( #26759; thanks elprans)
- Python: Improved highlighting of function parameters in Python. ( #26815; thanks MrSubidubi)
- Python: Improved display of environments in toolchain selector. ( #26741; thanks elprans)
Vim
- Added
:ls
and:buffers
. ( #27797; thanks 5brian)- Added
:options
and:map
. ( #27798; thanks 5brian)- Added
g?
convert toRot13
/Rot47
. ( #27824; thanks 0x2CA)- Fixed
d]}
to not delete the closing brace ( #27786)- Fixed
d}
from the start of the line to not delete the paragraph separator ( #27786)- Fixed
d}
from the middle of the line to not delete the final newline ( #27786)- Fixed
space
on multibyte characters at end of line. ( #27860; thanks mastion)- Fixed
o
andshift-o
in visual block mode. ( #27678; thanks mastion)- Added support for
Terminal && vi_mode
as keybinding context to detect when the terminal is in vi_mode. ( #26236; thanks iyht)AI
- Added support for DeepSeek R1 hosted on AWS Bedrock. ( #27495; thanks 5herlocked)
- Fixed an issue where context servers defined in project settings would not be respected in some scenarios. ( #27633)
Bug Fixes
- Fixed an issue where fuzzy matching in file finder did not properly prioritize matches in file names. ( #27937)
- Fixed padding issue with the signature popovers. ( #27734; thanks WeetHet)
- Fixed code actions tooltip opening on top of code actions menu. ( #27809)
- Fixed the mouse cursor not hiding while typing in Vim mode. ( #27804)
- Fixed a bug where unchanged buffers were marked as conflicting if their files were deleted outside of Zed ( #27701)
- Fixed an issue where accepting LSP snippet completion would insert the label instead of expanding the snippet ( #27630)
- Fixed an issue where
workspace::ToggleRightDock
would open the assistant panel even when disabled via settings ( #27215; thanks MrSubidubi)- Fixed an issue where GitHub Copilot would not install properly if the directory was not present. ( #28178)
- Fixed a panic that could occur when paths changed in the project diff. ( #28364)
- Fixed the git panel sometimes failing to update after pushing to a remote. ( #28327)
- Collaboration: Fixed a bug where AirPods had bad sound quality. ( #27126)
- Collaboration: Fixed a bug where Zed might hang when muting/unmuting/leaving/joining a channel. ( #27126)
- Collaboration: Fixed echo cancellation in calls on Linux. ( #27126)
- Collaboration: Removed dependency on WebRTC.framework on Mac. ( #27126)
- SSH: Fixed remote not restoring when opening for second time. ( #27830)
- SSH: Fixed project panel not opening when opening new SSH remote folder. ( #27830)
- SSH: Fixed remote clients unable to query custom, lsp_ext, commands ( #27775)
- SSH: Fixed trash to work on remotes with no Linux desktop environment configured ( #27682)
- Removed a small gap between the editor gutter and horizontal scrollbar. ( #24887; thanks MrSubidubi)
- Terminal: Fixed an issue where editor theme colors (
text
,background
) were incorrectly being used instead of terminal theme colors (terminal.{foreground,background}
) ( #27617)Linux Video
- Added the ability to specify which GPU Zed uses on Linux by setting the
ZED_DEVICE_ID
environment variable. You can obtain the device ID of your GPU by runninglspci -nn | grep VGA
which will output each GPU on one line like:where the device ID here is08:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA104 [GeForce RTX 3070] [10de:2484] (rev a1)
2484
. This value is in hexadecimal, so to force Zed to use this specific GPU you would set the environment variable like so:Make sure to export the variable if you choose to define it globally in aZED_DEVICE_ID=0x2484
.bashrc
or similarBreaking Changes and Notices