diff options
author | Junegunn Choi <junegunn.c@gmail.com> | 2015-07-22 14:19:45 +0900 |
---|---|---|
committer | Junegunn Choi <junegunn.c@gmail.com> | 2015-07-22 14:19:45 +0900 |
commit | 5e3cb3a4eaa557b03d0d18a36f983cc6acec6ad1 (patch) | |
tree | 3205662fa6d6616d036996864ebff7b5623ac599 /src/core.go | |
parent | f71ea5f3ea469489fc979ee3c0cd2622d011befd (diff) |
Fix ANSI processor to handle multi-line regions
Diffstat (limited to 'src/core.go')
-rw-r--r-- | src/core.go | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/core.go b/src/core.go index e38908a8..7a0f1199 100644 --- a/src/core.go +++ b/src/core.go @@ -69,14 +69,17 @@ func Run(opts *Options) { } if opts.Ansi { if opts.Theme != nil { + var state *ansiState ansiProcessor = func(data *string) (*string, []ansiOffset) { - return extractColor(data) + trimmed, offsets, newState := extractColor(data, state) + state = newState + return trimmed, offsets } } else { // When color is disabled but ansi option is given, // we simply strip out ANSI codes from the input ansiProcessor = func(data *string) (*string, []ansiOffset) { - trimmed, _ := extractColor(data) + trimmed, _, _ := extractColor(data, nil) return trimmed, nil } } |