Merge pull request #132 from rchurchley/organize

Reorganize repository into folders
This commit is contained in:
Matthias Vogelgesang 2015-09-23 09:04:27 +02:00
commit 5ee8cda15e
21 changed files with 179 additions and 129 deletions

12
.gitignore vendored
View File

@ -1,7 +1,6 @@
demo.pdf
mtheme.pdf
# Temporary files
*.fls
.latex-cache
*.acn
*.acr
*.alg
@ -10,6 +9,7 @@ mtheme.pdf
*.blg
*.dvi
*.fdb_latexmk
*.fls
*.glg
*.glo
*.gls
@ -34,6 +34,8 @@ mtheme.pdf
*.vrb
*.xdy
*.tdo
*.sty
.temptex
# Output
*.sty

View File

@ -1,65 +1,75 @@
TEXMFHOME = $(shell kpsewhich -var-value=TEXMFHOME)
INS = source/beamerthemem.ins
PACKAGE_SRC = $(wildcard source/*.dtx)
PACKAGE_STY = $(notdir $(PACKAGE_SRC:%.dtx=%.sty))
DEMO_SRC = demo/demo.tex demo/demo.bib
DEMO_PDF = demo/demo.pdf
DOC_SRC = doc/metropolistheme.dtx
DOC_PDF = doc/metropolistheme.pdf
CTAN_CONTENT = $(INS) $(PACKAGE_SRC) $(DOC_PDF)
TEXMFHOME = $(shell kpsewhich -var-value=TEXMFHOME)
INSTALL_DIR = $(TEXMFHOME)/tex/latex/mtheme
DOC_DIR = $(TEXMFHOME)/doc/latex/mtheme
TEMP_DIR = .temptex
DOC_DIR = $(TEXMFHOME)/doc/latex/mtheme
CACHE_DIR := $(shell pwd)/.latex-cache
INS = mtheme.ins
DEMO_SRC = demo.tex
DEMO_PDF = demo.pdf
DOC_SRC = mtheme.dtx
DOC_PDF = mtheme.pdf
DTX = $(wildcard *.dtx)
STY = $(patsubst %.dtx,%.sty,$(wildcard beamer*.dtx pgfplotsthemetol.dtx))
CTAN_CONTENT = $(INS) $(DTX) $(DOC_PDF)
TEXC := latexmk -xelatex -output-directory=$(TEMP_DIR)
COMPILE_TEX := latexmk -xelatex -output-directory=$(CACHE_DIR)
export TEXINPUTS:=$(shell pwd):$(shell pwd)/source:${TEXINPUTS}
DOCKER_IMAGE = latex-image
DOCKER_CONTAINER = latex-container
.PHONY: all sty doc demo clean install uninstall ctan clean-cache clean-sty ctan-version docker-run docker-build docker-rm
.PHONY: sty doc demo ctan clean install uninstall docker-run docker-build docker-rm
all: sty doc
all: sty doc demo
$(STY): $(DTX) $(INS)
@latex $(INS)
$(DEMO_PDF): $(STY) $(DEMO_SRC)
$(TEXC) $(DEMO_SRC)
@cp $(TEMP_DIR)/$(DEMO_PDF) .
$(DOC_PDF): $(DOC_SRC) $(DTX)
@$(TEXC) $(DOC_SRC)
@cp $(TEMP_DIR)/$(DOC_PDF) .
sty: $(STY)
sty: $(PACKAGE_STY)
doc: $(DOC_PDF)
demo: $(DEMO_PDF)
ctan: $(CTAN_CONTENT)
@mkdir -p mtheme
@cp $(CTAN_CONTENT) mtheme/
@zip -q mtheme-$(shell grep -A1 ProvidesPackage < beamerthemem.dtx | grep -P -o '\d\.\d\.\d').zip mtheme/*
@rm -rf mtheme
clean: clean-cache clean-sty
clean:
@git clean -xfd
install: $(STY) $(DOC_PDF)
install: $(PACKAGE_STY) $(DOC_PDF)
@mkdir -p $(INSTALL_DIR)
@cp $(STY) $(INSTALL_DIR)
@cp $(PACKAGE_STY) $(INSTALL_DIR)
@mkdir -p $(DOC_DIR)
@cp $(DOC_PDF) $(DOC_DIR)
uninstall:
@rm -f $(addprefix $(INSTALL_DIR)/, $(STY))
@rm -f $(DOC_DIR)/$(DOC_PDF)
@rm -f $(addprefix $(INSTALL_DIR)/, $(PACKAGE_STY))
@rmdir $(INSTALL_DIR)
@rm -f $(DOC_DIR)/$(notdir $(DOC_PDF))
@rmdir $(DOC_DIR)
ctan: $(CTAN_CONTENT) ctan-version
@zip mtheme-$(shell date "+%Y-%m-%d").zip $(CTAN_CONTENT)
clean-cache:
@rm -f $(CACHE_DIR)/*
clean-sty:
@rm -f $(PACKAGE_STY)
ctan-version:
@sed -i '' -- 's@\(ProvidesPackage.*\[\)[0-9/]*@\1$(shell date "+%Y/%m/%d")@' $(PACKAGE_SRC)
$(CACHE_DIR):
@mkdir -p $(CACHE_DIR)
$(PACKAGE_STY): $(PACKAGE_SRC) $(INS) | $(CACHE_DIR) clean-cache
@cd $(dir $(INS)) && latex -output-directory=$(CACHE_DIR) $(notdir $(INS))
@cp $(addprefix $(CACHE_DIR)/,$(PACKAGE_STY)) .
$(DOC_PDF): $(DOC_SRC) $(PACKAGE_STY) | $(CACHE_DIR) clean-cache
@cd $(dir $(DOC_SRC)) && $(COMPILE_TEX) $(notdir $(DOC_SRC))
@cp $(CACHE_DIR)/$(notdir $(DOC_PDF)) $(DOC_PDF)
$(DEMO_PDF): $(DEMO_SRC) $(PACKAGE_STY) | $(CACHE_DIR) clean-cache
@cd $(dir $(DEMO_SRC)) && $(COMPILE_TEX) $(notdir $(DEMO_SRC))
@cp $(CACHE_DIR)/$(notdir $(DEMO_PDF)) $(DEMO_PDF)
docker-run: docker-build
docker run --rm=true --name $(DOCKER_CONTAINER) -i -t -v `pwd`:/data $(DOCKER_IMAGE) make

View File

@ -1,17 +1,50 @@
## Beamer mtheme
## Metropolis
Metropolis is a simple, modern Beamer theme suitable for anyone to use. It tries to minimize noise and maximize space for content; the only visual flourish it offers is an (optional) progress bar added to each slide. The core design principles of the theme were described in a blog post [here](http://bloerg.net/2014/09/20/a-modern-beamer-theme.html).
The *mtheme* is a Beamer theme with minimal visual noise. The core design principles
of the theme were described in a [blog post](http://bloerg.net/2014/09/20/a-modern-beamer-theme.html).
Not convinced? Have a look at the [demo slides](demo.pdf).
![Sample](http://i.imgur.com/Bxu52fz.png)
For further information take a look at the [manual](mtheme.pdf).
## Installation
Installing Metropolis, like any Beamer theme, involves four easy steps:
1. **Download the source** with a `git clone` of the [Metropolis repository](https://github.com/matze/mtheme) or as a [zip archive](https://github.com/matze/mtheme/archive/master.zip) of the latest development version.
2. **Compile the style files** by running `make sty` inside the downloaded
directory. (Or run LaTeX directly on `source/metropolistheme.ins`.)
3. **Move the resulting `*.sty` files** to the folder containing your presentation. To use Metropolis with many presentations, run `make install` or move the `*.sty` files to a folder in your TeX path instead.
4. **Use the theme for your presentation** by declaring `\usetheme{m}` in
the preamble of your Beamer document.
## Usage
The following code shows a minimal example of a Beamer presentation using Metropolis.
```latex
\documentclass{beamer}
\usetheme{m} % Use metropolis theme
\title{A minimal example}
\date{\today}
\author{Matthias Vogelgesang}
\institute{Centre for Modern Beamer Themes}
\begin{document}
\maketitle
\section{First Section}
\begin{frame}{First Frame}
Hello, world!
\end{frame}
\end{document}
```
Detailed information on using Metropolis can be found in the [manual](doc/metropolistheme.pdf).
## License
The theme itself is licensed under a [Creative Commons Attribution-ShareAlike
4.0 International License](http://creativecommons.org/licenses/by-sa/4.0/). This
means that if you change the theme and re-distribute it, you *must* retain the
copyright notice header and license it under the same CC-BY-SA license. This
does not affect the presentation that you create with the theme.
The theme itself is licensed under a [Creative Commons Attribution-ShareAlike 4.0 International License](http://creativecommons.org/licenses/by-sa/4.0/). This means that if you change the theme and re-distribute it, you *must* retain the copyright notice header and license it under the same CC-BY-SA license. This does not affect the presentation that you create with the theme.

BIN
demo.pdf

Binary file not shown.

BIN
demo/demo.pdf Normal file

Binary file not shown.

View File

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 18 KiB

View File

@ -86,66 +86,103 @@
\newcommand{\themename}{\textsc{metropolis}\xspace}
\GetFileInfo{beamerthemem.dtx}
\title{Modern Beamer Presentations\\with the\\\themename package}
\title{Modern Beamer Presentations with the \themename{} package}
\author{Matthias Vogelgesang \\ \url{matthias.vogelgesang@gmail.com}}
\date{v0.x.x}
\begin{document}
\maketitle
\tableofcontents
\section{Introduction}
Beamer is an awesome way to make presentations with LaTeX. But the stock themes
do not necessarily look particularly nice and the custom themes often scream
“Beamer” at first sight. The goal of \themename is to provide a modern Beamer
theme with minimal visual noise. It provides section slides with a neat progress
bar and it is intended to be used with
Beamer is an awesome way to make presentations with LaTeX, but its theme
selection is surprisingly sparse. The stock themes share an aesthetic that is
now overused and can be a little cluttered, and the few distinctive custom
themes available are often specialized for a particular corporate or
institutional brand.
The goal of \themename{} is to provide a simple, modern Beamer theme suitable
for anyone to use. It tries to minimize noise and maximize space for content;
the only visual flourish it offers is an (optional) progress bar added to each
slide or to the section slides.
By default, \themename{} uses
\href{https://www.mozilla.org/en-US/styleguide/products/firefox-os/typeface/}
{Fira Sans}, a gorgeous typeface commissioned by Mozilla and designed by
\href{http://www.carrois.com/fira-3-1/}{Carrois}. Hence to get the best results
you should have installed the Fira typeface and use XeTeX to typeset your
slides. Nevertheless this is no hard dependency. The theme also works fine with
pdfTeX and the Computer Modern typeface.
\href{http://www.carrois.com/fira-3-1/}{Carrois}. For best results, you will
need the Fira typeface installed and use Xe\LaTeX{} to typeset your slides.
However, \themename{} can also be used other typefaces and \LaTeX{} build
systems.
The codebase is maintained on \href{https://github.com/matze/mtheme}{GitHub}.
So if you have issues, find mistakes in the manual or want to contribute to
make the theme even better get in touch there.
\themename's codebase is maintained on \href{https://github.com/matze/mtheme}
{GitHub}. If you have issues, find mistakes in the manual or want to help make
the theme even better, please get in touch there. The
\href{https://github.com/matze/mtheme/graphs/contributors}
{full list of contributors} already contains over a dozen names!
\section{Getting Started}
\subsection{Installation}
\subsection{Installing from GitHub}
The \themename theme uses Make as build system. Hence the installation is very
straight forward. Simply type
\begin{lstlisting}
$ make
$ make install
\end{lstlisting}
in the top directory and all the files will be created and installed on your
computer. The complete list of make rules is as follows:
Installing \themename{}, like any Beamer theme, involves four easy steps:
\begin{description}
\item[Download the source] with a |git clone| of the
\href{https://github.com/matze/mtheme}{\themename{} repository} or as a
\href{https://github.com/matze/mtheme/archive/master.zip}{zip archive}
of the latest development version.
\item[Compile the style files] by running |make sty| inside the downloaded
directory. (Or run \LaTeX{} directly on |source/metropolistheme.ins|.)
\item[Move the resulting |*.sty| files] to the folder containing your
presentation. To use \themename{} with many presentations, run
|make install| or move the |*.sty| files to a folder in your \TeX{} path
instead.
\item[Use the theme for your presentation] by declaring |\usetheme{m}| in
the preamble of your Beamer document.
\end{description}
\themename{} uses the Make build system to offer the following installation
options for advanced users:
\begin{description}
\item[all] \hfill \\
Build the theme, the manual and the demo presentation.
\item[install] \hfill \\
Install the theme into your local texmf folder.
\item[uninstall] \hfill \\
Remove the theme from your local texmf folder.
\item[sty] \hfill \\
Creat the package files.
\item[doc] \hfill \\
Build the documentation.
\item[demo] \hfill \\
Build the demo presentation.
\item[demo-min] \hfill \\
Build the minimal demo presentation.
\item[ctan] \hfill \\
Create a package for CTAN distribution.
\item[|make sty|] builds the theme style files.
\item[|make doc|] builds this documentation manual.
\item[|make demo|] builds a demo presentation to test the features of
\themename{}.
\item[|make all|] builds the theme, manual, and demo presentation.
\item[|make clean|] removes the files generated by |make all|.
\item[|make install|] installs the theme into your local texmf folder.
\item[|make uninstall|] removes the theme from your local texmf folder.
\item[|make ctan|] creates a package for CTAN distribution.
\end{description}
\subsection{A Minimal Example}
The following code shows a minimal example of a Beamer presentation using \themename.
\begin{lstlisting}
\documentclass{beamer}
\usetheme{m} % Use metropolis theme
\title{A minimal example}
\date{\today}
\author{Matthias Vogelgesang}
\institute{Centre for Modern Beamer Themes}
\begin{document}
\maketitle
\section{First Section}
\begin{frame}{First Frame}
Hello, world!
\end{frame}
\end{document}
\end{lstlisting}
\subsection{Dependencies}
\begin{itemize}
@ -172,29 +209,7 @@ $ pandoc -t beamer --latex-engine=xelatex -V theme:m -o output.pdf input.md
\end{lstlisting}
\subsection{A Minimal Example}
To get started with the theme is very simple. The following code shows a
minimal example of a Beamer presentation using \themename.
\begin{lstlisting}
\documentclass[10pt]{beamer}
\usetheme{m} % load mtheme
\title{A modern beamer theme} % define title
\date{\today} % define date
\author{Matthias Vogelgesang} % define author
\institute{Institute} % define institute
\begin{document}
\maketitle % create titlepage
\section{First Section} % create section
\begin{frame}{First Frame} % first frame
Lorem ipsum dolor sit amet, ...
\end{frame}
\begin{frame}{Second Frame} % second frame
Lorem ipsum dolor sit amet, ...
\end{frame}
\end{document}
\end{lstlisting}
\section{Customization}
\subsection{Package options}
@ -344,11 +359,6 @@ license it under the same CC-BY-SA license. This does not affect the
presentation that you create with the theme.
\section{Contributors}
For a full list of contributors please visit the
\href{https://github.com/matze/mtheme/graphs/contributors}{GitHub Repository}.
\section{Implementation}

BIN
doc/metropolistheme.pdf Normal file

Binary file not shown.

Binary file not shown.

View File

@ -13,8 +13,7 @@
%<driver> \ProvidesFile{beamercolorthememetropolis.dtx}
%<*package>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{beamercolorthememetropolis}
[2015/06/12 A Modern Beamer Color Theme]
\ProvidesPackage{beamercolorthememetropolis}[2015/06/12 Metropolis color theme]
%</package>
%<driver> \documentclass{ltxdoc}
%<driver> \usepackage{beamercolorthememetropolis}

View File

@ -13,8 +13,7 @@
%<driver> \ProvidesFile{beamerfontthememetropolis.dtx}
%<*package>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{beamerfontthememetropolis}
[2015/06/12 A Modern Beamer Font Theme]
\ProvidesPackage{beamerfontthememetropolis}[2015/06/12 Metropolis font theme]
%</package>
%<driver> \documentclass{ltxdoc}
%<driver> \usepackage{beamerfontthememetropolis}

View File

@ -13,8 +13,7 @@
%<driver> \ProvidesFile{beamerinnerthememetropolis.dtx}
%<*package>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{beamerinnerthememetropolis}
[2015/06/12 A Modern Beamer Theme]
\ProvidesPackage{beamerinnerthememetropolis}[2015/06/12 Metropolis inner theme]
%</package>
%<driver> \documentclass{ltxdoc}
%<driver> \usepackage{beamerinnerthememetropolis}

View File

@ -13,8 +13,7 @@
%<driver> \ProvidesFile{beamerouterthememetropolis.dtx}
%<*package>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{beamerouterthememetropolis}
[2015/06/12 A Modern Beamer Theme]
\ProvidesPackage{beamerouterthememetropolis}[2015/06/12 Metropolis outer theme]
%</package>
%<driver> \documentclass{ltxdoc}
%<driver> \usepackage{beamerouterthememetropolis}

View File

@ -13,8 +13,7 @@
%<driver> \ProvidesFile{beamerthemem.dtx}
%<*package>
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{beamerthemem}
[2015/06/12 A Modern Beamer Theme]
\ProvidesPackage{beamerthemem}[2015/06/12 Metropolis Beamer theme]
%</package>
%<driver> \documentclass{ltxdoc}
%<driver> \usepackage{beamerthemem}