Pour une raison quelconque aujourd'hui, chaque fois que je clique sur l'onglet dans le terminal, cela apparaît:
cat bash: warning: setlocale: LC_CTYPE: cannot change locale (en_CA)
Display all 150 possibilities? (y or n)
Celui-ci se produit lorsque je tape cat
puis appuie sur TAB. Je n'ai jamais changé de paramètre ou quoi que ce soit. Quelqu'un sait ce qui se passe?
bash
autocomplete
locale
TAB Weirdness
la source
la source
en_CA
(c.-à-d. Anglais canadien) un endroit où vous vous attendiez?locale
commande?en_CA
s'agit d'un paramètre régional valide (c'est-à-dire qu'il existe à la fois sur votre système et a été généré parlocaledef
ou un outil de génération de paramètres régionaux similaire)?ssh
ouputty
.Réponses:
J'ai le pressentiment que quelque chose que votre bash_completion provoque cela se produit. Essayez d'effacer temporairement votre complétion bash (jusqu'à ce que vous quittiez) en faisant:
Si cela clarifie les choses, c'est quelque chose avec l'achèvement de bash, sinon ce pourrait encore être l'un des intégrés de bash
la source
Problème similaire lors de la connexion via SSH à un serveur distant (après avoir installé oh-my-zsh sur mon local, mais je ne suis pas sûr que ce soit pertinent). Réparer,
Sur ma machine locale, j'ai édité le fichier / etc / ssh / ssh_config, en commentant la ligne SendEnv
L'achèvement des onglets fonctionne désormais sans avertissement sur la machine distante
la source
J'ai eu un problème similaire sur mon serveur Ubuntu (FlexiScale) et j'ai cherché une solution pendant un certain temps mais je n'ai rien trouvé de convenable ... Je ne sais toujours pas si ce que j'ai fait est la "bonne façon", mais cela semble fonctionner.
L'avertissement que je voyais était:
Pour m'assurer que les paramètres régionaux sont à jour, je l'ai fait (je ne sais pas si c'était nécessaire):
locale
sur mon système montraitLC_CTYPE="UTF-8"
ce qui ne me semblait pas bien, j'ai donc changé mon/etc/default/locale
pour ressembler à ceci:(J'ai ajouté la deuxième ligne.) Après la reconnexion, les avertissements ont disparu.
la source
LC_CTYPE
pour être une valeur valide l'a fait. Vous n'en avez pas besoinLANG
(et en fait je le déconseille ). Vous pouvez voir les noms de paramètres régionaux valides sur votre système en exécutantlocale -a
. Sur Ubuntu, exécutezsudo localegen xx_YY
pour générer lesxx_YY
paramètres régionaux (en supposant qu'ils puissent être générés).Si vous obtenez un message d'erreur / d'avertissement similaire à celui-ci lorsque vous appuyez sur Tab pour l'autocomplétion de la commande bash:
La solution est:
Installez les paramètres régionaux requis. Dans mon cas, c'est le "id":
Reconfigurez les paramètres régionaux:
Maintenant, l'achèvement de bash Tab devrait très bien fonctionner. :-)
Source: http://ubuntucomputing.blogspot.com/2011/12/how-to-fix-error-bash-warning-setlocale.html
la source
J'avais le même problème. J'avais essayé certaines des solutions ici, mais quand j'ai essayé de lancer
locale-gen
, mon système a dit qu'il ne pouvait pas trouver la commande. Il s'avère que cela fait partie dulocales
package que je n'ai pas installé. Je l'ai donc installé, exécutélocales-gen
et maintenant cela fonctionne!la source
Résolu en permanence avec la création de fichier
Avec contenu
Voir la réponse sur github
la source