ncurses para shell externo e de volta mexendo com chaves

Eu tenho este aplicativo ncurses que está fazendo a receita padrão para abandonar temporariamente ncurses, executando um editor externo / shell / whatever e, em seguida, caindo de volta para ncurses quando estiver pronto.

Isso quase funciona, exceto que os primeiros pressionamentos de tecla que as ncurses obtêm depois são obviamente falsos; ncurses pensa ^ [e A são vistos respectivamente se eu pressionar a seta para cima duas vezes.

Alguém já viu esse comportamento antes e sabe o que é a mágica para consertar isso? Se isso ajudar, esta é a biblioteca ncurses do Ruby.

questionAnswers(2)

yourAnswerToTheQuestion