Win32::Console and IRB

I’m using IRB with Wirble and Win32::Console in order to colorize the
output. The coloring works, but whenever I hit backspace, the character
to the left-1 gets eaten. E.g., if I type “test” and hit backspace, I’m
left with “te t” (obviously the last “t” there should have been the
character that got deleted).

I thought this might be caused by Wirble at first, so I disabled this
but the problem persisted. I tried disabling Win32::Console next and
this cleared the problem. So it seems that Win32::Console and IRB aren’t
playing nicely together.

Can anyone suggest a fix to this?

Many thanks,
Charles

Charles R. wrote:

I’m using IRB with Wirble and Win32::Console in order to colorize the
output. The coloring works, but whenever I hit backspace, the character
to the left-1 gets eaten. E.g., if I type “test” and hit backspace, I’m
left with “te t” (obviously the last “t” there should have been the
character that got deleted).

I thought this might be caused by Wirble at first, so I disabled this
but the problem persisted. I tried disabling Win32::Console next and
this cleared the problem. So it seems that Win32::Console and IRB aren’t
playing nicely together.

Can anyone suggest a fix to this?

Many thanks,
Charles

Hello Charles.

The problem is not win32console by itself, but IRB:

irb -f --noreadline

Disabling readline functionality solves the problem, but affects
autocompletion one, which is a bummer

Until someone can came up with a pure-ruby readline library that replace
the buggy C one, I think there is no easy solution.

Sorry for not being more helpful.

Regards,

Luis L.

Luis L. wrote:

The problem is not win32console by itself, but IRB:

irb -f --noreadline

Disabling readline functionality solves the problem, but affects
autocompletion one, which is a bummer

Hi Luis,

Many thanks for this. This solved the problem (I put
IRB.conf[:USE_READLINE] = false in my irbrc). I think I can live without
auto-complete for now. I guess I can always switch between the two
settings, depending on what I needs.

You’re right though, it is a bummer.

Charles