python - 不能在 ubuntu docker 容器中写 ñ, ä, ë, ü

标签 python ubuntu docker utf-8

我需要能够在 ubuntu docker 容器的控制台中编写 ñ、ä、ë、ü。 我使用以下 dockerfile 创建了我创建容器的图像:

FROM ubuntu:17.10
RUN apt-get update -y
RUN apt-get install locales
RUN locale-gen es_CO.UTF-8 
ENV LANG es_CO.UTF-8 
ENV LANGUAGE es_CO:en 
ENV LC_ALL es_CO.UTF-8

如果我像这样运行 python 脚本:

print("ñ")

ñ 正常打印在控制台中,问题是当我尝试将字母 ñ 作为程序的输入时,当我在键盘上键入 ñ 时,控制台中显示的是 ¤。我已经尝试使用 setxkbmap 重新配置键盘,但我收到一条错误消息:“无法打开显示“默认显示””。

我也试图找到一个已经设置了这个设置的 docker ubuntu 图像,但我没有找到任何一个。请帮忙。

最佳答案

您的终端似乎已正确设置为 UTF-8,并且能够解码 UTF-8 代码。问题一定出在从键盘到终端的通信上。

使用以下内容创建文件 ~/.inputrc:

set input-meta on
set output-meta on
set convert-meta off 
set enable-meta-key on

然后,注销,重新登录,启动一个新的终端,看看它是否工作。

关于python - 不能在 ubuntu docker 容器中写 ñ, ä, ë, ü,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44895381/

相关文章:

python - WebDriverException : Message: Service C:\Program Files\Mozilla Firefox\firefox. exe 通过 Selenium 使用 DesiredCapativity 意外退出

python - Django 测试模块产生这些错误

bash - 如何编写杀死Docker容器的脚本?

mongodb - 使用 Docker 安装旧版本的 MongoDB

python - 为 pandas/matplotlib 设置 xlim,其中索引为字符串

python - Django 中自定义用户模型的 fields.E300 错误

postgresql - 如何在 Ubuntu 16 的 shell 脚本中使用 postgres 用户

linux - Ubuntu 和 Debian 之间的管道大小不同

php - 检测文件从服务器中删除的原因

Docker 容器时区保持为 UTC