From 6dbad0b10e25acf3d35ef3f72c5910fdfd4d21d1 Mon Sep 17 00:00:00 2001 From: Fabrizio Iannetti Date: Sun, 18 Apr 2021 10:53:04 +0200 Subject: [PATCH] Bug 572938 Terminal: add support for reverse linefeed Scroll up is not working with `less`, `man`, probably other programs. Change-Id: I99d2472ab09df6b79fffbcaa581f3024c44d3ead Signed-off-by: Fabrizio Iannetti --- .../tm/internal/terminal/emulator/VT100Emulator.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/terminal/plugins/org.eclipse.tm.terminal.control/src/org/eclipse/tm/internal/terminal/emulator/VT100Emulator.java b/terminal/plugins/org.eclipse.tm.terminal.control/src/org/eclipse/tm/internal/terminal/emulator/VT100Emulator.java index b82f38fd01f..98327bad6b9 100644 --- a/terminal/plugins/org.eclipse.tm.terminal.control/src/org/eclipse/tm/internal/terminal/emulator/VT100Emulator.java +++ b/terminal/plugins/org.eclipse.tm.terminal.control/src/org/eclipse/tm/internal/terminal/emulator/VT100Emulator.java @@ -395,6 +395,14 @@ public class VT100Emulator implements ControlListener { resetTerminal(); break; + case 'M': + // Reverse line feed + ansiState = ANSISTATE_INITIAL; + if (text.getCursorLine() == 0) + text.scrollDown(1); + moveCursorUp(1); + break; + default: Logger.log("Unsupported escape sequence: escape '" + character + "'"); //$NON-NLS-1$ //$NON-NLS-2$ ansiState = ANSISTATE_INITIAL;