Как включить сворачивание ключевых слов системного Verilog в Gvim? Например
function
Code
....
....
endfunction
Я хотел бы, чтобы Gvim создал складку от функции к конечной функции. Как я могу это сделать ?
Как включить сворачивание ключевых слов системного Verilog в Gvim? Например
function
Code
....
....
endfunction
Я хотел бы, чтобы Gvim создал складку от функции к конечной функции. Как я могу это сделать ?
Вот пользовательское выражение foldexpression, которое должно делать то, что вы хотите. Он начинает сгиб со строки, следующей за каждой «функцией», и заканчивает его на строке, предшествующей каждой «конечной функции», а в противном случае наследует уровень сгиба предыдущей строки.
function! VimFunctionFoldExpr()
if getline(v:lnum-1) =~ '^\s*function'
return '>1'
elseif getline(v:lnum+1) =~ '^\s*endfunction'
return '<1'
else
return '='
endif
endfunction
Чтобы Vim использовал эту функцию, установите следующее:
set foldmethod=expr
set foldexpr=VimFunctionFoldExpr()
Вы также можете настроить параметр foldtext, чтобы он соответствовал уровню намерения. Вот вопрос SE о том, как это сделать.
{
}
?
- person Jean; 18.07.2013