[vi editor] Remove Ctrl-M Char

UNIX treats the end of line differently than other operating systems. Sometimes when editing files in both Windows and UNIX environments, a CTRL-M character is visibly displayed at the end of each line as ^M in vi.

To remove the ^M characters at the end of all lines in vi, use:

:%s/^V^M//g

The ^V is a CONTROL-V character and ^M is a CONTROL-M. When you type this, it will look like this:

:%s/^M//g

In UNIX, you can escape a control character by preceeding it with a CONTROL-V. The :%s is a basic search and replace command in vi. It tells vi to replace the regular expression between the first and second slashes (^M) with the text between the second and third slashes (nothing in this case). The g at the end directs vi to search and replace globally (all occurrences).

[vi editor] Remove Auto Indent

Since VIM 6.0 the indent has been improved so much. But sometimes when we are pasting formated text (source code or HTML etc) into a buffer, VIM indents again so that lines will be padded with too much spaces.

To turn off the indents, just type this command:

:set noautoindent

And it’s disappear like magic..

Imagine, before I know this command, I have to fix the indents on 2000++ line of code using vi..

*sigh*