Definindo LANG para SublimeText da Unity

2

Estou tentando executar o SublimeText com o complemento de controle de pacote e cada vez que abri-lo usando o iniciador do Unity, recebo esse erro.

Atéagora,tenteiseguirasinstruçõesfornecidaspela Ajuda da comunidade do Ubuntu , configurando-a em todos os locais e locais mencionados então reiniciar não corrigiu o problema.

Eu também segui os passos encontrados na página do github de controle de pacotes sem sucesso.

Isso funciona quando eu estou lançando o SublimeText a partir da linha de comando, então estou supondo que seja um problema específico do Unity, alguém sabe como configurar o LANG corretamente ao lançar o SublimeText a partir do Unity?

Editar: adicionando detalhes de instalação, Eu instalei usando o .deb SublimeText3 de 64 bits encontrado aqui, link

O controle de pacotes foi instalado usando o método simples encontrado aqui, link

    
por EEP 28.03.2014 / 14:50

3 respostas

1

Eu instalei sublimetext usando o método ppa e Package control com o "método simples" descrito aqui , funciona da caixa com o Ubuntu 13.10 (Unity).

Para reproduzir seu problema, tentei forçar o LANG-C a iniciar o sublimetext, modificando o arquivo .desktop. Eu acho que você poderia tentar o mesmo ajuste para iniciá-lo agora forçando LANG=en_US.UTF-8 :

sudo gedit /usr/share/applications/sublime-text.desktop

E copie as seguintes linhas no arquivo:

[Desktop Entry]
Version=1.0
Type=Application
Name=Sublime Text
GenericName=Text Editor
Comment=Sophisticated text editor for code, markup and prose
Exec=bash -c "LANG=en_US.UTF-8 /opt/sublime_text/sublime_text %F"
Terminal=false
MimeType=text/plain;
Icon=sublime-text
Categories=TextEditor;Development;Utility;
StartupNotify=true
Actions=Window;Document;

X-Desktop-File-Install-Version=0.21

[Desktop Action Window]
Name=New Window
Exec=bash -c "LANG=en_US.UTF-8 /opt/sublime_text/sublime_text -n"
OnlyShowIn=Unity;

[Desktop Action Document]
Name=New File
Exec=bash -c "LANG=en_US.UTF-8 /opt/sublime_text/sublime_text --command new_file"
OnlyShowIn=Unity; 
    
por Sylvain Pineau 28.03.2014 / 15:39
0

Eu só tinha isso no Ubuntu 14.04 LTS. meu LANG está configurado no sistema inteiro, mas o gerenciador de pacotes sublimetext 3 não o seleciona.

Acabei de fazer a solução e colocar LANG = en_US.UTF-8 antes do caminho do aplicativo em seu ativador de ícones.

    
por CNSKnight 18.07.2014 / 15:55
0

Eu tive exatamente o mesmo problema com o sublimeT3. Primeiro em um terminal eu corri o próximo comando:

$echo $LOCAL

E a saída foi uma linha vazia.

A seguir corri:

$locale

Esta foi a saída:

LANG=
LANGUAGE=en_US
LC_CTYPE=POSIX
LC_NUMERIC=POSIX
LC_TIME=POSIX
LC_COLLATE=POSIX
LC_MONETARY=POSIX
LC_MESSAGES=POSIX
LC_PAPER=POSIX
LC_NAME=POSIX
LC_ADDRESS=POSIX
LC_TELEPHONE=POSIX
LC_MEASUREMENT=POSIX
LC_IDENTIFICATION=POSIX
LC_ALL=POSIX

Eu tentei redefinir as localidades com algumas das respostas dadas aqui , mas tudo foi malsucedido, toda vez que o comando" locale "deu a mesma saída. Até o meu / etc / default / locale parecia estar certo:

$cat /etc/default/locale

Saída:

LANG=en_US.UTF-8
LC_NUMERIC="es_CO.UTF-8"
LC_TIME="es_CO.UTF-8"
LC_MONETARY="es_CO.UTF-8"
LC_PAPER="es_CO.UTF-8"
LC_NAME="es_CO.UTF-8"
LC_ADDRESS="es_CO.UTF-8"
LC_TELEPHONE="es_CO.UTF-8"
LC_MEASUREMENT="es_CO.UTF-8"
LC_IDENTIFICATION="es_CO.UTF-8"

Por causa disso, eu me perguntei se talvez algo estivesse sobrepujando as variáveis de ambiente. Meu arquivo .pam_environment parecia estar correto:

$cat .pam_environment

Saída:

LANGUAGE=en_US:en
LANG=en_US.UTF-8
LC_NUMERIC=es_CO.UTF-8
LC_TIME=es_CO.UTF-8
LC_MONETARY=es_CO.UTF-8
LC_PAPER=es_CO.UTF-8
LC_NAME=es_CO.UTF-8
LC_ADDRESS=es_CO.UTF-8
LC_TELEPHONE=es_CO.UTF-8
LC_MEASUREMENT=es_CO.UTF-8
LC_IDENTIFICATION=es_CO.UTF-8
PAPERSIZE=letter

Então eu corri o próximo comando que me deu a pista do que estava acontecendo:

$cat .bashrc | grep LANG

Aqui a saída:

unset LANG

Eu não sei quando ou como, mas acabei com duas linhas no meu .bashrc que anulou o valor das variáveis "locale". Eu não estou colando todo o arquivo bash, mas as duas linhas principais eram estas:

unset LANG
export LC_ALL=POSIX

Ao comentá-los no arquivo bash e uma reinicialização, voila! meu local foi configurado como pretendia, e o sublime parou de reclamar. Já faz mais de um ano desde que isso foi formulado, mas talvez pudesse ajudar alguém!

    
por smajtkst 15.08.2015 / 04:01