Terminal Guide

Delete Character (DCH)

ESC1B[5B amount P50
urxvt
xterm
vte
konsole
linuxvc
amount = 1

Removes amount characters from the current cursor position to the right. The remaining characters are shifted to the left and space from the right margin is filled with spaces.

If the current cursor column is not between the left and right margin it does nothing.

If amount is greater than the remaining number of characters in the scrolling region, it is adjusted down.

In left and right margin mode the margins are respected; lines are only scrolled in the scroll region.

If the cell movement splits a multi cell character that character cleared, by replacing it by spaces, keeping its current attributes.

All the newly cleared space starting from the right margin is colored according to the current SGR state.

Does not change the cursor position.

This unsets the pending wrap state without wrapping.

urxvt ( ✓ )

🛆 If pending wrap state is set, wraps and indexes. 🛆 cells belonging to split multi-cell characters are erased with the SGR state of the first cell of that character.

xterm ( ✓ )

🛆 As of xterm 346 split multi column cells are erased using the current SGR state instead of keeping the background color.

vte ( ✓ )

🛆 vte sometimes colors the whole rest of the line with the current SGR state. (https://gitlab.gnome.org/GNOME/vte/issues/136)

konsole ( ✓ )

🛆 does not reset pending wrap state 🛆 does not clear split multi cell characters.

linuxvc ( ✓ )

🛆 Does not erase split multi cell characters. (linuxvc uses 2 replacement characters for multi cell characters) 🛆 amount = 0 is adjusted to 1.