Merge pull request #12 from google/xml-html
Better support for XML and HTML
This commit is contained in:
12
main.go
12
main.go
@@ -24,6 +24,7 @@ import (
|
|||||||
"log"
|
"log"
|
||||||
"os"
|
"os"
|
||||||
"path/filepath"
|
"path/filepath"
|
||||||
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
)
|
)
|
||||||
@@ -155,6 +156,12 @@ func addLicense(path string, fmode os.FileMode, typ string, data *copyrightData)
|
|||||||
return ioutil.WriteFile(path, b, fmode)
|
return ioutil.WriteFile(path, b, fmode)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var head = []string{
|
||||||
|
"#!", // shell script
|
||||||
|
"<?xml", // XML declaratioon
|
||||||
|
"<!doctype", // HTML doctype
|
||||||
|
}
|
||||||
|
|
||||||
func hashBang(b []byte) []byte {
|
func hashBang(b []byte) []byte {
|
||||||
var line []byte
|
var line []byte
|
||||||
for _, c := range b {
|
for _, c := range b {
|
||||||
@@ -163,9 +170,12 @@ func hashBang(b []byte) []byte {
|
|||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if bytes.HasPrefix(line, []byte("#!")) {
|
first := strings.ToLower(string(line))
|
||||||
|
for _, h := range head {
|
||||||
|
if strings.HasPrefix(first, h) {
|
||||||
return line
|
return line
|
||||||
}
|
}
|
||||||
|
}
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
2
testdata/expected/file.html
vendored
2
testdata/expected/file.html
vendored
@@ -1,3 +1,4 @@
|
|||||||
|
<!doctype html>
|
||||||
<!--
|
<!--
|
||||||
Copyright 2016 Google Inc.
|
Copyright 2016 Google Inc.
|
||||||
|
|
||||||
@@ -14,5 +15,4 @@
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<!doctype html>
|
|
||||||
<p>Hello World!</p>
|
<p>Hello World!</p>
|
||||||
|
|||||||
21
testdata/expected/file2.xml
vendored
Normal file
21
testdata/expected/file2.xml
vendored
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
|
||||||
|
<!--
|
||||||
|
Copyright 2016 Google Inc.
|
||||||
|
|
||||||
|
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.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<root>
|
||||||
|
<one>one</one>
|
||||||
|
<two/>
|
||||||
|
</root>
|
||||||
5
testdata/initial/file2.xml
vendored
Normal file
5
testdata/initial/file2.xml
vendored
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
|
||||||
|
<root>
|
||||||
|
<one>one</one>
|
||||||
|
<two/>
|
||||||
|
</root>
|
||||||
Reference in New Issue
Block a user