代码拉取完成,页面将自动刷新
同步操作将从 金峰/The-Art-of-Linear-Algebra 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
# This Makefile Works on Mac
# important target files to be published.
ART=The-Art-of-Linear-Algebra
ILLUST=Illustrations
WORLD=MatrixWorld
MAP=MapofEigenvalues
# PS->EPS options and page cutter from PostScript from PowerPoint.
PSSELECT=psselect
#PS2EPS=ps2eps -B -l -f
#vertical
PS2EPS=ps2eps -B -l -f -R=+
# horizontal
#PS2EPS=ps2eps -B -l -f -R=-
# the two product target files. "-j" means Japaense version.
all: $(ART).pdf $(ART)-j.pdf
# printout of all the pages of PowerPoint to PostScript
$(ILLUST).ps: $(ILLUST).pptx
@echo "*** .pptx is new !! Print out $< to PostScript(.ps see PowerPointSetting.png for setting), then make again ***"
open PowerPointSetting.png
exit 1
$(ILLUST)-j.ps: $(ILLUST)-j.pptx
@echo "*** .pptx is new !! Print out $< to PostScript(.ps see PowerPointSetting.png for setting), then make again ***"
open PowerPointSetting.png
exit 1
MATRIXWORLD_PREMUS=Matrix-World-for-PREMUS
matrix-world-premus: figs/$(MATRIXWORLD_PREMUS).eps
$(MATRIXWORLD_PREMUS).ps: $(MATRIXWORLD_PREMUS).pptx
@echo "*** .pptx is new !! Print out $< to PostScript(.ps see PowerPointSetting.png for setting), then make again ***"
open PowerPointSetting.png
exit 1
figs/$(MATRIXWORLD_PREMUS).eps: $(MATRIXWORLD_PREMUS).ps
$(PSSELECT) 2 $< figs/$(MATRIXWORLD_PREMUS)-cut.ps
$(PS2EPS) figs/$(MATRIXWORLD_PREMUS)-cut.ps
# the target should be $(EPS) but, avoided muti-loop of execution.
# so this target has to be kicked by hand after changing PowerPoint illustrations.
# the "page number to figure name" table is in the name-list.mak
eps-updated.touch: $(ILLUST).ps
for i in {1..48}; do \
$(PSSELECT) $$i $< figs/illust-p$$i.ps; \
$(PS2EPS) figs/illust-p$$i.ps; \
grep "^$$i " name-list.mak | cut -d ' ' -f 2 | sed -e's|^.*|figs/&.eps|' | xargs cp figs/illust-p$$i.eps ; \
done
ls -lR > $@
epsj-updated.touch: $(ILLUST)-j.ps
for i in {1..46}; do \
$(PSSELECT) $$i $< figs/illust-p$$i-j.ps; \
$(PS2EPS) figs/illust-p$$i-j.ps; \
grep "^$$i " name-list.mak | cut -d ' ' -f 2 | sed -e 's|^.*|figs/&-j.eps|' | xargs cp figs/illust-p$$i-j.eps ; \
done
ls -lR > $@
# THE tex compilation part.
%.pdf: out/%.dvi
dvipdfmx -p a4 -q $<
# do uplatex twice to make table of contents and references.
out/$(ART).dvi: $(ART).tex eps-updated.touch
uplatex -synctex=1 -halt-on-error -file-line-error -output-directory=out $(ART).tex
uplatex -synctex=1 -halt-on-error -file-line-error -output-directory=out $(ART).tex
out/$(ART)-j.dvi: $(ART)-j.tex epsj-updated.touch
uplatex -synctex=1 -halt-on-error -file-line-error -output-directory=out $(ART)-j.tex
uplatex -synctex=1 -halt-on-error -file-line-error -output-directory=out $(ART)-j.tex
out/figs-catalog.dvi: figs-catalog.tex figs/epsinclude.tex
uplatex -synctex=1 -halt-on-error -file-line-error -output-directory=out $<
.PHONY: figs/epsinclude.tex
figs/epsinclude.tex:
cd figs; ls illust*.eps | grep -v 'japp' | grep -v -- '-j.eps' | sed -e 's/.*/\\includegraphics{&}\\\\&\\\\\n\n/' | sed 's/_/\\_/g' > epsinclude.tex
# note: for the options
# uplatex -synctex=1 -halt-on-error -silent -file-line-error -output-directory=out $<
# see https://qiita.com/rainbartown/items/d7718f12d71e688f3573#comment-7c2f42254e84b43d3175
# export illustrations to the book. (Linear Algebra for Everyone, Japanese edition 2022)
# list of figre pages and names are in name-list-book.mak
japp_eps: $(ILLUST)-j.ps
for i in `sed '/^#/d' name-list-book.mak | cut -d ' ' -f 1`; do \
grep "^$$i " name-list-book.mak | cut -d ' ' -f 2 | sed -e 's/_/=/' -e 's|^.*|figs/japp_&.eps|' | xargs cp figs/illust-p$$i-j.eps ; \
done
japp_copy:
cp figs/japp*.eps ../linear-algebra-for-everyone/translation/jfigs
cp figs/MatrixWorld-j.eps ../linear-algebra-for-everyone/translation/jfigs/MatrixWorld-j.eps
cp figs/japp*.eps ../linear-algebra-for-everyone/translation/figs
cp figs/MatrixWorld-j.eps ../linear-algebra-for-everyone/translation/figs/MatrixWorld-j.eps
clean:
rm -f *.dvi *.out *.log *.fls *.aux *.toc *.synctex.gz *.fdb_latexmk out/* *.p figs/*.ps
# may need this later ... (only commented lines below)
# now, all the eps filenames are moved to names-list.mak
# and updated timestamp is in .touch files.
# EPS=figs/ViewingMatrix-4Ways.eps\
# figs/VectorTimesVector.eps\
# figs/MatrixTimesVector.eps\
# figs/VectorTimesMatrix.eps\
# figs/4-Subspaces.eps\
# figs/MatrixTimesMatrix.eps\
# figs/5-Factorizations.eps\
# figs/A_CR.eps\
# figs/A_LU.eps\
# figs/A_QLQT.eps\
# figs/A_QR.eps\
# figs/A_USVT.eps\
# figs/CR1.eps\
# figs/CR2.eps\
# figs/LU1.eps\
# figs/LU2.eps\
# figs/Pattern11-22.eps\
# figs/Pattern12.eps\
# figs/Pattern3.eps\
# figs/Pattern4.eps\
# figs/QR.eps\
# figs/EVD.eps\
# figs/SVD.eps\
# figs/$(MAP).eps\
# figs/$(WORLD).eps
# EPSJ=$(EPS:%.eps=%-j.eps)
# $(EPS): eps-updated.touch
# $(EPSJ): epsj-updated.touch
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。