175-代码不规范,从此不必再牵挂

刘小泽写于2020.3.5 偶然间看到一个包,可以帮助我们做那些格式上的调整,而我们自己,只需要专注于脚本即可。并且它适用于普通脚本、Rmd文件以及R包中的所有函数

一个帮助我们提高效率的包——styler

它的网站在:https://styler.r-lib.org/

安装方法是:install.packages("styler")

这个包开发的目的是:

The goal of styler is to provide non-invasive pretty-printing of R source code while adhering to the tidyverse formatting rules. styler can be customized to format code according to other style guides too.

举个最简单的例子

看到下面的代码,你的心情如何?有没有一种:花了一个小时精心烹饪,结果盘子掉地上这种感觉?【只能看不能用】

看到,其中的空格没有设计好,也不是标准的函数格式,最后的=也不是<-,虽然说这个=在日常操作中不是必须替换成<-,但当自己写R包时就会发现,必须严格按照标准格式来,否则你的时间将会浪费在排查这个最容易忽略的问题上。

有时可以看到,很多人写脚本很随意,但他们的R包代码却很整齐。

# 一段非常非常丑的代码
ugly_code <- "a=function( x){1+1}           "

遇到这样的代码,我们不需要花时间手动调整,这个包就帮助我们做了这个事情

library(styler)
style_text(ugly_code)

然后会输出结果

image-20200305125316223

看到一句提示:如果想在结果上加上颜色,我们还需要另外一个包:install.packages("prettycode")

再来一遍,就看到结果的变化,非常赏心悦目

image-20200305125402862

当然,上面都是在演示最简单的脚本。不过我们也不会把所有脚本都去赋值,然后用这个函数

当然还有其他的函数可用啦

  • .R | .Rmd | .Rnw | .Rprofile 文件,可以用style_file()去操作
  • 对文件夹操作:style_dir() 它会把其中所有的R脚本和Rmd文件调整格式
  • 对R包操作:style_pkg() 它会把包的所有源文件进行格式调整
想对当前目录中的所有R脚本进行操作:

image-20200305130628494

只想修改其中某一部分,可以手动点一下

这个功能在安装完R包后,自动加载到Rstudio的Addins

其中的 Style selection 就是把选中的这些进行调整

image-20200305130407093

调整后就是:

image-20200305130453646

最后再放一个官网的演示:

styler_0.1

是不是很简单,很轻松? 格式问题,再也不是个问题!

Yunze Liu
Yunze Liu
Bioinformatics Sharer

Co-founder of Bioinfoplanet(生信星球)

Next
Previous

Related