Skip to content

Commit 6d92264

Browse files
authored
Merge pull request #75 from cpanato/skipfiles
Skip extensions or files
2 parents a029431 + ab5e2b3 commit 6d92264

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

main.go

+21
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,8 @@ Flags:
4848
`
4949

5050
var (
51+
skipExtensionFlags skipExtensionFlag
52+
5153
holder = flag.String("c", "Google LLC", "copyright holder")
5254
license = flag.String("l", "apache", "license type: apache, bsd, mit, mpl")
5355
licensef = flag.String("f", "", "license file")
@@ -56,11 +58,23 @@ var (
5658
checkonly = flag.Bool("check", false, "check only mode: verify presence of license headers and exit with non-zero code if missing")
5759
)
5860

61+
type skipExtensionFlag []string
62+
63+
func (i *skipExtensionFlag) String() string {
64+
return fmt.Sprint(*i)
65+
}
66+
67+
func (i *skipExtensionFlag) Set(value string) error {
68+
*i = append(*i, value)
69+
return nil
70+
}
71+
5972
func main() {
6073
flag.Usage = func() {
6174
fmt.Fprintln(os.Stderr, helpText)
6275
flag.PrintDefaults()
6376
}
77+
flag.Var(&skipExtensionFlags, "skip", "To skip files to check/add the header file, for example: -skip rb -skip go")
6478
flag.Parse()
6579
if flag.NArg() == 0 {
6680
flag.Usage()
@@ -161,6 +175,12 @@ func walk(ch chan<- *file, start string) {
161175
if fi.IsDir() {
162176
return nil
163177
}
178+
for _, skip := range skipExtensionFlags {
179+
if strings.TrimPrefix(filepath.Ext(fi.Name()), ".") == skip || fi.Name() == skip {
180+
log.Printf("%s: skipping this file", fi.Name())
181+
return nil
182+
}
183+
}
164184
ch <- &file{path, fi.Mode()}
165185
return nil
166186
})
@@ -272,6 +292,7 @@ func hashBang(b []byte) []byte {
272292

273293
// go generate: ^// Code generated .* DO NOT EDIT\.$
274294
var goGenerated = regexp.MustCompile(`(?m)^.{1,2} Code generated .* DO NOT EDIT\.$`)
295+
275296
// cargo raze: ^DO NOT EDIT! Replaced on runs of cargo-raze$
276297
var cargoRazeGenerated = regexp.MustCompile(`(?m)^DO NOT EDIT! Replaced on runs of cargo-raze$`)
277298

0 commit comments

Comments
 (0)