Skip to content

Releases: guonaihong/clop

v0.2.12版本

21 Apr 06:07
ba58e71
Compare
Choose a tag to compare

专用名词不转换。

比如OpenCheck这样的变量自动转成gnp命名是--open-check。
如果处理JSON这样的命名是--j-s-o-n,现在加上专用名词表,直接输出--JSON.

v0.2.11版本

17 May 14:14
8f69b80
Compare
Choose a tag to compare

bugfix

v0.2.10

08 Mar 14:21
6905213
Compare
Choose a tag to compare

新增GeIndexEx接口

v0.2.9版本

07 Jan 05:28
1b203ed
Compare
Choose a tag to compare

调整了一下版本信息显示功能

  1. 不设置默认版本,用户不主动设置版本信息的话不再占用-V和--version选项
  2. 增加了SetVersionOption函数用来修改默认的-V和--version选项,修改后,这两个选项可以在其他地方使用。之前我看是隐式覆盖,假设用户设置了SetVersion,同时又在结构体里配置了-V参数的情况下,有歧义,现在可以通过显式设置来释放这两个参数

现在可以这样用

clop.SetVersion("1.0.0")
clop.SetVersionOption("v", "version") // 修改短选项和长选项
clop.SetVersionOption("", "version") // 禁用短选项

v0.2.8

25 Oct 13:19
93dd7c8
Compare
Choose a tag to compare

优化出错提示信息

v0.2.7版本

17 Jul 07:47
3d9cd3d
Compare
Choose a tag to compare

支持设置回调函数, 让clop支持任意类型的数据绑定。

type TestCallback struct {
	Size int `clop:"short;long;callback=ParseSize" usage:"parse size"`
	Max  int `clop:"short;long"`
}

func (t *TestCallback) ParseSize(val string) {
	// 做些解析工作
	// t.Size = 解析之后的值
}

func main() {
 	t := TestCallback{}
	err := clop.Bind(&t)

	fmt.Printf("%#v, %s\n", t, err)
}

v0.2.6版本

12 Jun 15:02
ec09cf3
Compare
Choose a tag to compare

详情可看 #93
对子命令的用法进行优化. @Greyh4t

package main

import (
	"fmt"
	"github.com/guonaihong/clop"
)

type add struct {
	All      bool     `clop:"-A; --all" usage:"add changes from all tracked and untracked files"`
	Force    bool     `clop:"-f; --force" usage:"allow adding otherwise ignored files"`
	Pathspec []string `clop:"args=pathspec"`
}

func (a *add) SubMain() {
// 当add子命令被设置时
// clop会自动调用这个函数
}

type mv struct {
	Force bool `clop:"-f; --force" usage:"allow adding otherwise ignored files"`
}

func (m *mv) SubMain() {
// 当mv 子命令被设置时
// clop会自动调用这个函数
}

type git struct {
	Add add `clop:"subcommand" usage:"Add file contents to the index"`
	Mv  mv  `clop:"subcommand" usage:"Move or rename a file, a directory, or a symlink"`
}

func main() {
	g := git{}
	clop.Bind(&g)
}

v0.2.5版本

28 May 11:53
ed3731d
Compare
Choose a tag to compare
  • SetVersion新增换行
  • 新增issues模板

v0.2.4版本

06 May 11:54
40a5ca8
Compare
Choose a tag to compare

#88
使用-h或者--help不显示版本信息

v0.2.3版本

02 May 16:25
03d9af3
Compare
Choose a tag to compare

#88 讨论请见
新增如下两个接口

clop.SetVersion()
clop.SetAbout()