脚本运行器
⚠️ 免责声明:本文档由 GLM4.7 自动生成,内容可能存在错误或不完整之处。请以人工书写的官方文档为准。
脚本运行器允许你运行自定义脚本,扩展小说助手的功能。
打开脚本运行器
在 VS Code 左侧活动栏中,点击 脚本图标(类似代码图标),即可打开脚本运行器面板。
界面说明
脚本运行器面板显示:
📧 MCP 服务器
✓ server1
✗ server2
+ 新建脚本...
📁 scripts/
📄 example.js
📄 myscript.ts脚本位置
脚本默认存放在项目的 scripts/ 目录下:
项目根目录/
└── scripts/
├── example.js
└── myscript.ts创建脚本
新建脚本
- 在脚本运行器面板中,点击 + 新建脚本...
- 选择脚本位置
- 输入脚本名称
- 脚本文件会自动创建并打开
脚本模板
javascript
// 示例脚本
function main(context) {
// context 包含:
// - editor: 当前编辑器
// - document: 当前文档
// - selection: 当前选择
const editor = context.editor;
if (!editor) {
console.log('没有打开的编辑器');
return;
}
const document = editor.document;
const text = document.getText();
// 处理文本...
console.log('文档长度:', text.length);
}
module.exports = { main };运行脚本
方法一:右键菜单
- 在脚本运行器面板中右键点击脚本
- 选择 运行脚本
- 查看输出结果
方法二:双击打开
双击脚本文件会打开编辑器,可以编辑后再运行。
MCP 服务器
什么是 MCP?
MCP (Model Context Protocol) 服务器提供额外的功能和扩展。
管理服务器
在脚本运行器面板中:
- 展开 MCP 服务器 节点
- 查看所有已配置的服务器
- ✓ 表示已启用
- ✗ 表示已禁用
启用/禁用服务器
- 点击服务器名称
- 会切换启用/禁用状态
- 已启用的服务器显示 ✓
脚本 API
脚本可以访问以下上下文:
javascript
function main(context) {
// 当前编辑器
const editor = context.editor;
// 当前文档
const document = context.document;
// 当前选择
const selection = context.selection;
// VS Code API
const vscode = context.vscode;
// 使用示例
if (editor) {
const text = document.getText();
console.log('文档长度:', text.length);
}
}脚本示例
统计词频
javascript
function main(context) {
const editor = context.editor;
if (!editor) return;
const text = editor.document.getText();
const words = text.split(/\s+/);
const freq = {};
words.forEach(word => {
freq[word] = (freq[word] || 0) + 1;
});
const sorted = Object.entries(freq)
.sort((a, b) => b[1] - a[1])
.slice(0, 10);
console.log('词频统计:', sorted);
}
module.exports = { main };提取对话
javascript
function main(context) {
const editor = context.editor;
if (!editor) return;
const text = editor.document.getText();
const dialogues = text.match(/「.*?」/g) || [];
console.log('找到 ' + dialogues.length + ' 处对话');
return dialogues;
}
module.exports = { main };查看输出
输出面板
脚本运行结果会显示在输出面板中:
- 点击 查看 > 输出
- 选择 Andrea Scripts 频道
- 查看脚本输出
console.log
脚本中的 console.log() 会输出到输出面板。
右键菜单
在脚本运行器面板中右键点击:
| 菜单项 | 说明 |
|---|---|
| 打开 | 在编辑器中打开脚本 |
| 运行脚本 | 运行选中的脚本 |
| 删除 | 删除脚本文件 |
| 刷新 | 刷新脚本列表 |
常见问题
脚本没有出现在列表中?
- 确认脚本在
scripts/目录下 - 检查文件扩展名是否为
.js或.ts - 尝试刷新面板
脚本运行失败?
- 查看输出面板了解错误
- 检查脚本语法
- 确认导出了
main函数
如何访问项目数据?
通过 context 参数:
context.editor- 当前编辑器context.document- 当前文档context.vscode- VS Code API