Skip to content

docs: document Vim il and al line text objects - #806

Draft
hongyi-chen wants to merge 1 commit into
mainfrom
missing-docs/vim-line-text-objects
Draft

hongyi-chen wants to merge 1 commit into
mainfrom
missing-docs/vim-line-text-objects

Conversation

@hongyi-chen

Copy link
Copy Markdown
Collaborator

What this feature does

Vim mode gained the Neovim 0.13 line text objects, il and al. They work in the input editor, the code editor, and the TUI, and combine with any operator — dil clears a line's content in place, >al indents the whole buffer.

Both Vim reference pages carry a "Text objects" table that presents itself as the complete list, and neither listed l. The al semantics are also the kind of thing a Vim user will guess wrong: following Neovim 0.13, al covers the entire buffer, not the current line plus its newline.

Shipped in v0.2026.09.23.14.34.stable_01 ("Added Neovim 0.13 al and il text objects to Vim mode", warp#16105).

Worthiness verdict

Gate 1, outcome: update existing pages. il and al are 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.md for 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_line takes the current line and trims leading and trailing spaces and tabs, returning None when nothing is left — hence the no-op on a blank line.
  • vim_all_lines returns 0..buffer.len(), the entire buffer.
  • TextObjectType::Line is dispatched charwise for Inner and extended linewise for Around (app/src/code/editor/model.rs:3345-3348, 3439-3443).
  • Counts are unsupported, matching Neovim 0.13.

No content design plan: this is adding missing entries to an existing reference table, which .agents/references/content-design-plan.md lists as a skip.

Changes

  • terminal/editor/vim.mdx — l row plus one sentence on the il / al semantics.
  • 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 build passes — 389 Markdown docs, 391 HTML files.
  • style_lint.py --changed reports 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

Co-Authored-By: Warp <agent@warp.dev>
@vercel

vercel Bot commented Sep 30, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
docs Ready Ready Preview Sep 30, 2026 5:22pm UTC

Request Review

@cla-bot cla-bot Bot added the cla-signed label Sep 30, 2026
@hongyi-chen hongyi-chen added the warpy-factory Opened by the Warp factory agents label Sep 30, 2026 — with Warp Agent Staging

Copy link
Copy Markdown
Collaborator Author

This PR was generated with Warp.

Comment @warp-agent on this PR to send it follow-up work.

This branch was successfully deployed

1 active deployment
Preview — eb227bb5 Deployed Sep 30, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla-signed warpy-factory Opened by the Warp factory agents

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant