Implement list tool command.

This commit implements the `list tool` command.

The command is responsible for displaying a list of install global tools.

Fixes #8548.
This commit is contained in:
Peter Huene 2018-02-21 18:34:25 -08:00
parent 9ef495327a
commit 4490fd5aa8
No known key found for this signature in database
GPG key ID: E1D265D820213D6A
56 changed files with 1043 additions and 200 deletions

View file

@ -610,11 +610,11 @@ setx PATH "%PATH%;{0}"
<data name="FailedToUninstallToolPackage" xml:space="preserve">
<value>Failed to uninstall tool package '{0}': {1}</value>
</data>
<data name="ToolPackageMissingEntryPointFile" xml:space="preserve">
<value>Package '{0}' is missing entry point file {1}.</value>
<data name="MissingToolEntryPointFile" xml:space="preserve">
<value>Entry point file '{0}' for command '{1}' was not found in the package.</value>
</data>
<data name="ToolPackageMissingSettingsFile" xml:space="preserve">
<value>Package '{0}' is missing tool settings file DotnetToolSettings.xml.</value>
<data name="MissingToolSettingsFile" xml:space="preserve">
<value>Settings file 'DotnetToolSettings.xml' was not found in the package.</value>
</data>
<data name="ToolPackageConflictPackageId" xml:space="preserve">
<value>Tool '{0}' (version '{1}') is already installed.</value>

View file

@ -11,6 +11,6 @@ namespace Microsoft.DotNet.ToolPackage
{
DirectoryPath Root { get; }
IEnumerable<IToolPackage> GetInstalledPackages(string packageId);
IEnumerable<IToolPackage> GetInstalledPackages(string packageId = null);
}
}

View file

