Minor changes:
autopadZeros
: Fix to improve sprintf
return consistency on Linux. Need
to use %d
instead of %s
with integer to improve return consistency.Major changes:
Minor changes:
makeNames
now works without stringi package installed.Minor changes:
makeNames
: Added additional regular expression pattern matching of micro
character, coercing to "u".Minor changes:
makeNames
: Fixed accidental sanitization of " - "
to "_minus_"
.smart
mode coverage in makeNames
.camel
, snake
, upperCamel
.Minor changes:
syntacticRename
: Now defaults to using smart
engine internally. Also added
support for dryRun
mode, which will be accessible via CLI using --dry-run
in next koopa update. Improved to
and from
file path return and code
coverage.Minor changes:
syntacticRename
: Harden against single quotes breaking CLI alert messages,
due to internal glue parser.
See related issue.Minor changes:
tempdir2
and unlink2
from AcidBase update.Minor changes:
Major changes:
Suggests
instead of Imports
.Minor changes:
autopadZeros
: Improved regular expression matching in cases where additional
numbers are present in string.Minor changes:
setMethod
calls.Major changes:
syntacticRename
function that supports kebabCase
, snakeCase
, camelCase
, and
upperCamelCase
. Rename functionality has been removed from individual S4
character methods designed for syntactic string functions (e.g. camelCase
).
This approach makes these commonly used functions less complicated, and the
behavior is more consistent with the other S4 methods defined in other packages
(e.g. SummarizedExperiment
in AcidExperiment).Minor changes:
Minor changes:
Major changes:
camelCase
and upperCamelCase
now default to strict = TRUE
, which
enforces stricter but simpler camel case syntax by default. This converts
"gene_id" to "geneId" instead of "geneID" by default, which is now the
preferred convention for metadata columns across the Acid Genomics packages.Minor changes:
smart = TRUE
(recommended by default).Minor changes:
Minor changes:
Minor changes:
Reworked the internal code and improved default handling for makeNames
. Our
makeNames
variant behaves a bit differently from base R make.names
. By
default, it returns unique values and sanitizes using underscores (_
) rather
than periods (.
), which are easier to read and more compatible across
programming languages and in file names.
Now all syntactic naming functions, including snakeCase
, camelCase
, and
dottedCase
internally pass through to makeNames
. We have added some edge
case handlers that are now enabled by default in all of these functions,
including automatic detection of +
/-
, %
(converts to percent) and some
other useful defaults for bioinformatics. These can be disabled by setting
smart = FALSE
.
This release should be fully backward compatible and non-breaking with previous syntactic functions, but the version has been increased to denote the change in the internal code handling.
New functions:
autopadZeros
: Migrated character method previously defined in basejump.
Also defined support for integer class objects. Improved padding support
of integer strings and hardened function against partial padding matches.Minor changes:
"_"
prefix and will skip the file rename.
This is particularly useful for avoiding issues with files such
as _pkgdown.yml
.Minor changes:
Minor changes:
camelCase
: Bug fix for strict = TRUE
not working as expected in rename
mode (rename = TRUE
).Major changes:
Minor changes:
Deprecations:
camel
in favor of camelCase
.dotted
in favor of dottedCase
.kebab
in favor of kebabCase
.snake
in favor of snakeCase
.upperCamel
in favor of upperCamelCase
.Minor changes:
smart = FALSE
.stringi::stri_trans_general
. This behavior can be disabled by setting
smart = FALSE
.Minor changes:
apply
call internally.Major changes:
Minor changes:
File rename mode support.
camelCase
, kebabCase
, snakeCase
, and upperCamelCase
now support file
rename mode (rename = TRUE
). This works on either case-sensitive (Linux) or
case-insensitive (macOS, Windows) file systems. Files and directories are
supported, including files outside of the current working directory.
I recommend using either kebabCase
or snakeCase
for files.
When renaming with files beginning with a number, prefix = TRUE
will prefix
the file with an "x", similar to the behavior in make.names
. This can be
disabled by settingprefix = FALSE
. Smart acronyms and other features can also
be disabled by setting smart = FALSE
.
This code will be called internally in the upcoming koopa update.
Minor changes:
prefix = FALSE
for camelCase
, dottedCase
, kebabCase
,
snakeCase
, and upperCamelCase
. This override allows the user to disable
automatic "X" prefix defined by make.names
internally for input that begins
with a syntactically invalid character, such as a number (R-specific) or a
non-alphanumeric. We're now allowing this override so we can pass to new
camel-case
, kebab-case
, and snake-case
shell scripts defined in
koopa.smart = FALSE
, which disables smart mode handling of
mixed case acronyms (e.g. "RNAi", "mRNA"), numeric delims/decimals ("," "."),
special characters that can represent words ("+"/"-"; plus/minus), etc.
Enabled by default and strongly recommended. Added a new override mode for
some edge cases with our new shell methods defined in koopa.Major changes:
Minor changes:
"+"
, "-"
, and "/"
in character vectors. This update
is particularly useful for handling examples such as "dox+"
and
"vector +/- treatment"
.Minor changes:
mcolnames
. I'll add this into basejump
directly instead.Minor changes:
Minor changes:
Minor changes:
label
to makeLabel
and title
to makeTitle
, so we don't mask
any functions in the graphics package.New functions:
makeWords
: Take a syntactic name vector and reformat to character strings
containing words separated by spaces.label
: Generates a character string suitable for plot axis labels. Uses the
new makeWords
function internally.title
: Generate a sentence case string suitable for plot titles.Major changes:
camel
to camelCase
; kebab
to kebabCase
;
snake
to snakeCase
; upperCamel
to upperCamelCase
.Minor changes:
Minor changes:
Minor changes:
Minor changes:
SummarizedExperiment
method support in syntactic functions.
Added method suport for snake
, which was missing, and forgot to import
SummarizedExperiment as a class.Minor changes:
rownames
and colnames
arguments.Minor changes:
New functions:
kebab
: Added character vector method support for kebab case.Minor changes:
Minor changes:
capitalize
to S4 method that dispatches on character vectors.Minor changes:
imports.R
file, to match conventions used in the
other basejump subpackages.Minor changes:
Minor changes:
Initial release. Migrated syntactic name functions from basejump package here to form a more compact package that is easier to unit test.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.