当前位置: 首页 > article >正文

[ VS Code 插件开发 ] 使用 Task ( 任务 ) 代替 createTerminal (终端) 来执行命令

VSCode 官方自己的插件就是这样执行命令的. 使用体验 比 默认的终端 好太多了.

重用终端,
Shell 集成 ,
按任意键关闭,
任务是否成功,
左侧命令操作 (菜单中功能很多)

import * as vscode from 'vscode';
// 执行的命令
let command_str = "npm run dev"
// 工作目录
let cwd = "D:\\Work\\JsProject\\nodejs-demo"

// 创建 Task
const task = new vscode.Task(
    { type: "shell" }, // 任务类型
    vscode.TaskScope.Workspace, // 作用域
    "我的任务", // 任务名称 (自定义)
    "my-app", // 源名称 (自定义)
    new vscode.ShellExecution(command_str, {
        cwd: cwd, // 执行命令,并设置工作目录 (重要)(起到了切换目录的作用,默认是当前 vscode 的工作目录)
    }),
);
// 配置终端行为(关键:重用同一面板)
task.presentationOptions = {
    reveal: vscode.TaskRevealKind.Always, // 始终显示终端
    panel: vscode.TaskPanelKind.Shared, // 共享终端面板
    clear: false, // 不清空历史
};
// 执行任务
vscode.tasks.executeTask(task);

http://www.kler.cn/a/530682.html

相关文章:

  • 万字长文深入浅出负载均衡器
  • 2 MapReduce
  • 使用LLaMA-Factory对AI进行认知的微调
  • C#接口(Interface)
  • jstat命令详解
  • Bash 基础与进阶实践指南
  • 数据库和数据表的创建、修改、与删除
  • 冷启动+强化学习:DeepSeek-R1 的原理详解——无需监督数据的推理能力进化之路
  • 基于vue船运物流管理系统设计与实现(源码+数据库+文档)
  • 蓝桥杯学习笔记01
  • 【Qt】常用的容器
  • llama.cpp GGUF 模型格式
  • GWO优化SVM回归预测matlab
  • Mac怎么彻底卸载软件,简单彻底的卸载方式
  • 【数据结构-Trie树】力扣677. 键值映射
  • SQL/Panda映射关系
  • Spring Boot 2 快速教程:WebFlux处理流程(五)
  • 自制虚拟机(C/C++)(三、做成标准GUI Windows软件,扩展指令集,直接支持img软盘)
  • 轮转数组-三次逆置
  • Chromium132 编译指南 - Android 篇(六):从 Linux 版切换到 Android 版
  • 鸢尾花书《编程不难》02---学习书本里面的三个案例
  • 使用VCS进行单步调试的步骤
  • Scala语言的安全开发
  • Spring Bean 容器
  • 202周日复盘(159)本周回顾
  • Redis基础篇(万丈高楼平地起):核心底层数据结构