markdown-formatting
Enforces markdown line-wrap and structure rules for clean git diffs. Use when writing or editing any committed markdown documentation or skill file.
它会碰到什么
这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。
技能内容
Markdown Formatting Conventions
When To Use
- Writing or editing any markdown documentation
- Reviewing prose for line-wrapping compliance
- Generating markdown from plugins (scribe, sanctum, etc.)
When NOT To Use
- Editing code blocks, tables, or frontmatter (these have
their own formatting rules)
- Quick scratch notes that will not be committed
These conventions apply to all markdown documentation generated
or modified by any plugin. The goal: produce prose that creates
clean, reviewable git diffs and reads well on mobile devices.
Quick Reference
When writing or editing markdown prose:
- Wrap prose at 80 chars using hybrid wrapping (prefer
sentence/clause boundaries over arbitrary word breaks)
- Blank line before and after every heading
- ATX headings only (
# Heading, never setext underlines) - Blank line before every list
- Reference-style links when inline links push lines
beyond 80 chars
What to Wrap
Wrap these content types at 80 characters:
- Paragraphs (flowing prose text)
- Blockquote text (the content after
>) - List item descriptions (text after
-or1.) - Descriptions in definition lists
What NOT to Wrap
Never wrap or reflow these content types:
- Tables: pipe-delimited rows stay on one line
- Code blocks: fenced (
`) or indented content - Headings: lines starting with
# - Frontmatter: YAML/TOML between
---or+++ - HTML blocks: raw HTML elements
- Link definitions:
[id]: urlreference lines - Image references:
on their own line - Single-line list items: short bullets that fit on one line
Wrapping Algorithm (Summary)
For each prose paragraph:
- If a sentence fits within 80 chars, keep it on one line
- If a sentence exceeds 80 chars, break at the nearest
sentence boundary (. ! ? ) before column 80
- If no sentence boundary, break at the nearest **clause
boundary** (, ; : ) before column 80
- If no clause boundary, break before a conjunction
(and but or ) before column 80
- If none of the above, break at the last word boundary
before column 80
- Never break inside backtick spans, link text, or URLs
See modules/wrapping-rules.md for the full algorithm with
examples.
Structural Rules
Blank Lines Around Headings
WRONG:
Some text.
## Heading
More text.
RIGHT:
Some text.
## Heading
More text.
Exception: the first line of a file may be a heading without
a preceding blank line.
ATX Headings Only
WRONG:
Heading
=======
WRONG:
Subheading
----------
RIGHT:
# Heading
RIGHT:
## Subheading
Blank Line Before Lists
WRONG:
Some introductory text:
- Item one
- Item two
RIGHT:
Some introductory text:
- Item one
- Item two
Reference-Style Links for Long URLs
When an inline link pushes a line beyond 80 characters, use
reference-style syntax:
WRONG (line too long):
See the [formatting guide](https://google.github.io/styleguide/docguide/style.html) for details.
RIGHT:
See the [formatting guide][fmt-guide] for details.
[fmt-guide]: https://google.github.io/styleguide/docguide/style.html
Place link definitions at the end of the current section or
at the end of the document. When the same URL appears multiple
times, use a single shared reference definition.
Short inline links that keep the line under 80 chars are fine:
OK:
See [the guide](https://example.com) for details.
Exit Criteria
- [ ] All prose lines in the edited file wrap at 80 characters or
fewer; verified with awk 'length>80' <file> returning no
matches on prose blocks (tables, code, headings, frontmatter
excluded)
- [ ] Every heading has a blank line before and after it (except
the first line of a file); no setext-style underline headings
present
- [ ] Every list is preceded by a blank line
- [ ] Inline links that would push a line past 80 characters
converted to reference-style syntax with the URL definition at
the end of the section or document
想直接用这个技能?
本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。
它属于哪个仓库
plugins/leyline/skills/markdown-formatting/SKILL.md同一个仓库里的其他技能
- claude-code-plugin-reference
- night-market-architecture-contract
- night-market-build-and-env
- night-market-change-control
- night-market-collective-memory
- night-market-completion-integrity-campaign
- night-market-config-catalog
- night-market-debugging-playbook
- night-market-diagnostics-toolkit
- night-market-docs-and-writing
- night-market-failure-archaeology
- night-market-model-and-harness-updates