@@ -187,7 +187,7 @@ impl<'a> Help<'a> {
187
187
arg. is_set ( ArgSettings :: NextLineHelp )
188
188
} ) {
189
189
if arg. longest_filter ( ) {
190
- self . longest = cmp:: max ( self . longest , arg. to_string ( ) . len ( ) ) ;
190
+ self . longest = cmp:: max ( self . longest , str_width ( arg. to_string ( ) . as_str ( ) ) ) ;
191
191
}
192
192
arg_v. push ( arg)
193
193
}
@@ -220,7 +220,7 @@ impl<'a> Help<'a> {
220
220
} ) {
221
221
if arg. longest_filter ( ) {
222
222
debugln ! ( "Help::write_args: Current Longest...{}" , self . longest) ;
223
- self . longest = cmp:: max ( self . longest , arg. to_string ( ) . len ( ) ) ;
223
+ ; self . longest = cmp:: max ( self . longest , str_width ( arg. to_string ( ) . as_str ( ) ) ) ;
224
224
debugln ! ( "Help::write_args: New Longest...{}" , self . longest) ;
225
225
}
226
226
let btm = ord_m. entry ( arg. disp_ord ( ) ) . or_insert ( BTreeMap :: new ( ) ) ;
@@ -352,7 +352,7 @@ impl<'a> Help<'a> {
352
352
debug ! ( "Help::val: next_line..." ) ;
353
353
if !( nlh || self . force_next_line ) {
354
354
sdebugln ! ( "No" ) ;
355
- let self_len = arg. to_string ( ) . len ( ) ;
355
+ let self_len = str_width ( arg. to_string ( ) . as_str ( ) ) ;
356
356
// subtract ourself
357
357
let mut spcs = self . longest - self_len;
358
358
// Since we're writing spaces from the tab point we first need to know if we
@@ -371,7 +371,7 @@ impl<'a> Help<'a> {
371
371
}
372
372
} else if !( nlh || self . force_next_line ) {
373
373
sdebugln ! ( "No, and not next_line" ) ;
374
- write_nspaces ! ( self . writer, self . longest + 4 - ( arg. to_string( ) . len ( ) ) ) ;
374
+ write_nspaces ! ( self . writer, self . longest + 4 - ( str_width ( arg. to_string( ) . as_str ( ) ) ) ) ;
375
375
} else {
376
376
sdebugln ! ( "No" ) ;
377
377
}
@@ -582,7 +582,8 @@ impl<'a> Help<'a> {
582
582
let btm = ord_m
583
583
. entry ( sc. p . meta . disp_ord )
584
584
. or_insert ( BTreeMap :: new ( ) ) ;
585
- self . longest = cmp:: max ( self . longest , sc. p . meta . name . len ( ) ) ;
585
+ self . longest = cmp:: max ( self . longest , str_width ( sc. p . meta . name . as_str ( ) ) ) ;
586
+ //self.longest = cmp::max(self.longest, sc.p.meta.name.len());
586
587
btm. insert ( sc. p . meta . name . clone ( ) , sc. clone ( ) ) ;
587
588
}
588
589
0 commit comments