Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion src/command/render/output-tex.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ import {
kPdfStandard,
kPdfStandardApplied,
kTargetFormat,
pdfStandardEnv,
} from "../../config/constants.ts";
import { Format } from "../../config/types.ts";
import { asArray } from "../../core/array.ts";
Expand Down Expand Up @@ -90,7 +91,8 @@ export function texToPdfOutputRecipe(
const pdfStandards = asArray(
pandocOptions.format.metadata?.[kPdfStandardApplied] ??
format.render?.[kPdfStandard] ??
format.metadata?.[kPdfStandard],
format.metadata?.[kPdfStandard] ??
pdfStandardEnv(),
) as string[];
if (pdfStandards.length > 0) {
await validatePdfStandards(pdfOutput, pdfStandards, {
Expand Down
7 changes: 5 additions & 2 deletions src/command/render/output-typst.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ import {
kOutputFile,
kPdfStandard,
kVariant,
pdfStandardEnv,
} from "../../config/constants.ts";
import { error, warning } from "../../deno_ral/log.ts";
import { ErrorEx } from "../../core/lib/error.ts";
Expand Down Expand Up @@ -158,7 +159,8 @@ export function typstPdfOutputRecipe(
),
pdfStandard: normalizePdfStandardForTypst(
asArray(
format.render?.[kPdfStandard] ?? format.metadata?.[kPdfStandard],
format.render?.[kPdfStandard] ?? format.metadata?.[kPdfStandard] ??
pdfStandardEnv(),
),
),
};
Expand All @@ -185,7 +187,8 @@ export function typstPdfOutputRecipe(

// Validate PDF against specified standards using verapdf (if available)
const pdfStandards = asArray(
format.render?.[kPdfStandard] ?? format.metadata?.[kPdfStandard],
format.render?.[kPdfStandard] ?? format.metadata?.[kPdfStandard] ??
pdfStandardEnv(),
) as string[];
if (pdfStandards.length > 0) {
await validatePdfStandards(pdfOutput, pdfStandards, {
Expand Down
9 changes: 9 additions & 0 deletions src/config/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,15 @@ export const kKeepTex = "keep-tex";
export const kKeepTyp = "keep-typ";
export const kPdfStandard = "pdf-standard";
export const kPdfStandardApplied = "pdf-standard-applied";

/** Read QUARTO_PDF_STANDARD env var as a fallback for pdf-standard option. */
export function pdfStandardEnv(): string[] | undefined {
const val = Deno.env.get("QUARTO_PDF_STANDARD");
if (val) {
return val.split(",").map((s) => s.trim()).filter((s) => s.length > 0);
}
return undefined;
}
export const kKeepIpynb = "keep-ipynb";
export const kKeepSource = "keep-source";
export const kVariant = "variant";
Expand Down
4 changes: 3 additions & 1 deletion src/format/pdf/format-pdf.ts
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@ import {
kTblCapLoc,
kTopLevelDivision,
kWarning,
pdfStandardEnv,
} from "../../config/constants.ts";
import { warning } from "../../deno_ral/log.ts";
import { asArray } from "../../core/array.ts";
Expand Down Expand Up @@ -326,7 +327,8 @@ function createPdfFormat(

// Handle pdf-standard option for PDF/A, PDF/UA, PDF/X conformance
const pdfStandard = asArray(
format.render?.[kPdfStandard] ?? format.metadata?.[kPdfStandard],
format.render?.[kPdfStandard] ?? format.metadata?.[kPdfStandard] ??
pdfStandardEnv(),
);
if (pdfStandard.length > 0) {
const { version, standards, needsTagging } =
Expand Down
2 changes: 2 additions & 0 deletions tests/docs/smoke-all/2023/11/17/foo/.gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
/.quarto/

**/*.quarto_ipynb
240 changes: 0 additions & 240 deletions tests/docs/smoke-all/2023/12/04/7784/subdir/index.typ

This file was deleted.

2 changes: 2 additions & 0 deletions tests/docs/smoke-all/2024/02/01/issue-8514/.gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
/.quarto/

**/*.quarto_ipynb
3 changes: 2 additions & 1 deletion tests/docs/smoke-all/2024/02/22/8814/.gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
/.quarto/
/_book/
/_book/
**/*.quarto_ipynb
3 changes: 2 additions & 1 deletion tests/docs/smoke-all/2024/02/22/8843/.gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
/.quarto/
/_book/
/_book/
**/*.quarto_ipynb
Loading
Loading