<?xml version="1.0" encoding="utf-8"?>
<!-- Licensed to the .NET Foundation under one or more agreements. The .NET Foundation licenses this file to you under the MIT license. See the LICENSE.md file in the project root for more information. -->
<Rule Name="Build" Description="Especifica las propiedades que controlan el modo en que se compila el proyecto." DisplayName="Compilación" PageTemplate="generic" Order="200" xmlns="http://schemas.microsoft.com/build/2009/properties">
  <Rule.Categories>
    <Category Name="General" DisplayName="General" />
    <Category Name="ErrorsAndWarnings" Description="Configura las opciones de error y advertencia del proceso de compilación." DisplayName="Errores y advertencias" />
    <Category Name="Output" Description="Configura las opciones de salida del proceso de compilación." DisplayName="Salida" />
  </Rule.Categories>
  <Rule.DataSource>
    <DataSource Persistence="ProjectFile" SourceOfDefaultValue="AfterContext" HasConfigurationCondition="True" />
  </Rule.DataSource>
  <StringProperty Name="DefineConstants" DisplayName="Símbolos de compilación condicional" Description="Especifica los símbolos con los que se va a realizar la compilación condicional. Separe los símbolos con punto y coma (&quot;;&quot;)." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147079" Category="General" />
  <EnumProperty Name="PlatformTarget" DisplayName="Destino de la plataforma" Description="Especifica el procesador al que se va a destinar el archivo de salida. Elija &quot;x86&quot; para cualquier procesador compatible con Intel de 32 bits, &quot;x64&quot; para cualquier procesador compatible con Intel de 64 bits, o bien &quot;Cualquier CPU&quot; para especificar que todos los procesadores son aceptables. &quot;Cualquier CPU&quot; es el valor predeterminado para los proyectos, ya que permite que la aplicación se ejecute en la mayor parte del hardware." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147129" Category="General">
    <EnumValue Name="AnyCPU" DisplayName="Cualquier CPU" />
    <EnumValue Name="x64" DisplayName="x64" />
    <EnumValue Name="x86" DisplayName="x86" />
  </EnumProperty>
  <EnumProperty Name="Nullable" DisplayName="Admite valores NULL" Description="Especifica el contexto que acepta valores NULL de C# en todo el proyecto. Solo disponible para los proyectos que usan C# 8.0 o posterior." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2146796" Category="General">
    <EnumProperty.DataSource>
      <DataSource HasConfigurationCondition="False" />
    </EnumProperty.DataSource>
    <EnumValue Name="disable" DisplayName="Deshabilitar" />
    <EnumValue Name="enable" DisplayName="Habilitar" />
    <EnumValue Name="warnings" DisplayName="Advertencias" />
    <EnumValue Name="annotations" DisplayName="Anotaciones" />
  </EnumProperty>
  <BoolProperty Name="AllowUnsafeBlocks" DisplayName="Permitir código no seguro" Description="Permite que el código que usa la palabra clave &quot;unsafe&quot; se compile." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2146797" Category="General">
    <BoolProperty.Metadata>
      <NameValuePair Name="SearchTerms" Value="punteros" />
    </BoolProperty.Metadata>
  </BoolProperty>
  <BoolProperty Name="Optimize" DisplayName="Optimizar código" Description="Habilita o deshabilita las optimizaciones realizadas por el compilador para que el archivo de salida tenga un menor tamaño, y sea más rápido y eficaz." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147080" Category="General">
    <BoolProperty.Metadata>
      <NameValuePair Name="SearchTerms" Value="optimizar;optimización" />
    </BoolProperty.Metadata>
  </BoolProperty>
  <StringProperty Name="LangVersion" DisplayName="Versión de lenguaje" Description="¿Por qué no puedo seleccionar la versión del lenguaje C#?">
    <StringProperty.DataSource>
      <DataSource PersistedName="LangVersion" Persistence="ProjectFileWithInterception" HasConfigurationCondition="False" />
    </StringProperty.DataSource>
    <StringProperty.ValueEditors>
      <ValueEditor EditorType="LinkAction">
        <ValueEditor.Metadata>
          <NameValuePair Name="Action" Value="URL" />
          <NameValuePair Name="URL" Value="https://aka.ms/csharp-versions" />
        </ValueEditor.Metadata>
      </ValueEditor>
    </StringProperty.ValueEditors>
  </StringProperty>
  <!-- TODO create fwlink for this HelpUrl -->
  <BoolProperty Name="CheckForOverflowUnderflow" DisplayName="Comprobar el desbordamiento aritmético" Description="Especifica si la aritmética de enteros que genera un valor fuera del intervalo del tipo de datos y que no está en el ámbito de las palabra clave checked o unchecked provocará una excepción en tiempo de ejecución." HelpUrl="https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/compiler-options/checked-compiler-option" Category="General">
    <BoolProperty.Metadata>
      <NameValuePair Name="SearchTerms" Value="comprobado;no comprobado" />
    </BoolProperty.Metadata>
  </BoolProperty>
  <!-- TODO create fwlink for this HelpUrl -->
  <BoolProperty Name="Deterministic" DisplayName="Determinista" Description="Indica si el compilador debe producir ensamblados idénticos para entradas idénticas." HelpUrl="https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/compiler-options/deterministic-compiler-option" Category="General" />
  <!-- TODO create fwlink for this HelpUrl -->
  <EnumProperty Name="ErrorReport" DisplayName="Informe de errores internos del compilador" Description="Controla cuándo se envían a Microsoft los informes de errores internos del compilador (ICE)." HelpUrl="https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/compiler-options/errorreport-compiler-option" Category="General">
    <EnumProperty.DataSource>
      <DataSource HasConfigurationCondition="False" />
    </EnumProperty.DataSource>
    <EnumValue Name="none" DisplayName="No enviar nunca" />
    <EnumValue Name="prompt" DisplayName="Preguntar antes de enviar" />
    <EnumValue Name="queue" DisplayName="Poner en cola" />
    <EnumValue Name="send" DisplayName="Enviar" />
  </EnumProperty>
  <!-- TODO create fwlink for this HelpUrl -->
  <EnumProperty Name="FileAlignment" DisplayName="Alineación del archivo" Description="Especifica, en bytes, dónde se van a alinear las secciones del archivo de salida." HelpUrl="https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/compiler-options/filealign-compiler-option" Category="General">
    <EnumValue Name="512" DisplayName="512" />
    <EnumValue Name="1024" DisplayName="1024" />
    <EnumValue Name="2048" DisplayName="2048" />
    <EnumValue Name="4096" DisplayName="4096" />
    <EnumValue Name="8192" DisplayName="8192" />
  </EnumProperty>
  <EnumProperty Name="WarningLevel" DisplayName="Nivel de advertencia" Description="Especifica el nivel que se debe mostrar para las advertencias del compilador." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2146798" Category="ErrorsAndWarnings">
    <EnumValue Name="0" DisplayName="0" />
    <EnumValue Name="1" DisplayName="1" />
    <EnumValue Name="2" DisplayName="2" />
    <EnumValue Name="3" DisplayName="3" />
    <EnumValue Name="4" DisplayName="4" />
    <EnumValue Name="5" DisplayName="5" />
  </EnumProperty>
  <StringProperty Name="NoWarn" DisplayName="Suprimir las advertencias" Description="Bloquea la capacidad del compilador para generar una o más advertencias. Separe varios números de advertencia con una coma (&quot;,&quot;) o punto y coma (&quot;;&quot;)." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147300" Category="ErrorsAndWarnings" />
  <EnumProperty Name="TreatWarningsAsErrors" HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147301" DisplayName="Tratar advertencias como errores" Description="Se usa para especificar las advertencias que se tratan como errores." Category="ErrorsAndWarnings">
    <EnumValue Name="false" DisplayName="Ninguno" />
    <EnumValue Name="true" DisplayName="Todo" />
  </EnumProperty>
  <StringProperty Name="WarningsAsErrors" DisplayName="Tratar advertencias específicas como errores" HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147301" Description="Trata las advertencias especificadas como errores. Separe varios números de advertencia con una coma (&quot;,&quot;) o punto y coma (&quot;;&quot;)." Category="ErrorsAndWarnings" />
  <StringProperty Name="BaseOutputPath" DisplayName="Ruta de acceso de la salida base" Description="Especifica la ubicación base de la salida del proyecto durante la compilación. Las subcarpetas se asociarán a esta ruta de acceso para diferenciar la configuración del proyecto." Category="Output" Subtype="directory">
    <StringProperty.DataSource>
      <DataSource HasConfigurationCondition="False" />
    </StringProperty.DataSource>
  </StringProperty>
  <StringProperty Name="BaseIntermediateOutputPath" DisplayName="Ruta de acceso de salida intermedia base" Description="Especifica la ubicación base de la salida intermedia del proyecto durante la compilación. Las subcarpetas se asociarán a esta ruta de acceso para diferenciar la configuración del proyecto." Category="Output" Subtype="directory">
    <StringProperty.DataSource>
      <DataSource HasConfigurationCondition="False" />
    </StringProperty.DataSource>
  </StringProperty>
  <!-- TODO create fwlink for this HelpUrl -->
  <BoolProperty Name="GenerateDocumentationFile" DisplayName="Archivo de documentación" Description="Genera un archivo que contiene la documentación de la API." HelpUrl="https://docs.microsoft.com/en-us/dotnet/csharp/codedoc" Category="Output">
    <BoolProperty.DataSource>
      <DataSource HasConfigurationCondition="False" />
    </BoolProperty.DataSource>
  </BoolProperty>
  <!-- TODO consider removing this property from the UI altogether -->
  <StringProperty Name="DocumentationFile" DisplayName="Ruta de acceso del archivo de documentación XML" Description="Ruta de acceso opcional del archivo de documentación de la API. Déjelo en blanco para usar la ubicación predeterminada." HelpUrl="https://go.microsoft.com/fwlink/?linkid=2147081" Category="Output" Subtype="file">
    <StringProperty.DataSource>
      <DataSource HasConfigurationCondition="False" />
    </StringProperty.DataSource>
    <StringProperty.Metadata>
      <NameValuePair Name="VisibilityCondition">
        <NameValuePair.Value>(evaluated "Build" "GenerateDocumentationFile")</NameValuePair.Value>
      </NameValuePair>
    </StringProperty.Metadata>
  </StringProperty>
</Rule>