Skip to content

Commit b238aa6

Browse files
committed
Merge remote-tracking branch 'upstream/main' into feat-connect-version-override
2 parents bb4585d + a00c39f commit b238aa6

17 files changed

Lines changed: 323 additions & 79 deletions

.github/CODE_OF_CONDUCT.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,9 @@ Examples of unacceptable behavior include:
3636
* Other conduct which could reasonably be considered inappropriate in a
3737
professional setting
3838
* Providing bad information by copying output from AI assistants
39-
without verifying its validity
39+
without verifying its validity. This _specifically_ includes autonomous agents
40+
from OpenClaw, etc. We consider these account-bannable on first offense.
41+
You have been warned.
4042

4143
## Enforcement Responsibilities
4244

news/changelog-1.9.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,3 +178,4 @@ All changes included in 1.9:
178178
- ([#13997](https://github.com/quarto-dev/quarto-cli/issues/13997)): Fix Windows dart-sass theme compilation failing when Quarto is installed in a path with spaces (e.g., `C:\Program Files\`) and the project path also contains spaces.
179179
- ([#13998](https://github.com/quarto-dev/quarto-cli/issues/13998)): Fix YAML validation error with CR-only line terminators (old Mac format). Documents using `\r` line endings no longer fail with "Expected YAML front matter to contain at least 2 lines".
180180
- ([#14012](https://github.com/quarto-dev/quarto-cli/issues/14012)): Add `fr-CA` language translation for Quebec French inclusive writing conventions, using parenthetical forms instead of middle dots for author labels. (author: @tdhock)
181+
- ([#14032](https://github.com/quarto-dev/quarto-cli/issues/14032)): Add `editor_options` with `chunk_output_type` to YAML schema for autocompletion and validation in RStudio and Positron.

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

Lines changed: 33 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14477,6 +14477,26 @@ var require_yaml_intelligence_resources = __commonJS({
1447714477
},
1447814478
description: "Visual editor configuration"
1447914479
},
14480+
{
14481+
name: "editor_options",
14482+
schema: {
14483+
object: {
14484+
properties: {
14485+
chunk_output_type: {
14486+
enum: [
14487+
"inline",
14488+
"console"
14489+
],
14490+
description: "Determines where chunk output is shown in the editor."
14491+
}
14492+
}
14493+
}
14494+
},
14495+
description: {
14496+
short: "Editor-specific options (used by RStudio and Positron).",
14497+
long: "Editor-specific options that control IDE behavior for this document.\nThese options are used by RStudio and Positron to configure\nper-document editor settings.\n"
14498+
}
14499+
},
1448014500
{
1448114501
name: "zotero",
1448214502
schema: {
@@ -25075,7 +25095,12 @@ var require_yaml_intelligence_resources = __commonJS({
2507525095
"Disambiguating year suffix in author-date styles (e.g. \u201Ca\u201D in \u201CDoe,\n1999a\u201D).",
2507625096
"Manuscript configuration",
2507725097
"internal-schema-hack",
25078-
"List execution engines you want to give priority when determining\nwhich engine should render a notebook. If two engines have support for a\nnotebook, the one listed earlier will be chosen. Quarto\u2019s default order\nis \u2018knitr\u2019, \u2018jupyter\u2019, \u2018markdown\u2019, \u2018julia\u2019."
25098+
"List execution engines you want to give priority when determining\nwhich engine should render a notebook. If two engines have support for a\nnotebook, the one listed earlier will be chosen. Quarto\u2019s default order\nis \u2018knitr\u2019, \u2018jupyter\u2019, \u2018markdown\u2019, \u2018julia\u2019.",
25099+
{
25100+
short: "Editor-specific options (used by RStudio and Positron).",
25101+
long: "Editor-specific options that control IDE behavior for this document.\nThese options are used by RStudio and Positron to configure per-document\neditor settings."
25102+
},
25103+
"Determines where chunk output is shown in the editor."
2507925104
],
2508025105
"schema/external-schemas.yml": [
2508125106
{
@@ -25305,12 +25330,12 @@ var require_yaml_intelligence_resources = __commonJS({
2530525330
mermaid: "%%"
2530625331
},
2530725332
"handlers/mermaid/schema.yml": {
25308-
_internalId: 221789,
25333+
_internalId: 221795,
2530925334
type: "object",
2531025335
description: "be an object",
2531125336
properties: {
2531225337
"mermaid-format": {
25313-
_internalId: 221781,
25338+
_internalId: 221787,
2531425339
type: "enum",
2531525340
enum: [
2531625341
"png",
@@ -25326,7 +25351,7 @@ var require_yaml_intelligence_resources = __commonJS({
2532625351
exhaustiveCompletions: true
2532725352
},
2532825353
theme: {
25329-
_internalId: 221788,
25354+
_internalId: 221794,
2533025355
type: "anyOf",
2533125356
anyOf: [
2533225357
{
@@ -25623,7 +25648,7 @@ function locationString(loc) {
2562325648

2562425649
// ../text.ts
2562525650
function lines(text) {
25626-
return text.split(/\r?\n/);
25651+
return text.split(/\r\n?|\n/);
2562725652
}
2562825653
function* matchAll(text, regexp) {
2562925654
if (!regexp.global) {
@@ -25636,7 +25661,7 @@ function* matchAll(text, regexp) {
2563625661
}
2563725662
function* lineOffsets(text) {
2563825663
yield 0;
25639-
for (const match of matchAll(text, /\r?\n/g)) {
25664+
for (const match of matchAll(text, /\r\n?|\n/g)) {
2564025665
yield match.index + match[0].length;
2564125666
}
2564225667
}
@@ -25822,7 +25847,7 @@ function matchAll2(str2, regex) {
2582225847
return result;
2582325848
}
2582425849
function rangedLines(text, includeNewLines = false) {
25825-
const regex = /\r?\n/g;
25850+
const regex = /\r\n?|\n/g;
2582625851
const result = [];
2582725852
let startOffset = 0;
2582825853
if (!includeNewLines) {
@@ -34695,7 +34720,7 @@ async function breakQuartoMd(src, validate2 = false, lenient = false, startCodeC
3469534720
};
3469634721
const yamlRegEx = /^---\s*$/;
3469734722
const startCodeCellRegEx = startCodeCellRegex || new RegExp(
34698-
"^\\s*(```+)\\s*\\{([=A-Za-z]+)( *[ ,].*)?\\}\\s*$"
34723+
"^\\s*(```+)\\s*\\{([=A-Za-z][=A-Za-z0-9._]*)( *[ ,].*)?\\}\\s*$"
3469934724
);
3470034725
const startCodeRegEx = /^```/;
3470134726
const endCodeRegEx = /^\s*(```+)\s*$/;

src/resources/editor/tools/yaml/all-schema-definitions.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

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

Lines changed: 33 additions & 8 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: 29 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7449,6 +7449,26 @@
74497449
},
74507450
"description": "Visual editor configuration"
74517451
},
7452+
{
7453+
"name": "editor_options",
7454+
"schema": {
7455+
"object": {
7456+
"properties": {
7457+
"chunk_output_type": {
7458+
"enum": [
7459+
"inline",
7460+
"console"
7461+
],
7462+
"description": "Determines where chunk output is shown in the editor."
7463+
}
7464+
}
7465+
}
7466+
},
7467+
"description": {
7468+
"short": "Editor-specific options (used by RStudio and Positron).",
7469+
"long": "Editor-specific options that control IDE behavior for this document.\nThese options are used by RStudio and Positron to configure\nper-document editor settings.\n"
7470+
}
7471+
},
74527472
{
74537473
"name": "zotero",
74547474
"schema": {
@@ -18047,7 +18067,12 @@
1804718067
"Disambiguating year suffix in author-date styles (e.g. “a” in “Doe,\n1999a”).",
1804818068
"Manuscript configuration",
1804918069
"internal-schema-hack",
18050-
"List execution engines you want to give priority when determining\nwhich engine should render a notebook. If two engines have support for a\nnotebook, the one listed earlier will be chosen. Quarto’s default order\nis ‘knitr’, ‘jupyter’, ‘markdown’, ‘julia’."
18070+
"List execution engines you want to give priority when determining\nwhich engine should render a notebook. If two engines have support for a\nnotebook, the one listed earlier will be chosen. Quarto’s default order\nis ‘knitr’, ‘jupyter’, ‘markdown’, ‘julia’.",
18071+
{
18072+
"short": "Editor-specific options (used by RStudio and Positron).",
18073+
"long": "Editor-specific options that control IDE behavior for this document.\nThese options are used by RStudio and Positron to configure per-document\neditor settings."
18074+
},
18075+
"Determines where chunk output is shown in the editor."
1805118076
],
1805218077
"schema/external-schemas.yml": [
1805318078
{
@@ -18277,12 +18302,12 @@
1827718302
"mermaid": "%%"
1827818303
},
1827918304
"handlers/mermaid/schema.yml": {
18280-
"_internalId": 221789,
18305+
"_internalId": 221795,
1828118306
"type": "object",
1828218307
"description": "be an object",
1828318308
"properties": {
1828418309
"mermaid-format": {
18285-
"_internalId": 221781,
18310+
"_internalId": 221787,
1828618311
"type": "enum",
1828718312
"enum": [
1828818313
"png",
@@ -18298,7 +18323,7 @@
1829818323
"exhaustiveCompletions": true
1829918324
},
1830018325
"theme": {
18301-
"_internalId": 221788,
18326+
"_internalId": 221794,
1830218327
"type": "anyOf",
1830318328
"anyOf": [
1830418329
{

src/resources/formats/typst/pandoc/quarto/typst-template.typ

Lines changed: 50 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -61,54 +61,61 @@
6161
}
6262
}
6363

64-
place(top, float: true, scope: "parent", clearance: 4mm)[
65-
#if title != none {
66-
align(center, block(inset: 2em)[
67-
#set par(leading: heading-line-height) if heading-line-height != none
68-
#set text(font: heading-family) if heading-family != none
69-
#set text(weight: heading-weight)
70-
#set text(style: heading-style) if heading-style != "normal"
71-
#set text(fill: heading-color) if heading-color != black
64+
place(
65+
top,
66+
float: true,
67+
scope: "parent",
68+
clearance: 4mm,
69+
block(below: 1em, width: 100%)[
7270

73-
#text(size: title-size)[#title #if thanks != none {
74-
footnote(thanks, numbering: "*")
75-
counter(footnote).update(n => n - 1)
76-
}]
77-
#(if subtitle != none {
78-
parbreak()
79-
text(size: subtitle-size)[#subtitle]
80-
})
81-
])
82-
}
71+
#if title != none {
72+
align(center, block(inset: 2em)[
73+
#set par(leading: heading-line-height) if heading-line-height != none
74+
#set text(font: heading-family) if heading-family != none
75+
#set text(weight: heading-weight)
76+
#set text(style: heading-style) if heading-style != "normal"
77+
#set text(fill: heading-color) if heading-color != black
78+
79+
#text(size: title-size)[#title #if thanks != none {
80+
footnote(thanks, numbering: "*")
81+
counter(footnote).update(n => n - 1)
82+
}]
83+
#(if subtitle != none {
84+
parbreak()
85+
text(size: subtitle-size)[#subtitle]
86+
})
87+
])
88+
}
8389

84-
#if authors != none and authors != () {
85-
let count = authors.len()
86-
let ncols = calc.min(count, 3)
87-
grid(
88-
columns: (1fr,) * ncols,
89-
row-gutter: 1.5em,
90-
..authors.map(author =>
91-
align(center)[
92-
#author.name \
93-
#author.affiliation \
94-
#author.email
95-
]
90+
#if authors != none and authors != () {
91+
let count = authors.len()
92+
let ncols = calc.min(count, 3)
93+
grid(
94+
columns: (1fr,) * ncols,
95+
row-gutter: 1.5em,
96+
..authors.map(author =>
97+
align(center)[
98+
#author.name \
99+
#author.affiliation \
100+
#author.email
101+
]
102+
)
96103
)
97-
)
98-
}
104+
}
99105

100-
#if date != none {
101-
align(center)[#block(inset: 1em)[
102-
#date
103-
]]
104-
}
106+
#if date != none {
107+
align(center)[#block(inset: 1em)[
108+
#date
109+
]]
110+
}
105111

106-
#if abstract != none {
107-
block(inset: 2em)[
108-
#text(weight: "semibold")[#abstract-title] #h(1em) #abstract
109-
]
110-
}
111-
]
112+
#if abstract != none {
113+
block(inset: 2em)[
114+
#text(weight: "semibold")[#abstract-title] #h(1em) #abstract
115+
]
116+
}
117+
]
118+
)
112119

113120
if toc {
114121
let title = if toc_title == none {

0 commit comments

Comments
 (0)