Hao Zhu | eaef431 | 2018-01-10 17:05:23 -0500 | [diff] [blame] | 1 | #' @export |
Hao Zhu | b9da01c | 2018-01-14 21:01:57 -0500 | [diff] [blame] | 2 | print.kableExtra <- function(x, ...) { |
Hao Zhu | eaef431 | 2018-01-10 17:05:23 -0500 | [diff] [blame] | 3 | html_header <- htmltools::tags$head( |
| 4 | rmarkdown::html_dependency_jquery(), |
Hao Zhu | 8a69ad1 | 2018-01-10 18:01:41 -0500 | [diff] [blame] | 5 | rmarkdown::html_dependency_bootstrap(theme = "simplex"), |
| 6 | html_dependency_kePrint() |
Hao Zhu | eaef431 | 2018-01-10 17:05:23 -0500 | [diff] [blame] | 7 | ) |
Hao Zhu | eaef431 | 2018-01-10 17:05:23 -0500 | [diff] [blame] | 8 | html_table <- htmltools::HTML(as.character(x)) |
Hao Zhu | 8c8ac8b | 2018-01-23 23:45:13 -0500 | [diff] [blame] | 9 | html_result <- htmltools::tagList(html_header, html_table) |
Hao Zhu | 5776154 | 2018-03-26 16:32:56 -0400 | [diff] [blame] | 10 | if (interactive() & rstudioapi::isAvailable()) { |
Hao Zhu | 5b71b2d | 2018-03-26 16:31:09 -0400 | [diff] [blame] | 11 | htmltools::html_print(html_result, viewer = rstudioapi::viewer) |
| 12 | } |
Hao Zhu | 8c8ac8b | 2018-01-23 23:45:13 -0500 | [diff] [blame] | 13 | print(html_result) |
Hao Zhu | eaef431 | 2018-01-10 17:05:23 -0500 | [diff] [blame] | 14 | } |
| 15 | |
Hao Zhu | e5b9bff | 2018-05-20 17:40:03 -0400 | [diff] [blame^] | 16 | #' @export |
Hao Zhu | 8a69ad1 | 2018-01-10 18:01:41 -0500 | [diff] [blame] | 17 | html_dependency_kePrint <- function() { |
| 18 | htmlDependency(name = "kePrint", |
| 19 | version = "0.0.1", |
Hao Zhu | 7cb0e37 | 2018-01-10 18:29:30 -0500 | [diff] [blame] | 20 | src = system.file("kePrint-0.0.1", |
Hao Zhu | 8a69ad1 | 2018-01-10 18:01:41 -0500 | [diff] [blame] | 21 | package = "kableExtra"), |
| 22 | script = "kePrint.js") |
| 23 | } |
Hao Zhu | eaef431 | 2018-01-10 17:05:23 -0500 | [diff] [blame] | 24 | |
| 25 | #' @export |
Hao Zhu | e5b9bff | 2018-05-20 17:40:03 -0400 | [diff] [blame^] | 26 | html_dependency_bsTable <- function() { |
| 27 | htmlDependency(name = "bsTable", |
| 28 | version = "3.3.7", |
| 29 | src = system.file("bootstrapTable-3.3.7", |
| 30 | package = "kableExtra"), |
| 31 | stylesheet = "bootstrapTable.min.css") |
| 32 | } |
| 33 | |
| 34 | #' @export |
Hao Zhu | c830679 | 2018-01-11 12:34:35 -0500 | [diff] [blame] | 35 | knit_print.kableExtra <- function(x, ...) { |
Hao Zhu | eaef431 | 2018-01-10 17:05:23 -0500 | [diff] [blame] | 36 | x <- paste0(x, "\n\n") |
Hao Zhu | e5b9bff | 2018-05-20 17:40:03 -0400 | [diff] [blame^] | 37 | meta_list <- list(html_dependency_kePrint()) |
| 38 | bs <- getOption("kableExtra.html.bsTable", default = FALSE) |
| 39 | if (bs) { |
| 40 | meta_list[[2]] <- html_dependency_bsTable() |
| 41 | } |
| 42 | asis_output(x, meta = meta_list) |
Hao Zhu | eaef431 | 2018-01-10 17:05:23 -0500 | [diff] [blame] | 43 | } |
| 44 | |
| 45 | |
| 46 | |
| 47 | |