All Projects → yonicd → texblocks

yonicd / texblocks

Licence: Unknown, MIT licenses found Licenses found Unknown LICENSE MIT LICENSE.md
WIP: tex table building blocks

Programming Languages

r
7636 projects

Travis-CI Build Status stability-experimental Covrpage Summary

texblocks

Lets be frank, it is not fun to create TeX tables from scratch.

In R there are a few ways to get around this task by converting a data.frame into latex tables via huxtable, pixiedust and knitr.

But many times you either don’t have or don’t want to go through a data.frame to get to your table. {texblocks} is an attempt to create a natural language with simple operators to quickly create reproducible TeX tables.

Idea

Assemble LaTeX tabular environments using simple operations.

This would enable us to create any table layout with a consistent user API.

Proposed Syntax

For a rendered vingette see basics

Defining a new class of R element tb that is the basic structure of the language.

Joining elements

Let t1 and t2 be two objects of class tb.

t1 + t2
t1 / t2

Using this language creating a table can be broken down to cell level

t1 =(++) / (++)

would be translated to

1 & 2 & 3 \\
4 & 5 & 6

making their combination a natural extension

t1 + t1

would translate to

1 & 2 & 3 & 1 & 2 & 3 \\
4 & 5 & 6 & 1 & 2 & 3

Recasting

Converting to tb class

texblocks can also be converted back into tibbles and matrices for further data manipulation.

Vectorizing

texblocks can also be replicated and used as a list with purrr verbs and base R *apply functions.

Mutations & Aesthetics

For a rendered vingette see aesthetics

TODO

A set of elements can be defined to control the table and cell level attributes, eg

  • font: colour, size, face
  • background colour
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].