Bioconductor / BiocFileCache

Manage Files Across Sessions
12 stars 6 forks source link

prompt wraps poorly on macOS #16

Open mtmorgan opened 5 years ago

mtmorgan commented 5 years ago

When prompted to create a new AnnotationHub cache, at https://github.com/Bioconductor/BiocFileCache/blob/master/R/utilities.R#L79 , I see the equivalent of

> txt = paste0(cache, "\n  does not exist, create directory?", " (yes/no): ")
> readline(txt)
/Users/ma38727/Library/Caches/BiocFileCache
(yes/no):  exist, create directory?

where '(yes/no):' has been aligned to the left; maybe readline() is trying to wrap line width?

> sessionInfo()
R version 3.6.0 alpha (2019-03-29 r76306)
Platform: x86_64-apple-darwin17.7.0 (64-bit)
Running under: macOS High Sierra 10.13.6

Matrix products: default
BLAS:   /Users/ma38727/bin/R-3-6-branch/lib/libRblas.dylib
LAPACK: /Users/ma38727/bin/R-3-6-branch/lib/libRlapack.dylib

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  methods   base

other attached packages:
[1] BiocFileCache_1.7.3 dbplyr_1.3.0

loaded via a namespace (and not attached):
 [1] Rcpp_1.0.1       digest_0.6.18    crayon_1.3.4     dplyr_0.8.0.1
 [5] assertthat_0.2.1 rappdirs_0.3.1   R6_2.4.0         DBI_1.0.0
 [9] magrittr_1.5     RSQLite_2.1.1    httr_1.4.0       pillar_1.3.1
[13] rlang_0.3.3      curl_3.3         blob_1.1.1       bit64_0.9-7
[17] glue_1.3.1       bit_1.1-14       purrr_0.3.2      compiler_3.6.0
[21] pkgconfig_2.0.2  memoise_1.1.0    tidyselect_0.2.5 tibble_2.1.1

A solution might remove the \n and instead provide a single line, like

txt = paste0("'", cache, "' does not exist, create directory?", " (yes/no): ")

likely other uses of .util_ask() would need similar modification.

... or use cat() (stdout) for the body of the text, and readline() for "yes/no: "

lshep commented 5 years ago

neat - interesting tho I can't reproduce this even on celaya so maybe a more recent mac os thing -