EPIC Enhanced Programmable IRC-II Client

set insert_mode

Synopsis

/set insert_mode [on|off|toggle]

Default: on. With no value, set displays the current value. toggle reverses it; other values are rejected as invalid boolean settings.

Description

Controls how ordinary character input behaves in the middle of an editable input line:

At the end of the line, typing appends in either mode. Input is handled as Unicode code points encoded in UTF-8, rather than replacing a fixed number of bytes or terminal columns. A visual character composed of several code points is not necessarily one overwrite unit.

For example, with hello in the input line and the cursor on e, typing X produces hXello with insertion on, or hXllo with insertion off.

Effects and controls

The setting is global across input screens. Changing it leaves existing input text and cursor positions unchanged; it affects subsequent ordinary character insertion and requests status updates. Other operations that replace or edit the input buffer can have their own behavior.

The toggle_insert_mode binding changes this same setting. Its built-in default binding is Tab/Control-I (^I); EPIC also installs the terminal's key_ic sequence when available, commonly the Insert key. Scripts can replace those bindings, so a configured Tab completion action need not toggle insertion.

The %I status field uses status_insert when insertion is on; the overwrite field uses status_overwrite when it is off. Visibility depends on the selected status format and ordinary status-window rules. The setting changes local editing, not IRC server modes, and sends no request.

Example

/set insert_mode off
/set insert_mode toggle

Select overwrite mode, then return to insertion. Use /set insert_mode on to select insertion explicitly.

Source references