Tip: vi Configuration

Post from May 25, 2008 (↻ August 2, 2022), filed under  (feed).

This and many other posts are also available as a pretty, well-behaved ebook: On Web Development.

Long story short: It’s easy to modify the vi editor’s standard configuration. The most useful changes probably relate to encoding (UTF-8) and display of line numbers. In order to do that, go to your home directory (enter cd), create a file called .exrc (or, for Vim, .vimrc) unless it already exists (enter vi .exrc, press i or a, paste the following, and save by pressing esc and entering :wq):

:set encoding=utf-8
:set number

That’s it. If you’re interested in additional options, perhaps have a look at a vi cheatsheet (PDF). It includes additional :set parameters (you can enter these in command mode, too). Or check out a book about vi—yes, the editor infamously, “unofficially pronounced ‘six’ because of the feeling one gets when using vi that it may be the text editor of the antichrist.”

Update (February 17, 2013)

Here’s my vi configuration, a few years later:

:set encoding=utf-8
:set number
:syntax on

This also enables syntax highlighting.

Toot or tweet about this?

About Me

Jens Oliver Meiert, on September 30, 2021.

I’m Jens, and I’m an engineering lead and author. I’ve worked as a technical lead for Google, I’m close to W3C and WHATWG, and I write and review books for O’Reilly. I love trying things, sometimes including philosophy, art, and adventure. Here on meiert.com I share some of my views and experiences.

If you have a question or suggestion about what I write, please leave a comment (if available) or a message. Thank you!

Comments (Closed)

  1. On May 25, 2008, 20:36 CEST, Jens Nedal said:

    So there we have another vi user 😎
    In our current work configuration which involves a team of 4 in the programming department, mostly PHP but also some Java and ofcourse the usual standards and accessbility compliant frontend output in HTML, CSS and Javascript/AJAX, 3 of us use vim as our chosen editor in a Windows environment and ofcourse also when working form the console.

    We do have a heavily configured .vimrc with various settings, like some autocompletion for function commentaries, which help keeping the phpdoc tree nice and clean and some other nifty stuff.

    Before i ever used vi i usually tagged along with some editors that had decent highlighting.

    vi is just very powerful and once you get around the “quirk” of only using keyboard commands for everything but marking text with your mouse, it is absolutly worthwhile and i would never move away from it again ever.

  2. On May 27, 2008, 9:42 CEST, Jens Oliver Meiert said:

    Jens, yeah, vi is a usability nightmare but still awesome 😊 Love to see your vim settings!

  3. On June 8, 2008, 18:58 CEST, Martin said:

    Why not use vim, that’s basically the same, just with more features, such as tabbed editing, etc.

    In that case, the configuration file’s called .vimrc.

  4. On June 9, 2008, 19:39 CEST, Jens Oliver Meiert said:

    Martin, please correct me but it seems vi is available on more systems than vim. (I like that it’s so widespread.)

    A brief addition, to use n spaces for indentation (instead of Tab), add the following lines (here using 2 spaces):

    :set expandtab
    :set tabstop=2