Fixed #95: The default float placement of figures can be changed with the variable float-placement-figure.

This commit is contained in:
Wandmalfarbe 2019-05-03 23:05:20 +02:00
parent 8b22496ba8
commit 50a425addb
2 changed files with 42 additions and 31 deletions

View File

@ -21,18 +21,18 @@ A custom title page | A basic example page
- Unix, Linux, macOS: `$XDG_DATA_HOME/pandoc/templates` or `~/.pandoc/templates/`
- Windows XP: `C:\Documents And Settings\USERNAME\Application Data\pandoc\templates`
- Windows Vista or later: `C:\Users\USERNAME\AppData\Roaming\pandoc\templates`
If there are no folders called `templates` or `pandoc` you need to create them and put the template `eisvogel.latex` inside.
## Usage
1. Open the terminal and navigate to the folder where your markdown file is located.
2. Execute the following command
```bash
pandoc example.md -o example.pdf --from markdown --template eisvogel --listings
```
where `example.md` is the markdown file you want to convert to PDF.
In order to have nice headers and footers you need to supply metadata to your document. You can do that with a [YAML metadata block](http://pandoc.org/MANUAL.html#extension-yaml_metadata_block) at the top of your markdown document (see the [example markdown file](examples/basic-example/basic-example.md)). Your markdown document may look like the following:
@ -53,73 +53,83 @@ Here is the actual document text...
This template defines some new variables to control the appearance of the resulting PDF document. The existing template variables from pandoc are all supported and their documentation can be found in [the pandoc manual](https://pandoc.org/MANUAL.html#variables-for-latex).
- `titlepage` (defaults to `false`)
turns on the title page when `true`
- `titlepage-color`
the background color of the title page. The color value must be given as an HTML hex color like `D8DE2C` without the leading number sign (`#`). When specifying the color in YAML, it is advisable to enclose it in quotes like so `titlepage-color: "D8DE2C"` to avoid the truncation of the color (e.g. `000000` becoming `0`).
- `titlepage-text-color` (defaults to `5F5F5F`)
the text color of the title page
- `titlepage-rule-color` (defaults to `435488`)
the color of the rule on the top of the title page
- `titlepage-rule-height` (defaults to `4`)
the height of the rule on the top of the title page (in points)
- `caption-justification` (defaults to `raggedright`)
justification setting for captions (uses the `justification` parameter of the [caption](https://ctan.org/pkg/caption?lang=en) package)
- `toc-own-page` (defaults to `false`)
begin new page after table of contents, when `true`
- `listings-disable-line-numbers` (defaults to `false`)
disables line numbers for all listings
- `listings-no-page-break` (defaults to `false`)
avoid page break inside listings
- `disable-header-and-footer` (default to `false`)
disables the header and footer completely on all pages
- `header-left` (defaults to the title)
the text on the left side of the header
- `header-center`
the text in the center of the header
- `header-right` (defaults to the date)
the text on the right side of the header
- `footer-left` (defaults to the author)
the text on the left side of the footer
- `footer-center`
the text in the center of the footer
- `footer-right` (defaults to the page number)
the text on the right side of the footer
- `book` (defaults to `false`)
typeset as book
- `logo`
path to an image that will be displayed on the title page. The path is always relative to where pandoc is executed. The option `--resource-path` has no effect.
- `logo-width` (defaults to `100`)
the width of the logo (in points)
- `first-chapter` (defaults to `1`)
if typesetting a book with chapter numbers, specifies the number that will be assigned to the first chapter
- `float-placement-figure` (defaults to `H`)
Reset the default placement specifier for figure environments to the supplied value e.g. `htbp`. The available specifiers are listed below. The first four placement specifiers can be combined.
1. `h`: Place the float *here*, i.e., approximately at the same point it occurs in the source text.
2. `t`: Place the float at the *top* of the page.
3. `b`: Place the float at the *bottom* of the page.
4. `p`: Place the float on the next *page* that will contain only floats like figures and tables.
5. `H`: Place the float *HERE* (exactly where it occurs in the source text). The `H` specifier is provided by the [float package](https://ctan.org/pkg/float) and may not be used in conjunction with any other placement specifiers.
## Examples
### Numbered Sections
For PDFs with [numbered sections](http://pandoc.org/MANUAL.html#options-affecting-specific-writers) use the `--number-sections` or `-N` option.
```bash
pandoc example.md -o example.pdf --template eisvogel --number-sections
```
@ -127,14 +137,14 @@ pandoc example.md -o example.pdf --template eisvogel --number-sections
### Syntax Highlighting with Listings
You can get syntax highlighting of delimited code blocks by using the LaTeX package listings with the option `--listings`. This example will produce the same syntax highlighting as in the example PDF.
```bash
pandoc example.md -o example.pdf --template eisvogel --listings
```
### Syntax Highlighting Without Listings
The following examples show [syntax highlighting of delimited code blocks](http://pandoc.org/MANUAL.html#syntax-highlighting) without using listings. To see a list of all the supported highlight styles, type `pandoc --list-highlight-styles`.
```bash
pandoc example.md -o example.pdf --template eisvogel --highlight-style pygments
```
@ -154,7 +164,7 @@ pandoc example.md -o example.pdf --template eisvogel --highlight-style tango
### Standalone LaTeX Document
To produce a standalone LaTeX document for compiling with any LaTeX editor use `.tex` as an output file extension.
```bash
pandoc example.md -o example.tex --template eisvogel
```
@ -162,13 +172,13 @@ pandoc example.md -o example.tex --template eisvogel
### Changing the Document Language
The default language of this template is American English. The `lang` variable identifies the main language of the document, using a code according to [BCP 47](https://tools.ietf.org/html/bcp47) (e.g. `en` or `en-GB`). For an incomplete list of the supported language codes see [the documentation for the hyph-utf8 package (Section 2)](http://mirrors.ctan.org/language/hyph-utf8/doc/generic/hyph-utf8/hyph-utf8.pdf). The following example changes the language to British English:
```bash
pandoc example.md -o example.pdf --template eisvogel -V lang=en-GB
```
The following example changes the language to German:
```bash
pandoc example.md -o example.pdf --template eisvogel -V lang=de
```

View File

@ -374,9 +374,10 @@ $if(pagestyle)$
\pagestyle{$pagestyle$}
$endif$
% Make use of float-package and set default placement for figures to H
% Make use of float-package and set default placement for figures to H.
% The option H means 'PUT IT HERE' (as opposed to the standard h option which means 'You may put it here if you like').
\usepackage{float}
\floatplacement{figure}{H}
\floatplacement{figure}{$if(float-placement-figure)$$float-placement-figure$$else$H$endif$}
$for(header-includes)$
$header-includes$
@ -388,7 +389,7 @@ $if(lang)$
% See issue https://github.com/reutenauer/polyglossia/issues/127
\renewcommand*\familydefault{\sfdefault}
$endif$
% Load polyglossia as late as possible: uses bidi with RTL langages (e.g. Hebrew, Arabic)
% Load polyglossia as late as possible: uses bidi with RTL langages (e.g. Hebrew, Arabic)
\usepackage{polyglossia}
\setmainlanguage[$polyglossia-lang.options$]{$polyglossia-lang.name$}
$for(polyglossia-otherlangs)$