Obter novo local para país que não existe? Como?

0

Tenho problemas com as localidades. Eu estou morando na Estônia. Se eu escolher país como a Estônia. Eu vou ter calendário e outras coisas locais em estoniano, mas eu tenho em inglês. E não há opções para fazer uma linguagem diferente para a Estônia. Pode ser trabalhar em torno disso? Na verdade, esse problema existe em qualquer distro. Equipe do Ubuntu assumindo que o condado você está atualmente definido seu idioma, o que nem sempre é verdade.

    
por Maximus 22.08.2016 / 11:18

3 respostas

3

Sim, desde que você instalou na Estônia, o Ubuntu 'adivinhou' que você prefere formatos de data e hora, moeda, etc. 'o caminho estoniano'. Se você quiser, por exemplo Em inglês, você pode abrir Suporte a Idiomas , selecionar o Regional Formatos e altere-o .

Editar:

Se os nomes dos dias da semana e do mês forem sua preocupação principal, enquanto você quiser manter outros aspectos de formato para o estoniano o máximo possível, uma opção é abrir o arquivo ~/.profile para edição e adicionar esta linha:

export LC_TIME=en_DK.UTF-8
    
por Gunnar Hjalmarsson 22.08.2016 / 12:07
1

Existem várias maneiras. O mais fácil é especificar as exceções. Deixe-me mostrar minha configuração usando capturas de tela. O que você abrirá é o aplicativo "Idiomas de Suporte". Na primeira execução, geralmente pede que você instale os componentes ausentes. Deixe isso acontecer.

Vá para "Instalar Remover Idiomas" e obtenha todos os idiomas em que está interessado. Para mim, isso seria inglês, holandês, francês e alemão:

Agora,najanelaprincipal,arrasteosidiomasquedesejaexibirnapartesuperior.Elessãodecimaparabaixo,depreferência.Euprefiro,naordem:en_GB,en_USefinalmenteapenasen:

Porfim,váparaasegundaguiachamada"Formatos regionais". Lá você seleciona os formatos de data / hora / moeda que deseja usar. Para mim isso é fr_LU:

Ébasicamenteisso.Nomeucaso,tudoéexibidoeminglês,masmeusformatosestãodeacordocomopadrãoluxemburguês.

Sevocêclicarem"Aplicar todo o sistema", ele se tornará um padrão para todo o sistema. Eu costumo fazer isso, os usuários individuais ainda podem alterá-lo ao seu gosto (e até mesmo revertê-lo para o sistema, se tiverem uma conta administrativa).

Método alternativo: Definir variáveis de ambiente. Basicamente é isso que o aplicativo acima faz para você. Aqui está o meu:

$ env | grep -e LC_ -e LANG
LC_PAPER=fr_LU.UTF-8
LC_ADDRESS=fr_LU.UTF-8
LC_MONETARY=fr_LU.UTF-8
LC_NUMERIC=fr_LU.UTF-8
LC_TELEPHONE=fr_LU.UTF-8
LC_IDENTIFICATION=fr_LU.UTF-8
LANG=en_US.UTF-8
GDM_LANG=en_US
LC_MEASUREMENT=fr_LU.UTF-8
LANGUAGE=en_US
LC_TIME=fr_LU.UTF-8
LC_NAME=fr_LU.UTF-8

Se você quiser alterá-los em todo o sistema, o arquivo em que você está interessado /etc/default/locale .

Finalmente, você pode criar um novo local. É o que eu costumava fazer, mas o sistema de variáveis de ambiente funciona bem o suficiente para mim. Basicamente, os arquivos de definições de código de idioma podem ser encontrados em /usr/share/i18n/locales . Ele contém um monte de arquivos chamados xx_XX. Você escolhe o que se encaixa na formatação desejada. Para mim, isso seria fr_LU . Agora copie isso para a localidade (inexistente) que você deseja criar: cp fr_LU en_LU . Neste ponto, edite o novo arquivo e substitua o nome do idioma pela palavra English . No meu caso, isso foi French into English . Por fim, você precisa adicionar a nova localidade a /etc/locale.gen e executar sudo locale-gen e, em seguida, usar isso em /etc/default/locale . Escusado será dizer que este é um caminho bastante complicado, e estou escrevendo isso da memória. Eu quase certamente me esqueci de algo.

Para a geração local (graças a Gunnar pelas adições sábias), este deve ser o procedimento completo. Eu incluí saída e comandos.

