@@ -152,11 +152,11 @@ pub fn build_app(interactive_output: bool) -> Command<'static> {
152
152
. overrides_with ( "diff-context" )
153
153
. takes_value ( true )
154
154
. value_name ( "N" )
155
- . validator (
156
- |n| {
155
+ . value_parser (
156
+ |n : & str | {
157
157
n. parse :: < usize > ( )
158
158
. map_err ( |_| "must be a number" )
159
- . map ( |_| ( ) ) // Convert to Result<() , &str>
159
+ . map ( |_| n . to_owned ( ) ) // Convert to Result<String , &str>
160
160
. map_err ( |e| e. to_string ( ) )
161
161
} , // Convert to Result<(), String>
162
162
)
@@ -173,11 +173,11 @@ pub fn build_app(interactive_output: bool) -> Command<'static> {
173
173
. overrides_with ( "tabs" )
174
174
. takes_value ( true )
175
175
. value_name ( "T" )
176
- . validator (
177
- |t| {
176
+ . value_parser (
177
+ |t : & str | {
178
178
t. parse :: < u32 > ( )
179
179
. map_err ( |_t| "must be a number" )
180
- . map ( |_t| ( ) ) // Convert to Result<() , &str>
180
+ . map ( |_t| t . to_owned ( ) ) // Convert to Result<String , &str>
181
181
. map_err ( |e| e. to_string ( ) )
182
182
} , // Convert to Result<(), String>
183
183
)
@@ -208,15 +208,15 @@ pub fn build_app(interactive_output: bool) -> Command<'static> {
208
208
. value_name ( "width" )
209
209
. hide_short_help ( true )
210
210
. allow_hyphen_values ( true )
211
- . validator (
212
- |t| {
211
+ . value_parser (
212
+ |t : & str | {
213
213
let is_offset = t. starts_with ( '+' ) || t. starts_with ( '-' ) ;
214
214
t. parse :: < i32 > ( )
215
215
. map_err ( |_e| "must be an offset or number" )
216
216
. and_then ( |v| if v == 0 && !is_offset {
217
217
Err ( "terminal width cannot be zero" )
218
218
} else {
219
- Ok ( ( ) )
219
+ Ok ( t . to_owned ( ) )
220
220
} )
221
221
. map_err ( |e| e. to_string ( ) )
222
222
} )
@@ -400,7 +400,7 @@ pub fn build_app(interactive_output: bool) -> Command<'static> {
400
400
. overrides_with ( "plain" )
401
401
. overrides_with ( "number" )
402
402
// Cannot use claps built in validation because we have to turn off clap's delimiters
403
- . validator ( |val| {
403
+ . value_parser ( |val : & str | {
404
404
let mut invalid_vals = val. split ( ',' ) . filter ( |style| {
405
405
!& [
406
406
"auto" ,
@@ -422,7 +422,7 @@ pub fn build_app(interactive_output: bool) -> Command<'static> {
422
422
if let Some ( invalid) = invalid_vals. next ( ) {
423
423
Err ( format ! ( "Unknown style, '{}'" , invalid) )
424
424
} else {
425
- Ok ( ( ) )
425
+ Ok ( val . to_owned ( ) )
426
426
}
427
427
} )
428
428
. help (
0 commit comments