pi-web-ui 0.90.1 → 0.92.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +81 -1
- package/bin/pi-web-ui.mjs +21 -2
- package/dist/server/agent-service.js +1206 -106
- package/dist/server/claim-files-tool.js +116 -0
- package/dist/server/claim-store.js +301 -0
- package/dist/server/client-state.js +119 -5
- package/dist/server/compaction-markers.js +287 -0
- package/dist/server/conversation-read-tool.js +369 -27
- package/dist/server/conversation-touches.js +357 -0
- package/dist/server/delegate-task.js +12 -1
- package/dist/server/dsh/dsh-agent-service.js +28 -1
- package/dist/server/file-transfer-routes.js +4 -1
- package/dist/server/icon-svg.js +35 -0
- package/dist/server/index.js +152 -34
- package/dist/server/model-admin.js +124 -2
- package/dist/server/model-enrich.js +478 -0
- package/dist/server/plugin-catalog.js +5 -0
- package/dist/server/plugin-facilities.js +42 -11
- package/dist/server/plugin-schedule.js +27 -2
- package/dist/server/plugins.js +112 -18
- package/dist/server/present-files-tool.js +303 -0
- package/dist/server/prompt-composer.js +1 -1
- package/dist/server/protocol-version.js +1 -1
- package/dist/server/read-tool.js +91 -0
- package/dist/server/schedule-agent-tool.js +23 -5
- package/dist/server/scheduler-tasks.js +60 -1
- package/dist/server/scm-commitmsg.js +140 -0
- package/dist/server/scm.js +42 -0
- package/dist/server/serialize.js +21 -1
- package/dist/server/settings-service.js +47 -0
- package/dist/server/skill-tool.js +120 -0
- package/dist/server/soft-cap.js +68 -0
- package/dist/server/subagent-templates.js +6 -0
- package/dist/server/subagents.js +157 -16
- package/dist/server/text-sniff.js +15 -0
- package/dist/server/themes.js +17 -2
- package/dist/server/tool-manager.js +13 -1
- package/package.json +2 -1
- package/plugin-sdk/README.md +1 -0
- package/plugins/catalog.json +20 -0
- package/themes/catppuccin-latte.css +136 -0
- package/themes/catppuccin.css +140 -0
- package/themes/nord.css +130 -0
- package/themes/one-dark.css +131 -0
- package/themes/paper.css +12 -12
- package/themes/solarized-light.css +131 -0
- package/themes/tokyo-night.css +140 -0
- package/web/dist/assets/{TerminalPanel-CkxM4Byl.js → TerminalPanel-RACpk6AX.js} +1 -1
- package/web/dist/assets/es-DIDZppIF.js +2 -0
- package/web/dist/assets/index-BgrnP9Jz.js +364 -0
- package/web/dist/assets/index-Cy8dSTZt.css +1 -0
- package/web/dist/index.html +2 -2
- package/web/dist/assets/index-DJIV4A-t.js +0 -355
- package/web/dist/assets/index-DLdcRBs_.css +0 -1
package/plugins/catalog.json
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
"id": "webmail",
|
|
4
4
|
"name": "webmail",
|
|
5
5
|
"icon": "📬",
|
|
6
|
+
"iconSvg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z\"/><polyline points=\"22,6 12,13 2,6\"/></svg>",
|
|
6
7
|
"description": "网页邮箱:IMAP 收件 + SMTP 发信 + 新邮件通知,可开放给 AI 直接管理邮件。",
|
|
7
8
|
"descriptionEn": "Web mail: IMAP inbox + SMTP send + new-mail notifications, optionally let the AI manage mail.",
|
|
8
9
|
"source": "xing-shuyin/pi-web-ui/plugins/webmail",
|
|
@@ -12,6 +13,7 @@
|
|
|
12
13
|
"id": "db-client",
|
|
13
14
|
"name": "db-client",
|
|
14
15
|
"icon": "🗄️",
|
|
16
|
+
"iconSvg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><ellipse cx=\"12\" cy=\"5\" rx=\"9\" ry=\"3\"/><path d=\"M21 12c0 1.66-4 3-9 3s-9-1.34-9-3\"/><path d=\"M3 5v14c0 1.66 4 3 9 3s9-1.34 9-3V5\"/></svg>",
|
|
15
17
|
"description": "数据库连接管理:MySQL / PostgreSQL / SQLite / SQL Server / MongoDB / Redis 的库表浏览、SQL 查询与数据编辑。",
|
|
16
18
|
"descriptionEn": "Database client: browse schemas, run SQL and edit data across MySQL / PostgreSQL / SQLite / SQL Server / MongoDB / Redis.",
|
|
17
19
|
"source": "xing-shuyin/pi-web-ui/plugins/db-client",
|
|
@@ -21,6 +23,7 @@
|
|
|
21
23
|
"id": "vscode-editor",
|
|
22
24
|
"name": "vscode-editor",
|
|
23
25
|
"icon": "📝",
|
|
26
|
+
"iconSvg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"m16 18 6-6-6-6\"/><path d=\"m8 6-6 6 6 6\"/></svg>",
|
|
24
27
|
"description": "类 VSCode 工作台:多根文件树 + CodeMirror 编辑器 + 底部终端 + Remote-SSH + SFTP 同步;向 AI 注册 SFTP/SSH/远端文件工具,可自主传代码。",
|
|
25
28
|
"descriptionEn": "VSCode-like workbench: multi-root file tree, CodeMirror editor, integrated terminal, Remote-SSH and SFTP sync; registers SFTP/SSH/remote-file tools so the AI can deploy code itself.",
|
|
26
29
|
"source": "xing-shuyin/pi-web-ui/plugins/vscode-editor",
|
|
@@ -30,6 +33,7 @@
|
|
|
30
33
|
"id": "mermaid",
|
|
31
34
|
"name": "mermaid",
|
|
32
35
|
"icon": "📊",
|
|
36
|
+
"iconSvg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"18\" cy=\"5\" r=\"3\"/><circle cx=\"6\" cy=\"12\" r=\"3\"/><circle cx=\"18\" cy=\"19\" r=\"3\"/><line x1=\"8.59\" y1=\"13.51\" x2=\"15.42\" y2=\"17.49\"/><line x1=\"15.41\" y1=\"6.51\" x2=\"8.59\" y2=\"10.49\"/></svg>",
|
|
33
37
|
"description": "把对话里的 ```mermaid 围栏渲染成 SVG 图表(fenced-code 渲染插件,本地引擎离线优先)。",
|
|
34
38
|
"descriptionEn": "Renders ```mermaid fences in messages to SVG diagrams (fenced-code renderer plugin, offline-first local engine).",
|
|
35
39
|
"source": "xing-shuyin/pi-web-ui/plugins/mermaid",
|
|
@@ -39,6 +43,7 @@
|
|
|
39
43
|
"id": "run-trace",
|
|
40
44
|
"name": "run-trace",
|
|
41
45
|
"icon": "🧭",
|
|
46
|
+
"iconSvg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"22 12 18 12 15 21 9 3 6 12 2 12\"/></svg>",
|
|
42
47
|
"description": "运行轨迹:任务 → 思考 → 工具 → 文件改动 → 结果的时间线聚合视图,支持回放与节点详情。",
|
|
43
48
|
"descriptionEn": "Run trajectory: task → thinking → tools → file changes → result timeline with replay and node details.",
|
|
44
49
|
"source": "xing-shuyin/pi-web-ui/plugins/run-trace",
|
|
@@ -48,6 +53,7 @@
|
|
|
48
53
|
"id": "legado-web",
|
|
49
54
|
"name": "legado-web",
|
|
50
55
|
"icon": "📖",
|
|
56
|
+
"iconSvg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z\"/><path d=\"M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z\"/></svg>",
|
|
51
57
|
"description": "Legado 阅读(文本源):搜索 / 发现 / 详情 / 目录 / 正文,书源 JSON 与安卓版兼容,可导入、检测、删废源;内置跨域+GBK 代理与本地存储,并给 AI 配了修源接口(读规则、读书源文件、逐步诊断链路、试规则验证)。",
|
|
52
58
|
"descriptionEn": "Legado reader (text book sources): search / explore / info / TOC / content with Android-compatible book source JSON, plus source import and health checking. Ships its own CORS+GBK proxy, local store, and AI tools to diagnose and repair book sources.",
|
|
53
59
|
"source": "xing-shuyin/pi-web-ui/plugins/legado-web",
|
|
@@ -57,6 +63,7 @@
|
|
|
57
63
|
"id": "wechat-ilink",
|
|
58
64
|
"name": "微信通道",
|
|
59
65
|
"icon": "💬",
|
|
66
|
+
"iconSvg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21 11.5a8.38 8.38 0 0 1-.9 3.8 8.5 8.5 0 0 1-7.6 4.7 8.38 8.38 0 0 1-3.8-.9L3 21l1.9-5.7a8.38 8.38 0 0 1-.9-3.8 8.5 8.5 0 0 1 4.7-7.6 8.38 8.38 0 0 1 3.8-.9h.5a8.48 8.48 0 0 1 8 8v.5z\"/></svg>",
|
|
60
67
|
"description": "微信扫码登录(与腾讯 openclaw-weixin 同源的 ilink 协议):出站长轮询收消息,微信里直接指挥 agent,无需公网 IP。",
|
|
61
68
|
"descriptionEn": "WeChat channel (ilink protocol, same origin as Tencent openclaw-weixin): outbound long-polling, drive the agent from WeChat, no public IP needed.",
|
|
62
69
|
"source": "xing-shuyin/pi-web-ui/plugins/wechat-ilink",
|
|
@@ -66,6 +73,7 @@
|
|
|
66
73
|
"id": "voice-input",
|
|
67
74
|
"name": "语音输入",
|
|
68
75
|
"icon": "🎤",
|
|
76
|
+
"iconSvg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z\"/><path d=\"M19 10v2a7 7 0 0 1-14 0v-2\"/><line x1=\"12\" y1=\"19\" x2=\"12\" y2=\"23\"/><line x1=\"8\" y1=\"23\" x2=\"16\" y2=\"23\"/></svg>",
|
|
69
77
|
"description": "语音输入:输入框旁的麦克风按钮,浏览器语音识别直接听写进输入框;不支持/识别失败时自动降级为服务端转写(远端接口,或一键安装的本地 Whisper,免费不出网)。",
|
|
70
78
|
"descriptionEn": "Voice input: a mic button next to the composer. Browser speech recognition dictates into the input box, with server-side transcription as automatic fallback (remote API, or one-click local Whisper that runs fully offline).",
|
|
71
79
|
"source": "xing-shuyin/pi-web-ui/plugins/voice-input",
|
|
@@ -75,6 +83,7 @@
|
|
|
75
83
|
"id": "live-preview",
|
|
76
84
|
"name": "live-preview",
|
|
77
85
|
"icon": "🌐",
|
|
86
|
+
"iconSvg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"10\"/><line x1=\"2\" y1=\"12\" x2=\"22\" y2=\"12\"/><path d=\"M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z\"/></svg>",
|
|
78
87
|
"description": "Live Server 式预览:/liveserver 看 HTML(含相对资源与自动刷新),/md 看 Markdown 渲染;真服务只绑回环地址,经宿主通用代理对外只露同源前缀。",
|
|
79
88
|
"descriptionEn": "Live-Server-style preview: HTML under /liveserver (relative assets + auto reload), rendered Markdown under /md. Loopback-only inner server exposed via host proxy prefixes.",
|
|
80
89
|
"source": "xing-shuyin/pi-web-ui/plugins/live-preview",
|
|
@@ -84,9 +93,20 @@
|
|
|
84
93
|
"id": "image-toolkit",
|
|
85
94
|
"name": "image-toolkit",
|
|
86
95
|
"icon": "🖼",
|
|
96
|
+
"iconSvg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"/><circle cx=\"8.5\" cy=\"8.5\" r=\"1.5\"/><polyline points=\"21 15 16 10 5 21\"/></svg>",
|
|
87
97
|
"description": "图片处理工作台:压缩(可按目标体积二分逼近)、裁剪、缩放、旋转/翻转、格式转换(PNG/JPEG/WebP/AVIF)、批量导出 ZIP、水印、滤镜调色、图片信息与 EXIF,可直接读写工作区图片;另给 AI 配了 4 个工具,让 agent 自己压缩/裁剪/缩放/加水印工作区里的图。",
|
|
88
98
|
"descriptionEn": "Image workbench: compress (with target-size binary search), crop, resize, rotate/flip, format conversion (PNG/JPEG/WebP/AVIF), batch ZIP export, watermark, filters, image info + EXIF, and direct workspace read/write. Ships 4 AI tools so the agent can compress/crop/resize/watermark workspace images itself.",
|
|
89
99
|
"source": "xing-shuyin/pi-web-ui/plugins/image-toolkit",
|
|
90
100
|
"homepage": "https://github.com/xing-shuyin/pi-web-ui/tree/main/plugins/image-toolkit"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"id": "notes",
|
|
104
|
+
"name": "笔记",
|
|
105
|
+
"icon": "📓",
|
|
106
|
+
"iconSvg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 1024 1024\"><path d=\"M746.666667 64a170.666667 170.666667 0 0 1 170.666666 170.666667v554.666666a170.666667 170.666667 0 0 1-170.666666 170.666667H298.666667a170.666667 170.666667 0 0 1-170.666667-170.666667V234.666667a170.666667 170.666667 0 0 1 170.666667-170.666667h448z m0 74.666667H298.666667a96 96 0 0 0-95.893334 91.477333L202.666667 234.666667v554.666666a96 96 0 0 0 91.477333 95.893334L298.666667 885.333333h448a96 96 0 0 0 95.893333-91.477333L842.666667 789.333333V234.666667a96 96 0 0 0-91.477334-95.893334L746.666667 138.666667z\" fill=\"currentColor\"/><path d=\"M224 325.333333a37.333333 37.333333 0 0 1 3.072 74.538667l-3.072 0.128H106.666667a37.333333 37.333333 0 0 1-3.072-74.538667L106.666667 325.333333h117.333333zM224 624a37.333333 37.333333 0 0 1 3.072 74.538667l-3.072 0.128H106.666667a37.333333 37.333333 0 0 1-3.072-74.538667L106.666667 624h117.333333zM693.333333 346.666667a37.333333 37.333333 0 0 1 37.205334 34.261333l0.128 3.072v256a37.333333 37.333333 0 0 1-74.538667 3.072L656 640V384c0-20.608 16.725333-37.333333 37.333333-37.333333z\" fill=\"currentColor\"/></svg>",
|
|
107
|
+
"description": "随手记:笔记 + 待办 + 日程提醒三合一。顶栏按钮打开可自由拖拽的全局浮窗(位置/尺寸记忆,设置也在浮窗里,无独立视图页);提醒走服务端定时(重启不丢、错过补送),另有 5 个 AI 工具与 /note /todo /remind 快速捕获。",
|
|
108
|
+
"descriptionEn": "Notes, todos and scheduled reminders in one place: a freely draggable always-on-top panel (position, size and settings all live in it, no separate view tab); reminders fire server-side (survive restarts, delivered on next open), with 5 AI tools and /note /todo /remind quick capture.",
|
|
109
|
+
"source": "xing-shuyin/pi-web-ui/plugins/notes",
|
|
110
|
+
"homepage": "https://github.com/xing-shuyin/pi-web-ui/tree/main/plugins/notes"
|
|
91
111
|
}
|
|
92
112
|
]
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/* theme-name: Catppuccin 浅色 */
|
|
2
|
+
/* theme-name-en: Catppuccin Latte */
|
|
3
|
+
/* theme-group: classic */
|
|
4
|
+
:root {
|
|
5
|
+
color-scheme: light;
|
|
6
|
+
--bg: #eff1f5;
|
|
7
|
+
--bg-elev: #e6e9ef;
|
|
8
|
+
--bg-elev2: #dce0e8;
|
|
9
|
+
--border: #ccd0da;
|
|
10
|
+
--border-soft: #bcc0cc;
|
|
11
|
+
--text: #4c4f69;
|
|
12
|
+
--text-dim: #6c6f85;
|
|
13
|
+
--text-faint: #8c8fa1;
|
|
14
|
+
--accent: #1e66f5;
|
|
15
|
+
--accent-soft: rgba(30, 102, 245, 0.12);
|
|
16
|
+
--green: #40a02b;
|
|
17
|
+
--green-soft: rgba(64, 160, 43, 0.12);
|
|
18
|
+
--red: #d20f39;
|
|
19
|
+
--red-soft: rgba(210, 15, 57, 0.1);
|
|
20
|
+
--amber: #df8e1d;
|
|
21
|
+
--term-bg: #eff1f5;
|
|
22
|
+
--term-fg: #4c4f69;
|
|
23
|
+
--term-cursor: #dc8a78;
|
|
24
|
+
--term-cursor-accent: #eff1f5;
|
|
25
|
+
--term-selection: rgba(172, 176, 190, 0.35);
|
|
26
|
+
--term-black: #5c5f77;
|
|
27
|
+
--term-red: #d20f39;
|
|
28
|
+
--term-green: #40a02b;
|
|
29
|
+
--term-yellow: #df8e1d;
|
|
30
|
+
--term-blue: #1e66f5;
|
|
31
|
+
--term-magenta: #8839ef;
|
|
32
|
+
--term-cyan: #179299;
|
|
33
|
+
--term-white: #4c4f69;
|
|
34
|
+
--term-bright-black: #8c8fa1;
|
|
35
|
+
--term-bright-red: #d20f39;
|
|
36
|
+
--term-bright-green: #40a02b;
|
|
37
|
+
--term-bright-yellow: #df8e1d;
|
|
38
|
+
--term-bright-blue: #1e66f5;
|
|
39
|
+
--term-bright-magenta: #8839ef;
|
|
40
|
+
--term-bright-cyan: #179299;
|
|
41
|
+
--term-bright-white: #3c3e53;
|
|
42
|
+
--mono: "SF Mono", "JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;
|
|
43
|
+
--mermaid-font-size: 12px;
|
|
44
|
+
--tooltip-bg: #ffffff;
|
|
45
|
+
--code-bg: #e6e9ef;
|
|
46
|
+
--code-text: #4c4f69;
|
|
47
|
+
--code-border: var(--border-soft);
|
|
48
|
+
--code-pad: 8px 10px;
|
|
49
|
+
--card-body-pad: 4px 14px 12px;
|
|
50
|
+
--err-text: #d20f39;
|
|
51
|
+
--red-text: #d20f39;
|
|
52
|
+
--amber-text: #df8e1d;
|
|
53
|
+
--info-blue: #179299;
|
|
54
|
+
--link: #1e66f5;
|
|
55
|
+
--link-hover: #7287fd;
|
|
56
|
+
--link-soft: #1e66f5;
|
|
57
|
+
--md-strong: #3c3e53;
|
|
58
|
+
--skill-blue: #1e66f5;
|
|
59
|
+
--plugin-purple: #b58cff;
|
|
60
|
+
--auth-green: #40a02b;
|
|
61
|
+
--scroll-thumb: #ccd0da;
|
|
62
|
+
--scroll-thumb-hover: #bcc0cc;
|
|
63
|
+
--notice-err-bg: #401d23;
|
|
64
|
+
--notice-warn-bg: #38251f;
|
|
65
|
+
--notice-info-bg: #1b2544;
|
|
66
|
+
--notice-err-border: #ef4444;
|
|
67
|
+
--notice-warn-border: #f59e0b;
|
|
68
|
+
--notice-info-border: #3b82f6;
|
|
69
|
+
--send-blue: #1e66f5;
|
|
70
|
+
--send-blue-hover: #7287fd;
|
|
71
|
+
--brand-grad-a: #1e66f5;
|
|
72
|
+
--brand-grad-b: #8839ef;
|
|
73
|
+
--on-amber: #1a1a1a;
|
|
74
|
+
--search-active-fg: #1a1d26;
|
|
75
|
+
--switch-knob: #ffffff;
|
|
76
|
+
--bg-elev3: rgba(255, 255, 255, 0.06);
|
|
77
|
+
--sunken-bg: rgba(0, 0, 0, 0.15);
|
|
78
|
+
--glow-015: rgba(255, 255, 255, 0.015);
|
|
79
|
+
--glow-025: rgba(255, 255, 255, 0.025);
|
|
80
|
+
--glow-03: rgba(255, 255, 255, 0.03);
|
|
81
|
+
--glow-04: rgba(255, 255, 255, 0.04);
|
|
82
|
+
--glow-05: rgba(255, 255, 255, 0.05);
|
|
83
|
+
--glow-12: rgba(255, 255, 255, 0.12);
|
|
84
|
+
--glow-18: rgba(255, 255, 255, 0.18);
|
|
85
|
+
--glow-22: rgba(255, 255, 255, 0.22);
|
|
86
|
+
--glow-38: rgba(255, 255, 255, 0.38);
|
|
87
|
+
--control-fg: #6c6f85;
|
|
88
|
+
--control-bg: #dce0e8;
|
|
89
|
+
--control-border: #ccd0da;
|
|
90
|
+
--bg-image: none;
|
|
91
|
+
--bg-image-dim: 0.78;
|
|
92
|
+
--bg-image-blur: 0px;
|
|
93
|
+
--wallpaper-panel-alpha: 100%;
|
|
94
|
+
--topbar-bg: #e6e9ef;
|
|
95
|
+
--statusbar-bg: #e6e9ef;
|
|
96
|
+
--panel-bg: #e6e9ef;
|
|
97
|
+
--card-bg: #e6e9ef;
|
|
98
|
+
--chip-bg: #dce0e8;
|
|
99
|
+
--msgs-bg: #eff1f5;
|
|
100
|
+
--inputbox-bg: #dce0e8;
|
|
101
|
+
--menu-bg: var(--bg-elev2);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/* ---- syntax highlighting (Catppuccin Latte) ---- */
|
|
105
|
+
.hljs {
|
|
106
|
+
color: #4c4f69;
|
|
107
|
+
background: #e6e9ef;
|
|
108
|
+
}
|
|
109
|
+
.hljs-doctag,
|
|
110
|
+
.hljs-keyword,
|
|
111
|
+
.hljs-meta .hljs-keyword {
|
|
112
|
+
color: #8839ef;
|
|
113
|
+
}
|
|
114
|
+
.hljs-title,
|
|
115
|
+
.hljs-title.class_,
|
|
116
|
+
.hljs-title.function_ {
|
|
117
|
+
color: #1e66f5;
|
|
118
|
+
}
|
|
119
|
+
.hljs-attr,
|
|
120
|
+
.hljs-attribute,
|
|
121
|
+
.hljs-literal,
|
|
122
|
+
.hljs-number {
|
|
123
|
+
color: #fe640b;
|
|
124
|
+
}
|
|
125
|
+
.hljs-string,
|
|
126
|
+
.hljs-regexp {
|
|
127
|
+
color: #40a02b;
|
|
128
|
+
}
|
|
129
|
+
.hljs-built_in,
|
|
130
|
+
.hljs-type {
|
|
131
|
+
color: #df8e1d;
|
|
132
|
+
}
|
|
133
|
+
.hljs-comment,
|
|
134
|
+
.hljs-code {
|
|
135
|
+
color: #7c7f93;
|
|
136
|
+
}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
/* theme-name: Catppuccin */
|
|
2
|
+
/* theme-name-en: Catppuccin Mocha */
|
|
3
|
+
/* theme-group: classic */
|
|
4
|
+
:root {
|
|
5
|
+
color-scheme: dark;
|
|
6
|
+
--bg: #1e1e2e;
|
|
7
|
+
--bg-elev: #24273a;
|
|
8
|
+
--bg-elev2: #313244;
|
|
9
|
+
--border: #45475a;
|
|
10
|
+
--border-soft: #363a4f;
|
|
11
|
+
--text: #cdd6f4;
|
|
12
|
+
--text-dim: #a6adc8;
|
|
13
|
+
--text-faint: #6c7086;
|
|
14
|
+
--accent: #89b4fa;
|
|
15
|
+
--accent-soft: rgba(137, 180, 250, 0.14);
|
|
16
|
+
--green: #a6e3a1;
|
|
17
|
+
--green-soft: rgba(166, 227, 161, 0.12);
|
|
18
|
+
--red: #f38ba8;
|
|
19
|
+
--red-soft: rgba(243, 139, 168, 0.12);
|
|
20
|
+
--amber: #f9e2af;
|
|
21
|
+
--term-bg: #181825;
|
|
22
|
+
--term-fg: #cdd6f4;
|
|
23
|
+
--term-cursor: #f5e0dc;
|
|
24
|
+
--term-cursor-accent: #181825;
|
|
25
|
+
--term-selection: rgba(88, 91, 112, 0.4);
|
|
26
|
+
--term-black: #45475a;
|
|
27
|
+
--term-red: #f38ba8;
|
|
28
|
+
--term-green: #a6e3a1;
|
|
29
|
+
--term-yellow: #f9e2af;
|
|
30
|
+
--term-blue: #89b4fa;
|
|
31
|
+
--term-magenta: #cba6f7;
|
|
32
|
+
--term-cyan: #89dceb;
|
|
33
|
+
--term-white: #bac2de;
|
|
34
|
+
--term-bright-black: #585b70;
|
|
35
|
+
--term-bright-red: #f38ba8;
|
|
36
|
+
--term-bright-green: #a6e3a1;
|
|
37
|
+
--term-bright-yellow: #f9e2af;
|
|
38
|
+
--term-bright-blue: #89b4fa;
|
|
39
|
+
--term-bright-magenta: #cba6f7;
|
|
40
|
+
--term-bright-cyan: #89dceb;
|
|
41
|
+
--term-bright-white: #a6adc8;
|
|
42
|
+
--mono: "SF Mono", "JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;
|
|
43
|
+
--mermaid-font-size: 12px;
|
|
44
|
+
--tooltip-bg: #313244;
|
|
45
|
+
--code-bg: #181825;
|
|
46
|
+
--code-text: #cdd6f4;
|
|
47
|
+
--code-border: var(--border-soft);
|
|
48
|
+
--code-pad: 8px 10px;
|
|
49
|
+
--card-body-pad: 4px 14px 12px;
|
|
50
|
+
--err-text: #f38ba8;
|
|
51
|
+
--red-text: #f38ba8;
|
|
52
|
+
--amber-text: #f9e2af;
|
|
53
|
+
--info-blue: #89dceb;
|
|
54
|
+
--link: #89b4fa;
|
|
55
|
+
--link-hover: #b4befe;
|
|
56
|
+
--link-soft: #89b4fa;
|
|
57
|
+
--md-strong: #cdd6f4;
|
|
58
|
+
--skill-blue: #89b4fa;
|
|
59
|
+
--plugin-purple: #b58cff;
|
|
60
|
+
--auth-green: #a6e3a1;
|
|
61
|
+
--scroll-thumb: #45475a;
|
|
62
|
+
--scroll-thumb-hover: #585b70;
|
|
63
|
+
--notice-err-bg: #401d23;
|
|
64
|
+
--notice-warn-bg: #38251f;
|
|
65
|
+
--notice-info-bg: #1b2544;
|
|
66
|
+
--notice-err-border: #ef4444;
|
|
67
|
+
--notice-warn-border: #f59e0b;
|
|
68
|
+
--notice-info-border: #3b82f6;
|
|
69
|
+
--send-blue: #89b4fa;
|
|
70
|
+
--send-blue-hover: #b4befe;
|
|
71
|
+
--brand-grad-a: #89b4fa;
|
|
72
|
+
--brand-grad-b: #cba6f7;
|
|
73
|
+
--on-amber: #1a1a1a;
|
|
74
|
+
--search-active-fg: #1a1d26;
|
|
75
|
+
--switch-knob: #ffffff;
|
|
76
|
+
--bg-elev3: rgba(255, 255, 255, 0.06);
|
|
77
|
+
--sunken-bg: rgba(0, 0, 0, 0.15);
|
|
78
|
+
--glow-015: rgba(255, 255, 255, 0.015);
|
|
79
|
+
--glow-025: rgba(255, 255, 255, 0.025);
|
|
80
|
+
--glow-03: rgba(255, 255, 255, 0.03);
|
|
81
|
+
--glow-04: rgba(255, 255, 255, 0.04);
|
|
82
|
+
--glow-05: rgba(255, 255, 255, 0.05);
|
|
83
|
+
--glow-12: rgba(255, 255, 255, 0.12);
|
|
84
|
+
--glow-18: rgba(255, 255, 255, 0.18);
|
|
85
|
+
--glow-22: rgba(255, 255, 255, 0.22);
|
|
86
|
+
--glow-38: rgba(255, 255, 255, 0.38);
|
|
87
|
+
--control-fg: #a6adc8;
|
|
88
|
+
--control-bg: #313244;
|
|
89
|
+
--control-border: #45475a;
|
|
90
|
+
--bg-image: none;
|
|
91
|
+
--bg-image-dim: 0.78;
|
|
92
|
+
--bg-image-blur: 0px;
|
|
93
|
+
--wallpaper-panel-alpha: 100%;
|
|
94
|
+
--topbar-bg: #24273a;
|
|
95
|
+
--statusbar-bg: #181825;
|
|
96
|
+
--panel-bg: #24273a;
|
|
97
|
+
--card-bg: #24273a;
|
|
98
|
+
--chip-bg: #313244;
|
|
99
|
+
--msgs-bg: #1e1e2e;
|
|
100
|
+
--inputbox-bg: #313244;
|
|
101
|
+
--menu-bg: var(--bg-elev2);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/* ---- syntax highlighting (Catppuccin Mocha) ---- */
|
|
105
|
+
.hljs {
|
|
106
|
+
color: #cdd6f4;
|
|
107
|
+
background: #181825;
|
|
108
|
+
}
|
|
109
|
+
.hljs-doctag,
|
|
110
|
+
.hljs-keyword,
|
|
111
|
+
.hljs-meta .hljs-keyword {
|
|
112
|
+
color: #cba6f7;
|
|
113
|
+
}
|
|
114
|
+
.hljs-title,
|
|
115
|
+
.hljs-title.class_,
|
|
116
|
+
.hljs-title.function_ {
|
|
117
|
+
color: #89b4fa;
|
|
118
|
+
}
|
|
119
|
+
.hljs-attr,
|
|
120
|
+
.hljs-attribute,
|
|
121
|
+
.hljs-literal,
|
|
122
|
+
.hljs-number {
|
|
123
|
+
color: #fab387;
|
|
124
|
+
}
|
|
125
|
+
.hljs-string,
|
|
126
|
+
.hljs-regexp {
|
|
127
|
+
color: #a6e3a1;
|
|
128
|
+
}
|
|
129
|
+
.hljs-built_in,
|
|
130
|
+
.hljs-type {
|
|
131
|
+
color: #f9e2af;
|
|
132
|
+
}
|
|
133
|
+
.hljs-comment,
|
|
134
|
+
.hljs-code {
|
|
135
|
+
color: #6c7086;
|
|
136
|
+
}
|
|
137
|
+
.hljs-tag,
|
|
138
|
+
.hljs-name {
|
|
139
|
+
color: #89dceb;
|
|
140
|
+
}
|
package/themes/nord.css
ADDED
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
/* theme-name: 北欧极光 */
|
|
2
|
+
/* theme-name-en: Nord */
|
|
3
|
+
/* theme-group: classic */
|
|
4
|
+
:root {
|
|
5
|
+
color-scheme: dark;
|
|
6
|
+
--bg: #2e3440;
|
|
7
|
+
--bg-elev: #3b4252;
|
|
8
|
+
--bg-elev2: #434c5e;
|
|
9
|
+
--border: #4c566a;
|
|
10
|
+
--border-soft: #3b4252;
|
|
11
|
+
--text: #d8dee9;
|
|
12
|
+
--text-dim: #e5e9f0;
|
|
13
|
+
--text-faint: #818c9f;
|
|
14
|
+
--accent: #88c0d0;
|
|
15
|
+
--accent-soft: rgba(136, 192, 208, 0.14);
|
|
16
|
+
--green: #a3be8c;
|
|
17
|
+
--green-soft: rgba(163, 190, 140, 0.12);
|
|
18
|
+
--red: #bf616a;
|
|
19
|
+
--red-soft: rgba(191, 97, 106, 0.12);
|
|
20
|
+
--amber: #ebcb8b;
|
|
21
|
+
--term-bg: #242933;
|
|
22
|
+
--term-fg: #d8dee9;
|
|
23
|
+
--term-cursor: #88c0d0;
|
|
24
|
+
--term-cursor-accent: #242933;
|
|
25
|
+
--term-selection: rgba(67, 76, 94, 0.5);
|
|
26
|
+
--term-black: #3b4252;
|
|
27
|
+
--term-red: #bf616a;
|
|
28
|
+
--term-green: #a3be8c;
|
|
29
|
+
--term-yellow: #ebcb8b;
|
|
30
|
+
--term-blue: #81a1c1;
|
|
31
|
+
--term-magenta: #b48ead;
|
|
32
|
+
--term-cyan: #88c0d0;
|
|
33
|
+
--term-white: #e5e9f0;
|
|
34
|
+
--term-bright-black: #4c566a;
|
|
35
|
+
--term-bright-red: #bf616a;
|
|
36
|
+
--term-bright-green: #a3be8c;
|
|
37
|
+
--term-bright-yellow: #ebcb8b;
|
|
38
|
+
--term-bright-blue: #81a1c1;
|
|
39
|
+
--term-bright-magenta: #b48ead;
|
|
40
|
+
--term-bright-cyan: #8fbcbb;
|
|
41
|
+
--term-bright-white: #eceff4;
|
|
42
|
+
--mono: "SF Mono", "JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;
|
|
43
|
+
--mermaid-font-size: 12px;
|
|
44
|
+
--tooltip-bg: #3b4252;
|
|
45
|
+
--code-bg: #242933;
|
|
46
|
+
--code-text: #d8dee9;
|
|
47
|
+
--code-border: var(--border-soft);
|
|
48
|
+
--code-pad: 8px 10px;
|
|
49
|
+
--card-body-pad: 4px 14px 12px;
|
|
50
|
+
--err-text: #bf616a;
|
|
51
|
+
--red-text: #bf616a;
|
|
52
|
+
--amber-text: #ebcb8b;
|
|
53
|
+
--info-blue: #81a1c1;
|
|
54
|
+
--link: #88c0d0;
|
|
55
|
+
--link-hover: #81a1c1;
|
|
56
|
+
--link-soft: #88c0d0;
|
|
57
|
+
--md-strong: #eceff4;
|
|
58
|
+
--skill-blue: #88c0d0;
|
|
59
|
+
--plugin-purple: #b58cff;
|
|
60
|
+
--auth-green: #a3be8c;
|
|
61
|
+
--scroll-thumb: #434c5e;
|
|
62
|
+
--scroll-thumb-hover: #4c566a;
|
|
63
|
+
--notice-err-bg: #401d23;
|
|
64
|
+
--notice-warn-bg: #38251f;
|
|
65
|
+
--notice-info-bg: #1b2544;
|
|
66
|
+
--notice-err-border: #ef4444;
|
|
67
|
+
--notice-warn-border: #f59e0b;
|
|
68
|
+
--notice-info-border: #3b82f6;
|
|
69
|
+
--send-blue: #88c0d0;
|
|
70
|
+
--send-blue-hover: #81a1c1;
|
|
71
|
+
--brand-grad-a: #88c0d0;
|
|
72
|
+
--brand-grad-b: #81a1c1;
|
|
73
|
+
--on-amber: #1a1a1a;
|
|
74
|
+
--search-active-fg: #1a1d26;
|
|
75
|
+
--switch-knob: #ffffff;
|
|
76
|
+
--bg-elev3: rgba(255, 255, 255, 0.06);
|
|
77
|
+
--sunken-bg: rgba(0, 0, 0, 0.15);
|
|
78
|
+
--glow-015: rgba(255, 255, 255, 0.015);
|
|
79
|
+
--glow-025: rgba(255, 255, 255, 0.025);
|
|
80
|
+
--glow-03: rgba(255, 255, 255, 0.03);
|
|
81
|
+
--glow-04: rgba(255, 255, 255, 0.04);
|
|
82
|
+
--glow-05: rgba(255, 255, 255, 0.05);
|
|
83
|
+
--glow-12: rgba(255, 255, 255, 0.12);
|
|
84
|
+
--glow-18: rgba(255, 255, 255, 0.18);
|
|
85
|
+
--glow-22: rgba(255, 255, 255, 0.22);
|
|
86
|
+
--glow-38: rgba(255, 255, 255, 0.38);
|
|
87
|
+
--control-fg: #d8dee9;
|
|
88
|
+
--control-bg: #3b4252;
|
|
89
|
+
--control-border: #4c566a;
|
|
90
|
+
--bg-image: none;
|
|
91
|
+
--bg-image-dim: 0.78;
|
|
92
|
+
--bg-image-blur: 0px;
|
|
93
|
+
--wallpaper-panel-alpha: 100%;
|
|
94
|
+
--topbar-bg: #3b4252;
|
|
95
|
+
--statusbar-bg: #242933;
|
|
96
|
+
--panel-bg: #3b4252;
|
|
97
|
+
--card-bg: #3b4252;
|
|
98
|
+
--chip-bg: #434c5e;
|
|
99
|
+
--msgs-bg: #2e3440;
|
|
100
|
+
--inputbox-bg: #434c5e;
|
|
101
|
+
--menu-bg: var(--bg-elev2);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/* ---- syntax highlighting (Nord) ---- */
|
|
105
|
+
.hljs {
|
|
106
|
+
color: #d8dee9;
|
|
107
|
+
background: #242933;
|
|
108
|
+
}
|
|
109
|
+
.hljs-keyword,
|
|
110
|
+
.hljs-meta .hljs-keyword {
|
|
111
|
+
color: #81a1c1;
|
|
112
|
+
}
|
|
113
|
+
.hljs-title,
|
|
114
|
+
.hljs-title.function_ {
|
|
115
|
+
color: #88c0d0;
|
|
116
|
+
}
|
|
117
|
+
.hljs-number,
|
|
118
|
+
.hljs-literal {
|
|
119
|
+
color: #b48ead;
|
|
120
|
+
}
|
|
121
|
+
.hljs-string {
|
|
122
|
+
color: #a3be8c;
|
|
123
|
+
}
|
|
124
|
+
.hljs-built_in,
|
|
125
|
+
.hljs-type {
|
|
126
|
+
color: #ebcb8b;
|
|
127
|
+
}
|
|
128
|
+
.hljs-comment {
|
|
129
|
+
color: #616e88;
|
|
130
|
+
}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/* theme-name: One Dark */
|
|
2
|
+
/* theme-name-en: One Dark Pro */
|
|
3
|
+
/* theme-group: classic */
|
|
4
|
+
:root {
|
|
5
|
+
color-scheme: dark;
|
|
6
|
+
--bg: #282c34;
|
|
7
|
+
--bg-elev: #21252b;
|
|
8
|
+
--bg-elev2: #2c313a;
|
|
9
|
+
--border: #3e4451;
|
|
10
|
+
--border-soft: #31363f;
|
|
11
|
+
--text: #abb2bf;
|
|
12
|
+
--text-dim: #828997;
|
|
13
|
+
--text-faint: #5c6370;
|
|
14
|
+
--accent: #61afef;
|
|
15
|
+
--accent-soft: rgba(97, 175, 239, 0.14);
|
|
16
|
+
--green: #98c379;
|
|
17
|
+
--green-soft: rgba(152, 195, 121, 0.12);
|
|
18
|
+
--red: #e06c75;
|
|
19
|
+
--red-soft: rgba(224, 108, 117, 0.12);
|
|
20
|
+
--amber: #e5c07b;
|
|
21
|
+
--term-bg: #1e2227;
|
|
22
|
+
--term-fg: #abb2bf;
|
|
23
|
+
--term-cursor: #528bff;
|
|
24
|
+
--term-cursor-accent: #1e2227;
|
|
25
|
+
--term-selection: rgba(62, 68, 81, 0.5);
|
|
26
|
+
--term-black: #282c34;
|
|
27
|
+
--term-red: #e06c75;
|
|
28
|
+
--term-green: #98c379;
|
|
29
|
+
--term-yellow: #e5c07b;
|
|
30
|
+
--term-blue: #61afef;
|
|
31
|
+
--term-magenta: #c678dd;
|
|
32
|
+
--term-cyan: #56b6c2;
|
|
33
|
+
--term-white: #abb2bf;
|
|
34
|
+
--term-bright-black: #5c6370;
|
|
35
|
+
--term-bright-red: #e06c75;
|
|
36
|
+
--term-bright-green: #98c379;
|
|
37
|
+
--term-bright-yellow: #e5c07b;
|
|
38
|
+
--term-bright-blue: #61afef;
|
|
39
|
+
--term-bright-magenta: #c678dd;
|
|
40
|
+
--term-bright-cyan: #56b6c2;
|
|
41
|
+
--term-bright-white: #ffffff;
|
|
42
|
+
--mono: "SF Mono", "JetBrains Mono", ui-monospace, Menlo, Consolas, monospace;
|
|
43
|
+
--mermaid-font-size: 12px;
|
|
44
|
+
--tooltip-bg: #21252b;
|
|
45
|
+
--code-bg: #1e2227;
|
|
46
|
+
--code-text: #abb2bf;
|
|
47
|
+
--code-border: var(--border-soft);
|
|
48
|
+
--code-pad: 8px 10px;
|
|
49
|
+
--card-body-pad: 4px 14px 12px;
|
|
50
|
+
--err-text: #e06c75;
|
|
51
|
+
--red-text: #e06c75;
|
|
52
|
+
--amber-text: #e5c07b;
|
|
53
|
+
--info-blue: #56b6c2;
|
|
54
|
+
--link: #61afef;
|
|
55
|
+
--link-hover: #528bff;
|
|
56
|
+
--link-soft: #61afef;
|
|
57
|
+
--md-strong: #ffffff;
|
|
58
|
+
--skill-blue: #61afef;
|
|
59
|
+
--plugin-purple: #b58cff;
|
|
60
|
+
--auth-green: #98c379;
|
|
61
|
+
--scroll-thumb: #3e4451;
|
|
62
|
+
--scroll-thumb-hover: #4b5263;
|
|
63
|
+
--notice-err-bg: #401d23;
|
|
64
|
+
--notice-warn-bg: #38251f;
|
|
65
|
+
--notice-info-bg: #1b2544;
|
|
66
|
+
--notice-err-border: #ef4444;
|
|
67
|
+
--notice-warn-border: #f59e0b;
|
|
68
|
+
--notice-info-border: #3b82f6;
|
|
69
|
+
--send-blue: #61afef;
|
|
70
|
+
--send-blue-hover: #528bff;
|
|
71
|
+
--brand-grad-a: #61afef;
|
|
72
|
+
--brand-grad-b: #c678dd;
|
|
73
|
+
--on-amber: #1a1a1a;
|
|
74
|
+
--search-active-fg: #1a1d26;
|
|
75
|
+
--switch-knob: #ffffff;
|
|
76
|
+
--bg-elev3: rgba(255, 255, 255, 0.06);
|
|
77
|
+
--sunken-bg: rgba(0, 0, 0, 0.15);
|
|
78
|
+
--glow-015: rgba(255, 255, 255, 0.015);
|
|
79
|
+
--glow-025: rgba(255, 255, 255, 0.025);
|
|
80
|
+
--glow-03: rgba(255, 255, 255, 0.03);
|
|
81
|
+
--glow-04: rgba(255, 255, 255, 0.04);
|
|
82
|
+
--glow-05: rgba(255, 255, 255, 0.05);
|
|
83
|
+
--glow-12: rgba(255, 255, 255, 0.12);
|
|
84
|
+
--glow-18: rgba(255, 255, 255, 0.18);
|
|
85
|
+
--glow-22: rgba(255, 255, 255, 0.22);
|
|
86
|
+
--glow-38: rgba(255, 255, 255, 0.38);
|
|
87
|
+
--control-fg: #828997;
|
|
88
|
+
--control-bg: #21252b;
|
|
89
|
+
--control-border: #3e4451;
|
|
90
|
+
--bg-image: none;
|
|
91
|
+
--bg-image-dim: 0.78;
|
|
92
|
+
--bg-image-blur: 0px;
|
|
93
|
+
--wallpaper-panel-alpha: 100%;
|
|
94
|
+
--topbar-bg: #21252b;
|
|
95
|
+
--statusbar-bg: #1e2227;
|
|
96
|
+
--panel-bg: #21252b;
|
|
97
|
+
--card-bg: #21252b;
|
|
98
|
+
--chip-bg: #2c313a;
|
|
99
|
+
--msgs-bg: #282c34;
|
|
100
|
+
--inputbox-bg: #2c313a;
|
|
101
|
+
--menu-bg: var(--bg-elev2);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/* ---- syntax highlighting (One Dark Pro) ---- */
|
|
105
|
+
.hljs {
|
|
106
|
+
color: #abb2bf;
|
|
107
|
+
background: #1e2227;
|
|
108
|
+
}
|
|
109
|
+
.hljs-keyword,
|
|
110
|
+
.hljs-meta .hljs-keyword {
|
|
111
|
+
color: #c678dd;
|
|
112
|
+
}
|
|
113
|
+
.hljs-title,
|
|
114
|
+
.hljs-title.function_ {
|
|
115
|
+
color: #61afef;
|
|
116
|
+
}
|
|
117
|
+
.hljs-number,
|
|
118
|
+
.hljs-literal {
|
|
119
|
+
color: #d19a66;
|
|
120
|
+
}
|
|
121
|
+
.hljs-string {
|
|
122
|
+
color: #98c379;
|
|
123
|
+
}
|
|
124
|
+
.hljs-built_in,
|
|
125
|
+
.hljs-type {
|
|
126
|
+
color: #e5c07b;
|
|
127
|
+
}
|
|
128
|
+
.hljs-comment {
|
|
129
|
+
color: #5c6370;
|
|
130
|
+
font-style: italic;
|
|
131
|
+
}
|
package/themes/paper.css
CHANGED
|
@@ -6,10 +6,10 @@
|
|
|
6
6
|
--bg-elev: #fffdf6;
|
|
7
7
|
--bg-elev2: #efe7d3;
|
|
8
8
|
--border: #ddcfae;
|
|
9
|
-
--border-soft: #
|
|
9
|
+
--border-soft: #ded1b3;
|
|
10
10
|
--text: #3f372c;
|
|
11
11
|
--text-dim: #6f6250;
|
|
12
|
-
--text-faint: #
|
|
12
|
+
--text-faint: #6c5a41;
|
|
13
13
|
--accent: #b45309;
|
|
14
14
|
--accent-soft: rgba(180, 83, 9, 0.12);
|
|
15
15
|
--green: #15803d;
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
--term-magenta: #9333ea;
|
|
31
31
|
--term-cyan: #0e7490;
|
|
32
32
|
--term-white: #3f372c;
|
|
33
|
-
--term-bright-black: #
|
|
33
|
+
--term-bright-black: #6c5a41;
|
|
34
34
|
--term-bright-red: #b91c1c;
|
|
35
35
|
--term-bright-green: #15803d;
|
|
36
36
|
--term-bright-yellow: #a16207;
|
|
@@ -89,14 +89,14 @@
|
|
|
89
89
|
--bg-image: none;
|
|
90
90
|
--bg-image-dim: 0.78;
|
|
91
91
|
--bg-image-blur: 0px;
|
|
92
|
-
--wallpaper-panel-alpha:
|
|
93
|
-
--topbar-bg:
|
|
94
|
-
--statusbar-bg:
|
|
95
|
-
--panel-bg:
|
|
96
|
-
--card-bg:
|
|
97
|
-
--chip-bg:
|
|
98
|
-
--msgs-bg:
|
|
99
|
-
--inputbox-bg:
|
|
92
|
+
--wallpaper-panel-alpha: 100%;
|
|
93
|
+
--topbar-bg: #fffdf6;
|
|
94
|
+
--statusbar-bg: #fffdf6;
|
|
95
|
+
--panel-bg: #fffdf6;
|
|
96
|
+
--card-bg: #fffdf6;
|
|
97
|
+
--chip-bg: #efe7d3;
|
|
98
|
+
--msgs-bg: #fffdf6;
|
|
99
|
+
--inputbox-bg: #efe7d3;
|
|
100
100
|
--menu-bg: var(--bg-elev2);
|
|
101
101
|
}
|
|
102
102
|
|
|
@@ -144,7 +144,7 @@
|
|
|
144
144
|
.hljs-comment,
|
|
145
145
|
.hljs-code,
|
|
146
146
|
.hljs-formula {
|
|
147
|
-
color: #
|
|
147
|
+
color: #5f533e;
|
|
148
148
|
}
|
|
149
149
|
.hljs-name,
|
|
150
150
|
.hljs-quote,
|