May 2024 Summaries
4 posts from Zed
Filter
Month:
Year:
Post Summaries
Back to Blog
Zed, a code editor, has introduced a feature called Tasks that allows users to execute various commands directly from within the editor, such as Go tests, compilers, or shell scripts. Initially launched in February in version 0.124.7, the feature has been enhanced by developers Piotr, Kirill, and Mikayla, culminating in an impressive iteration in the Zed Preview release v0.136. The feature utilizes Tree-sitter technology to facilitate syntax-aware task-spawning, enabling users to run and rerun tasks efficiently with customizable keybindings and task variables like $ZED_SYMBOL and $ZED_SELECTED_TEXT. Tasks can be predefined using JSON files in project or global settings, and Zed supports language-specific tasks, with extensions able to define their own tasks.json files. The tool's integration with Tree-sitter also allows for the creation of runnables, where users can execute tasks with a simple click, offering an innovative and streamlined way to manage and execute code within Zed.
May 21, 2024
1,884 words in the original blog post.
Zed, an application initially lacking Linux support, has rapidly progressed to a stage where it can now be compiled and run on Linux, marking significant development strides since its open-sourcing in January. Despite being written in Rust, a language known for cross-platform compatibility, Zed faced challenges in achieving Linux support due to its desire for native performance and integration on each platform, necessitating direct interaction with platform-specific APIs. The development involved creating a framework called GPUI to abstract platform differences while allowing deep integration, and the Linux version's progress was accelerated by contributions from the open-source community. Key challenges in developing for Linux included navigating the diversity of Linux distributions, display servers like X11 and Wayland, and rendering technologies, with the eventual solution involving the use of Blade, a rendering solution leveraging Vulkan. The collaborative effort resulted in a working version of Zed on Linux within three months, though some tasks remain for an alpha release, such as addressing remaining todos and implementing system dialogues, with further enhancements planned post-alpha.
May 07, 2024
3,371 words in the original blog post.
In a recent debugging session with the Zed text editor, developers encountered a severe hang issue triggered by the use of git commit, which caused the application to become unresponsive. A CPU profile revealed that the main thread was blocked, and further investigation showed that Zed was spawning an excessive number of git processes due to a new Inline Git Blame feature. This feature inadvertently caused 257 simultaneous git processes to run when the git index changed, leading to significant delays. Additionally, a priority inversion issue was identified, where the main thread's expected wake-up signal was delayed by lower-priority tasks blocked by the git processes. These issues were addressed in version 0.133.7, which also included other performance improvements. The developers encourage users to report any similar issues and invite interested individuals to try Zed or join their team.
May 06, 2024
800 words in the original blog post.
In the art of software development, mastering a text editor is akin to a martial artist perfecting their weapon skills, with precision and intentionality guiding the manipulation of text. This guide serves as a training ground for developers to hone their skills in text navigation and selection, starting with foundational commands and progressing through practical exercises designed to improve text manipulation proficiency. The guide emphasizes the use of the command palette for discovering and learning keyboard shortcuts, encouraging the integration of various cursor navigation and selection commands to perform complex text transformations efficiently. Through challenges of increasing difficulty, users learn to apply these techniques to real-world scenarios, such as standardizing naming conventions and modifying code structures. The exercises are designed to be both educational and entertaining, with solutions provided via screen capture videos and detailed command breakdowns, fostering a deeper understanding of the editor's capabilities. The guide encourages continuous practice to achieve proficiency, offering insights into optimizing workflow and minimizing manual editing tasks. Additionally, it introduces Zed, a text editor available for macOS and Linux, inviting users to explore its features and consider joining the development team.
May 03, 2024
2,391 words in the original blog post.