diff --git a/env/env.go b/env/env.go new file mode 100644 index 0000000..e935248 --- /dev/null +++ b/env/env.go @@ -0,0 +1,46 @@ +package env + +import ( + "fmt" + "os" + "strings" + + Z "github.com/rwxrob/bonzai/z" + "github.com/rwxrob/help" + "github.com/rwxrob/term" +) + +var Cmd = &Z.Cmd{ + Name: `env`, + Summary: `commands for environment variables`, + Commands: []*Z.Cmd{getCmd, dataCmd, help.Cmd}, +} + +var dataCmd = &Z.Cmd{ + Name: `data`, + Aliases: []string{`all`}, + Summary: `print environment data to stdout`, + Commands: []*Z.Cmd{help.Cmd}, + Call: func(_ *Z.Cmd, _ ...string) error { + for _, pair := range os.Environ() { + fmt.Println(pair) + } + return nil + }, +} + +var getCmd = &Z.Cmd{ + Name: `get`, + Usage: `(help|NAME)`, + Summary: `print specified environment variable to stdout`, + Commands: []*Z.Cmd{help.Cmd}, + NumArgs: 1, + Call: func(_ *Z.Cmd, args ...string) error { + v := os.Getenv(args[0]) + if v == "" { + v = os.Getenv(strings.ToUpper(args[0])) + } + _, err := term.Print(v) + return err + }, +} diff --git a/go.mod b/go.mod index 9aed50d..4f4b868 100644 --- a/go.mod +++ b/go.mod @@ -3,48 +3,52 @@ module github.com/rwxrob/z go 1.18 require ( - github.com/rwxrob/bonzai v0.14.1 + github.com/rwxrob/bonzai v0.14.2 github.com/rwxrob/conf v0.8.0 - github.com/rwxrob/fs v0.5.2 + github.com/rwxrob/fs v0.6.0 github.com/rwxrob/github v0.2.0 - github.com/rwxrob/help v0.5.0 + github.com/rwxrob/help v0.5.2 github.com/rwxrob/kube v0.1.0 + github.com/rwxrob/openapi v0.1.1 github.com/rwxrob/pomo v0.1.1 - github.com/rwxrob/term v0.2.7 - github.com/rwxrob/to v0.7.0 + github.com/rwxrob/term v0.2.8 + github.com/rwxrob/to v0.8.0 github.com/rwxrob/twitch v0.4.3 github.com/rwxrob/uniq v0.2.1 github.com/rwxrob/vars v0.4.2 github.com/rwxrob/y2j v0.5.0 github.com/rwxrob/yq v0.3.0 - gopkg.in/yaml.v3 v3.0.0 + gopkg.in/yaml.v3 v3.0.1 ) require ( github.com/a8m/envsubst v1.3.0 // indirect + github.com/alecthomas/participle/v2 v2.0.0-beta.5 // indirect github.com/elliotchance/orderedmap v1.4.0 // indirect github.com/fatih/color v1.13.0 // indirect + github.com/goccy/go-json v0.9.10 // indirect github.com/goccy/go-yaml v1.9.5 // indirect github.com/jinzhu/copier v0.3.5 // indirect github.com/magiconair/properties v1.8.6 // indirect github.com/mattn/go-colorable v0.1.12 // indirect github.com/mattn/go-isatty v0.0.14 // indirect - github.com/mikefarah/yq/v4 v4.25.1 // indirect + github.com/mikefarah/yq/v4 v4.27.2 // indirect github.com/rogpeppe/go-internal v1.8.1 // indirect github.com/rwxrob/compcmd v0.3.0 // indirect github.com/rwxrob/compfile v0.1.12 // indirect github.com/rwxrob/fn v0.3.3 // indirect + github.com/rwxrob/java v0.3.2 // indirect github.com/rwxrob/json v0.8.0 // indirect github.com/rwxrob/scan v0.9.0 // indirect github.com/rwxrob/structs v0.6.0 // indirect github.com/rwxrob/web v0.5.0 // indirect - github.com/timtadh/data-structures v0.5.3 // indirect - github.com/timtadh/lexmachine v0.2.2 // indirect - golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e // indirect - golang.org/x/net v0.0.0-20220524220425-1d687d428aca // indirect - golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a // indirect - golang.org/x/term v0.0.0-20220526004731-065cf7ba2467 // indirect + github.com/timtadh/data-structures v0.6.2 // indirect + github.com/timtadh/lexmachine v0.2.3 // indirect + golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa // indirect + golang.org/x/net v0.0.0-20220811182439-13a9a731de15 // indirect + golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab // indirect + golang.org/x/term v0.0.0-20220722155259-a9ba230a4035 // indirect golang.org/x/text v0.3.7 // indirect - golang.org/x/xerrors v0.0.0-20220517211312-f3a8303e98df // indirect + golang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f // indirect gopkg.in/op/go-logging.v1 v1.0.0-20160211212156-b2cb9fa56473 // indirect ) diff --git a/go.sum b/go.sum index 451a2f6..a0c735e 100644 --- a/go.sum +++ b/go.sum @@ -1,5 +1,9 @@ github.com/a8m/envsubst v1.3.0 h1:GmXKmVssap0YtlU3E230W98RWtWCyIZzjtf1apWWyAg= github.com/a8m/envsubst v1.3.0/go.mod h1:MVUTQNGQ3tsjOOtKCNd+fl8RzhsXcDvvAEzkhGtlsbY= +github.com/alecthomas/participle/v2 v2.0.0-beta.4 h1:ublfGBm+x+p2j7KotHhrUMbKtejT7M0Gv1Mt1u3absw= +github.com/alecthomas/participle/v2 v2.0.0-beta.4/go.mod h1:RC764t6n4L8D8ITAJv0qdokritYSNR3wV5cVwmIEaMM= +github.com/alecthomas/participle/v2 v2.0.0-beta.5 h1:y6dsSYVb1G5eK6mgmy+BgI3Mw35a3WghArZ/Hbebrjo= +github.com/alecthomas/participle/v2 v2.0.0-beta.5/go.mod h1:RC764t6n4L8D8ITAJv0qdokritYSNR3wV5cVwmIEaMM= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/elliotchance/orderedmap v1.4.0 h1:wZtfeEONCbx6in1CZyE6bELEt/vFayMvsxqI5SgsR+A= github.com/elliotchance/orderedmap v1.4.0/go.mod h1:wsDwEaX5jEoyhbs7x93zk2H/qv0zwuhg4inXhDkYqys= @@ -10,6 +14,8 @@ github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvSc github.com/go-playground/locales v0.13.0/go.mod h1:taPMhCMXrRLJO55olJkUXHZBHCxTMfnGwq/HNwmWNS8= github.com/go-playground/universal-translator v0.17.0/go.mod h1:UkSxE5sNxxRwHyU+Scu5vgOQjsIJAF8j9muTVoKLVtA= github.com/go-playground/validator/v10 v10.4.1/go.mod h1:nlOn6nFhuKACm19sB/8EGNn9GlaMV7XkbRSipzJ0Ii4= +github.com/goccy/go-json v0.9.10 h1:hCeNmprSNLB8B8vQKWl6DpuH0t60oEs+TAk9a7CScKc= +github.com/goccy/go-json v0.9.10/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I= github.com/goccy/go-yaml v1.9.5 h1:Eh/+3uk9kLxG4koCX6lRMAPS1OaMSAi+FJcya0INdB0= github.com/goccy/go-yaml v1.9.5/go.mod h1:U/jl18uSupI5rdI2jmuCswEA2htH9eXfferR3KfscvA= github.com/jinzhu/copier v0.3.5 h1:GlvfUwHk62RokgqVNvYsku0TATCF7bAHVwEXoBh3iJg= @@ -31,6 +37,8 @@ github.com/mikefarah/yq/v4 v4.24.5 h1:UeXoamnNDLJJ4B4dO6EuoZexFcGDTePp/uTmdIvCqP github.com/mikefarah/yq/v4 v4.24.5/go.mod h1:S+m9R9Qq17v0Mg/DtaESrbvfvrgbrOEMlEsSN57huV0= github.com/mikefarah/yq/v4 v4.25.1 h1:MJtXfFL9HqXdE8mJUG+8Z5ZNshtrxvH5YO8B13LZ+qU= github.com/mikefarah/yq/v4 v4.25.1/go.mod h1:S+m9R9Qq17v0Mg/DtaESrbvfvrgbrOEMlEsSN57huV0= +github.com/mikefarah/yq/v4 v4.27.2 h1:+I32ystA1lUmSLvVUjEkUvZTgEJ194KCRO6btirqlpU= +github.com/mikefarah/yq/v4 v4.27.2/go.mod h1:14pnJPIOQoguuykAa8Knn2yswgoeS0goeSyRVd6UgrE= github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/rogpeppe/go-internal v1.8.1 h1:geMPLpDpQOgVyCg5z5GoRwLHepNdb71NXb67XFkP+Eg= @@ -47,6 +55,8 @@ github.com/rwxrob/bonzai v0.13.0 h1:zCfB3A7NEPu4Sqss+7lQUFpCthD2oDiFKcUDsYqpGJQ= github.com/rwxrob/bonzai v0.13.0/go.mod h1:zisCd2LCW9yR3w3csCWkqmUGnOcUOItjatYdSplJtmk= github.com/rwxrob/bonzai v0.14.1 h1:v0ItthDiXV7MXRAw7nyTIgsnQn8ZM/VeTCuXJOwVPsw= github.com/rwxrob/bonzai v0.14.1/go.mod h1:hap+YriuJgncCLUgF6JJgLeldo3ggGVk+4s1G/FFSDk= +github.com/rwxrob/bonzai v0.14.2 h1:0SeuFM0yOTqYZOLDO5c4BQxJ+ru+N7RKhRVDC1h93Uk= +github.com/rwxrob/bonzai v0.14.2/go.mod h1:wXVtiNajqmTX6uT2A4WdNWB8PcD7fo2YMU/8qNuFy4k= github.com/rwxrob/compcmd v0.1.6 h1:jswlgUwSJuCe8h0zIvCS13CePE8UGKwib7YegyV+bfU= github.com/rwxrob/compcmd v0.1.6/go.mod h1:imoLwFPWbpH7fFtYWvC/vZSF2P7gVZrnW3UjQBZYaxI= github.com/rwxrob/compcmd v0.2.1 h1:WNSnoAbiV7bbB9YBr0OsIGzvfPVMSrSkOPbx/bi4Y8Q= @@ -87,6 +97,8 @@ github.com/rwxrob/fs v0.5.1 h1:HpqDzQEMpfAjdeQvCtjkXC1vAQkNOM5PcxiW9b7TE/U= github.com/rwxrob/fs v0.5.1/go.mod h1:vO8AeluD7rnrO7zC54745xTEBFgHPUpHL0hbp1NnsVo= github.com/rwxrob/fs v0.5.2 h1:Ym5IYZZhKNna49K3epXzeyiwH4aT+rfXo8Zb4yLCVyY= github.com/rwxrob/fs v0.5.2/go.mod h1:vO8AeluD7rnrO7zC54745xTEBFgHPUpHL0hbp1NnsVo= +github.com/rwxrob/fs v0.6.0 h1:q8U4n0E8CkzkZ7+l8uX7vD6yU0tO2X9jam0vojjqwcA= +github.com/rwxrob/fs v0.6.0/go.mod h1:vO8AeluD7rnrO7zC54745xTEBFgHPUpHL0hbp1NnsVo= github.com/rwxrob/github v0.0.1 h1:bfDn/zW7T2qXIAB3IkFxFKZjdmb/jRRFGlrjIp1yb1U= github.com/rwxrob/github v0.0.1/go.mod h1:zQBqYs61wXkSvnvC89JNbeHOGNgGWICY7Y8GXXKax7A= github.com/rwxrob/github v0.2.0 h1:+CKtdUHOzIr6LmRcIkPlFJCpuGQy2FBXczeH+l6Q9nY= @@ -101,12 +113,22 @@ github.com/rwxrob/help v0.4.2 h1:fvH/4ErmWBSld2ErubfpNSUnkuA4hCnJ1NuXspytmms= github.com/rwxrob/help v0.4.2/go.mod h1:l7XtT4J75+bzTnsLZcIpMAgt2edLnA26U9cbVbY6DY4= github.com/rwxrob/help v0.5.0 h1:wEARG5oj9/d3pVeho1tvk1jLVPU5ZujQ5o44VvlNeCI= github.com/rwxrob/help v0.5.0/go.mod h1:rgLDEcJjYuz4MTu6c2J/T0mI9GpXAaqQ1BWKLdKP3mc= +github.com/rwxrob/help v0.5.1 h1:P5RPTnx0o0rKrFHRi/kqzgujZQ1jKfRchDvuqu2XnJI= +github.com/rwxrob/help v0.5.1/go.mod h1:gn14I1aj/wgXYohNKv0Uo5vGgTPLGvCo08nB4KdVacc= +github.com/rwxrob/help v0.5.2 h1:fQB2yVbH/6qnh28jNPjZD6E9JIv9oayK5jz62UjXeWo= +github.com/rwxrob/help v0.5.2/go.mod h1:bkcuxsT+UfE8agM8A5FBtEam5Wxc/mhZr8N9KafwzNg= +github.com/rwxrob/java v0.3.2 h1:+t5Jj7+EN5goATwpslH5OSrvVtkOcamlhC3zbXxowWA= +github.com/rwxrob/java v0.3.2/go.mod h1:CzDe/K5ooJlLVQPDm4WJC5T07dC2yPMUvLTQCwVHp+o= github.com/rwxrob/json v0.7.1 h1:5ipzVseNcb2WGRuqwCvBzK4OirC5J8V0qzHdoSR7sKg= github.com/rwxrob/json v0.7.1/go.mod h1:BYaPIp+4cI64f7jdqkaVAjqU/HSIiwkqPNDr9tTUvRQ= github.com/rwxrob/json v0.8.0 h1:1hCZ0ug+Ih9Tg/tCnWpTQ6MpA8pAZFVebjPJEimJ1dA= github.com/rwxrob/json v0.8.0/go.mod h1:f0iGrX6Qx/4M17zaLbnAy55miQzwD6omZXtXpoGnMYc= github.com/rwxrob/kube v0.1.0 h1:3tCGIsCnkf+Y82rhbJkNcoVqnBVCCC5utQ8Gqzb1AVk= github.com/rwxrob/kube v0.1.0/go.mod h1:vSVC6oBdBreZI6mKzPdPbAjoW/lynTirerTGElIWwoo= +github.com/rwxrob/openapi v0.1.0 h1:1VXrAuvz2GcO6fiYSqfO5NLlIaP33U7xqeOoITDVCeE= +github.com/rwxrob/openapi v0.1.0/go.mod h1:8XDOE18cUEcis4+K5r9R3thXZoMpqDIvSlP0GbmBxlA= +github.com/rwxrob/openapi v0.1.1 h1:CH/WXZkghJwlIW6NDohm3DMF35UqFZKAFdWt24cXUXs= +github.com/rwxrob/openapi v0.1.1/go.mod h1:8XDOE18cUEcis4+K5r9R3thXZoMpqDIvSlP0GbmBxlA= github.com/rwxrob/pomo v0.0.0-20220424152818-0a571eff4611 h1:QhBhyWpKhx3+q3vq1H30I62+Wqmn8zDbua5peoUKFxs= github.com/rwxrob/pomo v0.0.0-20220424152818-0a571eff4611/go.mod h1:xoRJAItSw3PL27bU+YwNs0xtMT/sV6ruTKHULxIENjE= github.com/rwxrob/pomo v0.1.1 h1:0Ni+RFLizuZd2E4lRKmlc//q+5fh3nwApF6hkbueSPA= @@ -121,12 +143,16 @@ github.com/rwxrob/term v0.2.6 h1:C8BqqHaEh8MGYp1cVrPRlDAYPEK3HfvhGjf7l5AvnV8= github.com/rwxrob/term v0.2.6/go.mod h1:II0qQ7aHUdPniZCAPWOdYwugcZqdmRmEWIJQN7Z8NA0= github.com/rwxrob/term v0.2.7 h1:uFhFcZkjphRQHhkzaV5G34r4es7R6qEw52XA3xD0yn0= github.com/rwxrob/term v0.2.7/go.mod h1:II0qQ7aHUdPniZCAPWOdYwugcZqdmRmEWIJQN7Z8NA0= +github.com/rwxrob/term v0.2.8 h1:N9spr+owF8mRizSqPiATu5F0v2VJUIKwRldsibAUys8= +github.com/rwxrob/term v0.2.8/go.mod h1:UruWGJ5mrQH5v1XBg52s7ldZUBXxEODevbkoFUM4SrQ= github.com/rwxrob/to v0.5.2 h1:BK2xKkWNhnR5TwEzbsPpXjGODFrTrgZfXzfEdtgCeyU= github.com/rwxrob/to v0.5.2/go.mod h1:lojk6scni4ZRYjnKJO/f2DVRTW0BB6l9LZQ/NvZZt4Y= github.com/rwxrob/to v0.5.3 h1:CTkQuXXjrv9NhRDWH0zafu9aRWXwvw+VWWqPNYXLZaY= github.com/rwxrob/to v0.5.3/go.mod h1:lojk6scni4ZRYjnKJO/f2DVRTW0BB6l9LZQ/NvZZt4Y= github.com/rwxrob/to v0.7.0 h1:hTs6pH6J4/JAex/T+ktsz3to8ojuuS9tCW4j4fHBTvY= github.com/rwxrob/to v0.7.0/go.mod h1:5z3Y1tyXRmPfa+be5hvnxYuLQ0NSBQsE6mIBVTqlYTA= +github.com/rwxrob/to v0.8.0 h1:SUhUppTxrRZQpPP5twHxuyj08ENZkM0PD8RL5DkCYWY= +github.com/rwxrob/to v0.8.0/go.mod h1:5z3Y1tyXRmPfa+be5hvnxYuLQ0NSBQsE6mIBVTqlYTA= github.com/rwxrob/twitch v0.3.2 h1:CgkZmDNguybLTiWKwdlU6v1z/7QejWDASM5XtHx0tWg= github.com/rwxrob/twitch v0.3.2/go.mod h1:BnzV+Lm79+AhOr0n/kUIJVAZmKFAGYDvrRg9dXtDFJI= github.com/rwxrob/twitch v0.3.3 h1:/nrlEuqWRd1A8cOtSYDVIePPJLh8Pfpq/7TC+Rf/RP8= @@ -168,14 +194,22 @@ github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81P github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/timtadh/data-structures v0.5.3 h1:F2tEjoG9qWIyUjbvXVgJqEOGJPMIiYn7U5W5mE+i/vQ= github.com/timtadh/data-structures v0.5.3/go.mod h1:9R4XODhJ8JdWFEI8P/HJKqxuJctfBQw6fDibMQny2oU= +github.com/timtadh/data-structures v0.6.1/go.mod h1:uYUnI1cQi/5yMCc7s23I+x8Mn8BCMf4WgK+7/4QSEk4= +github.com/timtadh/data-structures v0.6.2 h1:zybDnU5NLjJ7WKMDJpvVwczQuf1wSLBgdRHZ9O4AqJ0= +github.com/timtadh/data-structures v0.6.2/go.mod h1:uYUnI1cQi/5yMCc7s23I+x8Mn8BCMf4WgK+7/4QSEk4= +github.com/timtadh/getopt v1.0.0/go.mod h1:L3EL6YN2G0eIAhYBo9b7SB9d/kEQmdnwthIlMJfj210= github.com/timtadh/lexmachine v0.2.2 h1:g55RnjdYazm5wnKv59pwFcBJHOyvTPfDEoz21s4PHmY= github.com/timtadh/lexmachine v0.2.2/go.mod h1:GBJvD5OAfRn/gnp92zb9KTgHLB7akKyxmVivoYCcjQI= +github.com/timtadh/lexmachine v0.2.3 h1:ZqlfHnfMcAygtbNM5Gv7jQf8hmM8LfVzDjfCrq235NQ= +github.com/timtadh/lexmachine v0.2.3/go.mod h1:oK1NW+93fQSIF6s+J6sXBFWsCPCFbNmrwKV1i0aqvW0= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20220411220226-7b82a4e95df4 h1:kUhD7nTDoI3fVd9G4ORWrbV5NY0liEs/Jg2pv5f+bBA= golang.org/x/crypto v0.0.0-20220411220226-7b82a4e95df4/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e h1:T8NU3HyQ8ClP4SEE+KbFlg6n0NhuTsN4MyznaarGsZM= golang.org/x/crypto v0.0.0-20220525230936-793ad666bf5e/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= +golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa h1:zuSxTR4o9y82ebqCUJYNGJbGPo6sKVl54f/TVDObg1c= +golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20220412020605-290c469a71a5 h1:bRb386wvrE+oBNdF1d/Xh9mQrfQ4ecYhW5qJ5GvTGT4= golang.org/x/net v0.0.0-20220412020605-290c469a71a5/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= @@ -185,6 +219,12 @@ golang.org/x/net v0.0.0-20220421235706-1d1ef9303861 h1:yssD99+7tqHWO5Gwh81phT+67 golang.org/x/net v0.0.0-20220421235706-1d1ef9303861/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= golang.org/x/net v0.0.0-20220524220425-1d687d428aca h1:xTaFYiPROfpPhqrfTIDXj0ri1SpfueYT951s4bAuDO8= golang.org/x/net v0.0.0-20220524220425-1d687d428aca/go.mod h1:CfG3xpIq0wQ8r1q4Su4UZFWDARRcnwPjda9FqA0JpMk= +golang.org/x/net v0.0.0-20220728211354-c7608f3a8462 h1:UreQrH7DbFXSi9ZFox6FNT3WBooWmdANpU+IfkT1T4I= +golang.org/x/net v0.0.0-20220728211354-c7608f3a8462/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= +golang.org/x/net v0.0.0-20220809184613-07c6da5e1ced h1:3dYNDff0VT5xj+mbj2XucFst9WKk6PdGOrb9n+SbIvw= +golang.org/x/net v0.0.0-20220809184613-07c6da5e1ced/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= +golang.org/x/net v0.0.0-20220811182439-13a9a731de15 h1:cik0bxZUSJVDyaHf1hZPSDsU8SZHGQZQMeueXCE7yBQ= +golang.org/x/net v0.0.0-20220811182439-13a9a731de15/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= @@ -197,10 +237,18 @@ golang.org/x/sys v0.0.0-20220422013727-9388b58f7150 h1:xHms4gcpe1YE7A3yIllJXP16C golang.org/x/sys v0.0.0-20220422013727-9388b58f7150/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a h1:dGzPydgVsqGcTRVwiLJ1jVbufYwmzD3LfVPLKsKg+0k= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220731174439-a90be440212d h1:Sv5ogFZatcgIMMtBSTTAgMYsicp25MXBubjXNDKwm80= +golang.org/x/sys v0.0.0-20220731174439-a90be440212d/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220808155132-1c4a2a72c664 h1:v1W7bwXHsnLLloWYTVEdvGvA7BHMeBYsPcF0GLDxIRs= +golang.org/x/sys v0.0.0-20220808155132-1c4a2a72c664/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab h1:2QkjZIsXupsJbJIdSjjUOgWK3aEtzyuh2mPt3l/CkeU= +golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/term v0.0.0-20220411215600-e5f449aeb171 h1:EH1Deb8WZJ0xc0WK//leUHXcX9aLE5SymusoTmMZye8= golang.org/x/term v0.0.0-20220411215600-e5f449aeb171/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.0.0-20220526004731-065cf7ba2467 h1:CBpWXWQpIRjzmkkA+M7q9Fqnwd2mZr3AFqexg8YTfoM= golang.org/x/term v0.0.0-20220526004731-065cf7ba2467/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= +golang.org/x/term v0.0.0-20220722155259-a9ba230a4035 h1:Q5284mrmYTpACcm+eAKjKJH48BBwSyfJqmmGDTtT8Vc= +golang.org/x/term v0.0.0-20220722155259-a9ba230a4035/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk= @@ -211,6 +259,8 @@ golang.org/x/xerrors v0.0.0-20220411194840-2f41105eb62f h1:GGU+dLjvlC3qDwqYgL6Ug golang.org/x/xerrors v0.0.0-20220411194840-2f41105eb62f/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20220517211312-f3a8303e98df h1:5Pf6pFKu98ODmgnpvkJ3kFUOQGGLIzLIkbzUHp47618= golang.org/x/xerrors v0.0.0-20220517211312-f3a8303e98df/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= +golang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f h1:uF6paiQQebLeSXkrTqHqz0MXhXXS1KgF41eUdBNvxK0= +golang.org/x/xerrors v0.0.0-20220609144429-65e65417b02f/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI= @@ -222,3 +272,5 @@ gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b h1:h8qDotaEPuJATrMmW04NCwg7v gopkg.in/yaml.v3 v3.0.0-20210107192922-496545a6307b/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.0 h1:hjy8E9ON/egN1tAYqKb61G10WtihqetD4sz2H+8nIeA= gopkg.in/yaml.v3 v3.0.0/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= +gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= +gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/main.go b/main.go index 5d5ed64..c85e45b 100644 --- a/main.go +++ b/main.go @@ -7,6 +7,7 @@ import ( "github.com/rwxrob/conf" "github.com/rwxrob/github" "github.com/rwxrob/help" + "github.com/rwxrob/keg" "github.com/rwxrob/kube" "github.com/rwxrob/pomo" "github.com/rwxrob/twitch" @@ -14,6 +15,7 @@ import ( "github.com/rwxrob/vars" "github.com/rwxrob/y2j" "github.com/rwxrob/yq" + "github.com/rwxrob/z/env" "github.com/rwxrob/z/git" "github.com/rwxrob/z/tmux" ) @@ -50,7 +52,6 @@ func main() { */ Cmd.Run() - } var Cmd = &Z.Cmd{ @@ -64,9 +65,10 @@ var Cmd = &Z.Cmd{ Commands: []*Z.Cmd{ help.Cmd, conf.Cmd, vars.Cmd, - y2j.Cmd, twitch.Cmd, tmux.Cmd, yq.Cmd, //goutil.Cmd, - uniq.Cmd, pomo.Cmd, github.Cmd, git.Cmd, //update.Cmd, - kube.Cmd, + y2j.Cmd, twitch.Cmd, tmux.Cmd, yq.Cmd, + uniq.Cmd, pomo.Cmd, github.Cmd, git.Cmd, + kube.Cmd, env.Cmd, keg.Cmd, + // openapi.Cmd, update.Cmd, goutil.Cmd }, Shortcuts: Z.ArgMap{ @@ -82,6 +84,7 @@ var Cmd = &Z.Cmd{ "isonan": {"uniq", "isonan"}, "uuid": {"uniq", "uuid"}, "epoch": {"uniq", "second"}, + "path": {"env", "get", "path"}, }, Description: ` @@ -90,17 +93,17 @@ var Cmd = &Z.Cmd{ Bonzai branches that I graft into this {{cmd .Name}} command. You are welcome to play around with it, but please know that I am radically changing things *daily*. - + Also check out https://github.com/rwxrob/foo for a sample template Bonzai tree to get started on your own. - + Here's some random output from the Dynamic *ls* function piped to the builtin *indent* function using {{ "{{ ls | indent 4 }}" }} Go template syntax: - + {{ ls | indent 4 }} That was a verbatim block because of the indent. - + `, }