Browse Source

Updates to simultaneously generate html and pdf versions from markdown

Caleb Fangmeier 5 years ago
parent
commit
52648b2a50
17 changed files with 879 additions and 37 deletions
  1. 1 1
      .gitmodules
  2. 10 2
      Makefile
  3. 4 0
      content/.gitignore
  4. 1 0
      content/00_abstract.md
  5. 6 10
      content/01_introduction.md
  6. 6 11
      content/02_theory.md
  7. BIN
      content/figures/cube.jpg
  8. 251 0
      content/nuthesis.cls
  9. BIN
      content/nuthesis_doc.pdf
  10. BIN
      content/thesis.pdf
  11. 189 0
      content/thesis.tex
  12. 308 0
      content/unl.pdf
  13. 53 0
      convert.py
  14. 1 1
      elegant
  15. 24 11
      pelicanconf.py
  16. 1 1
      plugins
  17. 24 0
      publishconf.py

+ 1 - 1
.gitmodules

@@ -1,6 +1,6 @@
 [submodule "plugins"]
 	path = plugins
-	url = https://github.com/getpelican/pelican-plugins
+	url = gogs@git.fangmeier.tech:caleb/pelican-plugins.git
 [submodule "elegant"]
 	path = elegant
 	url = gogs@git.fangmeier.tech:caleb/pelican-elegant.git

+ 10 - 2
Makefile

@@ -27,7 +27,7 @@ DROPBOX_DIR=~/Dropbox/Public/
 
 GITHUB_PAGES_BRANCH=gh-pages
 
-DEBUG ?= 1
+DEBUG ?= 0
 ifeq ($(DEBUG), 1)
 	PELICANOPTS += -D
 endif
@@ -42,6 +42,7 @@ help:
 	@echo '                                                                          '
 	@echo 'Usage:                                                                    '
 	@echo '   make html                           (re)generate the web site          '
+	@echo '   make pdf                            (re)generate the pdf               '
 	@echo '   make clean                          remove the generated files         '
 	@echo '   make regenerate                     regenerate files upon modification '
 	@echo '   make publish                        generate using production settings '
@@ -62,10 +63,16 @@ help:
 	@echo '                                                                          '
 
 html:
+	./convert.py html
 	$(PELICAN) $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS)
 
+pdf:
+	./convert.py tex
+	cd $(INPUTDIR); rubber thesis
+
 clean:
 	[ ! -d $(OUTPUTDIR) ] || rm -rf $(OUTPUTDIR)
+	cd $(INPUTDIR); rubber --clean thesis; rm -f *_*.tex; rm -f *_*.html; rm -f *_*.aux
 
 regenerate:
 	$(PELICAN) -r $(INPUTDIR) -o $(OUTPUTDIR) -s $(CONFFILE) $(PELICANOPTS)
@@ -98,6 +105,7 @@ stopserver:
 
 publish:
 	$(PELICAN) $(INPUTDIR) -o $(OUTPUTDIR) -s $(PUBLISHCONF) $(PELICANOPTS)
