como traduzir o script bash "mensagens de eco" método automático

como traduzir o script bash "mensagens de eco" método automático

Eu tenho um script bash que preciso traduzir para outros idiomas. Apenas mensagens de eco

Existe algummétodo automático, tradução de script inteiro, ou ferramenta que pode me ajudar a traduzir todas as mensagens "eco" para outros idiomas? (Para evitar ter que digitar todo o "eco" no google tradutor)

Responder1

você não pode alterar algumas configurações de idioma e os comandos de eco do seu script serão magicamente outro idioma.

você pode fazer o seguinte:

  • originar um arquivo de idioma.
  • crie um script bash que converta o script bash original.
  • crie uma função no script bash que traduza a saída.

Como você não está interessado na solução dict, pois ela é muito traduzida pelo Google ... Aposto que o sourcing seria uma boa solução para você.

um exemplo simples seria;

/lang/en.sh

FILEMISSING="That file is missing..."

/lang/fr.sh

FILEMISSING="Ce fichier est manquant..."

script real.sh

#!/bin/bash

LANGUAGE=${LANG:0:2}
source /lang/$LANGUAGE.sh

if [ ! -f "bob.txt" ]; then
  echo "$FILEMISSING"
fi

Responder2

Você pode usar a $"…"sintaxe para especificar umstring que deve ser traduzida de acordo com a localidade.

As traduções devem estar em umarquivo de catálogo de mensagens; consulte o manual do bash para saber onde este arquivo está localizado e o manual do Glibc para saber o formato do arquivo.

Claro, você (ou outra pessoa) terá que fornecer a tradução para cada string. Não há como traduzir texto automaticamente, especialmente strings curtas fora de contexto. A tradução automática é ficção científica.

informação relacionada