@ -109,10 +109,8 @@ namespace Microsoft.DotNet.ToolPackage
var dotnetToolSettings = FindItemInTargetLibrary(library, ToolSettingsFileName);
if (dotnetToolSettings == null)
{
throw new ToolPackageException(
string.Format(
CommonLocalizableStrings.ToolPackageMissingSettingsFile,
PackageId));
throw new ToolConfigurationException(
CommonLocalizableStrings.MissingToolSettingsFile);
}
var toolConfigurationPath =
@ -127,11 +125,11 @@ namespace Microsoft.DotNet.ToolPackage
var entryPointFromLockFile = FindItemInTargetLibrary(library, configuration.ToolAssemblyEntryPoint);
if (entryPointFromLockFile == null)
{
throw new ToolPackageException(
throw new ToolConfigurationException(
string.Format(
CommonLocalizableStrings.ToolPackageMissingEntryPointFile,
PackageId,
configuration.ToolAssemblyEntryPoint));
CommonLocalizableStrings.MissingToolEntryPointFile,
configuration.ToolAssemblyEntryPoint,
configuration.CommandName));
}
// Currently only "dotnet" commands are supported
@ -148,10 +146,9 @@ namespace Microsoft.DotNet.ToolPackage
}
catch (Exception ex) when (ex is UnauthorizedAccessException || ex is IOException)
{
throw new ToolPackageException(
throw new ToolConfigurationException(
string.Format(
CommonLocalizableStrings.FailedToRetrieveToolConfiguration,
PackageId,
ex.Message),
ex);
}

View file

@ -15,13 +15,37 @@ namespace Microsoft.DotNet.ToolPackage
public DirectoryPath Root { get; private set; }
public IEnumerable<IToolPackage> GetInstalledPackages(string packageId)
public IEnumerable<IToolPackage> GetInstalledPackages(string packageId = null)
{
if (packageId == null)
if (packageId != null)
{
throw new ArgumentNullException(nameof(packageId));
return EnumerateVersions(packageId);
}
return EnumerateAllPackages().SelectMany(p => p);
}
private IEnumerable<IEnumerable<IToolPackage>> EnumerateAllPackages()
{
if (!Directory.Exists(Root.Value))
{
yield break;
}
foreach (var subdirectory in Directory.EnumerateDirectories(Root.Value))
{
var packageId = Path.GetFileName(subdirectory);
if (packageId == ToolPackageInstaller.StagingDirectory)
{
continue;
}
yield return EnumerateVersions(packageId);
}
}
private IEnumerable<IToolPackage> EnumerateVersions(string packageId)
{
var packageRootDirectory = Root.WithSubDirectories(packageId);
if (!Directory.Exists(packageRootDirectory.Value))
{

View file

@ -193,7 +193,7 @@
<value>Remove reference from the project.</value>
</data>
<data name="ListDefinition" xml:space="preserve">
<value>List reference in the project.</value>
<value>List project references or installed tools.</value>
</data>
<data name="AdvancedCommands" xml:space="preserve">
<value>Advanced Commands</value>

View file

@ -153,8 +153,8 @@
<note />
</trans-unit>
<trans-unit id="ListDefinition">
<source>List reference in the project.</source>
<target state="translated">Vypíše odkaz v projektu.</target>
<source>List project references or installed tools.</source>
<target state="needs-review-translation">Vypíše odkaz v projektu.</target>
<note />
</trans-unit>
<trans-unit id="CommandDoesNotExist">

View file

@ -153,8 +153,8 @@
<note />
</trans-unit>
<trans-unit id="ListDefinition">
<source>List reference in the project.</source>
<target state="translated">Verweis im Projekt auflisten.</target>
<source>List project references or installed tools.</source>
<target state="needs-review-translation">Verweis im Projekt auflisten.</target>
<note />
</trans-unit>
<trans-unit id="CommandDoesNotExist">

View file

@ -153,8 +153,8 @@
<note />
</trans-unit>
<trans-unit id="ListDefinition">
<source>List reference in the project.</source>
<target state="translated">Muestra referencias en el proyecto.</target>
<source>List project references or installed tools.</source>
<target state="needs-review-translation">Muestra referencias en el proyecto.</target>
<note />
</trans-unit>
<trans-unit id="CommandDoesNotExist">

View file

@ -153,8 +153,8 @@
<note />
</trans-unit>
<trans-unit id="ListDefinition">
<source>List reference in the project.</source>
<target state="translated">Listez une référence dans le projet.</target>
<source>List project references or installed tools.</source>
<target state="needs-review-translation">Listez une référence dans le projet.</target>
<note />
</trans-unit>
<trans-unit id="CommandDoesNotExist">

View file

@ -153,8 +153,8 @@
<note />
</trans-unit>
<trans-unit id="ListDefinition">
<source>List reference in the project.</source>
<target state="translated">Elenca il riferimento nel progetto.</target>
<source>List project references or installed tools.</source>
<target state="needs-review-translation">Elenca il riferimento nel progetto.</target>
<note />
</trans-unit>
<trans-unit id="CommandDoesNotExist">

View file

@ -153,8 +153,8 @@
<note />
</trans-unit>
<trans-unit id="ListDefinition">
<source>List reference in the project.</source>
<target state="translated">プロジェクト内の参照を一覧表示します。</target>
<source>List project references or installed tools.</source>
<target state="needs-review-translation">プロジェクト内の参照を一覧表示します。</target>
<note />
</trans-unit>
<trans-unit id="CommandDoesNotExist">

View file

@ -153,8 +153,8 @@
<note />
</trans-unit>
<trans-unit id="ListDefinition">
<source>List reference in the project.</source>
<target state="translated">프로젝트의 참조를 나열합니다.</target>
<source>List project references or installed tools.</source>
<target state="needs-review-translation">프로젝트의 참조를 나열합니다.</target>
<note />
</trans-unit>
<trans-unit id="CommandDoesNotExist">

View file

@ -153,8 +153,8 @@
<note />
</trans-unit>
<trans-unit id="ListDefinition">
<source>List reference in the project.</source>
<target state="translated">Wyświetl odwołanie w projekcie.</target>
<source>List project references or installed tools.</source>
<target state="needs-review-translation">Wyświetl odwołanie w projekcie.</target>
<note />
</trans-unit>
<trans-unit id="CommandDoesNotExist">

View file

@ -153,8 +153,8 @@
<note />
</trans-unit>
<trans-unit id="ListDefinition">
<source>List reference in the project.</source>
<target state="translated">Listar referência no projeto.</target>
<source>List project references or installed tools.</source>
<target state="needs-review-translation">Listar referência no projeto.</target>
<note />
</trans-unit>
<trans-unit id="CommandDoesNotExist">

View file

@ -153,8 +153,8 @@
<note />
</trans-unit>
<trans-unit id="ListDefinition">
<source>List reference in the project.</source>
<target state="translated">Список ссылок в проекте.</target>
<source>List project references or installed tools.</source>
<target state="needs-review-translation">Список ссылок в проекте.</target>
<note />
</trans-unit>
<trans-unit id="CommandDoesNotExist">

View file

@ -153,8 +153,8 @@
<note />
</trans-unit>
<trans-unit id="ListDefinition">
<source>List reference in the project.</source>
<target state="translated">Projede başvuruyu listeleyin.</target>
<source>List project references or installed tools.</source>
<target state="needs-review-translation">Projede başvuruyu listeleyin.</target>
<note />
</trans-unit>
<trans-unit id="CommandDoesNotExist">

View file

@ -153,8 +153,8 @@
<note />
</trans-unit>
<trans-unit id="ListDefinition">
<source>List reference in the project.</source>
<target state="translated">列出项目中的引用。</target>
<source>List project references or installed tools.</source>
<target state="needs-review-translation">列出项目中的引用。</target>
<note />
</trans-unit>
<trans-unit id="CommandDoesNotExist">

View file

@ -153,8 +153,8 @@
<note />
</trans-unit>
<trans-unit id="ListDefinition">
<source>List reference in the project.</source>
<target state="translated">列出專案中的參考。</target>
<source>List project references or installed tools.</source>
<target state="needs-review-translation">列出專案中的參考。</target>
<note />
</trans-unit>
<trans-unit id="CommandDoesNotExist">

View file

@ -7,6 +7,7 @@ using Microsoft.DotNet.Cli;
using Microsoft.DotNet.Cli.CommandLine;
using Microsoft.DotNet.Cli.Utils;
using Microsoft.DotNet.Tools.List.ProjectToProjectReferences;
using Microsoft.DotNet.Tools.List.Tool;
namespace Microsoft.DotNet.Tools.List
{
@ -22,16 +23,17 @@ namespace Microsoft.DotNet.Tools.List
{
{
"reference",
o => new ListProjectToProjectReferencesCommand(
o,
ParseResult)
o => new ListProjectToProjectReferencesCommand(o, ParseResult)
},
{
"tool",
o => new ListToolCommand(o["tool"], ParseResult)
}
};
public static int Run(string[] args)
{
var command = new ListCommand();
return command.RunCommand(args);
return new ListCommand().RunCommand(args);
}
}
}

View file

@ -3,24 +3,24 @@
using Microsoft.DotNet.Cli.CommandLine;
using Microsoft.DotNet.Tools;
using Microsoft.DotNet.Tools.List.ProjectToProjectReferences;
using Microsoft.DotNet.Tools.List.Tool;
using LocalizableStrings = Microsoft.DotNet.Tools.List.LocalizableStrings;
namespace Microsoft.DotNet.Cli
{
internal static class ListCommandParser
{
public static Command List() =>
Create.Command("list",
LocalizableStrings.NetListCommand,
Accept.ZeroOrOneArgument()
.With(name: CommonLocalizableStrings.CmdProjectFile,
description:
CommonLocalizableStrings.ArgumentsProjectDescription)
.DefaultToCurrentDirectory(),
CommonOptions.HelpOption(),
Create.Command("reference",
Tools.List.ProjectToProjectReferences.LocalizableStrings.AppFullName,
Accept.ZeroOrOneArgument(),
CommonOptions.HelpOption()));
public static Command List() => Create.Command(
"list",
LocalizableStrings.NetListCommand,
Accept.ZeroOrOneArgument()
.With(
name: CommonLocalizableStrings.CmdProjectFile,
description: CommonLocalizableStrings.ArgumentsProjectDescription)
.DefaultToCurrentDirectory(),
CommonOptions.HelpOption(),
ListProjectToProjectReferencesCommandParser.ListProjectToProjectReferences(),
ListToolCommandParser.ListTool());
}
}
}

View file

@ -50,4 +50,4 @@ namespace Microsoft.DotNet.Tools.List.ProjectToProjectReferences
return 0;
}
}
}
}

View file

@ -0,0 +1,20 @@
// 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 LocalizableStrings = Microsoft.DotNet.Tools.List.ProjectToProjectReferences.LocalizableStrings;
namespace Microsoft.DotNet.Cli
{
internal static class ListProjectToProjectReferencesCommandParser
{
public static Command ListProjectToProjectReferences()
{
return Create.Command(
"reference",
LocalizableStrings.AppFullName,
Accept.ZeroOrOneArgument(),
CommonOptions.HelpOption());
}
}
}

View file

@ -127,4 +127,4 @@
<value>There are no {0} references in project {1}.
{0} is the type of the item being requested (project, package, p2p) and {1} is the object operated on (a project file or a solution file). </value>
</data>
</root>
</root>

View file

