2010-10-11 4 views
6

Je travaille avec vim sur ma machine Linux et j'ai besoin de plier le code pour travailler pour R. J'ai le Vim-R-plusing2 installé pour permettre le passage du code de vim dans une session R, mais le le pliage ne fonctionne pas quand foldmethod = syntaxe. Comment puis-je plier pour que R fonctionne?Vim pliage sur la syntaxe pour R

Répondre

6

Que faire:

Vous devez ajouter le code suivant à votre fichier vimrc:

let r_syntax_folding = 1 

Pourquoi ça marche:

Cette option modifie la façon dont l'Vim- R charge des plugins.

Ce code est copié à partir syntax/vim.r et montre comment le réglage ci-dessus changements ce code est exécuté:

" Error 
if exists("g:r_syntax_folding") 
    syn region rRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ transparent contains=ALLBUT,rError,rBraceError,rCurlyError fold 
    syn region rRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ transparent contains=ALLBUT,rError,rBraceError,rParenError fold 
    syn region rRegion matchgroup=Delimiter start=/\[/ matchgroup=Delimiter end=/]/ transparent contains=ALLBUT,rError,rCurlyError,rParenError fold 
else 
    syn region rRegion matchgroup=Delimiter start=/(/ matchgroup=Delimiter end=/)/ transparent contains=ALLBUT,rError,rBraceError,rCurlyError 
    syn region rRegion matchgroup=Delimiter start=/{/ matchgroup=Delimiter end=/}/ transparent contains=ALLBUT,rError,rBraceError,rParenError 
    syn region rRegion matchgroup=Delimiter start=/\[/ matchgroup=Delimiter end=/]/ transparent contains=ALLBUT,rError,rCurlyError,rParenError 
endif 

Je cite l'aide

10,8. Configuration du pli ~

Vim propose plusieurs méthodes de pliage text (voir | fold-methods | et | fold-commands |). Pour activer la syntaxe méthode de pliage pour les fichiers R, mis en votre | vimrc |:

let r_syntax_folding = 1

Avec l'option ci-dessus, Vim chargera R des fichiers avec tous les plis fermé. Si vous préférez commencer éditer des fichiers avec tous plis ouverts, mis dans votre | vimrc |:

+0

ENFIN! Je vous remercie. Ce n'était pas vraiment le problème, mais votre message m'a dit ce qui était. En comparant ce qui était dans votre réponse à ce qui était dans mon code, j'ai trouvé que les lignes 'syn region' omettaient l'option fold à la fin. Donc, le repliement n'a pas été activé pour ces régions. C'est corrigé maintenant. –

1

Quelque chose de similaire, mais se référant à markdown, de toute façon vous pouvez trouver quelques informations utiles là-bas.

Vous pouvez essayer même :help folding pour des descriptions détaillées.

Questions connexes