is_your_code_rusty 0.2.0

一个用于分析 Rust 代码质量的命令行工具,可从复杂度、命名规范、错误处理、代码重复率和注释质量五个维度评估代码质量,并给出综合评分和评级,输出markdown文件或直接输出到终端。
# Rust 代码质量分析工具

<a href="https://www.rust-lang.org/"><img src="https://img.shields.io/badge/language-Rust-orange.svg"></a> <a href="https://gitee.com/yizili/is_your_code_rusty"><img src="https://img.shields.io/badge/origin-gitee-cyan.svg"></a> <a href="https://github.com/AnExample698/is_your_code_ruty"><img src="https://img.shields.io/badge/origin-github-magenta.svg"></a> <img src="https://img.shields.io/badge/license-MIT-blue.svg">

一个可配置的 Rust 代码质量分析工具,支持自定义权重和多种输出格式。

## 功能特性

- **多维度分析**  - 代码复杂度(循环/嵌套深度)
  - 命名规范(蛇形命名/长度检查)
  - 错误处理(`unwrap`/`expect` 检测)
  - 代码重复率(重复行检测)
  - 注释质量(密度分析)

- **灵活配置**  - 可调整各维度权重
  - 支持终端彩色输出
  - 生成Markdown格式报告

- **智能评估**  - 加权综合评分 (0-100)
  - 中文质量评级(锈迹斑斑/平整如镜等)
  - 详细问题摘要

## 安装使用

### 编译安装

```bash
git clone https://github.com/your-repo/rust-code-analyzer.git
cd rust-code-analyzer
cargo build --release
```

### 使用方法

```bash
# 基本用法(终端输出+默认权重)
./is_your_code_rusty [路径]

# 生成Markdown报告
./is_your_code_rusty [路径] -m

# 自定义权重(复杂度,命名,错误处理,重复,注释)
./is_your_code_rusty [路径] -w 0.3 0.2 0.3 0.1 0.1

# 混合使用
./is_your_code_rusty src/ -m -w 0.4 0.1 0.3 0.1 0.1
```

### 全局公开

#### Linux

```bash
sudo cp <is_your_code_rusty的路径> /bin/is_your_code_rusty
```

运行之后重启终端即可使用

## 参数说明

| 参数 | 描述 |
|------|------|
| `-t` | 终端输出模式(默认) |
| `-m` | 生成Markdown报告(`REPORT.md`|
| `-w` | 设置权重(5个浮点数,总和须为1.0) |

## 权重配置

默认权重分配:

```rust
[0.25,  // 复杂度
 0.20,  // 命名规范
 0.20,  // 错误处理
 0.20,  // 代码重复率
 0.15]  // 注释质量
```

配置示例:

- **强调质量**`-w 0.4 0.2 0.2 0.1 0.1`
- **严格命名**`-w 0.2 0.3 0.2 0.2 0.1`
- **轻注释**`-w 0.3 0.2 0.2 0.2 0.1`

## 输出示例

### 终端输出

![终端输出示例](terminal_example.png)

### Markdown报告

```markdown
# Rust项目代码质量报告

## 权重配置

| 维度 | 权重 |
|---|---|
| 复杂度 | 0.25 |
| 命名规范 | 0.20 |
| 错误处理 | 0.20 |
| 重复率 | 0.20 |
| 注释质量 | 0.15 |

## 总体评价

| 维度 | 得分 | 评级 |
|---|---|---|
| 综合评分 | 69.7 | 反光 |

## 1. main.rs
**评价**:

| 维度 | 权重 | 得分 | 评级 | 问题摘要 |
|---|---|---|---|---|
| 综合评分 | - | 69.7 | 反光 | 有改进空间 |
| 复杂度 | 0.25 | 100.0 | 优秀 | 结构清晰 |
| 命名规范 | 0.20 | 48.6 | 不足 | 部分命名不符规范 |
| 错误处理 | 0.20 | 60.0 | 一般 | 错误处理基本完善 |
| 重复率 | 0.20 | 100.0 | 优秀 | 无重复代码 |
| 注释质量 | 0.15 | 20.0 | 不足 | 注释严重不足 |
```

## 许可证

MIT License © 2023 [Your Name]