From 80ab2671fbec8af0eb8830a975d7557ba5d8150c Mon Sep 17 00:00:00 2001 From: Ludovic Apvrille <ludovic.apvrille@telecom-paristech.fr> Date: Wed, 27 Mar 2019 15:12:39 +0100 Subject: [PATCH] Test on DEL --- src/main/java/myutil/Terminal.java | 48 ++++++++++++++++++------------ 1 file changed, 29 insertions(+), 19 deletions(-) diff --git a/src/main/java/myutil/Terminal.java b/src/main/java/myutil/Terminal.java index ca143f6847..a8f7869152 100644 --- a/src/main/java/myutil/Terminal.java +++ b/src/main/java/myutil/Terminal.java @@ -89,6 +89,7 @@ public class Terminal { char x; int val = 0; cursorPosition = 0; + bufferPointer = 0; printPrompt(cpt); @@ -129,29 +130,38 @@ public class Terminal { //UP? if ((sequence.charAt(0) == 91) && (sequence.charAt(1) == 65)) { - //System.out.println("UP"); - delCurrent(currentBuf); - bufferPointer = (bufferPointer > 0) ? bufferPointer - 1 : bufferPointer; - currentBuf = buffer.get(bufferPointer); - //printPrompt(cpt); - myPrint(currentBuf); - cursorPosition = currentBuf.length(); - sequence = null; - val = -1; + if (buffer.size() > 0) { + //System.out.println("UP"); + delCurrent(currentBuf); + bufferPointer = (bufferPointer > 0) ? bufferPointer - 1 : bufferPointer; + currentBuf = buffer.get(bufferPointer); + //printPrompt(cpt); + myPrint(currentBuf); + cursorPosition = currentBuf.length(); + sequence = null; + val = -1; + } else { + sequence = null; + val = -1; + } // DOWN } else if ((sequence.charAt(0) == 91) && (sequence.charAt(1) == 66)) { - - //System.out.println("DOWN"); - delCurrent(currentBuf); - bufferPointer = (bufferPointer == (buffer.size() - 1)) ? bufferPointer : bufferPointer + 1; - currentBuf = buffer.get(bufferPointer); - //printPrompt(cpt); - myPrint(currentBuf); - cursorPosition = currentBuf.length(); - sequence = null; - val = -1; + if (buffer.size() > 0) { + //System.out.println("DOWN"); + delCurrent(currentBuf); + bufferPointer = (bufferPointer == (buffer.size() - 1)) ? bufferPointer : bufferPointer + 1; + currentBuf = buffer.get(bufferPointer); + //printPrompt(cpt); + myPrint(currentBuf); + cursorPosition = currentBuf.length(); + sequence = null; + val = -1; + } else { + sequence = null; + val = -1; + } // BACKWARD -- GitLab