vim下unix和dos格式轉換

#本博客已遷移至 [www.0x520.com][1] [1]:http://www.0x520.comvim

好久之前,老式的電傳打字機使用兩個字符來另起新行。一個字符把滑動架移回首位 (稱爲回車, <CR>),另外一個字符把紙上移一行 (稱爲換行, <LF>)。編輯器

當計算機問世之後,存儲器曾經很是昂貴。有些人就認定不必用兩個字符來表示行尾。unix

UNIX 開發者決定他們能夠用 <Line Feed> 一個字符來表示行尾。code

Apple 開發者規定了用 <CR> 。orm

開發 MS-DOS (以及微軟視窗) 的那些傢伙則決定沿用老式的<CR><LF>。開發

那意味着,若是你試圖把一個文件從一種系統移到另外一種系統,那麼你就有換行符方面的麻煩。get

若是你用往日美好的 Vi 來嘗試編輯一個採用 MS-DOS 格式的文件,你將會發現每一行的末尾有個 ^M 字符。(^M 就是 <CR>)。博客

Vim 編輯器能自動識別不一樣文件格式,而且不勞你操心就把事情給辦妥了。選項 'fileformats' 包含各類各樣的格式,Vim 會在編輯一個新文件之初it

嘗試該選項定義得各類格式。form

例如,下面這個命令告訴 Vim 先嚐試用 UNIX 格式,其次, 嘗試

MS-DOS 格式:

:set fileformats=unix,dos

編輯一個文件時,你將注意到 Vim 給出的信息消息報中包括文件所用得格式。若是你編輯的是本地格式文件(你編輯的文件格式和所用系統一致),你就不會看到任何格式名。所以在 Unix 系統上編輯一個 Unix 格式文件不會產生任何關於格式的信息。但你若編輯一個 dos 文件,Vim 將這樣通知你:

"/tmp/test" [dos] 3L, 71C

你能夠用 'fileformat' 選項把文件從一種格式轉換爲另外一種。例如,假定你有個名爲 README.TXT 的 MS-DOS 文件,你要把它轉換成 UNIX 格式。首先編輯這個採用 MS-DOS 格式的文件:

vim README.TXT

Vim 將識別出那是一個 dos 格式文件。如今把這個文件的格式改成 UNIX:

:set fileformat=unix 
:write

或者:

:set ff=unix

這個文件就以 Unix 格式存盤了。

相關文章
相關標籤/搜索