2013-06-14 1 views
0

Bonjour je suis codage R et voudrais être en mesure de plier la fonction En fonction de code RI comme ceci:comment écrire une fonction de plier certains modèles

myFnName <- function(some, args){ 
    #some description or not 
    some code 
} 

Ma question est de savoir comment puis-je coder une fonction cela va remplir la fonction comme automatiquement en appuyant sur une touche même à l'intérieur de la fonction. Je sais que je peux mettre fdm=manual mais je dois le faire sur les 100 de la fonction que j'ai.

myFnName <- function(some, args){ 
+---------------- 
+0

Avez-vous essayé '? – romainl

+0

bien sûr que je l'ai fait, et ça n'a pas marché ... – statquant

Répondre

1

Qu'est-ce qui "n'a pas fonctionné" avec indent? Mais les deux méthodes ne prennent pas en compte les commentaires, donc ils ne font rien pour votre échantillon (ils ne voient qu'une seule ligne donc il n'y a rien à coucher).

Dès que vous avez plus d'une ligne de code réel, za, zM, zR et amis travaillent parfaitement.

Une autre méthode est la peine d'essayer , en utilisant :set foldmarker={,} vous permet de tourner:

myFnName <- function(some, args){ 
    #some description or not 
    some code 
} 

dans:

+-- 4 lines : myFnName <- function(some, args)-------- 

avec un za simple. set foldmethod = indent`:

Quoi qu'il en soit, je recommande ces deux vimcasts si vous voulez plus de contrôle:

+0

Merci Romain! Votre 'foldmarker' fonctionne bien, c'est assez bon pour moi – statquant

0

Vérifiez s'il y a un plugin qui fait cela.

Lisez l'aide sur l'écriture d'une fonction de pliage personnalisée pour le type de fichier R: :h 'foldexpr', :h fold-expr.

Consultez le didacticiel détaillé sur le pliage personnalisé dans Apprenez Vim Script the Hard Way par Steve Losh: "Advanced Folding".

Questions connexes