Advertisement
Guest User

Untitled

a guest
Oct 15th, 2019
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.09 KB | None | 0 0
  1. #!/bin/bash
  2. # Make talk directory, Makefile and initial Markdown file
  3. # For building with pandoc
  4. # Hard-coded author and bibliography directory in YAML metadata
  5. if [ -z "$1" ]; then
  6. echo Specify talk directory
  7. exit 1
  8. fi
  9. TALK_DIR=$1
  10. if [ -z "$2" ]; then
  11. echo Specify talk filename
  12. exit 2
  13. fi
  14. FNAME=$2
  15. extension="${FNAME##*.}"
  16.  
  17. if [ "$extension" != "md" ]; then
  18. FNAME="${FNAME}.md"
  19. fi
  20.  
  21. echo $FNAME
  22. filename="${FNAME%.*}"
  23.  
  24. mkdir -p $TALK_DIR
  25. cd $TALK_DIR
  26. cat << EOF > $FNAME
  27. ---
  28. # YAML metadata
  29. title: $filename
  30. author: Matthew Brett
  31. bibliography: ../data-science-bib/data_science.bib
  32. <#ifndef HANDOUT>
  33. suppress-bibliography: true
  34. <#endif>
  35.  
  36. # First slide
  37. ---
  38. EOF
  39.  
  40. cat << EOF > Makefile
  41. default: slides
  42.  
  43. all: slides handout
  44.  
  45. SOURCE=$filename
  46.  
  47. # Need gpp for conditional stuff
  48. # "brew install gpp" on macOS
  49.  
  50. slides: \$(SOURCE).md
  51. gpp -H \$(SOURCE).md | pandoc \\
  52. --filter pandoc-citeproc \\
  53. -t beamer \\
  54. -o \$(SOURCE)_slides.pdf
  55.  
  56. handout: \$(SOURCE).md
  57. gpp -H -DHANDOUT=1 \$(SOURCE).md | pandoc \\
  58. --filter pandoc-citeproc \\
  59. -o \$(SOURCE)_handout.pdf
  60.  
  61. clean:
  62. rm *.pdf *.html
  63. EOF
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement