RStudio如何确定控制台宽度,为什么它似乎一直错误?

时间:2016-02-09 03:06:32

标签: r rstudio

我刚刚在RStudio中发现了wid <- options()$width,它似乎是我的日常控制台使用中引起极大烦恼的来源(或更确切地说,更接近来源)。我应该预先说明我目前在R 3.2.2,RStudio 0.99.491,在Linux Mint 17.3上(基于Ubuntu 14.04.3 LTS构建)

根据我的理解,wid应该用字符来衡量 - 如果wid等于52,那么,一个人应该能够将字母表放在屏幕上两次(给定固定的) -width default font),但似乎不是这样的:

width vs. actual width discrepancy

正如你所看到的,尽管wid等于52,但我无法使字母表适合两次 - 我的字符短6个字符。我还注意到,这意味着它只是由于存在命令提示符箭头和空格(>)而而不是

问题似乎有些成比例 - 如果我wid达到78,我只能容纳70个字符;高达104,93,所以wid相当一致约88%(旁注:这也表明我的假设wid以字符衡量可能是正确的。)

这产生的问题是控制台输出经常超出其预期的线路,使输出变得难看并且难以消化;例如,为我生成的简单剪切setDT(lapply(1:30, function(x) 1:3))[]

whoops

我似乎很清楚,在屏幕宽度上尝试输出,这在实践中是不可用的 - 在内部,使用比实际存在的更大的屏幕宽度进行打印。

这让我有三个问题:

  1. options()$width如何确定?
  2. 为什么这么一直错?
  3. 我们可以做些什么来覆盖此错误?

1 个答案:

答案 0 :(得分:1)

找到post about this on Rstudio support,似乎问题与高DPI显示器有关;根据{{​​3}}的说法,RStudio version 0.99.878中有一个声明的错误修复程序(今天刚刚发布!运气好了):

  

错误修复

     

...

     
      
  • 在高DPI显示器上正确计算getOption(“width”)
  •   

希望这可以帮助其他人体验这一点!我很想在release notes B - )

上发布这个帖子

如果有人可以追踪它(我没有运气),我很乐意看到/r/oddlysatisfying页面上的相关提交。