Directories
ΒΆ
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
corpusctl
command
|
|
|
mdsmith
command
|
|
|
mdsmith-release
command
mdsmith-release is the internal CLI the GitHub Actions release pipeline invokes.
|
mdsmith-release is the internal CLI the GitHub Actions release pipeline invokes. |
|
cue
|
|
|
types
Package types embeds the canonical mdsmith field-type-shortcut library so schema parsing can resolve `created: date` and friends without touching the network.
|
Package types embeds the canonical mdsmith field-type-shortcut library so schema parsing can resolve `created: date` and friends without touching the network. |
|
internal
|
|
|
archetype/gensection
Package gensection provides a reusable engine for marker-based generated-section rules.
|
Package gensection provides a reusable engine for marker-based generated-section rules. |
|
concepts
Package concepts provides embedded concept-page documentation for mdsmith topics that span multiple rules or subsystems.
|
Package concepts provides embedded concept-page documentation for mdsmith topics that span multiple rules or subsystems. |
|
convention
Package convention owns the convention and flavor data shapes independent of any rule.
|
Package convention owns the convention and flavor data shapes independent of any rule. |
|
directives
Package directives embeds short, hover-sized stubs that document the directive vocabulary served by the LSP hover provider.
|
Package directives embeds short, hover-sized stubs that document the directive vocabulary served by the LSP hover provider. |
|
discovery
Package discovery finds Markdown files by expanding glob patterns from config.
|
Package discovery finds Markdown files by expanding glob patterns from config. |
|
explain
Package explain attaches per-leaf rule provenance to lint diagnostics.
|
Package explain attaches per-leaf rule provenance to lint diagnostics. |
|
export
Package export implements the source-to-source transform behind `mdsmith export`.
|
Package export implements the source-to-source transform behind `mdsmith export`. |
|
extract
Package extract projects a schema-conformant Markdown document into a data tree whose shape mirrors the composed schema hierarchy.
|
Package extract projects a schema-conformant Markdown document into a data tree whose shape mirrors the composed schema hierarchy. |
|
extract/encode
Package encode serialises an extracted data tree into one of the supported wire formats.
|
Package encode serialises an extracted data tree into one of the supported wire formats. |
|
fieldinterp
Package fieldinterp provides {field} placeholder interpolation with CUE path resolution for nested front-matter access.
|
Package fieldinterp provides {field} placeholder interpolation with CUE path resolution for nested front-matter access. |
|
githooks
Package githooks provides utilities shared between the mdsmith CLI and the git-hook-sync rule for managing the pre-merge-commit hook, merge-driver assignments in .gitattributes, and discovery of files that contain generated-section directives.
|
Package githooks provides utilities shared between the mdsmith CLI and the git-hook-sync rule for managing the pre-merge-commit hook, merge-driver assignments in .gitattributes, and discovery of files that contain generated-section directives. |
|
globpath
Package globpath provides glob matching and pattern utilities for mdsmith config surfaces: ignore:, overrides:, kind-assignment:, and rule settings (allowed:, include:, exclude:, budgets[].glob).
|
Package globpath provides glob matching and pattern utilities for mdsmith config surfaces: ignore:, overrides:, kind-assignment:, and rule settings (allowed:, include:, exclude:, budgets[].glob). |
|
index
Package index builds and maintains the symbol graph that powers mdsmith's LSP navigation methods (documentSymbol, definition, references, workspace/symbol, callHierarchy).
|
Package index builds and maintains the symbol graph that powers mdsmith's LSP navigation methods (documentSymbol, definition, references, workspace/symbol, callHierarchy). |
|
kindsout
Package kindsout renders the output of the 'mdsmith kinds' subcommand surface: declared-kind bodies, per-file resolutions, and per-rule merge chains.
|
Package kindsout renders the output of the 'mdsmith kinds' subcommand surface: declared-kind bodies, per-file resolutions, and per-rule merge chains. |
|
linkgraph
Package linkgraph extracts Markdown links and heading anchors so the link-validity rule (MDS027) and the `backlinks` subcommand share one implementation of the link walk, anchor slug rules, and target parsing.
|
Package linkgraph extracts Markdown links and heading anchors so the link-validity rule (MDS027) and the `backlinks` subcommand share one implementation of the link walk, anchor slug rules, and target parsing. |
|
lsp
Package lsp implements a minimal Language Server Protocol surface for mdsmith.
|
Package lsp implements a minimal Language Server Protocol surface for mdsmith. |
|
placeholders
Package placeholders provides a shared vocabulary of placeholder tokens that rules can opt into to treat template content as opaque rather than content violations.
|
Package placeholders provides a shared vocabulary of placeholder tokens that rules can opt into to treat template content as opaque rather than content violations. |
|
profiling
Package profiling adds an env-gated CPU/heap profiler to the mdsmith CLI.
|
Package profiling adds an env-gated CPU/heap profiler to the mdsmith CLI. |
|
punkt
Package punkt is a forked, allocation-clean subset of the trained Punkt sentence tokenizer from neurosnap/sentences v1.1.2 (https://github.com/neurosnap/sentences).
|
Package punkt is a forked, allocation-clean subset of the trained Punkt sentence tokenizer from neurosnap/sentences v1.1.2 (https://github.com/neurosnap/sentences). |
|
release
Package release: the cross-tool benchmark harness.
|
Package release: the cross-tool benchmark harness. |
|
rename
Package rename is the workspace rename engine shared by the LSP server and the `mdsmith rename` CLI.
|
Package rename is the workspace rename engine shared by the LSP server and the `mdsmith rename` CLI. |
|
rules/all
Package all is a blank-import barrel that registers every production rule with the rule registry.
|
Package all is a blank-import barrel that registers every production rule with the rule registry. |
|
rules/ambiguousemphasis
Package ambiguousemphasis implements MDS047, which flags emphasis runs whose meaning a human cannot predict at a glance.
|
Package ambiguousemphasis implements MDS047, which flags emphasis runs whose meaning a human cannot predict at a glance. |
|
rules/blockquotewhitespace
Package blockquotewhitespace implements MDS059, which flags two blockquote defects: more than one space after the > marker (MD027) and a blank line between two adjacent sibling blockquote nodes (MD028).
|
Package blockquotewhitespace implements MDS059, which flags two blockquote defects: more than one space after the > marker (MD027) and a blank line between two adjacent sibling blockquote nodes (MD028). |
|
rules/build
Package build implements MDS039, which validates <?build?> directive parameters and keeps the body in sync with the recipe's body-template.
|
Package build implements MDS039, which validates <?build?> directive parameters and keeps the body in sync with the recipe's body-template. |
|
rules/callouttype
Package callouttype implements MDS067, which validates the `[!type]` token at the start of an Obsidian callout blockquote against the convention's allowed type set.
|
Package callouttype implements MDS067, which validates the `[!type]` token at the start of an Obsidian callout blockquote against the convention's allowed type set. |
|
rules/codeblockstyle
Package codeblockstyle implements MDS065 code-block-style, which enforces a single code-block delimiter across a file: fenced (```) or indented (four-space).
|
Package codeblockstyle implements MDS065 code-block-style, which enforces a single code-block delimiter across a file: fenced (```) or indented (four-space). |
|
rules/commandsshowoutput
Package commandsshowoutput implements MDS066 commands-show-output: when every non-blank line of a fenced code block starts with "$ ", the block shows commands with no output and the prompt should be dropped so the snippet is copy-paste-friendly.
|
Package commandsshowoutput implements MDS066 commands-show-output: when every non-blank line of a fenced code block starts with "$ ", the block shows commands with no output and the prompt should be dropped so the snippet is copy-paste-friendly. |
|
rules/duplicatedcontent
Package duplicatedcontent implements MDS037, which flags substantial paragraphs that also appear verbatim in another Markdown file in the project root after whitespace and case normalization.
|
Package duplicatedcontent implements MDS037, which flags substantial paragraphs that also appear verbatim in another Markdown file in the project root after whitespace and case normalization. |
|
rules/fencepos
Package fencepos answers "where in the source does a fenced code block's opening and closing fence line sit, and what fence character did the author use?" The helpers here let any rule reason about the raw fence delimiters of a *ast.FencedCodeBlock without owning that scanning logic itself.
|
Package fencepos answers "where in the source does a fenced code block's opening and closing fence line sit, and what fence character did the author use?" The helpers here let any rule reason about the raw fence delimiters of a *ast.FencedCodeBlock without owning that scanning logic itself. |
|
rules/forbiddenparagraphstarts
Package forbiddenparagraphstarts implements MDS055, which flags paragraphs whose plain text begins with any configured prefix.
|
Package forbiddenparagraphstarts implements MDS055, which flags paragraphs whose plain text begins with any configured prefix. |
|
rules/forbiddentext
Package forbiddentext implements MDS056, which flags paragraphs whose plain text contains any configured substring.
|
Package forbiddentext implements MDS056, which flags paragraphs whose plain text contains any configured substring. |
|
rules/githooksync
Package githooksync implements MDS048, the git-hook-sync rule.
|
Package githooksync implements MDS048, the git-hook-sync rule. |
|
rules/linkstyle
Package linkstyle implements MDS068, an opt-in rule that flags links whose path style, extension policy, or inline-vs-reference form deviates from the project's declared `links.style` policy.
|
Package linkstyle implements MDS068, an opt-in rule that flags links whose path style, extension policy, or inline-vs-reference form deviates from the project's declared `links.style` policy. |
|
rules/linkvalidity
Package linkvalidity implements MDS062, which flags links that silently do not work: the reversed (text)[url] form (markdownlint MD011) and links or images whose destination is empty/`#` or whose visible text is empty (markdownlint MD042).
|
Package linkvalidity implements MDS062, which flags links that silently do not work: the reversed (text)[url] form (markdownlint MD011) and links or images whose destination is empty/`#` or whose visible text is empty (markdownlint MD042). |
|
rules/listmarkerspace
Package listmarkerspace implements MDS061, which enforces a consistent number of spaces between a list marker and item text, configurable per single-line vs multi-paragraph items and ordered vs unordered lists.
|
Package listmarkerspace implements MDS061, which enforces a consistent number of spaces between a list marker and item text, configurable per single-line vs multi-paragraph items and ordered vs unordered lists. |
|
rules/listmarkerstyle
Package listmarkerstyle implements MDS045, which pins the bullet character for unordered lists.
|
Package listmarkerstyle implements MDS045, which pins the bullet character for unordered lists. |
|
rules/markdownflavor
Package markdownflavor implements MDS034, which validates Markdown against a declared target flavor (commonmark, gfm, goldmark, pandoc, phpextra, multimarkdown, myst, or any) and flags syntax the target renderer will not understand.
|
Package markdownflavor implements MDS034, which validates Markdown against a declared target flavor (commonmark, gfm, goldmark, pandoc, phpextra, multimarkdown, myst, or any) and flags syntax the target renderer will not understand. |
|
rules/markdownflavor/ext
Package ext implements detection-only goldmark extensions used by MDS034 (markdown-flavor) to flag syntax that varies across Markdown flavors.
|
Package ext implements detection-only goldmark extensions used by MDS034 (markdown-flavor) to flag syntax that varies across Markdown flavors. |
|
rules/noreferencestyle
Package noreferencestyle implements MDS043, which forbids reference-style links and footnotes.
|
Package noreferencestyle implements MDS043, which forbids reference-style links and footnotes. |
|
rules/nospaceincodespans
Package nospaceincodespans implements MDS052, which flags inline code spans with leading or trailing whitespace inside the backticks.
|
Package nospaceincodespans implements MDS052, which flags inline code spans with leading or trailing whitespace inside the backticks. |
|
rules/noundefinedreferencelabels
Package noundefinedreferencelabels implements MDS054, which flags reference-style links and images whose label has no matching link reference definition in the file.
|
Package noundefinedreferencelabels implements MDS054, which flags reference-style links and images whose label has no matching link reference definition in the file. |
|
rules/nounusedlinkdefinitions
Package nounusedlinkdefinitions implements MDS053, which flags link reference definitions that are never used by any reference-style link or image, and definitions that duplicate an existing label.
|
Package nounusedlinkdefinitions implements MDS053, which flags link reference definitions that are never used by any reference-style link or image, and definitions that duplicate an existing label. |
|
rules/orderedlistnumbering
Package orderedlistnumbering implements MDS046, which pins how ordered list items are numbered in the source: literal sequential (1.
|
Package orderedlistnumbering implements MDS046, which pins how ordered list items are numbered in the source: literal sequential (1. |
|
rules/propernames
Package propernames implements MDS050, which checks that proper names (e.g.
|
Package propernames implements MDS050, which checks that proper names (e.g. |
|
rules/recipesafety
Package recipesafety implements MDS040, which validates every command in build.recipes for shell-safety at lint time.
|
Package recipesafety implements MDS040, which validates every command in build.recipes for shell-safety at lint time. |
|
rules/requiredmentions
Package requiredmentions implements MDS058, which flags heading-bounded sections whose body text does not contain every configured substring.
|
Package requiredmentions implements MDS058, which flags heading-bounded sections whose body text does not contain every configured substring. |
|
rules/requiredtextpatterns
Package requiredtextpatterns implements MDS057, which flags heading-bounded sections whose body text does not match a configured regex.
|
Package requiredtextpatterns implements MDS057, which flags heading-bounded sections whose body text does not match a configured regex. |
|
rules/settings
Package settings provides shared helpers for coercing rule-configuration values decoded from YAML/CUE into Go types.
|
Package settings provides shared helpers for coercing rule-configuration values decoded from YAML/CUE into Go types. |
|
rules/tablefmt
Package tablefmt answers "what does the canonical aligned form of a pipe-table look like for these source lines?" Callers ask the package to format a string of markdown, to spot non-conforming tables in a parsed line list, or to rewrite the source bytes in place.
|
Package tablefmt answers "what does the canonical aligned form of a pipe-table look like for these source lines?" Callers ask the package to format a string of markdown, to spot non-conforming tables in a parsed line list, or to rewrite the source bytes in place. |
|
rules/tableformat
Package tableformat implements MDS025, the single table rule.
|
Package tableformat implements MDS025, the single table rule. |
|
rules/toc
Package toc implements MDS038, the <?toc?> generated-section directive that emits a nested heading list linked to GitHub-style anchors.
|
Package toc implements MDS038, the <?toc?> generated-section directive that emits a nested heading list linked to GitHub-style anchors. |
|
rules/tocdirective
Package tocdirective implements MDS035, which flags renderer-specific table-of-contents directives that render as literal text on CommonMark and goldmark.
|
Package tocdirective implements MDS035, which flags renderer-specific table-of-contents directives that render as literal text on CommonMark and goldmark. |
|
schema
Package schema models the document-structure schemas that drive MDS020 (required-structure).
|
Package schema models the document-structure schemas that drive MDS020 (required-structure). |
|
testcorpus
Package testcorpus holds shared text corpora for tests and benchmarks across mdsmith's internal packages.
|
Package testcorpus holds shared text corpora for tests and benchmarks across mdsmith's internal packages. |
|
testsymlink
Package testsymlink probes whether the host can create symbolic links and skips the calling test when it cannot.
|
Package testsymlink probes whether the host can create symbolic links and skips the calling test when it cannot. |
|
yamlutil
Package yamlutil provides safe YAML parsing and marshaling helpers.
|
Package yamlutil provides safe YAML parsing and marshaling helpers. |
|
pkg
|
|
|
markdown
Package markdown is mdsmith's public Markdown parse/produce surface.
|
Package markdown is mdsmith's public Markdown parse/produce surface. |
Click to show internal directories.
Click to hide internal directories.
