32 lines
1.3 KiB
Bash
Executable file
32 lines
1.3 KiB
Bash
Executable file
#!/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"
|