+	[ -f content/thesis.pdf ] && cp $(INPUTDIR)/thesis.pdf $(OUTPUTDIR)
 
 ssh_upload: publish
 	scp -P $(SSH_PORT) -r $(OUTPUTDIR)/* $(SSH_USER)@$(SSH_HOST):$(SSH_TARGET_DIR)
@@ -121,4 +129,4 @@ github: publish
 	ghp-import -m "Generate Pelican site" -b $(GITHUB_PAGES_BRANCH) $(OUTPUTDIR)
 	git push origin $(GITHUB_PAGES_BRANCH)
 
-.PHONY: html help clean regenerate serve serve-global devserver stopserver publish ssh_upload rsync_upload dropbox_upload ftp_upload s3_upload cf_upload github
+.PHONY: html pdf help clean regenerate serve serve-global devserver stopserver publish ssh_upload rsync_upload dropbox_upload ftp_upload s3_upload cf_upload github

+ 4 - 0
content/.gitignore

@@ -0,0 +1,4 @@
+
+*.html
+*_*.tex
+*.aux

File diff suppressed because it is too large
+ 1 - 0
content/00_abstract.md


File diff suppressed because it is too large
+ 6 - 10
content/01_introduction.md


File diff suppressed because it is too large
+ 6 - 11
content/02_theory.md


BIN
content/figures/cube.jpg


+ 251 - 0
content/nuthesis.cls

@@ -0,0 +1,251 @@
+%%
+%% This is file `nuthesis.cls',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% nuthesis.dtx  (with options: `class')
+%% This is a generated file.
+%% 
+%% Copyright (C) 2008 by Ned W. Hummel nhummel@gmail.com
+%% 
+%% This file may be distributed and/or modified under the conditions of
+%% the LaTeX Project Public License, either version 1.3c of this license
+%% or (at your option) any later version.  The latest version of this
+%% license is in:
+%% 
+%%    http://www.latex-project.org/lppl.txt
+%% 
+%% and version 1.3c or later is part of all distributions of LaTeX version
+%% 2006/05/20 or later.
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesClass{nuthesis}
+    [2017/10/12 v0.7.2 University of Nebraska Thesis class]
+%% \CharacterTable
+%% {Upper-case    \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
+%%  Lower-case    \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z
+%%  Digits        \0\1\2\3\4\5\6\7\8\9
+%%  Exclamation   \!     Double quote  \"     Hash (number) \#
+%%  Dollar        \$     Percent       \%     Ampersand     \&
+%%  Acute accent  \'     Left paren    \(     Right paren   \)
+%%  Asterisk      \*     Plus          \+     Comma         \,
+%%  Minus         \-     Point         \.     Solidus       \/
+%%  Colon         \:     Semicolon     \;     Less than     \<
+%%  Equals        \=     Greater than  \>     Question mark \?
+%%  Commercial at \@     Left bracket  \[     Backslash     \\
+%%  Right bracket \]     Circumflex    \^     Underscore    \_
+%%  Grave accent  \`     Left brace    \{     Vertical bar  \|
+%%  Right brace   \}     Tilde         \~}
+
+%% The ToC is required
+%% Uncomment these if need be
+
+\RequirePackage{ifthen}
+\RequirePackage{keyval}
+\RequirePackage{setspace}
+\RequirePackage{scrtime}
+\newboolean{nu@print}
+\newboolean{nu@single}
+\newcommand{\doctype}[1]{%
+  \gdef\nu@doctype{#1}}
+\newcommand{\nu@doctype}{}
+\newcommand{\degree}[1]{%
+  \gdef\nu@degree{#1}}
+\newcommand{\nu@degree}{}
+\newcommand{\degreeabbreviation}[1]{%
+  \gdef\nu@degreeabbreviation{#1}}
+\newcommand{\nu@degreeabbreviation}{}
+\newcommand{\major}[1]{%
+  \gdef\nu@major{#1}}
+\newcommand{\nu@major}{}
+\newcommand{\college}[1]{%
+  \gdef\nu@college{#1}}
+\newcommand{\nu@college}{Graduate College}
+\newcommand{\university}[1]{%
+  \gdef\nu@university{#1}}
+\newcommand{\nu@university}{University of Nebraska}
+\newcommand{\city}[1]{%
+  \gdef\nu@city{#1}}
+\newcommand{\nu@city}{Lincoln}
+\newcommand{\state}[1]{%
+  \gdef\nu@state{#1}}
+\newcommand{\nu@state}{Nebraska}
+\newcommand{\adviser}[1]{%
+  \gdef\nu@adviser{#1}}
+\newcommand{\adviserAbstract}[1]{%
+  \gdef\nu@adviserAbstract{#1}}
+\newcommand{\nu@adviser}{}
+\newcommand{\nu@adviserAbstract}{}
+\newcommand{\degreemonth}[1]{%
+  \gdef\nu@month{#1}}
+\newcommand{\nu@month}{}
+\newcommand{\degreeyear}[1]{%
+  \gdef\nu@year{#1}}
+\newcommand{\nu@year}{}
+\DeclareOption{testing}{%
+  \PassOptionsToPackage{showframe}{geometry}
+}
+\DeclareOption{single}{%
+  \setboolean{nu@single}{true}
+}
+
+\DeclareOption{double}{%
+  \setboolean{nu@single}{false}
+}
+\DeclareOption{print}{%
+  \setboolean{nu@print}{true}
+  \PassOptionsToPackage{bindingoffset=0.5in}{geometry}
+}
+\DeclareOption{electronic}{%
+\relax
+}
+\DeclareOption{phd}{%
+  \doctype{Dissertation}
+  \degree{Doctor of Philosophy}
+  \degreeabbreviation{Ph.D.}
+}
+
+\DeclareOption{edd}{%
+  \doctype{Dissertation}
+  \degree{Doctor of Education}
+  \degreeabbreviation{Ed.D.}
+}
+
+\DeclareOption{ms}{%
+  \doctype{Thesis}
+  \degree{Master of Science}
+  \degreeabbreviation{M.S.}
+}
+
+\DeclareOption{ma}{%
+  \doctype{Thesis}
+  \degree{Master of Art}
+  \degreeabbreviation{M.A.}
+}
+\DeclareOption*{%
+  \PassOptionsToClass{\CurrentOption}{memoir}
+}
+\ExecuteOptions{double,electronic,phd}
+\ProcessOptions
+\LoadClass[12pt,oneside]{memoir}
+\renewcommand{\chapnamefont}{\normalfont\large\bfseries}
+\renewcommand{\chapnumfont}{\normalfont\large\bfseries}
+\renewcommand{\chaptitlefont}{\large\bfseries}
+\renewcommand{\partnamefont}{\normalfont\large\bfseries}
+\renewcommand{\partnumfont}{\normalfont\large\bfseries}
+\renewcommand{\parttitlefont}{\normalfont\large\bfseries}
+\renewcommand{\secheadstyle}{\large\bfseries}
+\renewcommand{\subsecheadstyle}{\normalsize\bfseries}
+\renewcommand{\paraheadstyle}{\normalsize\bfseries}
+\renewcommand{\subparaheadstyle}{\normalsize\bfseries}
+\RequirePackage[letterpaper,margin=1in,includehead,nofoot]{geometry}
+\makepagestyle{nu@pagestyle}
+\makeoddhead{nu@pagestyle}%
+  {}{}{\normalfont\thepage}
+\makeevenhead{nu@pagestyle}%
+  {\normalfont\thepage}{}{}
+
+\makepagestyle{nu@pagestyleDraft}
+\makeoddhead{nu@pagestyleDraft}%
+  {\itshape\LaTeX{}ed at \thistime{} on \today}{}{\normalfont\thepage}
+\makeevenhead{nu@pagestyleDraft}%
+  {\normalfont\thepage}{}{\itshape\LaTeX{}ed at \thistime{} on \today}
+\ifdraftdoc
+  \aliaspagestyle{plain}{nu@pagestyleDraft}
+  \aliaspagestyle{empty}{nu@pagestyleDraft}
+%%  \aliaspagestyle{cleared}{nu@pagestyleDraft}
+  \pagestyle{nu@pagestyleDraft}
+\else
+  \aliaspagestyle{plain}{nu@pagestyle}
+%%  \aliaspagestyle{cleared}{nu@pagestyle}
+  \pagestyle{nu@pagestyle}
+\fi
+\renewcommand{\maketitle}{%
+\begin{center}%
+\MakeUppercase{\thetitle}\\[1\baselineskip]
+\singlespacing
+by\\[2\baselineskip]
+\theauthor\\[4\baselineskip]
+\MakeUppercase{A \nu@doctype}\\[4\baselineskip]
+Presented to the Faculty of\\[\baselineskip]
+The \nu@college{} at the \nu@university\\[\baselineskip]
+In Partial Fulfilment of Requirements\\[\baselineskip]
+For the Degree of \nu@degree\\[3\baselineskip]
+Major: \nu@major\\[3\baselineskip]
+Under the Supervision of \nu@adviser\\[3\baselineskip]
+\nu@city, \nu@state\\[1\baselineskip]
+\nu@month, \nu@year
+\end{center}
+\thispagestyle{empty}
+\cleardoublepage
+}
+\renewenvironment{abstract}{%
+  \pagestyle{empty}%
+  \begin{doublespacing}%
+    \begin{center}%
+      \MakeUppercase{\thetitle}\\[.5\baselineskip]
+      \theauthor, \nu@degreeabbreviation\\
+      \nu@university, \nu@year%
+    \end{center}%
+    \begin{flushleft}%
+      Adviser: \nu@adviserAbstract%
+    \end{flushleft}%
+  }{\par\end{doublespacing}\cleardoublepage}
+
+\newenvironment{copyrightpage}[1][Copyright]{%
+  \begin{center}%
+    \MakeUppercase{#1}\\
+    \copyright{} \nu@year, \theauthor%
+  \end{center}%
+  \ifthenelse{\boolean{nu@single}}{\begin{singlespacing}}{\begin{doublespacing}}%
+    }{\par%
+      \ifthenelse{\boolean{nu@single}}{\end{singlespacing}}{\end{doublespacing}}%
+  \cleardoublepage}
+
+\newenvironment{dedication}[1][Dedication]{%
+  \begin{center}%
+    \MakeUppercase{#1}%
+  \end{center}%
+  \ifthenelse{\boolean{nu@single}}{\begin{singlespacing}}{\begin{doublespacing}}%
+    }{\par%
+      \ifthenelse{\boolean{nu@single}}{\end{singlespacing}}{\end{doublespacing}}%
+  \cleardoublepage}
+
+\newenvironment{acknowledgments}[1][Acknowledgments]{%
+  \begin{center}
+    \MakeUppercase{#1}
+  \end{center}
+  \ifthenelse{\boolean{nu@single}}{\begin{singlespacing}}{\begin{doublespacing}}%
+    }{\par%
+      \ifthenelse{\boolean{nu@single}}{\end{singlespacing}}{\end{doublespacing}}%
+  \cleardoublepage}
+
+\newenvironment{grantinfo}[1][Grant Information]{%
+  \begin{center}
+    \MakeUppercase{#1}
+  \end{center}
+  \ifthenelse{\boolean{nu@single}}{\begin{singlespacing}}{\begin{doublespacing}}%
+    }{\par%
+      \ifthenelse{\boolean{nu@single}}{\end{singlespacing}}{\end{doublespacing}}%
+  \cleardoublepage}
+
+
+\let\nu@ToC\tableofcontents
+\renewcommand{\contentsname}{Table of Contents}
+\renewcommand{\tableofcontents}{\cleardoublepage\nu@ToC*}
+
+\let\nu@LoF\listoffigures
+\renewcommand{\listoffigures}{\cleardoublepage\nu@LoF}
+
+\let\nu@LoT\listoftables
+\renewcommand{\listoftables}{\cleardoublepage\nu@LoT}
+\maxsecnumdepth{subsubsection}
+\setsecnumdepth{subsubsection}
+\maxtocdepth{subsubsection}
+\let\backmatter\relax
+\AtBeginDocument{%
+\ifthenelse{\boolean{nu@single}}{\singlespacing}{\doublespacing}%
+}
+\endinput
+%%
+%% End of file `nuthesis.cls'.

BIN
content/nuthesis_doc.pdf


BIN
content/thesis.pdf


+ 189 - 0
content/thesis.tex

@@ -0,0 +1,189 @@
+%%
+%% This is file `skeleton.tex',
+%% generated with the docstrip utility.
+%%
+%% The original source files were:
+%%
+%% nuthesis.dtx  (with options: `skeleton')
+%% 
+
+% rubber: module pdftex
+
+%%
+%% For common degrees, you can use the class options:
+%% phd, edd, ms, ma
+%% phd is the default
+\documentclass[print]{nuthesis}
+
+%%%%%%%%% Preamble from pandoc
+\usepackage{lmodern}
+\usepackage{amssymb,amsmath}
+\usepackage{ifxetex,ifluatex}
+\usepackage{fixltx2e} % provides \textsubscript
+\ifnum 0\ifxetex 1\fi\ifluatex 1\fi=0 % if pdftex
+  \usepackage[T1]{fontenc}
+  \usepackage[utf8]{inputenc}
+  \usepackage{textcomp} % provides euro and other symbols
+\else % if luatex or xelatex
+  \usepackage{unicode-math}
+  \defaultfontfeatures{Ligatures=TeX,Scale=MatchLowercase}
+\fi
+% use upquote if available, for straight quotes in verbatim environments
+\IfFileExists{upquote.sty}{\usepackage{upquote}}{}
+% use microtype if available
+\IfFileExists{microtype.sty}{%
+\usepackage[]{microtype}
+\UseMicrotypeSet[protrusion]{basicmath} % disable protrusion for tt fonts
+}{}
+\IfFileExists{parskip.sty}{%
+\usepackage{parskip}
+}{% else
+\setlength{\parindent}{0pt}
+\setlength{\parskip}{6pt plus 2pt minus 1pt}
+}
+\usepackage{hyperref}
+\hypersetup{
+            pdfborder={0 0 0},
+            breaklinks=true}
+\urlstyle{same}  % don't use monospace font for urls
+\usepackage{graphicx,grffile}
+\makeatletter
+\def\maxwidth{\ifdim\Gin@nat@width>\linewidth\linewidth\else\Gin@nat@width\fi}
+\def\maxheight{\ifdim\Gin@nat@height>\textheight\textheight\else\Gin@nat@height\fi}
+\makeatother
+% Scale images if necessary, so that they will not overflow the page
+% margins by default, and it is still possible to overwrite the defaults
+% using explicit options in \includegraphics[width, height, ...]{}
+\setkeys{Gin}{width=\maxwidth,height=\maxheight,keepaspectratio}
+\setlength{\emergencystretch}{3em}  % prevent overfull lines
+\providecommand{\tightlist}{%
+  \setlength{\itemsep}{0pt}\setlength{\parskip}{0pt}}
+\setcounter{secnumdepth}{0}
+% Redefines (sub)paragraphs to behave more like sections
+\ifx\paragraph\undefined\else
+\let\oldparagraph\paragraph
+\renewcommand{\paragraph}[1]{\oldparagraph{#1}\mbox{}}
+\fi
+\ifx\subparagraph\undefined\else
+\let\oldsubparagraph\subparagraph
+\renewcommand{\subparagraph}[1]{\oldsubparagraph{#1}\mbox{}}
+\fi
+
+% set default figure placement to htbp
+\makeatletter
+\def\fps@figure{htbp}
+\makeatother
+
+\makeatletter
+\@ifpackageloaded{subfig}{}{\usepackage{subfig}}
+\@ifpackageloaded{caption}{}{\usepackage{caption}}
+\captionsetup[subfloat]{margin=0.5em}
+\AtBeginDocument{%
+\renewcommand*\figurename{Figure}
+\renewcommand*\tablename{Table}
+}
+% \AtBeginDocument{%
+% \renewcommand*\listfigurename{List of Figures}
+% \renewcommand*\listtablename{List of Tables}
+% }
+\@ifpackageloaded{float}{}{\usepackage{float}}
+\floatstyle{ruled}
+\@ifundefined{c@chapter}{\newfloat{codelisting}{h}{lop}}{\newfloat{codelisting}{h}{lop}[chapter]}
+\floatname{codelisting}{Listing}
+\newcommand*\listoflistings{\listof{codelisting}{List of Listings}}
+\makeatother
+
+%%%%%%%%% End Preamble from pandoc
+
+\begin{document}
+%% Start formatting the first few special pages
+%% frontmatter is needed to set the page numbering correctly
+\frontmatter
+
+\title{Measurement of the TTTT Cross Section at 13TeV}
+\author{Caleb Fangmeier}
+\adviser{Gregory Snow}
+\adviserAbstract{Professor Gregory Snow}
+\major{Physics and Astronomy}
+\degreemonth{TBD}
+\degreeyear{TBD}
+%%
+%% For most people the defaults will be correct, so they are commented
+%% out. To manually set these, just uncomment and make the needed
+%% changes.
+%% \college{Your college}
+%% \city{Your City}
+%%
+%% For most people the following can be changed with a class
+%% option. To manually set these, just uncomment the following and
+%% make the needed changes.
+%% \doctype{Thesis or Dissertation}
+%% \degree{Your degree}
+%% \degreeabbreviation{Your degree abbr.}
+%%
+%% Now that we know everything we need, we can generate the title page
+%% itself.
+%%
+\maketitle
+%%
+%% You have a maximum of 350 words for your abstract, which includes
+%% your title, name, etc.
+%%
+%% Required
+\begin{abstract}
+\include{00_Abstract}
+\end{abstract}
+
+%% Optional
+%% \begin{copyrightpage}
+%% \end{copyrightpage}
+
+%% Optional
+%% \begin{dedication}
+%% \end{dedication}
+
+%% Optional
+%% \begin{acknowledgments}
+%% \end{acknowledgments}
+
+%% Optional
+%% \begin{grantinfo}
+%% \end{grantinfo}
+%% The ToC is required
+%% Uncomment these if need be
+
+%% The ToC is required
+\tableofcontents
+%% Uncomment these if need be
+% \listoffigures
+% \listoftables
+%%
+%% ``Real'' beginning of the document.
+%% mainmatter is needed to set the page numbering correctly
+%%   mainmatter is needed after the ToC, (LoF, and LoT) to set the
+%%   page numbering correctly for the main body
+\mainmatter
+
+%% Thesis goes here
+
+\include{01_introduction}
+\include{02_theory}
+
+%% backmatter is needed at the end of the main body of your thesis to
+%% set up page numbering correctly for the remainder of the thesis
+\backmatter
+
+%% Start the correct formatting for the appendices
+\appendix
+
+%% Appendices go here (if you have them)
+
+%% Bibliography goes here (You better have one)
+%% BibTeX is your friend
+
+%% Index go here (if you have one)
+\end{document}
+
+\endinput
+%%
+%% End of file `skeleton.tex'.

File diff suppressed because it is too large
+ 308 - 0
content/unl.pdf


+ 53 - 0
convert.py

@@ -0,0 +1,53 @@
+#!/usr/bin/env python3
+import sys
+import re
+from subprocess import run
+from os.path import splitext
+from glob import glob
+
+title_re = re.compile(r'^# (.*)$', re.MULTILINE)
+tex_re = re.compile(r'\\begin{document}(.*)\\end{document}', re.MULTILINE | re.DOTALL)
+
+
+def parse_title(infilename):
+    # Find chapter title
+    with open(infilename) as f:
+        matches = title_re.findall(f.read())
+    if matches:
+        return matches[0]
+    else:
+        return splitext(infilename.split('/')[-1])[0]
+
+
+def make_tex(infilename):
+    title = parse_title(infilename)
+    outfilename = splitext(infilename)[0]+'.tex'
+    run(('pandoc', '-F', 'pandoc-crossref', '-F', 'pandoc-citeproc', '-s', infilename, '-o', outfilename,))
+    with open(outfilename, 'r') as f:
+        full = f.read()
+        body = tex_re.findall(full)[0]
+        body = body.replace('section{'+title+'}', 'chapter{'+title+'}')
+    with open(outfilename, 'w') as f:
+        f.write(body)
+
+
+def make_html(infilename):
+    title = parse_title(infilename)
+    outfilename = splitext(infilename)[0]+'.html'
+    run(('pandoc', '-F', 'pandoc-crossref', '-F', 'pandoc-citeproc', '-s', infilename, '-o', outfilename,
+         '--metadata=linkReferences:true', f'--metadata=pagetitle:{title}'))
+
+
+def main():
+    if len(sys.argv) != 2 or sys.argv[1] not in ('html', 'tex'):
+        print('usage: ./convert.py [html|tex]')
+        sys.exit(1)
+    for infilename in glob('content/*_*.md'):
+        if sys.argv[1] == 'html':
+            make_html(infilename)
+        else:
+            make_tex(infilename)
+
+
+if __name__ == '__main__':
+    main()

+ 1 - 1
elegant

@@ -1 +1 @@
-Subproject commit 44c8fbcfe631784f84c8b92b7273280b3c956182
+Subproject commit a6253e37ce22f51552382368672bc2dc07695bb5

+ 24 - 11
pelicanconf.py

@@ -13,17 +13,30 @@ TIMEZONE = 'America/Chicago'
 DEFAULT_LANG = 'en'
 THEME = 'elegant'
 PLUGIN_PATHS = ['plugins']
-PLUGINS = ['extract_toc']
-
-MARKDOWN = {
-    'extension_configs': {
-        'markdown.extensions.codehilite': {'css_class': 'highlight'},
-        'markdown.extensions.extra': {},
-        'markdown.extensions.meta': {},
-        'markdown.extensions.toc': {},
-    },
-    'output_format': 'html5',
-}
+PLUGINS = ['sitemap', 'extract_toc', 'tipue_search']
+
+# MD_EXTENSIONS = ['codehilite(css_class=highlight)', 'extra', 'headerid', 'toc']
+DIRECT_TEMPLATES = (('index', 'tags', 'categories','archives', 'search', '404'))
+STATIC_PATHS = ['theme/images', 'images', 'figures']
+TAG_SAVE_AS = ''
+CATEGORY_SAVE_AS = ''
+AUTHOR_SAVE_AS = ''
+IGNORE_FILES = ['.#*', '*.md']
+
+SITEMAP = {'format': 'txt'}
+DEFAULT_DATE = 'fs'  # filesystem date
+
+
+# MARKDOWN = {
+#     'extension_configs': {
+#         'markdown.extensions.codehilite': {'css_class': 'highlight'},
+#         'markdown.extensions.extra': {},
+#         'markdown.extensions.meta': {},
+#         'markdown.extensions.headerid': {},
+#         'markdown.extensions.toc': {},
+#     },
+#     'output_format': 'html5',
+# }
 
 # Feed generation is usually not desired when developing
 # FEED_ALL_ATOM = None

+ 1 - 1
plugins

@@ -1 +1 @@
-Subproject commit 8d96866a4ec54ff30ada0a5bf68051f95dd1d257
+Subproject commit 892a94b4d17587324975e4df90ff7079a3721e05

+ 24 - 0
publishconf.py

@@ -0,0 +1,24 @@
+#!/usr/bin/env python
+# -*- coding: utf-8 -*- #
+from __future__ import unicode_literals
+
+# This file is only used if you use `make publish` or
+# explicitly specify it as your config file.
+
+import os
+import sys
+sys.path.append(os.curdir)
+from pelicanconf import *
+
+SITEURL = 'https://thesis.fangmeier.tech'
+RELATIVE_URLS = False
+
+FEED_ALL_ATOM = 'feeds/all.atom.xml'
+CATEGORY_FEED_ATOM = 'feeds/%s.atom.xml'
+
+DELETE_OUTPUT_DIRECTORY = True
+
+# Following items are often useful when publishing
+
+#DISQUS_SITENAME = ""
+#GOOGLE_ANALYTICS = ""