Commit Graph

27 Commits

Author SHA1 Message Date
Joachim Nilsson
6a8556733a Add support for disabling default SIGINT and EOF behavior.
This patch adds support for `--disable-eof` and `--disable-sigint` to
the Editline configure script.  With either of these two switches the
`tty_special()` function bypasses the special TTY checks making it
possible to bind Ctrl-C and Ctrl-D to custom callbacks.  This can be
useful if you want to emulate a Cisco style CLI rather than traditional
UNIX.

The user can of course also redefine the VINTR and VEOF special terminal
control characters, but these configure script switches may be easier to
use for some.

Also, the CLI example has been updated to bind Ctrl-D, Ctrl-C and Ctrl-Z
for testing purposes.

Signed-off-by: Joachim Nilsson <troglobit@gmail.com>
2015-04-06 14:53:47 +02:00
Joachim Nilsson
33ffb150f2 Cleanup configure.ac and regenerate default configure files. 2013-07-08 16:47:03 +02:00
Joachim Nilsson
5e9177fd18 Add support for el_bind_key() and example usage binding '?' in examples/cli.c
This changeset refactors el_bind_key_in_metamap() into two functions,
adding el_bind_key(), to provide the ability for the user to bind keys
in both the regular and the meta-key maps.

Several useful, but previously internal, functions have been made global to
facilitate the example code mentioned above. These are likely useful to the
user of this library as well:

  el_print_columns() - Display words in columns across a tty_cols wide screen.
  el_ring_bell()     - Can be used as default key binding function.
  el_find_word()     - Returns a copy of the word at rl_point.
2010-08-05 12:48:51 +02:00
Joachim Nilsson
bdf5384c5b Build examples (tests) as static, for easy debugging. 2010-08-04 02:44:20 +02:00
Joachim Nilsson
d04bdaf38f Add support for read_history(char *filename) and write_history(char *filename) 2010-08-04 02:23:05 +02:00
Joachim Nilsson
dbad0d0871 Minor. 2010-07-25 21:43:41 +02:00
Joachim Nilsson
d4aa5ac293 Minor cleanup 2010-07-24 02:15:18 +02:00
Joachim Nilsson
98b846c8b1 Revert function pointers for rl_complete() and rl_list_possib() introduced in 0.2.2.
Instead merge afd8b4de9dca8ec6afc3 from http://github.com/heimdal/heimdal.git project.
This lets rl_complete() and rl_list_possib() become wrapper functions calling a set of
function pointers, set using rl_set_complete_func() and rl_set_list_possib_funct().

Each wrapper has a fallback to do filename completion, which in turn can be disabled
by leaving out --enable-default-complete from the configure line.

This change, admittedly quite intrusive for a library, is a better implementation in
many ways.  For one it is much more readable, but it also enables further adoption of
other editline forks as well as a simpler implementation of GNU Readline function
pointers rl_completion_entry_function and rl_attempted_completion_function at a later
stage.

My apologies to everyone for whom this change breaks backwards compatibility.  For
help on converting your code, please see examples/cli.c.
2010-07-24 00:50:40 +02:00
Joachim Nilsson
6d2f4c99a3 Add configurable support for using termcap library for terminal size. 2010-07-18 18:57:07 +02:00
Joachim Nilsson
d76ca9f1d6 Update Makefile.in's after last configure.ac change 2010-07-18 12:55:44 +02:00
Joachim Nilsson
4c4a7e808c Make scrollback history (HIST_SIZE) configurable 2010-07-18 05:19:03 +02:00
Joachim Nilsson
2d2ec7db98 Improve GCC warning and error triggers and also improve check of GCC version.
Configure snippets shamelessly stolen from http://www.libusb.org/browser/configure.ac
2010-07-18 02:51:25 +02:00
Joachim Nilsson
3c4cf96bfc More cleanup. Added license blurb to top of all source files.
Remove all old $Id:$ and similar constructs, they don't provide any
additional benefit anymore.

Add configure options for toggling terminal bell and  toying with
SIGSTOP using Ctrl-Z.  Rename config option for ANSI keys to get
a consistent namespace.

Also did some work on ANSI-fication of function definitions, lot's
of that was still lingering around.
2010-07-18 01:41:18 +02:00
Joachim Nilsson
4c9c71faae Cleanup and fix problems found by Sparse. 2010-07-17 22:23:21 +02:00
Joachim Nilsson
cbf276d9ff Make sure local functions are marked static.
Sparse (cgcc) is very picky about such things, which is great.
2010-07-17 22:18:17 +02:00
Joachim Nilsson
722dae35a2 Change mode 0644 on all source files. 2010-07-17 22:08:32 +02:00
Joachim Nilsson
e16f245672 Migrate to libtool and regenerate configure script 2010-07-17 22:00:06 +02:00
Joachim Nilsson
8ff3272698 Add support for automake silent builds 2010-01-16 22:42:21 +01:00
Joachim Nilsson
fc498f305b Change name from Minix editline to just editline. This also affects
the library name, from libedit.a to libeditline.a 

Bump version to 1.13.0 to better illustrate it has the same heritage
as the Debian version.

Import the debian/ directory from editline-1.12-5.

Yes, this is a major changeset. :)
2009-06-14 20:17:10 +02:00
Joachim Nilsson
48465835b8 Add EXTRA_DIST=LICENSE to include missing license file. 2009-04-06 02:30:25 +02:00
Joachim Nilsson
77d483da02 Build fixes when building with GCC v4.3.2 and -W -Wall -Werror 2008-12-02 19:09:17 +01:00
Joachim Nilsson
62e900a061 Change rl_complete() and rl_list_possib() to be function pointers instead.
This is a much cleaner design and also works with or without the configure
--enable-default-complete option.

See the examples for details.
2008-10-02 09:09:09 +02:00
Joachim Nilsson
5c9f0047bb Basic support for custom completion handlers with the two "standard"
rl_complete() and rl_list_possib().  Simply leave out complete.o from
the default build and in all programs require these two functions to
be supplied.

A better alternative would be to use function pointers and check those
for NULL in the running code.  With this code, and no completion handler
the editline code will die.
2008-10-02 01:52:40 +02:00
Joachim Nilsson
06a7f578d5 Minix editline v0.1.3
=====================

Fix another build warning for Arm cross-gcc, which actually was v4.1.2
This time getpid() was missing unistd.h, but kill() was also missing 
signal.h.  Added test for signal.h, but left out unistd.h since we
already define SYS_UNIX -- which we should really check for instead...

The rest are cosmetic prototype or automake/autoconf fixes.
2008-06-09 00:17:48 +02:00
Joachim Nilsson
c76941f24f Fix GCC 3.4.4 warnings about ambigous else, in "else if" construct by
relying on the original indentation.

Change exit(0) to return 0; to kill off warning about "non-void
funtion".
2008-06-08 23:45:07 +02:00
Joachim Nilsson
afb65c0d75 Add standard GNU configure and build system (autoconf+automake).
Enable termio backend in sysunix.c (HAVE_TERMIO_H)

Modify original sources to fit standard macros defined in config.h
2008-06-07 21:03:48 +02:00
Joachim Nilsson
882d443045 New layout. 2008-06-07 17:04:59 +02:00