53 lines
2.4 KiB
Markdown
53 lines
2.4 KiB
Markdown
---
|
|
name: fix-title
|
|
description: Use when a pasted ChatGPT or LLM Markdown reply has heading levels that need to be shifted down before insertion under a parent section such as "## GPT"; also use for Markdown title repair, heading nesting fixes, ATX header adjustment, and adding one or more # levels to headings in a file.
|
|
---
|
|
|
|
# Fix Title
|
|
|
|
## Overview
|
|
|
|
Fix Markdown heading depth for copied LLM replies before inserting them into a discussion record. Use the bundled script for deterministic file edits instead of asking the model to rewrite the document.
|
|
|
|
The default operation adds two heading levels, turning `# Title` into `### Title`, which fits content placed under a parent heading like `## GPT`.
|
|
|
|
## Workflow
|
|
|
|
1. Confirm the input is a Markdown file containing the raw reply to adjust.
|
|
2. Choose the number of levels to add. Default to `2` unless the user specifies another value.
|
|
3. Run `scripts/fix_markdown_titles.py` on the file.
|
|
4. If the target is important or the requested level shift is unusual, use `--dry-run` or `--output` first and inspect the result.
|
|
5. Report the path modified and the level shift used.
|
|
|
|
## Commands
|
|
|
|
```bash
|
|
python scripts/fix_markdown_titles.py path/to/reply.md
|
|
python scripts/fix_markdown_titles.py path/to/reply.md --levels 1
|
|
python scripts/fix_markdown_titles.py path/to/reply.md --levels 3 --dry-run
|
|
python scripts/fix_markdown_titles.py path/to/reply.md --levels 2 --output path/to/fixed.md
|
|
```
|
|
|
|
On Windows PowerShell, quote paths that contain spaces:
|
|
|
|
```powershell
|
|
python .\scripts\fix_markdown_titles.py "C:\path with spaces\reply.md" --levels 2
|
|
```
|
|
|
|
## Behavior
|
|
|
|
| Input | `--levels 2` output |
|
|
| --- | --- |
|
|
| `# A` | `### A` |
|
|
| `## B` | `#### B` |
|
|
| `###### C` | `###### C` |
|
|
|
|
The script only changes ATX headings: lines beginning with up to three spaces followed by `#` through `######` and then whitespace. It does not change headings inside fenced code blocks, quoted lines such as `> # text`, or indented code.
|
|
|
|
## Common Mistakes
|
|
|
|
- Do not use a broad replace like `#` to `###`; it will corrupt code blocks, quoted content, tags, and inline text.
|
|
- Do not increase headings past level six; Markdown ATX headings stop at `######`.
|
|
- Do not change the recorder's outer headings such as `# 1` or `## GPT` unless the user explicitly points the skill at the recorder file and requests that behavior.
|
|
- Do not use prompt rewriting for this task when the script can perform the edit directly.
|