aboutsummaryrefslogtreecommitdiff
path: root/parse.go
diff options
context:
space:
mode:
Diffstat (limited to 'parse.go')
-rw-r--r--parse.go18
1 files changed, 12 insertions, 6 deletions
diff --git a/parse.go b/parse.go
index dd4ba3b..a6f2f3b 100644
--- a/parse.go
+++ b/parse.go
@@ -14,6 +14,14 @@ var (
imglink = regexp.MustCompile(`\.(jpe?g|png|gif)$`)
)
+func lines(in string) []string {
+ li := strings.Split(in, "\r\n")
+ for i, l := range li {
+ li[i] = l[1:]
+ }
+ return li
+}
+
func (p Page) HTML() string {
buf := new(bytes.Buffer)
for _, v := range strings.Split(string(p.Body), "\r\n\r\n") {
@@ -35,12 +43,10 @@ func (p Page) HTML() string {
switch v[0] {
case ' ':
doc.ExecuteTemplate(buf, "pre", v)
- case '-':
- lines := strings.Split(v, "\r\n")
- for i, l := range lines {
- lines[i] = l[1:]
- }
- doc.ExecuteTemplate(buf, "list", lines)
+ case '-', '*':
+ doc.ExecuteTemplate(buf, "list", lines(v))
+ case '#':
+ doc.ExecuteTemplate(buf, "olist", lines(v))
default:
doc.ExecuteTemplate(buf, "par", v)
}