2016-12-21 2 views
0

В этой программе: https://repl.it/EvM6, io.read() должен приводить к назначению ввода переменной, которая затем печатается на экране. Но появляется нечетная ошибка, которая гласит:Ошибка в Lua Repl.it - ​​Пользовательский ввод не работает правильно

«{" command ":" input "," data ":" foo \ n "," error ":" "}".

Зачем возникает эта ошибка? Есть ли способ исправить это?

ответ

0

Функция io.read() была заменена изготовленной на заказ. Результат, возвращаемый стандартом io.read(), будет отличаться.

Быстрый и грязный способ исправить:

local io_read_orig = io.read 
function io.read() 
    return (
    loadstring(
     "return "..io_read_orig():match[[^{"command":".-","data":(".*"),"error":".*"}$]] 
    )():gsub("\n$","") 
) 
end 

-- By StarBuck 
print("Type something, then press enter.") 
local input = io.read() 
print(input) 
0

это инженер Repl.it. Это было ошибкой в ​​реализации Lua REPL. Теперь это исправлено. Прошу прощения за путаницу.

+0

Спасибо за помощь. Как вам удалось найти этот пост ... – StarBuck

Смежные вопросы