Fix the munger for code blocks - ticks at start of line

pull/6/head
Tim Hockin 2015-07-17 20:51:38 -07:00
parent 715f2c488f
commit 8172551763
2 changed files with 8 additions and 11 deletions

View File

@ -16,9 +16,7 @@ limitations under the License.
package main
import (
"bytes"
)
import "bytes"
// Blocks of ``` need to have blank lines on both sides or they don't look
// right in HTML.

View File

@ -23,13 +23,6 @@ import (
"strings"
)
var (
// Finds all preformatted block start/stops.
preformatRE = regexp.MustCompile("^[\\s]*```.*")
notPreformatRE = regexp.MustCompile("^[\\s]*```.*```.*")
preformatEndRE = regexp.MustCompile(".*```.*")
)
// Splits a document up into a slice of lines.
func splitLines(document []byte) []string {
lines := strings.Split(string(document), "\n")
@ -141,6 +134,12 @@ type fileBlock struct {
type fileBlocks []fileBlock
var (
// Finds all preformatted block start/stops.
preformatRE = regexp.MustCompile("^\\s*```")
notPreformatRE = regexp.MustCompile("^\\s*```.*```")
)
func splitByPreformatted(input []byte) fileBlocks {
f := fileBlocks{}
@ -161,7 +160,7 @@ func splitByPreformatted(input []byte) fileBlocks {
cur = append(cur, line...)
} else {
cur = append(cur, line...)
if preformatEndRE.Match(line) {
if preformatRE.Match(line) {
if len(cur) > 0 {
f = append(f, fileBlock{true, cur})
}