This project was developed by Daniel Sabalakov, (Scoresh), as an extension to a project that I did over the summer.
Lab-Gen requires the following packages to be installed and added to PATH
- Pandoc
- Any LaTeX distribution with lualatex
- Java
- C++
- Lua
Metadata can be attached at the top of the file to specify certain commands to set custom commands.
Example of usage is below:
---
author: Daniel
class: Class
quote: Do, or Do not, there is no try
---
But, fields aren't required.
The following fields are supported:
- author
- date
- class
- title
- quote
Commands can be signified inline via the following syntax: @!COMMAND_NAME
The following commands are supported:
+ @!toc ==> Macro command to generate a table of contents
+ @!raw *LATEX* !@ ==> Macro command to include raw LaTeX code into the markdown. Be sure to use double backslashes for commands.
+ @!image src="PATH" width="WIDTH" !@ ==> Macro command used to include images into the markdown.
Graphs can also be generated using these macro commands.
Run the LabGen.exe file to run default recommended settings for Lab-Gen.
Run the batch script (generate.bat) to run default recommended settnigs for Lab-Gen. The following flags are supported (and case insentitive)
- -color ==> sets color of flag
- -cj ==> compile java code
- -text ==> leave blank for Lab-Gen by default; any other text will be displayed
- -file ==> leave blank for text.md by default; any other file will be specified to render an image properly.
Since Lab-Gen uses Pandoc as its parser, we can run a Pandoc process to directly compile the markdown.
pandoc ^
<!-- PATH TO LaTeX Template -->
--template=latex_templates/basetemplate.tex^
<!-- INPUT / OUTPUT PATHS -->
--from markdown-smart-smart ../text.md -o ../text.pdf^
<!-- PDF ENGINE (LUALATEX RECOMMENDED) -->
--pdf-engine=lualatex^
<!-- LUA FILTERS RAN. MORE WILL BE ADDED IN THE FUTURE. -->
--lua-filter=lua_filters/preprocess.lua
The following features should be implemented in the feature
- Python support using tkinter for a workable GUI
- Selectable / Library built into the GUI for help
- More meta tags, ability to include custom templates
- More Commands, Graphs
- Add bar graphs
- Compile built in R