The Communicator-API supports internationalization. Try it out.

DeviceDipsplay JavaScript Configuration:
To add a new language just override the default English values in Garmin.DeviceDisplay, Garmin.DeviceControl.MESSAGES and Garmin.DateTimeFormat.FORMAT.
Note: do not edit the text inside the replacement tags such as #{month}.
var display = new Garmin.DeviceDisplay("garminDisplay", { pathKeyPairsArray: ["http://developer.garmin.com/","ee3934433a35ee348583236c2eeadbc1"], showReadGoogleMap: true, showWriteDataElement: true, autoFindDevices: true, findDevicesButtonText: "Dispositivos del hallazgo", cancelFindDevicesButtonText: "Cancelar los dispositivos del hallazgo", deviceSelectLabel: "Dispositivos: ", noDeviceDetectedStatusText: "Ningunos dispositivos encontraron", readDataButtonText: "Conseguir los datos", cancelReadDataButtonText: "Cancelar consiguen datos", cancelReadStatusText: "Leer cancelado", readTracksSelectLabel: "Pistas: ", readRoutesSelectLabel: "Rutas: ", readWaypointsSelectLabel: "Waypoints: ", writeDataButtonText: "Escribir", cancelWriteDataButtonText: "Cancelar escriben", //status messages: pluginUnlocked: "Plug-in inicializado. Encontrar algunos dispositivos para conseguir comenzado. ", pluginNotUnlocked: "El plug-in no fue abierto con éxito", gpsData: "Datos del GPS", trainingData: "Datos del entrenamiento", using: "Usando ", trackListing: "#{date} (Duración: #{duration})", dataFound: "#{routes} rutas, #{tracks} sigue y #{waypoints} waypoints encontrado", writingToDevice: "Datos de la escritura al dispositivo", writtenToDevice: "Datos escritos al dispositivo", writingCancelled: "Escritura cancelada", overwritingFile: "Sobreescribiendo el archivo", notOverwritingFile: "No sobreescribirá el archivo", lookingForDevices: "Buscando los dispositivos conectados...", foundDevice: "Encontrado #{deviceName}", foundDevices: "Encontrado #{deviceCount} dispositivos", findCancelled: "Hallazgo cancelado", dataReadProcessing: "Datos leídos en el dispositivo. Procesando…", noParseSupportForType: "El plugin no tiene ayuda del análisis para el tipo del archivo", installNow: "¿Ahora instalar? ", downloadAndInstall: "Ahora descargar e instalar" }); Garmin.DeviceControl.MESSAGES = { deviceControlMissing: "Garmin.DeviceControl depende del marco de Garmin.DevicePlugin. ", missingPluginTag: "Etiqueta enchufable del HTML no encontrada. ", browserNotSupported: "Tu browser no se apoya para utilizar el Plug-In del comunicador de Garmin. ", pluginNotInstalled: "Plugin del comunicador de Garmin no detectada. ", outOfDatePlugin1: "Tu versión del Plug-In del comunicador de Garmin es anticuada, requerido: ", outOfDatePlugin2: ", corriente: ", pluginNotUnlocked: "Garmin Plugin no se ha abierto", noDevicesConnected: "Ningún dispositivo conectó, no puede comunicarse con el dispositivo. ", invalidFileType: "No puede procesar el tipo del archivo del dispositivo: " }; Garmin.DateTimeFormat.FORMAT = { date: "#{year}-#{month}-#{day}", time: "#{hour}:#{minute}:#{second}", timestamp: "#{year}-#{month}-#{day} #{hour}:#{minute}:#{second}", timestamp12hour: "#{year}-#{month}-#{day} #{hour}:#{minute}:#{second} #{meridian}" };
