{{define "title"}}{{t "Design"}} · {{.Blog.Title}}{{end}} {{define "content"}} {{$t := .Data.theme}} {{$sub := .Blog.Subdomain}}

{{t "Design"}}

{{t "Everything about how your blog looks and what goes where, saved together with the one button at the bottom. Changes are live as soon as you save; refresh"}} {{t "your blog"}} ↗ {{t "to see them."}}

{{t "Colours & fonts"}}

{{t "Colour schemes"}}

{{t "A quick start: a scheme fills in every colour below. Images, fonts and layout are kept."}}

{{range .Data.presets}} {{end}}

{{t "Page background"}}

{{template "imagepick" (dict "name" "bg_image" "current" $t.BgImage "sub" $sub "images" .Data.images "names" .Data.imageNames "label" (t "Background image"))}}

{{t "Text & links"}}

{{t "Fonts"}}

{{t "Content"}}

{{t "The box your posts and pages are shown in. It spans whatever the side columns leave."}}

{{t "Posts"}}

{{t "A summary is the post up to a line with , or its first paragraphs. A post's featured image is picked on the post form and shown as a thumbnail on listings."}}

{{t "Around the posts"}}

{{t "Your own HTML before and after the posts — an intro box, a newsletter form, a badge…"}}

{{template "arealist" (dict "area" "above" "root" .)}} {{template "arealist" (dict "area" "below" "root" .)}}

{{t "Side columns"}}

{{t "Header"}}
{{t "Left"}} {{$t.LeftWidth}}%
{{t "Main content"}} {{$t.MainWidth}}%
{{t "Right"}} {{$t.RightWidth}}%
{{t "Footer"}}

{{t "Between 15% and 40% each; the main content takes the rest. A column only appears when it has at least one module; without columns the posts take the whole width. On phones the columns stack: main content first, then the left and right columns, then the footer."}}

{{t "Left column"}}

{{template "arealist" (dict "area" "left" "root" . "hint" (t "A narrow column beside your posts. Good for the menu, an archive or recent posts."))}}

{{t "Right column"}}

{{template "arealist" (dict "area" "right" "root" . "hint" (t "A narrow column on the other side of your posts. Same choices as the left one."))}}
{{t "Discard changes"}} {{t "View blog"}} ↗
{{/* Row templates the script clones: one per area and kind, and the two menu entries. */}} {{range .Data.templates}} {{end}}
{{t "Reset to defaults"}}

{{t "Puts every colour, font and layout option back to how a new blog starts and forgets the chosen images (they stay in your library)."}}

{{/* The library panel behind the image pickers (partials/imagelib.html). */}} {{template "imagelib" (dict "sub" $sub "count" .Data.imageCount)}} {{end}} {{/* One area's modules: the list, its empty note and the "add" select. */}} {{define "arealist"}}{{$r := .root}}{{$area := .area}}{{$rows := index $r.Data.rows $area}}{{$single := index $r.Data.single $area}}
{{if $single}}

{{t (index $r.Data.areaNames $area)}}

{{end}} {{with .hint}}

{{.}}

{{end}}

{{if $single}}{{t "Nothing extra."}}{{else if eq $area "header"}}{{t "Nothing here yet."}}{{else}}{{t "Nothing here yet — this area is not shown until you add a module."}}{{end}}

{{end}} {{/* One module row. .i is the field index (or __I__ in a template), .m the module. */}} {{define "modrow"}}{{$i := .i}}{{$m := .m}}{{$r := .root}}
  • {{t (index $r.Data.names $m.Kind)}} {{if and (eq $m.Kind "logo") (not $r.Data.theme.Logo)}}{{t "no logo chosen"}} {{t "pick one"}}{{end}} {{if modsettings $m}}
    {{t "Settings"}} {{modsummary $m}} {{if or (ne $m.Kind "html") (and (ne $m.Area "above") (ne $m.Area "below"))}}{{if ne $m.Kind "text"}} {{end}}{{end}} {{if eq $m.Kind "recent"}}

    {{t "The newest published posts from every page of your blog, newest first."}}

    {{else if eq $m.Kind "archive"}}

    {{t "Every published post grouped by year and month, newest first. Years and months fold open and shut; the latest year starts open."}}

    {{else if eq $m.Kind "sitemap"}}

    {{t "Links to every page of your blog."}}

    {{else if eq $m.Kind "tags"}}

    {{t "Your tags with the number of posts in each, most used first. Only published posts count."}}

    {{else if eq $m.Kind "tagcloud"}}

    {{t "Every tag in alphabetical order, bigger the more posts use it."}}

    {{else if eq $m.Kind "search"}}

    {{t "A box that searches the published posts of every page by title and text; the results open on your blog’s search page. Case does not matter, and several words find posts that contain them in that order, with anything in between."}}

    {{else if eq $m.Kind "html"}}

    {{t "Put into your page exactly as written — embeds, badges and scripts all work. Anything broken here (an unclosed tag, say) can break the page around it, so check your blog after saving. 20 KB at most."}}

    {{else if eq $m.Kind "text"}}

    {{t "Plain text; each line becomes its own paragraph."}}

    {{end}}
    {{end}}
  • {{end}} {{/* One menu entry: a page (fixed) or a link (text and address editable). */}} {{define "menurow"}}{{$i := .i}}{{$it := .item}} {{end}}