These functions perform or diagnose bi-directional pagination on an object.
paginate_to_mpfs
renders obj
into the MatrixPrintForm
(MPF)
intermediate representation, and then paginates that MPF into
component MPFs each corresponding to an individual page and
returns those in a list.
paginate_indices
renders obj
into an MPF, then uses
that representation to calculate the rows and columns of
obj
corresponding to each page of the pagination of obj
,
but simply returns these indices rather than paginating
obj
itself (see details for an important caveat).
diagnose_pagination
attempts pagination via paginate_to_mpfs
and then returns diagnostic information which explains why page
breaks were positioned where they were, or alternatively why
no valid paginations could be found.
Usage
paginate_indices(
obj,
page_type = "letter",
font_family = "Courier",
font_size = 8,
lineheight = 1,
landscape = FALSE,
pg_width = NULL,
pg_height = NULL,
margins = c(top = 0.5, bottom = 0.5, left = 0.75, right = 0.75),
lpp = NA_integer_,
cpp = NA_integer_,
min_siblings = 2,
nosplitin = character(),
colwidths = NULL,
tf_wrap = FALSE,
max_width = NULL,
indent_size = 2,
pg_size_spec = NULL,
rep_cols = num_rep_cols(obj),
col_gap = 3,
verbose = FALSE
)
paginate_to_mpfs(
obj,
page_type = "letter",
font_family = "Courier",
font_size = 8,
lineheight = 1,
landscape = FALSE,
pg_width = NULL,
pg_height = NULL,
margins = c(top = 0.5, bottom = 0.5, left = 0.75, right = 0.75),
lpp = NA_integer_,
cpp = NA_integer_,
min_siblings = 2,
nosplitin = character(),
colwidths = NULL,
tf_wrap = FALSE,
max_width = NULL,
indent_size = 2,
pg_size_spec = NULL,
rep_cols = num_rep_cols(obj),
col_gap = 2,
verbose = FALSE
)
diagnose_pagination(
obj,
page_type = "letter",
font_family = "Courier",
font_size = 8,
lineheight = 1,
landscape = FALSE,
pg_width = NULL,
pg_height = NULL,
margins = c(top = 0.5, bottom = 0.5, left = 0.75, right = 0.75),
lpp = NA_integer_,
cpp = NA_integer_,
min_siblings = 2,
nosplitin = character(),
colwidths = propose_column_widths(matrix_form(obj, TRUE)),
tf_wrap = FALSE,
max_width = NULL,
indent_size = 2,
pg_size_spec = NULL,
rep_cols = num_rep_cols(obj),
col_gap = 2,
verbose = FALSE,
...
)
Arguments
- obj
ANY. object to be paginated. Must have a
matrix_form
method.- page_type
character(1). Name of a page type. See
page_types
. Ignored whenpg_width
andpg_height
are set directly.- font_family
character(1). Name of a font family. An error will be thrown if the family named is not monospaced. Defaults to Courier.
- font_size
numeric(1). Font size, defaults to 12.
- lineheight
numeric(1). Line height, defaults to 1.
- landscape
logical(1). Should the dimensions of
page_type
be inverted for landscape? Defaults toFALSE
, ignored whenpg_width
andpg_height
are set directly.- pg_width
numeric(1). Page width in inches.
- pg_height
numeric(1). Page height in inches.
- margins
numeric(4). Named numeric vector containing
'bottom'
,'left'
,'top'
, and'right'
margins in inches. Defaults to.5
inches for both vertical margins and.75
for both horizontal margins.- lpp
numeric(1) or NULL. Lines per page. if NA (the default, this is calculated automatically based on the specified page size).
NULL
indicates no vertical pagination should occur.- cpp
numeric(1) or NULL. Width in characters per page. if NA (the default, this is calculated automatically based on the specified page size).
NULL
indicates no horizontal pagination should occur.- min_siblings
numeric. Minimum sibling rows which must appear on either side of pagination row for a mid-subtable split to be valid. Defaults to 2.
- nosplitin
character. List of names of sub-tables where page-breaks are not allowed, regardless of other considerations. Defaults to none.
- colwidths
numeric vector. Column widths (in characters) for use with vertical pagination.
- tf_wrap
logical(1). Should the texts for title, subtitle, and footnotes be wrapped?
- max_width
integer(1), character(1) or NULL. Width that title and footer (including footnotes) materials should be word-wrapped to. If NULL, it is set to the current print width of the session (
getOption("width")
). If set to"auto"
, the width of the table (plus any table inset) is used. Ignored completely iftf_wrap
isFALSE
.- indent_size
numeric(1). Indent size in characters. Ignored when
x
is already a MatrixPrintForm object in favor of information there.- pg_size_spec
page_size_spec. A pre-calculated page size specification. Typically this is not set in end user code.
- rep_cols
numeric(1). Number of columns (not including row labels) to be repeated on every page. Defaults to 0
- col_gap
numeric(1). Currently unused.
- verbose
logical(1). Should additional informative messages about the search for pagination breaks be shown. Defaults to
FALSE
.- ...
Passed to individual methods.
Value
for paginate_indices
a list with two elements of the same
length: pag_row_indices
, and pag_col_indices
. For
paginate_to_mpfs
, a list of MatrixPrintForm
objects
representing each individual page after pagination (including
forced pagination if necessary).
For diagnose_pagination
a list containing:
lpp_diagnostics
diagnostic information regarding lines per page
row_diagnostics
basic information about rows, whether pagination was attempted after each row, and the final result of such an attempt, if made
-
cpp_diagnostics}{diagnostic information regarding columns per page} \item{
col_diagnostics` (very) basic information about leaf columns, whether pagination was attempted after each leaf column, ad the final result of such attempts, if made
Details
All three of these functions generally support all classes which have
a corresponding matrix_form
method which returns a valid MatrixPrintForm
object (including MatrixPrintForm
objects themselves).
paginate_indices
is directly called by paginate_to_mpfs
(and thus
diagnose_pagination
). For most classes, and most tables represented
by supported classes, calling paginate_to_mpfs
is equivalent to a
manual paginate_indices -> subset obj into pages -> matrix_form
workflow.
The exception to this equivalence is objects which support 'forced pagination',
or pagination logic which built into the object itself rather than being a
function of space on a page. Forced pagination generally involves the creation
of, e.g., page-specific titles which apply to these forced paginations.
paginate_to_mpfs
and diagnose_pagination
support forced pagination by
automatically calling the do_forced_pagination
generic on the object
and then paginating each object returned by that generic separately. The
assumption here, then, is that page-specific titles and such are
handled by the class' do_forced_pagination
method.
paginate_indices
, on the other hand, does not support forced pagination,
because it returns only a set of indices for row and column subsetting for each page,
and thus cannot retain any changes, e.g., to titles, done within do_forced_paginate
.
paginate_indices
does call do_forced_paginate
, but instead of continuing, it
throws an error in the case that the result is more than a single "page".
diagnose_pagination
attempts pagination and then, regardless of success
or failure, returns diagnostic information about pagination
attempts (if any) after each row and column.
The diagnostics data reflects the final time the pagination algorithm evaluated a page break at the specified location, regardless of how many times the position was assessed total.
To get information about intermediate attempts, perform pagination
with verbose = TRUE
and inspect the messages in order.
Note
For diagnose_pagination
, the column labels are not
displayed in the col_diagnostics
element due to certain
internal implementation details; rather the diagnostics are
reported in terms of absolute (leaf) column position. This is a
known limitation, and may eventually be changed, but the
information remains useful as it is currently reported.
diagnose_pagination
is intended for interactive debugging
use and should not be programmed against, as the exact
content and form of the verbose messages it captures and
returns is subject to change.
because diagnose_pagination
relies on capture.output(type = "message")
,
it cannot be used within the testthat
(and likely other) testing frameworks,
and likely cannot be used within knitr
/rmarkdown
contexts either,
as this clashes with those systems' capture of messages.
Examples
mpf <- basic_matrix_form(mtcars)
paginate_indices(mpf, pg_width = 5, pg_height = 3)
#> $pag_row_indices
#> $pag_row_indices[[1]]
#> [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
#>
#> $pag_row_indices[[2]]
#> [1] 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
#>
#>
#> $pag_col_indices
#> $pag_col_indices[[1]]
#> [1] 1 2 3 4
#>
#> $pag_col_indices[[2]]
#> [1] 5 6 7 8 9
#>
#> $pag_col_indices[[3]]
#> [1] 10 11
#>
#>
paginate_to_mpfs(mpf, pg_width = 5, pg_height = 3)
#> [[1]]
#> $strings
#> rnms mpg cyl disp hp
#> [1,] "" "mpg" "cyl" "disp" "hp"
#> [2,] "Mazda RX4" "21" "6" "160" "110"
#> [3,] "Mazda RX4 Wag" "21" "6" "160" "110"
#> [4,] "Datsun 710" "22.8" "4" "108" "93"
#> [5,] "Hornet 4 Drive" "21.4" "6" "258" "110"
#> [6,] "Hornet Sportabout" "18.7" "8" "360" "175"
#> [7,] "Valiant" "18.1" "6" "225" "105"
#> [8,] "Duster 360" "14.3" "8" "360" "245"
#> [9,] "Merc 240D" "24.4" "4" "146.7" "62"
#> [10,] "Merc 230" "22.8" "4" "140.8" "95"
#> [11,] "Merc 280" "19.2" "6" "167.6" "123"
#> [12,] "Merc 280C" "17.8" "6" "167.6" "123"
#> [13,] "Merc 450SE" "16.4" "8" "275.8" "180"
#> [14,] "Merc 450SL" "17.3" "8" "275.8" "180"
#> [15,] "Merc 450SLC" "15.2" "8" "275.8" "180"
#> [16,] "Cadillac Fleetwood" "10.4" "8" "472" "205"
#> [17,] "Lincoln Continental" "10.4" "8" "460" "215"
#>
#> $spans
#> [,1] [,2] [,3] [,4] [,5]
#> [1,] 1 1 1 1 1
#> [2,] 1 1 1 1 1
#> [3,] 1 1 1 1 1
#> [4,] 1 1 1 1 1
#> [5,] 1 1 1 1 1
#> [6,] 1 1 1 1 1
#> [7,] 1 1 1 1 1
#> [8,] 1 1 1 1 1
#> [9,] 1 1 1 1 1
#> [10,] 1 1 1 1 1
#> [11,] 1 1 1 1 1
#> [12,] 1 1 1 1 1
#> [13,] 1 1 1 1 1
#> [14,] 1 1 1 1 1
#> [15,] 1 1 1 1 1
#> [16,] 1 1 1 1 1
#> [17,] 1 1 1 1 1
#>
#> $aligns
#> [,1] [,2] [,3] [,4] [,5]
#> [1,] "center" "center" "center" "center" "center"
#> [2,] "left" "left" "left" "left" "left"
#> [3,] "left" "left" "left" "left" "left"
#> [4,] "left" "left" "left" "left" "left"
#> [5,] "left" "left" "left" "left" "left"
#> [6,] "left" "left" "left" "left" "left"
#> [7,] "left" "left" "left" "left" "left"
#> [8,] "left" "left" "left" "left" "left"
#> [9,] "left" "left" "left" "left" "left"
#> [10,] "left" "left" "left" "left" "left"
#> [11,] "left" "left" "left" "left" "left"
#> [12,] "left" "left" "left" "left" "left"
#> [13,] "left" "left" "left" "left" "left"
#> [14,] "left" "left" "left" "left" "left"
#> [15,] "left" "left" "left" "left" "left"
#> [16,] "left" "left" "left" "left" "left"
#> [17,] "left" "left" "left" "left" "left"
#>
#> $display
#> [,1] [,2] [,3] [,4] [,5]
#> [1,] TRUE TRUE TRUE TRUE TRUE
#> [2,] TRUE TRUE TRUE TRUE TRUE
#> [3,] TRUE TRUE TRUE TRUE TRUE
#> [4,] TRUE TRUE TRUE TRUE TRUE
#> [5,] TRUE TRUE TRUE TRUE TRUE
#> [6,] TRUE TRUE TRUE TRUE TRUE
#> [7,] TRUE TRUE TRUE TRUE TRUE
#> [8,] TRUE TRUE TRUE TRUE TRUE
#> [9,] TRUE TRUE TRUE TRUE TRUE
#> [10,] TRUE TRUE TRUE TRUE TRUE
#> [11,] TRUE TRUE TRUE TRUE TRUE
#> [12,] TRUE TRUE TRUE TRUE TRUE
#> [13,] TRUE TRUE TRUE TRUE TRUE
#> [14,] TRUE TRUE TRUE TRUE TRUE
#> [15,] TRUE TRUE TRUE TRUE TRUE
#> [16,] TRUE TRUE TRUE TRUE TRUE
#> [17,] TRUE TRUE TRUE TRUE TRUE
#>
#> $formats
#> [,1] [,2] [,3] [,4] [,5]
#> [1,] "" "" "" "" ""
#> [2,] "" "xx" "xx" "xx" "xx"
#> [3,] "" "xx" "xx" "xx" "xx"
#> [4,] "" "xx" "xx" "xx" "xx"
#> [5,] "" "xx" "xx" "xx" "xx"
#> [6,] "" "xx" "xx" "xx" "xx"
#> [7,] "" "xx" "xx" "xx" "xx"
#> [8,] "" "xx" "xx" "xx" "xx"
#> [9,] "" "xx" "xx" "xx" "xx"
#> [10,] "" "xx" "xx" "xx" "xx"
#> [11,] "" "xx" "xx" "xx" "xx"
#> [12,] "" "xx" "xx" "xx" "xx"
#> [13,] "" "xx" "xx" "xx" "xx"
#> [14,] "" "xx" "xx" "xx" "xx"
#> [15,] "" "xx" "xx" "xx" "xx"
#> [16,] "" "xx" "xx" "xx" "xx"
#> [17,] "" "xx" "xx" "xx" "xx"
#>
#> $row_info
#> label name abs_rownumber
#> Mazda RX4 Mazda RX4 Mazda RX4 1
#> Mazda RX4 Wag Mazda RX4 Wag Mazda RX4 Wag 2
#> Datsun 710 Datsun 710 Datsun 710 3
#> Hornet 4 Drive Hornet 4 Drive Hornet 4 Drive 4
#> Hornet Sportabout Hornet Sportabout Hornet Sportabout 5
#> Valiant Valiant Valiant 6
#> Duster 360 Duster 360 Duster 360 7
#> Merc 240D Merc 240D Merc 240D 8
#> Merc 230 Merc 230 Merc 230 9
#> Merc 280 Merc 280 Merc 280 10
#> Merc 280C Merc 280C Merc 280C 11
#> Merc 450SE Merc 450SE Merc 450SE 12
#> Merc 450SL Merc 450SL Merc 450SL 13
#> Merc 450SLC Merc 450SLC Merc 450SLC 14
#> Cadillac Fleetwood Cadillac Fleetwood Cadillac Fleetwood 15
#> Lincoln Continental Lincoln Continental Lincoln Continental 16
#> path pos_in_siblings n_siblings self_extent
#> Mazda RX4 root, Ma.... 1 32 1
#> Mazda RX4 Wag root, Ma.... 2 32 1
#> Datsun 710 root, Da.... 3 32 1
#> Hornet 4 Drive root, Ho.... 4 32 1
#> Hornet Sportabout root, Ho.... 5 32 1
#> Valiant root, Va.... 6 32 1
#> Duster 360 root, Du.... 7 32 1
#> Merc 240D root, Me.... 8 32 1
#> Merc 230 root, Me.... 9 32 1
#> Merc 280 root, Me.... 10 32 1
#> Merc 280C root, Me.... 11 32 1
#> Merc 450SE root, Me.... 12 32 1
#> Merc 450SL root, Me.... 13 32 1
#> Merc 450SLC root, Me.... 14 32 1
#> Cadillac Fleetwood root, Ca.... 15 32 1
#> Lincoln Continental root, Li.... 16 32 1
#> par_extent reprint_inds node_class indent nrowrefs
#> Mazda RX4 0 NA 0 0
#> Mazda RX4 Wag 0 NA 0 0
#> Datsun 710 0 NA 0 0
#> Hornet 4 Drive 0 NA 0 0
#> Hornet Sportabout 0 NA 0 0
#> Valiant 0 NA 0 0
#> Duster 360 0 NA 0 0
#> Merc 240D 0 NA 0 0
#> Merc 230 0 NA 0 0
#> Merc 280 0 NA 0 0
#> Merc 280C 0 NA 0 0
#> Merc 450SE 0 NA 0 0
#> Merc 450SL 0 NA 0 0
#> Merc 450SLC 0 NA 0 0
#> Cadillac Fleetwood 0 NA 0 0
#> Lincoln Continental 0 NA 0 0
#> ncellrefs nreflines force_page page_title trailing_sep
#> Mazda RX4 0 0 FALSE <NA> <NA>
#> Mazda RX4 Wag 0 0 FALSE <NA> <NA>
#> Datsun 710 0 0 FALSE <NA> <NA>
#> Hornet 4 Drive 0 0 FALSE <NA> <NA>
#> Hornet Sportabout 0 0 FALSE <NA> <NA>
#> Valiant 0 0 FALSE <NA> <NA>
#> Duster 360 0 0 FALSE <NA> <NA>
#> Merc 240D 0 0 FALSE <NA> <NA>
#> Merc 230 0 0 FALSE <NA> <NA>
#> Merc 280 0 0 FALSE <NA> <NA>
#> Merc 280C 0 0 FALSE <NA> <NA>
#> Merc 450SE 0 0 FALSE <NA> <NA>
#> Merc 450SL 0 0 FALSE <NA> <NA>
#> Merc 450SLC 0 0 FALSE <NA> <NA>
#> Cadillac Fleetwood 0 0 FALSE <NA> <NA>
#> Lincoln Continental 0 0 FALSE <NA> <NA>
#> ref_info_df
#> Mazda RX4
#> Mazda RX4 Wag
#> Datsun 710
#> Hornet 4 Drive
#> Hornet Sportabout
#> Valiant
#> Duster 360
#> Merc 240D
#> Merc 230
#> Merc 280
#> Merc 280C
#> Merc 450SE
#> Merc 450SL
#> Merc 450SLC
#> Cadillac Fleetwood
#> Lincoln Continental
#>
#> $line_grouping
#> [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#>
#> $main_title
#> [1] ""
#>
#> $subtitles
#> character(0)
#>
#> $page_titles
#> character(0)
#>
#> $main_footer
#> [1] ""
#>
#> $prov_footer
#> character(0)
#>
#> $col_gap
#> [1] 3
#>
#> $table_inset
#> [1] 0
#>
#> $has_topleft
#> [1] FALSE
#>
#> $indent_size
#> [1] 2
#>
#> $col_widths
#> rnms mpg cyl disp hp
#> 19 4 3 5 3
#>
#> $ref_fnote_df
#> [1] row_path col_path row col symbol ref_index msg
#> [8] nlines
#> <0 rows> (or 0-length row.names)
#>
#> attr(,"nrow_header")
#> [1] 1
#> attr(,"ncols")
#> [1] 4
#> attr(,"class")
#> [1] "MatrixPrintForm" "list"
#>
#> [[2]]
#> $strings
#> rnms drat wt qsec vs am
#> [1,] "" "drat" "wt" "qsec" "vs" "am"
#> [2,] "Mazda RX4" "3.9" "2.62" "16.46" "0" "1"
#> [3,] "Mazda RX4 Wag" "3.9" "2.875" "17.02" "0" "1"
#> [4,] "Datsun 710" "3.85" "2.32" "18.61" "1" "1"
#> [5,] "Hornet 4 Drive" "3.08" "3.215" "19.44" "1" "0"
#> [6,] "Hornet Sportabout" "3.15" "3.44" "17.02" "0" "0"
#> [7,] "Valiant" "2.76" "3.46" "20.22" "1" "0"
#> [8,] "Duster 360" "3.21" "3.57" "15.84" "0" "0"
#> [9,] "Merc 240D" "3.69" "3.19" "20" "1" "0"
#> [10,] "Merc 230" "3.92" "3.15" "22.9" "1" "0"
#> [11,] "Merc 280" "3.92" "3.44" "18.3" "1" "0"
#> [12,] "Merc 280C" "3.92" "3.44" "18.9" "1" "0"
#> [13,] "Merc 450SE" "3.07" "4.07" "17.4" "0" "0"
#> [14,] "Merc 450SL" "3.07" "3.73" "17.6" "0" "0"
#> [15,] "Merc 450SLC" "3.07" "3.78" "18" "0" "0"
#> [16,] "Cadillac Fleetwood" "2.93" "5.25" "17.98" "0" "0"
#> [17,] "Lincoln Continental" "3" "5.424" "17.82" "0" "0"
#>
#> $spans
#> [,1] [,2] [,3] [,4] [,5] [,6]
#> [1,] 1 1 1 1 1 1
#> [2,] 1 1 1 1 1 1
#> [3,] 1 1 1 1 1 1
#> [4,] 1 1 1 1 1 1
#> [5,] 1 1 1 1 1 1
#> [6,] 1 1 1 1 1 1
#> [7,] 1 1 1 1 1 1
#> [8,] 1 1 1 1 1 1
#> [9,] 1 1 1 1 1 1
#> [10,] 1 1 1 1 1 1
#> [11,] 1 1 1 1 1 1
#> [12,] 1 1 1 1 1 1
#> [13,] 1 1 1 1 1 1
#> [14,] 1 1 1 1 1 1
#> [15,] 1 1 1 1 1 1
#> [16,] 1 1 1 1 1 1
#> [17,] 1 1 1 1 1 1
#>
#> $aligns
#> [,1] [,2] [,3] [,4] [,5] [,6]
#> [1,] "center" "center" "center" "center" "center" "center"
#> [2,] "left" "left" "left" "left" "left" "left"
#> [3,] "left" "left" "left" "left" "left" "left"
#> [4,] "left" "left" "left" "left" "left" "left"
#> [5,] "left" "left" "left" "left" "left" "left"
#> [6,] "left" "left" "left" "left" "left" "left"
#> [7,] "left" "left" "left" "left" "left" "left"
#> [8,] "left" "left" "left" "left" "left" "left"
#> [9,] "left" "left" "left" "left" "left" "left"
#> [10,] "left" "left" "left" "left" "left" "left"
#> [11,] "left" "left" "left" "left" "left" "left"
#> [12,] "left" "left" "left" "left" "left" "left"
#> [13,] "left" "left" "left" "left" "left" "left"
#> [14,] "left" "left" "left" "left" "left" "left"
#> [15,] "left" "left" "left" "left" "left" "left"
#> [16,] "left" "left" "left" "left" "left" "left"
#> [17,] "left" "left" "left" "left" "left" "left"
#>
#> $display
#> [,1] [,2] [,3] [,4] [,5] [,6]
#> [1,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [2,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [3,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [4,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [5,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [6,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [7,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [8,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [9,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [10,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [11,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [12,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [13,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [14,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [15,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [16,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [17,] TRUE TRUE TRUE TRUE TRUE TRUE
#>
#> $formats
#> [,1] [,2] [,3] [,4] [,5] [,6]
#> [1,] "" "" "" "" "" ""
#> [2,] "" "xx" "xx" "xx" "xx" "xx"
#> [3,] "" "xx" "xx" "xx" "xx" "xx"
#> [4,] "" "xx" "xx" "xx" "xx" "xx"
#> [5,] "" "xx" "xx" "xx" "xx" "xx"
#> [6,] "" "xx" "xx" "xx" "xx" "xx"
#> [7,] "" "xx" "xx" "xx" "xx" "xx"
#> [8,] "" "xx" "xx" "xx" "xx" "xx"
#> [9,] "" "xx" "xx" "xx" "xx" "xx"
#> [10,] "" "xx" "xx" "xx" "xx" "xx"
#> [11,] "" "xx" "xx" "xx" "xx" "xx"
#> [12,] "" "xx" "xx" "xx" "xx" "xx"
#> [13,] "" "xx" "xx" "xx" "xx" "xx"
#> [14,] "" "xx" "xx" "xx" "xx" "xx"
#> [15,] "" "xx" "xx" "xx" "xx" "xx"
#> [16,] "" "xx" "xx" "xx" "xx" "xx"
#> [17,] "" "xx" "xx" "xx" "xx" "xx"
#>
#> $row_info
#> label name abs_rownumber
#> Mazda RX4 Mazda RX4 Mazda RX4 1
#> Mazda RX4 Wag Mazda RX4 Wag Mazda RX4 Wag 2
#> Datsun 710 Datsun 710 Datsun 710 3
#> Hornet 4 Drive Hornet 4 Drive Hornet 4 Drive 4
#> Hornet Sportabout Hornet Sportabout Hornet Sportabout 5
#> Valiant Valiant Valiant 6
#> Duster 360 Duster 360 Duster 360 7
#> Merc 240D Merc 240D Merc 240D 8
#> Merc 230 Merc 230 Merc 230 9
#> Merc 280 Merc 280 Merc 280 10
#> Merc 280C Merc 280C Merc 280C 11
#> Merc 450SE Merc 450SE Merc 450SE 12
#> Merc 450SL Merc 450SL Merc 450SL 13
#> Merc 450SLC Merc 450SLC Merc 450SLC 14
#> Cadillac Fleetwood Cadillac Fleetwood Cadillac Fleetwood 15
#> Lincoln Continental Lincoln Continental Lincoln Continental 16
#> path pos_in_siblings n_siblings self_extent
#> Mazda RX4 root, Ma.... 1 32 1
#> Mazda RX4 Wag root, Ma.... 2 32 1
#> Datsun 710 root, Da.... 3 32 1
#> Hornet 4 Drive root, Ho.... 4 32 1
#> Hornet Sportabout root, Ho.... 5 32 1
#> Valiant root, Va.... 6 32 1
#> Duster 360 root, Du.... 7 32 1
#> Merc 240D root, Me.... 8 32 1
#> Merc 230 root, Me.... 9 32 1
#> Merc 280 root, Me.... 10 32 1
#> Merc 280C root, Me.... 11 32 1
#> Merc 450SE root, Me.... 12 32 1
#> Merc 450SL root, Me.... 13 32 1
#> Merc 450SLC root, Me.... 14 32 1
#> Cadillac Fleetwood root, Ca.... 15 32 1
#> Lincoln Continental root, Li.... 16 32 1
#> par_extent reprint_inds node_class indent nrowrefs
#> Mazda RX4 0 NA 0 0
#> Mazda RX4 Wag 0 NA 0 0
#> Datsun 710 0 NA 0 0
#> Hornet 4 Drive 0 NA 0 0
#> Hornet Sportabout 0 NA 0 0
#> Valiant 0 NA 0 0
#> Duster 360 0 NA 0 0
#> Merc 240D 0 NA 0 0
#> Merc 230 0 NA 0 0
#> Merc 280 0 NA 0 0
#> Merc 280C 0 NA 0 0
#> Merc 450SE 0 NA 0 0
#> Merc 450SL 0 NA 0 0
#> Merc 450SLC 0 NA 0 0
#> Cadillac Fleetwood 0 NA 0 0
#> Lincoln Continental 0 NA 0 0
#> ncellrefs nreflines force_page page_title trailing_sep
#> Mazda RX4 0 0 FALSE <NA> <NA>
#> Mazda RX4 Wag 0 0 FALSE <NA> <NA>
#> Datsun 710 0 0 FALSE <NA> <NA>
#> Hornet 4 Drive 0 0 FALSE <NA> <NA>
#> Hornet Sportabout 0 0 FALSE <NA> <NA>
#> Valiant 0 0 FALSE <NA> <NA>
#> Duster 360 0 0 FALSE <NA> <NA>
#> Merc 240D 0 0 FALSE <NA> <NA>
#> Merc 230 0 0 FALSE <NA> <NA>
#> Merc 280 0 0 FALSE <NA> <NA>
#> Merc 280C 0 0 FALSE <NA> <NA>
#> Merc 450SE 0 0 FALSE <NA> <NA>
#> Merc 450SL 0 0 FALSE <NA> <NA>
#> Merc 450SLC 0 0 FALSE <NA> <NA>
#> Cadillac Fleetwood 0 0 FALSE <NA> <NA>
#> Lincoln Continental 0 0 FALSE <NA> <NA>
#> ref_info_df
#> Mazda RX4
#> Mazda RX4 Wag
#> Datsun 710
#> Hornet 4 Drive
#> Hornet Sportabout
#> Valiant
#> Duster 360
#> Merc 240D
#> Merc 230
#> Merc 280
#> Merc 280C
#> Merc 450SE
#> Merc 450SL
#> Merc 450SLC
#> Cadillac Fleetwood
#> Lincoln Continental
#>
#> $line_grouping
#> [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#>
#> $main_title
#> [1] ""
#>
#> $subtitles
#> character(0)
#>
#> $page_titles
#> character(0)
#>
#> $main_footer
#> [1] ""
#>
#> $prov_footer
#> character(0)
#>
#> $col_gap
#> [1] 3
#>
#> $table_inset
#> [1] 0
#>
#> $has_topleft
#> [1] FALSE
#>
#> $indent_size
#> [1] 2
#>
#> $col_widths
#> rnms drat wt qsec vs am
#> 19 4 5 5 2 2
#>
#> $ref_fnote_df
#> [1] row_path col_path row col symbol ref_index msg
#> [8] nlines
#> <0 rows> (or 0-length row.names)
#>
#> attr(,"nrow_header")
#> [1] 1
#> attr(,"ncols")
#> [1] 5
#> attr(,"class")
#> [1] "MatrixPrintForm" "list"
#>
#> [[3]]
#> $strings
#> rnms gear carb
#> [1,] "" "gear" "carb"
#> [2,] "Mazda RX4" "4" "4"
#> [3,] "Mazda RX4 Wag" "4" "4"
#> [4,] "Datsun 710" "4" "1"
#> [5,] "Hornet 4 Drive" "3" "1"
#> [6,] "Hornet Sportabout" "3" "2"
#> [7,] "Valiant" "3" "1"
#> [8,] "Duster 360" "3" "4"
#> [9,] "Merc 240D" "4" "2"
#> [10,] "Merc 230" "4" "2"
#> [11,] "Merc 280" "4" "4"
#> [12,] "Merc 280C" "4" "4"
#> [13,] "Merc 450SE" "3" "3"
#> [14,] "Merc 450SL" "3" "3"
#> [15,] "Merc 450SLC" "3" "3"
#> [16,] "Cadillac Fleetwood" "3" "4"
#> [17,] "Lincoln Continental" "3" "4"
#>
#> $spans
#> [,1] [,2] [,3]
#> [1,] 1 1 1
#> [2,] 1 1 1
#> [3,] 1 1 1
#> [4,] 1 1 1
#> [5,] 1 1 1
#> [6,] 1 1 1
#> [7,] 1 1 1
#> [8,] 1 1 1
#> [9,] 1 1 1
#> [10,] 1 1 1
#> [11,] 1 1 1
#> [12,] 1 1 1
#> [13,] 1 1 1
#> [14,] 1 1 1
#> [15,] 1 1 1
#> [16,] 1 1 1
#> [17,] 1 1 1
#>
#> $aligns
#> [,1] [,2] [,3]
#> [1,] "center" "center" "center"
#> [2,] "left" "left" "left"
#> [3,] "left" "left" "left"
#> [4,] "left" "left" "left"
#> [5,] "left" "left" "left"
#> [6,] "left" "left" "left"
#> [7,] "left" "left" "left"
#> [8,] "left" "left" "left"
#> [9,] "left" "left" "left"
#> [10,] "left" "left" "left"
#> [11,] "left" "left" "left"
#> [12,] "left" "left" "left"
#> [13,] "left" "left" "left"
#> [14,] "left" "left" "left"
#> [15,] "left" "left" "left"
#> [16,] "left" "left" "left"
#> [17,] "left" "left" "left"
#>
#> $display
#> [,1] [,2] [,3]
#> [1,] TRUE TRUE TRUE
#> [2,] TRUE TRUE TRUE
#> [3,] TRUE TRUE TRUE
#> [4,] TRUE TRUE TRUE
#> [5,] TRUE TRUE TRUE
#> [6,] TRUE TRUE TRUE
#> [7,] TRUE TRUE TRUE
#> [8,] TRUE TRUE TRUE
#> [9,] TRUE TRUE TRUE
#> [10,] TRUE TRUE TRUE
#> [11,] TRUE TRUE TRUE
#> [12,] TRUE TRUE TRUE
#> [13,] TRUE TRUE TRUE
#> [14,] TRUE TRUE TRUE
#> [15,] TRUE TRUE TRUE
#> [16,] TRUE TRUE TRUE
#> [17,] TRUE TRUE TRUE
#>
#> $formats
#> [,1] [,2] [,3]
#> [1,] "" "" ""
#> [2,] "" "xx" "xx"
#> [3,] "" "xx" "xx"
#> [4,] "" "xx" "xx"
#> [5,] "" "xx" "xx"
#> [6,] "" "xx" "xx"
#> [7,] "" "xx" "xx"
#> [8,] "" "xx" "xx"
#> [9,] "" "xx" "xx"
#> [10,] "" "xx" "xx"
#> [11,] "" "xx" "xx"
#> [12,] "" "xx" "xx"
#> [13,] "" "xx" "xx"
#> [14,] "" "xx" "xx"
#> [15,] "" "xx" "xx"
#> [16,] "" "xx" "xx"
#> [17,] "" "xx" "xx"
#>
#> $row_info
#> label name abs_rownumber
#> Mazda RX4 Mazda RX4 Mazda RX4 1
#> Mazda RX4 Wag Mazda RX4 Wag Mazda RX4 Wag 2
#> Datsun 710 Datsun 710 Datsun 710 3
#> Hornet 4 Drive Hornet 4 Drive Hornet 4 Drive 4
#> Hornet Sportabout Hornet Sportabout Hornet Sportabout 5
#> Valiant Valiant Valiant 6
#> Duster 360 Duster 360 Duster 360 7
#> Merc 240D Merc 240D Merc 240D 8
#> Merc 230 Merc 230 Merc 230 9
#> Merc 280 Merc 280 Merc 280 10
#> Merc 280C Merc 280C Merc 280C 11
#> Merc 450SE Merc 450SE Merc 450SE 12
#> Merc 450SL Merc 450SL Merc 450SL 13
#> Merc 450SLC Merc 450SLC Merc 450SLC 14
#> Cadillac Fleetwood Cadillac Fleetwood Cadillac Fleetwood 15
#> Lincoln Continental Lincoln Continental Lincoln Continental 16
#> path pos_in_siblings n_siblings self_extent
#> Mazda RX4 root, Ma.... 1 32 1
#> Mazda RX4 Wag root, Ma.... 2 32 1
#> Datsun 710 root, Da.... 3 32 1
#> Hornet 4 Drive root, Ho.... 4 32 1
#> Hornet Sportabout root, Ho.... 5 32 1
#> Valiant root, Va.... 6 32 1
#> Duster 360 root, Du.... 7 32 1
#> Merc 240D root, Me.... 8 32 1
#> Merc 230 root, Me.... 9 32 1
#> Merc 280 root, Me.... 10 32 1
#> Merc 280C root, Me.... 11 32 1
#> Merc 450SE root, Me.... 12 32 1
#> Merc 450SL root, Me.... 13 32 1
#> Merc 450SLC root, Me.... 14 32 1
#> Cadillac Fleetwood root, Ca.... 15 32 1
#> Lincoln Continental root, Li.... 16 32 1
#> par_extent reprint_inds node_class indent nrowrefs
#> Mazda RX4 0 NA 0 0
#> Mazda RX4 Wag 0 NA 0 0
#> Datsun 710 0 NA 0 0
#> Hornet 4 Drive 0 NA 0 0
#> Hornet Sportabout 0 NA 0 0
#> Valiant 0 NA 0 0
#> Duster 360 0 NA 0 0
#> Merc 240D 0 NA 0 0
#> Merc 230 0 NA 0 0
#> Merc 280 0 NA 0 0
#> Merc 280C 0 NA 0 0
#> Merc 450SE 0 NA 0 0
#> Merc 450SL 0 NA 0 0
#> Merc 450SLC 0 NA 0 0
#> Cadillac Fleetwood 0 NA 0 0
#> Lincoln Continental 0 NA 0 0
#> ncellrefs nreflines force_page page_title trailing_sep
#> Mazda RX4 0 0 FALSE <NA> <NA>
#> Mazda RX4 Wag 0 0 FALSE <NA> <NA>
#> Datsun 710 0 0 FALSE <NA> <NA>
#> Hornet 4 Drive 0 0 FALSE <NA> <NA>
#> Hornet Sportabout 0 0 FALSE <NA> <NA>
#> Valiant 0 0 FALSE <NA> <NA>
#> Duster 360 0 0 FALSE <NA> <NA>
#> Merc 240D 0 0 FALSE <NA> <NA>
#> Merc 230 0 0 FALSE <NA> <NA>
#> Merc 280 0 0 FALSE <NA> <NA>
#> Merc 280C 0 0 FALSE <NA> <NA>
#> Merc 450SE 0 0 FALSE <NA> <NA>
#> Merc 450SL 0 0 FALSE <NA> <NA>
#> Merc 450SLC 0 0 FALSE <NA> <NA>
#> Cadillac Fleetwood 0 0 FALSE <NA> <NA>
#> Lincoln Continental 0 0 FALSE <NA> <NA>
#> ref_info_df
#> Mazda RX4
#> Mazda RX4 Wag
#> Datsun 710
#> Hornet 4 Drive
#> Hornet Sportabout
#> Valiant
#> Duster 360
#> Merc 240D
#> Merc 230
#> Merc 280
#> Merc 280C
#> Merc 450SE
#> Merc 450SL
#> Merc 450SLC
#> Cadillac Fleetwood
#> Lincoln Continental
#>
#> $line_grouping
#> [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#>
#> $main_title
#> [1] ""
#>
#> $subtitles
#> character(0)
#>
#> $page_titles
#> character(0)
#>
#> $main_footer
#> [1] ""
#>
#> $prov_footer
#> character(0)
#>
#> $col_gap
#> [1] 3
#>
#> $table_inset
#> [1] 0
#>
#> $has_topleft
#> [1] FALSE
#>
#> $indent_size
#> [1] 2
#>
#> $col_widths
#> rnms gear carb
#> 19 4 4
#>
#> $ref_fnote_df
#> [1] row_path col_path row col symbol ref_index msg
#> [8] nlines
#> <0 rows> (or 0-length row.names)
#>
#> attr(,"nrow_header")
#> [1] 1
#> attr(,"ncols")
#> [1] 2
#> attr(,"class")
#> [1] "MatrixPrintForm" "list"
#>
#> [[4]]
#> $strings
#> rnms mpg cyl disp hp
#> [1,] "" "mpg" "cyl" "disp" "hp"
#> [2,] "Chrysler Imperial" "14.7" "8" "440" "230"
#> [3,] "Fiat 128" "32.4" "4" "78.7" "66"
#> [4,] "Honda Civic" "30.4" "4" "75.7" "52"
#> [5,] "Toyota Corolla" "33.9" "4" "71.1" "65"
#> [6,] "Toyota Corona" "21.5" "4" "120.1" "97"
#> [7,] "Dodge Challenger" "15.5" "8" "318" "150"
#> [8,] "AMC Javelin" "15.2" "8" "304" "150"
#> [9,] "Camaro Z28" "13.3" "8" "350" "245"
#> [10,] "Pontiac Firebird" "19.2" "8" "400" "175"
#> [11,] "Fiat X1-9" "27.3" "4" "79" "66"
#> [12,] "Porsche 914-2" "26" "4" "120.3" "91"
#> [13,] "Lotus Europa" "30.4" "4" "95.1" "113"
#> [14,] "Ford Pantera L" "15.8" "8" "351" "264"
#> [15,] "Ferrari Dino" "19.7" "6" "145" "175"
#> [16,] "Maserati Bora" "15" "8" "301" "335"
#> [17,] "Volvo 142E" "21.4" "4" "121" "109"
#>
#> $spans
#> [,1] [,2] [,3] [,4] [,5]
#> [1,] 1 1 1 1 1
#> [2,] 1 1 1 1 1
#> [3,] 1 1 1 1 1
#> [4,] 1 1 1 1 1
#> [5,] 1 1 1 1 1
#> [6,] 1 1 1 1 1
#> [7,] 1 1 1 1 1
#> [8,] 1 1 1 1 1
#> [9,] 1 1 1 1 1
#> [10,] 1 1 1 1 1
#> [11,] 1 1 1 1 1
#> [12,] 1 1 1 1 1
#> [13,] 1 1 1 1 1
#> [14,] 1 1 1 1 1
#> [15,] 1 1 1 1 1
#> [16,] 1 1 1 1 1
#> [17,] 1 1 1 1 1
#>
#> $aligns
#> [,1] [,2] [,3] [,4] [,5]
#> [1,] "center" "center" "center" "center" "center"
#> [2,] "left" "left" "left" "left" "left"
#> [3,] "left" "left" "left" "left" "left"
#> [4,] "left" "left" "left" "left" "left"
#> [5,] "left" "left" "left" "left" "left"
#> [6,] "left" "left" "left" "left" "left"
#> [7,] "left" "left" "left" "left" "left"
#> [8,] "left" "left" "left" "left" "left"
#> [9,] "left" "left" "left" "left" "left"
#> [10,] "left" "left" "left" "left" "left"
#> [11,] "left" "left" "left" "left" "left"
#> [12,] "left" "left" "left" "left" "left"
#> [13,] "left" "left" "left" "left" "left"
#> [14,] "left" "left" "left" "left" "left"
#> [15,] "left" "left" "left" "left" "left"
#> [16,] "left" "left" "left" "left" "left"
#> [17,] "left" "left" "left" "left" "left"
#>
#> $display
#> [,1] [,2] [,3] [,4] [,5]
#> [1,] TRUE TRUE TRUE TRUE TRUE
#> [2,] TRUE TRUE TRUE TRUE TRUE
#> [3,] TRUE TRUE TRUE TRUE TRUE
#> [4,] TRUE TRUE TRUE TRUE TRUE
#> [5,] TRUE TRUE TRUE TRUE TRUE
#> [6,] TRUE TRUE TRUE TRUE TRUE
#> [7,] TRUE TRUE TRUE TRUE TRUE
#> [8,] TRUE TRUE TRUE TRUE TRUE
#> [9,] TRUE TRUE TRUE TRUE TRUE
#> [10,] TRUE TRUE TRUE TRUE TRUE
#> [11,] TRUE TRUE TRUE TRUE TRUE
#> [12,] TRUE TRUE TRUE TRUE TRUE
#> [13,] TRUE TRUE TRUE TRUE TRUE
#> [14,] TRUE TRUE TRUE TRUE TRUE
#> [15,] TRUE TRUE TRUE TRUE TRUE
#> [16,] TRUE TRUE TRUE TRUE TRUE
#> [17,] TRUE TRUE TRUE TRUE TRUE
#>
#> $formats
#> [,1] [,2] [,3] [,4] [,5]
#> [1,] "" "" "" "" ""
#> [2,] "" "xx" "xx" "xx" "xx"
#> [3,] "" "xx" "xx" "xx" "xx"
#> [4,] "" "xx" "xx" "xx" "xx"
#> [5,] "" "xx" "xx" "xx" "xx"
#> [6,] "" "xx" "xx" "xx" "xx"
#> [7,] "" "xx" "xx" "xx" "xx"
#> [8,] "" "xx" "xx" "xx" "xx"
#> [9,] "" "xx" "xx" "xx" "xx"
#> [10,] "" "xx" "xx" "xx" "xx"
#> [11,] "" "xx" "xx" "xx" "xx"
#> [12,] "" "xx" "xx" "xx" "xx"
#> [13,] "" "xx" "xx" "xx" "xx"
#> [14,] "" "xx" "xx" "xx" "xx"
#> [15,] "" "xx" "xx" "xx" "xx"
#> [16,] "" "xx" "xx" "xx" "xx"
#> [17,] "" "xx" "xx" "xx" "xx"
#>
#> $row_info
#> label name abs_rownumber
#> Chrysler Imperial Chrysler Imperial Chrysler Imperial 1
#> Fiat 128 Fiat 128 Fiat 128 2
#> Honda Civic Honda Civic Honda Civic 3
#> Toyota Corolla Toyota Corolla Toyota Corolla 4
#> Toyota Corona Toyota Corona Toyota Corona 5
#> Dodge Challenger Dodge Challenger Dodge Challenger 6
#> AMC Javelin AMC Javelin AMC Javelin 7
#> Camaro Z28 Camaro Z28 Camaro Z28 8
#> Pontiac Firebird Pontiac Firebird Pontiac Firebird 9
#> Fiat X1-9 Fiat X1-9 Fiat X1-9 10
#> Porsche 914-2 Porsche 914-2 Porsche 914-2 11
#> Lotus Europa Lotus Europa Lotus Europa 12
#> Ford Pantera L Ford Pantera L Ford Pantera L 13
#> Ferrari Dino Ferrari Dino Ferrari Dino 14
#> Maserati Bora Maserati Bora Maserati Bora 15
#> Volvo 142E Volvo 142E Volvo 142E 16
#> path pos_in_siblings n_siblings self_extent
#> Chrysler Imperial root, Ch.... 17 32 1
#> Fiat 128 root, Fi.... 18 32 1
#> Honda Civic root, Ho.... 19 32 1
#> Toyota Corolla root, To.... 20 32 1
#> Toyota Corona root, To.... 21 32 1
#> Dodge Challenger root, Do.... 22 32 1
#> AMC Javelin root, AM.... 23 32 1
#> Camaro Z28 root, Ca.... 24 32 1
#> Pontiac Firebird root, Po.... 25 32 1
#> Fiat X1-9 root, Fi.... 26 32 1
#> Porsche 914-2 root, Po.... 27 32 1
#> Lotus Europa root, Lo.... 28 32 1
#> Ford Pantera L root, Fo.... 29 32 1
#> Ferrari Dino root, Fe.... 30 32 1
#> Maserati Bora root, Ma.... 31 32 1
#> Volvo 142E root, Vo.... 32 32 1
#> par_extent reprint_inds node_class indent nrowrefs ncellrefs
#> Chrysler Imperial 0 NA 0 0 0
#> Fiat 128 0 NA 0 0 0
#> Honda Civic 0 NA 0 0 0
#> Toyota Corolla 0 NA 0 0 0
#> Toyota Corona 0 NA 0 0 0
#> Dodge Challenger 0 NA 0 0 0
#> AMC Javelin 0 NA 0 0 0
#> Camaro Z28 0 NA 0 0 0
#> Pontiac Firebird 0 NA 0 0 0
#> Fiat X1-9 0 NA 0 0 0
#> Porsche 914-2 0 NA 0 0 0
#> Lotus Europa 0 NA 0 0 0
#> Ford Pantera L 0 NA 0 0 0
#> Ferrari Dino 0 NA 0 0 0
#> Maserati Bora 0 NA 0 0 0
#> Volvo 142E 0 NA 0 0 0
#> nreflines force_page page_title trailing_sep ref_info_df
#> Chrysler Imperial 0 FALSE <NA> <NA>
#> Fiat 128 0 FALSE <NA> <NA>
#> Honda Civic 0 FALSE <NA> <NA>
#> Toyota Corolla 0 FALSE <NA> <NA>
#> Toyota Corona 0 FALSE <NA> <NA>
#> Dodge Challenger 0 FALSE <NA> <NA>
#> AMC Javelin 0 FALSE <NA> <NA>
#> Camaro Z28 0 FALSE <NA> <NA>
#> Pontiac Firebird 0 FALSE <NA> <NA>
#> Fiat X1-9 0 FALSE <NA> <NA>
#> Porsche 914-2 0 FALSE <NA> <NA>
#> Lotus Europa 0 FALSE <NA> <NA>
#> Ford Pantera L 0 FALSE <NA> <NA>
#> Ferrari Dino 0 FALSE <NA> <NA>
#> Maserati Bora 0 FALSE <NA> <NA>
#> Volvo 142E 0 FALSE <NA> <NA>
#>
#> $line_grouping
#> [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#>
#> $main_title
#> [1] ""
#>
#> $subtitles
#> character(0)
#>
#> $page_titles
#> character(0)
#>
#> $main_footer
#> [1] ""
#>
#> $prov_footer
#> character(0)
#>
#> $col_gap
#> [1] 3
#>
#> $table_inset
#> [1] 0
#>
#> $has_topleft
#> [1] FALSE
#>
#> $indent_size
#> [1] 2
#>
#> $col_widths
#> rnms mpg cyl disp hp
#> 19 4 3 5 3
#>
#> $ref_fnote_df
#> [1] row_path col_path row col symbol ref_index msg
#> [8] nlines
#> <0 rows> (or 0-length row.names)
#>
#> attr(,"nrow_header")
#> [1] 1
#> attr(,"ncols")
#> [1] 4
#> attr(,"class")
#> [1] "MatrixPrintForm" "list"
#>
#> [[5]]
#> $strings
#> rnms drat wt qsec vs am
#> [1,] "" "drat" "wt" "qsec" "vs" "am"
#> [2,] "Chrysler Imperial" "3.23" "5.345" "17.42" "0" "0"
#> [3,] "Fiat 128" "4.08" "2.2" "19.47" "1" "1"
#> [4,] "Honda Civic" "4.93" "1.615" "18.52" "1" "1"
#> [5,] "Toyota Corolla" "4.22" "1.835" "19.9" "1" "1"
#> [6,] "Toyota Corona" "3.7" "2.465" "20.01" "1" "0"
#> [7,] "Dodge Challenger" "2.76" "3.52" "16.87" "0" "0"
#> [8,] "AMC Javelin" "3.15" "3.435" "17.3" "0" "0"
#> [9,] "Camaro Z28" "3.73" "3.84" "15.41" "0" "0"
#> [10,] "Pontiac Firebird" "3.08" "3.845" "17.05" "0" "0"
#> [11,] "Fiat X1-9" "4.08" "1.935" "18.9" "1" "1"
#> [12,] "Porsche 914-2" "4.43" "2.14" "16.7" "0" "1"
#> [13,] "Lotus Europa" "3.77" "1.513" "16.9" "1" "1"
#> [14,] "Ford Pantera L" "4.22" "3.17" "14.5" "0" "1"
#> [15,] "Ferrari Dino" "3.62" "2.77" "15.5" "0" "1"
#> [16,] "Maserati Bora" "3.54" "3.57" "14.6" "0" "1"
#> [17,] "Volvo 142E" "4.11" "2.78" "18.6" "1" "1"
#>
#> $spans
#> [,1] [,2] [,3] [,4] [,5] [,6]
#> [1,] 1 1 1 1 1 1
#> [2,] 1 1 1 1 1 1
#> [3,] 1 1 1 1 1 1
#> [4,] 1 1 1 1 1 1
#> [5,] 1 1 1 1 1 1
#> [6,] 1 1 1 1 1 1
#> [7,] 1 1 1 1 1 1
#> [8,] 1 1 1 1 1 1
#> [9,] 1 1 1 1 1 1
#> [10,] 1 1 1 1 1 1
#> [11,] 1 1 1 1 1 1
#> [12,] 1 1 1 1 1 1
#> [13,] 1 1 1 1 1 1
#> [14,] 1 1 1 1 1 1
#> [15,] 1 1 1 1 1 1
#> [16,] 1 1 1 1 1 1
#> [17,] 1 1 1 1 1 1
#>
#> $aligns
#> [,1] [,2] [,3] [,4] [,5] [,6]
#> [1,] "center" "center" "center" "center" "center" "center"
#> [2,] "left" "left" "left" "left" "left" "left"
#> [3,] "left" "left" "left" "left" "left" "left"
#> [4,] "left" "left" "left" "left" "left" "left"
#> [5,] "left" "left" "left" "left" "left" "left"
#> [6,] "left" "left" "left" "left" "left" "left"
#> [7,] "left" "left" "left" "left" "left" "left"
#> [8,] "left" "left" "left" "left" "left" "left"
#> [9,] "left" "left" "left" "left" "left" "left"
#> [10,] "left" "left" "left" "left" "left" "left"
#> [11,] "left" "left" "left" "left" "left" "left"
#> [12,] "left" "left" "left" "left" "left" "left"
#> [13,] "left" "left" "left" "left" "left" "left"
#> [14,] "left" "left" "left" "left" "left" "left"
#> [15,] "left" "left" "left" "left" "left" "left"
#> [16,] "left" "left" "left" "left" "left" "left"
#> [17,] "left" "left" "left" "left" "left" "left"
#>
#> $display
#> [,1] [,2] [,3] [,4] [,5] [,6]
#> [1,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [2,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [3,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [4,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [5,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [6,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [7,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [8,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [9,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [10,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [11,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [12,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [13,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [14,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [15,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [16,] TRUE TRUE TRUE TRUE TRUE TRUE
#> [17,] TRUE TRUE TRUE TRUE TRUE TRUE
#>
#> $formats
#> [,1] [,2] [,3] [,4] [,5] [,6]
#> [1,] "" "" "" "" "" ""
#> [2,] "" "xx" "xx" "xx" "xx" "xx"
#> [3,] "" "xx" "xx" "xx" "xx" "xx"
#> [4,] "" "xx" "xx" "xx" "xx" "xx"
#> [5,] "" "xx" "xx" "xx" "xx" "xx"
#> [6,] "" "xx" "xx" "xx" "xx" "xx"
#> [7,] "" "xx" "xx" "xx" "xx" "xx"
#> [8,] "" "xx" "xx" "xx" "xx" "xx"
#> [9,] "" "xx" "xx" "xx" "xx" "xx"
#> [10,] "" "xx" "xx" "xx" "xx" "xx"
#> [11,] "" "xx" "xx" "xx" "xx" "xx"
#> [12,] "" "xx" "xx" "xx" "xx" "xx"
#> [13,] "" "xx" "xx" "xx" "xx" "xx"
#> [14,] "" "xx" "xx" "xx" "xx" "xx"
#> [15,] "" "xx" "xx" "xx" "xx" "xx"
#> [16,] "" "xx" "xx" "xx" "xx" "xx"
#> [17,] "" "xx" "xx" "xx" "xx" "xx"
#>
#> $row_info
#> label name abs_rownumber
#> Chrysler Imperial Chrysler Imperial Chrysler Imperial 1
#> Fiat 128 Fiat 128 Fiat 128 2
#> Honda Civic Honda Civic Honda Civic 3
#> Toyota Corolla Toyota Corolla Toyota Corolla 4
#> Toyota Corona Toyota Corona Toyota Corona 5
#> Dodge Challenger Dodge Challenger Dodge Challenger 6
#> AMC Javelin AMC Javelin AMC Javelin 7
#> Camaro Z28 Camaro Z28 Camaro Z28 8
#> Pontiac Firebird Pontiac Firebird Pontiac Firebird 9
#> Fiat X1-9 Fiat X1-9 Fiat X1-9 10
#> Porsche 914-2 Porsche 914-2 Porsche 914-2 11
#> Lotus Europa Lotus Europa Lotus Europa 12
#> Ford Pantera L Ford Pantera L Ford Pantera L 13
#> Ferrari Dino Ferrari Dino Ferrari Dino 14
#> Maserati Bora Maserati Bora Maserati Bora 15
#> Volvo 142E Volvo 142E Volvo 142E 16
#> path pos_in_siblings n_siblings self_extent
#> Chrysler Imperial root, Ch.... 17 32 1
#> Fiat 128 root, Fi.... 18 32 1
#> Honda Civic root, Ho.... 19 32 1
#> Toyota Corolla root, To.... 20 32 1
#> Toyota Corona root, To.... 21 32 1
#> Dodge Challenger root, Do.... 22 32 1
#> AMC Javelin root, AM.... 23 32 1
#> Camaro Z28 root, Ca.... 24 32 1
#> Pontiac Firebird root, Po.... 25 32 1
#> Fiat X1-9 root, Fi.... 26 32 1
#> Porsche 914-2 root, Po.... 27 32 1
#> Lotus Europa root, Lo.... 28 32 1
#> Ford Pantera L root, Fo.... 29 32 1
#> Ferrari Dino root, Fe.... 30 32 1
#> Maserati Bora root, Ma.... 31 32 1
#> Volvo 142E root, Vo.... 32 32 1
#> par_extent reprint_inds node_class indent nrowrefs ncellrefs
#> Chrysler Imperial 0 NA 0 0 0
#> Fiat 128 0 NA 0 0 0
#> Honda Civic 0 NA 0 0 0
#> Toyota Corolla 0 NA 0 0 0
#> Toyota Corona 0 NA 0 0 0
#> Dodge Challenger 0 NA 0 0 0
#> AMC Javelin 0 NA 0 0 0
#> Camaro Z28 0 NA 0 0 0
#> Pontiac Firebird 0 NA 0 0 0
#> Fiat X1-9 0 NA 0 0 0
#> Porsche 914-2 0 NA 0 0 0
#> Lotus Europa 0 NA 0 0 0
#> Ford Pantera L 0 NA 0 0 0
#> Ferrari Dino 0 NA 0 0 0
#> Maserati Bora 0 NA 0 0 0
#> Volvo 142E 0 NA 0 0 0
#> nreflines force_page page_title trailing_sep ref_info_df
#> Chrysler Imperial 0 FALSE <NA> <NA>
#> Fiat 128 0 FALSE <NA> <NA>
#> Honda Civic 0 FALSE <NA> <NA>
#> Toyota Corolla 0 FALSE <NA> <NA>
#> Toyota Corona 0 FALSE <NA> <NA>
#> Dodge Challenger 0 FALSE <NA> <NA>
#> AMC Javelin 0 FALSE <NA> <NA>
#> Camaro Z28 0 FALSE <NA> <NA>
#> Pontiac Firebird 0 FALSE <NA> <NA>
#> Fiat X1-9 0 FALSE <NA> <NA>
#> Porsche 914-2 0 FALSE <NA> <NA>
#> Lotus Europa 0 FALSE <NA> <NA>
#> Ford Pantera L 0 FALSE <NA> <NA>
#> Ferrari Dino 0 FALSE <NA> <NA>
#> Maserati Bora 0 FALSE <NA> <NA>
#> Volvo 142E 0 FALSE <NA> <NA>
#>
#> $line_grouping
#> [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#>
#> $main_title
#> [1] ""
#>
#> $subtitles
#> character(0)
#>
#> $page_titles
#> character(0)
#>
#> $main_footer
#> [1] ""
#>
#> $prov_footer
#> character(0)
#>
#> $col_gap
#> [1] 3
#>
#> $table_inset
#> [1] 0
#>
#> $has_topleft
#> [1] FALSE
#>
#> $indent_size
#> [1] 2
#>
#> $col_widths
#> rnms drat wt qsec vs am
#> 19 4 5 5 2 2
#>
#> $ref_fnote_df
#> [1] row_path col_path row col symbol ref_index msg
#> [8] nlines
#> <0 rows> (or 0-length row.names)
#>
#> attr(,"nrow_header")
#> [1] 1
#> attr(,"ncols")
#> [1] 5
#> attr(,"class")
#> [1] "MatrixPrintForm" "list"
#>
#> [[6]]
#> $strings
#> rnms gear carb
#> [1,] "" "gear" "carb"
#> [2,] "Chrysler Imperial" "3" "4"
#> [3,] "Fiat 128" "4" "1"
#> [4,] "Honda Civic" "4" "2"
#> [5,] "Toyota Corolla" "4" "1"
#> [6,] "Toyota Corona" "3" "1"
#> [7,] "Dodge Challenger" "3" "2"
#> [8,] "AMC Javelin" "3" "2"
#> [9,] "Camaro Z28" "3" "4"
#> [10,] "Pontiac Firebird" "3" "2"
#> [11,] "Fiat X1-9" "4" "1"
#> [12,] "Porsche 914-2" "5" "2"
#> [13,] "Lotus Europa" "5" "2"
#> [14,] "Ford Pantera L" "5" "4"
#> [15,] "Ferrari Dino" "5" "6"
#> [16,] "Maserati Bora" "5" "8"
#> [17,] "Volvo 142E" "4" "2"
#>
#> $spans
#> [,1] [,2] [,3]
#> [1,] 1 1 1
#> [2,] 1 1 1
#> [3,] 1 1 1
#> [4,] 1 1 1
#> [5,] 1 1 1
#> [6,] 1 1 1
#> [7,] 1 1 1
#> [8,] 1 1 1
#> [9,] 1 1 1
#> [10,] 1 1 1
#> [11,] 1 1 1
#> [12,] 1 1 1
#> [13,] 1 1 1
#> [14,] 1 1 1
#> [15,] 1 1 1
#> [16,] 1 1 1
#> [17,] 1 1 1
#>
#> $aligns
#> [,1] [,2] [,3]
#> [1,] "center" "center" "center"
#> [2,] "left" "left" "left"
#> [3,] "left" "left" "left"
#> [4,] "left" "left" "left"
#> [5,] "left" "left" "left"
#> [6,] "left" "left" "left"
#> [7,] "left" "left" "left"
#> [8,] "left" "left" "left"
#> [9,] "left" "left" "left"
#> [10,] "left" "left" "left"
#> [11,] "left" "left" "left"
#> [12,] "left" "left" "left"
#> [13,] "left" "left" "left"
#> [14,] "left" "left" "left"
#> [15,] "left" "left" "left"
#> [16,] "left" "left" "left"
#> [17,] "left" "left" "left"
#>
#> $display
#> [,1] [,2] [,3]
#> [1,] TRUE TRUE TRUE
#> [2,] TRUE TRUE TRUE
#> [3,] TRUE TRUE TRUE
#> [4,] TRUE TRUE TRUE
#> [5,] TRUE TRUE TRUE
#> [6,] TRUE TRUE TRUE
#> [7,] TRUE TRUE TRUE
#> [8,] TRUE TRUE TRUE
#> [9,] TRUE TRUE TRUE
#> [10,] TRUE TRUE TRUE
#> [11,] TRUE TRUE TRUE
#> [12,] TRUE TRUE TRUE
#> [13,] TRUE TRUE TRUE
#> [14,] TRUE TRUE TRUE
#> [15,] TRUE TRUE TRUE
#> [16,] TRUE TRUE TRUE
#> [17,] TRUE TRUE TRUE
#>
#> $formats
#> [,1] [,2] [,3]
#> [1,] "" "" ""
#> [2,] "" "xx" "xx"
#> [3,] "" "xx" "xx"
#> [4,] "" "xx" "xx"
#> [5,] "" "xx" "xx"
#> [6,] "" "xx" "xx"
#> [7,] "" "xx" "xx"
#> [8,] "" "xx" "xx"
#> [9,] "" "xx" "xx"
#> [10,] "" "xx" "xx"
#> [11,] "" "xx" "xx"
#> [12,] "" "xx" "xx"
#> [13,] "" "xx" "xx"
#> [14,] "" "xx" "xx"
#> [15,] "" "xx" "xx"
#> [16,] "" "xx" "xx"
#> [17,] "" "xx" "xx"
#>
#> $row_info
#> label name abs_rownumber
#> Chrysler Imperial Chrysler Imperial Chrysler Imperial 1
#> Fiat 128 Fiat 128 Fiat 128 2
#> Honda Civic Honda Civic Honda Civic 3
#> Toyota Corolla Toyota Corolla Toyota Corolla 4
#> Toyota Corona Toyota Corona Toyota Corona 5
#> Dodge Challenger Dodge Challenger Dodge Challenger 6
#> AMC Javelin AMC Javelin AMC Javelin 7
#> Camaro Z28 Camaro Z28 Camaro Z28 8
#> Pontiac Firebird Pontiac Firebird Pontiac Firebird 9
#> Fiat X1-9 Fiat X1-9 Fiat X1-9 10
#> Porsche 914-2 Porsche 914-2 Porsche 914-2 11
#> Lotus Europa Lotus Europa Lotus Europa 12
#> Ford Pantera L Ford Pantera L Ford Pantera L 13
#> Ferrari Dino Ferrari Dino Ferrari Dino 14
#> Maserati Bora Maserati Bora Maserati Bora 15
#> Volvo 142E Volvo 142E Volvo 142E 16
#> path pos_in_siblings n_siblings self_extent
#> Chrysler Imperial root, Ch.... 17 32 1
#> Fiat 128 root, Fi.... 18 32 1
#> Honda Civic root, Ho.... 19 32 1
#> Toyota Corolla root, To.... 20 32 1
#> Toyota Corona root, To.... 21 32 1
#> Dodge Challenger root, Do.... 22 32 1
#> AMC Javelin root, AM.... 23 32 1
#> Camaro Z28 root, Ca.... 24 32 1
#> Pontiac Firebird root, Po.... 25 32 1
#> Fiat X1-9 root, Fi.... 26 32 1
#> Porsche 914-2 root, Po.... 27 32 1
#> Lotus Europa root, Lo.... 28 32 1
#> Ford Pantera L root, Fo.... 29 32 1
#> Ferrari Dino root, Fe.... 30 32 1
#> Maserati Bora root, Ma.... 31 32 1
#> Volvo 142E root, Vo.... 32 32 1
#> par_extent reprint_inds node_class indent nrowrefs ncellrefs
#> Chrysler Imperial 0 NA 0 0 0
#> Fiat 128 0 NA 0 0 0
#> Honda Civic 0 NA 0 0 0
#> Toyota Corolla 0 NA 0 0 0
#> Toyota Corona 0 NA 0 0 0
#> Dodge Challenger 0 NA 0 0 0
#> AMC Javelin 0 NA 0 0 0
#> Camaro Z28 0 NA 0 0 0
#> Pontiac Firebird 0 NA 0 0 0
#> Fiat X1-9 0 NA 0 0 0
#> Porsche 914-2 0 NA 0 0 0
#> Lotus Europa 0 NA 0 0 0
#> Ford Pantera L 0 NA 0 0 0
#> Ferrari Dino 0 NA 0 0 0
#> Maserati Bora 0 NA 0 0 0
#> Volvo 142E 0 NA 0 0 0
#> nreflines force_page page_title trailing_sep ref_info_df
#> Chrysler Imperial 0 FALSE <NA> <NA>
#> Fiat 128 0 FALSE <NA> <NA>
#> Honda Civic 0 FALSE <NA> <NA>
#> Toyota Corolla 0 FALSE <NA> <NA>
#> Toyota Corona 0 FALSE <NA> <NA>
#> Dodge Challenger 0 FALSE <NA> <NA>
#> AMC Javelin 0 FALSE <NA> <NA>
#> Camaro Z28 0 FALSE <NA> <NA>
#> Pontiac Firebird 0 FALSE <NA> <NA>
#> Fiat X1-9 0 FALSE <NA> <NA>
#> Porsche 914-2 0 FALSE <NA> <NA>
#> Lotus Europa 0 FALSE <NA> <NA>
#> Ford Pantera L 0 FALSE <NA> <NA>
#> Ferrari Dino 0 FALSE <NA> <NA>
#> Maserati Bora 0 FALSE <NA> <NA>
#> Volvo 142E 0 FALSE <NA> <NA>
#>
#> $line_grouping
#> [1] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
#>
#> $main_title
#> [1] ""
#>
#> $subtitles
#> character(0)
#>
#> $page_titles
#> character(0)
#>
#> $main_footer
#> [1] ""
#>
#> $prov_footer
#> character(0)
#>
#> $col_gap
#> [1] 3
#>
#> $table_inset
#> [1] 0
#>
#> $has_topleft
#> [1] FALSE
#>
#> $indent_size
#> [1] 2
#>
#> $col_widths
#> rnms gear carb
#> 19 4 4
#>
#> $ref_fnote_df
#> [1] row_path col_path row col symbol ref_index msg
#> [8] nlines
#> <0 rows> (or 0-length row.names)
#>
#> attr(,"nrow_header")
#> [1] 1
#> attr(,"ncols")
#> [1] 2
#> attr(,"class")
#> [1] "MatrixPrintForm" "list"
#>
diagnose_pagination(mpf, pg_width = 5, pg_height = 3)
#> Determining lines required for header content: 0 title and 2 table header lines
#> Determining lines required for footer content: 0 lines
#> Lines per page available for tables rows: 16 (original: 18)
#> Checking pagination after row 16
#> ....................... OK [16 lines]
#> Checking pagination after row 32
#> ....................... OK [16 lines]
#> Adjusted characters per page: 33 [original: 52, table inset: 0, row labels: 19]
#> Checking pagination after column 11
#> ....................... FAIL: requires 74 chars (11 cols).
#> Checking pagination after column 10
#> ....................... FAIL: requires 67 chars (10 cols).
#> Checking pagination after column 9
#> ....................... FAIL: requires 60 chars (9 cols).
#> Checking pagination after column 8
#> ....................... FAIL: requires 55 chars (8 cols).
#> Checking pagination after column 7
#> ....................... FAIL: requires 50 chars (7 cols).
#> Checking pagination after column 6
#> ....................... FAIL: requires 42 chars (6 cols).
#> Checking pagination after column 5
#> ....................... FAIL: requires 34 chars (5 cols).
#> Checking pagination after column 4
#> ....................... OK [27 chars]
#> Checking pagination after column 11
#> ....................... FAIL: requires 47 chars (7 cols).
#> Checking pagination after column 10
#> ....................... FAIL: requires 40 chars (6 cols).
#> Checking pagination after column 9
#> ....................... OK [33 chars]
#> Checking pagination after column 11
#> ....................... OK [14 chars]
#> $lpp_diagnostics
#> character(0)
#>
#> $row_diagnostics
#> abs_rownumber label self_extent par_extent node_class
#> 1 1 Mazda RX4 1 0 NA
#> 2 2 Mazda RX4 Wag 1 0 NA
#> 3 3 Datsun 710 1 0 NA
#> 4 4 Hornet 4 Drive 1 0 NA
#> 5 5 Hornet Sportabout 1 0 NA
#> 6 6 Valiant 1 0 NA
#> 7 7 Duster 360 1 0 NA
#> 8 8 Merc 240D 1 0 NA
#> 9 9 Merc 230 1 0 NA
#> 10 10 Merc 280 1 0 NA
#> 11 11 Merc 280C 1 0 NA
#> 12 12 Merc 450SE 1 0 NA
#> 13 13 Merc 450SL 1 0 NA
#> 14 14 Merc 450SLC 1 0 NA
#> 15 15 Cadillac Fleetwood 1 0 NA
#> 16 16 Lincoln Continental 1 0 NA
#> 17 17 Chrysler Imperial 1 0 NA
#> 18 18 Fiat 128 1 0 NA
#> 19 19 Honda Civic 1 0 NA
#> 20 20 Toyota Corolla 1 0 NA
#> 21 21 Toyota Corona 1 0 NA
#> 22 22 Dodge Challenger 1 0 NA
#> 23 23 AMC Javelin 1 0 NA
#> 24 24 Camaro Z28 1 0 NA
#> 25 25 Pontiac Firebird 1 0 NA
#> 26 26 Fiat X1-9 1 0 NA
#> 27 27 Porsche 914-2 1 0 NA
#> 28 28 Lotus Europa 1 0 NA
#> 29 29 Ford Pantera L 1 0 NA
#> 30 30 Ferrari Dino 1 0 NA
#> 31 31 Maserati Bora 1 0 NA
#> 32 32 Volvo 142E 1 0 NA
#> pag_attempted final_pag_result
#> 1 FALSE <NA>
#> 2 FALSE <NA>
#> 3 FALSE <NA>
#> 4 FALSE <NA>
#> 5 FALSE <NA>
#> 6 FALSE <NA>
#> 7 FALSE <NA>
#> 8 FALSE <NA>
#> 9 FALSE <NA>
#> 10 FALSE <NA>
#> 11 FALSE <NA>
#> 12 FALSE <NA>
#> 13 FALSE <NA>
#> 14 FALSE <NA>
#> 15 FALSE <NA>
#> 16 FALSE <NA>
#> 17 FALSE <NA>
#> 18 FALSE <NA>
#> 19 FALSE <NA>
#> 20 FALSE <NA>
#> 21 FALSE <NA>
#> 22 FALSE <NA>
#> 23 FALSE <NA>
#> 24 FALSE <NA>
#> 25 FALSE <NA>
#> 26 FALSE <NA>
#> 27 FALSE <NA>
#> 28 FALSE <NA>
#> 29 FALSE <NA>
#> 30 FALSE <NA>
#> 31 FALSE <NA>
#> 32 FALSE <NA>
#>
#> $cpp_diagnostics
#> character(0)
#>
#> $col_diagnostics
#> abs_colnumber self_extent pag_attempted final_pag_result
#> 1 1 7 FALSE <NA>
#> 2 2 6 FALSE <NA>
#> 3 3 8 FALSE <NA>
#> 4 4 6 FALSE <NA>
#> 5 5 7 FALSE <NA>
#> 6 6 8 FALSE <NA>
#> 7 7 8 FALSE <NA>
#> 8 8 5 FALSE <NA>
#> 9 9 5 FALSE <NA>
#> 10 10 7 FALSE <NA>
#> 11 11 7 FALSE <NA>
#>
clws <- propose_column_widths(mpf)
clws[1] <- floor(clws[1]/3)
dgnost <- diagnose_pagination(mpf, pg_width = 5, pg_height = 3, colwidths = clws)
#> Determining lines required for header content: 0 title and 2 table header lines
#> Determining lines required for footer content: 0 lines
#> Lines per page available for tables rows: 16 (original: 18)
#> Checking pagination after row 16
#> ....................... FAIL: requires 38 lines [raw: 38 lns (16 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 15
#> ....................... FAIL: requires 34 lines [raw: 34 lns (15 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 14
#> ....................... FAIL: requires 31 lines [raw: 31 lns (14 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 13
#> ....................... FAIL: requires 29 lines [raw: 29 lns (13 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 12
#> ....................... FAIL: requires 27 lines [raw: 27 lns (12 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 11
#> ....................... FAIL: requires 25 lines [raw: 25 lns (11 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 10
#> ....................... FAIL: requires 23 lines [raw: 23 lns (10 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 9
#> ....................... FAIL: requires 21 lines [raw: 21 lns (9 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 8
#> ....................... FAIL: requires 19 lines [raw: 19 lns (8 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 7
#> ....................... FAIL: requires 17 lines [raw: 17 lns (7 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 6
#> ....................... OK [15 lines]
#> Checking pagination after row 22
#> ....................... FAIL: requires 38 lines [raw: 38 lns (16 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 21
#> ....................... FAIL: requires 35 lines [raw: 35 lns (15 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 20
#> ....................... FAIL: requires 33 lines [raw: 33 lns (14 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 19
#> ....................... FAIL: requires 30 lines [raw: 30 lns (13 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 18
#> ....................... FAIL: requires 28 lines [raw: 28 lns (12 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 17
#> ....................... FAIL: requires 26 lines [raw: 26 lns (11 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 16
#> ....................... FAIL: requires 23 lines [raw: 23 lns (10 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 15
#> ....................... FAIL: requires 19 lines [raw: 19 lns (9 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 14
#> ....................... OK [16 lines]
#> Checking pagination after row 30
#> ....................... FAIL: requires 41 lines [raw: 41 lns (16 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 29
#> ....................... FAIL: requires 39 lines [raw: 39 lns (15 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 28
#> ....................... FAIL: requires 36 lines [raw: 36 lns (14 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 27
#> ....................... FAIL: requires 34 lines [raw: 34 lns (13 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 26
#> ....................... FAIL: requires 31 lines [raw: 31 lns (12 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 25
#> ....................... FAIL: requires 29 lines [raw: 29 lns (11 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 24
#> ....................... FAIL: requires 26 lines [raw: 26 lns (10 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 23
#> ....................... FAIL: requires 24 lines [raw: 24 lns (9 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 22
#> ....................... FAIL: requires 22 lines [raw: 22 lns (8 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 21
#> ....................... FAIL: requires 19 lines [raw: 19 lns (7 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 20
#> ....................... FAIL: requires 17 lines [raw: 17 lns (6 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 19
#> ....................... OK [14 lines]
#> Checking pagination after row 32
#> ....................... FAIL: requires 32 lines [raw: 32 lns (13 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 31
#> ....................... FAIL: requires 30 lines [raw: 30 lns (12 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 30
#> ....................... FAIL: requires 27 lines [raw: 27 lns (11 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 29
#> ....................... FAIL: requires 25 lines [raw: 25 lns (10 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 28
#> ....................... FAIL: requires 22 lines [raw: 22 lns (9 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 27
#> ....................... FAIL: requires 20 lines [raw: 20 lns (8 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 26
#> ....................... FAIL: requires 17 lines [raw: 17 lns (7 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 25
#> ....................... OK [15 lines]
#> Checking pagination after row 32
#> ....................... FAIL: requires 17 lines [raw: 17 lns (7 rws), rep. context: 0 lns (0 rws), refs: 0 lns (0) sect. divs: 0 lns].
#> Checking pagination after row 31
#> ....................... FAIL: last row had only 0 following siblings, needed 2
#> Checking pagination after row 30
#> ....................... FAIL: last row had only 1 following siblings, needed 2
#> Checking pagination after row 29
#> ....................... OK [10 lines]
#> Checking pagination after row 32
#> ....................... OK [7 lines]
#> Adjusted characters per page: 46 [original: 52, table inset: 0, row labels: 6]
#> Checking pagination after column 11
#> ....................... FAIL: requires 74 chars (11 cols).
#> Checking pagination after column 10
#> ....................... FAIL: requires 67 chars (10 cols).
#> Checking pagination after column 9
#> ....................... FAIL: requires 60 chars (9 cols).
#> Checking pagination after column 8
#> ....................... FAIL: requires 55 chars (8 cols).
#> Checking pagination after column 7
#> ....................... FAIL: requires 50 chars (7 cols).
#> Checking pagination after column 6
#> ....................... OK [42 chars]
#> Checking pagination after column 11
#> ....................... OK [32 chars]
try(diagnose_pagination(mpf, pg_width = 1)) #fails
#> Determining lines required for header content: 0 title and 2 table header lines
#> Determining lines required for footer content: 0 lines
#> Lines per page available for tables rows: 88 (original: 90)
#> Checking pagination after row 32
#> ....................... OK [32 lines]
#> Adjusted characters per page: -27 [original: -8, table inset: 0, row labels: 19]
#> Error in pag_indices_inner(mf_cinfo(mf), rlpp = rcpp, verbose = verbose, :
#> Width of row labels equal to or larger than specified characters per page.
#> Error in diagnose_pagination(mpf, pg_width = 1) :
#> Width of row labels equal to or larger than specified characters per page.