Home > 杂七杂八 > rlwrap方便行编辑

rlwrap方便行编辑

November 25th, 2009 Leave a comment Go to comments

原创文章,转载请注明: 转载自系统技术非业余研究

本文链接地址: 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.

Categories: 杂七杂八 Tags: , ,
  1. litaocheng
    November 25th, 2009 at 10:44 | #1

    以为erlang也是使用的readline呢,哈哈,就知道lua是使用的readline,因为安装的时候,发现的。

    [Reply]

  2. November 27th, 2009 at 14:30 | #2

    erlang为了移植性做出的牺牲, 直接在shell里面实现的行编辑 吃力不讨好。。。

    [Reply]

  3. piboyeliu
    February 1st, 2012 at 21:13 | #3

    新版本的 rlwrap 不能 支持 erl 了, 不知道为什么?

    [Reply]

    Yu Feng Reply:

    我也看看。

    [Reply]

  4. piboyeliu
    February 21st, 2012 at 20:24 | #4

    新版本的要使用 rlwrap -a erl 才可以正确运行

    [Reply]

    Yu Feng Reply:

    谢谢指点。

    [Reply]

  1. No trackbacks yet.