mirror of https://github.com/rwxrob/z
Compare commits
2 Commits
2c69c1424d
...
4d2b8857b7
Author | SHA1 | Date |
---|---|---|
Rob Muhlestein | 4d2b8857b7 | 4 months ago |
Rob Muhlestein | bba44c7550 | 4 months ago |
@ -1,3 +1,3 @@
|
||||
go.work
|
||||
build
|
||||
_old
|
||||
go.work.sum
|
||||
|
@ -1,201 +0,0 @@
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "{}"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright 2020 Rob Muhlestein
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
@ -0,0 +1,26 @@
|
||||
package z
|
||||
|
||||
import (
|
||||
"github.com/rwxrob/greet"
|
||||
"github.com/spf13/cobra"
|
||||
)
|
||||
|
||||
var Cmd = &cobra.Command{
|
||||
Use: "z",
|
||||
Short: "A brief description of your application",
|
||||
Long: `A longer description that spans multiple lines and likely contains
|
||||
examples and usage of using your application. For example:
|
||||
|
||||
Cobra is a CLI library for Go that empowers applications.
|
||||
This application is a tool to generate the needed files
|
||||
to quickly create a Cobra application.`,
|
||||
// Uncomment the following line if your bare application
|
||||
// has an action associated with it:
|
||||
// Run: func(cmd *cobra.Command, args []string) { },
|
||||
|
||||
}
|
||||
|
||||
func init() {
|
||||
Cmd.Flags().BoolP("toggle", "t", false, "Help message for toggle")
|
||||
Cmd.AddCommand(greet.Cmd)
|
||||
}
|
@ -0,0 +1,14 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"os"
|
||||
|
||||
"github.com/rwxrob/z"
|
||||
)
|
||||
|
||||
func main() {
|
||||
err := z.Cmd.Execute()
|
||||
if err != nil {
|
||||
os.Exit(1)
|
||||
}
|
||||
}
|
@ -1,16 +0,0 @@
|
||||
package main
|
||||
|
||||
/*
|
||||
|
||||
// TODO create a bonzai branch for this and use comp.YAMLConfKeys as
|
||||
// completer.
|
||||
|
||||
var edit = &Z.Cmd{
|
||||
Name: `edit`,
|
||||
Summary: `edit common files with preferred editor and completion`,
|
||||
Commands: []*Z.Cmd{help.Cmd},
|
||||
Call: func(x *Z.Cmd, args ...string) error {
|
||||
return nil
|
||||
},
|
||||
}
|
||||
*/
|
@ -1,46 +0,0 @@
|
||||
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
|
||||
},
|
||||
}
|
@ -1,48 +0,0 @@
|
||||
package git
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
Z "github.com/rwxrob/bonzai/z"
|
||||
"github.com/rwxrob/help"
|
||||
"github.com/rwxrob/term"
|
||||
"github.com/rwxrob/to"
|
||||
)
|
||||
|
||||
func tags() ([]string, error) {
|
||||
lines := to.Lines(Z.Out("git", "tag"))
|
||||
return lines, nil
|
||||
}
|
||||
|
||||
func deltag(tag string) error {
|
||||
if err := Z.Exec(`git`, `push`, `--delete`, `origin`, tag); err != nil {
|
||||
return err
|
||||
}
|
||||
return Z.Exec(`git`, `tag`, `--delete`, tag)
|
||||
}
|
||||
|
||||
var Cmd = &Z.Cmd{
|
||||
Name: `git`,
|
||||
Summary: `git extensions`,
|
||||
Commands: []*Z.Cmd{help.Cmd, delTagsCmd},
|
||||
}
|
||||
|
||||
var delTagsCmd = &Z.Cmd{
|
||||
Name: `deltags`,
|
||||
Summary: `delete all local and remote tags`,
|
||||
Commands: []*Z.Cmd{help.Cmd},
|
||||
Call: func(_ *Z.Cmd, args ...string) error {
|
||||
lines, err := tags()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
fmt.Println(lines)
|
||||
if term.Prompt("Really delete them all? (y/N) ") != "y" {
|
||||
return nil
|
||||
}
|
||||
for _, tag := range lines {
|
||||
deltag(tag)
|
||||
}
|
||||
return err
|
||||
},
|
||||
}
|
@ -1,76 +1,9 @@
|
||||
module github.com/rwxrob/z
|
||||
|
||||
go 1.18
|
||||
go 1.21.3
|
||||
|
||||
require (
|
||||
github.com/rwxrob/bon v0.1.0
|
||||
github.com/rwxrob/bonzai v0.20.7
|
||||
github.com/rwxrob/conf v0.8.2
|
||||
github.com/rwxrob/filter v0.1.0
|
||||
github.com/rwxrob/github v0.2.0
|
||||
github.com/rwxrob/good v0.1.4
|
||||
github.com/rwxrob/grep v0.2.5
|
||||
github.com/rwxrob/help v0.7.0
|
||||
github.com/rwxrob/keg v0.8.1
|
||||
github.com/rwxrob/kube v0.1.0
|
||||
github.com/rwxrob/pomo v0.2.2
|
||||
github.com/rwxrob/slug v0.1.0
|
||||
github.com/rwxrob/term v0.2.9
|
||||
github.com/rwxrob/to v0.12.1
|
||||
github.com/rwxrob/twitch v0.4.3
|
||||
github.com/rwxrob/uniq v0.5.0
|
||||
github.com/rwxrob/vars v0.6.2
|
||||
github.com/rwxrob/y2j v0.5.0
|
||||
github.com/rwxrob/yq v0.3.2
|
||||
)
|
||||
|
||||
require (
|
||||
github.com/a8m/envsubst v1.3.0 // indirect
|
||||
github.com/alecthomas/chroma v0.10.0 // indirect
|
||||
github.com/alecthomas/participle/v2 v2.0.0-beta.5 // indirect
|
||||
github.com/aymanbagabas/go-osc52 v1.2.1 // indirect
|
||||
github.com/aymerick/douceur v0.2.0 // indirect
|
||||
github.com/charmbracelet/glamour v0.6.0 // indirect
|
||||
github.com/dimchansky/utfbom v1.1.1 // indirect
|
||||
github.com/dlclark/regexp2 v1.7.0 // indirect
|
||||
github.com/elliotchance/orderedmap v1.5.0 // indirect
|
||||
github.com/fatih/color v1.13.0 // indirect
|
||||
github.com/goccy/go-json v0.10.0 // indirect
|
||||
github.com/goccy/go-yaml v1.9.7 // indirect
|
||||
github.com/gorilla/css v1.0.0 // indirect
|
||||
github.com/gosimple/slug v1.13.1 // indirect
|
||||
github.com/gosimple/unidecode v1.0.1 // indirect
|
||||
github.com/jinzhu/copier v0.3.5 // indirect
|
||||
github.com/lucasb-eyer/go-colorful v1.2.0 // indirect
|
||||
github.com/magiconair/properties v1.8.6 // indirect
|
||||
github.com/mattn/go-colorable v0.1.13 // indirect
|
||||
github.com/mattn/go-isatty v0.0.16 // indirect
|
||||
github.com/mattn/go-runewidth v0.0.14 // indirect
|
||||
github.com/microcosm-cc/bluemonday v1.0.21 // indirect
|
||||
github.com/mikefarah/yq/v4 v4.30.5 // indirect
|
||||
github.com/muesli/reflow v0.3.0 // indirect
|
||||
github.com/muesli/termenv v0.13.0 // indirect
|
||||
github.com/olekukonko/tablewriter v0.0.5 // indirect
|
||||
github.com/rivo/uniseg v0.4.3 // indirect
|
||||
github.com/rogpeppe/go-internal v1.9.0 // indirect
|
||||
github.com/rwxrob/choose v0.2.1 // indirect
|
||||
github.com/rwxrob/compcmd v0.3.0 // indirect
|
||||
github.com/rwxrob/compfile v0.1.12 // indirect
|
||||
github.com/rwxrob/dtime v0.1.1 // indirect
|
||||
github.com/rwxrob/fn v0.4.0 // indirect
|
||||
github.com/rwxrob/fs v0.18.0 // indirect
|
||||
github.com/rwxrob/json v0.8.0 // indirect
|
||||
github.com/rwxrob/pegn v0.2.1 // indirect
|
||||
github.com/rwxrob/structs v0.6.0 // indirect
|
||||
github.com/rwxrob/web v0.5.0 // indirect
|
||||
github.com/yuin/goldmark v1.5.3 // indirect
|
||||
github.com/yuin/goldmark-emoji v1.0.1 // indirect
|
||||
golang.org/x/crypto v0.3.0 // indirect
|
||||
golang.org/x/net v0.4.0 // indirect
|
||||
golang.org/x/sys v0.3.0 // indirect
|
||||
golang.org/x/term v0.3.0 // indirect
|
||||
golang.org/x/text v0.5.0 // indirect
|
||||
golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect
|
||||
gopkg.in/op/go-logging.v1 v1.0.0-20160211212156-b2cb9fa56473 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
||||
github.com/spf13/cobra v1.8.0 // indirect
|
||||
github.com/spf13/pflag v1.0.5 // indirect
|
||||
)
|
||||
|
@ -1,209 +1,10 @@
|
||||
github.com/a8m/envsubst v1.3.0 h1:GmXKmVssap0YtlU3E230W98RWtWCyIZzjtf1apWWyAg=
|
||||
github.com/a8m/envsubst v1.3.0/go.mod h1:MVUTQNGQ3tsjOOtKCNd+fl8RzhsXcDvvAEzkhGtlsbY=
|
||||
github.com/alecthomas/assert/v2 v2.0.3 h1:WKqJODfOiQG0nEJKFKzDIG3E29CN2/4zR9XGJzKIkbg=
|
||||
github.com/alecthomas/chroma v0.10.0 h1:7XDcGkCQopCNKjZHfYrNLraA+M7e0fMiJ/Mfikbfjek=
|
||||
github.com/alecthomas/chroma v0.10.0/go.mod h1:jtJATyUxlIORhUOFNA9NZDWGAQ8wpxQQqNSB4rjA/1s=
|
||||
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/alecthomas/repr v0.1.1 h1:87P60cSmareLAxMc4Hro0r2RBY4ROm0dYwkJNpS4pPs=
|
||||
github.com/aymanbagabas/go-osc52 v1.0.3/go.mod h1:zT8H+Rk4VSabYN90pWyugflM3ZhpTZNC7cASDfUCdT4=
|
||||
github.com/aymanbagabas/go-osc52 v1.2.1 h1:q2sWUyDcozPLcLabEMd+a+7Ea2DitxZVN9hTxab9L4E=
|
||||
github.com/aymanbagabas/go-osc52 v1.2.1/go.mod h1:zT8H+Rk4VSabYN90pWyugflM3ZhpTZNC7cASDfUCdT4=
|
||||
github.com/aymerick/douceur v0.2.0 h1:Mv+mAeH1Q+n9Fr+oyamOlAkUNPWPlA8PPGR0QAaYuPk=
|
||||
github.com/aymerick/douceur v0.2.0/go.mod h1:wlT5vV2O3h55X9m7iVYN0TBM0NH/MmbLnd30/FjWUq4=
|
||||
github.com/charmbracelet/glamour v0.6.0 h1:wi8fse3Y7nfcabbbDuwolqTqMQPMnVPeZhDM273bISc=
|
||||
github.com/charmbracelet/glamour v0.6.0/go.mod h1:taqWV4swIMMbWALc0m7AfE9JkPSU8om2538k9ITBxOc=
|
||||
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/dimchansky/utfbom v1.1.1 h1:vV6w1AhK4VMnhBno/TPVCoK9U/LP0PkLCS9tbxHdi/U=
|
||||
github.com/dimchansky/utfbom v1.1.1/go.mod h1:SxdoEBH5qIqFocHMyGOXVAybYJdr71b1Q/j0mACtrfE=
|
||||
github.com/dlclark/regexp2 v1.4.0/go.mod h1:2pZnwuY/m+8K6iRw6wQdMtk+rH5tNGR1i55kozfMjCc=
|
||||
github.com/dlclark/regexp2 v1.7.0 h1:7lJfhqlPssTb1WQx4yvTHN0uElPEv52sbaECrAQxjAo=
|
||||
github.com/dlclark/regexp2 v1.7.0/go.mod h1:DHkYz0B9wPfa6wondMfaivmHpzrQ3v9q8cnmRbL6yW8=
|
||||
github.com/elliotchance/orderedmap v1.5.0 h1:1IsExUsjv5XNBD3ZdC7jkAAqLWOOKdbPTmkHx63OsBg=
|
||||
github.com/elliotchance/orderedmap v1.5.0/go.mod h1:wsDwEaX5jEoyhbs7x93zk2H/qv0zwuhg4inXhDkYqys=
|
||||
github.com/fatih/color v1.10.0/go.mod h1:ELkj/draVOlAH/xkhN6mQ50Qd0MPOk5AAr3maGEBuJM=
|
||||
github.com/fatih/color v1.13.0 h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w=
|
||||
github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk=
|
||||
github.com/ghodss/yaml v1.0.0 h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk=
|
||||
github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4=
|
||||
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.10.0 h1:mXKd9Qw4NuzShiRlOXKews24ufknHO7gx30lsDyokKA=
|
||||
github.com/goccy/go-json v0.10.0/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I=
|
||||
github.com/goccy/go-yaml v1.9.7 h1:D/Vx+JITklB1ugSkncB4BNR67M3X6AKs9+rqVeo3ddw=
|
||||
github.com/goccy/go-yaml v1.9.7/go.mod h1:JubOolP3gh0HpiBc4BLRD4YmjEjHAmIIB2aaXKkTfoE=
|
||||
github.com/gorilla/css v1.0.0 h1:BQqNyPTi50JCFMTw/b67hByjMVXZRwGha6wxVGkeihY=
|
||||
github.com/gorilla/css v1.0.0/go.mod h1:Dn721qIggHpt4+EFCcTLTU/vk5ySda2ReITrtgBl60c=
|
||||
github.com/gosimple/slug v1.13.1 h1:bQ+kpX9Qa6tHRaK+fZR0A0M2Kd7Pa5eHPPsb1JpHD+Q=
|
||||
github.com/gosimple/slug v1.13.1/go.mod h1:UiRaFH+GEilHstLUmcBgWcI42viBN7mAb818JrYOeFQ=
|
||||
github.com/gosimple/unidecode v1.0.1 h1:hZzFTMMqSswvf0LBJZCZgThIZrpDHFXux9KeGmn6T/o=
|
||||
github.com/gosimple/unidecode v1.0.1/go.mod h1:CP0Cr1Y1kogOtx0bJblKzsVWrqYaqfNOnHzpgWw4Awc=
|
||||
github.com/hexops/gotextdiff v1.0.3 h1:gitA9+qJrrTCsiCl7+kh75nPqQt1cx4ZkudSTLoUqJM=
|
||||
github.com/jinzhu/copier v0.3.5 h1:GlvfUwHk62RokgqVNvYsku0TATCF7bAHVwEXoBh3iJg=
|
||||
github.com/jinzhu/copier v0.3.5/go.mod h1:DfbEm0FYsaqBcKcFuvmOZb218JkPGtvSHsKg8S8hyyg=
|
||||
github.com/leodido/go-urn v1.2.0/go.mod h1:+8+nEpDfqqsY+g338gtMEUOtuK+4dEMhiQEgxpxOKII=
|
||||
github.com/lucasb-eyer/go-colorful v1.2.0 h1:1nnpGOrhyZZuNyfu1QjKiUICQ74+3FNCN69Aj6K7nkY=
|
||||
github.com/lucasb-eyer/go-colorful v1.2.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0=
|
||||
github.com/magiconair/properties v1.8.6 h1:5ibWZ6iY0NctNGWo87LalDlEZ6R41TqbbDamhfG/Qzo=
|
||||
github.com/magiconair/properties v1.8.6/go.mod h1:y3VJvCyxH9uVvJTWEGAELF3aiYNyPKd5NZ3oSwXrF60=
|
||||
github.com/mattn/go-colorable v0.1.8/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
|
||||
github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
|
||||
github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
|
||||
github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg=
|
||||
github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU=
|
||||
github.com/mattn/go-isatty v0.0.14/go.mod h1:7GGIvUiUoEMVVmxf/4nioHXj79iQHKdU27kJ6hsGG94=
|
||||
github.com/mattn/go-isatty v0.0.16 h1:bq3VjFmv/sOjHtdEhmkEV4x1AJtvUvOJ2PFAZ5+peKQ=
|
||||
github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
|
||||
github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m2gUSrubnMI=
|
||||
github.com/mattn/go-runewidth v0.0.12/go.mod h1:RAqKPSqVFrSLVXbA8x7dzmKdmGzieGRCM46jaSJTDAk=
|
||||
github.com/mattn/go-runewidth v0.0.14 h1:+xnbZSEeDbOIg5/mE6JF0w6n9duR1l3/WmbinWVwUuU=
|
||||
github.com/mattn/go-runewidth v0.0.14/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
|
||||
github.com/microcosm-cc/bluemonday v1.0.21 h1:dNH3e4PSyE4vNX+KlRGHT5KrSvjeUkoNPwEORjffHJg=
|
||||
github.com/microcosm-cc/bluemonday v1.0.21/go.mod h1:ytNkv4RrDrLJ2pqlsSI46O6IVXmZOBBD4SaJyDwwTkM=
|
||||
github.com/mikefarah/yq/v4 v4.30.5 h1:zUJgtVH1f9GFdl+FJ/WGOFA2bLjXrnJ/GsKxjGa68jQ=
|
||||
github.com/mikefarah/yq/v4 v4.30.5/go.mod h1:KBm6Ec5wLC5kiKJaDZfN4a7KWrJrf4rFPUZAmgleIAg=
|
||||
github.com/muesli/reflow v0.3.0 h1:IFsN6K9NfGtjeggFP+68I4chLZV2yIKsXJFNZ+eWh6s=
|
||||
github.com/muesli/reflow v0.3.0/go.mod h1:pbwTDkVPibjO2kyvBQRBxTWEEGDGq0FlB1BIKtnHY/8=
|
||||
github.com/muesli/termenv v0.13.0 h1:wK20DRpJdDX8b7Ek2QfhvqhRQFZ237RGRO0RQ/Iqdy0=
|
||||
github.com/muesli/termenv v0.13.0/go.mod h1:sP1+uffeLaEYpyOTb8pLCUctGcGLnoFjSn4YJK5e2bc=
|
||||
github.com/olekukonko/tablewriter v0.0.5 h1:P2Ga83D34wi1o9J6Wh1mRuqd4mF/x/lgBS7N7AbDhec=
|
||||
github.com/olekukonko/tablewriter v0.0.5/go.mod h1:hPp6KlRPjbx+hW8ykQs1w3UBbZlj6HuIJcUGPhkA7kY=
|
||||
github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e h1:aoZm08cpOy4WuID//EZDgcC4zIxODThtZNPirFr42+A=
|
||||
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
|
||||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/rivo/uniseg v0.1.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
|
||||
github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc=
|
||||
github.com/rivo/uniseg v0.4.3 h1:utMvzDsuh3suAEnhH0RdHmoPbU648o6CvXxTx4SBMOw=
|
||||
github.com/rivo/uniseg v0.4.3/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88=
|
||||
github.com/rogpeppe/go-internal v1.9.0 h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8=
|
||||
github.com/rogpeppe/go-internal v1.9.0/go.mod h1:WtVeX8xhTBvf0smdhujwtBcq4Qrzq/fJaraNFVN+nFs=
|
||||
github.com/rwxrob/bon v0.0.1 h1:cDCDFlWTu1Wh9iBTasThvOaONvbBhMHNpDIg6ZgeGL8=
|
||||
github.com/rwxrob/bon v0.0.1/go.mod h1:zvb4oZO3i7aOJ+qXHQ6gcjTBMTst1wEj0rKM84TaExg=
|
||||
github.com/rwxrob/bon v0.1.0 h1:9WtKCvmnEyk1ibZA/iY4ck9uuXWncOnr/mPAF7Dv0MQ=
|
||||
github.com/rwxrob/bon v0.1.0/go.mod h1:I6tEsl5VWW8UzJF4aWpbRafHTFzKp/p3KOKkxxrVcFI=
|
||||
github.com/rwxrob/bonzai v0.20.6 h1:+ZIj3TmGPpW0JQmjnY2OolzNp3C52fFGge7CY83evYw=
|
||||
github.com/rwxrob/bonzai v0.20.6/go.mod h1:QmLf6NXoVtTf3pY7eYR4+k9daz2bdRiiq5ArFckAW3E=
|
||||
github.com/rwxrob/bonzai v0.20.7 h1:d+0Tkiw/w14cNwqLb7JPqRAoau0/Js0v9KP+fc+LU/w=
|
||||
github.com/rwxrob/bonzai v0.20.7/go.mod h1:QmLf6NXoVtTf3pY7eYR4+k9daz2bdRiiq5ArFckAW3E=
|
||||
github.com/rwxrob/choose v0.2.1 h1:iuN6NkiOwER6QpSzEVTTp+ZOb33PGFIC3Y1OK6D6Quc=
|
||||
github.com/rwxrob/choose v0.2.1/go.mod h1:mhuV7pY/62p1sZCvCGVET5GuF+Z126hKxqnzSUOO0EU=
|
||||
github.com/rwxrob/compcmd v0.3.0 h1:AlJNItb7+Yk17qmH5E7TJFyBXhna/rS3NeQAgjqbFls=
|
||||
github.com/rwxrob/compcmd v0.3.0/go.mod h1:XOHl6bS2Uen6Wx2mxtbtUhT8Sbz1IhnaE55xPkhTBD4=
|
||||
github.com/rwxrob/compfile v0.1.12 h1:n3JrOa8lOXY1emdZ2C8FrN+VsJfttIQZz71AehTuhfo=
|
||||
github.com/rwxrob/compfile v0.1.12/go.mod h1:rzOOpjruoXw7CUwvFyef4dIZWhv2pyjisuGh25pDS68=
|
||||
github.com/rwxrob/conf v0.8.2 h1:IqK/HlPdJYRb2/m+GNBXZzIXR5xjyHaHcaz71HaSfAU=
|
||||
github.com/rwxrob/conf v0.8.2/go.mod h1:fdVWeW7oPt4qg8gLFqGSh2wxgJdjrJzHHpqi5ny1J34=
|
||||
github.com/rwxrob/dtime v0.1.1 h1:jY4QnYX7FVSoWa/YUAZ+l0ugtgA9jwNTEf26ow5NFw0=
|
||||
github.com/rwxrob/dtime v0.1.1/go.mod h1:oyrL/CEjYKYNKi5PD2Lvf6yLElbD95hfhzMut29RbpQ=
|
||||
github.com/rwxrob/filter v0.1.0 h1:W25ESXNc7Eo/UnkwNsMR99t77fsg9C+Xlvq0/GwRKJQ=
|
||||
github.com/rwxrob/filter v0.1.0/go.mod h1:T/2r5RSROZabsgAVqcSoP30pLQbNdInshLfIdsgNLwk=
|
||||
github.com/rwxrob/fn v0.4.0 h1:lUZEkELSFAlPhzrkNhgB/xoTkz9tv5op4g0QfggSZFg=
|
||||
github.com/rwxrob/fn v0.4.0/go.mod h1:omPqOqEB+dDna09z5pi5YFxq4IZqDvv3wFPUCES5LvY=
|
||||
github.com/rwxrob/fs v0.18.0 h1:YzP55XFdNu1vVHPN/iDIAi29ZrtW04z561ukWgqklko=
|
||||
github.com/rwxrob/fs v0.18.0/go.mod h1:iSQeNjy6YY1UCfL0LBwzKH6qZLRnVG9InZYvMnJX8wA=
|
||||
github.com/rwxrob/github v0.2.0 h1:+CKtdUHOzIr6LmRcIkPlFJCpuGQy2FBXczeH+l6Q9nY=
|
||||
github.com/rwxrob/github v0.2.0/go.mod h1:vJloU5FYqA8f/13SEYHVCITTEihih/zNP6764v21i8U=
|
||||
github.com/rwxrob/good v0.1.4 h1:oH+S7XHeUQ/tRmPA1q7t20hNX29sf0kpUtErrsuO3v0=
|
||||
github.com/rwxrob/good v0.1.4/go.mod h1:grPgOsLadOiiojSFENdqtkk/j9hzNY+pqkHkiancE7c=
|
||||
github.com/rwxrob/grep v0.2.5 h1:+Hl8D6sh+USHESHXKrI5bhQzAKqSK8sOfYM0PAC2FNQ=
|
||||
github.com/rwxrob/grep v0.2.5/go.mod h1:RWWNnB88udrOV1G+XQKQMCOC8K+FbkisUdaLmiAHQJ8=
|
||||
github.com/rwxrob/help v0.7.0 h1:qp2LdtigbNMehBmV/Vn4ZbD8/sO9lTDvUI2ZTgV1d0Y=
|
||||
github.com/rwxrob/help v0.7.0/go.mod h1:3OzSAfDWeU9Fzf26Iq8+d0mH2NXU6wIVdXEpQpX3TwY=
|
||||
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/keg v0.8.0 h1:afKABm5g9OUvBoKx48RHYeCTHb52vKH1jWINv9cIKtU=
|
||||
github.com/rwxrob/keg v0.8.0/go.mod h1:ddOTIkaSiIPFdsFCQ70YsVRoPNeaH+uKlpaLNAE8bEQ=
|
||||
github.com/rwxrob/keg v0.8.1 h1:N4dDVWCPFvB6cOgpvhW7OtsDytcC740m9iMAFAkXTcs=
|
||||
github.com/rwxrob/keg v0.8.1/go.mod h1:lY4tolXyKwe4+6VpvGQ1pnkQWVYNAMZrqI7qe3ytW4s=
|
||||
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/pegn v0.2.1 h1:roE+SkNl66SLJkeEHowuds+0lUOjSlTHE8IDJuZZUNs=
|
||||
github.com/rwxrob/pegn v0.2.1/go.mod h1:TyD3XS8ddVucs2gwMr1VhB2HbHiruzj6Ub67RZGTfMA=
|
||||
github.com/rwxrob/pomo v0.2.0 h1:CDCr2MjhlnAuoxFVGpP/h4chmPlKHEZPvCjv1DjurBw=
|
||||
github.com/rwxrob/pomo v0.2.0/go.mod h1:OchIMVMRth2W3Pr7ngzt1oylYf+dULMP+MxNlCsISdQ=
|
||||
github.com/rwxrob/pomo v0.2.1 h1:LX3bYtovSOC7AhB04oENk1K+qz1iH5qsb02qlA5l3GY=
|
||||
github.com/rwxrob/pomo v0.2.1/go.mod h1:iSniOnAQTUAOJNweXe+Ucg4tOqLBFTfQ5gSHMIAkEUo=
|
||||
github.com/rwxrob/pomo v0.2.2 h1:rN8hWv1tj+HDoa4Agd1TnL93/nnag9PYbPCY7gJw8HM=
|
||||
github.com/rwxrob/pomo v0.2.2/go.mod h1:HnrabKQpP/O0AizGCatWnXVcRWJmbs2/U/cvBi2oRfc=
|
||||
github.com/rwxrob/slug v0.1.0 h1:uRog8XB/oKbD+VMk+LFWoWGFXkqwvNdvP5i4FOxaY1o=
|
||||
github.com/rwxrob/slug v0.1.0/go.mod h1:y2XFfnLNxqNVNMVFG/1+rOt2x8nhktLcW9VsmFrJDYI=
|
||||
github.com/rwxrob/structs v0.6.0 h1:t8JVd/Pee1OGaXgT6QYmGed470C9vOw6scdH8Cr5LPg=
|
||||
github.com/rwxrob/structs v0.6.0/go.mod h1:txMfzPfEiIDNM5bwhzUqxr/1QQ3ekOuj3KLT8Nt1fA0=
|
||||
github.com/rwxrob/term v0.2.9 h1:lXcrmKMbMQ5Etfm+tjAbHsx2v2yHnZSvzOfS/LGDBXc=
|
||||
github.com/rwxrob/term v0.2.9/go.mod h1:ptzymk+QUaT54SiRzh6ITMW65qGsJDAdSZIysq17iO8=
|
||||
github.com/rwxrob/tinout v0.1.1 h1:f3J05gEBC+ZUiztA4UCAsteCiJRc5vOUi4Yxs+rXcyk=
|
||||
github.com/rwxrob/to v0.12.1 h1:2x1SgNK2ixE7FhbDFK2fzlx3Y3qPIBcSFm/jivUzOQM=
|
||||
github.com/rwxrob/to v0.12.1/go.mod h1:8+uSoxMWfTSY/KU57db87hWGZGsiVW0uSDZd7NAgInI=
|
||||
github.com/rwxrob/twitch v0.4.3 h1:8jjB4YrvzvKvbASrg7SmVg1YZ6bmfxsaqMHjK8Gg6Ks=
|
||||
github.com/rwxrob/twitch v0.4.3/go.mod h1:OjM6b3F7bJBOWL6+oqeP+q4jXVhEBEPxbtoGpHcrMQI=
|
||||
github.com/rwxrob/uniq v0.5.0 h1:64mksaM2IMMlTC+qi2ckkJRa4MiO8gv+j5gTkd6Btqw=
|
||||
github.com/rwxrob/uniq v0.5.0/go.mod h1:ZnCJlZU2MxTT1eXad7CsKUOye6VO0OO17Aih7/GNy1E=
|
||||
github.com/rwxrob/vars v0.5.0 h1:QvJwPd6dRvbuuKICh9njQbLOe/8lGPSfbxaibj9hLsQ=
|
||||
github.com/rwxrob/vars v0.5.0/go.mod h1:wIDc2cge3U6gHr/FRM+zKWIuczfRGTBGsGTvC5f/hHo=
|
||||
github.com/rwxrob/vars v0.6.1 h1:fFNKa5N2UBgsRDvpm0svfkwddPlK1iJeCvZTUS/GRQk=
|
||||
github.com/rwxrob/vars v0.6.1/go.mod h1:wIDc2cge3U6gHr/FRM+zKWIuczfRGTBGsGTvC5f/hHo=
|
||||
github.com/rwxrob/vars v0.6.2 h1:gVl9Bi6Q9wJ5S1GF96vOkkH7ZRNS4zrY128NZmbqYD4=
|
||||
github.com/rwxrob/vars v0.6.2/go.mod h1:wIDc2cge3U6gHr/FRM+zKWIuczfRGTBGsGTvC5f/hHo=
|
||||
github.com/rwxrob/web v0.5.0 h1:Wjjp4wDT0uoWhYkoClJ/ReN0/RxNUMJd8VvP1GpVtT8=
|
||||
github.com/rwxrob/web v0.5.0/go.mod h1:8kNmzpOIEeFKr6ZQeJLstwTPsYCWQJ3GM4p1yS+40bE=
|
||||
github.com/rwxrob/y2j v0.5.0 h1:HHnftKFUfC+VzfXrR+frFJ3dX2mr+3Yp1dUx69nW6hs=
|
||||
github.com/rwxrob/y2j v0.5.0/go.mod h1:rI6b1/Rg6VY35Vh/FgLWfnqDGO11jN159nHSOYzVnZA=
|
||||
github.com/rwxrob/yq v0.3.2 h1:fMUd5q4qS0nwCvu4RNuUfRzs5UjXIrX4ElFArOHrx74=
|
||||
github.com/rwxrob/yq v0.3.2/go.mod h1:NGD6NsHhWKGeIE5OdHKeicP8sT88xeJbgSMugcS60eY=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4=
|
||||
github.com/stretchr/testify v1.7.0 h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5CcY=
|
||||
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
|
||||
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
github.com/yuin/goldmark v1.5.2/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
|
||||
github.com/yuin/goldmark v1.5.3 h1:3HUJmBFbQW9fhQOzMgseU134xfi6hU+mjWywx5Ty+/M=
|
||||
github.com/yuin/goldmark v1.5.3/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
|
||||
github.com/yuin/goldmark-emoji v1.0.1 h1:ctuWEyzGBwiucEqxzwe0SOYDXPAucOrE9NQC18Wa1os=
|
||||
github.com/yuin/goldmark-emoji v1.0.1/go.mod h1:2w1E6FEWLcDQkoTE+7HU6QF1F6SLlNGjRIBbIZQFqkQ=
|
||||
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.3.0 h1:a06MkbcxBrEFc0w0QIZWXrH/9cCX6KJyWbBOIwAn+7A=
|
||||
golang.org/x/crypto v0.3.0/go.mod h1:hebNnKkNXi2UzZN1eVRvBB7co0a+JxK6XbPiWVs/3J4=
|
||||
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
|
||||
golang.org/x/net v0.0.0-20221002022538-bcab6841153b/go.mod h1:YDH+HFinaLZZlnHAfSS6ZXJJ9M9t4Dl22yv3iI2vPwk=
|
||||
golang.org/x/net v0.2.0 h1:sZfSu1wtKLGlWI4ZZayP0ck9Y73K1ynO6gqzTdBVdPU=
|
||||
golang.org/x/net v0.2.0/go.mod h1:KqCZLdyyvdV855qA2rE3GC2aiw5xGR5TEjj8smXukLY=
|
||||
golang.org/x/net v0.4.0 h1:Q5QPcMlvfxFTAPV0+07Xz/MpK9NTXu2VDUuy0FeMfaU=
|
||||
golang.org/x/net v0.4.0/go.mod h1:MBQ8lrhLObU/6UmLb4fmbmk5OcyYmqtbGd/9yIeKjEE=
|
||||
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=
|
||||
golang.org/x/sys v0.0.0-20200223170610-d5e6a3e2c0ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220406163625-3f8b81556e12/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220728004956-3c1f35247d10/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.3.0 h1:w8ZOecv6NaNa/zC8944JTU3vz4u6Lagfk4RPQxv92NQ=
|
||||
golang.org/x/sys v0.3.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8=
|
||||
golang.org/x/term v0.2.0 h1:z85xZCsEl7bi/KwbNADeBYoOP0++7W1ipu+aGnpwzRM=
|
||||
golang.org/x/term v0.2.0/go.mod h1:TVmDHMZPmdnySmBfhjOoOdhjzdE1h4u1VwSiw2l1Nuc=
|
||||
golang.org/x/term v0.3.0 h1:qoo4akIqOcDME5bhc/NgxUdovd6BSS2uMsVjB56q1xI=
|
||||
golang.org/x/term v0.3.0/go.mod h1:q750SLmJuPmVoN1blW3UFBPREJfb1KmY3vwxfr+nFDA=
|
||||
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/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ=
|
||||
golang.org/x/text v0.5.0 h1:OLmvp0KP+FVG99Ct/qFiL/Fhk4zp4QQnZ7b2U+5piUM=
|
||||
golang.org/x/text v0.5.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 h1:H2TDz8ibqkAF6YGhCdN3jS9O0/s90v0rJh3X/OLHEUk=
|
||||
golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2/go.mod h1:K8+ghG5WaK9qNqU5K3HdILfMLy1f3aNYFI/wnl100a8=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.3/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
|
||||
github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
|
||||
github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
|
||||
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
|
||||
github.com/spf13/cobra v1.8.0 h1:7aJaZx1B85qltLMc546zn58BxxfZdR/W22ej9CFoEf0=
|
||||
github.com/spf13/cobra v1.8.0/go.mod h1:WXLWApfZ71AjXPya3WOlMsY9yMs7YeiHhFVlvLyhcho=
|
||||
github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
|
||||
github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
|
||||
gopkg.in/op/go-logging.v1 v1.0.0-20160211212156-b2cb9fa56473 h1:6D+BvnJ/j6e222UW8s2qTSe3wGBtvo0MbVQG/c5k8RE=
|
||||
gopkg.in/op/go-logging.v1 v1.0.0-20160211212156-b2cb9fa56473/go.mod h1:N1eN2tsCx0Ydtgjl4cqmbRCsY4/+z4cYDeqwZTk6zog=
|
||||
gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI=
|
||||
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
|
||||
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/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=
|
||||
|
@ -1,120 +0,0 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"log"
|
||||
|
||||
"github.com/rwxrob/bon"
|
||||
Z "github.com/rwxrob/bonzai/z"
|
||||
"github.com/rwxrob/conf"
|
||||
"github.com/rwxrob/filter"
|
||||
"github.com/rwxrob/github"
|
||||
"github.com/rwxrob/good"
|
||||
"github.com/rwxrob/grep"
|
||||
"github.com/rwxrob/help"
|
||||
"github.com/rwxrob/keg"
|
||||
"github.com/rwxrob/kube"
|
||||
"github.com/rwxrob/pomo"
|
||||
"github.com/rwxrob/slug"
|
||||
"github.com/rwxrob/twitch"
|
||||
"github.com/rwxrob/uniq"
|
||||
"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"
|
||||
)
|
||||
|
||||
func init() {
|
||||
Z.Dynamic["uname"] = func() string { return Z.Out("uname", "-a") }
|
||||
Z.Dynamic["ls"] = func() string { return Z.Out("ls", "-l", "-h") }
|
||||
}
|
||||
|
||||
func main() {
|
||||
|
||||
// remove log prefixes
|
||||
log.SetFlags(0)
|
||||
|
||||
// provide panic trace
|
||||
Z.AllowPanic = true
|
||||
|
||||
// can run in multicall, or monolith, not both
|
||||
|
||||
/*
|
||||
|
||||
// MULTICALL (status, afk, etc. linked)
|
||||
// (no completion unless set for individual commands)
|
||||
// (requires creation of hard/sym links or copies)
|
||||
Z.Commands = map[string][]any{
|
||||
// "conf": {conf.Cmd}, // bork cuz no multicall mode
|
||||
"yq": {yq.Cmd},
|
||||
"y2j": {y2j.Cmd},
|
||||
"status": {tmux, "update"},
|
||||
"afk": {twitch.Cmd, "chat", "!afk"},
|
||||
}
|
||||
Z.Run()
|
||||
|
||||
*/
|
||||
|
||||
Cmd.Run()
|
||||
}
|
||||
|
||||
var Cmd = &Z.Cmd{
|
||||
Name: `z`,
|
||||
Summary: `rwxrob's bonzai command tree`,
|
||||
Copyright: `Copyright 2021 Robert S Muhlestein`,
|
||||
Version: `v0.1.2`,
|
||||
License: `Apache-2.0`,
|
||||
Site: `rwxrob.tv`,
|
||||
Source: `git@github.com:rwxrob/z.git`,
|
||||
Issues: `github.com/rwxrob/z/issues`,
|
||||
|
||||
Commands: []*Z.Cmd{
|
||||
help.Cmd, conf.Cmd, vars.Cmd,
|
||||
y2j.Cmd, twitch.Cmd, tmux.Cmd, yq.Cmd,
|
||||
uniq.Cmd, pomo.Cmd, github.Cmd, git.Cmd,
|
||||
kube.Cmd, env.Cmd, keg.Cmd, slug.Cmd,
|
||||
good.Cmd, grep.Cmd, filter.Cmd, bon.Cmd,
|
||||
|
||||
// openapi.Cmd, update.Cmd, goutil.Cmd
|
||||
},
|
||||
|
||||
Shortcuts: Z.ArgMap{
|
||||
`project`: {`twitch`, `bot`, `commands`, `edit`, `project`},
|
||||
`status`: {`tmux`, `update`},
|
||||
`offscreen`: {`chat`, `!offscreen`},
|
||||
`info`: {`twitch`, `bot`, `commands`, `file`, `edit`},
|
||||
`sync`: {`twitch`, `bot`, `commands`, `sync`},
|
||||
`work`: {`go`, `work`},
|
||||
`chat`: {`twitch`, `chat`},
|
||||
`afk`: {`twitch`, `chat`, `!afk`},
|
||||
`isosec`: {`uniq`, `isosec`},
|
||||
`isonan`: {`uniq`, `isonan`},
|
||||
`isodate`: {`uniq`, `isodate`},
|
||||
`uuid`: {`uniq`, `uuid`},
|
||||
`epoch`: {`uniq`, `second`},
|
||||
`path`: {`env`, `get`, `path`},
|
||||
`ytlink`: {`filter`, `youtube`, `linkify`},
|
||||
//`long version of path`: {`env`, `get`, `path`},
|
||||
},
|
||||
|
||||
Description: `
|
||||
Hi, I'm rwxrob.tv and this {{cmd .Name }} is my Bonzai™ tree. I am
|
||||
slowly replacing all my shell scripts and other Go utilities with
|
||||
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.
|
||||
|
||||
`,
|
||||
}
|
@ -1,47 +0,0 @@
|
||||
package tmux
|
||||
|
||||
import (
|
||||
"os"
|
||||
"path"
|
||||
"strings"
|
||||
|
||||
Z "github.com/rwxrob/bonzai/z"
|
||||
"github.com/rwxrob/help"
|
||||
"github.com/rwxrob/vars"
|
||||
)
|
||||
|
||||
var Cmd = &Z.Cmd{
|
||||
Name: `tmux`,
|
||||
Summary: `make tmux updates`,
|
||||
Commands: []*Z.Cmd{help.Cmd, vars.Cmd, updateCmd, inCmd},
|
||||
}
|
||||
|
||||
var inCmd = &Z.Cmd{
|
||||
Name: `in`,
|
||||
Summary: `exec a nested tmux session (unset TMUX)`,
|
||||
Usage: `[help|<tmuxarg>...]`,
|
||||
Commands: []*Z.Cmd{help.Cmd},
|
||||
Call: func(_ *Z.Cmd, args ...string) error {
|
||||
home, err := os.UserHomeDir()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
conf := path.Join(home, `.tmux.conf`)
|
||||
tmuxargs := []string{`tmux`, `-f`, conf, `-u`}
|
||||
tmuxargs = append(tmuxargs, args...)
|
||||
os.Unsetenv(`TMUX`)
|
||||
Z.SysExec(tmuxargs...)
|
||||
return nil
|
||||
},
|
||||
}
|
||||
|
||||
var updateCmd = &Z.Cmd{
|
||||
Name: `update`,
|
||||
Summary: `update the onscreen status`,
|
||||
Call: func(_ *Z.Cmd, args ...string) error {
|
||||
msg := strings.Join(args, " ")
|
||||
return Z.Exec(
|
||||
"tmux", "-L", "live", "set", "-g", "status-right", msg,
|
||||
)
|
||||
},
|
||||
}
|
Loading…
Reference in New Issue