-
Notifications
You must be signed in to change notification settings - Fork 615
docs: surface headingId (and bookmark/named-range anchors) in headings/paragraphs output for deep-linking #819
Copy link
Copy link
Closed
Labels
P2Normal priority bug or improvement with limited blast radius.Normal priority bug or improvement with limited blast radius.clawsweeper:linked-pr-openClawSweeper found an open linked pull request for this issue.ClawSweeper found an open linked pull request for this issue.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.impact:otherThis issue has meaningful maintainer-visible impact outside the owned taxonomy.This issue has meaningful maintainer-visible impact outside the owned taxonomy.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.Very strong issue quality with high-confidence source-level or clear reproduction.
Metadata
Metadata
Assignees
Labels
P2Normal priority bug or improvement with limited blast radius.Normal priority bug or improvement with limited blast radius.clawsweeper:linked-pr-openClawSweeper found an open linked pull request for this issue.ClawSweeper found an open linked pull request for this issue.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.ClawSweeper does not recommend queueing a new automated fix PR for this issue.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.ClawSweeper found a high-confidence source-level issue reproduction.impact:otherThis issue has meaningful maintainer-visible impact outside the owned taxonomy.This issue has meaningful maintainer-visible impact outside the owned taxonomy.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.Very strong issue quality with high-confidence source-level or clear reproduction.
Type
Fields
Give feedbackNo fields configured for issues without a type.
Problem
The Google Docs API exposes each heading paragraph's auto-generated anchor id at
paragraph.paragraphStyle.headingId— this is exactly what...#heading=h.xxxxdeep links resolve to. Butgog docs headings listandgog docs paragraphs list(both-pand--json) omit it. Without it there is no way to build a deep link to a specific heading from gog output alone; you have to drop down to a raw Docs API client (documents.get(includeTabsContent=true)) just to read a field gog already has in hand.Request
Surface
headingIdin:gog docs headings list— per-heading object (at minimum in--json)gog docs paragraphs list— per-paragraph object, when the paragraph carries oneAdjacent (same deep-linking use case)
The same "I have the element but cannot link to it" gap applies to the other anchorable targets the API already returns. Worth covering in one pass:
bookmark/bookmarkIdon a paragraph or text run) — for#bookmark=idlinksdocument.namedRanges)Surfacing these lets a caller build any in-document deep link without a second API client.
Repro
Version
gog 0.27.1