dotnet-installer/src/dotnet/Parser.cs
2017-03-21 11:41:09 -07:00

58 lines
No EOL
3 KiB
C#

// Copyright (c) .NET Foundation and contributors. All rights reserved.
// Licensed under the MIT license. See LICENSE file in the project root for full license information.
using Microsoft.DotNet.Cli.CommandLine;
using static System.Environment;
using static Microsoft.DotNet.Cli.CommandLine.LocalizableStrings;
using LocalizableStrings = Microsoft.DotNet.Tools.Run.LocalizableStrings;
namespace Microsoft.DotNet.Cli
{
public static class Parser
{
static Parser()
{
ConfigureCommandLineLocalizedStrings();
}
private static void ConfigureCommandLineLocalizedStrings()
{
DefaultHelpViewText.AdditionalArgumentsSection =
$"{UsageCommandsAdditionalArgsHeader}:{NewLine} {LocalizableStrings.RunCommandAdditionalArgsHelpText}";
DefaultHelpViewText.ArgumentsSection.Title = UsageArgumentsHeader;
DefaultHelpViewText.CommandsSection.Title = UsageCommandsHeader;
DefaultHelpViewText.OptionsSection.Title = UsageOptionsHeader;
DefaultHelpViewText.Synopsis.AdditionalArguments = UsageCommandAdditionalArgs;
DefaultHelpViewText.Synopsis.Command = UsageCommandToken;
DefaultHelpViewText.Synopsis.Options = UsageOptionsToken;
DefaultHelpViewText.Synopsis.Title = UsageHeader;
}
public static CommandLine.Parser Instance { get; } = new CommandLine.Parser(
options: Create.Command("dotnet",
".NET Command Line Tools",
Accept.NoArguments(),
NewCommandParser.New(),
RestoreCommandParser.Restore(),
BuildCommandParser.Build(),
PublishCommandParser.Publish(),
RunCommandParser.Run(),
TestCommandParser.Test(),
PackCommandParser.Pack(),
MigrateCommandParser.Migrate(),
CleanCommandParser.Clean(),
SlnCommandParser.Sln(),
AddCommandParser.Add(),
RemoveCommandParser.Remove(),
ListCommandParser.List(),
NuGetCommandParser.NuGet(),
CacheCommandParser.Cache(),
Create.Command("msbuild", ""),
Create.Command("vstest", ""),
CompleteCommandParser.Complete(),
CommonOptions.HelpOption(),
Create.Option("--info", ""),
Create.Option("-d", ""),
Create.Option("--debug", "")));
}
}