The Apple II has an input buffer separate from the screen, with a maximum capacity of 256 characters. Typing a printable character adds it to the buffer and the screen. The left-arrow button removes a character from the input buffer and moves the cursor left. The right arrow adds the character at the cursor position to the input buffer and moves the cursor right.
Hitting the escape key followed by I, J, K, or M will move the cursor up, left, right, or down, respectively, without affecting the input buffer. On the Apple //e, escape followed by arrow keys will do likewise. Press escape again to return to normal typing mode. If one wishes to modify a line of a program, one can use LIST to display it, then use Escape-I and J to move the cursor to the start of the line, hit escape to return to normal typing mode, and then use the right-arrow key to re-enter data from the screen into the input buffer. One can delete data by using escape-K to skip past it without moving it into the buffer, or in many cases one may simply space over it. Because LIST spaces things widely and AppleSoft generally ignores spaces, one can insert a few characters here and there by replacing spaces; larger inserts can be handled by using escape-J to move the cursor left after having imported some text, and then typing the characters to be inserted.
Once upon a time, I write a utility to continuously display the last 40 characters of the input buffer at the top of the screen; I wouldn't be surprised if some such thing exists within the Internet-connected universe.