From 72ee150f5c7b3d0b70d6735852797b50308688fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micka=C3=ABl=20Canouil?= <8896044+mcanouil@users.noreply.github.com> Date: Thu, 5 Mar 2026 19:14:34 +0100 Subject: [PATCH 1/2] feat: add Quarto Wizard schema and snippets Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- _extensions/texnative/_schema.yml | 126 +++++++++++++++++++++++++++ _extensions/texnative/_snippets.json | 27 ++++++ 2 files changed, 153 insertions(+) create mode 100644 _extensions/texnative/_schema.yml create mode 100644 _extensions/texnative/_snippets.json diff --git a/_extensions/texnative/_schema.yml b/_extensions/texnative/_schema.yml new file mode 100644 index 0000000..0f9261a --- /dev/null +++ b/_extensions/texnative/_schema.yml @@ -0,0 +1,126 @@ +$schema: https://m.canouil.dev/quarto-wizard/assets/schema/v1/extension-schema.json + +formats: + texnative-pdf: + toc: + type: boolean + default: true + description: Show table of contents. + toc-title: + type: string + default: Contents + description: Title of the table of contents. + cover_page: + type: boolean + default: true + description: Enable generated cover page. + letterhead: + type: boolean + default: true + description: Enable letterhead background. + dark_background: + type: boolean + default: false + description: Use dark background styling. + page_numbers: + type: boolean + default: true + description: Show page numbers. + paragraph_numbers: + type: boolean + default: true + description: Show paragraph numbers before headings. + papersize: + type: string + default: a4 + description: Paper size. + disable_justify: + type: boolean + default: false + description: Disable full text justification. + urlcolor: + type: string + description: URL link color. + linkcolor: + type: string + description: Markdown link color. + colorlinks: + type: boolean + default: true + description: Enable colored links. + letterhead_img: + type: string + description: Light theme letterhead image path. + completion: + type: file + letterhead_img_darkbg: + type: string + description: Dark theme letterhead image path. + completion: + type: file + cover_illustration_img: + type: string + description: Light theme cover illustration image path. + completion: + type: file + cover_illustration_img_darkbg: + type: string + description: Dark theme cover illustration image path. + completion: + type: file + table-header-bgcolor: + type: string + description: Default table header background color (RGB or hex). + table-body-bgcolor: + type: string + description: Default table body background color (RGB or hex). + table-header-txtcolor: + type: string + description: Default table header text color (RGB or hex). + table-body-txtcolor: + type: string + description: Default table body text color (RGB or hex). + table-border-color: + type: string + description: Default table border color (RGB or hex). + table-border-width: + type: number + description: Default table border width in points. + table-cell-padding: + type: number + description: Default table cell padding in points. + table-alignment: + type: string + enum: [left, center, right] + description: Default table alignment. + +options: + data_classification_label: + type: object + description: Data classification label settings for PDF output. + properties: + level: + type: string + description: Selected classification level key. + levels: + type: object + description: Map of level definitions with txt, bgcolor, and txtcolor. + width: + type: string + description: Label width (for example 35mm). + height: + type: string + description: Label height (for example 8mm). + top: + type: string + description: Distance from top page edge. + left: + type: string + description: Distance from left page edge. + txtsize: + type: string + enum: [tiny, scriptsize, footnotesize, small, normalsize, large] + description: Label text size. + border-radius: + type: string + description: Label corner radius (for example 3pt). diff --git a/_extensions/texnative/_snippets.json b/_extensions/texnative/_snippets.json new file mode 100644 index 0000000..5e7bcd7 --- /dev/null +++ b/_extensions/texnative/_snippets.json @@ -0,0 +1,27 @@ +{ + "TexNative format": { + "prefix": "texnative-format", + "body": [ + "format: texnative-pdf", + "filters:", + " - texnative", + "toc: true", + "cover_page: true", + "letterhead: true" + ], + "description": "Insert a basic TexNative PDF setup." + }, + "Data classification label": { + "prefix": "data-label", + "body": [ + "data_classification_label:", + " level: ${1:confidential}", + " levels:", + " confidential:", + " bgcolor: '#ff0000'", + " txtcolor: '#ffffff'", + " txt: CONFIDENTIAL" + ], + "description": "Insert a data classification label configuration block." + } +} From 9b4a7d2ae8a9807ffb9a20201bdd057acaf17759 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micka=C3=ABl=20Canouil?= <8896044+mcanouil@users.noreply.github.com> Date: Thu, 5 Mar 2026 19:20:30 +0100 Subject: [PATCH 2/2] chore: drop redundant prefix --- _extensions/texnative/_snippets.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/_extensions/texnative/_snippets.json b/_extensions/texnative/_snippets.json index 5e7bcd7..adda82d 100644 --- a/_extensions/texnative/_snippets.json +++ b/_extensions/texnative/_snippets.json @@ -1,6 +1,6 @@ { "TexNative format": { - "prefix": "texnative-format", + "prefix": "format", "body": [ "format: texnative-pdf", "filters:",