nacnudus/tidyxl

Reorganise the API

Opened this issue · 0 comments

With more functionality, it makes sense to split things up into separate functions.

  • xlsx_cells() cells of all worksheets in one data frame (#16)
  • xlsx_formats() formatting and styles (#16)
  • xlsx_validation() data input validation rules, per sheet (#6)
  • xlsx_names() named formulas/ranges (#17)
  • xlsx_sheet_names() utility function

The xlex family:

  • xlex() tokenize a formula
  • xlex_edges() and xlex_vertices() operate on the parse tree
  • plot_xlex() visualise the parse tree
  • demo_xlex() shiny app of the above

Utility functions for common tasks:

  • Formatting that takes advantage of tab completion for discovery, using very long function names like fill_patternFill_fgColor_rgb(x, scope = c("style", "local")) or border_horizontal_style_indexed(x, scope =c("style", "local")), where xis a data frame withstyle_formatandlocal_format_id` in it.

  • A way to extract specific styles from all formats, e.g. bad <- get_style(x, "bad") where x is the return value of xlsx_formats().