在 Debian 上,我可以使用依赖包来locales-all
确保所有语言环境都已安装/可用。Ubuntu 中没有这样的包。
以前belocs-locales-*
似乎也有类似功能;或者,人们可以依赖各种本地化包(例如,对于大部分西欧地区,仅de
+ en
+ fr
,但用处有限;有时,软件确实需要所有标准区域设置)。据我所知,这些包在 hardy 和 precise 之间消失了。
那么,我可以使用哪个 Ubuntu 软件包Depends
来使用所有语言环境?
编辑:这是不是与软件包相同locales
,软件包仅提供生成区域设置所需的数据文件;只需locales-all
在 Debian 中安装软件包即可立即使用所有这些区域设置。(在最近的版本中,它包含一个包,也节省了大量空间。)这样,用户就不必担心(意外地)禁用必要的区域设置。
答案1
我找到了以下解决方案https://docs.moodle.org/dev/Table_of_locales
sudo ln -s /usr/share/i18n/SUPPORTED /var/lib/locales/supported.d/all
sudo locale-gen
答案2
除非我理解错了,否则这就是locales
现在。
这是任务要求的一部分minimal^
,也是ubuntu-minimal
直接的,所以这应该总是安装。你不需要依赖任何东西来保证它的存在,但是如果你需要某物、选择ubuntu-minimal
或其他您需要的东西也依赖于ubuntu-minimal
。这是一个非常合理的默认值。
看着Debian 的内容locales-all
我可以看到很多这样的文件不是在标准 Ubuntulocales
包中(参见dpkg -L locales
):
/usr/lib/locale/am_ET/LC_ADDRESS
/usr/lib/locale/am_ET/LC_COLLATE
/usr/lib/locale/am_ET/LC_CTYPE
/usr/lib/locale/am_ET/LC_IDENTIFICATION
/usr/lib/locale/am_ET/LC_MEASUREMENT
/usr/lib/locale/am_ET/LC_MESSAGES/SYS_LC_MESSAGES
/usr/lib/locale/am_ET/LC_MONETARY
/usr/lib/locale/am_ET/LC_NAME
/usr/lib/locale/am_ET/LC_NUMERIC
/usr/lib/locale/am_ET/LC_PAPER
/usr/lib/locale/am_ET/LC_TELEPHONE
/usr/lib/locale/am_ET/LC_TIME
我在 packages.ubuntu.com 上搜索类似文件找不到任何文件。这意味着它们要么没有打包,要么名称完全不同,要么在安装时提取(罕见但可能)。
我能看到的唯一例外是libc-bin
into安装的语言环境/usr/lib/locale/C.UTF-8/
。
哦,我可能已经成功提取了。该locales
软件包包含一个locale-gen
可以生成此类文件的应用程序。请参阅有关语言环境的更多信息,请参阅 wiki。
答案3
我知道这是一个老问题,但是您是否尝试过通过 apt-get 安装所有语言包?我可以解决类似的问题,即我需要在服务器中使用许多不同的语言环境,并通过运行解决该问题sudo apt-get install language-pack-*
。它下载了所有文件(解压完成后约 2GB)并生成了所有可用的语言环境。