环境

  • Qpro基于python3,
  • 请确保电脑在拥有Python环境的同时, 至少安装一套其他要使用的语言环境.

功能

  • 提供脚本在命令行里高效运行项目
  • 提供模板管理器,轻松将代码保存和导出。
  • 提供对拍器,轻松进行程序输出结果的对拍或进行文本文件的对比。

特殊说明

  • Qpro对CLion的特殊支持: 在CLion项目中,Qpro可以自动将其初始化为Qpro项目

  • Qpro现内置c,cpp, java, python2@3的支持。你可以使用Qpro -c创建相应项目

  • Qpro远程映射支持ipv6

安装:

  • pip3 install Qpro [--upgrade]

使用:

Command Result
Qpro -init 将当前文件夹初始化为Qpro项目
Qpro -h 查看帮助
Qpro -c project 创建一个Qpro项目
Qpro -update 更新Qpro
Qpro -adjust 修改配置表
Qpro -ssh 进入服务器Qpro项目位置
Qpro -scp path 将项目内文件夹或文件上传到默认服务器
Qpro -scp-init 将整个项目上传到默认服务器
Qpro -get path 从服务器上拉取项目内文件
Qpro -del path 从Qpro项目中删除文件(夹)
Qpro -del-all 删除整个项目
Qpro -ls path 查看远程映射上的文件
tmpm * 调用模板脚本,刷新项目中的默认源文件
qrun * 使用运行脚本运行你的项目,Windows(qrun)
detector [-[p/f][p/f]] 运行对拍器(对拍器只能在Qpro -init后的文件夹下运行)
  • 初始化后的项目,可以手动编辑配置表project_configure.csv来调整配置。
  • 支持C/CPP但不止于C/CPP,理论上你可以使用Qpro运行任何语言项目。

配置表

  • 请您务必了解配置表的含义,QuickProject几乎完全根据配置表工作

    • 修改project_configure.csv来调整脚本默认配置
键值 含义 默认
compile_tool (编译工具, 编译标志) (gcc, ‘’) / (g++, ‘’) / …
compile_filename 待编译的文件 main.cpp / main.c
executable_filename 编译出的可执行文件名 项目名
input_file 默认的输入文件 ./cmake-build-debug/input.txt
template_root 默认的模板库根目录 template/
server_target (默认的服务器映射位置, 端口) (空/user@ip:dir_path/, 22)
  • 编译时执行命令:compile_tool[0] + compile_filename + compile_tool[1]
  • 运行时执行命令:executable_filename + ...args
  • 运行Qpro -adjust修改配置表:
    GUI

运行脚本

编译或运行

参数 含义
-b 编译
-r 运行
-br 编译且运行

如果上述三个命令都不存在,则默认运行当前编译好的程序

参数 含义
-f *.c / *.cpp 设置目标源文件为*.c / *.cpp

输入输出

  • 可以编辑 默认的输入文件 来设置默认输入
  • 运行 qrun [...] > output.txt 使程序输出到 ./output.txt
参数 效果
-i 使用默认的输入文件作为输入
-if *.* 更改输入文件
-if -paste 使用粘贴板内容作为输入
  • 程序的额外命令行参数:
  • 所有未被run命令匹配的参数都将按顺序传递给源程序。

查看帮助

  • qrun -h : 可以查看使用帮助(Windows系统不支持颜色显示)
    help

推荐的命令示例

命令 效果
qrun -i 使用默认输入文件并运行
qrun 运行
qrun -br -i 编译且使用输入文件运行

模板脚本

命令 效果
tmpm -h 查看帮助
tmpm -itmpm 将主文件初始化为template/main中的内容
tmpm -r 选择备份并恢复
tmpm -r backup 恢复为template/backup
tmpm -c backup 创建或覆盖template/backup
tmpm -c template algorithm 拷贝指定位置, 创建模板集并写入算法
tmpm -a template algorithm 拷贝指定位置, 向模板集追加算法
tmpm name __TMPM__处插入name模板集内的模板
  • 关于指定位置: tmpm 将会把compile_filename中处于__TMPM_START____TMPM_END__之间的内容识别, 并拷贝

对拍器

  • 使用: detector 来进行两个源程序运行结果的对拍,结果存储在当前目录下的./res.html
命令 效果
detector [-pp] 打开默认对拍器(文件1文件2都是程序),-pp参数可缺省
detector -pf 运行文件1程序并将结果与文件2对比
detector -fp 运行文件2程序并将结果与文件1对比
detector -ff 对比文件1文件2的内容(你可以在任何位置调用)
  • 如果脚本未能自动打开./res.html, 你可以用浏览器打开它。

GUI