vim

Get Rid of '<200e>' Control Characters in VIM

The left-to-right mark character is an invisible control character. If you open up a text file in VIM containing such a character, you will see it as <200e> in Unicode.

If you want to get rid of all occurrences of this control character, you can do:

:%s/<ctrl>+<shift>+u200e<enter>//g

That’s <ctrl>+<shift>+u to enable entering the character by Unicode code points, followed by the actual character code and <enter> key. It will loke like this:

:%s/<200e>//g

However, not all terminals are supported.

Character by Character Diff

I have two very long JSON strings. In a glance, they are the same, but their
MD5 hashes are not. The diff tool is line based, but those two JSON strings
are single line without newline character. So, I really need a tool that can
diff character by character instead of line by line and with highlighting.
What I have found is vimdiff.

Must have vim installed not just vi:

The program 'vimdiff' can be found in the following packages:
 * vim
 * vim-gnome
 * vim-tiny
 * vim-athena
 * vim-gtk
 * vim-nox
Try: sudo apt-get install <selected package>

What I have found out by using vimdiff is that both JSON strings are the
same if converting to objects, but the ordering of properties are different,
which is very difficult to tell by eyeballing.

References: