onivim / libvim

libvim: The core Vim editing engine as a minimal C library
https://v2.onivim.io
MIT License
692 stars 34 forks source link

Bugfix: Control+V (insert literal) would hang #138

Closed bryphe closed 5 years ago

bryphe commented 5 years ago

Issue: <C-v> enters a mode where you can insert a literal (by typing in the actual ASCII/Unicode value).

Defect: This entered a blocking input state, causing a hang.

Fix: Refactor the get-literal logic into a state machine, and use the state machine instead of blocking input.

This is the root cause of https://github.com/onivim/oni2/issues/355