Skip to content

Manuscript projects should support repo-url and repo-actions like book/website projects #14627

Description

@d-morrison

Problem

book and website project types support repo-url and repo-actions out of the box, injecting "Edit this page" / "View source" links into the TOC sidebar and allowing a GitHub icon in the navbar. Manuscript projects do not — the manuscript-schema is declared closed: true with no inheritance from base-website, so these keys are silently ignored even when set in _quarto.yml.

Reproduction

Create a manuscript project (project: type: manuscript) and add:

website:
  repo-url: https://github.com/owner/repo
  repo-actions: [edit, source]

or under format: html::

format:
  html:
    repo-url: https://github.com/owner/repo
    repo-actions: [edit, source]

Neither produces the expected TOC action links or GitHub navbar icon in the rendered HTML.

Expected behavior

Manuscript HTML output should respect repo-url and repo-actions the same way book and website projects do, injecting .toc-actions links ("Edit this page", "View source") into the TOC sidebar.

Workaround

A Lua filter can replicate the behavior by reading repo-url/repo-actions from document metadata and injecting the links via inline JavaScript:

-- reads repo-url and repo-actions from _quarto.yml metadata,
-- injects .toc-actions div and GitHub icon via JS
function Pandoc(doc)
  if not FORMAT:match("html") then return doc end
  -- ... inject <script> that appends .toc-actions to nav#TOC
end

Full example: https://github.com/d-morrison/qmt/blob/main/_repo-links.lua

Root cause (schema)

In share/schema/definitions.yml:

  • book-schema has super: resolveRef: base-website → inherits repo-url, repo-actions, navbar, etc.
  • manuscript-schema has closed: true with no super → none of those keys are recognized.

The fix would be to add super: resolveRef: base-website to manuscript-schema, or to selectively expose repo-url and repo-actions in the manuscript schema.

Environment

  • Quarto version: 1.9.36
  • OS: macOS 14

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestmanuscriptIssues related to manuscript output

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions