aboutsummaryrefslogtreecommitdiff
path: root/main.go
diff options
context:
space:
mode:
Diffstat (limited to 'main.go')
-rw-r--r--main.go18
1 files changed, 10 insertions, 8 deletions
diff --git a/main.go b/main.go
index fe3c34f..314ecc8 100644
--- a/main.go
+++ b/main.go
@@ -5,19 +5,18 @@ import (
"bufio"
"compress/gzip"
"errors"
- "fmt"
"io"
"net/http"
"os"
- "git.sr.ht/~gabrielgio/apkdoc/parser"
flag "github.com/spf13/pflag"
)
func main() {
url := flag.StringP("url", "u", "", "Url to the APKINDEX.tar.gz")
output := flag.StringP("output", "o", "index.md", "Output path")
- repositoryFormat := flag.StringP("repository-format", "f", "https://git.sr.ht/~gabrielgio/apkbuilds/tree/%s/item/apks/%s", "Template to build repository link")
+ templateType := flag.StringP("template-type", "p", "text", "Template system to be used, options: html, text")
+ templateFile := flag.StringP("template-file", "t", "text", "Template file to be used")
flag.Parse()
tarStream, err := fechIndex(*url)
@@ -47,13 +46,13 @@ func main() {
s := bufio.NewScanner(tr)
- entries := make([]*parser.Entry, 0)
+ entries := make([]*Entry, 0)
lines := make([]string, 0)
for s.Scan() {
l := s.Text()
if l == "" {
- entry := parser.Parse(lines)
+ entry := Parse(lines)
entries = append(entries, entry)
lines = make([]string, 0)
} else {
@@ -66,13 +65,16 @@ func main() {
panic("Error openning output file: " + err.Error())
}
- for _, e := range entries {
- fmt.Fprintln(outputFile, e.FomartLink(*repositoryFormat))
+ tmpl, err := GetTemplate(*templateType, *templateFile)
+ if err != nil {
+ panic("Error loading template file: " + err.Error())
}
+
+ tmpl.Execute(outputFile, entries)
}
func getOutputFile(output string) (*os.File, error) {
- if output == "" {
+ if output != "" {
outputFile, err := os.Create(output)
if err != nil {
return nil, err