Skip to content

v1.2.0

Choose a tag to compare

@Bc408 Bc408 released this 20 Sep 11:47

feat:内置 CPH 与 OJ 工作流

  • 内置受保护的 BeCoder CPH,支持 C/C++ 样例编辑、JSON 导入、单例或全部评测、编译、停止、输出差异、源码模板及可选 Python special judge。
  • 从欢迎页打开 OJ,在内置浏览器加载题目后点击“导入题目”,将页面样例交给 CPH;新建源码编辑器组位于题目浏览器左侧,已有源码内容受到保护。
  • 形成“看题 → 导入样例 → 编写解答 → 本地评测 → 手动复制到 OJ 提交”的使用流程。BeCoder 不自动提交,本地样例通过不等同于在线 AC。
  • 欢迎页预置 16 个网站入口,默认显示 Codeforces、AtCoder、洛谷、蓝桥杯、牛客、HDOJ。在“设置 → 扩展 → BeCoder IDE 功能”中添加自定义 HTTP/HTTPS URL、选择显示网站与顺序,修改立即生效。
  • 内置 11 类解析器:Codeforces、AtCoder、洛谷、蓝桥杯、牛客、SPOJ、CSES、HDOJ、AcWing、LibreOJ、DMOJ。包含 LibreOJ Archive 及白名单内的 MOI Arena、Le Quy Don、VNOI、A.Y. Jackson 站点。

fix:运行输出、共享编译与诊断

  • 现在 BC 的 Run / Run With Input 使用 ConPTY 呈现 stdout/stderr ;程序自身的输出缓冲规则仍然有效。
  • Run With Input 在编译前保存 input 文件快照,通过独立 stdin 管道输入。
  • CPH 保持 stdout 判题与 stderr 调试展示分离,默认不因 stderr 有输出判失败。
  • Runner 与 CPH 共用内置 GCC、语言标准、编译参数校验及私有子进程环境。
  • 修复 GCC 16 的 SARIF 诊断及中文、emoji、Tab 等场景的编辑器位置转换。
  • 完善 C++11/14/17/20/23 下的调试头支持:兼容时使用 C++20 PCH缓存,否则使用文本头文件。

docs / build:发行完整性

  • 补齐中英文使用说明、CPH/Competitive Companion 来源、GPL/MIT 声明、Codicons CC-BY-4.0 和 React UI 依赖声明。

使用边界

  • 仅支持非交互式 stdin/stdout C/C++ 题目;自定义网址不自动获得解析能力,不支持任意 DMOJ/Hydro 实例或额外资源/PDF 题目。
  • AcWing、LibreOJ、DMOJ 的解析器有 DOM 契约测试,未声称全部真实在线页面已验收;登录、访问限制和网站改版可能影响导入。
  • CPH 不是沙箱,也不提供等同 OJ 的内存限制执行。可选 Python 检查器使用用户安装的解释器。
  • 提交前请处理仅在 BeCoder 本地提供的 debug 辅助定义(可选择添加如下宏),并选择网站支持的编译器。
#ifndef DEBUG
#define debug
#endif
  • 覆盖安装会完整替换原安装及其私有数据,请先导出需要保留的配置。