¿Qué hace vscode-ext-localization?
Directrices para la localización adecuada de extensiones de VS Code, siguiendo las pautas de desarrollo de extensiones de VS Code, bibliotecas y buenas prácticas.
Introducción
La localización (l10n) de una extensión de VS Code permite que tu extensión se adapte a diferentes idiomas y regiones, mejorando la experiencia del usuario global. Esta guía proporciona las mejores prácticas y directrices para lograr una localización efectiva.
Configuración del entorno
Para empezar a localizar tu extensión, asegúrate de tener instalado Node.js y las dependencias necesarias. Recomendamos usar la biblioteca vscode-nls para la internacionalización (i18n).
npm install vscode-nls
Estructura de carpetas
Organiza tus archivos de localización de la siguiente manera:
package.json
src/
extension.ts
package.nls.json
package.nls.es.json
package.nls.fr.json
Uso de cadenas localizables
En tu código fuente, utiliza la función localize para marcar las cadenas que necesitan traducción.
import * as nls from 'vscode-nls';
const localize = nls.config({ messageFormat: nls.MessageFormat.file })();
const message = localize('hello', 'Hola');
console.log(message);
Archivos de traducción
Cada idioma tiene su propio archivo JSON de traducción. Por ejemplo:
package.nls.json (inglés, predeterminado)
{
"extension.name": "Mi Extensión"
}
package.nls.es.json (español)
{
"extension.name": "Mi Extensión"
}
Detección del idioma del usuario
VS Code detecta automáticamente el idioma del usuario según la configuración regional del editor. Puedes acceder a él con vscode.env.language.
const userLanguage = vscode.env.language;
console.log(`Idioma del usuario: ${userLanguage}`);
Mejores prácticas
- Usa claves descriptivas: En lugar de cadenas literales, usa claves como
extension.name. - Mantén las traducciones sincronizadas: Actualiza todos los archivos de idioma cuando agregues nuevas cadenas.
- Prueba en diferentes idiomas: Cambia el idioma de VS Code para verificar que las traducciones se carguen correctamente.
Enlaces útiles
Contribuciones
Si encuentras errores o tienes sugerencias, por favor abre un issue en el repositorio github/vscode-ext-localization.
Esta guía sigue las mejores prácticas de la comunidad de VS Code.