@ -0,0 +1,88 @@
// 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 System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.DotNet.Cli;
using Microsoft.DotNet.Cli.CommandLine;
using Microsoft.DotNet.Cli.Utils;
using Microsoft.DotNet.Configurer;
using Microsoft.DotNet.ToolPackage;
using Microsoft.Extensions.EnvironmentAbstractions;
namespace Microsoft.DotNet.Tools.List.Tool
{
internal class ListToolCommand : CommandBase
{
private const string CommandDelimiter = ", ";
private readonly AppliedOption _options;
private readonly IToolPackageStore _toolPackageStore;
private readonly IReporter _reporter;
private readonly IReporter _errorReporter;
public ListToolCommand(
AppliedOption options,
ParseResult result,
IToolPackageStore toolPackageStore = null,
IReporter reporter = null)
: base(result)
{
_options = options ?? throw new ArgumentNullException(nameof(options));
_toolPackageStore = toolPackageStore ?? new ToolPackageStore(
new DirectoryPath(new CliFolderPathCalculator().ToolsPackagePath));
_reporter = reporter ?? Reporter.Output;
_errorReporter = reporter ?? Reporter.Error;
}
public override int Execute()
{
if (!_options.ValueOrDefault<bool>("global"))
{
throw new GracefulException(LocalizableStrings.ListToolCommandOnlySupportsGlobal);
}
var table = new PrintableTable<IToolPackage>();
table.AddColumn(
LocalizableStrings.PackageIdColumn,
p => p.PackageId);
table.AddColumn(
LocalizableStrings.VersionColumn,
p => p.PackageVersion);
table.AddColumn(
LocalizableStrings.CommandsColumn,
p => string.Join(CommandDelimiter, p.Commands.Select(c => c.Name)));
table.PrintRows(GetPackages(), l => _reporter.WriteLine(l));
return 0;
}
private IEnumerable<IToolPackage> GetPackages()
{
return _toolPackageStore.GetInstalledPackages()
.Where(PackageHasCommands)
.OrderBy(p => p.PackageId)
.ToArray();
}
private bool PackageHasCommands(IToolPackage p)
{
try
{
// Attempt to read the commands collection
// If it fails, print a warning and treat as no commands
return p.Commands.Count >= 0;
}
catch (Exception ex) when (ex is ToolConfigurationException)
{
_errorReporter.WriteLine(
string.Format(
LocalizableStrings.InvalidPackageWarning,
p.PackageId,
ex.Message).Yellow());
return false;
}
}
}
}

View file

@ -0,0 +1,23 @@
// 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 LocalizableStrings = Microsoft.DotNet.Tools.List.Tool.LocalizableStrings;
namespace Microsoft.DotNet.Cli
{
internal static class ListToolCommandParser
{
public static Command ListTool()
{
return Create.Command(
"tool",
LocalizableStrings.CommandDescription,
Create.Option(
"-g|--global",
LocalizableStrings.GlobalOptionDescription,
Accept.NoArguments()),
CommonOptions.HelpOption());
}
}
}

View file

