Introducción a la localización de metadatos

Algunos metadatos definidos dentro de los objetos de configuración admiten la localización. Las propiedades que admiten la localización están adornadas con LocalizableStringAttribute y el compilador emite una advertencia si estas propiedades se establecen en un valor no localizable. Estos valores se pueden localizar mediante la inclusión de archivos string-resources.json con la extensión y alrededor de la clave de recurso de cadena con % caracteres.

un Command objeto con un localizado DisplayName y ToolTipText tiene el siguiente aspecto:

public override CommandConfiguration CommandConfiguration => new("%Microsoft.VisualStudio.MyExtension.SampleRemoteCommand.DisplayName%")
{
    ToolTipText = "%Microsoft.VisualStudio.MyExtension.SampleRemoteCommand.ToolTipText%"
}

string-resources.json

La extensión debe proporcionar un archivo string-resources.json para cada lenguaje que admita la extensión. Este archivo JSON es un diccionario de pares clave-valor donde la clave es un identificador único global (todo Visual Studio) para un recurso de cadena y el valor es el recurso de cadena localizado. Estos archivos JSON deben implementarse con la extensión en el .vsextension directorio, con cada idioma que admita que se envíe en una carpeta que coincida con el nombre de la configuración regional, es decir, "de" para alemán, "it" para italiano, etc. El string-resources.json implementado en la raíz del .vsextension directorio se usa como valor predeterminado si la extensión no admite el idioma en el que Visual Studio está establecido actualmente. Aquí se puede ver un ejemplo de cómo se vería esta estructura de directorios:

Localization directory structure

ejemplo string-resources.json:

{
    "Microsoft.VisualStudio.MyExtension.SampleRemoteCommand.DisplayName": "Sample Remote Command Display Name",
    "Microsoft.VisualStudio.MyExtension.SampleRemoteCommand.ToolTipText": "Sample Remote Command ToolTip"
}

Pasos siguientes

Obtenga más información sobre los comandos de extensibilidad de VisualStudio.Extensibility en Agregar comandos de Visual Studio.