docs: 更新文档导航和解析器指南

- 添加演练场(Playground)文档导航区到主 README
- 新增 Python 解析器文档链接(开发指南、测试报告、LSP集成)
- 更新前端版本号至 0.1.9b19p
- 补充 Python 解析器 requests 库使用章节和官方文档链接
- 添加 JavaScript 和 Python 解析器的语言版本和官方文档
- 优化文档结构,分类为项目文档和外部资源
This commit is contained in:
q
2026-01-11 22:35:45 +08:00
parent b8eee2b8a7
commit 2fcf9cfab1
60 changed files with 10132 additions and 436 deletions

127
parser/setup-graalpy-packages.sh Executable file
View File

@@ -0,0 +1,127 @@
#!/bin/bash
# GraalPy pip 包安装脚本
# 将 pip 包安装到 src/main/resources/graalpy-packages/,可打包进 jar
# 不受 mvn clean 影响
#
# requests 是纯 Python 包,可以用系统 pip 安装
# GraalPy 运行时可以正常加载这些包
set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PARSER_DIR="$SCRIPT_DIR"
PACKAGES_DIR="$PARSER_DIR/src/main/resources/graalpy-packages"
echo "=== GraalPy pip 包安装脚本 ==="
echo ""
echo "目标目录: $PACKAGES_DIR"
echo ""
# 确保目标目录存在
mkdir -p "$PACKAGES_DIR"
# 定义要安装的包列表
# 1. requests 及其依赖 - HTTP 客户端
# 2. python-lsp-server 及其依赖 - Python LSP 服务器(用于代码智能提示)
PACKAGES=(
# requests 依赖
"requests"
"urllib3"
"charset_normalizer"
"idna"
"certifi"
# python-lsp-server (pylsp) 核心
"python-lsp-server"
"jedi"
"python-lsp-jsonrpc"
"pluggy"
# pylsp 可选功能
"pyflakes" # 代码检查
"pycodestyle" # PEP8 风格检查
"autopep8" # 自动格式化
"rope" # 重构支持
"yapf" # 代码格式化
)
echo "将安装以下包到 $PACKAGES_DIR :"
printf '%s\n' "${PACKAGES[@]}"
echo ""
# 使用系统 pip 安装包(纯 Python 包)
echo "开始安装..."
# 尝试不同的 pip 命令
if command -v pip3 &> /dev/null; then
PIP_CMD="pip3"
elif command -v pip &> /dev/null; then
PIP_CMD="pip"
elif command -v python3 &> /dev/null; then
PIP_CMD="python3 -m pip"
elif command -v python &> /dev/null; then
PIP_CMD="python -m pip"
else
echo "✗ 未找到 pip请先安装 Python 和 pip"
exit 1
fi
echo "使用 pip 命令: $PIP_CMD"
echo ""
# 安装所有包
$PIP_CMD install --target="$PACKAGES_DIR" --upgrade "${PACKAGES[@]}" 2>&1
# 验证安装
echo ""
echo "验证安装..."
FAILED=0
if [ -d "$PACKAGES_DIR/requests" ]; then
echo "✓ requests 安装成功"
else
echo "✗ requests 安装失败"
FAILED=1
fi
if [ -d "$PACKAGES_DIR/pylsp" ] || [ -d "$PACKAGES_DIR/python_lsp_server" ]; then
echo "✓ python-lsp-server 安装成功"
else
echo "✗ python-lsp-server 安装失败"
FAILED=1
fi
if [ -d "$PACKAGES_DIR/jedi" ]; then
echo "✓ jedi 安装成功"
else
echo "✗ jedi 安装失败"
FAILED=1
fi
if [ -d "$PACKAGES_DIR/jedi" ]; then
echo "✓ jedi 安装成功"
else
echo "✗ jedi 安装失败"
FAILED=1
fi
if [ $FAILED -eq 1 ]; then
echo ""
echo "✗ 部分包安装失败,请检查错误信息"
exit 1
fi
# 列出已安装的包
echo ""
echo "已安装的主要包:"
ls -1 "$PACKAGES_DIR" | grep -E "^(requests|jedi|pylsp|python_lsp)" | sort | uniq
echo ""
echo "=== 安装完成 ==="
echo ""
echo "pip 包已安装到: $PACKAGES_DIR"
echo "此目录会被打包进 jar不受 mvn clean 影响"
echo ""
echo "包含以下功能:"
echo " - requests: HTTP 客户端,用于网络请求"
echo " - python-lsp-server: Python 语言服务器,提供代码智能提示"
echo " - jedi: Python 自动完成和静态分析库"