yihui / formatR

Format R Code Automatically
https://yihui.org/formatr/
255 stars 52 forks source link

Indenting consistent with Rstudio #53

Open dlebauer opened 8 years ago

dlebauer commented 8 years ago

This looks very helpful it does not indent the lines that it does in the same way that Rstudio or emacs ESS does by default.

For example, this line:

old.priors <- db.query(paste("select prior_id from pfts_priors where pft_id =", parent.pft.id, ";"), con = con)

is converted to tidy_source() as

old.priors <- db.query(paste("select prior_id from pfts_priors where pft_id =", 
    parent.pft.id, ";"), con = con)

while Rstudio converts it to

  old.priors <- db.query(paste("select prior_id from pfts_priors where pft_id =", 
                               parent.pft.id, ";"), con = con)

the Rstudio way makes it easier to see that the arguments on line 2 are arguments to the paste functions.

Is there a way around this? I've reviewed many isues in this repository and suspect that the answer is 'no' but couldn't find a reference to this in particular.

yihui commented 8 years ago

You are (unfortunately) correct -- the answer is no. All tidy_source() magic comes from deparse(). Since deparse() cannot do this, neither can tidy_source().