拼题A(Pintia)刷题插件 for VS Code

使用 vscode-pintia 插件高效地在 VS Code 刷题

插件概述

用户可在 VS Code 中练习拼题 A 编程类习题(不支持文件题、私人题集中的选择、填空题等)

更新日志

详细更新日志,查看仓库的 CHANGELOG

[0.8.2 紧急热修复] - 2025/03/21

拼题 A 接口变更导致用户登录认证失败,请升级到最新版本(v0.8.2)后重启 VS Code。

[0.8.0] - 2025/03/15

功能更新
  • 题目预览

    • 增加更多操作按钮,收录不常用的操作
    • 增加复制题目原内容的功能
  • 文件命名(插件配置项 Issue #14

    • 支持自定义文件名模板,包括题目 ID、题目标签、题目名称、题目集 ID 等
    • 支持使用拼音转换中文题目名称
    • 支持自定义题目集文件夹名称
  • 编辑器快捷键

    • 在 PTA 源文件中新增提交答案(Cmd/Ctrl+Shift+J)与测试代码(Cmd/Ctrl+Shift+K)的快捷键
    • 在题目预览页增加 开始编程Cmd/Ctrl+Enter)快捷键

[v0.7.1] 2024/12/28

本次增加了多项更新,具体如下:

功能更新
  • 支持 《我的问题集》Issue #4
  • 新增 Cookie 登录方式,用户可使用 key 为 PTASession 的 Cookie 登录
  • 支持 自动检测 题目中的输入样例并快速提交测试
  • 题目预览页增加 题目刷新查看上次提交 按钮
  • 更新并优化题目预览页、提交页、测试页的样式
  • 增加题目查看历史 View
  • 支持查看题目时,自动创建源文件
  • 题目预览中显示题目代码性能要求
  • 优化了新建源代码时头部注释的格式
  • 新增清除题目查看历史和收藏题目的命令
  • 支持中英文语言切换
