Compare commits
11 Commits
| Author | SHA1 | Date |
|---|---|---|
|
|
2b5ee11af0 | |
|
|
39598ad4db | |
|
|
b4696f63bb | |
|
|
a17a27d74d | |
|
|
5b55424b7f | |
|
|
00720e8842 | |
|
|
c9574be651 | |
|
|
5b565b4803 | |
|
|
dcec5f3b1c | |
|
|
3eb0963b97 | |
|
|
dd027f777b |
|
|
@ -1,5 +0,0 @@
|
||||||
// Quick mode skips all the questions besides project name and always uses the default option.
|
|
||||||
quick-mode = false
|
|
||||||
|
|
||||||
// Debug mode - prints all variables at the end of a run.
|
|
||||||
debug = false
|
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
.DS_Store
|
.DS_Store
|
||||||
*.test
|
*.test
|
||||||
diji
|
diji
|
||||||
|
release
|
||||||
|
|
@ -0,0 +1,47 @@
|
||||||
|
#!/bin/bash
|
||||||
|
echo "diji-build 1.0"
|
||||||
|
version=$(go run . -- --buildversion)
|
||||||
|
echo "Building diji $version"
|
||||||
|
rldir="release"
|
||||||
|
|
||||||
|
if [ -f "$rldir" ] ; then
|
||||||
|
rm -rf "$rldir"
|
||||||
|
echo "Removed files from the previous build"
|
||||||
|
fi
|
||||||
|
mkdir release
|
||||||
|
mkdir release/diji
|
||||||
|
cp -r diji-config release/diji
|
||||||
|
echo "diji-config prepared"
|
||||||
|
GOOS=linux GOARCH=amd64 go build -o release/diji/diji
|
||||||
|
(cd release; zip -r diji-$version-linux-amd64.zip diji; rm -rf diji/diji)
|
||||||
|
echo "linux/amd64 built"
|
||||||
|
GOOS=linux GOARCH=386 go build -o release/diji/diji
|
||||||
|
(cd release; zip -r diji-$version-linux-i386.zip diji; rm -rf diji/diji)
|
||||||
|
echo "linux/386 built"
|
||||||
|
GOOS=linux GOARCH=arm64 go build -o release/diji/diji
|
||||||
|
(cd release; zip -r diji-$version-linux-arm64.zip diji; rm -rf diji/diji)
|
||||||
|
echo "linux/arm64 built"
|
||||||
|
GOOS=linux GOARCH=arm go build -o release/diji/diji
|
||||||
|
(cd release; zip -r diji-$version-linux-arm.zip diji; rm -rf diji/diji)
|
||||||
|
echo "linux/arm built"
|
||||||
|
GOOS=darwin GOARCH=amd64 go build -o release/diji/diji
|
||||||
|
(cd release; zip -r diji-$version-macos-amd64.zip diji; rm -rf diji/diji)
|
||||||
|
echo "darwin/amd64 built"
|
||||||
|
GOOS=darwin GOARCH=arm64 go build -o release/diji/diji
|
||||||
|
(cd release; zip -r diji-$version-macos-arm64.zip diji; rm -rf diji/diji)
|
||||||
|
echo "darwin/arm64 built"
|
||||||
|
GOOS=windows GOARCH=amd64 go build -o release/diji/diji.exe
|
||||||
|
(cd release; zip -r diji-$version-windows-amd64.zip diji; rm -rf diji/diji.exe)
|
||||||
|
echo "windows/amd64 built"
|
||||||
|
GOOS=windows GOARCH=386 go build -o release/diji/diji.exe
|
||||||
|
(cd release; zip -r diji-$version-windows-i386.zip diji; rm -rf diji/diji.exe)
|
||||||
|
echo "windows/386 built"
|
||||||
|
GOOS=windows GOARCH=arm64 go build -o release/diji/diji.exe
|
||||||
|
(cd release; zip -r diji-$version-windows-arm64.zip diji; rm -rf diji/diji.exe)
|
||||||
|
echo "windows/arm64 built"
|
||||||
|
GOOS=windows GOARCH=arm go build -o release/diji/diji.exe
|
||||||
|
(cd release; zip -r diji-$version-windows-arm.zip diji; rm -rf diji/diji.exe)
|
||||||
|
echo "windows/arm built"
|
||||||
|
rm -rf release/diji
|
||||||
|
echo "Cleaned up"
|
||||||
|
echo "Done, the zips are ready in the release directory"
|
||||||
|
|
@ -0,0 +1,8 @@
|
||||||
|
// Quick mode skips all the questions besides project name and always uses the default option.
|
||||||
|
quick-mode = false
|
||||||
|
|
||||||
|
// Should a favicon be added by default
|
||||||
|
favicon = true
|
||||||
|
|
||||||
|
// Create a commit after initializing the repo
|
||||||
|
commit = true
|
||||||
|
Before Width: | Height: | Size: 177 KiB After Width: | Height: | Size: 177 KiB |
|
|
@ -0,0 +1 @@
|
||||||
|
.DS_Store
|
||||||
169
diji.go
169
diji.go
|
|
@ -43,23 +43,18 @@ func copy(src, dst string) (int64, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
var ver string = "1.0"
|
var ver string = "1.3"
|
||||||
var version int = 1
|
// var version int = 4
|
||||||
|
|
||||||
argsar := os.Args[1:]
|
argsar := os.Args[1:]
|
||||||
var debugelement string = "-d"
|
|
||||||
var quickelement string = "-q"
|
var quickelement string = "-q"
|
||||||
var debugargument bool = false
|
var buildelement string = "--buildversion"
|
||||||
|
var addfavelement string = "-f"
|
||||||
|
var commitelement string = "-c"
|
||||||
var quickargument bool = false
|
var quickargument bool = false
|
||||||
|
var buildargument bool = false
|
||||||
for i := 0; i < len(argsar); i++ {
|
var addfavargument bool = false
|
||||||
// checking if the array contains the given value
|
var commitargument bool = false
|
||||||
if argsar[i] == debugelement {
|
|
||||||
// changing the boolean variable
|
|
||||||
debugargument = true
|
|
||||||
break
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
for i := 0; i < len(argsar); i++ {
|
for i := 0; i < len(argsar); i++ {
|
||||||
// checking if the array contains the given value
|
// checking if the array contains the given value
|
||||||
|
|
@ -70,6 +65,38 @@ func main() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for i := 0; i < len(argsar); i++ {
|
||||||
|
// checking if the array contains the given value
|
||||||
|
if argsar[i] == buildelement {
|
||||||
|
// changing the boolean variable
|
||||||
|
buildargument = true
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for i := 0; i < len(argsar); i++ {
|
||||||
|
// checking if the array contains the given value
|
||||||
|
if argsar[i] == addfavelement {
|
||||||
|
// changing the boolean variable
|
||||||
|
addfavargument = true
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if buildargument == true {
|
||||||
|
fmt.Print(ver)
|
||||||
|
os.Exit(0)
|
||||||
|
}
|
||||||
|
|
||||||
|
for i := 0; i < len(argsar); i++ {
|
||||||
|
// checking if the array contains the given value
|
||||||
|
if argsar[i] == commitelement {
|
||||||
|
// changing the boolean variable
|
||||||
|
commitargument = true
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
var projname string
|
var projname string
|
||||||
|
|
||||||
fmt.Println("地基")
|
fmt.Println("地基")
|
||||||
|
|
@ -84,9 +111,10 @@ func main() {
|
||||||
var creategitignore bool = true
|
var creategitignore bool = true
|
||||||
|
|
||||||
var configlocation string
|
var configlocation string
|
||||||
|
var configfile string
|
||||||
var exPath string
|
var exPath string
|
||||||
if _, err := os.Stat(".diji-config/config.txt"); err == nil {
|
if _, err := os.Stat("diji-config"); err == nil {
|
||||||
configlocation = ".diji-config/config.txt"
|
configlocation = "diji-config"
|
||||||
|
|
||||||
} else if errors.Is(err, os.ErrNotExist) {
|
} else if errors.Is(err, os.ErrNotExist) {
|
||||||
ex, err := os.Executable()
|
ex, err := os.Executable()
|
||||||
|
|
@ -94,24 +122,28 @@ func main() {
|
||||||
panic(err)
|
panic(err)
|
||||||
}
|
}
|
||||||
exPath = filepath.Dir(ex)
|
exPath = filepath.Dir(ex)
|
||||||
configlocation = exPath + "/.diji-config/config.txt"
|
configlocation = exPath + "/diji-config"
|
||||||
|
|
||||||
}
|
}
|
||||||
configbytes, err := os.ReadFile(configlocation)
|
configfile = configlocation + "/config.txt"
|
||||||
|
configbytes, err := os.ReadFile(configfile)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Print(err)
|
fmt.Print(err)
|
||||||
}
|
}
|
||||||
configtext := string(configbytes)
|
configtext := string(configbytes)
|
||||||
var quickmode bool = strings.Contains(configtext, "quick-mode = true")
|
|
||||||
var debug bool = strings.Contains(configtext, "debug = true")
|
|
||||||
|
|
||||||
if debugargument == true {
|
var gitemplatelocation string
|
||||||
if debug == true {
|
|
||||||
debug = false
|
gitemplatelocation = configlocation + "/gitignore.txt"
|
||||||
} else if debug == false {
|
gibytes, err := os.ReadFile(gitemplatelocation)
|
||||||
debug = true
|
if err != nil {
|
||||||
}
|
fmt.Print(err)
|
||||||
}
|
}
|
||||||
|
gitemplatetext := string(gibytes)
|
||||||
|
|
||||||
|
var quickmode bool = strings.Contains(configtext, "quick-mode = true")
|
||||||
|
var addfav bool = strings.Contains(configtext, "favicon = true")
|
||||||
|
var commitinit bool = strings.Contains(configtext, "commit = true")
|
||||||
|
|
||||||
if quickargument == true {
|
if quickargument == true {
|
||||||
if quickmode == true {
|
if quickmode == true {
|
||||||
|
|
@ -121,6 +153,22 @@ func main() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if addfavargument == true {
|
||||||
|
if addfav == true {
|
||||||
|
addfav = false
|
||||||
|
} else if addfav == false {
|
||||||
|
addfav = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if commitargument == true {
|
||||||
|
if commitinit == true {
|
||||||
|
commitinit = false
|
||||||
|
} else if commitinit == false {
|
||||||
|
commitinit = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
var cssstr string
|
var cssstr string
|
||||||
var jsstr string
|
var jsstr string
|
||||||
var samplestr string
|
var samplestr string
|
||||||
|
|
@ -179,13 +227,17 @@ func main() {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if addfav == true {
|
||||||
var assetspath string = projname + "/assets"
|
var assetspath string = projname + "/assets"
|
||||||
if err := os.Mkdir(assetspath, os.ModePerm); err != nil {
|
if err := os.Mkdir(assetspath, os.ModePerm); err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
}
|
}
|
||||||
var favpath string = assetspath + "/favicon.png"
|
var favpath string = assetspath + "/favicon.png"
|
||||||
copy(".diji-config/defaultfav.png", favpath)
|
copy(configlocation+"/defaultfav.png", favpath)
|
||||||
fmt.Println(favpath + " created.")
|
fmt.Println(favpath + " created.")
|
||||||
|
}
|
||||||
|
|
||||||
var indexcontent1 string = `<!DOCTYPE html>
|
var indexcontent1 string = `<!DOCTYPE html>
|
||||||
<html lang="` + langstr + `">
|
<html lang="` + langstr + `">
|
||||||
<head>
|
<head>
|
||||||
|
|
@ -193,7 +245,6 @@ func main() {
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||||
<title>` + projname + `</title>
|
<title>` + projname + `</title>
|
||||||
<link rel="icon" type="image" href="./assets/favicon.png">
|
|
||||||
`
|
`
|
||||||
var csstag string = `<link rel="stylesheet" type="text/css" href="style.css">
|
var csstag string = `<link rel="stylesheet" type="text/css" href="style.css">
|
||||||
`
|
`
|
||||||
|
|
@ -212,6 +263,11 @@ func main() {
|
||||||
` + samplecontent + `
|
` + samplecontent + `
|
||||||
</body>`
|
</body>`
|
||||||
}
|
}
|
||||||
|
var favtag string = `<link rel="icon" type="image" href="./assets/favicon.png">
|
||||||
|
`
|
||||||
|
if addfav == true {
|
||||||
|
indexcontent1 = indexcontent1 + favtag
|
||||||
|
}
|
||||||
if createcss == true {
|
if createcss == true {
|
||||||
indexcontent1 = indexcontent1 + csstag
|
indexcontent1 = indexcontent1 + csstag
|
||||||
}
|
}
|
||||||
|
|
@ -258,7 +314,7 @@ font-family: sans-serif;
|
||||||
|
|
||||||
if creategitignore == true {
|
if creategitignore == true {
|
||||||
giname = projname + "/.gitignore"
|
giname = projname + "/.gitignore"
|
||||||
gicontent = ".DS_Store " + gifiles
|
gicontent = gitemplatetext + gifiles
|
||||||
gignore, err := os.Create(giname)
|
gignore, err := os.Create(giname)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
|
|
@ -275,6 +331,9 @@ font-family: sans-serif;
|
||||||
if err := cmd.Run(); err != nil {
|
if err := cmd.Run(); err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if commitinit == true {
|
||||||
|
|
||||||
cmd1 := exec.Command("git", "add", ".")
|
cmd1 := exec.Command("git", "add", ".")
|
||||||
cmd1.Dir = "./" + projname
|
cmd1.Dir = "./" + projname
|
||||||
if err := cmd1.Run(); err != nil {
|
if err := cmd1.Run(); err != nil {
|
||||||
|
|
@ -286,60 +345,8 @@ font-family: sans-serif;
|
||||||
if err := cmd2.Run(); err != nil {
|
if err := cmd2.Run(); err != nil {
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
}
|
}
|
||||||
fmt.Println("Git repo initialized.")
|
|
||||||
}
|
}
|
||||||
|
fmt.Println("Git repo initialized.")
|
||||||
if debug == true {
|
|
||||||
fmt.Println(version)
|
|
||||||
fmt.Println("projname(string): " + projname)
|
|
||||||
fmt.Print("createcss(bool): ")
|
|
||||||
fmt.Println(createcss)
|
|
||||||
fmt.Print("createjs(bool): ")
|
|
||||||
fmt.Println(createjs)
|
|
||||||
fmt.Print("configbytes([]byte]): ")
|
|
||||||
fmt.Println(configbytes)
|
|
||||||
fmt.Println("configtext(string): " + configtext)
|
|
||||||
fmt.Print("quickmode(bool): ")
|
|
||||||
fmt.Println(quickmode)
|
|
||||||
fmt.Print("debug(bool): ")
|
|
||||||
fmt.Println(debug)
|
|
||||||
fmt.Println("cssstr(string): " + cssstr)
|
|
||||||
fmt.Println("jsstr(string): " + jsstr)
|
|
||||||
fmt.Println("indname(string): " + indname)
|
|
||||||
fmt.Println("assetspath(string): " + assetspath)
|
|
||||||
fmt.Println("favpath(string): " + favpath)
|
|
||||||
fmt.Println("indexcontent1(string): " + indexcontent1)
|
|
||||||
fmt.Println("csstag(string): " + csstag)
|
|
||||||
fmt.Println("jstag(string): " + jstag)
|
|
||||||
fmt.Println("indexcontent2(string): " + indexcontent2)
|
|
||||||
fmt.Println("indexcontent(string): " + indexcontent)
|
|
||||||
fmt.Println("cssname(string): " + cssname)
|
|
||||||
fmt.Println("csscontent(string): " + csscontent)
|
|
||||||
fmt.Println("jsname(string): " + jsname)
|
|
||||||
fmt.Print("argsar(array): ")
|
|
||||||
fmt.Println(argsar)
|
|
||||||
fmt.Println("debugelement(string): " + debugelement)
|
|
||||||
fmt.Println("quickelement(string): " + quickelement)
|
|
||||||
fmt.Print("debugargument(bool): ")
|
|
||||||
fmt.Println(debugargument)
|
|
||||||
fmt.Print("quickargument(bool): ")
|
|
||||||
fmt.Println(quickargument)
|
|
||||||
fmt.Println("configlocation(string): " + configlocation)
|
|
||||||
fmt.Println("exPath(string): " + exPath)
|
|
||||||
fmt.Println("samplestr(string): " + samplestr)
|
|
||||||
fmt.Println("langstr(string): " + langstr)
|
|
||||||
fmt.Println("gitstr(string): " + gitstr)
|
|
||||||
fmt.Println("gitignorestr(string): " + gitignorestr)
|
|
||||||
fmt.Println("gifiles(string): " + gifiles)
|
|
||||||
fmt.Print("createsample(bool): ")
|
|
||||||
fmt.Println(createsample)
|
|
||||||
fmt.Print("initgit(bool): ")
|
|
||||||
fmt.Println(initgit)
|
|
||||||
fmt.Print("creategitignore(bool): ")
|
|
||||||
fmt.Println(creategitignore)
|
|
||||||
fmt.Println("samplecontent(string)" + samplecontent)
|
|
||||||
fmt.Println("giname(string)" + giname)
|
|
||||||
fmt.Println("gicontent(string)" + gicontent)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fmt.Println("Project created in ./" + projname + ".")
|
fmt.Println("Project created in ./" + projname + ".")
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue