CQL 教程/CQL 工具/cqlip 包管理器

cqlip 包管理器

使用 cqlip 命令安装、卸载与查看 CQL 包,了解包在 ~/.cql 目录下的存储结构与自动导入机制。

19.1简介

安装 CQL(pip install cql-lang)后,会获得两个命令行工具:

  • cql:编译器 / 解释器,提供 run / build / js / runjs / repl 等子命令。
  • cqlip:包管理器,提供 install / uninstall / list 子命令。

cqlip 用于管理 CQL 包,安装后的包会被编译为 Python 模块,并自动加入 cql run 的导入路径,可以直接用中文 导入 语句使用。

bash
$ cqlip --help
# 用法:install / uninstall / list

19.2安装包

安装命令为 cqlip install 包名,默认从当前目录查找名为「包名.cql」的文件或「包名/」目录进行安装:

bash
cqlip install 包名                # 从当前目录的「包名.cql」或「包名/」目录安装
cqlip install 包名 --source 路径   # 从指定文件或目录安装
  • 包名不带 .cql 后缀,cqlip 会自动匹配「包名.cql」单文件或「包名/」目录。
  • 包不在当前目录时,用 --source 路径 指定文件或目录的位置。
提示:安装完成后会自动编译全部 .cql,无需手动构建。

19.3卸载与查看

卸载与查看已安装的包:

bash
cqlip uninstall 包名   # 卸载已安装的包
cqlip list             # 列出所有已安装的包

cqlip list 会输出当前已安装的包名列表,方便确认安装结果。

19.4存储结构

所有包都存放在用户主目录下的 ~/.cql 目录中,分为源码区与缓存区:

  • 源码:~/.cql/packages/包名/,保存安装时的原始 .cql 源码。
  • 编译产物:~/.cql/cache/包名/,保存编译生成的 .py 文件,保持相对路径(即目录结构与源码一致)。
目录结构
~/.cql/
├── packages/包名/    # 安装的 .cql 源码
└── cache/包名/       # 自动编译的 .py 产物,保持相对路径

安装完成后,cqlip 会自动把包内的全部 .cql 文件编译到 cache 目录,因此导入时可以直接使用编译好的 Python 模块。

19.5自动导入

cql run 执行 .cql 源码时,会自动将 ~/.cql/cache 加入 sys.path。也就是说,安装好的包无需任何额外配置,直接中文 导入 即可使用:

cql
# 假设已通过 cqlip install 安装了名为「工具集」的包
导入 工具集

工具集.打印问候()
打印("自动导入成功")

安装、编译、导入整条链路都是自动的:cqlip install 负责放入源码并编译,cql run 负责把编译产物目录加入导入路径,使用者只需要写 导入 包名 一行。

注意:自动导入仅对 cql run 生效;若在普通 Python 中运行,需要自行把 ~/.cql/cache 加入 sys.path