@@ -46,10 +46,8 @@ bool preprocCompare(string command) =>
4646 arguments . Skip ( 1 ) . FirstOrDefault ( ) ?? string . Empty , nameComparer ) )
4747 : ( autoVersion && preprocCompare ( "version" ) )
4848 ? MakeNotParsed ( types , new VersionRequestedError ( ) )
49-
5049 : MatchVerb ( tokenizer , verbs , defaultVerb , arguments , nameComparer , ignoreValueCase , parsingCulture , autoHelp , autoVersion , nonFatalErrors ) ;
51- } ;
52-
50+ }
5351
5452 return arguments . Any ( )
5553 ? choose ( )
@@ -96,22 +94,28 @@ private static ParserResult<object> MatchVerb(
9694 bool autoVersion ,
9795 IEnumerable < ErrorType > nonFatalErrors )
9896 {
97+ string firstArg = arguments . First ( ) ;
9998
100- return verbs . Any ( a => nameComparer . Equals ( a . Item1 . Name , arguments . First ( ) ) )
101- ? InstanceBuilder . Build (
102- Maybe . Just < Func < object > > (
103- ( ) =>
104- verbs . Single ( v => nameComparer . Equals ( v . Item1 . Name , arguments . First ( ) ) ) . Item2 . AutoDefault ( ) ) ,
105- tokenizer ,
106- arguments . Skip ( 1 ) ,
107- nameComparer ,
108- ignoreValueCase ,
109- parsingCulture ,
110- autoHelp ,
111- autoVersion ,
112- nonFatalErrors )
113- : MatchDefaultVerb ( tokenizer , verbs , defaultVerb , arguments , nameComparer , ignoreValueCase , parsingCulture , autoHelp , autoVersion , nonFatalErrors ) ;
99+ var verbUsed = verbs . FirstOrDefault ( vt =>
100+ nameComparer . Equals ( vt . Item1 . Name , firstArg )
101+ || vt . Item1 . Aliases . Any ( alias => nameComparer . Equals ( alias , firstArg ) )
102+ ) ;
114103
104+ if ( verbUsed == default )
105+ {
106+ return MatchDefaultVerb ( tokenizer , verbs , defaultVerb , arguments , nameComparer , ignoreValueCase , parsingCulture , autoHelp , autoVersion , nonFatalErrors ) ;
107+ }
108+ return InstanceBuilder . Build (
109+ Maybe . Just < Func < object > > (
110+ ( ) => verbUsed . Item2 . AutoDefault ( ) ) ,
111+ tokenizer ,
112+ arguments . Skip ( 1 ) ,
113+ nameComparer ,
114+ ignoreValueCase ,
115+ parsingCulture ,
116+ autoHelp ,
117+ autoVersion ,
118+ nonFatalErrors ) ;
115119 }
116120
117121 private static HelpVerbRequestedError MakeHelpVerbRequestedError (
0 commit comments