ch_reset(): * Reset the character editor */
| 457 | * Reset the character editor |
| 458 | */ |
| 459 | protected void |
| 460 | ch_reset(EditLine *el, int mclear) |
| 461 | { |
| 462 | el->el_line.cursor = el->el_line.buffer; |
| 463 | el->el_line.lastchar = el->el_line.buffer; |
| 464 | |
| 465 | el->el_chared.c_undo.len = -1; |
| 466 | el->el_chared.c_undo.cursor = 0; |
| 467 | |
| 468 | el->el_chared.c_vcmd.action = NOP; |
| 469 | el->el_chared.c_vcmd.pos = el->el_line.buffer; |
| 470 | |
| 471 | el->el_chared.c_kill.mark = el->el_line.buffer; |
| 472 | |
| 473 | el->el_map.current = el->el_map.key; |
| 474 | |
| 475 | el->el_state.inputmode = MODE_INSERT; /* XXX: save a default */ |
| 476 | el->el_state.doingarg = 0; |
| 477 | el->el_state.metanext = 0; |
| 478 | el->el_state.argument = 1; |
| 479 | el->el_state.lastcmd = ED_UNASSIGNED; |
| 480 | |
| 481 | el->el_history.eventno = 0; |
| 482 | |
| 483 | if (mclear) |
| 484 | ch__clearmacro(el); |
| 485 | } |
| 486 | |
| 487 | private void |
| 488 | ch__clearmacro(EditLine *el) |
no test coverage detected