initiale Übernahme
This commit is contained in:
40
07_Zettlr/Pandoc/pandoc-templates-main/.github/workflows/generate.yml
vendored
Normal file
40
07_Zettlr/Pandoc/pandoc-templates-main/.github/workflows/generate.yml
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
name: Generate
|
||||
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- 'templates/**'
|
||||
workflow_dispatch: {} # Enable manual triggers
|
||||
workflow_call: {} # Enable other workflows to call this one
|
||||
|
||||
env:
|
||||
NODE_VERSION: '22'
|
||||
|
||||
jobs:
|
||||
generate:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout source
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
ref: ${{ github.ref_name }}
|
||||
- name: Setup NodeJS ${{ env.NODE_VERSION }}
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
cache: npm
|
||||
- name: Install dependencies
|
||||
run: npm install
|
||||
- name: Generate
|
||||
run: npm run generate
|
||||
- name: Commit
|
||||
run: |
|
||||
git config --local user.email "github-actions[bot]@users.noreply.github.com"
|
||||
git config --local user.name "github-actions[bot]"
|
||||
git add metadata.json
|
||||
git diff-index --quiet HEAD || git commit -m "chore: Regenerate metadata"
|
||||
- name: Push changes
|
||||
uses: ad-m/github-push-action@v0.6.0
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
branch: ${{ github.ref_name }}
|
||||
29
07_Zettlr/Pandoc/pandoc-templates-main/.github/workflows/validate.yml
vendored
Normal file
29
07_Zettlr/Pandoc/pandoc-templates-main/.github/workflows/validate.yml
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
name: Validate
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- 'templates/**'
|
||||
workflow_dispatch: {} # Enable manual triggers
|
||||
workflow_call: {} # Enable other workflows to call this one
|
||||
|
||||
env:
|
||||
NODE_VERSION: '22'
|
||||
|
||||
jobs:
|
||||
validate:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout source
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
ref: ${{ github.ref_name }}
|
||||
- name: Setup NodeJS ${{ env.NODE_VERSION }}
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: ${{ env.NODE_VERSION }}
|
||||
cache: npm
|
||||
- name: Install dependencies
|
||||
run: npm install
|
||||
- name: Validate
|
||||
run: npm run validate
|
||||
3
07_Zettlr/Pandoc/pandoc-templates-main/.gitignore
vendored
Normal file
3
07_Zettlr/Pandoc/pandoc-templates-main/.gitignore
vendored
Normal file
@@ -0,0 +1,3 @@
|
||||
node_modules
|
||||
.DS_STORE
|
||||
.yarn
|
||||
5
07_Zettlr/Pandoc/pandoc-templates-main/.vscode/settings.json
vendored
Normal file
5
07_Zettlr/Pandoc/pandoc-templates-main/.vscode/settings.json
vendored
Normal file
@@ -0,0 +1,5 @@
|
||||
{
|
||||
"yaml.schemas": {
|
||||
"./template.schema.json": "index.yml"
|
||||
}
|
||||
}
|
||||
1
07_Zettlr/Pandoc/pandoc-templates-main/.yarnrc.yml
Normal file
1
07_Zettlr/Pandoc/pandoc-templates-main/.yarnrc.yml
Normal file
@@ -0,0 +1 @@
|
||||
nodeLinker: node-modules
|
||||
83
07_Zettlr/Pandoc/pandoc-templates-main/CONTRIBUTING.md
Normal file
83
07_Zettlr/Pandoc/pandoc-templates-main/CONTRIBUTING.md
Normal file
@@ -0,0 +1,83 @@
|
||||
# Contributing
|
||||
|
||||
Thank you for contributing to the Pandoc Template Repository! In this document, we describe everything you need to know to successfully open your first PR. We will discuss some general guidelines, and describe the steps required to either modify an existing template, or adding another template.
|
||||
|
||||
> [!NOTE]
|
||||
> The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC 2119](https://datatracker.ietf.org/doc/html/rfc2119).
|
||||
|
||||
> [!NOTE]
|
||||
> This document defines the terms "layout," "template," and "reference doc" as such: A "layout" for the purposes of this document is, e.g., a `.tex` or `.html`-file that can be filled with content to produce a specific layout of text, but which is not compatible with Pandoc's template syntax. A `template` is this layout, but adapted so that Pandoc can use it as a template. A "reference doc" is a variation of the "template" for use with output formats of Pandoc that support reference docs instead of templates. Naturally, if you create a template for the intent purpose of using it with Pandoc, the "layout" and "template" are one and the same file.
|
||||
|
||||
## General Guidelines
|
||||
|
||||
The Pandoc Template Repository is intended for community-created and journal- or conference-provided templates that can be used to format Markdown documents (or anything that Pandoc can ingest) in a specific style. That being said, each template needs to follow some criteria:
|
||||
|
||||
* It MUST be suitable for a somewhat larger audience. "Somewhat larger audience" SHOULD reference an academic field, a community of people, or any social context that is not defined by kinship. Whether your template fulfills this will be discussed on a case-by-case basis. If you design your own templates, and you believe other people may find them aesthetic, it is suited for this repository. It does not have to be a template for a conference or journal.
|
||||
* It SHOULD make liberal use of the Pandoc templating system to allow for more than one specific use-case, and ensure that end users can adapt the template to their own documents.
|
||||
* It MUST be usable as-is, that is, anything dynamic in the template is REQUIRED to be customizable via YAML frontmatter variables, and MUST NOT require the user to modify the template itself.
|
||||
* It SHOULD NOT require an internet connection to work, that is, all resources the template needs (except, e.g., packages from CTAN) SHOULD be present in the folder. Exceptions are discussed on a case-by-case basis (such as JavaScript libraries for HTML templates).
|
||||
* You MUST have the right to provide the resources for the template in this repository. If you are not certain (e.g., because you want to adapt a template which has no clearly visible license), it is your responsibility to research this fact, and reflect it appropriately.
|
||||
* The template SHOULD NOT be time-limited. However, some conferences have new templates each year. In these cases, the template is still suitable for this repository, since the conference itself is not strictly time-limited. Ideally, you SHOULD update an existing template, and denote the corresponding year for which the template is valid in description and/or name, instead of creating new templates each year.
|
||||
* The language used for the metadata is English. The template can be in a different language (e.g., Portuguese if it is aimed only at, say, Brazilian scholars), and the description MUST indicate this fact, but the metadata itself MUST be in English.
|
||||
* The template MUST NOT contain any profane language, or language not suitable for an audience below the age of 18. It MUST NOT be in any way legally objectionable in any country globally. You MUST follow common standards for what you can, and cannot write on the internet.
|
||||
|
||||
These guidelines are subject to change as we encounter more questions and discussions about whether or not to include a particular template. If you cannot fulfill one or more of these guidelines, you can make a case for inclusion of your template anyways, which will be heard.
|
||||
|
||||
### Creating New Templates
|
||||
|
||||
Before creating a new template, you MUST make sure that the template does not yet exist in the repository. If the layout has been transformed into a template by someone else already, you MUST modify the template, instead of creating a new one.
|
||||
|
||||
**Folder Name**: To create a new template, you MUST create a new folder in this repository. The folder name MUST reflect the template name and SHOULD be an abbreviation. It MUST be an abbreviation if the name is very long. It is RECOMMENDED to use a template provider's "official" abbreviation where available. (Example: The journal "Network Science" abbreviates itself "nws".) The folder name MUST consist of digits, English alphabet letters, and hyphens (a-z0-9-), and it MUST NOT contain any spaces. It MUST be lowercase. It SHOULD be less than 20 characters in length.
|
||||
|
||||
### Modifying Existing Templates
|
||||
|
||||
To modify an existing template, first make sure that you are familiar with its workings. Ideally, you should be using the template yourself, since most changes SHOULD be rather bug fixes than actual visual changes.
|
||||
|
||||
Then, implement your changes to the template files. Afterwards you MUST follow these steps:
|
||||
|
||||
1. Add your name to the `authors.contributors` key in the `index.yml` file, if you aren't already an author in there. Create the key if necessary.
|
||||
2. Update the `updated` timestamp in the `index.yml` file.
|
||||
3. If necessary/applicable, update `description` and `instructions` in the `index.yml` file.
|
||||
4. If your change introduced a visual change, we RECOMMEND you update the `preview.png` file.
|
||||
5. You MUST increment the `version` field in `index.yml` by one.
|
||||
6. We RECOMMEND you add at least one new entry to the `changelog` key in the `index.yml` file. Create the key if necessary. You MUST include one individual entry for every field you changed in the `defaults.yml` file.
|
||||
|
||||
## Guidelines for Template Files
|
||||
|
||||
### The `index.yml` file
|
||||
|
||||
Fill this file according to the technical specification in the README file.
|
||||
|
||||
The `name` property MUST contain the official name of the layout (e.g., the journal name for a template using the journal's official layout). It MUST NOT be a duplicate of an existing name in this repository.
|
||||
|
||||
The `description` MUST be precise in explaining to users what they can and cannot do with this template. You MUST use full sentences. Do not use bullet points. However, keep the description as short and concise as possible.
|
||||
|
||||
The optional `instructions` property MAY be used to indicate to users any additional steps they need to follow before they can use the template. We RECOMMEND to enumerate the specific LaTeX packages they will need, and indicate any other additional software they may need to install on their computers in this property.
|
||||
|
||||
The `authors` MUST correctly reflect the authorship of layout and template. If you found a template online, you MUST accredit the original author. If you yourself designed the template from scratch, "original" and "templater" are the same person.
|
||||
|
||||
The `copyright` MUST under all circumstances be precise. If you cannot find a correct copyright for the template, you SHALL NOT propose its inclusion in this repository.
|
||||
|
||||
The `changelog` key MUST implement the following guidelines. It MUST be a list of changes implemented since version 1. It MUST contain one entry each per version. More specifically, for every change to the accompanying defaults file, it MUST indicate what you changed, and how. For example, if you changed the `reader` property of the defaults file from `markdown` to `markdown+mark`, you SHOULD write a changelog entry like the following: "Changed the `reader` property in the defaults file from `markdown` to `markdown+mark`." A changelog entry MUST end with a period (`.`). We RECOMMEND you create multiple changelog entries if you did multiple changes, so that the individual bullet points are shorter.
|
||||
|
||||
### The `preview.png` file
|
||||
|
||||
The `preview.png` file should serve as a quick visual indicator for how the template looks once you export a file with it. For conference or journal templates, you may be able to provide their logo instead. Make sure the copyright allows this.
|
||||
|
||||
The image MUST be in landscape orientation and be exactly 600x480px in resolution. It MUST be below 1MB in file size. While especially PDF templates usually result in portrait orientation pages, landscape is more common on the internet, and as such we default to landscape images. You MAY use this to your advantage to include multiple pages in the preview image.
|
||||
|
||||
The image MUST NOT contain personal or private information, or reveal any specific information that has nothing to do with the template itself. It MAY contain actual published text, such as a paper.
|
||||
|
||||
### The `defaults.yml` file
|
||||
|
||||
The `defaults.yml` file is a Pandoc defaults file that contains instructions for Pandoc that allow it to render your template appropriately. It SHOULD be crafted in such a way that the user does not have to change it in order to properly export files.
|
||||
|
||||
The file MUST feature a `reader` and `writer` property which can be parsed to indicate to the user how the template is intended to be used. The `reader` SHOULD be `markdown` and MAY include any Pandoc extensions. You can use a different reader, though, where applicable.
|
||||
|
||||
The file MUST NOT contain any input or output file specification. This MUST be provided by the user.
|
||||
|
||||
The file MUST contain the `template` directive relative to the template file. That is, usually, it should be `template: template.tex` (for a LaTeX template).
|
||||
|
||||
The file SHOULD NOT contain more than the absolute minimum of other fields as needed for proper output.
|
||||
|
||||
All changes made to this file after the fact MUST BE documented in the `changelog` field of the `index.yml` file.
|
||||
150
07_Zettlr/Pandoc/pandoc-templates-main/README.md
Normal file
150
07_Zettlr/Pandoc/pandoc-templates-main/README.md
Normal file
@@ -0,0 +1,150 @@
|
||||
# Pandoc Template Repository
|
||||
|
||||
> A repository of Pandoc-compatible templates, ready to go.
|
||||
|
||||
Welcome to Zettlr's Pandoc Template Repository. This repository hosts a variety of Pandoc-compatible templates that you can use to transform your Markdown files ready for various conferences, journals, or just for your own pleasure.
|
||||
|
||||
This repository aims to grow over time based on user-contributions. Each folder contains all necessary files for one template, including a metadata file with some information.
|
||||
|
||||
Each template folder contains at least four required files: A `preview.png` to see what the template looks like in action, an `index.yml` that describes the template, a `defaults.yml` that defines how Pandoc should export files using the template, and a template file itself, which varies depending on the target format (e.g., HTML, PDF, or DOCX).
|
||||
|
||||
## Usage
|
||||
|
||||
To use these templates, you have two options. The first is to use [Zettlr](https://www.zettlr.com/), which parses the metadata file from this repository automatically, and allows you to install these templates with a beautiful, graphical user interface.
|
||||
|
||||
You can also browse these templates from the Zettlr template browser. (TODO)
|
||||
|
||||
However, in line with our approach to keep everything fully open, we made sure that these templates work with Pandoc as-is, which means that you do not have to use Zettlr or any specific app to download and use these templates. You can download and use individual templates yourself, using Pandoc directly, or any other app that uses Pandoc under the hood, such as RMarkdown or Quarto. However, please note that, depending on your exact setup, some changes may be required.
|
||||
|
||||
To use the templates "bare metal," you can try the following. First, download the entire template folder which you want to use (e.g., `cup-journal`) to your computer. Then, with a Markdown document ready at hand, you can run the following code:
|
||||
|
||||
```bash
|
||||
pandoc --defaults /path/to/the/template/defaults.yml -o output.ext markdown-file.md
|
||||
```
|
||||
|
||||
## Contribute
|
||||
|
||||
This repository depends on user contributions, which are described in our [contribution guide](./CONTRIBUTING.md). Please refer to the section on repository structure below to learn how to add or modify templates from a technical perspective. To add a contribution, please follow these steps:
|
||||
|
||||
1. Clone this repository locally: `git clone https://github.com/Zettlr/pandoc-templates`
|
||||
2. Implement your changes or add your template
|
||||
3. Test your changes (i.e., run an export and verify that it works)
|
||||
4. Create or adapt the `index.yml` file
|
||||
5. Commit your changes
|
||||
6. Open a Pull Request
|
||||
|
||||
Once you have opened a pull request, it will be reviewed by trusted contributors, who may instruct you to implement certain changes. Once your PR passes, it will be merged.
|
||||
|
||||
> [!NOTE]
|
||||
> Before starting to add new templates, please review our [contribution guide](./CONTRIBUTING.md). Contributions that do not follow this guide will be rejected without discussion. This pertains particularly to copyrighted content.
|
||||
|
||||
## Repository Structure
|
||||
|
||||
This section introduces the repository structure. Whenever you add or remove files, or modify a `index.yml` file, ensure that the structure remains valid. Several automated workflows continuously monitor all PRs and verify that none harms the consistency of the file structure.
|
||||
|
||||
### File: `metadata.json`
|
||||
|
||||
The metadata file serves as a machine-maintained and machine-readable entry point into the repository. Do not modify or touch this file under any circumstances. Zettlr (and, potentially other apps who digest this file) require that the file retains its structure at all times. You may inspect the file. It consists of a large array with one metadata chunk for each template folder. Essentially, each entry corresponds to the same format as the `index.yml` file, with a few changes:
|
||||
|
||||
* Each entry has an `id` property equal to its folder name.
|
||||
* The preview image will be an absolute URL to the image on the repository.
|
||||
* The object contains `reader` and `writer` properties, indicating from which format Pandoc can convert it into which other format.
|
||||
|
||||
### Individual Folder Structure / API Schema
|
||||
|
||||
Each individual folder must contain four files at minimum:
|
||||
|
||||
* A `index.yml` file, which serves as the entry point for an individual template, and allows apps to digest this repository.
|
||||
* A `preview.png` file, which is a 600x480px preview image for this template.
|
||||
* The `template.xyz` file (where `xyz` is the proper filename extension, such as `.tex` or `.htm`). Note that reference docs (as used by Pandoc) are also called "template" for consistency reasons.
|
||||
* A `defaults.yml` file, which contains directives for Pandoc to export a file using the template successfully.
|
||||
|
||||
All other files in the folder are deemed required files for the template. You can add as many or few that you want, and in principle there are no strict naming restrictions (aside that they should not contain spaces, and only stick to the 26 English alphabet characters, and digits).
|
||||
|
||||
> [!TIP]
|
||||
> Refer to the [CONTRIBUTING](CONTRIBUTING.md) file to learn how to create your own template.
|
||||
|
||||
### `index.yml`
|
||||
|
||||
Each template metadata file requires a set of fields. Below is one example of such a index.yml file:
|
||||
|
||||
```yml
|
||||
name: "Network Science Research Article Submission"
|
||||
version: 1
|
||||
updated: "2025-05-03T20:40:00+02:00"
|
||||
description: |
|
||||
Use this template to export your submission to the journal Network Science
|
||||
using the official template from Cambridge University Press.
|
||||
template: template.tex
|
||||
preview: preview.png
|
||||
authors:
|
||||
original: "Cambridge University Press"
|
||||
templater: "Hendrik Erz <hendrik@zettlr.com>"
|
||||
copyright: "All rights reserved (Cambridge University Press)"
|
||||
```
|
||||
|
||||
> [!TIP]
|
||||
> Each metadata file will be checked against the YAML schema file [`template.schema.json`](./template.schema.json) by automated workflows. We recommend you use VS Code or instruct your editor of choice to validate the `index.yml` files against this schema to ensure your file is valid.
|
||||
|
||||
#### `name` (required)
|
||||
|
||||
This must be a descriptive name for the template.
|
||||
|
||||
#### `version` (required)
|
||||
|
||||
The version number. This is simply an integer. This field must be initiated with `1` for a new template. Each change – even if it is just a single character – must result in an increase of this number. "Change" is defined as a single PR, so you can make multiple changes to a template, and only increment the version once.
|
||||
|
||||
#### `description` (required)
|
||||
|
||||
Describe what this template is, what it aims for, or anything else that is important to know before choosing to use this template. Markdown is supported. Do not include a description of the variables supported by this template, or any setup instructions here. See below.
|
||||
|
||||
#### `instructions` (optional)
|
||||
|
||||
An optional field with specific instructions for using this template, e.g., for setup. Use this also to, e.g., describe to your users which frontmatter variables your template supports (or which it doesn't).
|
||||
|
||||
#### `changelog` (optional/required)
|
||||
|
||||
The `changelog` field is optional for version 1, but mandatory for every version afterwards. It is a list of entries, ordered chronologically descending. That is, if you add a changelog entry to an existing template, it must be the first entry. (This makes it easier for users to parse changelogs, as they can be sure the first entry is the most recent change.) You can use Markdown in it, but each item should be short and concise. Use this property in particular to denote changes to the defaults file.
|
||||
|
||||
#### `authors` (required)
|
||||
|
||||
Tell users who created the template originally, and who adapted the template to use with Pandoc (may contain the same information if you, e.g., created the template from scratch). If you are a contributor, add your name there, too.
|
||||
|
||||
* `authors.original`: The name of the original author of the layout
|
||||
* `authors.templater`: The name of the person who converted this layout into a Pandoc-compatible template
|
||||
* `authors.contributors`: A list of names of any additional contributors
|
||||
|
||||
The fields can be a simple string (implies that this is just the name). You can also be more explicit and use `name: The name`. You must use the property-format if you also want to add an `email` and a `website` (optional).
|
||||
|
||||
#### `copyright` (required)
|
||||
|
||||
Use this field to tell people the copyright of the template file(s). Ideally, should be a permissive license, but this can also be some form of "all rights reserved" (usually for templates from organizations, e.g., journals).
|
||||
|
||||
#### `license` (optional)
|
||||
|
||||
If the work has been licensed, include information about it here.
|
||||
|
||||
### `defaults.yml`
|
||||
|
||||
This is a Pandoc-compatible defaults file. It is required so that users can start using the template with zero setup (except downloading the template). Use this file to do three things:
|
||||
|
||||
1. Tell Pandoc where the main entry file for the template is (usually something like `template.tex`).
|
||||
2. Tell Pandoc the supported `reader` and `writer`, as well as potential extensions (e.g., `+mark`).
|
||||
3. Add any other information Pandoc needs to successfully produce output (e.g., `shift-heading-level-by: 1` if the template should only use headings level 2 and below).
|
||||
|
||||
A minimal example of a `defaults.yml` file for a LaTeX template would be:
|
||||
|
||||
```yml
|
||||
reader: markdown
|
||||
writer: pdf
|
||||
pdf-engine: xelatex
|
||||
template: template.tex
|
||||
```
|
||||
|
||||
### `preview.png`
|
||||
|
||||
The preview image must be in 600x480px, which is landscape. It should show how the template looks like when you export a file with it. Where the looks are not the crucial part — such as templates for conferences or journals —, you may also add the conference or journal logo, if copyright permits. We do not yet have hard requirements for this image, except that it must show the template's output, and not violate any common rules of civility. We take discretion in refusing images we deem inappropriate.
|
||||
|
||||
## License
|
||||
|
||||
This repository is free to use for anybody. It is not licensed, as each template requires its own license field. Refer to the individual folders to learn about the templates' licenses.
|
||||
61
07_Zettlr/Pandoc/pandoc-templates-main/metadata.json
Normal file
61
07_Zettlr/Pandoc/pandoc-templates-main/metadata.json
Normal file
@@ -0,0 +1,61 @@
|
||||
{
|
||||
"generatedOn": "2025-11-07T09:22:55.795Z",
|
||||
"templates": [
|
||||
{
|
||||
"id": "cup-journal",
|
||||
"name": "Cambridge University Press Journal Template",
|
||||
"version": 1,
|
||||
"description": "Use this template to export your submission to the journal Network Science\nusing the official template from Cambridge University Press.\n",
|
||||
"instructions": "This template requires the frontmatter variables `title`, `abstract`,\n`keywords`, and `author`. If any of these is not present, the PDF engine may\nthrow errors.\n\nThis template supports the frontmatter variable `cup-journal`, which must be\none of the supported journals of this template:\n\n* Annals of Actuarial Science: `aas``\n* British Journal of Political Science: `jps`\n* Network Science: `nws`\n* Political Analysis: `pla`\n* Political Science Research and Methods: `ram`\n* Evolutionary Human Sciences: `ehs`\n* Natural Language Processing: `nlp`\n\nFurther frontmatter variables supported by this template:\n\n* `title`: The article title\n* `author`: A list of authors, with sub-keys `name`, `affiliation`, and\n `email`. Property `email` is optional; each `author` that has `email` set is\n assumed to be a corresponding author.\n* `keywords`: A list of keywords\n* `abstract`: The article's abstract\n* `acknowledgements`: An acknowledgements section\n* `funding-statement`: A funding statement\n* `competing-interests`: A competing interests statement\n* `data-availability-statement`: A data availability statement\n* `ethical-standards`: A statement on ethical standards\n* `author-contributions`: An author contributions statement\n* `nocite-ids`: A list of works to be referenced in the bibliography that\n haven't been cited in the main body.\n",
|
||||
"authors": {
|
||||
"original": "Cambridge University Press",
|
||||
"templater": {
|
||||
"name": "Hendrik Erz",
|
||||
"email": "hendrik@zettlr.com",
|
||||
"website": "https://www.hendrik-erz.de/"
|
||||
}
|
||||
},
|
||||
"copyright": "Copyright (c) by Mats Dahlgren (1996-1998), Joseph Wright (2008-2018), Overleaf (2019), Donald Arsenau (1989-2009, cite.sty)",
|
||||
"license": "LaTeX Project Public License (LPPL) 1.3c or later",
|
||||
"reader": "markdown",
|
||||
"writer": "pdf",
|
||||
"preview": "https://raw.githubusercontent.com/Zettlr/pandoc-templates/refs/heads/main/templates/cup-journal/preview.png"
|
||||
},
|
||||
{
|
||||
"id": "ic2s2",
|
||||
"name": "IC2S2 Conference Abstract",
|
||||
"version": 1,
|
||||
"description": "This template allows you to format your extended conference abstracts for the\nInternational Conference of Computational Social Science (IC2S2). This\ntemplate is valid for IC2S2 2025 (Norrköping, Sweden).\n",
|
||||
"authors": {
|
||||
"original": {
|
||||
"name": "The International Society for Computational Social Science (ISCSS)",
|
||||
"website": "https://iscss.org/"
|
||||
},
|
||||
"templater": {
|
||||
"name": "Hendrik Erz",
|
||||
"email": "hendrik@zettlr.com",
|
||||
"website": "https://www.hendrik-erz.de/"
|
||||
}
|
||||
},
|
||||
"copyright": "ICSSI",
|
||||
"reader": "markdown",
|
||||
"writer": "pdf",
|
||||
"preview": "https://raw.githubusercontent.com/Zettlr/pandoc-templates/refs/heads/main/templates/ic2s2/preview.png"
|
||||
},
|
||||
{
|
||||
"id": "simple-application-cover-letter",
|
||||
"name": "Simple Application Cover Letter",
|
||||
"version": 1,
|
||||
"description": "A simple cover letter template for applications.\n",
|
||||
"instructions": "This template allows you to typeset cover letters for applications. It is\nintended to be run simply by writing the main body of the cover letter in a\nMarkdown file and provide some metadata, including addresses, as YAML\nfrontmatter variables. You have the following variables available:\n\n* `author`: An object with information about yourself. It must contain the\n following keys:\n * `firstname`: Your firstname, and potential middle names\n * `lastname`: Your last, or family name\n * `address`: This is a list of address lines. These appear on the top-right.\n * `email`: Your email address. Appears below the address.\n * `phone`: Your phone number. Appears below the address.\n* `subject`: This is the subject line of the cover letter. Appears between\n addressée and the main body of your letter.\n* `to_address`: This is a list of address lines to where you are addressing\n the letter.\n* `attachments`: If you have attachments to your application (such as a CV),\n and want to include them on your letter, list them here.\n* `attachments_title`: By default, the attachment section will be headed by\n \"Attachments\". Here you can customize this (e.g., by translating).\n\nNote that you also have some of the standard Pandoc variables such as\n`fontsize` available to use in your frontmatter, too.\n",
|
||||
"authors": {
|
||||
"original": "Unknown",
|
||||
"templater": "Hendrik Erz"
|
||||
},
|
||||
"copyright": "None",
|
||||
"reader": "markdown+mark",
|
||||
"writer": "pdf",
|
||||
"preview": "https://raw.githubusercontent.com/Zettlr/pandoc-templates/refs/heads/main/templates/simple-application-cover-letter/preview.png"
|
||||
}
|
||||
]
|
||||
}
|
||||
99
07_Zettlr/Pandoc/pandoc-templates-main/package-lock.json
generated
Normal file
99
07_Zettlr/Pandoc/pandoc-templates-main/package-lock.json
generated
Normal file
@@ -0,0 +1,99 @@
|
||||
{
|
||||
"name": "pandoc-templates",
|
||||
"version": "1.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "pandoc-templates",
|
||||
"version": "1.0.0",
|
||||
"dependencies": {
|
||||
"ajv": "^8.17.1",
|
||||
"ajv-formats": "^3.0.1",
|
||||
"yaml": "^2.7.1"
|
||||
}
|
||||
},
|
||||
"node_modules/ajv": {
|
||||
"version": "8.17.1",
|
||||
"resolved": "https://registry.npmjs.org/ajv/-/ajv-8.17.1.tgz",
|
||||
"integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"fast-deep-equal": "^3.1.3",
|
||||
"fast-uri": "^3.0.1",
|
||||
"json-schema-traverse": "^1.0.0",
|
||||
"require-from-string": "^2.0.2"
|
||||
},
|
||||
"funding": {
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/epoberezkin"
|
||||
}
|
||||
},
|
||||
"node_modules/ajv-formats": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz",
|
||||
"integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"ajv": "^8.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"ajv": "^8.0.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"ajv": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/fast-deep-equal": {
|
||||
"version": "3.1.3",
|
||||
"resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
|
||||
"integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/fast-uri": {
|
||||
"version": "3.0.6",
|
||||
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.0.6.tgz",
|
||||
"integrity": "sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/fastify"
|
||||
},
|
||||
{
|
||||
"type": "opencollective",
|
||||
"url": "https://opencollective.com/fastify"
|
||||
}
|
||||
],
|
||||
"license": "BSD-3-Clause"
|
||||
},
|
||||
"node_modules/json-schema-traverse": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
|
||||
"integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/require-from-string": {
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
|
||||
"integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/yaml": {
|
||||
"version": "2.7.1",
|
||||
"resolved": "https://registry.npmjs.org/yaml/-/yaml-2.7.1.tgz",
|
||||
"integrity": "sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==",
|
||||
"license": "ISC",
|
||||
"bin": {
|
||||
"yaml": "bin.mjs"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 14"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
24
07_Zettlr/Pandoc/pandoc-templates-main/package.json
Normal file
24
07_Zettlr/Pandoc/pandoc-templates-main/package.json
Normal file
@@ -0,0 +1,24 @@
|
||||
{
|
||||
"name": "pandoc-templates",
|
||||
"version": "1.0.0",
|
||||
"description": "A collection of ready-to-use, Pandoc-compatible templates",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"validate": "node ./scripts/validate-templates.js",
|
||||
"generate": "node ./scripts/generate-metadata.js",
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"type": "module",
|
||||
"keywords": [
|
||||
"pandoc",
|
||||
"template",
|
||||
"pdf",
|
||||
"html"
|
||||
],
|
||||
"author": "Hendrik Erz <hendrik@zettlr.com>",
|
||||
"dependencies": {
|
||||
"ajv": "^8.17.1",
|
||||
"ajv-formats": "^3.0.1",
|
||||
"yaml": "^2.7.1"
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
// This file takes all templates in the template folder, and (re)generates
|
||||
// the metadata.json file.
|
||||
import fs from 'fs'
|
||||
import path from 'path'
|
||||
import yaml from 'yaml'
|
||||
|
||||
const templates = fs.readdirSync('templates')
|
||||
.filter(name => {
|
||||
const stat = fs.statSync(`templates/${name}`)
|
||||
return stat.isDirectory()
|
||||
})
|
||||
|
||||
const metadata = {
|
||||
generatedOn: new Date().toISOString(),
|
||||
templates: []
|
||||
}
|
||||
|
||||
for (const template of templates) {
|
||||
console.log(`Reading template ${template}...`)
|
||||
let data, parsedData
|
||||
data = fs.readFileSync(`templates/${template}/index.yml`, 'utf-8')
|
||||
parsedData = yaml.parse(data)
|
||||
|
||||
const templateData = {
|
||||
id: template, // Folder name == ID
|
||||
...parsedData
|
||||
}
|
||||
|
||||
// Provide reader/writer properties
|
||||
data = fs.readFileSync(`templates/${template}/defaults.yml`, 'utf-8')
|
||||
parsedData = yaml.parse(data)
|
||||
templateData.reader = parsedData.reader
|
||||
templateData.writer = parsedData.writer
|
||||
|
||||
// Transform image to URL
|
||||
const basePath = `/Zettlr/pandoc-templates/refs/heads/main/templates/`
|
||||
const fullPath = path.join(basePath, template, 'preview.png')
|
||||
templateData.preview = 'https://raw.githubusercontent.com' + fullPath
|
||||
|
||||
metadata.templates.push(templateData)
|
||||
}
|
||||
|
||||
fs.writeFileSync('metadata.json', JSON.stringify(metadata, undefined, 2), 'utf-8')
|
||||
@@ -0,0 +1,74 @@
|
||||
// This file validates all templates in the template folder.
|
||||
import fs from 'fs'
|
||||
import Ajv from 'ajv'
|
||||
import addFormats from "ajv-formats"
|
||||
import yaml from 'yaml'
|
||||
|
||||
const REQUIRED_FILES = ['index.yml', 'defaults.yml', 'preview.png']
|
||||
|
||||
// Preflight: Load JSON schema
|
||||
const data = fs.readFileSync('template.schema.json', 'utf-8')
|
||||
const schemaJson = JSON.parse(data)
|
||||
|
||||
// Read in all templates
|
||||
const templates = fs.readdirSync('templates')
|
||||
.filter(name => {
|
||||
const stat = fs.statSync(`templates/${name}`)
|
||||
return stat.isDirectory()
|
||||
})
|
||||
|
||||
const errors = []
|
||||
|
||||
for (const template of templates) {
|
||||
let data, parsedData
|
||||
|
||||
console.log(`Checking ${template}...`)
|
||||
// Check for required files
|
||||
const contents = fs.readdirSync(`templates/${template}`)
|
||||
for (const file of REQUIRED_FILES) {
|
||||
if (!contents.includes(file)) {
|
||||
errors.push(new Error(`Template ${template}: Required file ${file} not found`))
|
||||
}
|
||||
}
|
||||
|
||||
if (!contents.includes('index.yml') || !contents.includes('defaults.yml')) {
|
||||
continue
|
||||
}
|
||||
|
||||
data = fs.readFileSync(`templates/${template}/index.yml`, 'utf-8')
|
||||
parsedData = yaml.parse(data)
|
||||
|
||||
// Validate index.yml
|
||||
const ajv = new Ajv()
|
||||
addFormats(ajv) // Required to parse `format`, such as `date-time`
|
||||
const validate = ajv.compile(schemaJson)
|
||||
const isValid = validate(parsedData)
|
||||
if (!isValid) {
|
||||
if (validate.errors) {
|
||||
for (const error of validate.errors) {
|
||||
errors.push(new Error(`Template ${template} [index.yml]: ${error.message}`))
|
||||
}
|
||||
} else {
|
||||
errors.push(new Error(`Template ${template} [index.yml]: Errors encountered while parsing index.yml`))
|
||||
}
|
||||
}
|
||||
|
||||
// Validate defaults.yml
|
||||
data = fs.readFileSync(`templates/${template}/defaults.yml`, 'utf-8')
|
||||
parsedData = yaml.parse(data)
|
||||
|
||||
if (parsedData.writer === undefined || parsedData.reader === undefined) {
|
||||
errors.push(new Error(`Template ${template} [defaults.yml]: Reader or writer property not present.`))
|
||||
}
|
||||
}
|
||||
|
||||
if (errors.length > 0) {
|
||||
console.error('=== VALIDATION FAILED ===\n')
|
||||
for (const error of errors) {
|
||||
console.error(error.message)
|
||||
}
|
||||
process.exit(1)
|
||||
} else {
|
||||
console.log('Validation successful.')
|
||||
process.exit(0)
|
||||
}
|
||||
138
07_Zettlr/Pandoc/pandoc-templates-main/template.schema.json
Normal file
138
07_Zettlr/Pandoc/pandoc-templates-main/template.schema.json
Normal file
@@ -0,0 +1,138 @@
|
||||
{
|
||||
"title": "Pandoc Templates index.yml Schema",
|
||||
"description": "A schema to validate template metadata files against.",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"description": "The full name of this template.",
|
||||
"type": "string"
|
||||
},
|
||||
"version": {
|
||||
"description": "The version number of this template. Must start at `1` and be incremented for each change.",
|
||||
"type": "number"
|
||||
},
|
||||
"changelog": {
|
||||
"description": "Describe changes to this template, one change per item",
|
||||
"type": "array",
|
||||
"items": { "type": "string" }
|
||||
},
|
||||
"description": {
|
||||
"description": "Describe the template. Markdown is supported. Be as extensive as necessary, but as concise as possible. Do not include setup instructions here (see property `instructions`).",
|
||||
"type": "string"
|
||||
},
|
||||
"instructions": {
|
||||
"description": "If the template requires some setup, explain this here. Also, describe any variables the template supports.",
|
||||
"type": "string"
|
||||
},
|
||||
"authors": {
|
||||
"type": "object",
|
||||
"description": "People or organizations who have contributed to this template.",
|
||||
"required": [
|
||||
"original",
|
||||
"templater"
|
||||
],
|
||||
"properties": {
|
||||
"original": {
|
||||
"description": "Original author of the template itself (not the adaptation to Pandoc). Can be the same as `templater`.",
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"email": {
|
||||
"type": "string",
|
||||
"format": "email"
|
||||
},
|
||||
"website": {
|
||||
"type": "string",
|
||||
"format": "uri"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"templater": {
|
||||
"description": "The person or institution who has adapted this template for usage with Pandoc (can be the same as `original`).",
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"email": {
|
||||
"type": "string",
|
||||
"format": "email"
|
||||
},
|
||||
"website": {
|
||||
"type": "string",
|
||||
"format": "uri"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name"
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
"contributors": {
|
||||
"description": "A list of contributors to this template, aside from `original` and `templater`.",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"anyOf": [
|
||||
{
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"email": {
|
||||
"type": "string",
|
||||
"format": "email"
|
||||
},
|
||||
"website": {
|
||||
"type": "string",
|
||||
"format": "uri"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"copyright": {
|
||||
"description": "Use this to describe the template's copyright(s).",
|
||||
"type": "string"
|
||||
},
|
||||
"license": {
|
||||
"description": "Is the template licensed? If so, include a canonical form of the license name.",
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"additionalProperties": false,
|
||||
"required": [
|
||||
"name",
|
||||
"version",
|
||||
"description",
|
||||
"authors",
|
||||
"copyright"
|
||||
]
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@@ -0,0 +1,5 @@
|
||||
# Defaults file for CUP Journal template
|
||||
reader: markdown
|
||||
writer: pdf
|
||||
pdf-engine: xelatex
|
||||
template: ./template.tex
|
||||
@@ -0,0 +1,45 @@
|
||||
name: "Cambridge University Press Journal Template"
|
||||
version: 1
|
||||
description: |
|
||||
Use this template to export your submission to the journal Network Science
|
||||
using the official template from Cambridge University Press.
|
||||
instructions: |
|
||||
This template requires the frontmatter variables `title`, `abstract`,
|
||||
`keywords`, and `author`. If any of these is not present, the PDF engine may
|
||||
throw errors.
|
||||
|
||||
This template supports the frontmatter variable `cup-journal`, which must be
|
||||
one of the supported journals of this template:
|
||||
|
||||
* Annals of Actuarial Science: `aas``
|
||||
* British Journal of Political Science: `jps`
|
||||
* Network Science: `nws`
|
||||
* Political Analysis: `pla`
|
||||
* Political Science Research and Methods: `ram`
|
||||
* Evolutionary Human Sciences: `ehs`
|
||||
* Natural Language Processing: `nlp`
|
||||
|
||||
Further frontmatter variables supported by this template:
|
||||
|
||||
* `title`: The article title
|
||||
* `author`: A list of authors, with sub-keys `name`, `affiliation`, and
|
||||
`email`. Property `email` is optional; each `author` that has `email` set is
|
||||
assumed to be a corresponding author.
|
||||
* `keywords`: A list of keywords
|
||||
* `abstract`: The article's abstract
|
||||
* `acknowledgements`: An acknowledgements section
|
||||
* `funding-statement`: A funding statement
|
||||
* `competing-interests`: A competing interests statement
|
||||
* `data-availability-statement`: A data availability statement
|
||||
* `ethical-standards`: A statement on ethical standards
|
||||
* `author-contributions`: An author contributions statement
|
||||
* `nocite-ids`: A list of works to be referenced in the bibliography that
|
||||
haven't been cited in the main body.
|
||||
authors:
|
||||
original: "Cambridge University Press"
|
||||
templater:
|
||||
name: "Hendrik Erz"
|
||||
email: "hendrik@zettlr.com"
|
||||
website: "https://www.hendrik-erz.de/"
|
||||
copyright: "Copyright (c) by Mats Dahlgren (1996-1998), Joseph Wright (2008-2018), Overleaf (2019), Donald Arsenau (1989-2009, cite.sty)"
|
||||
license: "LaTeX Project Public License (LPPL) 1.3c or later"
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 67 KiB |
@@ -0,0 +1,125 @@
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
% To select a journal, use its code for the
|
||||
% journal= option in the \documentclass command.
|
||||
% The journal codes for this template are:
|
||||
%
|
||||
% Annals of Actuarial Science: aas
|
||||
% British Journal of Political Science: jps
|
||||
% Network Science: nws
|
||||
% Political Analysis: pla
|
||||
% Political Science Research and Methods: ram
|
||||
% Evolutionary Human Sciences: ehs
|
||||
% Natural Language Processing: nlp
|
||||
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
||||
\documentclass[
|
||||
journal=$cup-journal$,
|
||||
manuscript=Research\ Article,
|
||||
year=,
|
||||
volume=,
|
||||
]{cup-journal}
|
||||
|
||||
\usepackage{amsmath}
|
||||
\usepackage[nopatch]{microtype}
|
||||
\usepackage{booktabs}
|
||||
|
||||
$fonts.latex()$
|
||||
$font-settings.latex()$
|
||||
$common.latex()$
|
||||
$for(header-includes)$
|
||||
$header-includes$
|
||||
$endfor$
|
||||
$after-header-includes.latex()$
|
||||
$hypersetup.latex()$
|
||||
|
||||
\title{$title$}
|
||||
|
||||
$if(author)$
|
||||
$for(author)$
|
||||
\author{$author.name$}
|
||||
\affiliation{$author.affiliation$}
|
||||
% Every author with an email set will be assumed corresponding author.
|
||||
$if(author.email)$
|
||||
\email[$author.name$]{$author.email$}
|
||||
$endif$
|
||||
$endfor$
|
||||
$endif$
|
||||
|
||||
\keywords{$for(keywords)$$keywords$$sep$, $endfor$}
|
||||
|
||||
\begin{document}
|
||||
|
||||
% DOC START
|
||||
|
||||
$if(abstract)$
|
||||
\begin{abstract}
|
||||
$abstract$
|
||||
\end{abstract}
|
||||
$endif$
|
||||
|
||||
$for(include-before)$
|
||||
$include-before$
|
||||
|
||||
$endfor$
|
||||
|
||||
$body$
|
||||
|
||||
$if(acknowledgements)$
|
||||
\paragraph{Acknowledgments}
|
||||
$acknowledgements$
|
||||
$endif$
|
||||
|
||||
$if(funding-statement)$
|
||||
\paragraph{Funding Statement}
|
||||
$funding-statement$
|
||||
$endif$
|
||||
|
||||
$if(competing-interests)$
|
||||
\paragraph{Competing Interests}
|
||||
$competing-interests$
|
||||
$endif$
|
||||
|
||||
$if(data-availability-statement)$
|
||||
\paragraph{Data Availability Statement}
|
||||
$data-availability-statement$
|
||||
$endif$
|
||||
|
||||
$if(ethical-standards)$
|
||||
\paragraph{Ethical Standards}
|
||||
$ethical-standards$
|
||||
$endif$
|
||||
|
||||
$if(author-contributions)$
|
||||
\paragraph{Author Contributions}
|
||||
$author-contributions$
|
||||
$endif$
|
||||
|
||||
%\endnote in some journals will behave like \footnote; and \printendnotes will not output anything.
|
||||
\printendnotes
|
||||
|
||||
$if(nocite-ids)$
|
||||
\nocite{$for(nocite-ids)$$it$$sep$, $endfor$}
|
||||
$endif$
|
||||
$if(natbib)$
|
||||
$if(bibliography)$
|
||||
$if(biblio-title)$
|
||||
$if(has-chapters)$
|
||||
\renewcommand\bibname{$biblio-title$}
|
||||
$else$
|
||||
\renewcommand\refname{$biblio-title$}
|
||||
$endif$
|
||||
$endif$
|
||||
\bibliography{$for(bibliography)$$bibliography$$sep$,$endfor$}
|
||||
|
||||
$endif$
|
||||
$endif$
|
||||
$if(biblatex)$
|
||||
\printbibliography$if(biblio-title)$[title=$biblio-title$]$endif$
|
||||
|
||||
$endif$
|
||||
|
||||
$for(include-after)$
|
||||
$include-after$
|
||||
|
||||
$endfor$
|
||||
|
||||
\end{document}
|
||||
@@ -0,0 +1,6 @@
|
||||
# Defaults file for IC2S2 template
|
||||
reader: markdown
|
||||
writer: pdf
|
||||
pdf-engine: xelatex
|
||||
template: ./template.tex
|
||||
shift-heading-level-by: 1 # Heading 1 -> Heading 2
|
||||
@@ -0,0 +1,15 @@
|
||||
name: "IC2S2 Conference Abstract"
|
||||
version: 1
|
||||
description: |
|
||||
This template allows you to format your extended conference abstracts for the
|
||||
International Conference of Computational Social Science (IC2S2). This
|
||||
template is valid for IC2S2 2025 (Norrköping, Sweden).
|
||||
authors:
|
||||
original:
|
||||
name: "The International Society for Computational Social Science (ISCSS)"
|
||||
website: "https://iscss.org/"
|
||||
templater:
|
||||
name: "Hendrik Erz"
|
||||
email: "hendrik@zettlr.com"
|
||||
website: "https://www.hendrik-erz.de/"
|
||||
copyright: "ICSSI"
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 28 KiB |
@@ -0,0 +1,83 @@
|
||||
\documentclass[a4paper,12pt]{article}
|
||||
|
||||
\usepackage[utf8]{inputenc}
|
||||
\usepackage[english]{babel}
|
||||
\usepackage{authblk}
|
||||
\usepackage{graphicx}
|
||||
\usepackage{mathptmx}
|
||||
\usepackage[singlespacing]{setspace}
|
||||
\usepackage[headheight=1in,margin=1in]{geometry}
|
||||
\usepackage{fancyhdr}
|
||||
|
||||
\renewcommand{\headrulewidth}{0pt}
|
||||
\pagestyle{fancy}
|
||||
\setcounter{secnumdepth}{-\maxdimen} % remove section numbering (taken from Pandoc default template)
|
||||
|
||||
\makeatletter
|
||||
\def\@maketitle{%
|
||||
\newpage
|
||||
|
||||
\begin{center}%
|
||||
\let \footnote \thanks
|
||||
{\LARGE \@title \par}%
|
||||
\end{center}%
|
||||
\par
|
||||
\vskip 0.1em}
|
||||
\makeatother
|
||||
|
||||
\lhead{}
|
||||
\chead{%
|
||||
$$11$$$$^{th}$$ International Conference on Computational Social Science IC$$^{2}$$S$$^{2}$$\\
|
||||
July 21-24, 2025, Norrköping, Sweden%
|
||||
}
|
||||
\rhead{}
|
||||
|
||||
\graphicspath{{images/}}
|
||||
|
||||
\title{$title$}
|
||||
|
||||
$if(date)$
|
||||
\date{$date$}
|
||||
$else$
|
||||
\date{\today}
|
||||
$endif$
|
||||
|
||||
\begin{document}
|
||||
|
||||
\maketitle
|
||||
\thispagestyle{fancy}
|
||||
|
||||
\begin{center}
|
||||
\textit{Keywords: $for(keywords)$$keywords$$sep$, $endfor$}
|
||||
\newline
|
||||
\end{center}
|
||||
|
||||
\section*{Extended Abstract}
|
||||
|
||||
$body$
|
||||
|
||||
$if(nocite-ids)$
|
||||
\nocite{$for(nocite-ids)$$it$$sep$, $endfor$}
|
||||
$endif$
|
||||
|
||||
\section*{References}
|
||||
|
||||
$if(natbib)$
|
||||
$if(bibliography)$
|
||||
$if(biblio-title)$
|
||||
$if(has-chapters)$
|
||||
\renewcommand\bibname{$biblio-title$}
|
||||
$else$
|
||||
\renewcommand\refname{$biblio-title$}
|
||||
$endif$
|
||||
$endif$
|
||||
\bibliography{$for(bibliography)$$bibliography$$sep$,$endfor$}
|
||||
|
||||
$endif$
|
||||
$endif$
|
||||
$if(biblatex)$
|
||||
\printbibliography
|
||||
|
||||
$endif$
|
||||
|
||||
\end{document}
|
||||
@@ -0,0 +1,191 @@
|
||||
$passoptions.latex()$
|
||||
\documentclass[
|
||||
$for(babel-otherlangs)$
|
||||
$babel-otherlangs$,
|
||||
$endfor$
|
||||
$if(babel-lang)$
|
||||
$babel-lang$,
|
||||
$endif$
|
||||
$if(fontsize)$
|
||||
$fontsize$,
|
||||
$endif$
|
||||
$if(papersize)$
|
||||
$papersize$paper,
|
||||
$else$
|
||||
a4paper,
|
||||
$endif$
|
||||
$for(classoption)$
|
||||
$classoption$$sep$,
|
||||
$endfor$
|
||||
]{article}
|
||||
|
||||
%%%%%%%
|
||||
|
||||
\usepackage{xcolor}
|
||||
\usepackage{amsmath,amssymb}
|
||||
$if(cancel)$
|
||||
\usepackage{cancel}
|
||||
$endif$
|
||||
$--
|
||||
$-- section numbering
|
||||
$--
|
||||
$if(numbersections)$
|
||||
\setcounter{secnumdepth}{$if(secnumdepth)$$secnumdepth$$else$5$endif$}
|
||||
$else$
|
||||
\setcounter{secnumdepth}{-\maxdimen} % remove section numbering
|
||||
$endif$
|
||||
|
||||
$fonts.latex()$
|
||||
$font-settings.latex()$
|
||||
$common.latex()$
|
||||
$for(header-includes)$
|
||||
$header-includes$
|
||||
$endfor$
|
||||
$after-header-includes.latex()$
|
||||
$hypersetup.latex()$
|
||||
|
||||
$if(pdf-trailer-id)$
|
||||
|
||||
\ifXeTeX
|
||||
\special{pdf:trailerid [ $pdf-trailer-id$ ]}
|
||||
\fi
|
||||
\ifPDFTeX
|
||||
\pdftrailerid{}
|
||||
\pdftrailer{/ID [ $pdf-trailer-id$ ]}
|
||||
\fi
|
||||
\ifLuaTeX
|
||||
\pdfvariable trailerid {[ $pdf-trailer-id$ ]}
|
||||
\fi
|
||||
$endif$
|
||||
|
||||
%%%%%%%
|
||||
|
||||
\usepackage[$if(babel-lang)$$babel-lang$$else$english$endif$]{babel}
|
||||
\usepackage[utf8x]{inputenc}
|
||||
\usepackage[T1]{fontenc}
|
||||
\usepackage{lmodern}
|
||||
\usepackage{marvosym}
|
||||
\usepackage[dvips]{graphicx}
|
||||
|
||||
\pagestyle{empty}
|
||||
|
||||
\def\textblockwidth{35mm}
|
||||
$if(attachments)$
|
||||
\def\marginaliasize{50mm}
|
||||
$else$
|
||||
\def\marginaliasize{20mm}
|
||||
$endif$
|
||||
|
||||
\usepackage[
|
||||
scale=0.775,
|
||||
top=20mm,
|
||||
bottom=20mm,
|
||||
left=\marginaliasize, % To place attachment list to the side
|
||||
right=20mm
|
||||
]{geometry}
|
||||
\setlength{\parindent}{0pt}
|
||||
\addtolength{\parskip}{6pt}
|
||||
|
||||
\renewcommand{\ttdefault}{pcr}
|
||||
\usepackage{url}
|
||||
\urlstyle{tt}
|
||||
|
||||
\usepackage{hyperref}
|
||||
\hypersetup{
|
||||
pdfauthor = $author.firstname$ $author.lastname$,%
|
||||
pdftitle = Application $author.firstname$ $author.lastname$,%
|
||||
pdfsubject = Application,%
|
||||
pdfcreator = \LaTeX,%
|
||||
pdfproducer = \LaTeX
|
||||
}
|
||||
|
||||
\definecolor{color1}{RGB}{85,85,125}
|
||||
\definecolor{color2}{RGB}{57,74,138}
|
||||
\definecolor{attachments}{RGB}{128, 128, 128}
|
||||
\hypersetup{pdfborder=0 0 0}
|
||||
\usepackage{pdfpages}
|
||||
|
||||
\usepackage{ragged2e} % For enabling hyphenation on demand (RaggedRight instead of raggedright)
|
||||
|
||||
% Additional stuff for the CV attachments
|
||||
\usepackage[overlay,absolute]{textpos}
|
||||
\usepackage{enumitem} % For very tight lists
|
||||
|
||||
\begin{document}
|
||||
|
||||
\sffamily % for use with a résumé using sans serif fonts;
|
||||
%\rmfamily % for use with a résumé using serif fonts;
|
||||
|
||||
$for(include-before)$
|
||||
$include-before$
|
||||
|
||||
$endfor$
|
||||
|
||||
$if(linestretch)$
|
||||
\setstretch{$linestretch$}
|
||||
$endif$
|
||||
|
||||
\hfill%
|
||||
|
||||
\begin{minipage}[t]{1\textwidth}
|
||||
\begin{FlushRight}
|
||||
{\bfseries\color{color1} $author.firstname$ $author.lastname$}\\[.35ex]
|
||||
\small%
|
||||
$for(author.address)$
|
||||
$it$ \\
|
||||
$endfor$ [.35ex]
|
||||
\Mobilefone~$author.phone$\\
|
||||
\Letter~\href{mailto:$author.email$}{$author.email$}
|
||||
\end{FlushRight}
|
||||
\end{minipage}
|
||||
|
||||
%
|
||||
{\color{color1}\rule{\textwidth}{.25ex}}
|
||||
%
|
||||
\vspace{.25ex}
|
||||
|
||||
\begin{minipage}[t]{1\textwidth}
|
||||
\begin{FlushLeft}
|
||||
$for(to_address)$
|
||||
$to_address$ \\
|
||||
$endfor$
|
||||
\end{FlushLeft}
|
||||
\end{minipage}
|
||||
|
||||
\vspace{-2em}
|
||||
\begin{minipage}[t]{1\textwidth}
|
||||
\begin{FlushRight}
|
||||
$if(date)$
|
||||
$date$
|
||||
$else$
|
||||
\today
|
||||
$endif$
|
||||
\end{FlushRight}
|
||||
\end{minipage}
|
||||
|
||||
\vspace{1em}
|
||||
{\bfseries \color{color2}$subject$}
|
||||
\vspace{1em}
|
||||
|
||||
$body$
|
||||
|
||||
$if(attachments)$
|
||||
\textblockorigin{0mm}{0mm}
|
||||
\begin{textblock*}{30mm}[0,0](15mm,20mm) % Place on top
|
||||
\begin{minipage}[t]{30mm}
|
||||
\raggedright
|
||||
\color{attachments}
|
||||
\fontsize{8}{8}\selectfont
|
||||
%\tiny
|
||||
{\bfseries $if(attachments_title)$$attachments_title$$else$Attachments$endif$}\\[5mm]
|
||||
\begin{itemize}[leftmargin=0mm]
|
||||
\setlength\itemsep{2pt}
|
||||
$for(attachments)$
|
||||
\item[--] $attachments$
|
||||
$endfor$
|
||||
\end{itemize}
|
||||
\end{minipage}
|
||||
\end{textblock*}
|
||||
$endif$
|
||||
|
||||
\end{document}
|
||||
@@ -0,0 +1,33 @@
|
||||
# ZETTLR DEFAULTS FILE
|
||||
# ====================
|
||||
# Conversion: Markdown --> PDF (requires TeX suite to be installed)
|
||||
# More info: https://pandoc.org/MANUAL.html
|
||||
reader: markdown+mark
|
||||
writer: pdf
|
||||
self-contained: true
|
||||
file-scope: true
|
||||
template: '/Users/hendrik/Nextcloud/Templates/application_cover_letter.tex'
|
||||
variables:
|
||||
# Sets the size of the document's pages.
|
||||
papersize: a4 # Possible values: a0-a6, b0-b6, c0-c6,b0j, letter, executive, legal
|
||||
# Further variables are documented here: https://pandoc.org/MANUAL.html#variables-for-latex
|
||||
metadata:
|
||||
reference-section-title: References
|
||||
top-level-division: default
|
||||
pdf-engine: xelatex # Change this if you want to use a different engine, e.g. pdflatex
|
||||
dpi: 72
|
||||
toc: false # Include a table of contents?
|
||||
toc-depth: 2 # 2 means to only include headings level 1 and 2 in the ToC
|
||||
number-sections: false
|
||||
section-divs: true
|
||||
identifier-prefix: ''
|
||||
title-prefix: ''
|
||||
eol: lf
|
||||
strip-comments: false
|
||||
indented-code-classes: []
|
||||
ascii: false
|
||||
default-image-extension: .jpg
|
||||
highlight-style: pygments
|
||||
tab-stop: 4
|
||||
preserve-tabs: false
|
||||
fail-if-warnings: false
|
||||
@@ -0,0 +1,32 @@
|
||||
name: Simple Application Cover Letter
|
||||
version: 1
|
||||
description: |
|
||||
A simple cover letter template for applications.
|
||||
instructions: |
|
||||
This template allows you to typeset cover letters for applications. It is
|
||||
intended to be run simply by writing the main body of the cover letter in a
|
||||
Markdown file and provide some metadata, including addresses, as YAML
|
||||
frontmatter variables. You have the following variables available:
|
||||
|
||||
* `author`: An object with information about yourself. It must contain the
|
||||
following keys:
|
||||
* `firstname`: Your firstname, and potential middle names
|
||||
* `lastname`: Your last, or family name
|
||||
* `address`: This is a list of address lines. These appear on the top-right.
|
||||
* `email`: Your email address. Appears below the address.
|
||||
* `phone`: Your phone number. Appears below the address.
|
||||
* `subject`: This is the subject line of the cover letter. Appears between
|
||||
addressée and the main body of your letter.
|
||||
* `to_address`: This is a list of address lines to where you are addressing
|
||||
the letter.
|
||||
* `attachments`: If you have attachments to your application (such as a CV),
|
||||
and want to include them on your letter, list them here.
|
||||
* `attachments_title`: By default, the attachment section will be headed by
|
||||
"Attachments". Here you can customize this (e.g., by translating).
|
||||
|
||||
Note that you also have some of the standard Pandoc variables such as
|
||||
`fontsize` available to use in your frontmatter, too.
|
||||
authors:
|
||||
original: Unknown
|
||||
templater: Hendrik Erz
|
||||
copyright: None
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 70 KiB |
79
07_Zettlr/Pandoc/pandoc-templates-main/yarn.lock
Normal file
79
07_Zettlr/Pandoc/pandoc-templates-main/yarn.lock
Normal file
@@ -0,0 +1,79 @@
|
||||
# This file is generated by running "yarn install" inside your project.
|
||||
# Manual changes might be lost - proceed with caution!
|
||||
|
||||
__metadata:
|
||||
version: 8
|
||||
cacheKey: 10c0
|
||||
|
||||
"ajv-formats@npm:^3.0.1":
|
||||
version: 3.0.1
|
||||
resolution: "ajv-formats@npm:3.0.1"
|
||||
dependencies:
|
||||
ajv: "npm:^8.0.0"
|
||||
peerDependencies:
|
||||
ajv: ^8.0.0
|
||||
peerDependenciesMeta:
|
||||
ajv:
|
||||
optional: true
|
||||
checksum: 10c0/168d6bca1ea9f163b41c8147bae537e67bd963357a5488a1eaf3abe8baa8eec806d4e45f15b10767e6020679315c7e1e5e6803088dfb84efa2b4e9353b83dd0a
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"ajv@npm:^8.0.0, ajv@npm:^8.17.1":
|
||||
version: 8.17.1
|
||||
resolution: "ajv@npm:8.17.1"
|
||||
dependencies:
|
||||
fast-deep-equal: "npm:^3.1.3"
|
||||
fast-uri: "npm:^3.0.1"
|
||||
json-schema-traverse: "npm:^1.0.0"
|
||||
require-from-string: "npm:^2.0.2"
|
||||
checksum: 10c0/ec3ba10a573c6b60f94639ffc53526275917a2df6810e4ab5a6b959d87459f9ef3f00d5e7865b82677cb7d21590355b34da14d1d0b9c32d75f95a187e76fff35
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"fast-deep-equal@npm:^3.1.3":
|
||||
version: 3.1.3
|
||||
resolution: "fast-deep-equal@npm:3.1.3"
|
||||
checksum: 10c0/40dedc862eb8992c54579c66d914635afbec43350afbbe991235fdcb4e3a8d5af1b23ae7e79bef7d4882d0ecee06c3197488026998fb19f72dc95acff1d1b1d0
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"fast-uri@npm:^3.0.1":
|
||||
version: 3.1.0
|
||||
resolution: "fast-uri@npm:3.1.0"
|
||||
checksum: 10c0/44364adca566f70f40d1e9b772c923138d47efeac2ae9732a872baafd77061f26b097ba2f68f0892885ad177becd065520412b8ffeec34b16c99433c5b9e2de7
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"json-schema-traverse@npm:^1.0.0":
|
||||
version: 1.0.0
|
||||
resolution: "json-schema-traverse@npm:1.0.0"
|
||||
checksum: 10c0/71e30015d7f3d6dc1c316d6298047c8ef98a06d31ad064919976583eb61e1018a60a0067338f0f79cabc00d84af3fcc489bd48ce8a46ea165d9541ba17fb30c6
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"pandoc-templates@workspace:.":
|
||||
version: 0.0.0-use.local
|
||||
resolution: "pandoc-templates@workspace:."
|
||||
dependencies:
|
||||
ajv: "npm:^8.17.1"
|
||||
ajv-formats: "npm:^3.0.1"
|
||||
yaml: "npm:^2.7.1"
|
||||
languageName: unknown
|
||||
linkType: soft
|
||||
|
||||
"require-from-string@npm:^2.0.2":
|
||||
version: 2.0.2
|
||||
resolution: "require-from-string@npm:2.0.2"
|
||||
checksum: 10c0/aaa267e0c5b022fc5fd4eef49d8285086b15f2a1c54b28240fdf03599cbd9c26049fee3eab894f2e1f6ca65e513b030a7c264201e3f005601e80c49fb2937ce2
|
||||
languageName: node
|
||||
linkType: hard
|
||||
|
||||
"yaml@npm:^2.7.1":
|
||||
version: 2.8.1
|
||||
resolution: "yaml@npm:2.8.1"
|
||||
bin:
|
||||
yaml: bin.mjs
|
||||
checksum: 10c0/7c587be00d9303d2ae1566e03bc5bc7fe978ba0d9bf39cc418c3139d37929dfcb93a230d9749f2cb578b6aa5d9ebebc322415e4b653cb83acd8bc0bc321707f3
|
||||
languageName: node
|
||||
linkType: hard
|
||||
Reference in New Issue
Block a user