Commit graph

40 commits

Author SHA1 Message Date
aycabta
db0d850d4e [ruby/reline] Add ed_search_next_history
ca750b676b
2020-04-18 23:12:52 +09:00
aycabta
bea3e31e5f [ruby/reline] Add ed_search_prev_history
e9ae288825
2020-04-18 23:12:52 +09:00
aycabta
1e4efbb6d3 [ruby/reline] Rename wrong test name
8480db575b
2020-04-18 23:11:45 +09:00
Nobuyoshi Nakada
3486a460ea [ruby/reline] Suppress $/ warnings
f4eac8c76f
2020-03-27 19:04:03 +09:00
aycabta
f245fb1ab8 [ruby/reline] Work with wrong $/ value correctly
962ebf5a1b
2020-03-26 17:41:21 +09:00
aycabta
f8ea2860b0 Introduce an abstracted structure about the encoding of Reline
The command prompt on Windows always uses Unicode to take input and print
output but most Reline implementation depends on Encoding.default_external.
This commit introduces an abstracted structure about the encoding of Reline.
2020-01-14 15:40:38 +09:00
aycabta
439e1ccd08 Complete indented and quoted string correctly
def foo
    ''.upca[TAB]

This will be completed to be:

  def foo
  ''.upcase

The indent was gone. This commit fixes the bug.
2020-01-06 01:20:24 +09:00
aycabta
4db898284d Add test_completion_with_indent_and_completer_quote_characters
This is for 8a705245e5.
2019-12-27 16:07:52 +09:00
aycabta
42e2a322f1 The delete-char-or-list shows completed list when called at end of line
It doesn't behave the same as the delete-char.
2019-12-24 18:34:43 +09:00
aycabta
618d091151 Support change search direction 2019-12-17 13:10:39 +09:00
aycabta
a14a0244b4 Support forward-search-history by C-s 2019-12-17 13:07:19 +09:00
aycabta
c2dfc6d869 Show a menu before a document
IRB should show a menu first if a completed list has plural items. But just
shows document without menu if a completed list with plural items includes a
perfect matched item. The behavior is a bug. This commit fixes it.
2019-12-13 08:54:22 +09:00
aycabta
7d991a0571 Suppress to crash IRB if completed list has nil 2019-12-12 08:40:50 +09:00
aycabta
6a22b2a091 Support completion with case-insensitive fashion
Reline performs completion in a case-insensitive fashon if
Readline.completion_case_fold or completion-ignore-case of .inputrc are set
"on".
2019-12-10 07:07:43 +09:00
aycabta
a92560132b Support incremental search by last determined word
In the incremental search by C-r, search word is saved when it's determined. In
the next incremental search by C-r, if a user presses C-r again with the empty
search word, the determined previous search word is used to search.
2019-12-03 01:39:59 +09:00
aycabta
103b04128f Support incremental search again by C-r in incremental search 2019-12-02 04:18:22 +09:00
aycabta
e15b0313a7 Search history to back in the middle of histories 2019-12-02 03:09:41 +09:00
aycabta
7f0d51704a Remove obsolete code 2019-12-02 00:03:59 +09:00
aycabta
8cb3f29abf The ed_search_prev_history should always search to backward 2019-12-01 23:54:57 +09:00
aycabta
fa7618e4c1 Implement em_set_mark and em_exchange_mark 2019-11-15 16:50:40 +09:00
Alan Wu
e9f82585ee Don't crash when deleting at the end of the line
To reproduce this bug, type one character into irb, then press the
delete key on your keyboard.
2019-08-18 07:43:19 +09:00
manga_osyo
04e6b90d5b Remove unused method. 2019-07-15 00:33:16 +09:00
aycabta
02880d1f4a Skip transpose-words if less than 2 word 2019-06-06 04:57:52 +09:00
aycabta
eadc06ba16 Add test_ed_transpose_words_for_mbchar 2019-06-06 04:25:16 +09:00
aycabta
4b7213a85a Implement transpose-words 2019-06-04 07:23:36 +09:00
aycabta
182072b211 The C-q is also quoted insert in emacs mode 2019-06-03 04:17:52 +09:00
aycabta
3428922437 The ed_move_to_beg is different from vi_first_print 2019-06-03 03:29:34 +09:00
aycabta
3f13297923 Remove extra items because Reline::HISTORY is a sized queue 2019-05-29 10:04:58 +09:00
Takashi Kokubun
98ba116d40
Revert 3b7862c8e8 causing various CI hangs
and dependent commits c67934b1c3 and
f0d1dc5cee.

RubyCI and ci.rvm.jp are almost dead by timeout since this commit.

---

Revert "Skip a reline test hanging on Wercker since 3b7862c8e8"

This reverts commit f0d1dc5cee.

Revert "Remove extra items because Reline::HISTORY is a sized queue"

This reverts commit c67934b1c3.

Revert "Use existing instances for LineEditor and Config"

This reverts commit 3b7862c8e8.
2019-05-29 09:05:26 +09:00
aycabta
c67934b1c3 Remove extra items because Reline::HISTORY is a sized queue 2019-05-29 05:58:33 +09:00
aycabta
3b7862c8e8 Use existing instances for LineEditor and Config 2019-05-29 05:53:44 +09:00
aycabta
57b4df07bc Use Reline.completer_quote_characters to complete 2019-05-28 08:38:55 +09:00
aycabta
ca435ed04a Use Reline.test_mode in Reline's test too 2019-05-22 03:12:37 +09:00
aycabta
6d93baaedd Support DEL key 2019-05-21 17:46:41 +09:00
aycabta
1e65196b54 Check encoding when Readline completion 2019-05-14 14:53:34 +09:00
aycabta
bb56b89900 Add ed_search_prev_history to Reline 2019-05-13 01:51:05 +09:00
aycabta
33bce2585f Use LineEditor#reset on test 2019-05-13 00:31:32 +09:00
aycabta
fc57e10569 Revert "Add a test for em_capitol_case of Reline"
This reverts commit b1767e56b1.
2019-05-12 20:43:38 +09:00
aycabta
b1767e56b1 Add a test for em_capitol_case of Reline 2019-05-12 17:25:28 +09:00
aycabta
17350c7e55 Add Reline as a fallback library for Readline
* lib/reine.rb, lib/reline/*: Reline is a readline stdlib compatible
  library.
* lib/readline.rb: Readline uses a fallback to Reline when ext/readline
  doesn't exist.
* tool/sync_default_gems.rb: add ruby/reline as a default gem.
* appveyor.yml: add "set RELINE_TEST_ENCODING=Windows-31J" for test suit
  of Reline, and add "--exclude readline" to "nmake test-all" on Visual
  Studio builds because of strange behavior.
* spec/ruby/library/readline/spec_helper.rb: skip Reline as with
  RbReadline.
2019-04-30 11:44:20 +09:00