Howto disable syntax highlighting in Vimdiff

X > Y >> Z

Where X is the population of developers who read this blog, Y is those that use Vim and Z is those that use vimdiff regularly. I guess this post will only be useful to a tiny minority of my readers, but to them it might be the best thing they’ve read all year. (Well, it is 2016, right? It’s been a weird year.)

Vimdiff allows you to open two files in Vim and side by side compare them, pushing changes from one file to another. I’ve been using it as long as I’ve been working on b2/WordPress and even before then too. It’s supremely useful.


Over the years I’ve used many different terminals, with various settings and colour configurations. My vim settings change over time too as I move from one machine to another. Sometimes the colours look ok in Vimdiff, sometimes they don’t. Sometimes the colours are ok for one file type while conflicting in others.
The problem is that Vimdiff has it’s own colours it uses to show what parts of the files are different or missing. Those colours can sometimes hide actual text in the files. I find myself highlighting those lines with SHIFT-V to see the text.

I could pick a different colour scheme but then there’s no guarantee that a different part of text will be hidden by Vimdiff’s colour scheme. The easiest way to fix this is by disabling syntax highlighting completely when in Vimdiff and you do it like this. Open up your ~/.vimrc and add these lines:

if &diff
syntax off

With that in there Vimdiff goes from looking like this to the simplified appearance below.



Ironically, the theme I’m currently using in Vim in the screenshots above isn’t that problematic, but here are two screenshots that show the problem from another machine. In the second screenshot I have highlighted (with SHIFT-V) the line with the function name in the left side. As you can see, the text “function” is still invisible in the right side of the screenshot.

Vimdiff Vimdiff

If you don’t want to edit your .vimrc for whatever reason you can also manually do :set syntax=off from within the editor but you’ll have to do that for each of your files.

All the code above is GPLed WordPress code. Thanks to user hildred on Stackexchange for that one. Hopefully someone else will find this useful.

Somebody to Love

As a joke a few days ago I shared an awful cover of a Queen song on Facebook, so in apology I give you Marc Martel singing the beautiful Queen song, “Somebody to Love”.

And as a bonus here’s an amazing rendition of Nessun Dorma. Wow, just wow.

All this found at the same time I find out that Freddie Mercury’s mother, Jer Bulsara has died at the age of 94. RIP.

Spots at f/22

It might be time to clean the sensor of my camera again. The circles in the photo above are the spots I removed in Lightroom. They’re caused by little specks of dirt or dust on the camera sensor.

Thankfully they’re really only visible when shooting with a closed down aperture like f/22. At f/8 I see nothing! The aperture of a lens describes how big the hole in the lens is that lets light in to the camera sensor or film. Paradoxically, small f numbers are big holes, so f/1.8 lets in lots of light, while f/22 creates a tiny hole and not a lot of light gets through.

Even if you never take the lens off your camera, you might still get spots on your sensor. A zoom lens has bits that go in and out. Air goes in and out and there’s a (tiny) chance that dust will get sucked in. Dust in the lens itself is nothing to worry about as it’ll never show in photos but if you shoot a lot at small apertures like f/22 you can clean your sensor.

It’s actually not that hard to clean the sensor. Last year I wrote a blog post on how to clean your camera sensor including a video and step by step instructions. I’ll probably get around to that this week again. Go have a look if you see spots, or go see a doctor if you’re not looking at a photo at the time …