add S20 stuff
This commit is contained in:
parent
348ce72532
commit
9487dda008
34
gendates.go
34
gendates.go
|
@ -2,11 +2,14 @@ package main
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"flag"
|
"flag"
|
||||||
|
"fmt"
|
||||||
|
"log"
|
||||||
"os"
|
"os"
|
||||||
"strings"
|
"strings"
|
||||||
"text/template"
|
"text/template"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
|
"github.com/gobuffalo/packd"
|
||||||
"github.com/gobuffalo/packr/v2"
|
"github.com/gobuffalo/packr/v2"
|
||||||
|
|
||||||
"github.com/BurntSushi/toml"
|
"github.com/BurntSushi/toml"
|
||||||
|
@ -15,10 +18,10 @@ import (
|
||||||
const layout = "2006-01-02"
|
const layout = "2006-01-02"
|
||||||
|
|
||||||
var tplMap = map[string]string{
|
var tplMap = map[string]string{
|
||||||
"assignments": "tpl/assignments.adoc.tpl",
|
"assignments": "assignments.adoc.tpl",
|
||||||
"schedule": "tpl/schedule.adoc.tpl",
|
"schedule": "schedule.adoc.tpl",
|
||||||
"syllabus": "tpl/syllabus.adoc.tpl",
|
"syllabus": "syllabus.adoc.tpl",
|
||||||
"course": "tpl/course.task.tpl",
|
"course": "course.task.tpl",
|
||||||
}
|
}
|
||||||
|
|
||||||
type DayMap map[int]time.Time
|
type DayMap map[int]time.Time
|
||||||
|
@ -96,7 +99,7 @@ type Config struct {
|
||||||
|
|
||||||
Days []Day
|
Days []Day
|
||||||
Assignments []Assignment
|
Assignments []Assignment
|
||||||
Resources []Link
|
Resources string
|
||||||
Evaluation []Eval
|
Evaluation []Eval
|
||||||
EvalText string
|
EvalText string
|
||||||
|
|
||||||
|
@ -114,6 +117,13 @@ func main() {
|
||||||
|
|
||||||
box = packr.New("templates", "./tpl")
|
box = packr.New("templates", "./tpl")
|
||||||
|
|
||||||
|
log.Println("semestergen 0.02")
|
||||||
|
|
||||||
|
box.Walk(func(s string, file packd.File) error {
|
||||||
|
log.Printf("box file: %s", s)
|
||||||
|
return nil
|
||||||
|
})
|
||||||
|
|
||||||
for i := 0; i < flag.NArg(); i++ {
|
for i := 0; i < flag.NArg(); i++ {
|
||||||
c := mkConfig(flag.Arg(i))
|
c := mkConfig(flag.Arg(i))
|
||||||
if err := writeSyllabus(c); err != nil {
|
if err := writeSyllabus(c); err != nil {
|
||||||
|
@ -141,7 +151,7 @@ func writeTaskPaper(c Config) error {
|
||||||
"getDate": c.GetDate,
|
"getDate": c.GetDate,
|
||||||
"dueTime": func() string { return c.DueTime },
|
"dueTime": func() string { return c.DueTime },
|
||||||
}
|
}
|
||||||
tplName := "course"
|
tplName := tplMap["course"]
|
||||||
src, _ := box.FindString(tplName)
|
src, _ := box.FindString(tplName)
|
||||||
tpl, err := template.New(tplName).Funcs(funcs).Parse(src)
|
tpl, err := template.New(tplName).Funcs(funcs).Parse(src)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -160,7 +170,7 @@ func writeAssignments(c Config) error {
|
||||||
funcs := template.FuncMap{
|
funcs := template.FuncMap{
|
||||||
"getDate": c.GetDate,
|
"getDate": c.GetDate,
|
||||||
}
|
}
|
||||||
tplName := "assignments"
|
tplName := tplMap["assignments"]
|
||||||
src, _ := box.FindString(tplName)
|
src, _ := box.FindString(tplName)
|
||||||
tpl, err := template.New(tplName).Funcs(funcs).Parse(src)
|
tpl, err := template.New(tplName).Funcs(funcs).Parse(src)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -176,10 +186,14 @@ func writeSchedule(c Config) error {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
tplName := "schedule"
|
tplName := tplMap["schedule"]
|
||||||
src, _ := box.FindString(tplName)
|
src, err := box.FindString(tplName)
|
||||||
|
if err != nil {
|
||||||
|
return fmt.Errorf("error finding template: %w", err)
|
||||||
|
}
|
||||||
tpl, err := template.New(tplName).Parse(src)
|
tpl, err := template.New(tplName).Parse(src)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
return fmt.Errorf("error parsing template: %w", err)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
err = tpl.Execute(f, c)
|
err = tpl.Execute(f, c)
|
||||||
|
@ -192,7 +206,7 @@ func writeSyllabus(c Config) error {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
tplName := "syllabus"
|
tplName := tplMap["syllabus"]
|
||||||
src, _ := box.FindString(tplName)
|
src, _ := box.FindString(tplName)
|
||||||
tpl, err := template.New(tplName).Parse(src)
|
tpl, err := template.New(tplName).Parse(src)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
1
go.mod
1
go.mod
|
@ -4,5 +4,6 @@ go 1.13
|
||||||
|
|
||||||
require (
|
require (
|
||||||
github.com/BurntSushi/toml v0.3.1
|
github.com/BurntSushi/toml v0.3.1
|
||||||
|
github.com/gobuffalo/packd v0.3.0
|
||||||
github.com/gobuffalo/packr/v2 v2.7.1
|
github.com/gobuffalo/packr/v2 v2.7.1
|
||||||
)
|
)
|
||||||
|
|
|
@ -1,8 +0,0 @@
|
||||||
// +build !skippackr
|
|
||||||
// Code generated by github.com/gobuffalo/packr/v2. DO NOT EDIT.
|
|
||||||
|
|
||||||
// You can use the "packr clean" command to clean up this,
|
|
||||||
// and any other packr generated files.
|
|
||||||
package main
|
|
||||||
|
|
||||||
import _ "code.chrissexton.org/cws/semestergen/packrd"
|
|
File diff suppressed because one or more lines are too long
|
@ -45,13 +45,7 @@ This schedule is tentative.
|
||||||
|
|
||||||
== Some F# resources
|
== Some F# resources
|
||||||
|
|
||||||
{{range .Resources -}}
|
{{.Resources}}
|
||||||
{{- if .URL}}
|
|
||||||
{{.Stars}} {{.URL}}[{{.Title}}]
|
|
||||||
{{- else}}
|
|
||||||
{{.Stars}} {{.Title}}
|
|
||||||
{{- end}}
|
|
||||||
{{- end}}
|
|
||||||
|
|
||||||
== Grading Scale
|
== Grading Scale
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue