Por alguma razão hoje, toda vez que eu clico em tab no terminal, isso aparece:
cat bash: warning: setlocale: LC_CTYPE: cannot change locale (en_CA)
Display all 150 possibilities? (y or n)
Esse em particular acontece quando eu digito cat
e pressiono TAB. Eu nunca mudei nenhuma configuração ou nada. Alguém sabe o que está acontecendo?
bash
autocomplete
locale
Estranho TAB
fonte
fonte
en_CA
(ou seja canadense Inglês) um local que você espera estar em?locale
comando?en_CA
é um código de idioma válido (ou seja, existe no seu sistema e foi gerado porlocaledef
ou alguma ferramenta de geração de código de idioma semelhante)?ssh
ouputty
.Respostas:
Tenho um palpite de que algo que o seu bash_completion está fazendo com que isso aconteça. Tente limpar a conclusão do bash temporariamente (até você sair) fazendo:
Se isso esclarecer, é algo com a conclusão do bash; caso contrário, ainda pode ser um dos built-ins do bash
fonte
Problema semelhante ao conectar via SSH a um servidor remoto (depois de instalar o oh-my-zsh no meu local, mas não sei se isso é relevante). Para fixar isso,
Na minha máquina local, editei o arquivo / etc / ssh / ssh_config, comentando a linha SendEnv
A conclusão da guia agora funciona sem o aviso na máquina remota
fonte
Eu tive um problema semelhante no meu servidor ubuntu (FlexiScale) e procurei uma solução por um tempo, mas não consegui encontrar nada adequado ... Ainda não tenho certeza se o que fiz foi o "caminho certo", mas parece funcionar.
O aviso que eu estava vendo era:
Para garantir que as localidades estejam atualizadas, fiz isso (não tenho certeza se isso era necessário):
locale
no meu sistema estava mostrando oLC_CTYPE="UTF-8"
que não parecia certo para mim, então mudei o meu/etc/default/locale
para ficar assim:(Adicionei a segunda linha.) Após o login novamente, os avisos desapareceram.
fonte
LC_CTYPE
para ser um valor válido foi o que aconteceu. Você não precisaLANG
(e na verdade eu recomendo ). Você pode ver os nomes de código de idioma válidos em seu sistema executandolocale -a
. No Ubuntu, executesudo localegen xx_YY
para gerar oxx_YY
código do idioma (supondo que ele possa ser gerado).Se você receber uma mensagem de erro / aviso semelhante a essa ao pressionar Tab para o preenchimento automático do comando bash:
A solução é:
Instale o código do idioma necessário. No meu caso, este é o "id":
Reconfigure as localidades:
Agora, a conclusão do bash Tab deve funcionar perfeitamente. :-)
Fonte: http://ubuntucomputing.blogspot.com/2011/12/how-to-fix-error-bash-warning-setlocale.html
fonte
Eu estava tendo o mesmo problema. Eu tentei algumas das soluções aqui, mas quando tentei executar
locale-gen
, meu sistema disse que não conseguia encontrar o comando. Acontece que é uma parte dolocales
pacote que eu não instalei. Então eu instalei, corrilocales-gen
e agora funciona!fonte
Resolvido permanentemente com a criação do arquivo
Com conteúdo
Veja a resposta no github
fonte