sponsor Vim development Vim logo Vim Book Ad

Vim - the ubiquitous text editor

Vim is a highly configurable text editor built to make creating and changing any kind of text very efficient. It is included as "vi" with most UNIX systems and with Apple OS X.

Vim is rock stable and is continuously being developed to become even better. Among its features are:
  • persistent, multi-level undo tree
  • extensive plugin system
  • support for hundreds of programming languages and file formats
  • powerful search and replace
  • integrates with many tools

  News  Vim 9.1.0842 is the current version 

Support for the XDG Base Directory Specification

[2024-04-18] Patch 9.1.327 brings support for the freedesktop XDG Base Directory Specification and has now been merged. A few more adjustments have been made withe following patches: v9.1.0337 and 9.1.345. That means, you can now place your configuration files under ~/.config/vim/ instead of ~/.vim so Vim will stop littering your home directory. Note: To make this change backwards compatible, Vim will only attempt to source from that location, if ~/.vim/vimrc and ~/.vimrc file do not exist. So it won't impact existing users, but users that want to start using the new location, will need to move their existing configuration to the new place. You can also read about it at :h xdg-base-dir. Thanks to all the contributors that help Vim continuing to grow! (Christian Brabandt)

Vim 9.1 is released!

[2024-01-02] The Vim project is happy to announce that Vim 9.1 has finally been released. This release is dedicated to Bram Moolenaar, Vims lead developer for more than 30 years, who suddenly passed away in August 2023. The most notable changes are support for Vim9 classes and objects, smooth scrolling support and virtual text support. And as usual, runtime files have been updated, many bugs have been fixed and potential security relevant fixes have been included. You can find the full announcement here. (Christian Brabandt)

A new Vim.org Homepage

[2023-10-12] The Vim homepage will be renovated by a few students from the FH University Salzburg. Development will happen at a new Github repository. Feedback is very welcome and can happen at the vim_dev mailing list or at the github repository.
See the announcement. (Christian Brabandt)

more news... Get a Vim T-shirt from FreeWear Get a Vim sticker or button Vim items from Japan
Vim power tool

Vim: The power tool for everyone!

See pictures of Bram's latest visit to Uganda on Google Photos.

Read the visit report on the ICCF website.

  Recent Script Updates  5,959 scripts, 18,737,514 downloads 
[2024-11-04]  link.vim : Keep long URLs out of your way
(1.1.0) Support <Plug> mappings - Qad Zek
[2024-11-03]  The ObjectSense Programming Language : An object-oriented reincarnation of VimL
(2.5.26) 1.  Windows platform is supported in this version. 2.  Deprecated Borrow, Borrow! and Import!, use more straight forward constructs by specifying the exact items in Import statement.  Namely, static, variable, constant, and micro.      3.  Introduced table driven test framework - UnitTest, which has more succinct syntax than the counterpart in Go.              4.  Paving ways to speed up Vi... - XO
[2024-11-02]  UnconditionalPaste : Force character-/line-/block-wise paste, regardless of how it was yanked.
(4.40) - CHG: g=p and g==p apply the expression to the whole register contents, not to individual lines. Instead, the expression can now be applied individually to matches of prepended /{pattern}/, or to items separated by ^{pattern}^, or via prepended "." to individual lines. So, to keep the previous behavior, just put a "." before the expression. Because of that change, single lines are not unjoined by... - Ingo Karkat
[2024-11-02]  CmdlineSpecialEdits : Useful replacements of parts of the cmdline.
(1.10) - CHG: Switch <C-G>y to <C-G>Y and add <C-G>y{x} variant that allows to pass the register to yank the command-line to. - BUG: <C-G><C-S> introduces an additional separator if the cursor is before the final substitution separator (i.e. in the replacement part). - ENH: Allow customization of the <C-R><C-V> literal pattern / replacement for custom :Substitute commands and add :SmartCase by default.... - Ingo Karkat
[2024-10-31]  togglecursor : Changes cursor shape in supported terminals.
(0.6.0) Added support for WezTerm and kitty.  Changed tmux escaping to default to off as tmux has long worked correctly out-of-the-box.  Dropped support for g:togglecursor_disable_neovim as it's no longer necessary. - John Szakmeister
more recent | most downloaded | top rated
  Vim Tips
The tips are located on the Vim Tips wiki. This is a platform to exchange tips and tricks from and for Vim users.


If you have questions or remarks about this site, visit the vimonline development pages. Please use this site responsibly.
Questions about Vim should go to the maillist. Help Bram help Uganda.
   
Vim at Github