Notepad ++缩进等

时间:2013-10-24 18:08:54

标签: r notepad++

我使用Notepad ++进行R编码。但是,当我为R:

编写SQL查询时
tt <- "SELECT 
         *
       FROM
         myTable"

Notepadd ++读取制表符缩进并将行返回到R.所以我得到这样的东西:

tt> "SELECT \n\t\t* \n\t\tFROM \n\t\tmyTable"

当我在较长的功能中添加换行符时,我会看到类似的东西。

当然,这很好,但是在控制台中读取真的很难,而其他人想要查看它。有没有什么方法可以格式化某些东西,以便它在Notepad ++中可读,然后在我将它输入R控制台时以某种方式删除返回和制表符?

1 个答案:

答案 0 :(得分:0)

当我编写要从R调用的SQL代码时,例如在RODBC包中,我经常在文本编辑器的另一个选项卡中编辑该代码,并将其保存到扩展名为.sql的文件中。这样,我可以充分利用语法高亮和正确的自动压缩(如果有的话)。您可以使用readLines命令将该文件读入R中。

但是,如果出现错误并且代码返回给您,则此代码不会以可读格式打印到控制台。您应该使用cat命令打印错误。

例如,

> con <- odbcConnect(someSqlServer, myUserId, myPassword)
> qry <- sqlQuery(con, '
select 
  nonExistentVars 

from 
  nonExistentTable as A 

inner join 
  otherNonExistentTable as B 

on A.fakeId = B.fakeId
')

> qry ## hard to read
"ERROR blah blah \nselect \n  nonExistentVars \n\nfrom \n  nonExistentTable as A \n\ninner join \n  otherNonExistentTable as B \n\non A.fakeId = B.fakeId\n"

> cat(qry) ## easy to read
ERROR blah blah
select 
  nonExistentVars 

from 
  nonExistentTable as A 

inner join 
  otherNonExistentTable as B 

on A.fakeId = B.fakeId