[英]Is it possible to list all the global options that can be set for a package?
從tibble的插圖中,我讀到可以通過控制打印外觀的options
在全局選項中進行一些更改。 但是,我在R中找不到任何關於此選項的手冊。我甚至不知道哪些字段可以添加到包的全局選項中。 所以問題是:
對於一個包,我們可以得到的字段(如列表tibble.print_max
, tibble.print_min
為tibble
和BioC_mirror
的utils
),可以通過設置options
與R中知道他們面前?
處理可設置選項的方式由包作者自行決定(是否將它們包含在.Options
,隱藏它們等)。 它看起來像tibble包有一個隱藏的變量op.tibble
,其中顯示可用的選項。
tibble:::op.tibble
# $tibble.print_max
# [1] 20
#
# $tibble.print_min
# [1] 10
#
# $tibble.width
# NULL
#
# $tibble.max_extra_cols
# [1] 100
因此,以下內容將為您提供包中可用選項的名稱。
names(tibble:::op.tibble)
# [1] "tibble.print_max" "tibble.print_min"
# [3] "tibble.width" "tibble.max_extra_cols"
作為一個說明,我發現了op.tibble
grep("op", ls(getNamespace("tibble"), all=TRUE), value=TRUE)
# [1] "op.tibble" "stopc" "tibble_opt"
然后分別查看這些項目。 也許其他作者可能會做類似的事情。 但是在包中定義選項沒有一般規則。
鑒於缺乏必要的實踐(例如,在CRAN上)如何處理外部(甚至內部,據我所知)包的選項,也許最通用的方法是這樣的:
在存儲庫中搜索“option”,以查找包代碼中對“option”的所有引用 。
搜索一下。 知道要查找的內容需要一點敏銳的眼光,但這就是我如何了解所有tibble
的選項都列在主包幫助頁面上( ?"tibble-package"
),因為我找到了這些行隨着搜索。
如果將repo克隆到您的機器並使用命令行工具,例如,步驟3可以更好地自動化
cd package_dir
grep option R/*
(這與上面的內容非常相似,但是可以實現grep
的完全靈活性)
只是為了進一步確認,這種方法使我成為了data.table
和xtable
的合適位置。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.