jawtheshark@bruce:~$ sudo mkdir -p /usr/local/share/i18n/locales
jawtheshark@bruce:~$ sudo bash -c "sed s/French/English/ /usr/share/i18n/locales/fr_LU > /usr/local/share/i18n/locales/en_LU "
jawtheshark@bruce:~$ sudo bash -c "echo en_LU.UTF-8 UTF-8 >> /etc/locale.gen"
jawtheshark@bruce:~$ sudo locale-gen
Generating locales (this might take a while)...
  de_AT.UTF-8... done
  de_BE.UTF-8... done
  de_CH.UTF-8... done
  de_DE.UTF-8... done
  de_LI.UTF-8... done
  de_LU.UTF-8... done
  en_AG.UTF-8... done
  en_AU.UTF-8... done
  en_BW.UTF-8... done
  en_CA.UTF-8... done
  en_DK.UTF-8... done
  en_GB.UTF-8... done
  en_HK.UTF-8... done
  en_IE.UTF-8... done
  en_IN.UTF-8... done
  en_LU.UTF-8... done
  en_NG.UTF-8... done
  en_NZ.UTF-8... done
  en_PH.UTF-8... done
  en_SG.UTF-8... done
  en_US.UTF-8... done
  en_ZA.UTF-8... done
  en_ZM.UTF-8... done
  en_ZW.UTF-8... done
  fr_BE.UTF-8... done
  fr_CA.UTF-8... done
  fr_CH.UTF-8... done
  fr_FR.UTF-8... done
  fr_LU.UTF-8... done
  nl_AW.UTF-8... done
  nl_BE.UTF-8... done
  nl_NL.UTF-8... done
Generation complete.
jawtheshark@bruce:~$ sudo bash -c 'echo LANG="en_LU.UTF-8" > /etc/default/locale'

Desculpe, por mais uma edição. O arquivo de localidade criado acima ainda exibirá as datas em francês. Como os arquivos de localidade definem o que é exibido, agora você pode editar esse arquivo (no meu exemplo /usr/local/share/i18n/localesen_LU ). Você procurará LC_TIME e END LC_TIME . Agora, substitua todas as coisas dentro dessas duas linhas, com as palavras copy "en_GB" . Regenerar sua localidade ( sudo locale-gen ) e a nova localidade está pronta para uso. Pode haver outros remanescentes lingüísticos, e você terá que adaptá-los também se ficar irritado com eles.

No entanto Fazendo tudo isso, nos diz que será mais fácil fazer o seguinte. Edite o arquivo / etc / defaults / locale para refletir o que você deseja. Acima colei o meu, está cheio de fr_LU.UTF-8 . Cada uma dessas variáveis representa um aspecto da maneira como os dados específicos de localidade são representados. Isso significa que, para conseguir a mesma coisa que criamos um novo local, poderíamos fazer isso simples (conteúdo de /etc/default/locale :

LANG=en_LU.UTF-8
LC_NUMERIC="fr_LU.UTF-8"
LC_TIME="en_GB.UTF-8"
LC_MONETARY="fr_LU.UTF-8"
LC_PAPER="fr_LU.UTF-8"
LC_IDENTIFICATION="fr_LU.UTF-8"
LC_NAME="fr_LU.UTF-8"
LC_ADDRESS="fr_LU.UTF-8"
LC_TELEPHONE="fr_LU.UTF-8"
LC_MEASUREMENT="fr_LU.UTF-8"

Isso basicamente diz ao sistema: formate qualquer coisa para o fr_LU.UTF-8 locale, exceto para LC_TIME , porque eu quero ver em en_GB.UTF-8 . Esta deve ser a solução que você está procurando.

Observação: Você também pode querer remover ou alterar essas variáveis de ambiente em ~/.pam_environment . Aqueles por usuário e irão substituir as configurações padrão definidas em /etc/default/locale . Aplicativos GUI, como "Suporte a idiomas", podem substituir esses -

    
por jawtheshark 22.08.2016 / 12:58
1
  1. Clique no ícone à direita da barra de menus e selecione Configurações do sistema.
  2. Na seção Pessoal, clique em Suporte ao idioma.
  3. Clique em Instalar / Remover idiomas .... A janela Idiomas instalados lista todos os idiomas disponíveis, com os idiomas atualmente instalados verificados.
  4. Verifique os idiomas que você deseja instalar e desmarque os idiomas atualmente instalados que você deseja remover.
  5. Clique em Aplicar alterações.
  6. Privilégios administrativos são necessários. Digite sua senha ou a senha da conta de administrador solicitada.

Para mais informações, consulte este link

    
por polle 22.08.2016 / 11:41