Skip to content

Commit 2ba8ed4

Browse files
committed
add cover-image-alt to book html output
1 parent 8eb707e commit 2ba8ed4

File tree

6 files changed

+29
-2
lines changed

6 files changed

+29
-2
lines changed

src/project/types/book/book-render.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ import {
7575
isMultiFileBookFormat,
7676
isNumberedChapter,
7777
kBookCoverImage,
78+
kBookCoverImageAlt,
7879
} from "./book-shared.ts";
7980
import { bookCrossrefsPostRender } from "./book-crossrefs.ts";
8081
import { bookBibliographyPostRender } from "./book-bibliography.ts";
@@ -148,9 +149,15 @@ export function bookPandocRenderer(
148149
| undefined;
149150

150151
if (coverImage) {
152+
const coverImageAlt =
153+
(file.recipe.format.metadata[kBookCoverImageAlt] ||
154+
bookConfig(kBookCoverImageAlt, project.config)) as
155+
| string
156+
| undefined;
151157
const title = file.recipe.format.metadata[kTitle] || "";
158+
const alt = coverImageAlt ? ` fig-alt="${coverImageAlt}"` : "";
152159
file.executeResult.markdown =
153-
`![](${coverImage} "${title}"){.quarto-cover-image}\n\n` +
160+
`![](${coverImage} "${title}"){.quarto-cover-image${alt}}\n\n` +
154161
file.executeResult.markdown;
155162
}
156163

src/project/types/book/book-shared.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,12 @@ export type BookConfigKey =
2929
| "date"
3030
| "date-format"
3131
| "abstract"
32-
| "cover-image";
32+
| "cover-image"
33+
| "cover-image-alt";
3334

3435
export const kBook = "book";
3536
export const kBookCoverImage = "cover-image";
37+
export const kBookCoverImageAlt = "cover-image-alt";
3638

3739
export interface BookExtension {
3840
// bool extensions are single file by default but can elect to be multi file

src/resources/editor/tools/vs-code.mjs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16356,6 +16356,11 @@ var require_yaml_intelligence_resources = __commonJS({
1635616356
description: "Cover image (used in HTML and ePub formats)"
1635716357
}
1635816358
},
16359+
"cover-image-alt": {
16360+
string: {
16361+
description: "Alternative text for cover image (used in HTML format)"
16362+
}
16363+
},
1635916364
sharing: {
1636016365
maybeArrayOf: {
1636116366
enum: [

src/resources/editor/tools/yaml/web-worker.js

Lines changed: 5 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/resources/editor/tools/yaml/yaml-intelligence-resources.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9335,6 +9335,11 @@
93359335
"description": "Cover image (used in HTML and ePub formats)"
93369336
}
93379337
},
9338+
"cover-image-alt": {
9339+
"string": {
9340+
"description": "Alternative text for cover image (used in HTML format)"
9341+
}
9342+
},
93389343
"sharing": {
93399344
"maybeArrayOf": {
93409345
"enum": [

src/resources/schema/project.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,9 @@
8484
cover-image:
8585
path:
8686
description: "Cover image (used in HTML and ePub formats)"
87+
cover-image-alt:
88+
string:
89+
description: "Alternative text for cover image (used in HTML format)"
8790
sharing:
8891
maybeArrayOf:
8992
enum: [twitter, facebook, linkedin]

0 commit comments

Comments
 (0)