Feature #5785
closedReadline に pre_input_hook, insert_text, redisplay を追加
Added by nagachika (Tomoyuki Chikanaga) about 13 years ago. Updated over 12 years ago.
Description
拡張ライブラリ readline で補完時の処理をカスタマイズするため rl_pre_input_hook, rl_insert_text, rl_redisplay をサポートして欲しいです。
叩き台としてパッチを添付します。
Files
readline_pre_input_hook.patch (6.31 KB) readline_pre_input_hook.patch | nagachika (Tomoyuki Chikanaga), 12/21/2011 06:39 PM | ||
readline_pre_input_hook2.patch (6.45 KB) readline_pre_input_hook2.patch | nagachika (Tomoyuki Chikanaga), 01/12/2012 11:27 AM |
Updated by nagachika (Tomoyuki Chikanaga) almost 13 years ago
trunk の変更でパッチがあたらなくなっていたので udpate したものを再度添付します。
Updated by shyouhei (Shyouhei Urabe) almost 13 years ago
- Status changed from Open to Assigned
Updated by kouji (Kouji Takao) over 12 years ago
- Status changed from Assigned to Closed
Updated by kouji (Kouji Takao) over 12 years ago
- Status changed from Closed to Rejected
Updated by kouji (Kouji Takao) over 12 years ago
- Due date set to 05/02/2012
- Status changed from Rejected to Assigned
- Target version set to 2.0.0
すみません。#1823にコメントするつもりが間違ってこちらにコメントしてしまいました。
さっさと、これを実装します。
パッチをいただき、ありがとうございます。
Updated by kouji (Kouji Takao) over 12 years ago
- Status changed from Assigned to Closed
- % Done changed from 0 to 100
This issue was solved with changeset r35513.
Tomoyuki, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
- ext/readline/readline.c (Readline.pre_input_hook)
(Readline.insert_text, Readline.redisplay): new function. An
original patch was created by nagachika. [Feature #5785]
Updated by kouji (Kouji Takao) over 12 years ago
少し補足します。
オリジナルのパッチから以下の修正をしています。
- ユニットテストのtest_modify_text_in_pre_input_hookの出力結果(stdout.read)の期待値を"> hello world\n"に修正しました。
- rl_pre_insert_hookのsetterとgetterの名前はReadline.pre_insert_hookにしました。
- RDocを記述しました。
以上です。
なにわともあれパッチを提供いただきありがとうございました。
何か問題がありましたら、遠慮なくレポートしてください。
Updated by naruse (Yui NARUSE) over 12 years ago
- Status changed from Closed to Assigned
kouji (Kouji Takao) wrote:
This issue was solved with changeset r35513.
Tomoyuki, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
- ext/readline/readline.c (Readline.pre_input_hook)
(Readline.insert_text, Readline.redisplay): new function. An
original patch was created by nagachika. [Feature #5785]
このコミット以降、boron にて以下のようにテストに失敗しています。
- ) Failure:
+test_modify_text_in_pre_input_hook(TestReadline) [/extdisk/chkbuild/chkbuild/tmp/build//ruby/test/readline/test_readline.rb:386]:
+<"> hello world\n"> expected but was
+<"> ">.
http://www.rubyist.net/~akr/chkbuild/debian/ruby-trunk/log/20120501T132800Z.diff.html.gz
boron (Debian squeeze 6.0.4) は Readline 4.3 を使っているのですが、これだと
naruse@boron:~/ruby$ ./ruby -rreadline -e'Readline.input=open("version.h");Readline.readline("> ")'
のようにエコーバックされず、6.1 とかだと、
% ./ruby -rreadline -e'Readline.input=open("/home/naruse/ruby/version.h");Readline.readline("> ")'
#define RUBY_VERSION "2.0.0"
と、入力が表示されるようです。
Updated by naruse (Yui NARUSE) over 12 years ago
- Status changed from Assigned to Closed
This issue was solved with changeset r36131.
Tomoyuki, thank you for reporting this issue.
Your contribution to Ruby is greatly appreciated.
May Ruby be with you.
Skip Readline 4.3. [Feature #5785]