Ausgehend von Ihrem "Gefällt mir" -Beispiel gehe ich davon aus, dass Sie gemeint haben, dass Sie sich "rückwärts" statt "vorwärts" bewegen.
Soweit ich weiß, gibt es keinen einfachen Weg, um das zu erreichen, was Sie tun möchten. Sie können den Cursor nicht programmatisch bewegen, es sei denn, Sie simulieren das Drücken der Pfeiltasten auf der Tastatur. Das setzt voraus, dass die Konsole, die Sie verwenden, den Cursor bewegt.
Die nächste Methode, die ich kenne ist die Rücktaste (\b
) zu verwenden, um das „e“, legen Sie die „k“ zu löschen, dann geben Sie den „e“:
Hinweis, nicht \b
nicht immer :.
Es scheint nicht in REPLs zu arbeiten, nur vollständige Konsolen
Es kann nichts gelöscht werden, das vor einem Zeilenumbruch vorlag (\n
). Sobald Sie eine neue Zeile drucken, haben Sie alles in dieser Zeile "gespeichert".
Sie können auch den Systemaufruf „cls“ verwenden den Bildschirm vollständig zu wischen, aber das hat auch eine schlechte Kompatibilität und erfordert, dass Sie alles in dem Feld eintragen, nicht nur die letzten Zeichen.
Sie können nicht "vorwärts" gehen, wenn kein Text zu verschieben ist. Sind Sie sicher, dass Sie nicht nur als Leerzeichen oder Tabs arbeiten möchten? – Carcigenicate
Meinen Sie basierend auf Ihrer Bearbeitung rückwärts? In Ihrem Beispiel müssten Sie das "k" mit "\ b" (dem Rückschrittzeichen) löschen und dann das "e" erneut eingeben. – Carcigenicate
Vielleicht, was er will, ist ein Wagenrücklauf '\ r ', aber ich bin ein bisschen verwirrt durch seine Frage. Und '\ r 'könnte auf einigen Konsolen nicht das erwartete Ergebnis bringen. – Gerhardh