Much cleaner compiler script (#692)
Co-authored-by: Salman Abedin <salmanabedin@zohomail.com>
This commit is contained in:
parent
7572627e85
commit
a275422d47
1 changed files with 15 additions and 14 deletions
|
@ -12,6 +12,7 @@
|
|||
file=$(readlink -f "$1")
|
||||
dir=${file%/*}
|
||||
base="${file%.*}"
|
||||
ext="${file##*.}"
|
||||
|
||||
cd "$dir" || exit
|
||||
|
||||
|
@ -25,25 +26,25 @@ textype() { \
|
|||
$command --output-directory="$dir" "$base"
|
||||
}
|
||||
|
||||
case "$file" in
|
||||
*\.ms) preconv "$file" | refer -PS -e | groff -me -ms -kept -T pdf > "$base".pdf ;;
|
||||
*\.mom) preconv "$file" | refer -PS -e | groff -mom -kept -T pdf > "$base".pdf ;;
|
||||
*\.[0-9]) preconv "$file" | refer -PS -e | groff -mandoc -T pdf > "$base".pdf ;;
|
||||
*\.[rR]md) Rscript -e "rmarkdown::render('$file', quiet=TRUE)" ;;
|
||||
*\.tex) textype "$file" ;;
|
||||
*\.md) if command -v lowdown >/dev/null; then
|
||||
case "$ext" in
|
||||
ms) preconv "$file" | refer -PS -e | groff -me -ms -kept -T pdf > "$base".pdf ;;
|
||||
mom) preconv "$file" | refer -PS -e | groff -mom -kept -T pdf > "$base".pdf ;;
|
||||
[0-9]) preconv "$file" | refer -PS -e | groff -mandoc -T pdf > "$base".pdf ;;
|
||||
[rR]md) Rscript -e "rmarkdown::render('$file', quiet=TRUE)" ;;
|
||||
tex) textype "$file" ;;
|
||||
md) if command -v lowdown >/dev/null; then
|
||||
lowdown -d nointem -e super "$file" -Tms | groff -mpdfmark -ms -kept > "$base".pdf
|
||||
elif command -v groffdown >/dev/null; then
|
||||
groffdown -i "$file" | groff > "$base.pdf"
|
||||
else
|
||||
pandoc "$file" --pdf-engine=xelatex -o "$base".pdf
|
||||
fi ; ;;
|
||||
*config.h) sudo make install ;;
|
||||
*\.c) cc "$file" -o "$base" && "$base" ;;
|
||||
*\.py) python "$file" ;;
|
||||
*\.m) octave "$file" ;;
|
||||
*\.scad) openscad -o "$base".stl "$file" ;;
|
||||
*\.go) go run "$file" ;;
|
||||
*\.sent) setsid -f sent "$file" 2>/dev/null ;;
|
||||
h) sudo make install ;;
|
||||
c) cc "$file" -o "$base" && "$base" ;;
|
||||
py) python "$file" ;;
|
||||
m) octave "$file" ;;
|
||||
scad) openscad -o "$base".stl "$file" ;;
|
||||
go) go run "$file" ;;
|
||||
sent) setsid -f sent "$file" 2>/dev/null ;;
|
||||
*) sed 1q "$file" | grep "^#!/" | sed "s/^#!//" | xargs -r -I % "$file" ;;
|
||||
esac
|
||||
|
|
Loading…
Reference in a new issue