You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A small, portable GNU readline replacement for Linux, Windows and
MacOS which is capable of handling UTF-8 characters. Unlike GNU
readline, which is GPL, this library uses a BSD license and can be
used in any kind of program.
Origin
This replxx implementation is based on the work by
ArangoDB Team and
Salvatore Sanfilippo and
10gen Inc. The goal is to create a zero-config, BSD
licensed, readline replacement usable in Apache2 or BSD licensed
programs.
Features
single-line and multi-line editing mode with the usual key bindings implemented
history handling
completion
syntax highlighting
hints
BSD license source code
Only uses a subset of VT100 escapes (ANSI.SYS compatible)
UTF8 aware
support for Linux, MacOS and Windows
Requirements
To build this library, you will need a C++11-enabled compiler and
some recent version of CMake.
Build instructions
*nix
Create a build directory
mkdir -p build &&cd build
Build the library
cmake -DCMAKE_BUILD_TYPE=Release .. && make
Install the library at the default target location
sudo make install
The default installation location can be adjusted by setting the DESTDIR
variable when invoking make install:
make DESTDIR=/tmp install
Windows
Create a build directory in MS-DOS command prompt
md build
cd build
Generate Visual Studio solution file with cmake
32 bit:
cmake -G "Visual Studio 12 2013" -DCMAKE_BUILD_TYPE=Release ..
64 bit:
cmake -G "Visual Studio 12 2013 Win64" -DCMAKE_BUILD_TYPE=Release ..
Open the generated file replxx.sln in the build subdirectory with Visual Studio.
Tested with...
Linux text only console ($TERM = linux)
Linux KDE terminal application ($TERM = xterm)
Linux xterm ($TERM = xterm)
Linux Buildroot ($TERM = vt100)
Mac OS X iTerm ($TERM = xterm)
Mac OS X default Terminal.app ($TERM = xterm)
OpenBSD 4.5 through an OSX Terminal.app ($TERM = screen)
IBM AIX 6.1
FreeBSD xterm ($TERM = xterm)
ANSI.SYS
Emacs comint mode ($TERM = dumb)
Windows
Please test it everywhere you can and report back!
About
A readline and libedit replacement that supports UTF-8, syntax highlighting, hints and Windows and is BSD licensed.