3 ms·
Cursors are one of the most useful conceptual abstractions for information processing. Besides the concrete aspects of position and seriality, they form the bui
by megameter 5y ago
Cursors are one of the most useful conceptual abstractions for information processing. Besides the concrete aspects of position and seriality, they form the building block of stateful selections which is a must-have for non-linear editing. Text editing feels fluid because the cursor is pretty smart at going where you want to be - or in the case of vi, it's good at being precise and explicit in skilled hands. I often start defining problems around editing tasks in terms of what cursors and selection are going to look like.
One of the things that I think gets lost easily in graphical interfaces is the cursor; it turns into some kind of ad-hoc mix of mouse pointer, "keyboard focus", touch inputs, IME, viewport state and other things filtered and shaped into some sort of behavior that depends entirely on the application code. These UIs have to be super-smart to work well, and they can be mostly consistent in the average case, but it's also unviable to automate them without great effort.