Branch :
| Author | Commit | Date | CI | Message |
|---|---|---|---|---|
| 81f44df6 | 2023-03-27 09:36:31 | Multiplexing: fix line refresh in completion mode. | ||
| a1d8e181 | 2023-03-27 09:21:31 | Multiplexing: make completion non-blocking as well. | ||
| 65db823f | 2023-03-26 23:27:33 | Some documentation and comments updates. | ||
| c9d36d06 | 2023-03-26 22:22:40 | Multiplexing: API refactoring, no TTY support. | ||
| dbfe83bb | 2023-03-26 16:44:29 | Multiplexing: fix refreshMultiLine(). | ||
| c9123ec3 | 2023-03-26 13:23:59 | Multiplexing: hide/show current line. | ||
| 0d66aaca | 2023-03-26 11:04:08 | Multiplexing: code refactored into calls for each step. | ||
| 97d2850a | 2020-03-12 15:51:45 | Use unsigned int instead of uint like rest of code base. | ||
| 8c1c63c5 | 2020-03-12 14:48:36 | Fix compilation in non C99/C11 mode. | ||
| ec5e4e87 | 2020-03-03 08:35:19 | fix masking input when there is no hintsCallback Signed-off-by: lifubang <lifubang@acmcoder.com> | ||
| 4261898b | 2020-03-02 17:06:38 | A few improvements to mask mode. | ||
| 514b09cd | 2020-02-29 12:30:55 | add mask input mode Signed-off-by: lifubang <lifubang@acmcoder.com> | ||
| b12f6ba9 | 2018-02-15 22:38:41 | Set seq to empty string if color/bold not used Otherwise the subsequent abAppend will concatenate whatever junk data is in seq to ab | ||
| c894b9e5 | 2016-07-29 11:25:35 | Fix insecure history file creation. See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=832460. This patch was kindly contributed by Chris Lamb (@lamby). | ||
| 2eb49568 | 2016-04-13 12:19:04 | Clear hints after newline. | ||
| a64257a8 | 2016-04-12 18:44:46 | Hints: when only bold is set, use color 37 (white). | ||
| 24e401c2 | 2016-04-12 18:35:12 | Use sane defaults for hints color and bold. | ||
| ae5f793e | 2016-04-12 18:08:33 | linenoiseFree() API introduced. | ||
| 12a8680d | 2016-04-12 17:59:33 | Hints WIP | ||
| d97e7665 | 2016-04-06 13:40:15 | Copyright info updated. | ||
| 94d9ddb2 | 2016-04-06 13:39:09 | 4096 bytes line limit removed when STDIN is not a tty. | ||
| 80fd0569 | 2015-04-13 09:38:43 | Version 1.0 Linenoise is used in multiple projects for enough time, let's tag this commit with a version number as requested into issue #88, so that we have an initial reference. Given the nature of the library, the version was also added in the linenoise C and header file as well so that it is easy to realize for people having a copy embedded somewhere if they are using the latest version. | ||
| cf1bdf5f | 2014-10-07 15:22:48 | License file added. However the files linenose.c and linenose.h already had inline licenses. | ||
| c1c5a026 | 2014-09-03 11:49:43 | Move to end before return when in multi-line mode. This makes sure that if we are editing in multi-line mode a line that actually spawns across multiple lines, the next output performed by the application using linenoise will not overwrite the edited line. | ||
| 01e723a0 | 2014-09-03 11:38:19 | Replace ESC 999D with CR. OSX default Terminal app does not handle 999D well, the cursor will wrap back to the previous row in the last colum, instead of ignoring the sequence if the cursor is already at the left edge. In order to avoid reintroducing the nG sequence that is not compatible with base VT100 emulation and ANSI.SYS, we use CR that should be hopefully widely supported. | ||
| c84d0a02 | 2014-09-03 10:11:31 | Don't emit ESC [ n C with n=0. This fixes a bug introduced with ANSI.SYS compatibility. When we want to move at a specific column, we need to emit the sequence to move the cursor to the right (after we moved 999 positions to the left) only if we want to actually move right at least 1 position, since a count of zero will still move the cursor one position to the right. | ||
| 471e7546 | 2014-09-03 09:51:29 | Better specify the set of escapes used. | ||
| 0a745fca | 2014-09-03 09:30:32 | Avoid CHA sequence for ANSI.SYS compatibility. Github user @welash proposed a change in issue #73 in order to improve the linenoise compatibility with older terminal emulators only able to deal with a subset of ANSI sequences, notably ANSI.SYS and VT100 terminals strictly able to handle the original set of VT100 escape sequences. In order to improve the compatibility, the CHA sequence was removed and translated to move 999 positions to the left, then move on the right for the desired number of positions. The CHA sequence was apparently added only with VT220, that's why it is not available everywhere. This commit features almost exactly the change proposed in issue #73 with a small fix for a bug in multi-line editing mode introduced by the patch. | ||
| 828b9dac | 2014-09-03 00:02:09 | Remove trailing spaces from source code. | ||
| c86280ed | 2014-03-13 12:40:02 | linenoiseHistoryAdd() reworked + duplicated lines prevented. | ||
| 2a92a4d1 | 2014-03-13 12:27:53 | Check read() return value in getCursorPosition(). | ||
| ca20f8c4 | 2014-03-13 12:25:14 | Support for Home / End keys. Some terminal reports ESC [H and ESC [F, while some other reports ESC OH and ESC OF. We support both but there is at least another variant documented, hopefully no longer. | ||
| 8447b2b0 | 2014-03-13 12:20:11 | Fix right arrow handling. Bug introduced in recent refactoring. | ||
| 9e1c2318 | 2014-03-13 12:04:36 | If ioctl() fails get num of columns querying the terminal. This change makes linenoise both more robust if the ioctl() fails, and far more portable to non POSIX systems, since the ioclt() to query the terminal was probably one of the non trivial parts to replace. The code is inspired to Andreas Kupries commit 24186e99 on the win32 Linenoise port from Steve Bennett, but is a complete reimplementation. | ||
| fb015dab | 2014-03-13 11:08:37 | linenoiseEdit() escapes processing refactor. | ||
| 4115b616 | 2014-03-13 10:30:31 | Compare human readable key codes with chars literals. Many sequences are actually human readable and fall into the printable ASCII subset, they are a lot more recognizable when written as chars compared to numbers. For example up arrow is sent back from the terimal as ESC [A, and so forth. This commit makes the code speak the same "language" that you find in any terminal escape sequences documentation. | ||
| 3e521d47 | 2014-03-13 10:19:07 | linenoisePrintKeyCodes(): show character if printable. | ||
| f698ec47 | 2014-03-13 10:08:39 | Rename Scan codes -> Key codes. What we print in debug mode using the option (now) called --keycodes are not the scan codes, but the key codes returned by the terminal (a more higher level representation of the keys pressed). This commit fixes the word used. | ||
| cb0d0400 | 2014-03-12 23:49:54 | Fix Del key processing + minor cleanup. | ||
| bbcf9bf2 | 2014-03-12 23:38:40 | Scan codes debugging functionality. ./linenoise_example --scancodes | ||
| a05ab23d | 2014-03-12 23:25:27 | Use the two-reads fix for the additional escapes as well. See commit e153bd8 for more information. The gist is that slow terminals may return a short read of 1 byte. | ||
| d5ec9cbb | 2014-03-12 23:10:48 | Arrow scancodes replaced with enums in linenoiseEdit(). | ||
| e153bd83 | 2014-01-06 11:04:02 | Fix escape sequence processing when only one byte available The read call in the escape sequence processing does not handle the case where only the first byte is available. This can happen for example on a slow serial terminal. Comment by @antirez: I reworked the code for brevity, for historical reasons here is the proposed patch. I believe my fix should be functionally equivalent. Original fix: case 27: /* escape sequence */ /* Read the next two bytes representing the escape sequence. */ - if (read(fd,seq,2) == -1) break; + { + ssize_t b = read(fd, seq, 2); + + if (b < 0) break; + + if (b == 1) { + b = read(fd,&seq[1], 1); + if (b != 1) { + break; + } + } + } See PR #47. | ||
| 3cc30b1b | 2014-03-12 16:23:24 | Merge pull request #48 from nickg/emacs Add "emacs" to unsupported_term | ||
| 94cbdd65 | 2014-03-12 16:22:13 | Merge pull request #49 from polch/master_fixes fix linenoiseEdit buflen decreasing. | ||
| ff91a64c | 2014-03-12 16:19:51 | Merge pull request #51 from MartinNowak/const use const char * when modification isn't necessary | ||
| 01cd117f | 2014-03-12 16:18:18 | Don't assume STDIN_FD and STDOUT_FD are interchangeable. | ||
| 49635f1c | 2014-01-16 22:26:24 | Add the key enumeration | ||
| 8ea25f8d | 2014-03-12 15:38:37 | Debugging code cleanup. | ||
| f3a4e062 | 2014-03-12 13:12:29 | Merge branch 'master' of git://github.com/antirez/linenoise | ||
| cbf172f7 | 2014-03-12 13:10:44 | Handle malloc error in linenoiseAddCompletion(). We just don't add the entry on out of memory to avoid to break the API with previous versions of Linenoise. | ||
| aed9d1af | 2014-03-12 13:04:22 | Refresh line with single write to avoid flickering. Escape sequences and actual content to write to the terminal is now accumulated into an heap allocated buffer that is flushed with a single write at the end. This avoids a flickering effect making linenoise more professional looking ;-) | ||
| 5f5cc2ea | 2014-02-21 01:21:13 | fix incorrect type caused issue on 64bit powerpc Signed-off-by: Insop Song <insop.song@gainspeed.com> | ||
| 9031c808 | 2014-01-28 00:53:26 | use const char * when modification isn't necessary | ||
| 3258af5a | 2014-01-15 22:52:18 | fix linenoiseEdit buflen decreasing. | ||
| 4642c1ae | 2014-01-06 11:19:36 | Add "emacs" to unsupported_term The Emacs terminal emulator has its own line editing and does not behave correctly in raw mode. Without this programs using linenoise will hang when run inside an Emacs shell. | ||
| 27a3b4d5 | 2013-02-08 03:33:05 | Merge pull request #31 from fperrad/buildroot fix getColumns() for Buildroot | ||
| 64e109e2 | 2013-02-08 12:18:42 | linenoiseHistorySetMaxLen() was broken and never tested. Fixed. | ||
| 892ec0fe | 2013-02-08 00:12:01 | Completion fixed (broken during refactoring). | ||
| 09ddc709 | 2013-02-07 17:30:49 | Fix to multi-line mode when deleting cross-line with cursor at EOL. | ||
| 16d398e6 | 2013-02-07 16:06:16 | Experimental multi-line editing capabilities. | ||
| 381bdee2 | 2013-02-06 12:49:06 | Update year in copyright notice. | ||
| 0f3b8134 | 2013-02-06 12:41:15 | Escapes dispatching better documented. | ||
| 21447864 | 2013-02-06 12:38:36 | Ctrl-w refactored into linenoiseEditDeletePrevWord(). | ||
| 57b3f761 | 2013-02-06 12:32:42 | Clarified with ctrl-t does in comments. | ||
| 4d166e4f | 2013-02-06 12:28:29 | Backspace functionality refactored into linenoiseEditBackspace() function. | ||
| 9e15fd42 | 2013-02-06 12:20:01 | Delete and ctrl-d refactored into linenoiseEditDelete() | ||
| 62a30cac | 2013-02-06 12:08:19 | Off-by-one overflow fixed. Was a silent bug before refactoring. | ||
| 07fb96da | 2013-02-05 23:01:32 | Refactoring WIP #1: split in functions. | ||
| 93340526 | 2013-02-05 19:51:03 | Refactoring: code split into sections. Chars insertion as a function. | ||
| b7a76cd8 | 2013-02-05 19:34:10 | linenosePrompt() -> linenoiseEdit(). | ||
| 96fd7d41 | 2013-02-05 19:25:08 | All functions commented. | ||
| 5e5b0cf5 | 2013-02-05 18:49:19 | Refactoring: editing state is now a structure. | ||
| fac5a1cb | 2012-10-03 09:33:04 | fix getColumns() for Buildroot same behaviour in ncurses (drv_size() in tinfo/tinfo_driver.c) | ||
| 98ca0397 | 2011-06-30 22:03:46 | Add ctrl-w: delete previous word | ||
| 02d79351 | 2011-03-30 17:08:20 | switched to two-clause simplified BSD license | ||
| 6cdc7758 | 2011-02-22 17:38:49 | Support for ctrl-d deleting the char at right of the cursor added | ||
| 03e8e4da | 2010-12-10 19:21:28 | suppress a warning on Linux adding some truly stupid code | ||
| 7f669091 | 2010-12-01 11:11:55 | Ctrl-l support to clear the screen. New sequences added documented. | ||
| f4508efb | 2010-11-30 11:34:06 | Pieter Noordhuis copyright notice added, since this was a major contribution. README updated. | ||
| 778de19a | 2010-11-29 20:35:20 | Show original buffer when completion is aborted | ||
| 493a5501 | 2010-11-29 18:52:55 | Minimal framework for autocompletion | ||
| 7534b883 | 2010-09-24 17:05:18 | support for delete key, thanks to jgriffiths (on github) | ||
| ce845468 | 2010-07-07 18:26:23 | Support API to save/load history on file | ||
| 28884b52 | 2010-07-07 18:05:11 | Fixed another mem leak | ||
| 42ba034e | 2010-07-07 13:28:26 | enabled debugging symbols in Make, used NULL instead of 0 introduced for a typo | ||
| 6a0775fd | 2010-07-07 13:19:29 | Fixed one memleak, investigating the next one | ||
| aca8b8d3 | 2010-04-30 09:19:04 | Revert to fgets if stdin is not a tty | ||
| 6770cf56 | 2010-03-24 22:13:51 | eterm removed from the blacklist | ||
| 1e32ee64 | 2010-03-24 09:59:34 | support for blacklist terminals, reverting to fgets. | ||
| 9a986552 | 2010-03-23 13:49:32 | now the API to add an history entry has a const argument | ||
| 9c21ea23 | 2010-03-22 19:54:24 | ctrl-t implemented | ||
| c56aa8d1 | 2010-03-22 19:49:56 | supported more emacs bindings, don't wrap history forever but blocks on first and last item | ||
| 2c54c88c | 2010-03-22 17:24:28 | API converted to be readline alike. Ctrl-d behavior fixed. | ||
| 17a7d33e | 2010-03-22 02:55:22 | minor doc update | ||
| 1ef01419 | 2010-03-22 02:30:34 | Ctrl-h problem fixed | ||
| acdf9c7d | 2010-03-22 01:25:21 | More internals documentation | ||
| 353828e0 | 2010-03-22 01:09:25 | references comments updated with more links to escape sequences documentation | ||
| e5dee800 | 2010-03-21 22:27:09 | Fix for an history bug | ||
| 7f4de381 | 2010-03-21 11:10:54 | Ctrl+a and Ctrl+e support |