web-dev-qa-db-fra.com

Formatage automatique du code R dans RStudio

Existe-t-il des possibilités de formatage automatique du code dans RStudio?

J'ai trouvé this , mais il n'est pas connecté à RStudio.

Il est également souhaitable que ce formatage soit personnalisable.

51
midas

mise à jour: 22 juin 2018

Merci @ Lorenz @ kirill @ yuhi pour stylerpackage . Je l'utilise depuis un moment. Le plus simple après l'installation du package est d'utiliser simplement

faites défiler jusqu'à Addin --> style active file

Les options de personnalisation via l'interface donneraient un certain contrôle sur le style que nous préférons.

Rstudio peut désormais formater le code pour avoir l'air soigné. Sélectionnez les lignes d'intérêt, puis accédez à Code >> Reformat code ou utilisez le raccourci clavier ctrl + shift + A.

update: C'est un bon moyen de restructurer le code, mais il se casse à , pour les éléments d'un vecteur. Pour peu, c'est OK, mais avec de nombreux éléments passés à un vecteur, c'est exagéré:

x <- c(
  "p.G12C",
  "p.F121S",
  "p.P124S",
  "p.P124L",
  "p.E13D",
  "p.E203K",
  "p.Q209P",
  "p.Q209P",
  "p.Q209L"
)

Mise à jour: R-Studio Version 0.99.893

Il y a une nouvelle fonctionnalité qui a été ajoutée par R-studio Addins. Faisant partie de ces compléments, vous pouvez maintenant ajouter @yuhi formatR en tant que complément. C'est une façon plus ordonnée et plus propre de structurer le code que le code >> Refromat code. Cependant, l'inconvénient de l'Addin Reformat R Code il renvoie une erreur pour les codes Rshiny.

47
user5249203

Allez dans le menu Code et sélectionnez

Lignes de réindentation

Sous mon système d'exploitation, cela a le raccourci Ctrl + I.

28
csgillespie

Première CTRL+A, puis CTRL+SHIFT+A.

22
lU5er

Le package styler peut formater le code R et vous pouvez y accéder via un complément RStudio qui permet de formater le fichier actif, le code en surbrillance, le package et plus encore. Une caractéristique distinctive est sa flexibilité, car la transformation du code selon un guide de style se fait séparément de la spécification du guide de style. Cela permet un style selon un guide de style arbitraire.

Nous avons implémenté tidyverse style guide tout en permettant une certaine flexibilité dans le style. En outre, le canal, la syntaxe tidyeval et plus sont correctement gérés. Vous pouvez lire une introduction dans ce article de blog .

Si vous ne voulez pas suivre le guide de style tidyverse, vous pouvez jeter un œil à la vignette 'Customizing Styler' qui décrit comment vous pouvez implémenter un guide de style arbitraire. Dans cette vignette, je montre comment vous pouvez implémenter un guide de style composé d'une règle: toujours rompre la ligne avant {. J'espère que ça t'as aidé.

Divulgation: Je suis le mainteneur de styler.

11
Lorenz Walthert
#use the library "formatR"

install.packages("formatR")

library(formatR)

# tidy_eval("file path")
tidy_eval("C:/Users/PC_name/Desktop/myfile.R")
10
Ashish