Editor Wars: Why emacs and vi present a steep learning curve

Editor Wars: Why emacs and vi present a steep learning curve

Ever wonder if there was a historic reason why emacs and vi cause the brains of most beginners to melt?

emacs and vi were used on machines that had different keyboard layouts than the modern IBM design on all our recent computers. 

The keyboard used by the designers of emacs had meta (outside of ctrl), rather than the painful alt (inside of ctrl). Most emacs users rebind ctrl to caps lock nowadays, it's way easier on your fingers and wrists. Also the math symbols were used to type APL, a programming language based on math symbols:

The keyboard used by the designer of vi had Esc next to Q and arrows printed on hjkl:

Both have an arcane learning curve yet once you went through the struggle to learn they are far superior to any modern input system. Most people are also unlikely to switch between the 2 once they mastered one of them (the learning curve might be main reason) which has led to users of the 2 camps becoming quite activist when it comes to defending the superiority of their chosen environment.

Main reason I prefer vi is probably that it took me ages to master it and even after 18 years I still pick up new tricks from people across the web. Also by the time my colleagues were still configuring their "perfect keyboard bindings", us vi users have pushed the code to production and are on the way to the pub where we celebrate by singing vi songs :-)

cover image courtesy of @andrewcodes

Quinten C.

Cyber Security MSc student at Radboud University

2 年

Just map esc to caps and never look back

回复
Fabio Mayoral

Software Architect for Embedded Systems

9 年

Perhaps there weren't any arrows available at the time.

回复

as a vim user, i knew the part of vi, then another question is, why the keyboard designer decide to get those arrow keys on hjkl? only for convenient or something else?

I don't get this at all. I found vi surprisingly easy to learn, once I adjusted to the concept of a modal editor. I came to vi from a mainframe environment using the TSO editor (well-suited to fixed-format entry, such as for COBOL programs and JCL) but also having used WordStar, Xedit, etc. The basics can be learned in a few hours, and a "cheat sheet" can be used for less-frequent functions. It also helps that the search and replace commands parallel those used in sed.

要查看或添加评论,请登录

Joachim Bauernberger的更多文章

社区洞察

其他会员也浏览了