docs: document Vim il and al line text objects - #806
Draft
hongyi-chen wants to merge 1 commit into
Draft
hongyi-chen wants to merge 1 commit into
hongyi-chen wants to merge 1 commit into
Conversation
Co-Authored-By: Warp <agent@warp.dev>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Collaborator
Author
|
This PR was generated with Warp. Comment |
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


What this feature does
Vim mode gained the Neovim 0.13 line text objects,
ilandal. They work in the input editor, the code editor, and the TUI, and combine with any operator —dilclears a line's content in place,>alindents the whole buffer.Both Vim reference pages carry a "Text objects" table that presents itself as the complete list, and neither listed
l. Thealsemantics are also the kind of thing a Vim user will guess wrong: following Neovim 0.13,alcovers the entire buffer, not the current line plus its newline.Shipped in
v0.2026.09.23.14.34.stable_01("Added Neovim 0.13alandiltext objects to Vim mode", warp#16105).Worthiness verdict
Gate 1, outcome: update existing pages.
ilandalare concrete, nameable bindings, and both pages already have a text-object reference table that is the natural home for them. This follows the calibration precedent in.agents/references/docs-worthiness-criteria.mdfor the Vim<and>operators (warp#14268): a row in an existing table, not a new page.Behavior verified in
crates/vim/src/text_objects/line.rs@7cef787ea:vim_inner_linetakes the current line and trims leading and trailing spaces and tabs, returningNonewhen nothing is left — hence the no-op on a blank line.vim_all_linesreturns0..buffer.len(), the entire buffer.TextObjectType::Lineis dispatched charwise forInnerand extended linewise forAround(app/src/code/editor/model.rs:3345-3348,3439-3443).No content design plan: this is adding missing entries to an existing reference table, which
.agents/references/content-design-plan.mdlists as a skip.Changes
terminal/editor/vim.mdx—lrow plus one sentence on theil/alsemantics.code/code-editor/code-editor-vim-keybindings.mdx— the same, plus the two operator examples, since that page already documents operator composition for>and<.Grouped into one PR because both pages document the same shared Vim implementation and would otherwise diverge.
Verification
npm run buildpasses — 389 Markdown docs, 391 HTML files.style_lint.py --changedreports no new issues on either file.Unverified claims
None. Every claim in the added text comes from the source files listed under Documentation risk.
Documentation risk
Risk: engineering-review-required
Rationale: Adds two Vim text objects to reference tables; behavior verified against the shared Vim crate.
Source files consulted: crates/vim/src/text_objects/line.rs@7cef787ea, app/src/code/editor/model.rs@7cef787ea, app/src/editor/view/model/mod.rs@7cef787ea
Requested engineering reviewers: liliwilson
Engineering review status: pending
Docs override: none