Files
taiko-web/SORT_USAGE.md
AnthonyDuan 25c26b2b2e feat: 添加歌曲智能排序功能(默认启用)
- 实现智能排序:数字 -> 字母 -> 其他符号
- 添加 smartSort() 方法支持自然数值排序
- 默认启用排序功能,用户无需设置
- 支持多语言字符(中文、日文、英文等)
- 添加完整的测试工具和文档

新增文件:
- test_sort.html (可视化测试页面)
- verify_sort.py (Python验证脚本)
- verify_sort.js (Node.js验证脚本)
- SORT_FEATURE.md (功能说明)
- SORT_USAGE.md (使用指南)
- QUICKSTART_SORT.md (快速开始)
- IMPLEMENTATION_SUMMARY.md (实现总结)
- CHANGELOG_SORT.md (更新日志)
- UPDATE_SUMMARY.md (更新说明)

修改文件:
- public/src/js/songselect.js (添加智能排序逻辑)
- README.md (更新功能介绍)
2025-11-15 15:59:08 +08:00

4.1 KiB
Raw Blame History

歌曲智能排序功能 - 使用指南

功能简介

歌曲智能排序功能已默认启用,可以按照数字 → 字母 → 其他符号的顺序自动整理歌曲列表。

🎉 好消息:无需任何设置,首次使用即自动排序!


🎯 排序规则

优先级顺序

  1. 数字开头 (0-9) - 最高优先级
  2. 字母开头 (A-Z, a-z) - 中等优先级
  3. 其他字符开头 (中文、日文、符号等) - 最低优先级

同类排序

  • 数字按数值大小排序1 → 2 → 10 → 100
  • 字母按字母表顺序不区分大小写A → a → B → b
  • 其他:按 Unicode 编码排序

📖 使用方法

默认行为(推荐)

无需任何操作!

  1. 打开游戏
  2. 歌曲已自动按智能顺序排列
  3. 开始游玩

🔧 禁用排序(可选)

如果你不喜欢自动排序,可以禁用它:

方法一:游戏内设置

  1. 在歌曲选择界面找到 "タイトル順で並べ替え" 选项
  2. 点击该选项
  3. 在弹出的提示框中输入 false 禁用排序
  4. 页面会自动刷新并恢复原始顺序

方法二:浏览器控制台

F12 打开开发者工具,在控制台输入:

// 禁用排序
localStorage.setItem("titlesort", "false");
location.reload();

// 重新启用排序
localStorage.setItem("titlesort", "true");
location.reload();

// 禁用排序 localStorage.setItem("titlesort", "false"); location.reload();


---

## 🧪 测试排序功能

### 在线测试页面
打开 `test_sort.html` 文件来查看排序效果演示:

```bash
# 启动本地服务器
cd taiko-web
python -m http.server 8080

# 然后在浏览器访问
http://localhost:8080/test_sort.html

测试结果示例

排序前:

太鼓の達人
Zyxwv Test
123 Song
abc melody
456 rhythm
*Special*
10 drums
...

排序后:

2 beats          [数字]
10 drums         [数字]
100 percent      [数字]
123 Song         [数字]
456 rhythm       [数字]
777              [数字]
1st Place        [数字]
3pieces          [数字]
99 Balloons      [数字]
abc melody       [字母]
Angel Beats      [字母]
Apple            [字母]
Battle No.1      [字母]
Brave Heart      [字母]
Don't Stop       [字母]
Zyxwv Test       [字母]
ZZZ Final        [字母]
*Special*        [其他]
~奇跡~           [其他]
あいうえお        [其他]
カノン           [其他]
ドンだー!        [其他]
夏祭り           [其他]
太鼓の達人        [其他]
燎原ノ舞          [其他]
零 -ZERO-        [其他]

🔧 技术细节

修改的文件

  • public/src/js/songselect.js - 添加了 smartSort() 方法

核心代码

smartSort(titleA, titleB) {
    // 判断字符类型(数字/字母/其他)
    // 按类型优先级排序
    // 同类型内使用 localeCompare 自然排序
}

特性

  • 支持多语言(中文、日文、英文等)
  • 数字按数值排序(不是字符串排序)
  • 字母不区分大小写
  • 保持用户设置(使用 localStorage
  • 不影响游戏其他功能

常见问题

Q1: 排序后没有变化?

A: 确保已经正确设置 titlesorttrue,并刷新页面。

Q2: 如何恢复默认顺序?

A:titlesort 设置为 false 并刷新页面。

Q3: 排序会影响游戏性能吗?

A: 不会。排序只在加载歌曲列表时执行一次。

Q4: 可以自定义排序规则吗?

A: 当前版本暂不支持,未来版本可能会添加。


📝 更新日志

Version 1.0 (2025-11-15)

  • 初始版本
  • 支持数字、字母、其他符号的智能排序
  • 添加游戏内设置选项
  • 创建测试页面

🎮 快速开始

5秒启用排序

  1. 打开游戏
  2. 找到 "タイトル順で並べ替え"
  3. 输入 true
  4. 完成!

享受整洁有序的歌曲列表吧! 🎵


📧 反馈与建议

如有问题或建议,请通过项目 Issues 提交。

Processed by AnthonyDuan 💜