Initial files from ChatGPT.
This commit is contained in:
parent
96235c83db
commit
0d06a59b91
|
|
@ -0,0 +1,31 @@
|
||||||
|
name: Build PolyPaper
|
||||||
|
|
||||||
|
on: [push, pull_request, workflow_dispatch]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix: { venue: [arxiv, ieee, elsevier, acm] }
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- name: Build Docker image
|
||||||
|
run: docker build -f Dockerfile.full -t polypaper:full .
|
||||||
|
- name: Validate metadata (in container)
|
||||||
|
run: docker run --rm -v ${{ github.workspace }}:/work -w /work polypaper:full bash -lc 'chmod +x scripts/check_metadata.py && scripts/check_metadata.py'
|
||||||
|
- name: Build PDFs and HTML (${{ matrix.venue }})
|
||||||
|
run: |
|
||||||
|
docker run --rm -v ${{ github.workspace }}:/work -w /work polypaper:full bash -lc 'make VENUE=${{ matrix.venue }}'
|
||||||
|
docker run --rm -v ${{ github.workspace }}:/work -w /work polypaper:full bash -lc 'make supplement VENUE=${{ matrix.venue }}'
|
||||||
|
docker run --rm -v ${{ github.workspace }}:/work -w /work polypaper:full bash -lc 'make camera-ready VENUE=${{ matrix.venue }}'
|
||||||
|
docker run --rm -v ${{ github.workspace }}:/work -w /work polypaper:full bash -lc 'make site VENUE=${{ matrix.venue }}'
|
||||||
|
- name: Upload artifacts
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: polypaper-${{ matrix.venue }}
|
||||||
|
path: |
|
||||||
|
paper-${{ matrix.venue }}.pdf
|
||||||
|
paper-supplement-${{ matrix.venue }}.pdf
|
||||||
|
paper-camera-ready-${{ matrix.venue }}.pdf
|
||||||
|
public/paper.html
|
||||||
44
README.md
44
README.md
|
|
@ -1,3 +1,45 @@
|
||||||
# PolyPaper
|
# PolyPaper
|
||||||
|
|
||||||
PolyPaper is a set of tools for scientific manuscript production that combines a single source tree coherently with targeting documents for multiple venues.
|
PolyPaper is a set of tools for scientific manuscript production that combines a single source tree coherently with targeting documents for multiple venues.
|
||||||
|
|
||||||
|
## Rationale
|
||||||
|
|
||||||
|
Scientific research has uncertainties about publication venues that
|
||||||
|
have varying restrictions on page length, numbers of figures or
|
||||||
|
tables, or other restrictions. Being prepared for shifts in these
|
||||||
|
sorts of conditions has mostly required building entire variants of
|
||||||
|
manuscripts separate from one another. Besides additional effort, this
|
||||||
|
means that updates to content may need to be applied in multiple
|
||||||
|
different places, increasing the likelihood of drift between the
|
||||||
|
variants in statements, tone, or other properties. PolyPaper aims to
|
||||||
|
help keep similar content together leveraging the capabilities of
|
||||||
|
Emacs Org-Mode documents that provide literate programming capability
|
||||||
|
with LaTeX typesetting and Markdown/Pandoc flexible document type
|
||||||
|
generation.
|
||||||
|
|
||||||
|
## How it works
|
||||||
|
|
||||||
|
|
||||||
|
The first step is to have 'venues', which are simply the possible ways
|
||||||
|
in which the material can be presented for publication, as separate
|
||||||
|
Org-Mode documents. These will incorporate the metadata needed for
|
||||||
|
LaTeX production or Pandoc target.
|
||||||
|
|
||||||
|
The manuscript content will reside in an Emacs Org-Mode document. The
|
||||||
|
user can choose whether to keep that as a single document or use
|
||||||
|
include statements so that sections might have their own Org-Mode
|
||||||
|
document, depending on the research group's preferences on ways to
|
||||||
|
merge changes.
|
||||||
|
|
||||||
|
Figures and tables are also specified in the source document, and can
|
||||||
|
be updated through Org-Mode commands. All the necessary processing can
|
||||||
|
be accomplished via use of command-lines and thus Makefiles can
|
||||||
|
automate repeated tasks.
|
||||||
|
|
||||||
|
## Generative AI Disclosure
|
||||||
|
|
||||||
|
This repository was largely derived by Wesley R. Elsberry prompting OpenAI's ChatGPT
|
||||||
|
with GPT 5.
|
||||||
|
|
||||||
|
The associated chat session is at https://chatgpt.com/share/68e3c7d6-ef60-8007-b56c-8f221b8250da
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue