Привет, ребята, я боролся с автозаполнением и строкой чтения, если у меня есть множество таких опций:
["@lorem", "@ipsum", "#bla", "#meh"]
и я в подсказке ставлю @ (при знаке) и нажимаю TAB, он показывает все варианты:
what do you want? > @[TAB]
@lorem @ipsum #bla #meh
но если я использую любой другой знак, он работает:
what do you want? > #[TAB]
#bla #meh
Это код, который у меня есть до сих пор:
opts = ["@lorem", "@ipsum", "#bla", "#meh"]
question = "whatever? > "
Readline.completion_append_character = " "
Readline.completion_proc = proc { |s| opts.grep( /^#{Regexp.escape(s)}/ ) }
while value = Readline.readline(question, true)
exit if value == 'q'
puts value.chomp.strip
end
end
Кто-нибудь знает, как я могу сообщить Readline о @?