#!/bin/sh # Compiler script for groff # [-k (preconv)] Convert encoding to something groff understands # [-e (eqn)] Format equations for troff or MathML # [-t (tbl)] Format tables for troff # [-p (pic)] Compile pictures for troff or TeX # [-G (grap)] Typesetting graphs, usually not installed by default and not available on termux repo # [-j (chem)] Chemical structure diagrams, messes with spacing, crashes when using text inside eqn BIN="$0" SOELIM="/usr/bin/soelim" # SOELIM="soelim" REFER="/usr/bin/refer" # REFER="refer" GROFF="/usr/bin/groff" # GROFF="groff" # Configuration BIB="$HOME/Documents/bibliography" # Bibliography file MAC="$HOME/.config/groff/" # Macros dir PRE="-ketpG" # Preprocessors FILE="$1" sed " s/Á/\\\['A\]/g; s/É/\\\['E\]/g; s/Í/\\\['I\]/g; s/Ó/\\\['O\]/g; s/Ú/\\\['U\]/g; s/Ý/\\\['Y\]/g; s/Ć/\\\['C\]/g; s/á/\\\['a\]/g; s/é/\\\['e\]/g; s/í/\\\['i\]/g; s/ó/\\\['o\]/g; s/ú/\\\['u\]/g; s/ý/\\\['y\]/g; s/ć/\\\['c\]/g; s/Ë/\\\[:E\]/g; s/Ÿ/\\\[:Y\]/g; s/Ü/\\\[:U\]/g; s/Ï/\\\[:I\]/g; s/Ö/\\\[:O\]/g; s/Ä/\\\[:a\]/g; s/ë/\\\[:e\]/g; s/ÿ/\\\[:y\]/g; s/ü/\\\[:u\]/g; s/ï/\\\[:i\]/g; s/ö/\\\[:o\]/g; s/ä/\\\[:a\]/g; " "$FILE" | "$SOELIM" -I "$MAC" | "$REFER" -p "$BIB" | "$GROFF" -ms -T dvi -U "$PRE" > "${FILE%.ms}.dvi" dvipdf "${FILE%.ms}.dvi" && rm -f "${FILE%.ms}.dvi"