SmartDocその後
カニ氏から「SmartDoc
はメイクするべし」とのアドバイスをもらったので、以下のようなMakefileを書いてみた。こんなんでいいんかな?-
Makefile#=========================#
Makefile for
SmartDoc#=========================SOURCE
= indexCFLAGS
=# Common
CommandsSDOC =
/usr/local/bin/sdocCAT =
/bin/catCP =
/bin/cpRM = /bin/rm
-f# Default
SettingsENABLE_DEFAULT =
1TEMPLATE_DIR =
./SDOCRC =
SmartDoc.propertiesHTMLRC =
$(TEMPLATE_DIR)/HTML.properties TEXTRC =
$(TEMPLATE_DIR)/TEXT.properties PDFRC =
$(TEMPLATE_DIR)/PDF.properties TEX_HEADER =
$(TEMPLATE_DIR)/header.tex# For
TeX(PDF)PLATEX = /usr/local/teTeX/bin/platex
-interaction=nonstopmodeDVIPDF =
/usr/local/teTeX/bin/dvipdfmxTAIL =
/usr/bin/tail +5TMPTEX =
/tmp/$(SOURCE).tex#=========================#
Targets#=========================default
: htmlhtml
: @if [ "$(ENABLE_DEFAULT)" = "1" ] ; then
¥ $(CP) $(HTMLRC) $(SDOCRC) ;
¥ fi $(SDOC)
-format:html4 $(CFLAGS) $(SOURCE).sdoctext
: @if [ "$(ENABLE_DEFAULT)" = "1" ] ; then
¥ $(CP) $(TEXTRC) $(SDOCRC) ;
¥ fi $(SDOC)
-format:plain $(CFLAGS) $(SOURCE).sdocpdf
: @if [ "$(ENABLE_DEFAULT)" = "1" ] ; then
¥ $(CP) $(PDFRC) $(SDOCRC) ;
¥ fi $(SDOC)
-format:latex2e $(CFLAGS) $(SOURCE).sdoc $(RM)
$(TMPTEX) $(CAT) $(TEX_HEADER) >
$(TMPTEX) $(TAIL) $(SOURCE).tex >>
$(TMPTEX) $(PLATEX)
$(TMPTEX) $(PLATEX)
$(TMPTEX) $(DVIPDF)
$(SOURCE).dviclean
: @echo "Clean up files
..." @$(RM) $(SOURCE).html $(SOURCE).pdf
$(SOURCE).tex $(SOURCE).dvi
¥ $(SOURCE).log $(SOURCE).toc
$(SOURCE).out $(SOURCE).aux $(SOURCE).txt @$(RM)
$(SDOCRC) @$(RM)
$(TMPTEX) @echo
"Done."--ついでに
.emacs.el
に以下を追加して、毎回テンプレートを使うか選択できるようにしてみた。--
.emacs.el(require
'autoinsert)(add-hook 'find-file-hooks
'auto-insert)(setq auto-insert-directory
"~/lib/sdoc/")(setq
auto-insert-alist (append
'( (sdoc-mode .
"template.sdoc") )
auto-insert-alist))--
Posted: 日 - 11月 16, 2003 at 10:11 午後