运行OS X 10.6.8 Snow Leopard
我无法将斯堪的纳维亚字母输入解释模式。每次按一下键,终端铃都会响起来,但什么也没有出现。所有字母在常规终端环境中正常显示。在终端、运行python脚本、PyDev和REPL中,输入UTF8字符可以很好地工作
交互模式设置和这些特殊字符是否有问题?在
我已经安装并运行python2.7.3
,但是操作系统提供的python也有这个问题。(例如,当运行python2.5
或python2.6
时,我仍然遇到这个问题。)我不知道安装Python2.7是否改变了它所使用的库下的一些内容,可能是readline
(我在这方面很谨慎,基本上是在猜测)?在
听起来问题是python.org网站Python希望得到真正的
readline
,但对苹果提供的libedit
替代品并不满意。在有关这个问题的解释,请参阅PyPI上的^{} 文档。在
可以按如下方式进行修复:
请注意,
readline
是pip
无法正确安装的少数几个东西之一,因此您必须使用easy_install
(或手动执行)。在在python.org网站2.x安装程序不提供} 页面上的说明安装它。在
easy_install
。按照^{除此之外,请记住,在某些情况下,您可以在
/usr/local/bin
中使用applepythoneasy_install
,也可以使用/usr/bin
,这意味着您不能确定/usr/local/bin/easy_install
会得到python.org
版本,所以显式地使用easy_install-X.Y
。在如果你用的是python.org网站(或其他)安装苹果已经给你的X.Y版本。
/usr/local/bin/easy_install-2.7
很可能是苹果的(就像我现在坐的10.8.2机器上一样)。唯一安全的方法是检查shebang行,看看它使用哪个Python解释器。在或者,更简单地说,如果苹果已经给了你一个python-X.Y,就不要安装它。说真的,有成百上千的问题都来自于那些做过这件事并且有问题的人,而所有这些问题都可以通过使用苹果公司的产品来避免。苹果曾经发布过破损、不完整和/或严重过时的Python,但从10.5或10.6开始,他们一直在发布有效的、完整的、合理的最新版本,包括}。在
easy_install
和{我在“How to define/declare utf-8 code points for Turkish special chars (non-ascii) to use them as standart utf-8 encoding?”上讨论了几乎相同的问题。据我目前所知,这个问题是由于unicode和utf-8中的低效定义造成的。unicode和utf-8中的声明基于字符的显示字体(扩展重音符号、非标准字体)。这在过去可能是令人满意的,但今天的编程要求远远超过了基于ascii的ansi标准,而且目前许多语言的cahrcode声明(具有基于ascii的扩展字符集字母表)在处理编码、转换和测试方面存在问题。在我的问题下,你可以在笔记里找到更多的细节。utf-8被设计成无版本,但我担心非英语拉丁字母需要在新版本的utf-8中重新声明,以便为每个字母提供完整的范围,同时为相同的字符保持相同的字体。在我的理论中,每一个字母表都有它自己的A,具有相对不同的字符代码和代码点,但是所有的A(s)都指向相同的字体代码。因此,当用任何语言显示A时,使用字体代码时,每个A都将小于它的字母表中的任何字符,但ascii z永远不会小于Şşççö或任何重音字符。。。。在
由于您使用的是2.7.3,而10.6没有附带这个版本,显然您已经安装了一些第三方Python。在
如果你看一下Python 2.7.3的download page中的“Mac OS X 64位/32位x86-64/i386安装程序(2.7.3)for Mac OS X 10.6和10.7”安装程序,它会说:
注2:
如果您遵循the link,它将解释10.6附带的Tcl/Tk版本的问题。请注意,在下面的图表中,不建议使用Apple 8.5.7。在
如果您想在10.6上对非applepython使用IDLE,图表建议安装ActiveTcl 8.5.13。在
如果你不能正确地解释一下,在苹果电脑的某些情况下,我能正确地解释一下,在什么情况下,这些字符是用来处理的。在
如果您使用的是不同的Python2.7.3(Enthown、ActiveState、Homebrew、MacPorts、hand-Build等),它们大多没有关于这个问题的完整文档,但是相同的修复方法可能会起作用。在
我相信10.6也是苹果开始发布合理的现代Python版本和空闲工作的时候,所以您可能希望首先使用它而不是第三方Python。(不过,我可能记错了,可能只有10.7及更高版本才是如此。)
相关问题 更多 >
编程相关推荐