vim的個性化配置- 再談vim的折疊和展開 -- 徹底掌握vim 的展開和折疊!


http://www.wklken.me/posts/2016/02/03/some-vim-configs.html

一般把 設置成 逗號, 是比較好的, 因為逗號比默認的leader \ 要方便鍵入!

有必要使用vim中的折疊! 因為很多時候只需要關注當前的代碼, 其他代碼的展開會嚴重 影響當前代碼的查看和滾動, 所以折疊是很重要, 很實際的操作需求. 只有你經常被某個東西 所折磨的時候 你才會發現它的解決方案有多重要! 例如:折疊!!

徹底掌握vim 的展開和折疊!

  1. vim的折疊必要性! 非常必要, 在簡化頁面, 關注目標代碼的時候非常有用!

  2. vim折疊的方式, 有幾種: manual, indent , marker,...最常用的就是前面這三種! 每一種不同的折疊方式中的 折疊效果是不同的! 所以要根據你的語言來進行 選擇折疊方式

  3. 通常對於web前端的開發, 主要是層級 標簽的縮進顯示, 所以對於html, php等語言頁面, 主要使用 indent的方式進行折疊! 而對於像thinkphp等 后端主要進行代碼的時候, 主要是對函數 類 等進行操作, 這時, 選擇 marker 方式進行折疊! 這里的marker 系統默認的就是 大括號{}, 所以使用marker就很適合

  4. vim的默認 折疊方式 是manual! 所以你要 在 (.)vimrc中, 進行設置: set fdm=indent. 但是注意, 如果設置了非manual的折疊方式時, 如indent, 則手動方式的折疊方式將失效.

  5. 要恢復vim默認的 手動折疊方式, 使用命令: set fdm& (這個&表示去掉配置的 "按位與", 即恢復為默認設置!)

  6. 要折疊時, 首先要創建 折疊: 使用命令: zm, 或zM , 然后后面的所有對 折疊的 操作才會生效!

  7. 主要有這樣一些命令操作: zm/zM, zM表示關閉有遞歸/嵌套的折疊! zr /zR(跟zi的功能類似!) , 表示打開..... 而zi則是在 關閉/打開"所有"所有, 包括有嵌套的折疊在內 折疊之間進行轉換. 而zo 和zc 只是在當前元素的 直接子元素 的展開/折疊.

  8. 設置可視化的 折疊標志: set foldcolumn =4, 或 8. 則會出現 加號或減 號和豎線等符號, 可以使用鼠標進行可視化的 折疊和展開! 要去掉 折疊標識欄: 使用命令: set foldcolumn&

  9. 折疊的含義: 就是只有當前元素 具有 "子元素" 具有層次關系的時候, 才可以折疊, 折疊的時候, 只有 "子元素" 會被 折疊~ 而父元素 是不會被折疊的, 折疊的時候, 顯示的是: +--- 折疊的行數 +折疊開始處的內容: ....


關於折疊的跳轉

  1. [z, ]z命令, 是在一個打開的折疊 的開始處和 結尾處 兩者來回 跳轉. (注意是, 同一個折疊內)
  2. 而zj, zk 則是如果 現在有多個 折疊, 則在這些 "多個" 折疊之間 進行移動!

折疊, 到底是折疊的哪些內容?

當然是折疊當前行所在的內容. 如果當前行同級的有多個, 則都會被折疊. 如果當前行 是包含子內容的標簽, 則整個標簽都會被 折疊.
折疊時, 當前行/及其子內容, 都將被折疊隱藏 , 顯示為綠色和 虛線的樣式.


免責聲明!

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



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