# Objective - This PR fixed the `gg` and `ge` motion in Helix mode to match the behavoir from Helix. Fixes #56702 ## Solution - The solution is to add custom handling for the StartOfDocument and EndOfDocument Motions in normal and select mode. For both cases, column 0 is hard coded in the DisplayPoint for the destination of the motion. ## Testing - Did you test these changes? If so, how? Yes, I added unit tests which pass and also manually tested the `gg` and `ge` motions in the new build. - Are there any parts that need more testing? - How can other people (reviewers) test your changes? Is there anything specific they need to know? 1. Enable Helix mode in the settings 2. Open a file with multiple lines 3. Move to the middle of the file 4. Press `gg` and `ge` 5. Cursor should move to start or end of file at column 0 6. Same for Select mode - If relevant, what platforms did you test these changes on, and are there any important ones you can't test? I only tested on Linux (Fedora). Since the changes are not platform specific, I don't think more testing is necessary, but always welcome. ## Self-Review Checklist: - [x] I've reviewed my own diff for quality, security, and reliability - [x] Unsafe blocks (if any) have justifying comments - [x] The content adheres to Zed's UI standards ([UX/UI](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) and [icon](https://github.com/zed-industries/zed/blob/main/crates/icons/README.md) guidelines) - [x] Tests cover the new/changed behavior - [x] Performance impact has been considered and is acceptable Release Notes: - Fixed `gg` and `ge` motions to jump to the first character on the line and match Helix exactly. --------- Co-authored-by: dino <dinojoaocosta@gmail.com>
1 file changedLine totals unavailable