Altera o idioma do sistema OSX em um script

3

Manualmente, basta acessar as preferências do sistema, alterar a ordem do idioma e reiniciar meu aplicativo para que ele seja inicializado no idioma padrão do sistema. Então, posso executar testes automatizados com o aplicativo em execução nesse idioma.

Na linha de comando, há um conjunto de idiomas do utilitário OSX embutido, mas isso requer sudo e precisa solicitar o novo idioma (ou seja, não há uma opção de linha de comando óbvia).

Eu não conheço o AppleScript bem o suficiente para usar isso, mas estaria aberto a usá-lo.

    
por travis1097 09.09.2013 / 21:55

2 respostas

4

Você pode abrir um aplicativo usando um idioma diferente adicionando uma opção -AppleLanguages :

/Applications/Calendar.app/Contents/MacOS/Calendar -AppleLanguages '(de)'

Outra opção é adicionar uma matriz AppleLanguages à lista de propriedades do aplicativo:

defaults write -app Calendar AppleLanguages -array de; open -a Calendar

languagesetup apenas altera o primeiro item na matriz AppleLanguages em /Library/Preferences/.GlobalPreferences.plist .

    
por 10.09.2013 / 14:09
1

Não há necessidade de alterar a linguagem padrão do sistema (para a maioria dos aplicativos, pelo menos). Preferências do Sistema »Idioma & Texto não altera a linguagem padrão do sistema, é apenas a configuração do seu perfil de usuário.

O script a seguir escreve a lista de idiomas preferidos (primeiro alemão e inglês):

defaults write -g AppleLanguages -array de en

Execute isso e abra seu aplicativo. Adicione ou remova IDs de idioma conforme necessário.

Para listar sua configuração atual de idioma:

$ defaults read -g AppleLanguages
(
    en,
    de
)
    
por 09.09.2013 / 22:05