rlwrap方便行编辑
November 25th, 2009
原创文章,转载请注明: 转载自系统技术非业余研究
本文链接地址: rlwrap方便行编辑
GNU libreadline 为行编辑提供了统一的接口和方便的编辑能力,在使用中感觉非常爽。但是不是所以的应用程序都使用了readline库来读取用户输入,大部分C程序只是简单的调用fgets。这样的程序在输入的时候非常痛苦。比如erl,为了移植性没用到readline,而是自己实现了类似readline那样的基本的行编辑,但是非常难用,例如不支持CTRL A, CTRL E等等。
这时候rlwrap来救助了。
rlwrap runs the specified command, intercepting user input in order to provide readline’s line editing, persistent history and completion.
简单的说 这个程序就是让不支持readline的程序也可以享用这个库的好处。
在ubuntu下只要简单的 apt-get -y install rlwrap 就安装好了
使用也很简单:
rlwrap cmd
比如 rlwrap erl 这样就可以在erl shell里面以熟悉的emacs按键快速输入,舒服哦。
在linux shell下还可以在.profile里面加入别名, 比如
alias erl='rlwrap erl'
那么就不露神色的修改了erl的行为。
PS. piboyeliu同学说:
新版本的要使用 rlwrap -a erl 才可以正确运行
Post Footer automatically generated by wp-posturl plugin for wordpress.
以为erlang也是使用的readline呢,哈哈,就知道lua是使用的readline,因为安装的时候,发现的。
erlang为了移植性做出的牺牲, 直接在shell里面实现的行编辑 吃力不讨好。。。
新版本的 rlwrap 不能 支持 erl 了, 不知道为什么?
Yu Feng Reply:
February 1st, 2012 at 11:26 pm
我也看看。
新版本的要使用 rlwrap -a erl 才可以正确运行
Yu Feng Reply:
February 22nd, 2012 at 9:44 am
谢谢指点。