completion_proc -> Proc | nilRuby 2.7 から[permalink][rdoc][edit]completion_proc=(proc)-
ユーザからの入力を補完するときの候補を取得する Proc オブジェクトを取得/設定します。デフォルトは
nilで、このときは補完を行いません。procは、引数に入力中の単語(カーソル位置までの、Reline.completer_word_break_characters に含まれる文字で区切られた文字列)を受け取り、候補の文字列の配列を返すようにします。 2 個以上の引数を受け取るprocを指定した場合は、第 2 引数に単語より前の文字列が、第 3 引数に単語より後ろの文字列も渡されます。補完は Tab キーの押下で実行されます。 Reline.autocompletion が真のときは、文字の入力のたびに呼ばれて候補がダイアログに表示されます。
- [PARAM]
proc: -
補完候補を取得する Proc オブジェクト、または
nilを指定します。
require 'reline' WORDS = %w(foo foobar foobaz) Reline.completion_proc = proc { |word| WORDS.grep(/\A#{Regexp.quote(word)}/) } while buf = Reline.readline("> ") print("-> ", buf, "\n") end - [PARAM]