簡體   English   中英

我應該在VIM中使用什么折疊?

[英]What Fold should I use in VIM?

我通常在VIM中編輯RUBY文件。 我希望方法(def ... end)折疊。 你能幫我定一下折疊語法嗎?

假設您已經使用Ruby語法突出顯示設置和工作,請使用syntax模式進行折疊:

set foldmethod=syntax

這將給你折疊class ... enddef .. end等。

我喜歡在默認情況下折疊所有東西,這里可以讓你調整一大堆與折疊有關的東西。 我主要做Perl和C ++編碼,我覺得它很適合。 折疊和展開映射到空格鍵。

這是我在vimrc中的內容:

  " Folding stuff
  hi Folded guibg=red guifg=Red cterm=bold ctermbg=DarkGrey ctermfg=lightblue
  hi FoldColumn guibg=grey78 gui=Bold guifg=DarkBlue
  set foldcolumn=2
  set foldclose=
  set foldmethod=indent
  set foldnestmax=10
  set foldlevel=0
  set fillchars=vert:\|,fold:\
  set foldminlines=1
 " Toggle fold state between closed and opened.
  "
  " If there is no fold at current line, just moves forward.
  " If it is present, reverse it's state.
  fu! ToggleFold()
     if foldlevel('.') == 0
         normal! l
     else
         if foldclosed('.') < 0
             . foldclose
         else
             . foldopen
         endif
     endif
     echo
  endf

" Map this function to Space key.
  noremap <space> :call ToggleFold()<CR>

我認為你把光標放在第一行然后是zfnj,其中n是要折疊的行數(所以折疊10行你woudl zf10j)。 我認為它也會識別語法,就像在PHP中我做zf}折疊到結束括號。 我不用Ruby編寫代碼,所以我不知道這是否適用於Ruby。

從那時起,要切換,zo將打開,zc將關閉。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM