Changelog
Source:NEWS.md
formatters 0.5.6
- Added “N=xx” format and unit test for it.
- Added error catch for
\r
recursive special character. - Fixed pagination unexpected counts for
rlistings
’ pagination by removing the manual subsetting workaround and fixinginsightsengineering/rlistings#155
. - Fixed mismatch between pagination and exports regarding the value assigned to parameter
max_width
. Introduced general handler.handle_max_width
for pagination, exports, andtoString
. - Fixed bug in
format_value
causing a warning for vectors containing both NA and non-NA values. - Fixed issue with
var_label
assignment that needed to be of non-named strings. - Included indentation and split rows with their
LabelRow
assignment inbasic_matrix_form
. - Allowed tables with content rows in the end be exported.
- Moved new line expansion for decorations from
rtables
’matrix_form
toformatters
’ constructorMatrixPrintForm
so to cover alsorlistings
. - Improved relevant information feedback during pagination.
- Updated
export_as_txt
to allow lists of tables/listings as input. This enables listing pagination with pages by parameter. - Removed the possibility of setting
min_siblings > 0
when dealing with listings. This allows smooth pagination when there are only 2 lines. - Removed redundant references to
matrix_print_form
constructor (now onlyMatrixPrintForm
).
formatters 0.5.5
CRAN release: 2023-12-06
- Applied
styler
and resolved package lint. Changed default indentation from 4 spaces to 2. - Added the possibility of setting a general default using
set_default_hsep()
that sets up the optiongetOption("formatters_default_hsep")
. - Allowed section divider between header and table body.
- Added support for combining duplicate referential footnotes.
- Migrated
export_as_pdf
fromrtables
. Now usingpaginate_to_mpfs
function. Madefont_lcpi
function internal. - Fixed wrapping and section dividers error.
- Fixed infinite loop in
wrap_string
that was caused by a bug instringi::stri_wrap
not wrapping small strings with dots and spaces correctly.
formatters 0.5.4
- Fixed a bug in
paginate_to_mpfs()
so that formatting in listings key columns is retained with paginationinsightsengineering/rlistings#155
. - Improved error message for pagination when
cpp
orlpp
is too small in comparison to the column or row widths. - Added full support of newline characters in any part of
rtables
objects. - Modified default vertical alignment for top left information to bottom.
- Rework of
wrap_string
so to allow space characters to be used and wrapped.
formatters 0.5.3
- Decimal alignment now throws informative error if scientific notation is used.
- Specified minimal version of package dependencies.
- Updated hex sticker logo.
formatters 0.5.2
CRAN release: 2023-08-25
-
paginate_to_mpfs
can handle single column tables and listings. - Added decimal alignment support with
decimal
,dec_right
, anddec_left
. - Updated
export_as_txt
to passrep_cols
argument to pagination function. - Added
list_valid_aligns()
that lists the available alignments. - Set default values for
na_str
andalign
toNULL
in the format configuration functionfmt_config
. - Fixed a bug that threw warning when
prov_footer
length is greater than1
insightsengineering/rtables#705
.
formatters 0.5.1
- Updated
export_as_txt
to print split label when usingpage_by
with only one level. - Reduced the amount of spelling issues.
- New generic
getter
andsetter
foralign
(obj_align
andobj_align<-
). - New
fmt_config
class to bundle togetherformat
,na_str
, andalign
instructions. - Reverting default for alignment (from
NULL
tocenter
) andna_str
fromNULL
to"NA"
. This affects onlyrlistings
, where the new default takes effect.
formatters 0.5.0
CRAN release: 2023-05-25
- Fix bug in
MPF
pagination (and thus export_as_txt) when column labels had newlines (#150,insightsengineering/rtables#634
) -
font_size
is now 8 consistently across the pagination machinery. - When specified, margins are in inches (including the default).
- Fix off-by-one error in pagination machinery for certain cases.
- Refined informative messages when pagination is verbose (
verbose = TRUE
). - Referential footnotes with specified (non-number) symbols are now printed once per page regardless of the number of elements on the page they refer to.
- New
export_as_txt
function operates now on any object with an applicablematrix_form
method (including pagination). - New
paginate_indices
andpaginate_to_mpfs
functions. - New
diagnose_pagination
function accepts the same arguments aspaginate_to_mpfs
and returns information about the pagination algorithm outcome at both row and column positions. -
MatrixPrintForm
objects now pay closer attention to referential footnote information than they did in the past. -
MatrixPrintForm
objects infer detailed referential footnote information from theirstrings
element for backward compatibility. - Fix to test that failed on old Windows CRAN machine due to imperfect UTF support there.
- If
lpp
andcpp
in pagination or exporter functions are assigned toNULL
, no pagination in the vertical or horizontal direction happens, respectively. - The new default of
NA_integer_
forlpp
andcpp
now means those values should be inferred from page size. - Added
hexSticker
logo.
formatters 0.4.0
CRAN release: 2023-03-02
- Cell values and row labels are now word-wrapped based on column widths (
widths
intoString
andcolwidths
in pagination and exporters. - New “N=xx (xx%)” format support (https://github.com/insightsengineering/rtables/issues/516).
- New generic
getter
andsetter
forna
-string (obj_na_str
andobj_na_str<-
, migrated fromrtables
). -
MatrixPrintForm
class now carries aroundhas_topleft
information explicitly,getter
mf_has_topleft
. - Number of header lines in a
MatrixPrintForm
object (mf_nlheader
) is now a computed attribute rather than a stored one,mf_nlheader<-
has been removed. - New
MatrixPrintForm
accessor:mpf_has_rlabels
determines whether theMPF$strings
has a column which are label rows (i.e. no column index in originating object). -
wrap_text
andwrap_string
now accept thehard
argument (defaultFALSE
) indicating whether ‘hard’ word-wrapping (i.e. explicit embedding of newline characters) should be performed. -
vert_pag_indices
now acceptsrep_cols
to control how many columns act as ‘row-label-like’, as required byrlistings
. - Documentation of pagination algorithm greatly expanded.
- Pagination with
verbose = TRUE
is now significantly more informative. - fix bug where indenting was not correct when row-labels were word wrapped (#84, #85).
- fix bug where portions of table after last section div (e.g., non-nested further analyses) were omitted (#77).
- fix bug in
mf_rinfo<-
checked the new value against the wrong dimensions. - Fixed off-by-one error in basic pagination machinery.
- Fix bug in position of header separator when columns have word wrapping (#68).
- Bug rendering
mf_lgrouping
non-functional has been fixed.
formatters 0.3.4
-
nlines
now accepts bothcolwidths
andmax_width
, defaulting toNULL
for both -
pag_indices_inner
,find_pag
andvalid_pag
now accepthave_col_fnotes
anddiv_height
arguments - fix bug which lead to
insightsengineering/rtables#414
(nlines("", <non-null>)
threw an error - paginate related generics now accept max_width for use in ensuring pagination now takes word wrapping into account for titles and footers.
-
nlines
character method has changed, not takes the sum of thenlines
of its elements instead of the max in the case of a vector of length > 1 - new
wrap_title_footer
function for use on everything which implements the generic interface we design. - export new
page_dim
function which returns values of page dims for a named type. -
tf_wrap
functionality now breaks up words that are too large with respect to surrounding word wrapping. -
tf_wrap
behavior no longer emits a warning when breaking up ‘words’ larger thanmax_width
-
tf_wrap
max_width = "auto"
now sets themax_width
tosum(widths) + table_inset(x)
instead ofsum(widths)
- Experimental
tf_wrap
functionality added totoString
MatrixPrintForm
method -
MatrixPrintForm
class now includes atable_inset
element - Add
table_inset
andtable_inset<-
generics now exported -
toString
now respectstable_inset
values set on aMatrixPrintForm
object - Use
exact=TRUE
for all calls toattr
in accessor functions. - length-zero values of
na_str
are now silently interpreted as the default value ("NA"
), as are any missing values inna_str
of length > 0. - adding wrapping of titles, subtitles, and footers.
-
page_lcpp
function now provided to map page size and font combinations to lines and characters per page. -
getters
andsetters
for the components ofMatrixPrintForm
objects are now exported (i.e.,mf_spans
and friends). -
na_str
can now be length >1, and is matched in position to NAs in that case. -
format_value
now returns solely thena_str
value when all-NA values are formatted with certain formats (currently"(N=xx)"
,">999.9"
,">999.99"
,"x.xxxx | (<0.0001)"
)
formatters 0.3.2.5
-
label_vars<-
now correctly adheres to names of value, even in different order thannames(x)
. Fixesinsightsengineering/rlistings#8
formatters 0.3.2.3
- fix regression caused by
0.3.2.2
invert_pag_indices
whenobj
is not aMatrixPrintForm
object
formatters 0.3.2.2
- Added support for
trailing_sep
column to row_info data.frames (e.g,pagdfrow
constructor) -
trailing_sep
info now used in both printing and pagination -
col_gap
is now an element ofMatrixPrintForm
objects -
vert_pag_indices
fixed to correctly take gap between printed columns into account
formatters 0.3.2.1
- calling
var_labels
on a data.frame with no columns is no longer an error (insightsengineering/rtables#224
)
formatters 0.3.2
CRAN release: 2022-06-09
- Change warning when non-UTF line separator default is used to message, and displays it only during interactive sessions (once per session).
formatters 0.3.0
- add exported
default_hsep
function for use her and in reverse-dependencies (inclrtables
) - format_value now respects
na_str
even when format isxx
(previously it returned"NA"
always) - rename
linesep
argument tohsep
intoString
generic signature - add
indent_size
argument tomatrix_form
generic signature - add a number of
"__ (__)"
(no pct) formats in response to #23 - Switch to
testthat
as testing framework
formatters 0.1.0.0002
- Add
formats
argument to matrix_form informal class/constructor for use inrtables::table_shell