@ -0,0 +1,141 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="CommandDescription" xml:space="preserve">
<value>Lists installed tools in the current development environment.</value>
</data>
<data name="GlobalOptionDescription" xml:space="preserve">
<value>List user wide tools.</value>
</data>
<data name="ListToolCommandOnlySupportsGlobal" xml:space="preserve">
<value>The --global switch (-g) is currently required because only user wide tools are supported.</value>
</data>
<data name="InvalidPackageWarning" xml:space="preserve">
<value>Warning: tool package '{0}' is invalid: {1}</value>
</data>
<data name="PackageIdColumn" xml:space="preserve">
<value>Package Id</value>
</data>
<data name="VersionColumn" xml:space="preserve">
<value>Version</value>
</data>
<data name="CommandsColumn" xml:space="preserve">
<value>Commands</value>
</data>
</root>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 xliff-core-1.2-transitional.xsd">
<file datatype="xml" source-language="en" target-language="cs" original="../LocalizableStrings.resx">
<body>
<trans-unit id="CommandDescription">
<source>Lists installed tools in the current development environment.</source>
<target state="new">Lists installed tools in the current development environment.</target>
<note />
</trans-unit>
<trans-unit id="GlobalOptionDescription">
<source>List user wide tools.</source>
<target state="new">List user wide tools.</target>
<note />
</trans-unit>
<trans-unit id="ListToolCommandOnlySupportsGlobal">
<source>The --global switch (-g) is currently required because only user wide tools are supported.</source>
<target state="new">The --global switch (-g) is currently required because only user wide tools are supported.</target>
<note />
</trans-unit>
<trans-unit id="VersionColumn">
<source>Version</source>
<target state="new">Version</target>
<note />
</trans-unit>
<trans-unit id="CommandsColumn">
<source>Commands</source>
<target state="new">Commands</target>
<note />
</trans-unit>
<trans-unit id="PackageIdColumn">
<source>Package Id</source>
<target state="new">Package Id</target>
<note />
</trans-unit>
<trans-unit id="InvalidPackageWarning">
<source>Warning: tool package '{0}' is invalid: {1}</source>
<target state="new">Warning: tool package '{0}' is invalid: {1}</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 xliff-core-1.2-transitional.xsd">
<file datatype="xml" source-language="en" target-language="de" original="../LocalizableStrings.resx">
<body>
<trans-unit id="CommandDescription">
<source>Lists installed tools in the current development environment.</source>
<target state="new">Lists installed tools in the current development environment.</target>
<note />
</trans-unit>
<trans-unit id="GlobalOptionDescription">
<source>List user wide tools.</source>
<target state="new">List user wide tools.</target>
<note />
</trans-unit>
<trans-unit id="ListToolCommandOnlySupportsGlobal">
<source>The --global switch (-g) is currently required because only user wide tools are supported.</source>
<target state="new">The --global switch (-g) is currently required because only user wide tools are supported.</target>
<note />
</trans-unit>
<trans-unit id="VersionColumn">
<source>Version</source>
<target state="new">Version</target>
<note />
</trans-unit>
<trans-unit id="CommandsColumn">
<source>Commands</source>
<target state="new">Commands</target>
<note />
</trans-unit>
<trans-unit id="PackageIdColumn">
<source>Package Id</source>
<target state="new">Package Id</target>
<note />
</trans-unit>
<trans-unit id="InvalidPackageWarning">
<source>Warning: tool package '{0}' is invalid: {1}</source>
<target state="new">Warning: tool package '{0}' is invalid: {1}</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 xliff-core-1.2-transitional.xsd">
<file datatype="xml" source-language="en" target-language="es" original="../LocalizableStrings.resx">
<body>
<trans-unit id="CommandDescription">
<source>Lists installed tools in the current development environment.</source>
<target state="new">Lists installed tools in the current development environment.</target>
<note />
</trans-unit>
<trans-unit id="GlobalOptionDescription">
<source>List user wide tools.</source>
<target state="new">List user wide tools.</target>
<note />
</trans-unit>
<trans-unit id="ListToolCommandOnlySupportsGlobal">
<source>The --global switch (-g) is currently required because only user wide tools are supported.</source>
<target state="new">The --global switch (-g) is currently required because only user wide tools are supported.</target>
<note />
</trans-unit>
<trans-unit id="VersionColumn">
<source>Version</source>
<target state="new">Version</target>
<note />
</trans-unit>
<trans-unit id="CommandsColumn">
<source>Commands</source>
<target state="new">Commands</target>
<note />
</trans-unit>
<trans-unit id="PackageIdColumn">
<source>Package Id</source>
<target state="new">Package Id</target>
<note />
</trans-unit>
<trans-unit id="InvalidPackageWarning">
<source>Warning: tool package '{0}' is invalid: {1}</source>
<target state="new">Warning: tool package '{0}' is invalid: {1}</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 xliff-core-1.2-transitional.xsd">
<file datatype="xml" source-language="en" target-language="fr" original="../LocalizableStrings.resx">
<body>
<trans-unit id="CommandDescription">
<source>Lists installed tools in the current development environment.</source>
<target state="new">Lists installed tools in the current development environment.</target>
<note />
</trans-unit>
<trans-unit id="GlobalOptionDescription">
<source>List user wide tools.</source>
<target state="new">List user wide tools.</target>
<note />
</trans-unit>
<trans-unit id="ListToolCommandOnlySupportsGlobal">
<source>The --global switch (-g) is currently required because only user wide tools are supported.</source>
<target state="new">The --global switch (-g) is currently required because only user wide tools are supported.</target>
<note />
</trans-unit>
<trans-unit id="VersionColumn">
<source>Version</source>
<target state="new">Version</target>
<note />
</trans-unit>
<trans-unit id="CommandsColumn">
<source>Commands</source>
<target state="new">Commands</target>
<note />
</trans-unit>
<trans-unit id="PackageIdColumn">
<source>Package Id</source>
<target state="new">Package Id</target>
<note />
</trans-unit>
<trans-unit id="InvalidPackageWarning">
<source>Warning: tool package '{0}' is invalid: {1}</source>
<target state="new">Warning: tool package '{0}' is invalid: {1}</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 xliff-core-1.2-transitional.xsd">
<file datatype="xml" source-language="en" target-language="it" original="../LocalizableStrings.resx">
<body>
<trans-unit id="CommandDescription">
<source>Lists installed tools in the current development environment.</source>
<target state="new">Lists installed tools in the current development environment.</target>
<note />
</trans-unit>
<trans-unit id="GlobalOptionDescription">
<source>List user wide tools.</source>
<target state="new">List user wide tools.</target>
<note />
</trans-unit>
<trans-unit id="ListToolCommandOnlySupportsGlobal">
<source>The --global switch (-g) is currently required because only user wide tools are supported.</source>
<target state="new">The --global switch (-g) is currently required because only user wide tools are supported.</target>
<note />
</trans-unit>
<trans-unit id="VersionColumn">
<source>Version</source>
<target state="new">Version</target>
<note />
</trans-unit>
<trans-unit id="CommandsColumn">
<source>Commands</source>
<target state="new">Commands</target>
<note />
</trans-unit>
<trans-unit id="PackageIdColumn">
<source>Package Id</source>
<target state="new">Package Id</target>
<note />
</trans-unit>
<trans-unit id="InvalidPackageWarning">
<source>Warning: tool package '{0}' is invalid: {1}</source>
<target state="new">Warning: tool package '{0}' is invalid: {1}</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 xliff-core-1.2-transitional.xsd">
<file datatype="xml" source-language="en" target-language="ja" original="../LocalizableStrings.resx">
<body>
<trans-unit id="CommandDescription">
<source>Lists installed tools in the current development environment.</source>
<target state="new">Lists installed tools in the current development environment.</target>
<note />
</trans-unit>
<trans-unit id="GlobalOptionDescription">
<source>List user wide tools.</source>
<target state="new">List user wide tools.</target>
<note />
</trans-unit>
<trans-unit id="ListToolCommandOnlySupportsGlobal">
<source>The --global switch (-g) is currently required because only user wide tools are supported.</source>
<target state="new">The --global switch (-g) is currently required because only user wide tools are supported.</target>
<note />
</trans-unit>
<trans-unit id="VersionColumn">
<source>Version</source>
<target state="new">Version</target>
<note />
</trans-unit>
<trans-unit id="CommandsColumn">
<source>Commands</source>
<target state="new">Commands</target>
<note />
</trans-unit>
<trans-unit id="PackageIdColumn">
<source>Package Id</source>
<target state="new">Package Id</target>
<note />
</trans-unit>
<trans-unit id="InvalidPackageWarning">
<source>Warning: tool package '{0}' is invalid: {1}</source>
<target state="new">Warning: tool package '{0}' is invalid: {1}</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 xliff-core-1.2-transitional.xsd">
<file datatype="xml" source-language="en" target-language="ko" original="../LocalizableStrings.resx">
<body>
<trans-unit id="CommandDescription">
<source>Lists installed tools in the current development environment.</source>
<target state="new">Lists installed tools in the current development environment.</target>
<note />
</trans-unit>
<trans-unit id="GlobalOptionDescription">
<source>List user wide tools.</source>
<target state="new">List user wide tools.</target>
<note />
</trans-unit>
<trans-unit id="ListToolCommandOnlySupportsGlobal">
<source>The --global switch (-g) is currently required because only user wide tools are supported.</source>
<target state="new">The --global switch (-g) is currently required because only user wide tools are supported.</target>
<note />
</trans-unit>
<trans-unit id="VersionColumn">
<source>Version</source>
<target state="new">Version</target>
<note />
</trans-unit>
<trans-unit id="CommandsColumn">
<source>Commands</source>
<target state="new">Commands</target>
<note />
</trans-unit>
<trans-unit id="PackageIdColumn">
<source>Package Id</source>
<target state="new">Package Id</target>
<note />
</trans-unit>
<trans-unit id="InvalidPackageWarning">
<source>Warning: tool package '{0}' is invalid: {1}</source>
<target state="new">Warning: tool package '{0}' is invalid: {1}</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 xliff-core-1.2-transitional.xsd">
<file datatype="xml" source-language="en" target-language="pl" original="../LocalizableStrings.resx">
<body>
<trans-unit id="CommandDescription">
<source>Lists installed tools in the current development environment.</source>
<target state="new">Lists installed tools in the current development environment.</target>
<note />
</trans-unit>
<trans-unit id="GlobalOptionDescription">
<source>List user wide tools.</source>
<target state="new">List user wide tools.</target>
<note />
</trans-unit>
<trans-unit id="ListToolCommandOnlySupportsGlobal">
<source>The --global switch (-g) is currently required because only user wide tools are supported.</source>
<target state="new">The --global switch (-g) is currently required because only user wide tools are supported.</target>
<note />
</trans-unit>
<trans-unit id="VersionColumn">
<source>Version</source>
<target state="new">Version</target>
<note />
</trans-unit>
<trans-unit id="CommandsColumn">
<source>Commands</source>
<target state="new">Commands</target>
<note />
</trans-unit>
<trans-unit id="PackageIdColumn">
<source>Package Id</source>
<target state="new">Package Id</target>
<note />
</trans-unit>
<trans-unit id="InvalidPackageWarning">
<source>Warning: tool package '{0}' is invalid: {1}</source>
<target state="new">Warning: tool package '{0}' is invalid: {1}</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 xliff-core-1.2-transitional.xsd">
<file datatype="xml" source-language="en" target-language="pt-BR" original="../LocalizableStrings.resx">
<body>
<trans-unit id="CommandDescription">
<source>Lists installed tools in the current development environment.</source>
<target state="new">Lists installed tools in the current development environment.</target>
<note />
</trans-unit>
<trans-unit id="GlobalOptionDescription">
<source>List user wide tools.</source>
<target state="new">List user wide tools.</target>
<note />
</trans-unit>
<trans-unit id="ListToolCommandOnlySupportsGlobal">
<source>The --global switch (-g) is currently required because only user wide tools are supported.</source>
<target state="new">The --global switch (-g) is currently required because only user wide tools are supported.</target>
<note />
</trans-unit>
<trans-unit id="VersionColumn">
<source>Version</source>
<target state="new">Version</target>
<note />
</trans-unit>
<trans-unit id="CommandsColumn">
<source>Commands</source>
<target state="new">Commands</target>
<note />
</trans-unit>
<trans-unit id="PackageIdColumn">
<source>Package Id</source>
<target state="new">Package Id</target>
<note />
</trans-unit>
<trans-unit id="InvalidPackageWarning">
<source>Warning: tool package '{0}' is invalid: {1}</source>
<target state="new">Warning: tool package '{0}' is invalid: {1}</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 xliff-core-1.2-transitional.xsd">
<file datatype="xml" source-language="en" target-language="ru" original="../LocalizableStrings.resx">
<body>
<trans-unit id="CommandDescription">
<source>Lists installed tools in the current development environment.</source>
<target state="new">Lists installed tools in the current development environment.</target>
<note />
</trans-unit>
<trans-unit id="GlobalOptionDescription">
<source>List user wide tools.</source>
<target state="new">List user wide tools.</target>
<note />
</trans-unit>
<trans-unit id="ListToolCommandOnlySupportsGlobal">
<source>The --global switch (-g) is currently required because only user wide tools are supported.</source>
<target state="new">The --global switch (-g) is currently required because only user wide tools are supported.</target>
<note />
</trans-unit>
<trans-unit id="VersionColumn">
<source>Version</source>
<target state="new">Version</target>
<note />
</trans-unit>
<trans-unit id="CommandsColumn">
<source>Commands</source>
<target state="new">Commands</target>
<note />
</trans-unit>
<trans-unit id="PackageIdColumn">
<source>Package Id</source>
<target state="new">Package Id</target>
<note />
</trans-unit>
<trans-unit id="InvalidPackageWarning">
<source>Warning: tool package '{0}' is invalid: {1}</source>
<target state="new">Warning: tool package '{0}' is invalid: {1}</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 xliff-core-1.2-transitional.xsd">
<file datatype="xml" source-language="en" target-language="tr" original="../LocalizableStrings.resx">
<body>
<trans-unit id="CommandDescription">
<source>Lists installed tools in the current development environment.</source>
<target state="new">Lists installed tools in the current development environment.</target>
<note />
</trans-unit>
<trans-unit id="GlobalOptionDescription">
<source>List user wide tools.</source>
<target state="new">List user wide tools.</target>
<note />
</trans-unit>
<trans-unit id="ListToolCommandOnlySupportsGlobal">
<source>The --global switch (-g) is currently required because only user wide tools are supported.</source>
<target state="new">The --global switch (-g) is currently required because only user wide tools are supported.</target>
<note />
</trans-unit>
<trans-unit id="VersionColumn">
<source>Version</source>
<target state="new">Version</target>
<note />
</trans-unit>
<trans-unit id="CommandsColumn">
<source>Commands</source>
<target state="new">Commands</target>
<note />
</trans-unit>
<trans-unit id="PackageIdColumn">
<source>Package Id</source>
<target state="new">Package Id</target>
<note />
</trans-unit>
<trans-unit id="InvalidPackageWarning">
<source>Warning: tool package '{0}' is invalid: {1}</source>
<target state="new">Warning: tool package '{0}' is invalid: {1}</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 xliff-core-1.2-transitional.xsd">
<file datatype="xml" source-language="en" target-language="zh-Hans" original="../LocalizableStrings.resx">
<body>
<trans-unit id="CommandDescription">
<source>Lists installed tools in the current development environment.</source>
<target state="new">Lists installed tools in the current development environment.</target>
<note />
</trans-unit>
<trans-unit id="GlobalOptionDescription">
<source>List user wide tools.</source>
<target state="new">List user wide tools.</target>
<note />
</trans-unit>
<trans-unit id="ListToolCommandOnlySupportsGlobal">
<source>The --global switch (-g) is currently required because only user wide tools are supported.</source>
<target state="new">The --global switch (-g) is currently required because only user wide tools are supported.</target>
<note />
</trans-unit>
<trans-unit id="VersionColumn">
<source>Version</source>
<target state="new">Version</target>
<note />
</trans-unit>
<trans-unit id="CommandsColumn">
<source>Commands</source>
<target state="new">Commands</target>
<note />
</trans-unit>
<trans-unit id="PackageIdColumn">
<source>Package Id</source>
<target state="new">Package Id</target>
<note />
</trans-unit>
<trans-unit id="InvalidPackageWarning">
<source>Warning: tool package '{0}' is invalid: {1}</source>
<target state="new">Warning: tool package '{0}' is invalid: {1}</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -0,0 +1,42 @@
<?xml version="1.0" encoding="utf-8"?>
<xliff xmlns="urn:oasis:names:tc:xliff:document:1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.2" xsi:schemaLocation="urn:oasis:names:tc:xliff:document:1.2 xliff-core-1.2-transitional.xsd">
<file datatype="xml" source-language="en" target-language="zh-Hant" original="../LocalizableStrings.resx">
<body>
<trans-unit id="CommandDescription">
<source>Lists installed tools in the current development environment.</source>
<target state="new">Lists installed tools in the current development environment.</target>
<note />
</trans-unit>
<trans-unit id="GlobalOptionDescription">
<source>List user wide tools.</source>
<target state="new">List user wide tools.</target>
<note />
</trans-unit>
<trans-unit id="ListToolCommandOnlySupportsGlobal">
<source>The --global switch (-g) is currently required because only user wide tools are supported.</source>
<target state="new">The --global switch (-g) is currently required because only user wide tools are supported.</target>
<note />
</trans-unit>
<trans-unit id="VersionColumn">
<source>Version</source>
<target state="new">Version</target>
<note />
</trans-unit>
<trans-unit id="CommandsColumn">
<source>Commands</source>
<target state="new">Commands</target>
<note />
</trans-unit>
<trans-unit id="PackageIdColumn">
<source>Package Id</source>
<target state="new">Package Id</target>
<note />
</trans-unit>
<trans-unit id="InvalidPackageWarning">
<source>Warning: tool package '{0}' is invalid: {1}</source>
<target state="new">Warning: tool package '{0}' is invalid: {1}</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -67,9 +67,9 @@ namespace Microsoft.DotNet.Tools.Uninstall.Tool
catch (InvalidOperationException)
{
_errorReporter.WriteLine(
string.Format(
LocalizableStrings.ToolHasMultipleVersionsInstalled,
packageId).Red());
string.Format(
LocalizableStrings.ToolHasMultipleVersionsInstalled,
packageId).Red());
return 1;
}

