Update journal paper
This commit is contained in:
		
							
								
								
									
										56
									
								
								Makefile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								Makefile
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,56 @@
 | 
			
		||||
.PHONY: all paper help html publish watch clean cp-figs
 | 
			
		||||
 | 
			
		||||
SHELL := /bin/bash
 | 
			
		||||
PAPERDIR=paper
 | 
			
		||||
MATLABDIR=matlab
 | 
			
		||||
TIKZDIR=tikz
 | 
			
		||||
 | 
			
		||||
PAPERNAME=paper
 | 
			
		||||
 | 
			
		||||
all: paper html publish
 | 
			
		||||
 | 
			
		||||
paper: cp-figs tangle tex pdf clean
 | 
			
		||||
 | 
			
		||||
help:
 | 
			
		||||
	@echo "Usage: make <command>"
 | 
			
		||||
	@echo "  all     - Cp-figs tex pdf html publish"
 | 
			
		||||
	@echo "  paper   - Compile the org file to a pdf"
 | 
			
		||||
	@echo "  html    - Export all the org files to html"
 | 
			
		||||
	@echo "  publish - Commit everything and push to repository"
 | 
			
		||||
	@echo "  tex     - Export to paper in org format to tex"
 | 
			
		||||
	@echo "  tangle  - Tangle everything that is in the org paper and tikz file"
 | 
			
		||||
	@echo "  pdf     - Compile the tex file to pdf"
 | 
			
		||||
	@echo "  watch   - Watch the tex file for changes and compile"
 | 
			
		||||
	@echo "  clean   - Clean the paper directory"
 | 
			
		||||
	@echo "  cp-figs - Copy all the necessary figures from tikz and matlab folder to paper folder"
 | 
			
		||||
 | 
			
		||||
html:
 | 
			
		||||
	for f in *.org;              do emacsclient -e "(progn (find-file \"$$f\") (org-html-export-to-html))"; done
 | 
			
		||||
	for f in $(TIKZDIR)/*.org;    do emacsclient -e "(progn (find-file \"$$f\") (org-html-export-to-html))"; done
 | 
			
		||||
	for f in $(MATLABDIR)/*.org; do emacsclient -e "(progn (find-file \"$$f\") (org-html-export-to-html))"; done
 | 
			
		||||
 | 
			
		||||
publish:
 | 
			
		||||
	git add . && git commit -m "Update - $$(date +%F)" && git push origin master
 | 
			
		||||
 | 
			
		||||
tex: $(PAPERDIR)/$(PAPERNAME).org
 | 
			
		||||
	emacsclient -e '(progn (find-file "$(PAPERDIR)/$(PAPERNAME).org") (org-latex-export-to-latex))'
 | 
			
		||||
 | 
			
		||||
tangle: $(PAPERDIR)/$(PAPERNAME).org
 | 
			
		||||
	emacsclient -e '(progn (find-file "$(PAPERDIR)/$(PAPERNAME).org") (org-babel-tangle))'
 | 
			
		||||
	emacsclient -e '(progn (find-file "$(TIKZDIR)/index.org") (org-babel-tangle))'
 | 
			
		||||
 | 
			
		||||
pdf: $(PAPERDIR)/$(PAPERNAME).tex
 | 
			
		||||
	latexmk -cd -quiet -bibtex $(PREVIEW_CONTINUOUSLY) -f -pdf -pdflatex="xelatex -synctex=1 -interaction nonstopmode" -use-make $(PAPERDIR)/$(PAPERNAME).tex
 | 
			
		||||
 | 
			
		||||
# Set the PREVIEW_CONTINUOUSLY variable to -pvc to switch latexmk into the preview continuously mode
 | 
			
		||||
watch: PREVIEW_CONTINUOUSLY=-pvc
 | 
			
		||||
watch: pdf
 | 
			
		||||
 | 
			
		||||
watch-org: $(PAPERDIR)/$(PAPERNAME).org
 | 
			
		||||
	echo $(PAPERDIR)/$(PAPERNAME).org | entr -s 'make tangle tex pdf'
 | 
			
		||||
 | 
			
		||||
clean:
 | 
			
		||||
	latexmk -cd -c -bibtex $(PAPERDIR)/$(PAPERNAME).tex
 | 
			
		||||
 | 
			
		||||
cp-figs:
 | 
			
		||||
	bash scripts/cp-figs.sh
 | 
			
		||||
		Reference in New Issue
	
	Block a user