Commit Graph

208 Commits

Author SHA1 Message Date
Nathan VanBenschoten a193146c91 Fix deadlock on rewrite of opHistory when history limit is reached (#69)
It is possible for `opHistory.Rewrite` to be called from
`opHistory.historyUpdatePath`. This is problematic, because both methods
grab a lock, and Mutexes in go are not reentrant. This change pulls out
the logic in Rewrite into `opHistory.rewriteLocked`, and retains the
public facing method.
2016-08-12 10:11:21 +08:00
chzyer c144c8dde4 [readme] update who is using readline 2016-07-29 17:49:00 +08:00
John Cramb a0c5244a21 added fd mutex to prevent data race on history updates with closing the history file (#66) 2016-07-29 11:49:51 +08:00
chzyer 62c6fe6193 update changelog 2016-07-26 21:51:17 +08:00
chzyer c2d777f687 update changelog 2016-07-26 21:49:48 +08:00
aktungmak 47d43db0fd fix #36 vim mode: 'e' moves to the beginning of the next word (#64)
I updated the switch in vim.go to treat 'w' and 'W' differently to 'e' and 'E'.

I then added a method to runebuf.go to provide the logic for that motion.
tested and working.
2016-07-26 21:40:22 +08:00
Jiří Setnička cffdf641d1 Dynamic autocompletion (#60)
* Dynamic autocompletion implemented

Now there is a new item type "PcItemDynamic" which takes function as
parameter.

When it comes to autocomplete at this position, the function is called,
the whole line is given to it (for example if autocompletion depend on
previous autocompleted field) and functio should return possible strings
how to continue.

Example usage:
 * listing some dynamic key-value storage
 * listing files in directory

* Dynamic autocompletion: Updated example

* Dynamic autocompletion: Internal Do() is passing the original full line

To serve it to dynamic autocompletion functions. Previously passed line
was only following segment (which doesn't work).

* Dynamic autocompletion: New dynamic interface added + type assertion in Do function

Do function was split into doInternal with changed declaration and Do
with original declaration.
2016-07-26 21:39:09 +08:00
chzyer dc578a10ae [complete] avoid reach end of line in windows 2016-07-26 21:33:15 +08:00
chzyer f83f3269ca [windows] fix ansi parse by remove channel 2016-07-24 00:39:44 +08:00
chzyer 4f0ff8f850 fix windows compile error 2016-07-22 00:40:16 +08:00
chzyer d478c186fd Fix #62: move dependent package "terminal" to "term" (#65) 2016-07-22 00:31:42 +08:00
chzyer 683bf8ff7c Fix #59 , support HOME/END for <Esc>OH/F 2016-06-21 17:53:53 +08:00
chzyer 3717d7c383 [terminal] fix when only stderr is tty (1>/dev/null) 2016-06-21 17:53:53 +08:00
chzyer b411b0f4b2 fixes: flush chars if got io.EOF without '\n' (#58) 2016-06-19 23:06:37 +08:00
chzyer 03625fbce3 [readme] add who is using readline 2016-05-20 16:49:15 +08:00
Steven Oud 92c174e5fb Add ClearScreen operation on Ctrl+L (#56)
* Add ClearScreen operation on Ctrl+L

* Remove TODO from clear screen in readme

* Don't use external command for ClearScreen

* Remove duplicate ClearScreen function
2016-05-16 17:59:35 +08:00
chzyer 64a71f22be [release] 1.3 2016-05-09 21:28:16 +08:00
Ante Kresic dc15d0f641 [completer] Fix bug which causes integer divide by zero panicking when input buffer is empty (#54)
* [completer] Fixes issue #53

* Changing check to candidateSource
2016-05-09 18:10:47 +08:00
Xavier Damman 8fbe9eac1a Added sponsors (#51) 2016-05-04 01:20:02 +08:00
chzyer dc5da28fbf [history] fix bug that check equals with previous command (#49) 2016-04-21 14:10:50 +08:00
chzyer 1e0917c739 fix typo 2016-04-21 10:06:19 +08:00
chzyer fd07ffef1b update README 2016-04-18 11:38:46 +08:00
chzyer 3ea5940c39 support suspend process (#48)
* support suspend process

* fix suspend in windows

* add comments
2016-04-17 21:05:00 +08:00
chzyer 52d8a65723 [completer] add SegmentAutoComplete 2016-04-12 14:04:56 +08:00
chzyer de49e7f118 [remote] fix test 2016-04-11 01:54:54 +08:00
chzyer d4c46a49e6 [remote] fix remote 2016-04-11 01:46:08 +08:00
Michal Pristas e3e573aa21 Auto complete with space prefixed line (#46)
* auto-complete gets displayed even with space characters prefixing the line

* demo test back to chzyer;
2016-04-08 10:01:57 +08:00
chzyer f2a9cba613 Merge pull request #44 from chzyer/feature/remove_runes_subpackage
Fix #43 , remove sub-package for gopkg compatiblity
2016-04-06 09:33:58 +08:00
chzyer 6cc043de37 Fix #43 , remove sub-package for gopkg compatiblity 2016-04-05 09:55:46 +08:00
chzyer e950f01ab4 [complete] remove debug 2016-04-02 02:01:23 +08:00
chzyer 9d26a3bde6 [complete] fix doSegment 2016-04-02 02:00:16 +08:00
chzyer 4606bfd979 [complete] add segment complete 2016-04-02 01:23:53 +08:00
chzyer d85c8b4802 add readline.Password() 2016-04-01 17:54:50 +08:00
chzyer a5bc4d464a [remote] add a onListen func 2016-03-31 14:20:14 +08:00
chzyer 5652dc7c25 [readline-im] add readme 2016-03-31 11:08:58 +08:00
chzyer 218eb7fff6 [example] Add a IM example 2016-03-31 10:55:53 +08:00
chzyer 91ba4d48f0 Merge pull request #42 from chzyer/bugfix/use_single_again
Fix breaking scroll buffer
2016-03-31 08:06:24 +08:00
chzyer 19657124c7 remove test for SplitByMultiLine 2016-03-31 00:19:18 +08:00
chzyer e5e328dcc7 remove SplitByMultiLine 2016-03-31 00:15:33 +08:00
chzyer b1b67f8632 [runebuffer] use single line 2016-03-30 23:55:12 +08:00
chzyer 30b462e50b Fix #39, remote can raise a EOF error now 2016-03-28 17:37:07 +08:00
chzyer 1e409caaf3 return remain line if interrupt. 2016-03-25 17:08:13 +08:00
chzyer bb5b4af6e7 fix wordbreak to add number 2016-03-25 17:07:55 +08:00
chzyer 4e554e2dd0 fix remote 2016-03-23 17:07:53 +08:00
Chzyer 402307d9c0 Merge pull request #38 from buaazp/master
add SetChildren for prefix completer interface
2016-03-16 18:32:27 +08:00
招牌疯子 3138d3552b add SetChildren for prefix completer interface 2016-03-16 18:03:13 +08:00
chzyer b57eccfd02 add remote mode 2016-03-13 18:32:48 +08:00
Cheney 14e9df7f3c update changelog 2016-03-05 15:48:58 +08:00
Cheney bd7c8c6fbe release 1.2 2016-03-05 15:45:42 +08:00
Cheney 4ae9d7e0fd fix multiline 2016-03-05 15:45:42 +08:00