Skip to content
Research
Skill

/nature-paper2word

Compile an academic Markdown manuscript into a journal- or school-compliant Word (.docx): declared typography, native OMML equations, three-line tables, cross-references, per-section page numbers, CSL bibliographies (GB/T 7714, APA, Nature, IEEE), and pre/post-export quality

BOOST
From plugin
nature-skills
51k24 skills
Install
$ npx -y skills add Yuan1z0825/nature-skills --skill nature-paper2word --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/nature-paper2word

Context preview

The summary Claude sees to decide when to auto-load this skill.

Compile an academic Markdown manuscript into a journal- or school-compliant Word (.docx): declared typography, native OMML equations, three-line tables, cross-references, per-section page numbers, CSL bibliographies (GB/T 7714, APA, Nature, IEEE), and pre/post-export quality

SKILL.md

nature-paper2word.SKILL.md
name: nature-paper2word
description: "Compile an academic Markdown manuscript into a journal- or school-compliant Word (.docx): declared typography, native OMML equations, three-line tables, cross-references, per-section page numbers, CSL bibliographies (GB/T 7714, APA, Nature, IEEE), and pre/post-export quality gates. 把学术论文的 Markdown 稿件导出为符合期刊或学位论文规范的 Word:摘要、公式编号、三线表、题注、交叉引用、目录域、参考文献。Use when the user wants a submission-ready .docx — 论文转 Word、学位论文排版、期刊投稿排版、prepare submission docx — or a readable copy of a manuscript. Not for PDF, HTML or LaTeX output, and not for slide decks or grant forms."
license: MIT

Markdown → compliant Word

This file is the router. The engine is deterministic: the same manuscript and the same format requirements always produce a byte-identical `.docx`. Do not substitute a hand-written python-docx script; run the installed pipeline.

**Before the first export in a session, confirm the engine is available**: `md-to-word --version` must print a version. This skill ships documentation only; if the command is missing, install it with `pip install md-to-word-docx`, then run the check again.

**The full vocabulary lives in the manual inside the package**, not here. `md-to-word --contract` prints its absolute path (Chinese or English, following the manuscript). Everything below is order of work; every spelling is looked up in the manual.

1. Decide the scenario first

| Scenario | What the user says | What to do | |---|---|---| | Journal or school compliance | "format it for Nature / my university" | Get a target `.docx` template or a written spec, then build a requirements file. | | Existing requirements | "use our lab's spec file" | Pass it with `-r`. | | Baseline export (no explicit spec) | "turn this into a Word file" | Normalize the manuscript to the contract, then export with the built-in preset. The preset is a complete, valid format, not a provisional default. |

State the chosen preset or requirements path in one line, then proceed. Without `-r` the only file picked up is one named exactly **`format.txt`** beside the manuscript; no other `.txt` is guessed at (if one is there, the run names it in a reminder). With no `format.txt`, the preset follows the **manuscript's language**: `zh-academic` for Chinese, `en-nature` for everything else. The run reports which one it used.

No path accepts arbitrary Markdown and returns a finished document: a preset supplies formatting, not missing structure. When the manuscript violates the contract, pre-flight stops with a line number rather than emitting a document that looks acceptable while its formatting was never mapped.

2. Bring the manuscript to the input contract

The source may be pasted text, `.txt`, `.md`, an old `.docx`, or a PDF. Normalize it to Markdown first; never edit the user's original file in place.

  • **Headings**: `#`, `##`, `###`, consecutive and unskipped; a heading that carries its own number

(`1.`, `2.1`) needs as many `#` as its number has levels.

  • **Paragraph styles**: a line starting with `%% ` sets that paragraph's style —

`%% Abstract …`, `%% Table Caption **Table 1** …`, `%% Image Caption Figure 1 …`. One line is one paragraph, ended by a blank line, with no closing fence. Style names come from a closed list (manual §3.4) in either language; heading levels are set by `#` only.

  • **Title, author, abstract, keywords** are style lines in the body, never YAML — their position on

the page is the author's decision, and YAML has no position. Pre-flight blocks those keys with the exact line to write instead.

  • **Paragraphs**: one line is one paragraph; consecutive lines are never joined, so a file of short

one-sentence paragraphs is already correct. For a break *inside* one paragraph (an address, verse, a long title), end the line with a backslash or two spaces — it becomes a line break within the same paragraph. Suspected wrapping is reported as a grouped warning with the line numbers.

  • **YAML holds only position-independent configuration**: `bibliography:`, `csl:`, `crossref:`,

`link-citations:`.

  • **Equations**: `$$...$$ {#eq-name}` on its own line, referenced as `@eq-name`. Chinese manuscripts

get 「式/图/表」 prefixes and (1)numbering, English ones get Equation/Figure/Table and (1). Add `crossref: chapters: true` for per-chapter numbering. `\tag{}` is blocked.

  • **Citations**: `[@key]` parenthetical, `@key` narrative, from `bibliography:` + `csl:`. A `.bib` is

mandatory once the manuscript cites: handwritten reference lists are not supported, and `[@key]` without `bibliography:` would be printed literally.

  • **Figures and tables**: `![](path/img.png){width=13cm}` with the caption in its own

`%% Image Caption` / `%% 图片题注` paragraph; table caption above, note below. Do not put `{#fig-...}` labels on images. Column widths follow the separator row's dash lengths.

  • **Block markers** (three, each on its own line with blank lines around): `{{< pagebreak >}}`,

`{{< toc >}}`, `{{< section page_number=lowerRoman start=1 >}}` (Chinese parameters `页码=` `起始=` also work). The section marker closes *the section above it*; never add a page break next to it.

  • **Unsupported Markdown is blocked with a replacement**, never printed literally: HTML tags, `---`

rules, `====` headings, definition lists, `- [ ]` boxes, tables without outer pipes, nested block quotes, full-width `%%`, four-space code blocks, a second paragraph inside a list item, `==highlight==`, `[text]{.class}` (except `.underline`), `\(...\)` inline math, and a percentage image width (`{width=60%}` — write an absolute length).

3. Choose or build the format requirements

0. **Starting from nothing** — `md-to-word init` writes a complete preset copy plus a one-page manuscript that exports as-is. 1. **Built-in preset** — `zh-academic` or `en-nature`. Use as-is when the user gave no detailed spec. 2. **Copy and edit a preset** — change only the lines the user mentioned. Field order is fixed:

Read more
Ships withnature-skills

符合nature论文学术表达和科研绘图的Skill

Get the whole plugin

Other skills on nature-skills.