[Rd] Error in formatDL(nm, txt, indent = max(nchar(nm, "w")) + 3)

William Dunlap wdunlap at tibco.com
Thu Mar 9 16:58:42 CET 2017


It happens in the fda package because some of the headers are longer
than typical (e.g., "Repository/R-Forge/DateTimeStamp") and formatDL
dies if the indent argument is too large compared to the width argument.

It might be nice to change formatDL so it never gave such an error, but
did something reasonable when the 'indent' argument was too big.
Changing
   if (indent > width/2) stop("incorrect values of 'indent' and 'width'")
to
   indent <- min(indent, width/2)
seems reasonable to me.

Bill Dunlap
TIBCO Software
wdunlap tibco.com


On Thu, Mar 9, 2017 at 7:28 AM, William Dunlap <wdunlap at tibco.com> wrote:
> This error can arise when getOption("width") is too small.  80 seems to be the
> limit for me with R-3.3.2 on Windows.
> Bill Dunlap
> TIBCO Software
> wdunlap tibco.com
>
>
> On Wed, Mar 8, 2017 at 10:28 PM, Spencer Graves
> <spencer.graves at prodsyse.com> wrote:
>> Hello:
>>
>>
>>       I tried "debug(help)" with the problem mentioned below.  It stopped
>> with a call to "library", from which I generate the following simple
>> replication of this error:
>>
>>
>>> library(help = 'fda', character.only = TRUE)
>> Error in formatDL(nm, txt, indent = max(nchar(nm, "w")) + 3) :
>>   incorrect values of 'indent' and 'width'
>>
>>
>>       This was using R 3.3.3 inside RStudio on a Mac, as noted below.  This
>> same "library(help='fda', character.only=TRUE)" ran fine using R Console
>> 3.2.1 under Windows 7.
>>
>>
>>       I also tried debug(library).  It died in line 298:
>>
>>
>>     for (i in which(file.exists(docFiles))) pkgInfo[[i]] <-
>> readDocFile(docFiles[i])
>>
>>
>>       with i = 1 and docFiles[i] =
>> "/Library/Frameworks/R.framework/Versions/3.3/Resources/library/fda/Meta/package.rds".
>>
>>
>>       This looks like a bug to me.  I don't know if it's new since R 3.2.1
>> or it works fine under Windows 7 but not a Mac.
>>
>>
>>       Thanks,
>>       Spencer Graves
>>
>>
>> *** NOTES:
>>
>>
>>       1.  When I tried "Q" to exit debug mode, I got, "Error retrieving
>> help:  R code execution error."  This suggests a bug in "debug", which could
>> be replicated by trying debug(help) with "help(package='fda',
>> help_type='text')".  It does not want to exit from "help" using "Q".  "c"
>> also fails.
>>
>>
>>       2.  For sessionInfo(), see below.
>>
>>
>> On 2017-03-08 4:06 PM, Spencer Graves wrote:
>>>
>>> Hello:
>>>
>>>
>>>       A call to help(..., help_type='text') fails with "package='fda":
>>>
>>>
>>> > install.packages('fda')
>>> > help(package='fda', help_type='text')
>>> Error in formatDL(nm, txt, indent = max(nchar(nm, "w")) + 3) :
>>>   incorrect values of 'indent' and 'width'
>>>
>>>
>>>       I have this wrapped inside "try" in PackageSum2{sos}, so it doesn't
>>> die, but it also doesn't give me the additional information I want from
>>> help(..., help_type='text')
>>>
>>>
>>>       Is this a bug?
>>>       Thanks,
>>>       Spencer Graves
>>>
>>> Using RStudio 1.0.136 with
>>>
>>>
>>> > sessionInfo()
>>> R version 3.3.3 (2017-03-06)
>>> Platform: x86_64-apple-darwin13.4.0 (64-bit)
>>> Running under: macOS Sierra 10.12.3
>>>
>>> locale:
>>> [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
>>>
>>> attached base packages:
>>> [1] stats     graphics  grDevices utils     datasets
>>> [6] methods   base
>>>
>>> loaded via a namespace (and not attached):
>>> [1] tools_3.3.3
>>>
>>> ______________________________________________
>>> R-devel at r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>>
>>
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel



More information about the R-devel mailing list