How to set the default to unfolded when you open a

2019-03-09 15:34发布

In my .vimrc I've put set foldmethod=syntax to enable folding of methods etc. However, I don't like the default that everytime I open a file, the whole thing is folded. Is there a way to enable foldmethod, yet have files unfolded when I open them?

7条回答
Viruses.
2楼-- · 2019-03-09 15:48
set foldlevel=99

should open all folds, regardless of method used for folding. With foldlevel=0 all folded, foldlevel=1 only somes, ... higher numbers will close fewer folds.

查看更多
爷、活的狠高调
3楼-- · 2019-03-09 15:48

You can put this in your .vimrc: au BufRead * normal zR

It declares an automatic command (au), triggered when a buffer is read (BufRead), matching all files (*) and executes the zR (opens all folds) command in normal mode.

查看更多
够拽才男人
4楼-- · 2019-03-09 15:48
set nofoldenable

Adding this to your .vimrc will temporarily disable folding when you open the file, but folds can still be restored with zc

查看更多
再贱就再见
5楼-- · 2019-03-09 15:48

If you want a way to have it display unfolded as soon as it is opened, you can use set foldlevelstart=99 as a lot of answers explained.

But, if you just want to see them unfolded, you can just press zi and it will unfold everything. Another, zi will close them back.

查看更多
放荡不羁爱自由
6楼-- · 2019-03-09 15:55

In .vimrc add an autocmd for BufWinEnter to open all folds automatically like this:

autocmd BufWinEnter * silent! :%foldopen!

That tell vim to execute the silent :%foldopen! after opening BunWinEnter event (see :h BufWinEnter). The silent %foldopen! will execute foldopen on the whole buffer thanks to the % and will open all folds recursively because of the !. Any eventual error message will be suppressed by silent. (You could get error messages like E490: No fold found if the buffer actually didn't contain any fold yet)

Note: You could use BufRead instead of BufWinEnter but then if the file has a modeline that enables the folding that will override this autocmd. I mean BufRead autocmds run before the modeline is processed and BufWinEnter will run them after. I find the later to be more useful

查看更多
成全新的幸福
7楼-- · 2019-03-09 15:55

You could map it to keys to enable it. For example,

nmap ,f :set foldmethod=syntax<CR>

Then while in normal mode hit the ",f" key combination

查看更多
登录 后发表回答