Intellij 插件新秀 CommentShell,让你的注释运行起来!

2021-03-26 10:18:12 +08:00
 KesonAn

CommentShell

https://github.com/anqiansong/CommentShell

CommentShell(CSL)一个可以在注释中运行 shell 命令的 intellij 插件,👏👏欢迎 Star,Fork,Issue👏👏

其可以帮助开发者快速在文件内执行指定命令,而不需要在终端去敲打 shell 命令, 如:开发 golang 的 grpc 服务时,我们需要用 protoc 工具生成 pb.go ,传统做法是编写完 proto 文件后在打开终端输入 shell 命令去生成 pb 文件, 但是现在,你可以用 CLS 去替代传统做法提高你的开发效率,只需要在单行注释中以 x:generate 开头, 后面跟上你需要执行的 shell 命令即可,如:我期望通过 shell 命令打印 hello proto, 你可以通过 //x:generate echo hello proto 这样一行单行注释即可实现

支持的语言

以上语言或者文件已经经过测试,除此外,只要编程语言或者某类型文件支持单行注释语法且指定单行注释类型和语法书写规范理论均可使用(见下文)。

安装方式

方式一: 下载地址 方式二:intellij plugin 仓库搜索 CommentShell install 即可,plugin 商店还在审核中。

支持的注释类型

书写规则

格式

[linePrefix]x:generate [shell] [arg...] [lineSuffix]

注意

常量

示例

点击这里查看各主流编程语言的 shell 写法。

3690 次点击
所在节点    程序员
20 条回复
xiaofan2
2021-03-26 10:29:22 +08:00
注释运行和我用 IDEA 自带的 Terminal 运行有啥区别吗?
anankun
2021-03-26 10:35:02 +08:00
花里胡哨的
KesonAn
2021-03-26 10:43:47 +08:00
@xiaofan2 其实本质是运行 shell 命令,但是这个的场景是适用于命令比较长,很难记的情况下,如 grpc 通过 proto 生成 pb.go 文件,我们通常会把命令写在头部的注释中,方便下次 copy 到终端执行,而插件在这里就减少了 copy 到终端的过程,可以点击运行按钮直接运行。
locoz
2021-03-26 10:50:53 +08:00
emmmm,你举的这个例子貌似没有必要用插件实现?你看看 grpc 的样例代码,里面那个开头的注释就是可以在 goland 里直接点击执行的。
xaplux
2021-03-26 10:52:38 +08:00
看明白了,其实就是省去了复制粘贴打开 Terminal 的过程,类似于 stackoverflow 插件可以打开浏览器自动去 stackoverflow 网站搜索
K1W1
2021-03-26 10:56:35 +08:00
挺好的,支持一下
sxfscool
2021-03-26 10:57:53 +08:00
有点像 go: generate
KesonAn
2021-03-26 11:05:50 +08:00
@sxfscool 👍 灵感涞源于它
KesonAn
2021-03-26 11:06:10 +08:00
@K1W1 🤝🤝
KesonAn
2021-03-26 11:07:30 +08:00
@locoz go 代码可以用 //go:generate 去生成,proto 代码中没有快捷生成的按钮的。
KesonAn
2021-03-26 11:09:15 +08:00
@xaplux 👍👍 是的,如果只是简单的 shell 命令,其实这个插件没必要,它的使用场景是针对的是命令比较长,不方便记忆的情况使用,下次来直接运行就行,也省去再花时间想这个命令怎么敲来着。
aguesuka
2021-03-26 11:47:13 +08:00
idea 的功能性注释有官方先例的,比如 region 和 endregion 或者 language injection 。

但是我不会用这个插件。首先命令不应该出现在注释里,而是构建脚本比如 makefile)的工作,再不济也应该是 bash 或者 markdown 里。而且 x:generate 意义不明,语法比 TODO,FIXME language injection 复杂太多。
KesonAn
2021-03-26 11:50:49 +08:00
@aguesuka 这只是尽可能提升开发效率,像 makefile,shell 脚本这类做专业的事,它不可能去和那些专业的脚本比较哈。
lanlan2020
2021-03-26 16:47:46 +08:00
我觉得很有用,支持你
locoz
2021-03-26 16:51:01 +08:00
@KesonAn #10 这样啊,那还是挺有用的
oneisall8955
2021-03-26 17:01:58 +08:00
戳中萌点,支持下 23333
KesonAn
2021-03-26 17:04:25 +08:00
@lanlan2020 🤝🤝🤝
KesonAn
2021-03-26 17:04:35 +08:00
@locoz 🤝🤝🤝
KesonAn
2021-03-26 17:04:43 +08:00
@oneisall8955 🤝🤝🤝
nanjoyoshino
2021-03-27 12:00:11 +08:00
虽然目前用不到,但是有点意思啊

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

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

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

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

© 2021 V2EX