vim的代碼折疊:設置默認代碼不折疊


有時候看代碼時,代碼太長看着不方便,特別是閱讀源碼時,需要把不關心的代碼先折疊起來,看自己當前最關注的代碼。vim中自帶了代碼折疊功能。

配置foldmethod可以定義折疊方式,有6種可選方式:
 
1. manual //手工定義折疊
2. indent //用縮進表示折疊
3. expr  //用表達式來定義折疊
4. syntax //用語法高亮來定義折疊
5. diff   //對沒有更改的文本進行折疊
6. marker //用標志折疊
 
我選用syntax來定義折疊,這種方式比較簡單,但是當配置完這個值后,你打開代碼,就會發現vim默認把所有代碼都折疊了,這顯然不是我想要的,google一番后找到辦法,設置 foldlevelstart為99后,打開默認沒有折疊。
 
配置:
 
"使用語法高亮定義代碼折疊
set foldmethod=syntax
"打開文件是默認不折疊代碼
set foldlevelstart=99
 

配置完后就可以在方法上,類上,if-else上,各種迭代器上,你想得到的塊上敲入折疊命令,這里提供最簡單的折疊命令:
zc 關閉折疊
zo 打開折疊
za 打開/關閉折疊互相切換
 
 
 
我的代碼折疊的完整配置:
 
set foldenable              " 開始折疊
set foldmethod=syntax " 設置語法折疊
set foldcolumn=0 " 設置折疊區域的寬度
setlocal foldlevel=1 " 設置折疊層數為
set foldlevelstart=99 " 打開文件是默認不折疊代碼

"set foldclose=all " 設置為自動關閉折疊
nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>
" 用空格鍵來開關折疊


 


免責聲明!

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



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