panache-cli 3.17.1__tar.gz → 3.18.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {panache_cli-3.17.1 → panache_cli-3.18.0}/Cargo.lock +42 -41
- {panache_cli-3.17.1 → panache_cli-3.18.0}/Cargo.toml +5 -5
- {panache_cli-3.17.1 → panache_cli-3.18.0}/PKG-INFO +14 -7
- {panache_cli-3.17.1 → panache_cli-3.18.0}/README.md +13 -6
- {panache_cli-3.17.1 → panache_cli-3.18.0}/build.rs +50 -3
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/CHANGELOG.md +25 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/Cargo.toml +3 -3
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/config.rs +44 -2
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/blocks.rs +95 -134
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/core.rs +22 -11
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/headings.rs +8 -13
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/inline.rs +43 -69
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/inline_layout.rs +40 -36
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/lists.rs +13 -3
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/preserve.rs +15 -29
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/sentence_wrap.rs +1 -1
- panache_cli-3.18.0/crates/panache-formatter/src/formatter/smart.rs +597 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/tables.rs +195 -86
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter.rs +49 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/lib.rs +1 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/CHANGELOG.md +21 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/Cargo.toml +2 -2
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/options.rs +6 -1
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/pandoc_ast.rs +38 -85
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/code_blocks.rs +91 -22
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tables.rs +1 -1
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/lists.rs +101 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/core/blockquotes.rs +9 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/core/list_items.rs +10 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/core.rs +9 -5
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/citations.rs +73 -4
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/core.rs +103 -6
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/inline_ir.rs +65 -6
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/kind.rs +2 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/cli.rs +74 -2
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/config/types.rs +21 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/config.rs +98 -15
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/formatter.rs +3 -0
- panache_cli-3.18.0/src/inspect.rs +116 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/code_block_collector.rs +82 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/execution_context.rs +45 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/external_linters/jarl.rs +24 -17
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/external_linters.rs +48 -6
- panache_cli-3.18.0/src/linter/rules/docs/swallowed-list-marker.md +15 -0
- panache_cli-3.18.0/src/linter/rules/docs/undefined-references.md +15 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/swallowed_list_marker.rs +143 -5
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/undefined_references.rs +125 -27
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/main.rs +99 -23
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/utils.rs +13 -8
- panache_cli-3.17.1/crates/panache-formatter/src/formatter/smart.rs +0 -30
- panache_cli-3.17.1/src/linter/rules/docs/swallowed-list-marker.md +0 -8
- panache_cli-3.17.1/src/linter/rules/docs/undefined-references.md +0 -6
- {panache_cli-3.17.1 → panache_cli-3.18.0}/LICENSE +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/assets/quarto-schema/schema.json +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/README.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/directives.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/blockquotes.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/code_blocks.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/containers.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/document.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/fenced_divs.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/hashpipe.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/indent_utils.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/math/STYLE.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/math/ir.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/math/lower.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/math/printer.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/math/render.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/math.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/metadata.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/paragraphs.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/raw.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/shortcodes.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/table_conversion.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/utils.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/yaml/STYLE.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/yaml/block_map.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/yaml/block_sequence.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/yaml/document.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/yaml/flow.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/yaml/options.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/yaml/scalar.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/formatter/yaml.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/parser.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/syntax.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/utils.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-formatter/src/yaml_engine.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/README.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/build.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/data/math_symbols.json +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/data/unicode-math.LICENSE +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/data/unicode-math.NOTICE +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/grid_layout.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/lib.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/block_dispatcher.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/admonitions.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/blockquotes.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/container_prefix.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/definition_lists.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/fenced_divs.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/figures.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/headings.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/horizontal_rules.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/html_blocks.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/hugo.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/indented_code.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/latex_envs.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/line_blocks.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/lists.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/metadata.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/myst_directives.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/myst_targets.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/paragraphs.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/raw_blocks.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/reference_links.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/blanklines.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/blockquotes.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/code_blocks.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/content_containers.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/definition_lists.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/figures.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/footnote_marker_line.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/fragment_context.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/frame_pinning.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/headings.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/helpers.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/losslessness.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/metadata_guards.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks/tests/tables.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/blocks.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/core/definition_lists.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/core/html_interruptions.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/diagnostics.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/bookdown.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/bracketed_spans.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/code_spans.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/emoji.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/escapes.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/hard_breaks.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/hugo.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/inline_executable.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/inline_footnotes.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/inline_html.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/latex.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/links.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/mark.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/math.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/myst_roles.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/myst_substitutions.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/native_spans.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/raw_inline.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/refdef_map.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/shortcodes.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/sink.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/strikeout.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/subscript.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/superscript.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/svelte.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/tests.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/uri-schemes.csv +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines/wikilinks.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/inlines.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/math.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/reparse.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/utils/attributes.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/utils/chunk_options.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/utils/container_stack.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/utils/continuation.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/utils/helpers.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/utils/inline_emission.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/utils/list_item_buffer.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/utils/marker_utils.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/utils/raw_html.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/utils/text_buffer.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/utils/tree_copy.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/utils/yaml_regions.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/utils.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/verify.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/yaml/cooking.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/yaml/events.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/yaml/model.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/yaml/parser.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/yaml/profile.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/yaml/scanner.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/yaml/validator.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser/yaml.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/parser.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/range_utils.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/semantic/math.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/semantic.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/alerts.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/ast.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/attributes.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/block_quotes.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/blocks.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/chunk_options.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/citations.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/code_blocks.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/code_span.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/consumer.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/crossrefs.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/definitions.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/fenced_divs.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/headings.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/html.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/hugo.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/inlines.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/links.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/lists.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/math.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/myst.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/raw_tex.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/references.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/shortcodes.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/tables.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/yaml.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax/yaml_ast.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/crates/panache-parser/src/syntax.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/pyproject.toml +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/bib/bibtex.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/bib/csl_json.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/bib/csl_yaml.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/bib/index.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/bib/preview.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/bib/ris.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/bib.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/bin/distill_quarto_schema.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/cache.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/config/formatter_presets.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/config/types/schema_helpers.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/diagnostic_renderer.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/directives.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/external_formatters_common.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/external_formatters_sync.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/external_tools_common.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/includes.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/incremental.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/io_context.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lib.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/diagnostics.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/docs.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/external_linters/clippy.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/external_linters/eslint.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/external_linters/jolars.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/external_linters/ruff.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/external_linters/shellcheck.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/external_linters/staticcheck.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/external_linters_sync.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/fix.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/fuzzy.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/index.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/metadata_diagnostics.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/offsets.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/project_index.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/quarto_schema/distill.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/quarto_schema/interp.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/quarto_schema/model.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/quarto_schema/report.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/quarto_schema/value.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/quarto_schema.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/render.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/adjacent_footnote_refs.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/blank_line_in_display_math.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/blank_line_in_inline_footnote.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/chunk_label_spaces.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/citation_keys.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/citation_nonbreaking_space.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/consumer_divergence.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/crossref_as_link_target.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/adjacent-footnote-refs.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/blank-line-in-display-math.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/blank-line-in-inline-footnote.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/chunk-label-spaces.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/citation-keys.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/citation-nonbreaking-space.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/consumer-divergence.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/crossref-as-link-target.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/duplicate-reference-labels.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/duplicate-yaml-anchor.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/empty-list-item.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/empty-values.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/figure-crossref-captions.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/footnote-after-image.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/footnote-ref-in-footnote-def.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/footnote-swallowed-by-bracket.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/heading-eaten-attrs.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/heading-hierarchy.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/heading-strip-comments-residue.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/html-entities.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/html-unclosed-attribute.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/inline-math-line-break.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/link-text-is-url.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/malformed-citation.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/math-syntax.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/missing-chunk-labels.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/quarto-schema-unknown-key.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/quarto-schema.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/reversed-footnote-marker.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/space-before-punctuation.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/stray-fenced-div-markers.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/table-column-count.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/undefined-anchor.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/unknown-emoji-alias.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/unspaced-citation.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/unspaced-list-marker.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/unsupported-metadata-key.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/unused-definitions.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/docs/unused-yaml-anchor.md +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/duplicate_references.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/duplicate_yaml_anchor.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/emoji_aliases.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/empty_list_item.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/empty_values.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/figure_crossref_captions.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/footnote_after_image.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/footnote_ref_in_footnote_def.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/footnote_swallowed_by_bracket.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/heading_eaten_attrs.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/heading_hierarchy.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/heading_strip_comments_residue.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/html_entities.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/html_unclosed_attribute.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/inline_math_line_break.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/link_text_is_url.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/malformed_citation.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/math_content.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/missing_chunk_labels.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/quarto_schema.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/reversed_footnote_marker.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/space_before_punctuation.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/stray_fenced_div_markers.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/table_column_count.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/undefined_anchor.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/unspaced_citation.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/unspaced_list_marker.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/unsupported_metadata_key.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/unused_definitions.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules/unused_yaml_anchor.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/rules.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/runner.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/yaml_anchors.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter/yaml_resolve.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/linter.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/config.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/context.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/conversions.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/dispatch.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/documents.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/global_state.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/code_actions.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/completion.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/configuration.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/diagnostics.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/document_highlight.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/document_links.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/document_symbols.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/file_operations.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/file_rename.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/file_watcher.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/folding_ranges.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/footnote_conversion.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/formatting.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/goto_definition.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/heading_link_conversion.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/hover.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/link_conversion.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/linked_editing_range.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/list_conversion.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/prepare_rename.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/references.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/rename.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/semantic_tokens.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/shortcode_args.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/table_conversion.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/workspace_folders.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers/workspace_symbols.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/handlers.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/helpers.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/line_index.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/navigation.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/symbols.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/task_pool.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/testing.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp/uri_ext.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/lsp.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/metadata/bibliography.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/metadata/citations.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/metadata/project.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/metadata/references.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/metadata/yaml.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/metadata.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/parser.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/range_utils.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/salsa.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/syntax.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/vfs.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/yaml_engine.rs +0 -0
- {panache_cli-3.17.1 → panache_cli-3.18.0}/src/yaml_regions.rs +0 -0
|
@@ -121,9 +121,9 @@ checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53"
|
|
|
121
121
|
|
|
122
122
|
[[package]]
|
|
123
123
|
name = "badness-formatter"
|
|
124
|
-
version = "0.
|
|
124
|
+
version = "0.12.0"
|
|
125
125
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
126
|
-
checksum = "
|
|
126
|
+
checksum = "bc7954f6b8f0fb0571f4a7a933288e2c92a80309298d6b0686b68e3102c3a2dc"
|
|
127
127
|
dependencies = [
|
|
128
128
|
"badness-parser",
|
|
129
129
|
"rowan 0.17.0",
|
|
@@ -131,9 +131,9 @@ dependencies = [
|
|
|
131
131
|
|
|
132
132
|
[[package]]
|
|
133
133
|
name = "badness-parser"
|
|
134
|
-
version = "0.
|
|
134
|
+
version = "0.12.0"
|
|
135
135
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
136
|
-
checksum = "
|
|
136
|
+
checksum = "59890aa9f05b632ce68b2cf5d1efaba0726a9e3afc76ea2df8a7c1aab5fec8b1"
|
|
137
137
|
dependencies = [
|
|
138
138
|
"phf 0.14.0",
|
|
139
139
|
"phf_codegen",
|
|
@@ -294,9 +294,9 @@ dependencies = [
|
|
|
294
294
|
|
|
295
295
|
[[package]]
|
|
296
296
|
name = "clapdown"
|
|
297
|
-
version = "0.
|
|
297
|
+
version = "0.3.1"
|
|
298
298
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
299
|
-
checksum = "
|
|
299
|
+
checksum = "b247c825c52bf1a125ed92810ee82340e304938d4162683c4c4af2fe5e205748"
|
|
300
300
|
dependencies = [
|
|
301
301
|
"clap",
|
|
302
302
|
]
|
|
@@ -557,9 +557,9 @@ dependencies = [
|
|
|
557
557
|
|
|
558
558
|
[[package]]
|
|
559
559
|
name = "fancy-regex"
|
|
560
|
-
version = "0.
|
|
560
|
+
version = "0.20.1"
|
|
561
561
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
562
|
-
checksum = "
|
|
562
|
+
checksum = "7b32c6266c2b14b0db7aa3409d3ee3f0ddda3b1d0279c4ba24fbec18af81d90e"
|
|
563
563
|
dependencies = [
|
|
564
564
|
"bit-set",
|
|
565
565
|
"regex-automata",
|
|
@@ -574,9 +574,9 @@ checksum = "da7c62ceae207dd37ea5b845da6a0696c799f85e97da1ab5b7910be3c1c80223"
|
|
|
574
574
|
|
|
575
575
|
[[package]]
|
|
576
576
|
name = "flate2"
|
|
577
|
-
version = "1.1.
|
|
577
|
+
version = "1.1.11"
|
|
578
578
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
579
|
-
checksum = "
|
|
579
|
+
checksum = "626d4928326b646e70f65ed36fc7cf9f206bdb68a0019ee7c6b4709da4e084c4"
|
|
580
580
|
dependencies = [
|
|
581
581
|
"crc32fast",
|
|
582
582
|
"miniz_oxide",
|
|
@@ -679,9 +679,9 @@ dependencies = [
|
|
|
679
679
|
|
|
680
680
|
[[package]]
|
|
681
681
|
name = "globset"
|
|
682
|
-
version = "0.4.
|
|
682
|
+
version = "0.4.21"
|
|
683
683
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
684
|
-
checksum = "
|
|
684
|
+
checksum = "f98b0d85522dc0a824cfebbc9594ff4a9b289c568bea0370319dfbdf20ccdd2d"
|
|
685
685
|
dependencies = [
|
|
686
686
|
"aho-corasick",
|
|
687
687
|
"bstr",
|
|
@@ -736,9 +736,9 @@ checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39"
|
|
|
736
736
|
|
|
737
737
|
[[package]]
|
|
738
738
|
name = "ignore"
|
|
739
|
-
version = "0.4.
|
|
739
|
+
version = "0.4.34"
|
|
740
740
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
741
|
-
checksum = "
|
|
741
|
+
checksum = "484be5657551d7868d67587df967fb4fcbe9d266a761cc855aaa148fda0b3cc7"
|
|
742
742
|
dependencies = [
|
|
743
743
|
"crossbeam-deque",
|
|
744
744
|
"globset",
|
|
@@ -850,9 +850,9 @@ dependencies = [
|
|
|
850
850
|
|
|
851
851
|
[[package]]
|
|
852
852
|
name = "jsonschema"
|
|
853
|
-
version = "0.
|
|
853
|
+
version = "0.61.0"
|
|
854
854
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
855
|
-
checksum = "
|
|
855
|
+
checksum = "e1324c9bebe052584e96e7c80d2f9cf2d86e1a6d83d621a46932c5636996be18"
|
|
856
856
|
dependencies = [
|
|
857
857
|
"ahash",
|
|
858
858
|
"bytecount",
|
|
@@ -878,23 +878,24 @@ dependencies = [
|
|
|
878
878
|
|
|
879
879
|
[[package]]
|
|
880
880
|
name = "jsonschema-regex"
|
|
881
|
-
version = "0.
|
|
881
|
+
version = "0.61.1"
|
|
882
882
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
883
|
-
checksum = "
|
|
883
|
+
checksum = "84cdf272371326ec8db8ce2608a52635d8edeeaf0189604e2ad627327b79e6db"
|
|
884
884
|
dependencies = [
|
|
885
885
|
"regex-syntax",
|
|
886
886
|
]
|
|
887
887
|
|
|
888
888
|
[[package]]
|
|
889
889
|
name = "jsonschema-value"
|
|
890
|
-
version = "0.
|
|
890
|
+
version = "0.61.1"
|
|
891
891
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
892
|
-
checksum = "
|
|
892
|
+
checksum = "e5e4a7f3b3c19c9cd2aa37937e1704229a0bcb1b446308a148574d56ace0c6ba"
|
|
893
893
|
dependencies = [
|
|
894
894
|
"ahash",
|
|
895
895
|
"bytecount",
|
|
896
896
|
"fraction",
|
|
897
897
|
"getrandom 0.3.4",
|
|
898
|
+
"memchr",
|
|
898
899
|
"num-cmp",
|
|
899
900
|
"num-traits",
|
|
900
901
|
"serde_json",
|
|
@@ -933,9 +934,9 @@ dependencies = [
|
|
|
933
934
|
|
|
934
935
|
[[package]]
|
|
935
936
|
name = "log"
|
|
936
|
-
version = "0.4.
|
|
937
|
+
version = "0.4.35"
|
|
937
938
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
938
|
-
checksum = "
|
|
939
|
+
checksum = "5d15f86d12da44cd8d4ec3c73984537eb7f4cadcb9776a575a0a8a05ca11005c"
|
|
939
940
|
|
|
940
941
|
[[package]]
|
|
941
942
|
name = "lsp-server"
|
|
@@ -1114,7 +1115,7 @@ checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e"
|
|
|
1114
1115
|
|
|
1115
1116
|
[[package]]
|
|
1116
1117
|
name = "panache"
|
|
1117
|
-
version = "3.
|
|
1118
|
+
version = "3.18.0"
|
|
1118
1119
|
dependencies = [
|
|
1119
1120
|
"annotate-snippets",
|
|
1120
1121
|
"assert_cmd",
|
|
@@ -1159,7 +1160,7 @@ dependencies = [
|
|
|
1159
1160
|
|
|
1160
1161
|
[[package]]
|
|
1161
1162
|
name = "panache-formatter"
|
|
1162
|
-
version = "0.
|
|
1163
|
+
version = "0.29.0"
|
|
1163
1164
|
dependencies = [
|
|
1164
1165
|
"badness-formatter",
|
|
1165
1166
|
"insta",
|
|
@@ -1179,7 +1180,7 @@ dependencies = [
|
|
|
1179
1180
|
|
|
1180
1181
|
[[package]]
|
|
1181
1182
|
name = "panache-parser"
|
|
1182
|
-
version = "0.
|
|
1183
|
+
version = "0.35.0"
|
|
1183
1184
|
dependencies = [
|
|
1184
1185
|
"badness-parser",
|
|
1185
1186
|
"entities",
|
|
@@ -1461,9 +1462,9 @@ dependencies = [
|
|
|
1461
1462
|
|
|
1462
1463
|
[[package]]
|
|
1463
1464
|
name = "referencing"
|
|
1464
|
-
version = "0.
|
|
1465
|
+
version = "0.61.1"
|
|
1465
1466
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1466
|
-
checksum = "
|
|
1467
|
+
checksum = "eba9bfd41f0d7d8fbf9c7ed23b788a3f97e9f5d9419be812ff7e08b8dc6b14ec"
|
|
1467
1468
|
dependencies = [
|
|
1468
1469
|
"ahash",
|
|
1469
1470
|
"fluent-uri 0.4.1",
|
|
@@ -1717,9 +1718,9 @@ dependencies = [
|
|
|
1717
1718
|
|
|
1718
1719
|
[[package]]
|
|
1719
1720
|
name = "serde_spanned"
|
|
1720
|
-
version = "1.1.
|
|
1721
|
+
version = "1.1.3"
|
|
1721
1722
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1722
|
-
checksum = "
|
|
1723
|
+
checksum = "9c187e0a369471c550af028cba56d4f4fa2a489ad28151ae95a4d340a2a8b782"
|
|
1723
1724
|
dependencies = [
|
|
1724
1725
|
"serde_core",
|
|
1725
1726
|
]
|
|
@@ -1770,9 +1771,9 @@ checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5"
|
|
|
1770
1771
|
|
|
1771
1772
|
[[package]]
|
|
1772
1773
|
name = "smallvec"
|
|
1773
|
-
version = "1.16.
|
|
1774
|
+
version = "1.16.5"
|
|
1774
1775
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1775
|
-
checksum = "
|
|
1776
|
+
checksum = "149309498a5f7334b12ddae0cad8aba81ce785fe91755068867e017cf98fee46"
|
|
1776
1777
|
|
|
1777
1778
|
[[package]]
|
|
1778
1779
|
name = "smol_str"
|
|
@@ -1892,9 +1893,9 @@ checksum = "650d82e943da333637be9f1567d33d605e76810a26464edfd7ae74f7ef181e95"
|
|
|
1892
1893
|
|
|
1893
1894
|
[[package]]
|
|
1894
1895
|
name = "toml"
|
|
1895
|
-
version = "1.1
|
|
1896
|
+
version = "1.2.1+spec-1.1.0"
|
|
1896
1897
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1897
|
-
checksum = "
|
|
1898
|
+
checksum = "d5755c51863cdac711f1956baf8eb9588e060755f7d3c4c979e70ea1e1f32cd7"
|
|
1898
1899
|
dependencies = [
|
|
1899
1900
|
"indexmap",
|
|
1900
1901
|
"serde_core",
|
|
@@ -1907,9 +1908,9 @@ dependencies = [
|
|
|
1907
1908
|
|
|
1908
1909
|
[[package]]
|
|
1909
1910
|
name = "toml_datetime"
|
|
1910
|
-
version = "1.1.
|
|
1911
|
+
version = "1.1.3+spec-1.1.0"
|
|
1911
1912
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1912
|
-
checksum = "
|
|
1913
|
+
checksum = "173f25c883cd2176a2d8212155638c0a60d484a9d84546d270866f40f56b6e49"
|
|
1913
1914
|
dependencies = [
|
|
1914
1915
|
"serde_core",
|
|
1915
1916
|
]
|
|
@@ -1925,9 +1926,9 @@ dependencies = [
|
|
|
1925
1926
|
|
|
1926
1927
|
[[package]]
|
|
1927
1928
|
name = "toml_writer"
|
|
1928
|
-
version = "1.
|
|
1929
|
+
version = "1.2.0+spec-1.1.0"
|
|
1929
1930
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1930
|
-
checksum = "
|
|
1931
|
+
checksum = "009dbb7700f11c55ef83aebbe4c0e9cf1f1ac0844bd8d6f00dc38f302026e13a"
|
|
1931
1932
|
|
|
1932
1933
|
[[package]]
|
|
1933
1934
|
name = "tracing"
|
|
@@ -1974,9 +1975,9 @@ checksum = "c6f5d3c3b1bf09027a88a6bc961fc00497d651009560b5463668dc81b0fa87a8"
|
|
|
1974
1975
|
|
|
1975
1976
|
[[package]]
|
|
1976
1977
|
name = "unicode-width"
|
|
1977
|
-
version = "0.2.
|
|
1978
|
+
version = "0.2.3"
|
|
1978
1979
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1979
|
-
checksum = "
|
|
1980
|
+
checksum = "ca718471876992059f251e33aafc334346ada08042b7661dd1fe313a9bced557"
|
|
1980
1981
|
|
|
1981
1982
|
[[package]]
|
|
1982
1983
|
name = "utf8parse"
|
|
@@ -1986,9 +1987,9 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
|
|
|
1986
1987
|
|
|
1987
1988
|
[[package]]
|
|
1988
1989
|
name = "uuid"
|
|
1989
|
-
version = "1.29.
|
|
1990
|
+
version = "1.29.1"
|
|
1990
1991
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1991
|
-
checksum = "
|
|
1992
|
+
checksum = "4a06f08a856b009bc7bbaf7d3e79808595d032dd19074c0c2ef26e49e03e6bdc"
|
|
1992
1993
|
dependencies = [
|
|
1993
1994
|
"getrandom 0.4.3",
|
|
1994
1995
|
"js-sys",
|
|
@@ -9,7 +9,7 @@ authors = ["Johan Larsson <johan@jolars.co>"]
|
|
|
9
9
|
|
|
10
10
|
[package]
|
|
11
11
|
name = "panache"
|
|
12
|
-
version = "3.
|
|
12
|
+
version = "3.18.0"
|
|
13
13
|
edition.workspace = true
|
|
14
14
|
rust-version.workspace = true
|
|
15
15
|
# `distill_quarto_schema` is a dev-only vendoring bin (src/bin/); keep bare
|
|
@@ -55,11 +55,11 @@ path = "src/main.rs"
|
|
|
55
55
|
required-features = ["cli"]
|
|
56
56
|
|
|
57
57
|
[dependencies]
|
|
58
|
-
panache-formatter = { path = "crates/panache-formatter", version = "0.
|
|
58
|
+
panache-formatter = { path = "crates/panache-formatter", version = "0.29.0", features = [
|
|
59
59
|
"serde",
|
|
60
60
|
"schema",
|
|
61
61
|
] }
|
|
62
|
-
panache-parser = { path = "crates/panache-parser", version = "0.
|
|
62
|
+
panache-parser = { path = "crates/panache-parser", version = "0.35.0", features = [
|
|
63
63
|
"serde",
|
|
64
64
|
"schema",
|
|
65
65
|
] }
|
|
@@ -95,7 +95,7 @@ similar-asserts = "2.0.0"
|
|
|
95
95
|
insta = { version = "1.47.2", features = ["json"] }
|
|
96
96
|
assert_cmd = "2.2.2"
|
|
97
97
|
predicates = "3.1.4"
|
|
98
|
-
jsonschema = { version = "0.
|
|
98
|
+
jsonschema = { version = "0.61.0", default-features = false }
|
|
99
99
|
|
|
100
100
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
|
|
101
101
|
rayon = "1.10.0"
|
|
@@ -117,7 +117,7 @@ lsp = [
|
|
|
117
117
|
clap = { version = "4.6.1", features = ["derive", "env"] }
|
|
118
118
|
clap_complete = "4.6.0"
|
|
119
119
|
clap_mangen = "0.3.0"
|
|
120
|
-
clapdown = "0.
|
|
120
|
+
clapdown = "0.3.1"
|
|
121
121
|
flate2 = "1.1.9"
|
|
122
122
|
|
|
123
123
|
[package.metadata.deb]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: panache-cli
|
|
3
|
-
Version: 3.
|
|
3
|
+
Version: 3.18.0
|
|
4
4
|
Classifier: Development Status :: 5 - Production/Stable
|
|
5
5
|
Classifier: Environment :: Console
|
|
6
6
|
Classifier: Intended Audience :: Developers
|
|
@@ -26,17 +26,15 @@ Project-URL: Repository, https://github.com/jolars/panache
|
|
|
26
26
|
|
|
27
27
|
# Panache <img src='https://raw.githubusercontent.com/jolars/panache/refs/heads/main/images/logo.png' align="right" width="139" />
|
|
28
28
|
|
|
29
|
-
[](https://github.com/jolars/panache/actions/workflows/build-and-test.yml)
|
|
29
|
+
[](https://github.com/jolars/panache/actions/workflows/build-and-test.yml)
|
|
31
30
|
[](https://crates.io/crates/panache)
|
|
32
31
|
[](https://open-vsx.org/extension/jolars/panache)
|
|
34
33
|
[](https://marketplace.visualstudio.com/items?itemName=jolars.panache)
|
|
36
|
-
[](https://badge.fury.io/js/@panache-cli%2Fpanache)
|
|
35
|
+
[](https://badge.fury.io/py/panache-cli)
|
|
36
|
+
[](https://badge.fury.io/js/@panache-cli%2Fpanache)
|
|
37
|
+
[](https://doi.org/10.5281/zenodo.18608442)
|
|
40
38
|
|
|
41
39
|
Panache is a language server, formatter, and linter for Quarto and other
|
|
42
40
|
Markdown flavors, built in Rust with a lossless CST parser and support for
|
|
@@ -337,3 +335,12 @@ documentation, well-structured code, and testing infrastructure provided by
|
|
|
337
335
|
Pandoc. We also owe significant debt to the rust-analyzer project, on which
|
|
338
336
|
Panache is heavily inspired.
|
|
339
337
|
|
|
338
|
+
## Citation
|
|
339
|
+
|
|
340
|
+
If you use Panache in your research, please cite the release you used. Select
|
|
341
|
+
that release in the [Zenodo archive](https://doi.org/10.5281/zenodo.18608442)
|
|
342
|
+
and export its citation. To cite Panache generally, use the concept DOI
|
|
343
|
+
`10.5281/zenodo.18608442`.
|
|
344
|
+
|
|
345
|
+
Machine-readable metadata is available in [CITATION.cff](CITATION.cff).
|
|
346
|
+
|
|
@@ -1,16 +1,14 @@
|
|
|
1
1
|
# Panache <img src='https://raw.githubusercontent.com/jolars/panache/refs/heads/main/images/logo.png' align="right" width="139" />
|
|
2
2
|
|
|
3
|
-
[](https://github.com/jolars/panache/actions/workflows/build-and-test.yml)
|
|
3
|
+
[](https://github.com/jolars/panache/actions/workflows/build-and-test.yml)
|
|
5
4
|
[](https://crates.io/crates/panache)
|
|
6
5
|
[](https://open-vsx.org/extension/jolars/panache)
|
|
8
7
|
[](https://marketplace.visualstudio.com/items?itemName=jolars.panache)
|
|
10
|
-
[](https://badge.fury.io/js/@panache-cli%2Fpanache)
|
|
9
|
+
[](https://badge.fury.io/py/panache-cli)
|
|
10
|
+
[](https://badge.fury.io/js/@panache-cli%2Fpanache)
|
|
11
|
+
[](https://doi.org/10.5281/zenodo.18608442)
|
|
14
12
|
|
|
15
13
|
Panache is a language server, formatter, and linter for Quarto and other
|
|
16
14
|
Markdown flavors, built in Rust with a lossless CST parser and support for
|
|
@@ -310,3 +308,12 @@ The development of Panache has simplified considerably thanks to the extensive
|
|
|
310
308
|
documentation, well-structured code, and testing infrastructure provided by
|
|
311
309
|
Pandoc. We also owe significant debt to the rust-analyzer project, on which
|
|
312
310
|
Panache is heavily inspired.
|
|
311
|
+
|
|
312
|
+
## Citation
|
|
313
|
+
|
|
314
|
+
If you use Panache in your research, please cite the release you used. Select
|
|
315
|
+
that release in the [Zenodo archive](https://doi.org/10.5281/zenodo.18608442)
|
|
316
|
+
and export its citation. To cite Panache generally, use the concept DOI
|
|
317
|
+
`10.5281/zenodo.18608442`.
|
|
318
|
+
|
|
319
|
+
Machine-readable metadata is available in [CITATION.cff](CITATION.cff).
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
use clap::CommandFactory;
|
|
2
2
|
use clap_complete::{Shell, generate_to};
|
|
3
3
|
use clap_mangen::Man;
|
|
4
|
+
use clap_mangen::roff::{Roff, roman};
|
|
4
5
|
use std::env;
|
|
5
6
|
use std::fs;
|
|
6
7
|
use std::io::Result;
|
|
@@ -352,6 +353,38 @@ fn format_see_also(refs: &[String]) -> String {
|
|
|
352
353
|
format!(".SH \"SEE ALSO\"\n{}\n", formatted.join(", "))
|
|
353
354
|
}
|
|
354
355
|
|
|
356
|
+
fn render_man_directives(help: &str) -> Result<String> {
|
|
357
|
+
let (title, body) = help.split_once("\n\n").unwrap_or((help, ""));
|
|
358
|
+
let mut roff = Roff::default();
|
|
359
|
+
let title = title.trim_end_matches(':').to_ascii_uppercase();
|
|
360
|
+
roff.control("SH", [title.as_str()]);
|
|
361
|
+
|
|
362
|
+
// The shared help uses indented Markdown examples, which need no-fill mode
|
|
363
|
+
// in man pages to preserve the spacing the directives are meant to protect.
|
|
364
|
+
for paragraph in body.split("\n\n") {
|
|
365
|
+
roff.control("PP", []);
|
|
366
|
+
let is_example = paragraph.lines().all(|line| line.starts_with(" "));
|
|
367
|
+
if is_example {
|
|
368
|
+
roff.control("RS", ["4"]);
|
|
369
|
+
roff.control("nf", []);
|
|
370
|
+
}
|
|
371
|
+
for line in paragraph.lines() {
|
|
372
|
+
let line = if is_example { &line[4..] } else { line };
|
|
373
|
+
roff.text([roman(line)]);
|
|
374
|
+
}
|
|
375
|
+
if is_example {
|
|
376
|
+
roff.control("fi", []);
|
|
377
|
+
roff.control("RE", []);
|
|
378
|
+
}
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
let mut buffer = Vec::new();
|
|
382
|
+
roff.to_writer(&mut buffer)?;
|
|
383
|
+
Ok(String::from_utf8_lossy(&buffer)
|
|
384
|
+
.trim_start_matches(Roff::default().render().as_str())
|
|
385
|
+
.to_owned())
|
|
386
|
+
}
|
|
387
|
+
|
|
355
388
|
fn generate_man_pages() -> Result<()> {
|
|
356
389
|
// Create man directory if it doesn't exist
|
|
357
390
|
let out_dir = PathBuf::from("target/man");
|
|
@@ -387,8 +420,22 @@ fn generate_man_pages() -> Result<()> {
|
|
|
387
420
|
let mut buffer = Vec::new();
|
|
388
421
|
man.render(&mut buffer)?;
|
|
389
422
|
|
|
423
|
+
let mut content = String::from_utf8_lossy(&buffer).into_owned();
|
|
424
|
+
if matches!(subcommand_name, "format" | "lint")
|
|
425
|
+
&& let Some(help) = subcommand.get_after_long_help()
|
|
426
|
+
{
|
|
427
|
+
let mut extra = Vec::new();
|
|
428
|
+
man.render_extra_section(&mut extra)?;
|
|
429
|
+
// Standalone section renders include the preamble from the full page.
|
|
430
|
+
content = content.replacen(
|
|
431
|
+
String::from_utf8_lossy(&extra)
|
|
432
|
+
.trim_start_matches(Roff::default().render().as_str()),
|
|
433
|
+
&render_man_directives(&help.to_string())?,
|
|
434
|
+
1,
|
|
435
|
+
);
|
|
436
|
+
}
|
|
437
|
+
|
|
390
438
|
// Post-process: fix NAME, SYNOPSIS, and nested subcommand references
|
|
391
|
-
let content = String::from_utf8_lossy(&buffer);
|
|
392
439
|
let fixed_content = content
|
|
393
440
|
.replace(
|
|
394
441
|
&format!("{} \\-", subcommand_name),
|
|
@@ -399,8 +446,8 @@ fn generate_man_pages() -> Result<()> {
|
|
|
399
446
|
&format!("\\fBpanache {}\\fR", subcommand_name),
|
|
400
447
|
)
|
|
401
448
|
.replace(
|
|
402
|
-
&format!("{}\\-", subcommand_name),
|
|
403
|
-
&format!("
|
|
449
|
+
&format!("\n{}\\-", subcommand_name),
|
|
450
|
+
&format!("\npanache\\-{}\\-", subcommand_name),
|
|
404
451
|
);
|
|
405
452
|
|
|
406
453
|
// SEE ALSO: panache(1) plus sibling subcommand pages
|
|
@@ -1,5 +1,30 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.29.0](https://github.com/jolars/panache/compare/panache-formatter-v0.28.2...panache-formatter-v0.29.0) (2026-11-11)
|
|
4
|
+
|
|
5
|
+
### Features
|
|
6
|
+
|
|
7
|
+
- **cli:** add inspect command ([`1545ef4`](https://github.com/jolars/panache/commit/1545ef4f77e299104c504434170a3fa556579e4d)), closes [#601](https://github.com/jolars/panache/issues/601)
|
|
8
|
+
- **formatter:** preserve punctuation by default ([`ca09ecc`](https://github.com/jolars/panache/commit/ca09ecc46f86a56554d345b3abe3a61b75fe28dd)), ref [#605](https://github.com/jolars/panache/issues/605) and [#607](https://github.com/jolars/panache/issues/607)
|
|
9
|
+
- **formatter:** add smart punctuation modes ([`38c161e`](https://github.com/jolars/panache/commit/38c161ee428a27813bfcd7bc7c8530f49c3540df)), closes [#605](https://github.com/jolars/panache/issues/605), ref [#607](https://github.com/jolars/panache/issues/607)
|
|
10
|
+
|
|
11
|
+
### Bug Fixes
|
|
12
|
+
|
|
13
|
+
- don’t apply `smart` transform to raw/code inline (#610) ([`15502cc`](https://github.com/jolars/panache/commit/15502ccd2f3339c7de218de8875016d2fd75429a))
|
|
14
|
+
- **formatter:** preserve list block separators ([`fd9dbf4`](https://github.com/jolars/panache/commit/fd9dbf4c945296f4e38af94ae0e0d301d679092b)), fixes [#602](https://github.com/jolars/panache/issues/602)
|
|
15
|
+
- **formatter:** trim excess pipe table padding ([`d77e076`](https://github.com/jolars/panache/commit/d77e076b58f5a90e574e82366ebede92b137e4f3)), fixes [#599](https://github.com/jolars/panache/issues/599)
|
|
16
|
+
- **formatter:** keep `et al.` together ([`a5bb5e1`](https://github.com/jolars/panache/commit/a5bb5e11301bb373a2034f3ec3362dd258e50b42)), closes [#593](https://github.com/jolars/panache/issues/593)
|
|
17
|
+
|
|
18
|
+
### Dependencies
|
|
19
|
+
|
|
20
|
+
- updated crates/panache-parser to v0.35.0
|
|
21
|
+
|
|
22
|
+
## [0.28.2](https://github.com/jolars/panache/compare/panache-formatter-v0.28.1...panache-formatter-v0.28.2) (2026-10-30)
|
|
23
|
+
|
|
24
|
+
### Dependencies
|
|
25
|
+
|
|
26
|
+
- updated crates/panache-parser to v0.34.2
|
|
27
|
+
|
|
3
28
|
## [0.28.1](https://github.com/jolars/panache/compare/panache-formatter-v0.28.0...panache-formatter-v0.28.1) (2026-10-26)
|
|
4
29
|
|
|
5
30
|
### Bug Fixes
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[package]
|
|
2
2
|
name = "panache-formatter"
|
|
3
|
-
version = "0.
|
|
3
|
+
version = "0.29.0"
|
|
4
4
|
edition.workspace = true
|
|
5
5
|
rust-version.workspace = true
|
|
6
6
|
include = [
|
|
@@ -19,7 +19,7 @@ keywords = ["quarto", "pandoc", "markdown", "formatter"]
|
|
|
19
19
|
categories = ["text-processing"]
|
|
20
20
|
|
|
21
21
|
[dependencies]
|
|
22
|
-
panache-parser = { path = "../panache-parser", version = "0.
|
|
22
|
+
panache-parser = { path = "../panache-parser", version = "0.35.0" }
|
|
23
23
|
log = { version = "0.4.31", features = ["release_max_level_debug"] }
|
|
24
24
|
rowan = "0.17.0"
|
|
25
25
|
serde = { version = "1.0.228", features = ["derive"], optional = true }
|
|
@@ -32,7 +32,7 @@ serde = ["dep:serde", "panache-parser/serde"]
|
|
|
32
32
|
schema = ["serde", "dep:schemars", "panache-parser/schema"]
|
|
33
33
|
|
|
34
34
|
[dev-dependencies]
|
|
35
|
-
badness-formatter = "=0.
|
|
35
|
+
badness-formatter = "=0.12.0"
|
|
36
36
|
serde_json = "1.0.150"
|
|
37
37
|
insta = { version = "1.47.2", features = ["json"] }
|
|
38
38
|
# TEMPORARY: cross-validation oracle only (tests/yaml_cross_validation.rs).
|
|
@@ -110,6 +110,28 @@ pub enum HorizontalRuleStyle {
|
|
|
110
110
|
Compact,
|
|
111
111
|
}
|
|
112
112
|
|
|
113
|
+
/// Source spelling of punctuation in prose.
|
|
114
|
+
#[derive(Debug, Clone, Copy, PartialEq, Eq, Default)]
|
|
115
|
+
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
|
116
|
+
#[cfg_attr(feature = "serde", serde(rename_all = "lowercase"))]
|
|
117
|
+
#[cfg_attr(feature = "schema", derive(schemars::JsonSchema))]
|
|
118
|
+
pub enum SmartPunctuation {
|
|
119
|
+
/// Leave punctuation as written.
|
|
120
|
+
#[default]
|
|
121
|
+
Preserve,
|
|
122
|
+
/// Write straight quotes with `smart` or `smart-quotes`, and `--`, `---`,
|
|
123
|
+
/// and `...` with `smart`. Preserve punctuation otherwise.
|
|
124
|
+
Ascii,
|
|
125
|
+
/// Write English curly quotes, en/em dashes, and `…`.
|
|
126
|
+
Unicode,
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
impl SmartPunctuation {
|
|
130
|
+
pub fn for_flavor(_flavor: Flavor) -> Self {
|
|
131
|
+
Self::default()
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
|
|
113
135
|
#[derive(Debug, Clone, PartialEq)]
|
|
114
136
|
#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
|
|
115
137
|
#[cfg_attr(feature = "serde", serde(rename_all = "lowercase"))]
|
|
@@ -187,8 +209,8 @@ impl FormatterExtensions {
|
|
|
187
209
|
|
|
188
210
|
/// See [`known_extensions!`](panache_parser::Extensions) for the parser-side
|
|
189
211
|
/// twin. The formatter extension surface is a small subset; the macro keeps
|
|
190
|
-
/// the runtime setter,
|
|
191
|
-
/// lockstep.
|
|
212
|
+
/// the runtime setter, public name list, state iterator, and JSON Schema
|
|
213
|
+
/// generator in lockstep.
|
|
192
214
|
macro_rules! known_formatter_extensions {
|
|
193
215
|
( $( $kebab:literal => $field:ident ),* $(,)? ) => {
|
|
194
216
|
impl FormatterExtensions {
|
|
@@ -196,6 +218,11 @@ macro_rules! known_formatter_extensions {
|
|
|
196
218
|
/// affect formatter behavior (a subset of the parser names).
|
|
197
219
|
pub const KNOWN_NAMES: &'static [&'static str] = &[ $($kebab),* ];
|
|
198
220
|
|
|
221
|
+
/// Canonical names and current states of all formatter extensions.
|
|
222
|
+
pub fn states(&self) -> impl Iterator<Item = (&'static str, bool)> {
|
|
223
|
+
[$(($kebab, self.$field)),*].into_iter()
|
|
224
|
+
}
|
|
225
|
+
|
|
199
226
|
/// True if `name` matches a known formatter extension. Only
|
|
200
227
|
/// kebab-case is accepted; snake_case aliases were removed in 3.0.
|
|
201
228
|
pub fn is_known_name(name: &str) -> bool {
|
|
@@ -251,6 +278,10 @@ pub struct Config {
|
|
|
251
278
|
/// How horizontal rules are rendered: expanded to the line width
|
|
252
279
|
/// (default) or as a compact `---`.
|
|
253
280
|
pub horizontal_rule_style: HorizontalRuleStyle,
|
|
281
|
+
/// Source spelling of punctuation. Defaults to preservation. ASCII
|
|
282
|
+
/// normalization requires the corresponding `smart` or `smart-quotes`
|
|
283
|
+
/// renderer extension.
|
|
284
|
+
pub smart_punctuation: SmartPunctuation,
|
|
254
285
|
/// Document-language fallback used by sentence wrapping when the document
|
|
255
286
|
/// has no YAML `lang:`. Normalized lowercase code (e.g. `de`, `pt-br`).
|
|
256
287
|
pub lang: Option<String>,
|
|
@@ -288,6 +319,7 @@ impl Default for Config {
|
|
|
288
319
|
wrap: Some(WrapMode::Reflow),
|
|
289
320
|
blank_lines: BlankLines::Collapse,
|
|
290
321
|
horizontal_rule_style: HorizontalRuleStyle::default(),
|
|
322
|
+
smart_punctuation: SmartPunctuation::for_flavor(flavor),
|
|
291
323
|
lang: None,
|
|
292
324
|
no_break_abbreviations: std::collections::BTreeMap::new(),
|
|
293
325
|
formatters: HashMap::new(), // Opt-in: empty by default
|
|
@@ -323,6 +355,11 @@ pub struct ConfigBuilder {
|
|
|
323
355
|
}
|
|
324
356
|
|
|
325
357
|
impl ConfigBuilder {
|
|
358
|
+
pub fn smart_punctuation(mut self, mode: SmartPunctuation) -> Self {
|
|
359
|
+
self.config.smart_punctuation = mode;
|
|
360
|
+
self
|
|
361
|
+
}
|
|
362
|
+
|
|
326
363
|
pub fn math(mut self, mode: MathMode) -> Self {
|
|
327
364
|
self.config.math = mode;
|
|
328
365
|
self
|
|
@@ -419,6 +456,11 @@ mod schema_tests {
|
|
|
419
456
|
assert_wire_values::<BlankLines>(&["preserve", "collapse"]);
|
|
420
457
|
}
|
|
421
458
|
|
|
459
|
+
#[test]
|
|
460
|
+
fn smart_punctuation_values_are_lowercase() {
|
|
461
|
+
assert_wire_values::<SmartPunctuation>(&["preserve", "ascii", "unicode"]);
|
|
462
|
+
}
|
|
463
|
+
|
|
422
464
|
#[test]
|
|
423
465
|
fn horizontal_rule_style_values_are_kebab_case() {
|
|
424
466
|
assert_wire_values::<HorizontalRuleStyle>(&["line-width", "compact"]);
|