[英]How do you escape “}” using roxygen2?
我正在使用roxygen2
的@example
來記錄函數。
該示例包含一個包含}
符號的字符串。
#' ...
#' @examples
#' \dontrun{
#' ## polyline joining the capital cities of Australian states
#' pl <- "nnseFmpzsZgalNytrXetrG}krKsaif@kivIccvzAvvqfClp~uBlymzA~ocQ}_}iCthxo@srst@"
#'
#' df_polyline <- decodepl(pl)
#' }
#' ...
構建時,示例的文檔是
其中,第一之后的所有內容}
是CUTT關閉。
如何逃避}
以便它包含在示例中的字符串中?
我試過反斜杠\\{
/ \\\\{
沒有運氣。
哈德利對我的問題的官方回應
解決這個問題非常困難(據我所知,它需要編寫一個相當復雜的Rd解析器),而且這種情況很少發生,所以現實情況下,我的待辦事項清單永遠不會達到很高的水平。
TLDR:長期修復:提出問題 。
你因為你有剛好夠“很幸運”這個內置}
的讓過去一些路安裝錯誤。
我甚至嘗試使用@example inst/examples/ex.r
並放置代碼(使用\\dontrun{}
包裝器,因為它支持那里)和同樣的事情發生在那個方法,因為相同的roxygen解析/翻譯代碼似乎是在那里玩。
SHORT TERM FIX#1:手動編輯生成的Rd
文件,為每個\\}
執行單個\\}
}
。 為了使你不會意外地覆蓋它,生成一次,然后進行修復,然后對該功能進行除氧,直到修復為止。
SHORT TERM FIX#2:對於那段代碼,字符串賦值可以在\\dontrun{}
塊之外發生(這正是造成這種情況的原因)。 將它移出,你可以繼續進行氧化。
長期修復:向上述網址提出問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.