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

Taskfile demo

https://github.com/yangyang5214/blog/issues/1

makefile 很好用,但是有些语法我不会。 go-task yml & shell 不错,推荐

Taskfile.yml

https://github.com/go-task/task/blob/main/.golangci.yml

# go install github.com/go-task/task/v3/cmd/task@latest
version: '3'vars:APPS: { sh: find app -maxdepth 1 -mindepth 1 -type d -print | xargs -L 1 }MODULE_NAME: { sh: go list -m }tasks:desc: init go modinit:cmds:- go get -u google.golang.org/protobuf/cmd/protoc-gen-go- go get -u google.golang.org/grpc/cmd/protoc-gen-go-grpc- go get -u github.com/go-kratos/kratos/cmd/protoc-gen-go-http/v2- go get -u github.com/google/wire/cmd/wire- go get -u github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2- go get -u github.com/envoyproxy/protoc-gen-validate- go get -u github.com/go-kratos/kratos/cmd/protoc-gen-go-errors/v2- go install google.golang.org/protobuf/cmd/protoc-gen-go@latest- go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest- go install github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2@latest- go install github.com/envoyproxy/protoc-gen-validate@latest- go install github.com/google/wire/cmd/wire@latestformat:desc: Format *go codevars:GO_FILES: "find . ! -path './vendor/*' -type f -name '*.go'"cmds:- ({{.GO_FILES}} | xargs gofmt -s -w)- ({{.GO_FILES}} | xargs gci write --section Standard --section Default --section "Prefix({{.MODULE_NAME}})")- ({{.GO_FILES}} | xargs golines -w --max-len=180 --reformat-tags --shorten-comments --ignore-generated)- go mod edit -fmtwire:desc: Run wire cmd for appscmds:- for: { var: APPS, as: APP }cmd: cd {{.APP}} && wire ./... && cd -- task formatmod:desc: Downloads and tidy Go modulescmds:- go mod download- go mod tidylint:desc: Run golangci-lintsources:- './**/*.go'- .golangci.ymlcmds:- golangci-lint run

add zsh completion

https://github.com/sawadashota/go-task-completions

Clone the repository inside your oh-my-zsh repo:

git clone https://github.com/sawadashota/go-task-completions.git ${ZSH_CUSTOM:=~/.oh-my-zsh/custom}/plugins/task

Enable it in your .zshrc by adding it to your plugin list and reloading the completion:

# ... 是之前已经存在的 plugin 
# 例如我的修改为 plugins=(git task)
plugins=(… task)
autoload -U compinit && compinit

Reference

https://github.com/go-task/task/issues/103 Add Bash, ZSH and Windows command line completion #103

http://www.lryc.cn/news/95634.html

相关文章:

  • MyBatis学习笔记之高级映射及延迟加载
  • 小程序如何删除/上架/下架商品
  • Failed to load local font resource:微信小程序加载第三方字体
  • 使用fastjson错误
  • 【GitOps系列】使用Kustomize和Helm定义应用配置
  • Android kotlin高阶函数与Java lambda表达式介绍与实战
  • 自然语言处理实战项目13-基于GRU模型与NER的关键词抽取模型训练全流程
  • 7.26 Qt
  • 【MySQL】库和表的操作
  • (五)RabbitMQ-进阶 死信队列、延迟队列、防丢失机制
  • windows下面的python配置
  • vue3中 状态管理pinia得使用
  • 如何使用 After Effects 导出摄像机跟踪数据到 3ds Max
  • 【iOS】懒加载
  • 《脱离“一支笔、一双手、一道力扣”困境的秘诀》:突破LeetCode难题的五个关键步骤
  • 基于jeecg-boot的任务甘特图显示
  • docker export,import后无法运行,如java命令找不到,运行后容器内编码有问题
  • Web3教程| 什么是地址监控?如何使用地址监控追踪黑客地址?
  • flask结合mysql实现用户的添加和获取
  • 阿里云服务器配置 内存,cpu等等
  • PHP注册、登陆、6套主页-带Thinkphp目录解析-【强撸项目】
  • android Activity设置背景为半透明的时候会显示上一个activity的内容
  • Linux 网络收包流程
  • flex: 0 0 273px的意思
  • helm部署rabbitmq
  • Java版Spring Cloud+Spring Boot+Mybatis+uniapp知识付费平台讲解
  • 编程之舞:流程控制乐章
  • ChatGPT是否能够进行情感融合和语气调整?
  • C++--动态规划路径问题
  • 从实践彻底掌握MySQL的主从复制