web-dev-qa-db-fra.com

Confusion au sujet du pliage vim - comment désactiver?

  1. Lorsque j'ouvre le fichier, il ressemble à ceci: enter image description here ou même ça enter image description here
  2. Lorsque j'ouvre tous les plis, ils se referment lorsque je navigue vers un autre tampon et reviens.
  3. Pour pouvoir travailler avec, je dois appliquer zR à chaque fois lors de l'ouverture d'un buffer.

Je les ai installés dans .vimrc:

set foldlevelstart=99
set foldlevel=99

Veuillez me montrer comment désactiver le pliage, ou au moins faire la navigation vers un autre tampon pour ne pas fermer ceux ouverts.

104
lyuba

Tu n'es pas seul.

set nofoldenable    " disable folding
191
zeuxcg

Le moyen le plus simple de désactiver (et d'activer) le pliage à la volée est zi.

zi est la commande en mode normal qui bascule 'foldenable' , tout comme :set foldenable!.

Mnémonique: "replier i nvert". Voir :h zi .

49
glts

Ajouter set nofoldenable à votre ~/.vimrc pour désactiver le pliage.

44
meagar

Voici un article qui résume brièvement et concis pourquoi le pliage est cool. La raison en est que le pliage facilite la navigation dans de très gros fichiers.

Si vous voulez laisser le pliage activé, et simplement commencer toujours avec tous les plis ouverts, le wiki vim explique comment. La méthode qui vous intéresse serait probablement la méthode de l'autocommande.

" Tweak the event and filetypes matched to your liking. 
" Note, Perl automatically sets foldmethod in the syntax file
autocmd Syntax c,cpp,vim,xml,html,xhtml setlocal foldmethod=syntax
autocmd Syntax c,cpp,vim,xml,html,xhtml,Perl normal zR

Je recommanderais également de rechercher des méthodes de pliage personnalisées pour la langue que vous utilisez. Le simple fait de googler "vim <insérer la langue ici> pliage" devrait faire apparaître un certain nombre d'options. Jouez avec les différentes options jusqu'à ce que vous trouviez une méthode de pliage que vous aimez.

16
cledoux

J'ai ajouté cette ligne à mon .vimrc fichier car j'ai eu le même problème:

autocmd FileType * exe "normal zR"

Cette commande sera exécutée à chaque ouverture automatique d'un fichier. Vous ne verrez donc pas le bug et la fonction de pliage ne sera pas perdue aussi)

4
zinovyev

Il suffit d'en ajouter un de plus pour le compléter jusqu'au point de discussion.

Pour activer le pliage de code:

:set foldenable ou en bref, :set fen

Pour désactiver le pliage de code:

:set nofoldenable ou en bref, :set nofen

Une fois que vous avez activé le repli de code, vous aurez toutes les commandes comme zf,zo etc à votre convenance selon le paramétrage de :set fdm=xxxx où les valeurs typiques sont expr,syntax,manual etc.

2
Loves Probability

Vim rend incroyablement difficile la désactivation du pliage, en particulier lors de l'utilisation de vimdiff.
Aucune des solutions ci-dessus n'a fonctionné pour moi, mais cela a fonctionné (ajouter à ~/.vimrc):

au WinEnter * set nofen
au WinLeave * set nofen
1
Magnus

Désolé, si je réponds à une question connexe, mais j'ai trouvé utile d'afficher deux fichiers avec le pliage désactivé avec quelque chose comme ceci:

vim "+set nofen" -O file1 file2
1
Denis Malinovsky

J'ai mis foldlevel=20, foldlevelstart=20 et j'utilise foldmethod=syntax. Cela m'aide à travailler avec un pliage correct dans vim.

set nofoldenable désactiver le pliage mais parfois j'en ai besoin

vim.wikia

1
idej