aboutsummaryrefslogtreecommitdiff
path: root/widgets/msglist.go
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2019-06-07 16:22:04 -0400
committerDrew DeVault <sir@cmpwn.com>2019-06-07 16:22:04 -0400
commitda62f63aad914521d97a565453f3e2f262161666 (patch)
tree47b64cde7dcb8cff246ef574a2a68872ec95c535 /widgets/msglist.go
parentfca7321639f77bbf825dc897156d7a21993a2c69 (diff)
Truncate long subject lines
Diffstat (limited to 'widgets/msglist.go')
-rw-r--r--widgets/msglist.go6
1 files changed, 5 insertions, 1 deletions
diff --git a/widgets/msglist.go b/widgets/msglist.go
index f1cbb31..89aa52f 100644
--- a/widgets/msglist.go
+++ b/widgets/msglist.go
@@ -1,9 +1,11 @@
package widgets
import (
+ "fmt"
"log"
"github.com/gdamore/tcell"
+ "github.com/mattn/go-runewidth"
"git.sr.ht/~sircmpwn/aerc/config"
"git.sr.ht/~sircmpwn/aerc/lib"
@@ -84,7 +86,9 @@ func (ml *MessageList) Draw(ctx *ui.Context) {
if err != nil {
ctx.Printf(0, row, style, "%v", err)
} else {
- ctx.Printf(0, row, style, fmtStr, args...)
+ line := fmt.Sprintf(fmtStr, args...)
+ line = runewidth.Truncate(line, ctx.Width(), "…")
+ ctx.Printf(0, row, style, "%s", line)
}
row += 1