Free Trial

Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.


There's nothing that hard-core Unix and Linux users are morefanatical about than their text editor. Editors are the subject ofadoration and worship, or of scorn and ridicule, depending uponwhether the topic of discussion is your editor or someoneelse' has been the standard editor for close to 30 years.Popular on Unix and Linux, it has a growing following on Windowssystems, too. Most experienced system administrators citevi as their tool of choice. And since 1986, this book hasbeen the guide for vi.However, Unix systems are not what they were 30 years ago, andneither is this book. While retaining all the valuable features ofprevious editions, the 7th edition of Learning the vi and vimEditors has been expanded to include detailed information onvim, the leading vi clone. vim is thedefault version of vi on most Linux systems and on Mac OSX, and is available for many other operating systems too.With this guide, you learn text editing basics and advanced toolsfor both editors, such as multi-window editing, how to write bothinteractive macros and scripts to extend the editor, and powertools for programmers -- all in the easy-to-follow style that hasmade this book a classic.Learning the vi and vim Editors includes:A complete introduction to text editing with vi:

  • How to move around vi in a hurry

  • Beyond the basics, such as using buffers

  • vi's global search and replacement

  • Advanced editing, including customizing vi andexecuting Unix commands

  • How to make full use of vim:

  • Extended text objects and more powerful regularexpressions

  • Multi-window editing and powerful vim scripts

  • How to make full use of the GUI version of vim, calledgvim

  • vim's enhancements for programmers, such as syntaxhighlighting, folding and extended tags

  • Coverage of three other popular vi clones -- nvi,elvis, and vile -- is also included. You'll findseveral valuable appendixes, including an alphabetical quickreference to both vi and ex mode commands forregular vi and for vim, plus an updated appendixon vi and the Internet.Learning either vi or vim is required knowledgeif you use Linux or Unix, and in either case, reading this book isessential. After reading this book, the choice of editor will beobvious for you too.

Subscriber Reviews

Average Rating: 4.444444444444445 out of 5 rating Based on 9 Ratings

"Terrible Safari Implementation " - by mejwan on 17-APR-2014
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
Cannot see any of the images or diagrams.  Instead, we see broken links. Impacts web client as well as on the iOS readers.  No credit or refund from support, who say they have "notified the content team."  Terrible.
Report as Inappropriate

"If you are new to vi or vim, that’s a good start" - by mko on 23-JAN-2014
Reviewer Rating: 1 star rating2 star rating3 star rating4 star rating5 star rating
vi is probably everywhere. ex, is probably everywhere. On each and every machine, you may be still during installation phase, and it might be that nothing is there, yet, but you will most likely find vi or ex or both.

Anyway, there is a huge chance that you will be either in position where you simply want to learn vi or you will be forced to use it. And then, horror begins. “How the $%^&* can I quit this editor!? Where is menu? Who have invented that?!”. And that’s the place where it is worthy to by some sort of vi related book.

Learning the vi and Vim is a really nice introduction to vi as it brings you form the point where you open a file to edit to the topics as complex as scripting in the editor. What I liked while reading were examples of vi behaviour shown is separate tables. Once you have read how to do something you are shown all the steps again. This, of course, is not shown for each and every command, but for more complex tasks.

Deeper you go into the book, the more complex topics start to pop up. These are key mappings, scripting, executing shell commands, etc. And, suddenly, out of nowhere, description of different vi clones pops up. To be honest, I have completely skipped this chapter, well, maybe not completely, I have gone quickly looking at things that might be of interest for me in context of Vim. Well, the point is, I am pretty sure that I will stick to Vim anyway (as it is mostly available clone). So, as for me, this particular chapter could be removed completely and the book would be still worth reading.

And then, part two begins – the Vim himself. Here, after brief history of the tool the party begins. Starting with command line arguments, configuration files, and all that stuff that helps you start the environment in most desired way. If you use Vim already, you are probably familiar with infinite undos and window mode (editing multiple files at once is possible in Vim if you haven’t heard that yet). Anyway, as I am pure shell like person, I definitely enjoyed description of the windows and scripting, while the section related to gvim was completely needless for me. On the other hand, chapter called “Vim Enhancements for Programmers” is highly suggested for anyone working with the source code in Vim (yes, I use Vim for coding, and gdb for debugging – they rock).

As for the part III – “Other vi Clones”, I simply browsed over it quickly as I was still in the mood for the Vim only.

Anyway, apart from the sections related to the clones I think this book is definitely worth reading. I bet you won’t memorise everything at once – there is too many information here. But you will definitely get more familiar with some less common features of Vim. And just one remark. Do your homework as you read. Open terminal, start Vim and type as you read. It will definitely help you to follow the book.

Report as Inappropriate

Table of Contents



The publisher has provided additional content related to this title.


Visit the catalog page for Learning the vi and Vim Editors, 7th Edition

  • Catalog Page

Visit the errata page for Learning the vi and Vim Editors, 7th Edition

  • Errata