Pretty Print json in vim

I hand edit json many times a week. For that reason the vim command for doing a quick pretty printing of json in current buffer usually is muscle memory for me; however I mistyped it twice today, and decided to make a command and a keybinding for it instead. (Even though I will probably forget it in a couple of days, and revert to typing the command by hand).

Nevertheless; here it is if you need it:

function! JsonPrettyPrint()
  %!python -m json.tool
endfunction


noremap <Leader><Leader>jp :call JsonPrettyPrint()<cr>
command! -nargs=0 JsonPretty :call JsonPrettyPrint()

First we define the function, and it is really just a function name wrapping the command that I mistyped today.

Then we bind a key-binding to it; in my case ,,jp

And finally we also make a command that can be called by typing :JsonPretty in normal mode.

Related Posts