File tree Expand file tree Collapse file tree 3 files changed +18
-14
lines changed Expand file tree Collapse file tree 3 files changed +18
-14
lines changed Original file line number Diff line number Diff line change @@ -38,17 +38,25 @@ mod control_requests {
3838/// ```
3939pub fn to_roff ( styled_text : & str ) -> Roff {
4040 let mut doc = Roff :: new ( ) ;
41+ let mut previous_fg_color = None ;
42+ let mut previous_bg_color = None ;
4143 for styled in styled_str:: styled_stream ( styled_text) {
42- add_color_to_roff (
43- & mut doc,
44- control_requests:: FOREGROUND ,
45- & styled. style . get_fg_color ( ) ,
46- ) ;
47- add_color_to_roff (
48- & mut doc,
49- control_requests:: BACKGROUND ,
50- & styled. style . get_bg_color ( ) ,
51- ) ;
44+ if previous_fg_color != styled. style . get_fg_color ( ) {
45+ add_color_to_roff (
46+ & mut doc,
47+ control_requests:: FOREGROUND ,
48+ & styled. style . get_fg_color ( ) ,
49+ ) ;
50+ previous_fg_color = styled. style . get_fg_color ( ) ;
51+ }
52+ if previous_bg_color != styled. style . get_bg_color ( ) {
53+ add_color_to_roff (
54+ & mut doc,
55+ control_requests:: BACKGROUND ,
56+ & styled. style . get_bg_color ( ) ,
57+ ) ;
58+ previous_bg_color = styled. style . get_bg_color ( ) ;
59+ }
5260 set_effects_and_text ( & styled, & mut doc) ;
5361 }
5462 doc
Original file line number Diff line number Diff line change 1- .gcolor default
2- .fcolor default
31\fB test \fR
Original file line number Diff line number Diff line change 1- .gcolor default
2- .fcolor default
31\fI test \fR
You can’t perform that action at this time.
0 commit comments