Posts for: #Vim

notmuch for vim

Quite some time ago now, I tried sup but found it’s indexing latencies unacceptable for my workflow. I also found the user interface a bit foreign and hard to get into.

More recently I’ve found notmuch, a project that started as a C rewrite of the core bits of sup. Basically, it’s a program that indexes and searches through your existing mail.

I had two issues with it.

  • it had an emacs interface, and
  • it uses maildir instead of mailbox.
Read more →

using WIP branches to save every edit

I am experimenting with a new workflow to help solve the problem of lost work between commits. As described [in my previous post]{20091104194146}, there are already several ways to deal with keeping track of frequent edits. The only problem is that they all involve dedication and extra effort.

Read more →

git-vim hacking

I did some hacking on my fork on git-vim. I am impressed how well things work. motemen, the upstream author, did a really great job setting things up.

I’ve been mostly tyoing with command handling and completion this evening. I want to make that I could type :git diff ma<tab> and have it do the rigth thing… it seems to work.

Next, I need to integrate my other git hacks and also others that seem interesting. I should also see if I can get the upstream author to consider including any of it.

Read more →

git-vim

I have had an item on my todo list to improve my [vim/git]{tag/vimgit} integration for a while. Today, I found git-vim on github. I was really impressed. So I forked it and hope to do some work on the project…

    git://git.jukie.net/git-vim.git

First I will have to check if there is anything salvageable from my current vim scripts.

Read more →

vim modelines insecure

I have previously disabled modelines in my vimrc, but had turned them on recently only to learn today that they are subject to another vulnerability.

I’ve seen this before. Enough is enough. :)

Fortunately, this sparked a debate on vim-dev mailing list. One of the outcomes is a vim script that replaces the modeline parser in vim. It is said to be a lot more strict about what it permits as valid modeline components and allows the user to control that in the vimrc.

Read more →

gitdiff.vba v2

I released version 2 of my gitdiff.vba vim script.

It now supports two features:

  • :GITDiff [commitish]

    Split the vim window vertically, display the HEAD, or some other changeset, version of the file in the split, then diff them.

  • :GITChanges [commitish]

    Highlight lines that were changed since the HEAD or some other changeset.

I also started using the VimBall script, which is a package format for vim scripts. So to install it, you need to first have the vimball extension. Further, if you have the GetLatestVimScripts you can use the :GLVS commands to automatically upgrade your packages.

Read more →

vimgrep alias

I’ve been using Solaris recently… since yesterday. First reactions: How can anyone use their command line tools!?

Fortunately the system I was on had zsh and vim.

Here is a macro I use to avoid Solaris grep:

    function vimgrep () { tmp="$@" ; vim -c "vimgrep $tmp | copen" ; }

(I could not figure out a way to do it w/o the tmp variable)

Now you can do things like:

Read more →

mouse-free

First there was a Navigator, then there was an Explorer. Later it was time for a Konqueror. Now it’s time for an Imperator, the VIMperator :)

VIMperator is a mozilla/firefox plugin from Martin Stubenschrott. It completely redefines the firefox interface to mimic the beloved VIM editor.

If you love vim, you are likely to love VIMperator. If not… well, your loss.

Read more →

GITDiff vim plugin

Taking a TODO item off my list, I am adding a plugin to vim that splits the current window and presents a diff between the current file and any revision of that file in the current git repository.

Read more →