First, I propose that this question be made into a community wiki--can a mod please do this.Next, I'd like to keep answers focused on one of two related but distinct themes: (a) how vim translates to a device with a touch screen, and (b) how vim translates to a device with a small screen. I'd like completely to ignore a related issue (c) consisting of limitations imposed by particular mobile-device operating systems. There are already some tools (some mentioned here) to bring vim to mobile devices, which typically combine ideas (a), (b), and (c); that is, they are efforts to make a small-screen, touch-screen vim on particular mobile platforms. However I think these efforts and answers sometimes miss the point because they conflate which of (a)/(b)/(c) are the issues they try to solve. Vim with a full external keyboard plugged into a jailbroken mobile device with a 4 screen would largely function like any other vim; no further changes would be needed except possibly some zoom feature unavailable in traditional vim. So, I would like vim users to offer their thoughts on what particular adaptations could be made to vim to accommodate (a) touch screens, with on-screen keyboards, and (b) small screens (independent of whether the keyboard is on-screen or external). For a simple example, an answer that seems appropriate regarding issue (a) would be:A major advantage of using vim with a separate keyboard is navigating with the hjkl keys, particularly because these keys are in the home row on a keyboard / are naturally where one's fingers rest when using a keyboard. Since on-screen keyboards do not have a natural resting point for the fingers, there is not an analogous advantage to navigating with keys in a particular row of the keyboard (though there may still be some advantage to navigating with keys all in the same row). Consequently, for a fully operational touch-screen vim to solve the document navigation problem as well as traditional vim, it would need a new paradigm for navigation. Since the natural resting stance for a touch screen is a finger over the screen, a potential navigation solution would be for directional finger motions over the screen to navigate in normal mode.Now please note that I am not claiming that I have offered a correct or great answer in my example, but there are three points about this example that I want to emphasize:It expresses a feature of traditional vim that is a major selling point for vim / a highly desirable feature.It explains precisely why/how the touch-screen paradigm breaks this feature.It proposes a workaround for touch-screens to recover this feature.At the very least, components 1 and 2 are purely factual; while component 3 is subject to some debate, it is at least undebatable that the workaround could work, and ideally via community discussion some understanding of the most promising solutions could be discovered.
What are some ways vim's interface could accommodate small-screen and touch-screen devices?
input devices