问题修复
  • 自动创建没有对应考试的题目集(Issue #6
  • 自动过滤编程题以外的题目集
  • 修复提交页当源代码中存在 markdown 笔记时的样式错误问题

[v0.3.1] 2023/01/24

新增功能
  • 添加插件演练以指导如何使用该插件,在命令面板中键入 Get Started: Open Walkthroughs…
  • 增加题目搜索功能,及其对应命令 Pintia: Search Problem
  • 根据 VS Code 的使用语言自动切换中英文
  • 在代码编辑器中添加 Preview 快捷命令以重新预览题目
  • 添加 Java 语言的常用模板(BufferReader、Scanner)
  • 在题目预览中,增加搜索引擎与题解入口以快速搜索题目
更新与修复
  • 修复提交测试时的错误
  • 添加自定义样例时,由 Line Comment 改为 Block Comment

插件详细功能介绍

0. 核心功能

  • 使用微信二维码扫码登录或 Cookie 登录拼题 A
  • 支持 公共题库我的题目集(需要读者验证码的题集会被标记上锁符号)
  • 在 VS Code 中 预览/编程/测试 题目
  • 自动检测题目题干中的输入样例作为测试用例
  • 向拼题 A 提交或测试你的 Solution
  • 在编辑区中快速添加 多个自定义测试样例
  • 自动签到拼题 A 教育超市

1. 插件安装

img
拼题 A 插件安装

  1. 在本地安装 VS Code
  2. 在 VS Code 的插件商店中,搜索关键字 pintia 或者 pta,点击安装。或者点此进入插件主页点击安装进行跳转。

2. 使用介绍

2.1. 登录/登出

img
点击「登录拼题 A」进行登录,支持以下两种登录方式:

  1. 微信二维码登录
  2. Cookie 登录

2.2. 预览问题与编码

img

  • 点击问题,即可查看问题描述
  • 点击右下角的 开始编程 进行解题

注:插件中默认选择的语言是C++,可以在设置中或者使用命令面板键入 Pintia: Change Default Language 来快速修改默认使用的编程语言。部分题集(如教材类题集)指定了可用的编程语言,此时创建源文件则会以规定使用的语言为准,如果指定可用的编程语言有多个(如 ZOJ Problem Set 题集),则会弹出提示以重新选择想用的编程语言。

每道题目的源文件会被创建到用户指定的工作区目录,首次创建源文件时,需要用户选择所用的工作区(默认推荐的工作区目录为 $HOME/.pintia/codes ),或者也可在 VS Code 的设置中修改 pintia.workspaceFolder 配置项。

2.3. 编辑器快捷键

img

  • 拼题 A 插件暂支持 3 个编辑器快捷键
  • 提交/Submit:向 Pintia 提交你的答案
  • 测试/Test:用自定义的测试样例默认样例测试你的答案
  • 预览题目/Preview: 预览并刷新题目

点击 Test 测试代码时,会自动获取题目中可用的测试样例(并不是问题描述中的输入输出样例)作为默认测试样例,若无默认测试样例插件会予以提示。

注:默认的测试样例指的是,Pintia 能提供答案的测试样例。使用自定义的测试样例测试代码时,Pintia 只会返回你的代码对测试样例的输出而不会返回真实的答案。而使用默认的测试样例时,Pintia 会提供正确的输出予以对照(但实际上部分题目即使提供了默认测样样例,Pintia 也不会返回正确输出)。

2.4. 自定义测试样例

img

自定义测试样例是为了方便快速测试自己的代码,你可以直接在代码的下方将自定义的测试样例放置在@pintia test=start 和@pintia test=end 之间(输入 ptatest 可快速添加),并点击 Test custom sample 来快速测试。自定义测试样例可添加多个。

注:在代码编辑区点击 Submit 或者 Test 提交代码时,只有包裹在@pintia code=start 与@pintia code=end 中的代码会被提交,区域外的文本内容不会被提交到 Pintia,因此这有个小 trick,即提交函数题时,可以在源文件中添加完整的代码供本地测试,而将所要提交的函数段代码包裹在上述标识符中。如果误删了上述标识,可在编辑区中输入 ptacode 来快速添加。

3. 命令面板

为了快速使用相关功能,可以在 VS Code 中使用 Ctrl+Shift+P (in Windows) 或 Command+Shift+P (in Mac) 打开命令面板并输入 pta 以快速使用插件的相关命令。可用的命令如下:

命令描述备注
pintia.clearCache清除题目缓存发现题目集信息与官方不同时可使用该命令
pintia.signIn登录
pintia.signOut退出登录
pintia.changeDefaultLanguage修改默认编程语言可设置拼题 A 官方所支持的所有语言
pintia.changeWorkspaceFolder修改工作区文件夹
pintia.checkIn签到拼题 A 教育商店建议在配置项中设置成自动签到
pintia.reportIssue问题反馈
pintia.searchProblem搜索题目默认忽略 ZOJ 题目集,可在配置项中修改
pintia.refreshProblemSearchIndex刷新题目搜索索引为了加快数据加载速度,数据被缓存在本地,如果发现数题目缺失可刷新
pintia.openWorkspace打开 Pintia 工作区
pintia.clearViewedProblems清除题目预览历史
pintia.clearFavoriteProblems清除我的收藏夹

4. 插件配置项

设置名称描述默认值
pintia.workspaceFolder工作区文件夹的路径(存储题目源文件)。“”
pintia.previewProblem.openAndCodeIt指定是否在预览题目时自动打开代码编辑器,开启时建议不要将 #pintia.previewProblem.defaultOpenedMethod# 设置为 总是询问。false
pintia.previewProblem.defaultOpenedMethod指定打开代码编辑器的方式,默认为 总是询问。总是询问
pintia.paging.pageSize指定当题目集较大时候,是否对题目列表分页。pageSize 为 0 表示不分页。100
pintia.codeColorTheme指定代码着色主题。atom-one
pintia.showLocked指定是否显示未解锁的题集(一些教材题目集)。true
pintia.enableStatusBar指定是否显示 PTA 状态栏。true
pintia.autoCheckIn指定是否在激活插件时自动签到 PTA 教育商店。true
pintia.defaultLanguage设置答题时默认使用的编程语言。C++ (g++)
pintia.editor.shortcuts自定义编码时的编辑器快捷键。[“Submit”,“Test”, “Preview”]
pintia.searchIndex.ignoreZOJ指定搜索题目时,是否忽略 ZOJ Problem Set 题集。true
pintia.searchIndex.ignoreLockedProblemSets指定搜索题目时,是否忽略 未被解锁的 题集。true
pintia.searchIndex.autoRefresh指定是否在激活插件时自动刷新题目搜索索引(不推荐设置,因为固定题集更新频率较低且获取索引较耗时)。false
pintia.autoCreateProblemSetFolder指定创建题目源文件时是否自动创建其习题集文件夹并将源代码文件放入相应的文件夹中。true
pintia.problemHistoryListSize指定题目预览历史列表的大小。200

5. 维护计划

  1. 支持本地查看题解
  2. 增加习题考点标签
### VSCode 中用于练习 SQL 的插件 对于希望在 Visual Studio Code (VSCode) 中练习 SQL 并的开发者来说,有几个非常实用的扩展可以考虑。 #### 1. SQLTools SQLTools 是一款功能强大的数据库管理工具,支持多种类型的数据库连接。它不仅能够执行查询语句,还提供了直观的结果展示界面以及历史记录保存等功能[^1]。 安装方法如下: ```bash ext install mtxr.sqltools ``` 配置完成后可以通过快捷键快速打开新查询窗口并输入想要测试的 SQL 代码片段。 #### 2. Database Client by Yu Zhang 此插件允许用户直接在编辑器内操作不同种类的关系型数据库产品,比如 MySQL, PostgreSQL 等等。除了基本的数据浏览外,也集成了在线编程环境以便于进行更复杂的脚本编写与调试工作。 安装命令为: ```bash ext install yzhang-gh.dbclient ``` 启动之后会弹出对话框引导完成必要的设置流程,随后即可享受便捷的服务体验。 #### 3. LeetCode Extension For Vscode By Xixi Huang 虽然主要面向算法竞赛选手设计,但是该插件同样适用于任何希望通过实际案例来提高自己 SQL 技能的人群。内置了大量的目资源可供挑选挑战,并且每道都附带详细的解析说明帮助理解掌握知识点[^3]。 安装方式很简单: ```bash ext install leetcode.vscode-leetcode ``` 激活后可以在侧边栏找到对应的入口链接进入具体的训练环节。 以上就是关于如何利用 VSCode 插件来进行 SQL 学习的一些推荐方案。通过这些工具的支持,相信能够在很大程度上提升个人效率和技术水平。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值