knz / go-libedit

Go wrapper around the BSD libedit replacement to GNU readline
Apache License 2.0
6 stars 6 forks source link

go-libedit

Go wrapper around libedit, a replacement to GNU readline using the BSD license.

travis

How to use:

How to force using the system-wide libedit on GNU/Linux

By default, the go-libedit package uses the bundled libedit sources on GNU/Linux, so that go get works out of the box.

To force the package to use a system-wide libedit instead, edit unix/editline_unix.go as follows:

macOS/OSX due to restrictions due to changes macOS Mojave

macOS Mojave is shipped with a broken/restricted libedit where the completion API is not published. Because it is not possible to automatically detect macOS versions, go-libedit will use a reduced autocompletion facility on all versions of macOS instead.

This autocompletion facility lacks the following features from libedit:

How to refresh the bundled libedit sources

(Only needed when upgrading the bundled libedit to a newer version.)

This procedure should be ran on a Debian/Ubuntu system.

  1. ensure that /etc/apt/sources.list contains source repositories, i.e. the deb-src lines are uncommented. Run apt-get update as necessary.
  2. run:

    $ sudo apt-get install libbsd libbsd-dev libncurses-dev`
    $ cd src
    $ bash refresh.sh