vim tab設置為4個空格


shiftwidth(縮進的空格數)
說明:指用>>或<<進行縮進的空格數,例如set shiftwidth=20,再按>>就向左移動20個空格的距離.
這20個空格的距離是用tabstop來轉換的,例如tabstop=5,那按>>的結果就是用4個tab來填充.

tabstop(制表符的寬度)
說明:就是一個制表符等於幾個空格.

expandtab(是否在縮進和遇到 Tab 鍵時使用空格替代;使用 noexpandtab 取消設置)

softtabstop(軟制表符寬度,設置為非零數值后使用 Tab 鍵和 Backspace 時光標移動的格數等於該數值,但實際插入的字符仍受 tabstop 和 expandtab 控制);
說明:
例如softtabstop=8,那么按下tab鍵,插入的就是正常的一個制表符;
如果設定 softtabstop=16,那么插入的就是兩個制表符;
如果softtabstop=12,那么插入的就是一個制表符加上4個空格;
如果 softtabstop=4呢?那么一開始,插入的就是4個空格,此時一旦你再按下一次tab,這次的四個空格就會和上次的四個空格組合起來變成一個制表符。
換句話說,softtabstop是“逢8空格進1制表符”,前提是你tabstop=8


autoindent(自動縮進,即每行的縮進值與上一行相等;使用 noautoindent 取消設置)
說明:拷貝粘貼  就在已經縮進的基礎上再縮進,所以就變得很亂.
可以 set noautoindent或者設置 set paste來解決

paste(粘貼模式,會取消所有上述選項的影響來保證后面的操作——通常是從剪貼板粘貼代碼
——保持原有代碼的風格;使用 nopaste 取消設置)

在.vimrc中添加以下代碼后,重啟vim即可實現按TAB產生4個空格:
set ts=4  (注:ts是tabstop的縮寫,設TAB寬4個空格)
set expandtab

對於已保存的文件,可以使用下面的方法進行空格和TAB的替換:
TAB替換為空格:
:set ts=4
:set expandtab
:%retab!

空格替換為TAB
:set ts=4
:set noexpandtab
:%retab!

加!是用於處理非空白字符之后的TAB,即所有的TAB,若不加!,則只處理行首的TAB

 

 
在.vimrc文件中輸入如下文本:
set tabstop=4   設置制表符空格數
set softtabstop=4 
set shiftwidth=4   設置縮進空格數
set noexpandtab  設置不將制表符替換為空格
set nu       設置顯示行號
set autoindent 
set cindent 
 
其中:Tabstop:表示一個 tab 顯示出來是多少個空格的長度,默認 8。 
Softtabstop:表示在編輯模式的時候按退格鍵的時候退回縮進的長度,當使用 expandtab 時特別有用。 
Shiftwidth:表示每一級縮進的長度,一般設置成跟 softtabstop 一樣。 當設置成 expandtab 時,縮進用空格來表示noexpandtab 則是用制表符表示一個縮進。 
Nu:表示顯示行號。 
Autoindent:表示自動縮進。 
Cindent:是特別針對C語言自動縮進。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM