分享一个小插件: Quick Command — 给终端加快速命令集(VSCode + JetBrains 双版本)

3 小时 2 分钟前
 ob

平时在开发中遇到的几个痛点:

  1. 同一组命令需要反复输入。像 npm run devgit push origin maincargo build --release 这类命令一天会用到很多次。即使按方向键翻历史,也经常要在一堆相似命令里挑半天。
  2. 长命令不容易记住。一些带参数的命令,比如 sudo cat /sys/fs/cgroup/system.slice/query.service/memory.current | numfmt --to=iec,每次用都要回头查 README 或者笔记,效率比较低。
  3. 重复操作浪费不少时间

实现的功能很简单:在终端旁边放一排按钮,点一下就把命令发到当前终端里。写了 VSCode 和 JetBrains 两个版本,写完之后才发现其实已经有一些现成类似的插件,不过对比之后还是自己写的比较贴合自己的习惯。

两个版本的定位

VSCode 版 JetBrains 版
配置入口 settings.json 里两个 key ~/.quick-command/global.json + 项目根的 .quick-command.json
侧边栏面板 ✅ Activity Bar 独立面板 ✅ 独立 Tool Window
状态栏按钮
终端工具栏按钮 ❌( VSCode API 限制) ✅(直接挂在终端顶部)
配置热重载 改设置即生效 文件监听,保存即刷新
最低版本 VSCode 1.85+ IntelliJ Platform 2025.3+

JetBrains 版多了一个终端工具栏入口,终端打开后,按钮就在终端正上方。VSCode 由于官方 API 没开放终端工具栏,所以只能放在侧边栏 + 状态栏,默认安装的位置在端口右边(可拖动),我喜欢把他拉到终端的右边。

核心特性

配置示例

两个 IDE 的配置存在些许差异,比如按钮 icon 名称,配置文件位置,showIn IDE 多了一个位置,其他按钮 schema 两边几乎一致。 举几个例子:

单个按钮

{
  "label": "Dev",
  "icon": "play",
  "command": "npm run dev",
  "execute": true,
  "showIn": ["sidebar", "statusbar"]
}

多行命令

{
  "label": "Fresh Setup",
  "icon": "tools",
  "command": ["git pull", "npm install", "npm run build"],
  "execute": true
}

命令分组(折叠成下拉)

{
  "label": "Git",
  "icon": "git-merge",
  "group": [
    { "label": "Pull", "command": "git pull", "execute": true },
    { "label": "Push", "command": "git push", "execute": true },
    { "label": "Status", "command": "git status" }
  ]
}

execute: false 时命令只输入不回车,方便人工 review ;execute: true 时直接执行,按钮上会显示一个绿点提示。

showIn 取值说明

可选值:"all" / "sidebar" / "statusbar" / "terminal"terminal 仅 JetBrains 版支持)。

配置 显示位置
不写 / null 所有位置都显示
["all"] 所有位置都显示
["sidebar"] 仅侧边栏面板
["statusbar"] 仅状态栏
["terminal"] 仅终端工具栏( JetBrains 限定)
[](空数组) 隐藏

多个值可以组合,例如 ["sidebar", "statusbar"] 表示同时显示在侧边栏和状态栏。

安装

VSCode 版

JetBrains 版

界面示例

VSCode 版

JetBrains 版


开源仓库: https://github.com/kookob/quick-command-vscode
觉得有用请点个 Star ⭐️,有问题欢迎提 Issue 。

246 次点击
所在节点    插件与扩展
3 条回复
lingyired
2 小时 41 分钟前
我用的是 quicker 来实现这种常用命令的输入,不过最近换了 Mac 就用不了了
ob
2 小时 19 分钟前
@lingyired 独立软件确实比较通用,我也实现了一个,暂时还没想好怎么发布。
dayuzhu
2 小时 14 分钟前
挺好的,我最近也考虑这种便捷操作了,没想到刷到了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1212312

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX