Skip to content

🚀 v0.5.0 - Judge Mode 評測系統與完整繁體中文文檔

Latest

Choose a tag to compare

@CXPhoenix CXPhoenix released this 23 Sep 07:24

這是一個重大更新版本,帶來了完整的程式碼評測系統、優化的 stdin 輸入處理,以及全面的繁體中文文檔。

🏷️ 重大變更 (Breaking Changes)

✨ 主要新功能

🎯 Judge Mode 評測系統

  • 自動評測功能:支援多組測試案例的自動化評測
  • 並行處理:同時執行多個測試案例,提升評測效率
  • 結果比對:自動比對程式輸出與預期結果,顯示 AC/NA 狀態
  • 靈活配置:可自訂測試檔案目錄和檔案名稱
  python:
    judge:
      dir: "judge"
      inputs: ["1.in", "2.in"]
      outputs: ["1.out", "2.out"]

⌨️ 多元 stdin 輸入處理

支援兩種輸入模式,讓教學和實作更加便利:

  1. Frontmatter 預定義模式
  python:
    stdin:
      - "Alice"
      - "25"
  1. 程式碼註解模式
# stdin: "Bob"
# input: 30
name = input("請輸入姓名: ")
age = input("請輸入年齡: ")

📖 文檔與使用者體驗改進

  • 🇹🇼 完整繁體中文文檔:使用台灣慣用繁體中文用語重寫所有文檔
  • 📋 新增 CHANGELOG.md:完整記錄所有版本變更歷史
  • 🛠️ 技術架構說明:詳細介紹核心元件和效能最佳化
  • 💡 智慧錯誤處理:針對 stdin 相關錯誤提供詳細解決方案
  • 🎨 更新示範檔案:展示各種功能的完整使用範例

🔧 技術改進

  • StdinManager 類別:專門管理多種輸入模式的核心類別
  • 並行處理最佳化:Judge Mode 支援同時執行多組測試案例
  • 錯誤處理增強:提供更友善的錯誤提示和除錯資訊
  • 效能最佳化:改進 Pyodide 快取機制和載入策略

📦 安裝與升級

新安裝

npm install @cxphoenix/slidev-addon-python-runner

從舊版本升級

如果您之前使用的是 slidev-addon-python-runner,請:

  1. 移除舊套件:
    npm uninstall slidev-addon-python-runner

  2. 安裝新套件:
    npm install @cxphoenix/slidev-addon-python-runner

  3. 更新 slides.md 中的 addons 設定:
    addons:
    - slidev-addon-python-runner # 舊的
    - @cxphoenix/slidev-addon-python-runner # 新的

🎓 使用範例

Judge Mode 評測範例

  # 在 public/judge/ 目錄下放置測試檔案
  # 1.in: "James"
  # 1.out: "hello James"

  name = input()
  print(f"hello {name}")

多種輸入模式展示

查看更新的 ./slides.md 檔案,了解完整的功能展示。

🤝 致謝

感謝原開發者 https://github.com/KermanX 的基礎工作,以及所有為這個專案做出貢獻的開發者。

📚 相關連結


Full Changelog: v0.2.0...0.5.0