Defines functions braidLatexOutline

Documented in braidLatexOutline

# Creates Latex outline file
# Author: Andrie

#braid_packages <- function(){
#braid_author <- function(x){

#' Creates latex outline file
#' This is a convenience function to generate a standard latex outline file.  Users with Latex experience may wish to generate the outline file by hand.  The main requirements of this outline file are:
#'  - Contain all the document pre-amble
#'  - In the main body section, have a \\input{} line that calls the braid content file.
#' @param b braid object
#' @param fileOuter The full file path and name to use when writing the outline to disk
#' @param fileInner The name of the braid content file (this is embedded in the outline file using a \\input{} statement in Latex
#' @param title Document title.  You can use valid latex, including newline \\ - remember to use escape sequences
#' @param author Document author.  You can use valid latex.
#' @export
braidLatexOutline <- function(b, fileOuter=b$fileOuter, fileInner=b$fileInner, title, author){
  if(!inherits(b, "braid")) stop("braidLatexOutline: argument b must be a braid object")
  ret <- paste("
  \\documentclass[a4paper, 10pt]{report}
  \\usepackage[portrait, hmargin=2cm, top=2cm, bottom=2cm]{geometry}
  \\renewcommand{\\familydefault}{\\sfdefault}  %specify sans serif font

  %\\setmainfont{Arial Unicode MS}
  \\lhead{} %Sets top left header to nothing
  \\usepackage{caption} %for non-floating figures
  \\usepackage{array} %extends functionality and formatting of tabular environment
  \\usepackage{rotating} %for vertical orientation of labels in tabular environments
  \\usepackage{graphicx} %to include .png graphics
  \\usepackage{float} %to force floats to appear HERE [H]
      %package float:  http://www.tex.ac.uk/tex-archive/macros/latex/contrib/float/
  \\DeclareGraphicsExtensions{.pdf, .eps, .png, .jpg}
  \\usepackage[bookmarks=true, breaklinks=true]{hyperref} %create bookmarks - must be last package in list
  ret <- paste(ret, "\\title{", title, "}\n")
  ret <- paste(ret, "\\author{", author, "}\n")
  ret <- paste(ret, "\\date{\\today \\\\ \\currenttime}\n\n")
  ret <- paste(ret, 

  ret <- paste(ret, 
     % Begin document

    \\setcounter{secnumdepth}{-1} % specify heading numbering depth
    %%% This is where the actual content goes\n\n")

  ret <- paste(ret, "\\input{", fileInner, "}\n\n")
  ret <- paste(ret, "\\end{document}\n")
  ### Now prepare file
#  r_braid <- as.braid(
#    path = b$path, 
#    fileOuter = fileOuter,
#    fileInner = fileOuter # Yes this is correct
#  )
#  braidWrite(r_braid, ret)
#  braidSave(r_braid)

  if(file.exists(fileOuter)) file.remove(fileOuter)
  sfile <- file(fileOuter, "wt")  ### Open file in append mode
  cat(ret, file=sfile)

  message("Latex outline file created")
andrie/braid documentation built on June 3, 2017, 7:01 p.m.