View file

@ -26,6 +26,7 @@
<EmbeddedResource Update="**\dotnet-install\dotnet-install-tool\*.resx" Namespace="Microsoft.DotNet.Tools.Install.Tool" />
<EmbeddedResource Update="**\dotnet-list\*.resx" Namespace="Microsoft.DotNet.Tools.List" />
<EmbeddedResource Update="**\dotnet-list-reference\*.resx" Namespace="Microsoft.DotNet.Tools.List.ProjectToProjectReferences" />
<EmbeddedResource Update="**\dotnet-list-tool\*.resx" Namespace="Microsoft.DotNet.Tools.List.Tool" />
<EmbeddedResource Update="**\dotnet-migrate\*.resx" Namespace="Microsoft.DotNet.Tools.Migrate" />
<EmbeddedResource Update="**\dotnet-msbuild\*.resx" Namespace="Microsoft.DotNet.Tools.MSBuild" />
<EmbeddedResource Update="**\dotnet-pack\*.resx" Namespace="Microsoft.DotNet.Tools.Pack" />

View file

@ -694,16 +694,6 @@
<target state="translated">Právě jste nainstalovali sadu .NET Core SDK, bude proto nutné před spuštěním nainstalovaného nástroje znovu otevřít okno příkazového řádku.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingEntryPointFile">
<source>Package '{0}' is missing entry point file {1}.</source>
<target state="translated">V balíčku {0} chybí soubor vstupního bodu {1}.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingSettingsFile">
<source>Package '{0}' is missing tool settings file DotnetToolSettings.xml.</source>
<target state="translated">V balíčku {0} chybí soubor nastavení nástroje DotnetToolSettings.xml.</target>
<note />
</trans-unit>
<trans-unit id="ToolSettingsMissingCommandName">
<source>Tool defines a command with a missing name setting.</source>
<target state="translated">Nástroj definuje příkaz s chybějícím nastavením názvu.</target>
@ -853,6 +843,16 @@ setx PATH "%PATH%;{0}"
<target state="new">Column maximum width must be greater than zero.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolEntryPointFile">
<source>Entry point file '{0}' for command '{1}' was not found in the package.</source>
<target state="new">Entry point file '{0}' for command '{1}' was not found in the package.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolSettingsFile">
<source>Settings file 'DotnetToolSettings.xml' was not found in the package.</source>
<target state="new">Settings file 'DotnetToolSettings.xml' was not found in the package.</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -694,16 +694,6 @@
<target state="translated">Da Sie gerade das .NET Core SDK installiert haben, müssen Sie das Eingabeaufforderungsfenster neu öffnen, bevor Sie das installierte Tool ausführen.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingEntryPointFile">
<source>Package '{0}' is missing entry point file {1}.</source>
<target state="translated">Im Paket "{0}" fehlt die Einstiegspunktdatei "{1}".</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingSettingsFile">
<source>Package '{0}' is missing tool settings file DotnetToolSettings.xml.</source>
<target state="translated">Im Paket "{0}" fehlt die Datei mit den Tooleinstellungen "DotnetToolSettings.xml".</target>
<note />
</trans-unit>
<trans-unit id="ToolSettingsMissingCommandName">
<source>Tool defines a command with a missing name setting.</source>
<target state="translated">Das Tool definiert einen Befehl mit fehlender Namenseinstellung.</target>
@ -853,6 +843,16 @@ setx PATH "%PATH%;{0}"
<target state="new">Column maximum width must be greater than zero.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolEntryPointFile">
<source>Entry point file '{0}' for command '{1}' was not found in the package.</source>
<target state="new">Entry point file '{0}' for command '{1}' was not found in the package.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolSettingsFile">
<source>Settings file 'DotnetToolSettings.xml' was not found in the package.</source>
<target state="new">Settings file 'DotnetToolSettings.xml' was not found in the package.</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -694,16 +694,6 @@
<target state="translated">Dado que acaba de instalar el SDK de .Net Core, tendrá que volver a abrir la ventana del símbolo del sistema antes de ejecutar la herramienta instalada.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingEntryPointFile">
<source>Package '{0}' is missing entry point file {1}.</source>
<target state="translated">Al paquete "{0}" le falta el archivo de punto de entrada {1}.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingSettingsFile">
<source>Package '{0}' is missing tool settings file DotnetToolSettings.xml.</source>
<target state="translated">Al paquete "{0}" le falta el archivo de configuración de herramientas DotnetToolSettings.xml.</target>
<note />
</trans-unit>
<trans-unit id="ToolSettingsMissingCommandName">
<source>Tool defines a command with a missing name setting.</source>
<target state="translated">La herramienta define un comando en el que falta un valor de nombre.</target>
@ -853,6 +843,16 @@ setx PATH "%PATH%;{0}"
<target state="new">Column maximum width must be greater than zero.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolEntryPointFile">
<source>Entry point file '{0}' for command '{1}' was not found in the package.</source>
<target state="new">Entry point file '{0}' for command '{1}' was not found in the package.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolSettingsFile">
<source>Settings file 'DotnetToolSettings.xml' was not found in the package.</source>
<target state="new">Settings file 'DotnetToolSettings.xml' was not found in the package.</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -694,16 +694,6 @@
<target state="translated">Dans la mesure où vous venez d'installer le kit SDK .NET Core, vous devez rouvrir la fenêtre d'invite de commandes avant d'exécuter l'outil que vous avez installé.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingEntryPointFile">
<source>Package '{0}' is missing entry point file {1}.</source>
<target state="translated">Le package '{0}' ne contient pas le fichier de point d'entrée {1}.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingSettingsFile">
<source>Package '{0}' is missing tool settings file DotnetToolSettings.xml.</source>
<target state="translated">Le package '{0}' ne contient pas le fichier de paramètres d'outils DotnetToolSettings.xml.</target>
<note />
</trans-unit>
<trans-unit id="ToolSettingsMissingCommandName">
<source>Tool defines a command with a missing name setting.</source>
<target state="translated">L'outil définit une commande avec un paramètre de nom manquant.</target>
@ -853,6 +843,16 @@ setx PATH "%PATH%;{0}"
<target state="new">Column maximum width must be greater than zero.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolEntryPointFile">
<source>Entry point file '{0}' for command '{1}' was not found in the package.</source>
<target state="new">Entry point file '{0}' for command '{1}' was not found in the package.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolSettingsFile">
<source>Settings file 'DotnetToolSettings.xml' was not found in the package.</source>
<target state="new">Settings file 'DotnetToolSettings.xml' was not found in the package.</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -694,16 +694,6 @@
<target state="translated">Dal momento che è stato appena installato .NET Core SDK, è necessario riaprire la finestra del prompt dei comandi prima di eseguire lo strumento installato.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingEntryPointFile">
<source>Package '{0}' is missing entry point file {1}.</source>
<target state="translated">Nel pacchetto '{0}' manca il file del punto di ingresso {1}.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingSettingsFile">
<source>Package '{0}' is missing tool settings file DotnetToolSettings.xml.</source>
<target state="translated">Nel pacchetto '{0}' manca il file di impostazioni dello strumento DotnetToolSettings.xml.</target>
<note />
</trans-unit>
<trans-unit id="ToolSettingsMissingCommandName">
<source>Tool defines a command with a missing name setting.</source>
<target state="translated">Lo strumento definisce un comando con un'impostazione di nome mancante.</target>
@ -853,6 +843,16 @@ setx PATH "%PATH%;{0}"
<target state="new">Column maximum width must be greater than zero.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolEntryPointFile">
<source>Entry point file '{0}' for command '{1}' was not found in the package.</source>
<target state="new">Entry point file '{0}' for command '{1}' was not found in the package.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolSettingsFile">
<source>Settings file 'DotnetToolSettings.xml' was not found in the package.</source>
<target state="new">Settings file 'DotnetToolSettings.xml' was not found in the package.</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -694,16 +694,6 @@
<target state="translated">.NET Core SDK をインストールしたばかりなので、インストールしたツールを実行する前に、コマンド プロンプト ウィンドウを再び開く必要があります。</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingEntryPointFile">
<source>Package '{0}' is missing entry point file {1}.</source>
<target state="translated">パッケージ '{0}' にエントリ ポイント ファイル {1} がありません。</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingSettingsFile">
<source>Package '{0}' is missing tool settings file DotnetToolSettings.xml.</source>
<target state="translated">パッケージ '{0}' にツール設定ファイル DotnetToolSettings.xml がありません。</target>
<note />
</trans-unit>
<trans-unit id="ToolSettingsMissingCommandName">
<source>Tool defines a command with a missing name setting.</source>
<target state="translated">ツールは、名前設定がないコマンドを定義します。</target>
@ -853,6 +843,16 @@ setx PATH "%PATH%;{0}"
<target state="new">Column maximum width must be greater than zero.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolEntryPointFile">
<source>Entry point file '{0}' for command '{1}' was not found in the package.</source>
<target state="new">Entry point file '{0}' for command '{1}' was not found in the package.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolSettingsFile">
<source>Settings file 'DotnetToolSettings.xml' was not found in the package.</source>
<target state="new">Settings file 'DotnetToolSettings.xml' was not found in the package.</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -694,16 +694,6 @@
<target state="translated">.NET Core SDK를 방금 설치했기 때문에 설치한 도구를 실행하기 전에 명령 프롬프트 창을 다시 열어야 합니다.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingEntryPointFile">
<source>Package '{0}' is missing entry point file {1}.</source>
<target state="translated">패키지 '{0}'이(가) 누락된 진입점 파일 {1}입니다.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingSettingsFile">
<source>Package '{0}' is missing tool settings file DotnetToolSettings.xml.</source>
<target state="translated">패키지 '{0}'이(가) 누락된 도구 설정 파일 DotnetToolSettings.xml입니다.</target>
<note />
</trans-unit>
<trans-unit id="ToolSettingsMissingCommandName">
<source>Tool defines a command with a missing name setting.</source>
<target state="translated">도구에서 이름 설정 없이 명령을 정의합니다.</target>
@ -853,6 +843,16 @@ setx PATH "%PATH%;{0}"
<target state="new">Column maximum width must be greater than zero.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolEntryPointFile">
<source>Entry point file '{0}' for command '{1}' was not found in the package.</source>
<target state="new">Entry point file '{0}' for command '{1}' was not found in the package.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolSettingsFile">
<source>Settings file 'DotnetToolSettings.xml' was not found in the package.</source>
<target state="new">Settings file 'DotnetToolSettings.xml' was not found in the package.</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -694,16 +694,6 @@
<target state="translated">Właśnie zainstalowano zestaw .NET Core SDK, dlatego należy ponownie otworzyć okno wiersza polecenia przed uruchomieniem zainstalowanego narzędzia.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingEntryPointFile">
<source>Package '{0}' is missing entry point file {1}.</source>
<target state="translated">Brak pliku punktu wejściowego {1} w pakiecie „{0}”.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingSettingsFile">
<source>Package '{0}' is missing tool settings file DotnetToolSettings.xml.</source>
<target state="translated">Brak pliku ustawień narzędzia DotnetToolSettings.xml w pakiecie „{0}”.</target>
<note />
</trans-unit>
<trans-unit id="ToolSettingsMissingCommandName">
<source>Tool defines a command with a missing name setting.</source>
<target state="translated">Narzędzie definiuje polecenie z brakującym ustawieniem nazwy.</target>
@ -853,6 +843,16 @@ setx PATH "%PATH%;{0}"
<target state="new">Column maximum width must be greater than zero.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolEntryPointFile">
<source>Entry point file '{0}' for command '{1}' was not found in the package.</source>
<target state="new">Entry point file '{0}' for command '{1}' was not found in the package.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolSettingsFile">
<source>Settings file 'DotnetToolSettings.xml' was not found in the package.</source>
<target state="new">Settings file 'DotnetToolSettings.xml' was not found in the package.</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -694,16 +694,6 @@
<target state="translated">Já que você acabou de instalar o SDK do .NET Core, você ainda precisará reabrir a janela do Prompt de Comando antes de executar a ferramenta instalada.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingEntryPointFile">
<source>Package '{0}' is missing entry point file {1}.</source>
<target state="translated">O arquivo de ponto de entrada {1} está ausente do pacote '{0}'.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingSettingsFile">
<source>Package '{0}' is missing tool settings file DotnetToolSettings.xml.</source>
<target state="translated">O arquivo de configuração DotnetToolSettings.xml da ferramenta está ausente do pacote '{0}'.</target>
<note />
</trans-unit>
<trans-unit id="ToolSettingsMissingCommandName">
<source>Tool defines a command with a missing name setting.</source>
<target state="translated">A ferramenta define um comando com uma configuração de nome ausente.</target>
@ -853,6 +843,16 @@ setx PATH "%PATH%;{0}"
<target state="new">Column maximum width must be greater than zero.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolEntryPointFile">
<source>Entry point file '{0}' for command '{1}' was not found in the package.</source>
<target state="new">Entry point file '{0}' for command '{1}' was not found in the package.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolSettingsFile">
<source>Settings file 'DotnetToolSettings.xml' was not found in the package.</source>
<target state="new">Settings file 'DotnetToolSettings.xml' was not found in the package.</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -694,16 +694,6 @@
<target state="translated">Так как вы только что установили пакет SDK для .NET Core, перед его запуском нужно заново открыть окно командной строки.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingEntryPointFile">
<source>Package '{0}' is missing entry point file {1}.</source>
<target state="translated">В пакете "{0}" отсутствует файл точки входа {1}.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingSettingsFile">
<source>Package '{0}' is missing tool settings file DotnetToolSettings.xml.</source>
<target state="translated">В пакете "{0}" отсутствует файл параметров инструмента DotnetToolSettings.xml.</target>
<note />
</trans-unit>
<trans-unit id="ToolSettingsMissingCommandName">
<source>Tool defines a command with a missing name setting.</source>
<target state="translated">Инструмент определяет команду, для которой не задано имя.</target>
@ -853,6 +843,16 @@ setx PATH "%PATH%;{0}"
<target state="new">Column maximum width must be greater than zero.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolEntryPointFile">
<source>Entry point file '{0}' for command '{1}' was not found in the package.</source>
<target state="new">Entry point file '{0}' for command '{1}' was not found in the package.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolSettingsFile">
<source>Settings file 'DotnetToolSettings.xml' was not found in the package.</source>
<target state="new">Settings file 'DotnetToolSettings.xml' was not found in the package.</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -694,16 +694,6 @@
<target state="translated">.NET Core SDKsını yüklediğinizden, yüklediğiniz aracı çalıştırmadan önce Komut İstemi penceresini yeniden açmanız gerekiyor.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingEntryPointFile">
<source>Package '{0}' is missing entry point file {1}.</source>
<target state="translated">'{0}' paketinde {1} giriş noktası dosyası eksik.</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingSettingsFile">
<source>Package '{0}' is missing tool settings file DotnetToolSettings.xml.</source>
<target state="translated">'{0}' paketinde DotnetToolSettings.xml araç ayarları dosyası eksik.</target>
<note />
</trans-unit>
<trans-unit id="ToolSettingsMissingCommandName">
<source>Tool defines a command with a missing name setting.</source>
<target state="translated">Araçta ad ayarı eksik bir komut tanımlanıyor.</target>
@ -853,6 +843,16 @@ setx PATH "%PATH%;{0}"
<target state="new">Column maximum width must be greater than zero.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolEntryPointFile">
<source>Entry point file '{0}' for command '{1}' was not found in the package.</source>
<target state="new">Entry point file '{0}' for command '{1}' was not found in the package.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolSettingsFile">
<source>Settings file 'DotnetToolSettings.xml' was not found in the package.</source>
<target state="new">Settings file 'DotnetToolSettings.xml' was not found in the package.</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -694,16 +694,6 @@
<target state="translated">由于刚安装了 .NET Core SDK因此在运行安装的工具之前需要重新打开命令提示符窗口。</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingEntryPointFile">
<source>Package '{0}' is missing entry point file {1}.</source>
<target state="translated">包“{0}”缺少入口点文件 {1}。</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingSettingsFile">
<source>Package '{0}' is missing tool settings file DotnetToolSettings.xml.</source>
<target state="translated">包“{0}”缺少工具设置文件 DotnetToolSettings.xml。</target>
<note />
</trans-unit>
<trans-unit id="ToolSettingsMissingCommandName">
<source>Tool defines a command with a missing name setting.</source>
<target state="translated">工具使用缺失的名称设置定义命令。</target>
@ -853,6 +843,16 @@ setx PATH "%PATH%;{0}"
<target state="new">Column maximum width must be greater than zero.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolEntryPointFile">
<source>Entry point file '{0}' for command '{1}' was not found in the package.</source>
<target state="new">Entry point file '{0}' for command '{1}' was not found in the package.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolSettingsFile">
<source>Settings file 'DotnetToolSettings.xml' was not found in the package.</source>
<target state="new">Settings file 'DotnetToolSettings.xml' was not found in the package.</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -694,16 +694,6 @@
<target state="translated">因為您剛才安裝了 .NET Core SDK您必須先重新開啟 [命令提示字元] 視窗,才能執行您安裝的工具。</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingEntryPointFile">
<source>Package '{0}' is missing entry point file {1}.</source>
<target state="translated">套件 '{0}' 缺少進入點檔案 {1}。</target>
<note />
</trans-unit>
<trans-unit id="ToolPackageMissingSettingsFile">
<source>Package '{0}' is missing tool settings file DotnetToolSettings.xml.</source>
<target state="translated">套件 '{0}' 缺少工具設定檔 DotnetToolSettings.xml。</target>
<note />
</trans-unit>
<trans-unit id="ToolSettingsMissingCommandName">
<source>Tool defines a command with a missing name setting.</source>
<target state="translated">工具使用了缺少的名稱設定定義命令。</target>
@ -853,6 +843,16 @@ setx PATH "%PATH%;{0}"
<target state="new">Column maximum width must be greater than zero.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolEntryPointFile">
<source>Entry point file '{0}' for command '{1}' was not found in the package.</source>
<target state="new">Entry point file '{0}' for command '{1}' was not found in the package.</target>
<note />
</trans-unit>
<trans-unit id="MissingToolSettingsFile">
<source>Settings file 'DotnetToolSettings.xml' was not found in the package.</source>
<target state="new">Settings file 'DotnetToolSettings.xml' was not found in the package.</target>
<note />
</trans-unit>
</body>
</file>
</xliff>

View file

@ -34,7 +34,7 @@ SDK commands:
sln Modify solution (SLN) files.
add Add reference to the project.
remove Remove reference from the project.
list List reference in the project.
list List project references or installed tools.
nuget Provides additional NuGet commands.
msbuild Runs Microsoft Build Engine (MSBuild).
vstest Runs Microsoft Test Execution Command Line Tool.

View file

@ -33,6 +33,7 @@ Options:
Commands:
reference .NET Core Project-to-Project dependency viewer
tool Lists installed tools in the current development environment.
";
const string FrameworkNet451Arg = "-f net451";