1cfac23c01
Co-authored-by: Cursor <cursoragent@cursor.com>
1.8 KiB
1.8 KiB
Changelog — 终端页 SPA 迭代
日期: 2026-06-01
摘要
迭代 #/terminal:全屏布局、路由 server_id/path 联动、统一 WebSocket URL、连接状态与空状态 UX;文件管理页增加「终端」入口。
动机
用户要求对 app/#/terminal 继续迭代;生产页存在终端区域高度不足、从服务器二次进入不建会话、连接态不清晰等问题。
涉及文件
frontend/src/App.vue—nexus-terminal-main布局frontend/src/pages/TerminalPage.vue— 核心迭代frontend/src/utils/wsUrl.ts(新)frontend/src/pages/FilesPage.vue— 带当前路径打开终端docs/design/specs/2026-06-01-terminal-spa-iteration-design.md(新)
验证
cd frontend && npm run type-check- 打开
#/terminal?server_id=8→ 终端区占满、状态「已连接」、可输入 - 已在终端时从服务器点「终端」→ 切换对应标签
- 文件管理选服务器+路径 →「终端」→ 自动
cd到当前目录 npm run test:e2e中 terminal 用例
迁移 / 重启
- 仅前端:需
vite build+ 上传web/app/ - 后端无变更
回滚
还原上述前端文件并重新构建部署。
补充(同日)— SSH 输出 ANSI 颜色
- 术语:ANSI 颜色(终端输出);底部输入栏为 Shell 语法高亮
- 前端:xterm 浅色主题补全 16 色 ANSI 调色板,
drawBoldTextInBrightColors - 后端:连接后
export TERM=xterm-256color COLORTERM=truecolor FORCE_COLOR=1
补充(同日)— Shell 语法高亮增强
- 新增
frontend/src/utils/shellHighlight.ts:命令/管道/重定向/字符串/变量/注释/路径等分词着色 - 新增
ShellHighlightField.vue:底部命令栏 + 快捷命令编辑框统一高亮 - 深浅色主题各一套配色(
:deep(.sh-*))