2011-10-11 41 views
2

我在.inputrc上发现了很多问题,答案包括使用Mac OS X terminal.app的人。完成前缀显示长度不起作用在我的terminal.app

但我已经设置了这个属性,它并没有改变readline的行为。我试过在Ubuntu上的相同.inputrc和它的工作...

是否有一些具体的行动,我应该对terminal.app?

回答

3

嗯,我想我终于破解了它。 我会回答我自己的问题,以供将来参考:

Mac OS X使用editline(libedit的后代有点模仿readline)而不是更常见的readline命令行文本处理程序。

我还在学习editline是如何工作的,但我猜它与readline的.inputrc不是100%兼容的。

所以我的completion-prefix-display-length属性可能不适用于我的OS X版本的editline。

1

这就是它的确。 我做了以下测试来证明我的假设: 我在Mac OS X下编译了readline,然后用我编译的readline lib(通过with-readline tool)运行bash。 它工作正常,所有我的inputrc属性工作,我完成了我的问题。

所以在Mac OS X中,readline被editline(它仍然包含readline.h包含和realine的动态库,但它们是editline的代码)遮蔽。