-- mode: markdown; mode: visual-line; --
_____ _ _ ____
| ___|_ _| | | _____ _ __ | __ ) ___ __ _ _ __ ___ ___ _ __
| |_ / _` | | |/ / _ \| '__| | _ \ / _ \/ _` | '_ ` _ \ / _ \ '__|
| _| (_| | | < (_) | | | |_) | __/ (_| | | | | | | __/ |
|_| \__,_|_|_|\_\___/|_| |____/ \___|\__,_|_| |_| |_|\___|_|
_____ _
|_ _| |__ ___ _ __ ___ ___
| | | '_ \ / _ \ '_ ` _ \ / _ \
| | | | | | __/ | | | | | __/
|_| |_| |_|\___|_| |_| |_|\___|
Copyright (c) 2015-2024 Sebastien Varrette <[email protected]>
| Project Page | Sources | Issues |
This repository holds my personal LaTeX Beamer theme, provided in a working environment.
This theme is largely based on the progressbar beamer theme (by Sylvain Bouveret) with my own customization to fit my tastes. So feel free to send him a postal card (as he asks for ;) )
Progressbar Version: 0.42 September 2010.
This repository is hosted on Github. To clone it and setup it with, proceed as follows:
# Eventually to keep things organised...
mkdir -p ~/git/github.com/Falkor
cd ~/git/github.com/Falkor
# Clone and setup
git clone https://github.com/Falkor/beamerthemeFalkor.git
cd beamerthemefalkor
make setup
- Either copy
beamerthemeFalkor.sty
at the root of (each of) your LaTeX sources:wget https://raw.githubusercontent.com/Falkor/beamerthemeFalkor/master/beamerthemeFalkor.sty
- Or install it globally:
# Find the directory where your latex packages are installed. kpsewhich -var-value TEXMFHOME # Normally: ~/texmf # create the directory or a symplink toward the working copy of this reposirory in that placed mkdir -p $(kpsewhich -var-value TEXMFHOME)/tex/latex # ... assuming you are in the local directory where you cloned this repository ln -s $(pwd) $(kpsewhich -var-value TEXMFHOME)/tex/latex/beamertheme-Falkor # generate an index of that tree texhash $(kpsewhich -var-value TEXMFHOME)
- Or make it a git submodule of your repository hosting the beamer Latex sources (my prefered way):
# From the root repository hosting your LaTeX Beamer slides, assuming a **clean** (non-dirty) state: git submodule add https://github.com/Falkor/beamerthemeFalkor .submodules/beamerthemeFalkor git commit -a -s -m "Add Git submodule '.submodules/beamerthemeFalkor' from 'https://github.com/Falkor/beamerthemeFalkor'" # ... then in the slides sources, symlink beamerthemeFalkor.sty to the submodules directory. # Personnaly, this is how I like to setup it: cd slides/<year>/<topic>/src # I prefer to keep LaTeX sources separated into src/ # Create a symlink to the git root directory ln -s $(git rev-parse --show-cdup) .root # symlink beamerthemeFalkor.sty from there ln -s .root/.submodules/beamerthemeFalkor/beamerthemeFalkor.sty beamerthemeFalkor.sty git add .root beamerthemeFalkor.sty git commit -s -m "setup beamerthemeFalkor.sty from associated git submodule"
The later has the advantage to ensure all collaborators get the same version of the theme, howerver it also means that you have to provide a way for them (make setup
etc.) to initiate correctly the git submodules within their own repository...
Once installed, you can use this theme as follows (basically, you MUST configure the main image and the logo:
\documentclass[aspectratio=169]{beamer}
% customize the image using the image=<path> option - use relative path!
\usetheme[image=logo_github.png]{Falkor}
% Mandatory to **declare** a logo to be placed on the bottom right -- use again relative path to the image
\pgfdeclareimage[height=0.8cm]{logo}{logo_UL.pdf}
% Ex:
% \pgfdeclareimage[height=0.8cm]{logo}{logos/logo_RF.png}
You probably want to use my own LaTeX Makefile combined with my generic LaTeX style file as done in the advanced example
All customization / installation instructions are better described in the sample PDF produced using this theme:
- a Minimal example -- sources
- a more complete example with usage instructions -- sources
- you can (who said should?) at least try to combine it with markdown and pandoc.
- an example based on markdown is also provided -- sources
-
Install pandoc
-
Rely on my LaTeX Makefile (or define your own)
-
Rely on a main file in LaTeX
-
split markdown content in individual Markdown files
-
these file SHOULD HAVE the
.md
extension -
my
Makefile
compile all.md
files into.md.tex
LaTeX files using:pandoc –from markdown –to beamer –slide-level 3 -o <filename>.md.tex <filename>.md
-
-
Simply include the markdown files using
\input{<filename>.md}
- in practice,
<filename>.md.tex
is considered for inclusion since the.tex
extension is automatically appended.
- in practice,
You can see a concrete example in examples/markdown/
.
In particular, you might consider the markdown file used to produce the slides (see also the raw markdown version)
A set of simple tests based on Bats: "Bash Automated Testing System" are proposed on the tests/
directory, and served to validate that this theme permits a successful compilation of the sample slides proposed on the examples/
directory.
For more information, see tests/README.md.
You can run these tests by issuing:
make tests # OR make bats OR make test
If you wish to contribute directly to this repository and its content, you should be aware of the development workflow I follow for this repository
The Git branching model for this repository follows the guidelines of gitflow. In particular, the central repository holds two main branches with an infinite lifetime:
production
: the production-ready branchmaster
: the main branch where the latest developments interviene. This is the default branch you get when you clone the repository.
Thus you are more than encouraged to install the git-flow extensions following the installation procedures to take full advantage of the proposed operations. The associated bash completion might interest you also.
The operation consisting of releasing a new version of this repository is automated by a set of tasks within the root Makefile
.
In this context, a version number have the following format:
<major>.<minor>.<patch>[-b<build>]
where:
< major >
corresponds to the major version number< minor >
corresponds to the minor version number< patch >
corresponds to the patching version number- (eventually)
< build >
states the build number i.e. the total number of commits within themaster
branch.
Example: `1.0.0-b28`
The current version number is stored in the root file VERSION
. /!\ NEVER MAKE ANY MANUAL CHANGES TO THIS FILE
For more information on the version, run:
$> make versioninfo
If a new version number such be bumped, you simply have to run:
$> make start_bump_{major,minor,patch}
This will start the release process for you using git-flow
.
Once you have finished to commit your last changes, make the release effective by running:
$> make release
it will finish the release using git-flow
, create the appropriate tag in the production
branch and merge all things the way they should be.
This project is released under the terms of the CC by-nc-sa licence.
That's quite simple:
- Fork it
- Create your own feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Added some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request
- Sylvain Bouveret for the initial progressbar beamer theme
- Jakub Muszynski for the updates and correction he found when designing his own PhD. defense
- Xavier Besseron and Joseph Emeras for motivating me to investigate the Markdown path and raising (as always) good ideas.