
こんにちは、阿部といいます。 昨日メールを登録していないアカウントから送信してしまい弾かれて しまったようです。重複して受け取った方がいれば申し訳ありません。 Ubuntu 22.04のruby packageはibeditとリンクしていたので、 ruby-3.0.6.tar.gz から --enable-libedit付きでコンパイルしてみた ところ再現しました。 Ubuntu 23.10のruby packageもlibeditを使用していますが、再現しません。 ruby-3.2.2.tar.gz の ext/readline/readline.c と比較すると prepare_readline(); 行の有無だけが違うようでしたので原因は 3.0系のコードが古いことだろうと思います。 Ubuntu 22.04を使う前提であれば、snapで配布されているrubyをインストール (snap install --classic ruby) して、/snap/bin/ruby を使うのが良いかもしれません。 On 2023/10/31 9:20, 大城 尚紀 via ruby-list wrote:
こんにちは。興味があったので試してみました。別OSですが、AlmaLinux 9.2だ とRuby 3.0.4でreadlineが使えるようでした。
ご参考までにお送りします。
$ cat /etc/redhat-release AlmaLinux release 9.2 (Turquoise Kodkod) $ ruby -v -r readline -e 'puts "readline #{Readline::VERSION}"' ruby 3.0.4p208 (2022-04-12 revision 3fa771dded) [x86_64-linux] readline 8.1
$ ruby readline-test.rb 項目を選んでEnter aaa bbb ccc dddd ee
dddd "dddd"
2023年10月30日(月) 11:35 konami via ruby-list <ruby-list@ml.ruby-lang.org <mailto:ruby-list@ml.ruby-lang.org>>:
小川さん
レポートをありがとうございます。問題の切り分けができて助かります。
OSはどちらも Ubuntu 22.04.3 LTS ですので謎が深まりますが, 仕事が詰まっていますので,時間ができたら調べてみることにします。
小波秀雄
On 2023/10/30 11:00, OGAWA KenIchi via ruby-list wrote: > 小川と申します。 > >> Ruby 2.7 と 3.0 の仕様変更でこうなっているのかどうか。2.7 >> でできたことを3.0で可能にする方法 >> がないのかと気になっています。ご存知の方がおられたら教えていただ けるとうれしいです。 > 私の手元の環境では、Rubyの3.0.2を使って示されていたコードが正しく 動作し > ました。なので、仕様変更というわけではないと思います。 > > 原因はわかりませんが、システムの libreadline.so に問題がある可能 性はある > のかなと思いました。 >
-- ---- Yasuhiro ABE e-mail: yasu@yasundial.org, yadiary@gmail.com twitter: http://twitter.com/YasuhiroABE