Skip to content
Back to skills

Ref Style Converter

ASecurity

参考文献格式转换工具,可在APA、MLA、IEEE、Harvard四种主流学术格式间相互转换,支持批量处理和格式错误检查。当用户需要转换参考文献格式、检查引用是否正确,或提到citation、bibliography、APA/MLA/IEEE/Harvard格式、批量格式化引用等关键词时触发。

  • 6 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 6, 2026
ai-agentspythonbashspringapi

Works with

  • api

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned September 6, 2026

npx -y skills add serejaris/kimi-skills --skill ref-style-converter --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Ref Style Converter?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Ref Style Converter
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/serejaris-ref-style-converter/badge)](https://www.skillsdirectory.com/skills/serejaris-ref-style-converter)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: ref-style-converter
description: "参考文献格式转换工具,可在APA、MLA、IEEE、Harvard四种主流学术格式间相互转换,支持批量处理和格式错误检查。当用户需要转换参考文献格式、检查引用是否正确,或提到citation、bibliography、APA/MLA/IEEE/Harvard格式、批量格式化引用等关键词时触发。"
license: MIT
---

# Citation Formatter

参考文献格式转换工具,支持 APA (7th)、MLA (9th)、IEEE、Harvard 四种主流学术引用格式之间的相互转换,同时提供格式错误检查和批量处理能力。

## 支持的格式

| 格式 | 说明 | 示例 |
|------|------|------|
| APA | American Psychological Association 第7版 | `Smith, J. A. (2023). Title. *Journal*, *1*(2), 10-20.` |
| MLA | Modern Language Association 第9版 | `Smith, John A. "Title." *Journal*, vol. 1, no. 2, 2023, pp. 10-20.` |
| IEEE | Institute of Electrical and Electronics Engineers | `[1] J. A. Smith, "Title," *Journal*, vol. 1, no. 2, pp. 10-20, 2023.` |
| Harvard | Harvard Referencing Style | `Smith, J.A. (2023) 'Title', *Journal*, 1(2), pp. 10-20.` |

## Quick Start

### 1. 格式转换(文本输入)

将 APA 格式引用转为 IEEE 格式:

```bash
python3 scripts/citation_formatter.py convert --to ieee "Smith, J. A. (2023). Machine learning approaches. Nature, 12(3), 45-67."
```

### 2. 格式转换(结构化 JSON 输入,更精确)

```bash
echo '{"authors":["Smith, John A.","Jones, Mary B."],"year":"2023","title":"Machine learning approaches","journal":"Nature","volume":"12","issue":"3","pages":"45-67","entry_type":"article"}' | python3 scripts/citation_formatter.py format --style ieee
```

### 3. 格式错误检查

```bash
python3 scripts/citation_formatter.py check --style apa "Smith J (2023) Machine learning. Nature 12(3) 45-67"
```

### 4. 批量处理

```bash
# 从文件批量转换(每行一条引用)
python3 scripts/citation_formatter.py convert --to mla --input refs.txt

# 批量检查
python3 scripts/citation_formatter.py check --style apa --input refs.txt
```

### 5. 自动检测格式

```bash
python3 scripts/citation_formatter.py detect "Smith, J. A. (2023). Title. Nature, 12(3), 45-67."
```

## 子命令详细说明

### `format` — 结构化数据格式化

将 JSON 格式的结构化引用数据转为指定格式的引用文本。**这是最可靠的方式**,因为不需要解析文本。

```bash
# 通过 stdin 传入 JSON
echo '{"authors":["Zhang, Wei"],"year":"2024","title":"Deep Learning","publisher":"Springer","entry_type":"book"}' | python3 scripts/citation_formatter.py format --style harvard

# 通过 --data 参数传入
python3 scripts/citation_formatter.py format --style apa --data '{"authors":["Li, Ming"],"year":"2024","title":"AI Methods","journal":"Science","volume":"5","pages":"1-10","entry_type":"article"}'

# 批量:传入 JSON 数组文件
python3 scripts/citation_formatter.py format --style mla --input citations.json
```

**JSON 字段说明:**

| 字段 | 类型 | 必填 | 说明 |
|------|------|------|------|
| `authors` | `string[]` | ✓ | 作者列表,格式 `"姓, 名"` |
| `year` | `string` | ✓ | 出版年份 |
| `title` | `string` | ✓ | 标题 |
| `journal` | `string` | 期刊文章必填 | 期刊名称 |
| `volume` | `string` | | 卷号 |
| `issue` | `string` | | 期号 |
| `pages` | `string` | | 页码,如 `"45-67"` |
| `publisher` | `string` | 书籍必填 | 出版社 |
| `doi` | `string` | | DOI |
| `url` | `string` | | URL |
| `entry_type` | `string` | | `article` / `book` / `chapter` / `webpage` |
| `edition` | `string` | | 版次 |
| `city` | `string` | | 出版城市 |

### `parse` — 文本解析为结构化数据

```bash
python3 scripts/citation_formatter.py parse "Smith, J. A. (2023). Title. Nature, 12(3), 45-67."
# 输出 JSON 结构化数据
```

### `convert` — 格式互转

```bash
# 自动检测源格式,转为目标格式
python3 scripts/citation_formatter.py convert --to harvard "Smith, J. A. (2023). Title. Nature, 12(3), 45-67."

# 指定源格式
python3 scripts/citation_formatter.py convert --from apa --to ieee "Smith, J. A. (2023). Title. Nature, 12(3), 45-67."

# JSON 输出
python3 scripts/citation_formatter.py convert --to mla --json "Smith, J. A. (2023). Title. Nature, 12(3), 45-67."
```

### `check` — 格式错误检查

```bash
# 检查 APA 格式是否正确
python3 scripts/citation_formatter.py check --style apa "Smith, J. A. (2023). Title. Nature, 12(3), 45-67."

# JSON 输出(方便程序处理)
python3 scripts/citation_formatter.py check --style apa --json "Smith, J. A. (2023). Title. Nature, 12(3), 45-67."
```

检查项目包括:
- 必填字段缺失(作者、标题、年份)
- 年份格式正确性
- 期刊文章的期刊名、卷号、页码
- 书籍的出版社信息
- DOI 格式
- 各格式特有的标点和结构规范

### `detect` — 自动检测格式

```bash
python3 scripts/citation_formatter.py detect "[1] J. Smith, \"Title,\" Nature, vol. 1, 2023."
# 输出: ieee
```

## 使用建议

1. **最可靠的方式**:先从用户输入中提取结构化信息,构造 JSON,然后用 `format` 子命令格式化
2. **快速转换**:如果用户已有标准格式的引用文本,直接用 `convert` 子命令
3. **批量处理**:将引用放入文件(每行一条),使用 `--input` 参数
4. **质量检查**:转换后用 `check` 子命令验证结果

## 前置条件

- Python 3.7+
- 无需安装额外依赖(仅使用标准库)
- 无需 API Key

Files in this skill

  • LICENSE1.1 KB
  • SKILL.md5.4 KB
  • scripts/citation_formatter.py29.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…