diff --git a/style_parser.go b/style_parser.go index 9ad98d4..08104a1 100644 --- a/style_parser.go +++ b/style_parser.go @@ -167,6 +167,12 @@ func findStylePositions(s string) []int { } func containsStyle(s string) bool { + if strings.HasPrefix(s, string(tokenBeginStyledText)) && + strings.HasSuffix(s, string(tokenEndStyle)) && + strings.Contains(s, string(tokenEndStyledText)) && + strings.Contains(s, string(tokenBeginStyle)) { + return true + } return false } diff --git a/style_parser_test.go b/style_parser_test.go index d9acb60..150073a 100644 --- a/style_parser_test.go +++ b/style_parser_test.go @@ -1,14 +1,15 @@ package termui import ( - "fmt" "strings" "testing" ) func TestBreakBlocksIntoStrings(t *testing.T) { items := breakBlocksIntoStrings("test [blue](fg:blue,mod:bold) and [red](fg:red) and maybe even [foo](bg:red)!") - fmt.Println(strings.Join(items, "")) + if len(items) != 7 { + t.Fatal("wrong length", len(items)) + } } func TestFindStylePositions(t *testing.T) {