formatting
This commit is contained in:
parent
ace14e534c
commit
3b31267823
14
lib.go
14
lib.go
@ -64,18 +64,18 @@ type Entry struct {
|
||||
wrapWidth int
|
||||
indent int
|
||||
indentFirst int
|
||||
man struct{
|
||||
section int
|
||||
date time.Time
|
||||
version string
|
||||
man struct {
|
||||
section int
|
||||
date time.Time
|
||||
version string
|
||||
category string
|
||||
}
|
||||
}
|
||||
|
||||
type TitleInfo struct {
|
||||
section int
|
||||
date time.Time
|
||||
version string
|
||||
section int
|
||||
date time.Time
|
||||
version string
|
||||
category string
|
||||
}
|
||||
|
||||
|
||||
40
runoff.go
40
runoff.go
@ -1,23 +1,23 @@
|
||||
package textfmt
|
||||
|
||||
import (
|
||||
"io"
|
||||
"errors"
|
||||
"time"
|
||||
"fmt"
|
||||
"bytes"
|
||||
"errors"
|
||||
"fmt"
|
||||
"io"
|
||||
"strings"
|
||||
"time"
|
||||
)
|
||||
|
||||
func escapeRoff(s string, additional ...string) string {
|
||||
const invalidAdditional = "invalid additional escape definition"
|
||||
|
||||
var (
|
||||
e []rune
|
||||
e []rune
|
||||
lineStarted bool
|
||||
)
|
||||
|
||||
if len(additional) % 2 != 0 {
|
||||
if len(additional)%2 != 0 {
|
||||
panic(errors.New(invalidAdditional))
|
||||
}
|
||||
|
||||
@ -28,7 +28,7 @@ func escapeRoff(s string, additional ...string) string {
|
||||
panic(errors.New(invalidAdditional))
|
||||
}
|
||||
|
||||
am[r[0]] = []rune(additional[i + 1])
|
||||
am[r[0]] = []rune(additional[i+1])
|
||||
}
|
||||
|
||||
for _, r := range []rune(s) {
|
||||
@ -161,9 +161,9 @@ func renderRoffTitle(w writer, e Entry) {
|
||||
if e.titleLevel != 0 || e.man.section == 0 {
|
||||
e.text.bold = true
|
||||
p := Entry{
|
||||
typ: paragraph,
|
||||
text: e.text,
|
||||
indent: e.indent,
|
||||
typ: paragraph,
|
||||
text: e.text,
|
||||
indent: e.indent,
|
||||
indentFirst: e.indentFirst,
|
||||
}
|
||||
|
||||
@ -188,7 +188,7 @@ func renderRoffTitle(w writer, e Entry) {
|
||||
}
|
||||
|
||||
func renderRoffParagraph(w writer, e Entry) {
|
||||
w.write(".in ", e.indent, "\n.ti ", e.indent + e.indentFirst, "\n")
|
||||
w.write(".in ", e.indent, "\n.ti ", e.indent+e.indentFirst, "\n")
|
||||
renderRoffText(w, e.text)
|
||||
}
|
||||
|
||||
@ -198,7 +198,7 @@ func renderRoffList(w writer, e Entry) {
|
||||
w.write("\n.br\n")
|
||||
}
|
||||
|
||||
w.write(".in ", e.indent + 2, "\n.ti ", e.indent + e.indentFirst, "\n")
|
||||
w.write(".in ", e.indent+2, "\n.ti ", e.indent+e.indentFirst, "\n")
|
||||
w.write("\\(bu ")
|
||||
renderRoffText(w, item.text)
|
||||
}
|
||||
@ -211,8 +211,8 @@ func renderRoffNumberedList(w writer, e Entry) {
|
||||
w.write("\n.br\n")
|
||||
}
|
||||
|
||||
w.write(".in ", e.indent + maxDigits + 2, "\n.ti ", e.indent + e.indentFirst, "\n")
|
||||
w.write(padRight(fmt.Sprintf("%d.", i + 1), maxDigits + 2))
|
||||
w.write(".in ", e.indent+maxDigits+2, "\n.ti ", e.indent+e.indentFirst, "\n")
|
||||
w.write(padRight(fmt.Sprintf("%d.", i+1), maxDigits+2))
|
||||
renderRoffText(w, item.text)
|
||||
}
|
||||
}
|
||||
@ -225,10 +225,10 @@ func renderRoffDefinitions(w writer, e Entry) {
|
||||
w.write("\n.br\n")
|
||||
}
|
||||
|
||||
w.write(".in ", e.indent + maxNameLength + 4, "\n.ti ", e.indent + e.indentFirst, "\n")
|
||||
w.write(".in ", e.indent+maxNameLength+4, "\n.ti ", e.indent+e.indentFirst, "\n")
|
||||
w.write("\\(bu ")
|
||||
renderRoffText(w, definition.name)
|
||||
w.write(":", timesn("\\~", maxNameLength - len([]rune(names[i])) + 1))
|
||||
w.write(":", timesn("\\~", maxNameLength-len([]rune(names[i]))+1))
|
||||
renderRoffText(w, definition.value)
|
||||
}
|
||||
}
|
||||
@ -242,10 +242,10 @@ func renderRoffNumberedDefinitions(w writer, e Entry) {
|
||||
w.write("\n.br\n")
|
||||
}
|
||||
|
||||
w.write(".in ", e.indent + maxDigits + maxNameLength + 4, "\n.ti ", e.indent + e.indentFirst, "\n")
|
||||
w.write(padRight(fmt.Sprintf("%d.", i + 1), maxDigits + 2))
|
||||
w.write(".in ", e.indent+maxDigits+maxNameLength+4, "\n.ti ", e.indent+e.indentFirst, "\n")
|
||||
w.write(padRight(fmt.Sprintf("%d.", i+1), maxDigits+2))
|
||||
renderRoffText(w, definition.name)
|
||||
w.write(":", timesn("\\~", maxNameLength - len([]rune(names[i])) + 1))
|
||||
w.write(":", timesn("\\~", maxNameLength-len([]rune(names[i]))+1))
|
||||
renderRoffText(w, definition.value)
|
||||
}
|
||||
}
|
||||
@ -451,7 +451,7 @@ func renderRoffSyntax(w writer, e Entry) {
|
||||
s.topLevel = true
|
||||
w.write(".nf\n")
|
||||
defer w.write("\n.fi")
|
||||
w.write(timesn("\u00a0", e.indent + e.indentFirst))
|
||||
w.write(timesn("\u00a0", e.indent+e.indentFirst))
|
||||
renderRoffSyntaxItem(w, s)
|
||||
}
|
||||
|
||||
|
||||
@ -1199,7 +1199,7 @@ This is a paragraph.
|
||||
\(bu blue:\~\~looks like sky
|
||||
`
|
||||
|
||||
if "\n" + b.String() != expect {
|
||||
if "\n"+b.String() != expect {
|
||||
t.Fatal("\n" + b.String())
|
||||
}
|
||||
})
|
||||
@ -1236,7 +1236,7 @@ This is a paragraph.
|
||||
\(bu blue:\~\~looks like sky
|
||||
`
|
||||
|
||||
if "\n" + b.String() != expect {
|
||||
if "\n"+b.String() != expect {
|
||||
t.Fatal("\n" + b.String())
|
||||
}
|
||||
})
|
||||
@ -1343,7 +1343,7 @@ This is a paragraph.
|
||||
3.\~blue:\~\~looks like sky
|
||||
`
|
||||
|
||||
if "\n" + b.String() != expect {
|
||||
if "\n"+b.String() != expect {
|
||||
t.Fatal("\n" + b.String())
|
||||
}
|
||||
})
|
||||
@ -1380,7 +1380,7 @@ This is a paragraph.
|
||||
3.\~blue:\~\~looks like sky
|
||||
`
|
||||
|
||||
if "\n" + b.String() != expect {
|
||||
if "\n"+b.String() != expect {
|
||||
t.Fatal("\n" + b.String())
|
||||
}
|
||||
})
|
||||
@ -2021,7 +2021,7 @@ and silver birch\~\~\~\~ | their canopies creating\~ | and shadow on the
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if b.String() != ".nf\n" + code+"\n.fi\n" {
|
||||
if b.String() != ".nf\n"+code+"\n.fi\n" {
|
||||
t.Fatal(b.String())
|
||||
}
|
||||
})
|
||||
@ -2064,7 +2064,7 @@ and silver birch\~\~\~\~ | their canopies creating\~ | and shadow on the
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if b.String() != ".nf\n" + code+"\n.fi\n" {
|
||||
if b.String() != ".nf\n"+code+"\n.fi\n" {
|
||||
t.Fatal(b.String())
|
||||
}
|
||||
})
|
||||
|
||||
16
teletype.go
16
teletype.go
@ -81,9 +81,9 @@ func renderTTYText(w writer, text Txt) {
|
||||
|
||||
func itemToParagraph(list Entry, itemText Txt, prefix string) Entry {
|
||||
p := Entry{
|
||||
typ: paragraph,
|
||||
wrapWidth: list.wrapWidth,
|
||||
indent: list.indent + len([]rune(prefix)) + 1,
|
||||
typ: paragraph,
|
||||
wrapWidth: list.wrapWidth,
|
||||
indent: list.indent + len([]rune(prefix)) + 1,
|
||||
indentFirst: list.indentFirst - len([]rune(prefix)) - 1,
|
||||
}
|
||||
|
||||
@ -128,7 +128,7 @@ func renderTTYNumberedList(w writer, e Entry) {
|
||||
w.write("\n")
|
||||
}
|
||||
|
||||
p := itemToParagraph(e, item.text, padRight(fmt.Sprintf("%d.", i + 1), maxDigits + 1))
|
||||
p := itemToParagraph(e, item.text, padRight(fmt.Sprintf("%d.", i+1), maxDigits+1))
|
||||
renderTTYParagraph(w, p)
|
||||
}
|
||||
}
|
||||
@ -149,7 +149,7 @@ func renderTTYDefinitions(w writer, e Entry) {
|
||||
p := itemToParagraph(
|
||||
e,
|
||||
definition.value,
|
||||
padRight(fmt.Sprintf("- %s:", names[i]), maxNameLength + 3),
|
||||
padRight(fmt.Sprintf("- %s:", names[i]), maxNameLength+3),
|
||||
)
|
||||
|
||||
renderTTYParagraph(w, p)
|
||||
@ -176,10 +176,10 @@ func renderTTYNumberedDefinitions(w writer, e Entry) {
|
||||
padRight(
|
||||
fmt.Sprintf(
|
||||
"%s %s:",
|
||||
padRight(fmt.Sprintf("%d.", i + 1), maxDigits + 1),
|
||||
padRight(fmt.Sprintf("%d.", i+1), maxDigits+1),
|
||||
names[i],
|
||||
),
|
||||
maxNameLength + maxDigits + 3,
|
||||
maxNameLength+maxDigits+3,
|
||||
),
|
||||
)
|
||||
|
||||
@ -400,7 +400,7 @@ func renderTTYSyntaxItem(w writer, s SyntaxItem) {
|
||||
func renderTTYSyntax(w writer, e Entry) {
|
||||
s := e.syntax
|
||||
s.topLevel = true
|
||||
w.write(timesn(" ", e.indent + e.indentFirst))
|
||||
w.write(timesn(" ", e.indent+e.indentFirst))
|
||||
renderTTYSyntaxItem(w, s)
|
||||
}
|
||||
|
||||
|
||||
@ -930,7 +930,7 @@ third item
|
||||
like sky
|
||||
`
|
||||
|
||||
if "\n" + b.String() != expect {
|
||||
if "\n"+b.String() != expect {
|
||||
t.Fatal("\n" + b.String())
|
||||
}
|
||||
})
|
||||
@ -965,7 +965,7 @@ third item
|
||||
sky
|
||||
`
|
||||
|
||||
if "\n" + b.String() != expect {
|
||||
if "\n"+b.String() != expect {
|
||||
t.Fatal("\n" + b.String())
|
||||
}
|
||||
})
|
||||
@ -1083,7 +1083,7 @@ third item
|
||||
like sky
|
||||
`
|
||||
|
||||
if "\n" + b.String() != expect {
|
||||
if "\n"+b.String() != expect {
|
||||
t.Fatal("\n" + b.String())
|
||||
}
|
||||
})
|
||||
@ -1118,7 +1118,7 @@ third item
|
||||
sky
|
||||
`
|
||||
|
||||
if "\n" + b.String() != expect {
|
||||
if "\n"+b.String() != expect {
|
||||
t.Fatal("\n" + b.String())
|
||||
}
|
||||
})
|
||||
|
||||
4
text.go
4
text.go
@ -1,10 +1,10 @@
|
||||
package textfmt
|
||||
|
||||
import (
|
||||
"bytes"
|
||||
"fmt"
|
||||
"strings"
|
||||
"unicode"
|
||||
"fmt"
|
||||
"bytes"
|
||||
)
|
||||
|
||||
func timesn(s string, n int) string {
|
||||
|
||||
10
write.go
10
write.go
@ -1,8 +1,8 @@
|
||||
package textfmt
|
||||
|
||||
import (
|
||||
"io"
|
||||
"fmt"
|
||||
"io"
|
||||
"strings"
|
||||
)
|
||||
|
||||
@ -13,15 +13,15 @@ type writer interface {
|
||||
}
|
||||
|
||||
type ttyWriter struct {
|
||||
w io.Writer
|
||||
w io.Writer
|
||||
internal bool
|
||||
err error
|
||||
err error
|
||||
}
|
||||
|
||||
type roffWriter struct {
|
||||
w io.Writer
|
||||
w io.Writer
|
||||
internal bool
|
||||
err error
|
||||
err error
|
||||
}
|
||||
|
||||
func (w *ttyWriter) write(a ...any) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user