> this:
> set foldmethod=syntax
> move cursor to an open '{' and type 'zc': "E490: No fold found"
> move cursor to an open '{' and type 'zf': "E350: Cannot create fold with
> current 'foldmethod'"
sounds like a peculiarity of the folding syntax definition.
Alternatively, if you're trying a top-level fold, there might not
actually be a fold there. You can view them more readily by
setting the fold-column width to something non-zero:
:set foldcolumn=3
to view them.
> 1. when I open the file - it is not folded by default
I *think* that the 'foldlevelstart' option controls this,
allowing you to set it to some ridiculously high number like 99.
:help 'foldlevelstart'
Or, if you want (per your later example), you can set it to 1 for
one level of indent.
> 2. I would like to be able to issue a command that folds everything at a
> certain 'depth'
You can manually set it to a certain depth with
:set foldlevel=3
(or whatever level you want), or you can use
zr
zm
to increase/decrease (respectively) the fold level from its
current count (though unfortunately these don't take a prefixed
count of levels to increase/decrease).
:help 'foldlevel'
:help zr
:help zm
> 3. I want vim to remember what lines were folded the last time I was editing
> the file
>
> I'm pretty sure I'm ok with #3 with these lines in .vimrc:
> au BufWinLeave ?* mkview
> au BufWinEnter ?* silent loadview
If that works, no need to mess with it :)
> for #2, here's what I'd like to be able to do:
>
> [php code - before folding]
> class Foo extends Bar
> {
> function __construct()
> {
> //stuff
> }
>
> function method1($arg1,$arg2)
> {
> //stuff
> }
> }
>
>
> do a folding command to collapse everything that's "1 deep"
> class Foo extends Bar
> {
> +--- 4 lines: function __construct()
>
> +--- 4 lines: function method1($arg1,$arg2)
> }
I think (with "let php_folding=1") setting foldlevel=1 will bring
it to this point. You can map this if you do it regularly
:nnoremap <f4> :set foldlevel=1<cr>
or
:nnoremap <f4> zMzr
-tim
--
You received this message from the "vim_use" maillist.
For more information, visit http://www.vim.org/maillist.php
No comments:
Post a Comment