{"id":13791032,"url":"https://github.com/pandoc-ext/abstract-section","last_synced_at":"2026-02-13T18:41:30.451Z","repository":{"id":153645093,"uuid":"528846242","full_name":"pandoc-ext/abstract-section","owner":"pandoc-ext","description":"Write an article abstract in a normal section, not the YAML metadata.","archived":false,"fork":false,"pushed_at":"2025-01-26T14:52:14.000Z","size":37,"stargazers_count":66,"open_issues_count":1,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-12T09:43:44.028Z","etag":null,"topics":["pandoc-filter","quarto-extension","quarto-filter"],"latest_commit_sha":null,"homepage":"","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pandoc-ext.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["tarleb"]}},"created_at":"2022-08-25T12:42:53.000Z","updated_at":"2025-04-23T22:29:44.000Z","dependencies_parsed_at":"2025-01-26T15:26:04.921Z","dependency_job_id":"78e27082-74af-4de9-91be-e138af0d24bd","html_url":"https://github.com/pandoc-ext/abstract-section","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/pandoc-ext/abstract-section","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pandoc-ext%2Fabstract-section","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pandoc-ext%2Fabstract-section/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pandoc-ext%2Fabstract-section/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pandoc-ext%2Fabstract-section/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pandoc-ext","download_url":"https://codeload.github.com/pandoc-ext/abstract-section/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pandoc-ext%2Fabstract-section/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29414282,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-13T06:24:03.484Z","status":"ssl_error","status_checked_at":"2026-02-13T06:23:12.830Z","response_time":78,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["pandoc-filter","quarto-extension","quarto-filter"],"created_at":"2024-08-03T22:00:54.560Z","updated_at":"2026-02-13T18:41:30.437Z","avatar_url":"https://github.com/pandoc-ext.png","language":"Lua","funding_links":["https://github.com/sponsors/tarleb"],"categories":["Extensions"],"sub_categories":[],"readme":"abstract-section\n==================================================================\n\n[![GitHub build status][CI badge]][CI workflow]\n\nFilter that ensures that \"Abstract\" sections are handled as\nexpected.\n\n[CI badge]: https://img.shields.io/github/actions/workflow/status/pandoc-ext/abstract-section/ci.yaml?branch=main\u0026logo=github\n[CI workflow]: https://github.com/pandoc-ext/abstract-section/actions/workflows/ci.yaml\n\n\nAbstract in a dedicated section\n------------------------------------------------------------------\n\nThis filter allows to write a document abstract as normal sections\nin the main text. It moves any section titled \"abstract\" from the\nmain text into the metadata. Most output format templates expect\nthe abstract to be given as part of the metadata, but writing body\ntext is easier and more natural.\n\n``` markdown\n# Abstract\n\nPlace abstract here.\n\nMultiple paragraphs are possible.\n```\n\nWithout this filter, the abstract would need to be placed in the\ndocument's metadata. The additional indentation and formatting\nrequirements in YAML headers are frequently perceived as confusing\nor annoying, especially when writing longer texts.\n\n``` yaml\n---\nabstract: |\n  Place abstract here.\n\n  Multiple paragraphs are possible.\n---\n```\n\n\nThis filter modifies the document such that the abstract section\nbehaves as if it was passed as metadata. It does so by looking for\na top-level header whose ID is `abstract`. Pandoc auto-creates IDs\nbased on header contents, so a header titled *Abstract* will\nsatisfy this condition.^[1]\n\n[1]: This requires the `auto_identifier` extension. It is\n     enabled by default.\n\nThe abstract can be placed anywhere in the document.\n\nThe filter assumes that the abstract runs up until the next\nheading or [horizontal rule], whichever comes first. Thus the\nabstract can be placed at the beginning of a document whose text\ndoesn't start with a heading:\n\n``` markdown\n# Abstract\n\nThe abstract text includes this.\n\n* * * *\n\nThis text is the beginning of the document.\n```\n\n[horizontal rule]: https://pandoc.org/MANUAL.html#horizontal-rules\n\nUsage\n------------------------------------------------------------------\n\nThe filter modifies the internal document representation; it can\nbe used with many publishing systems that are based on pandoc.\n\n### Plain pandoc\n\nPass the filter to pandoc via the `--lua-filter` (or `-L`) command\nline option.\n\n    pandoc --lua-filter abstract-section.lua ...\n\n### Quarto\n\nUsers of Quarto can install this filter as an extension with\n\n    quarto install extension pandoc-ext/abstract-section\n\nand use it by adding `abstract-section` to the `filters` entry in\ntheir YAML header.\n\n``` yaml\n---\nfilters:\n  - abstract-section\n---\n```\n\n### R Markdown\n\nUse `pandoc_args` to invoke the filter. See the [R Markdown\nCookbook](https://bookdown.org/yihui/rmarkdown-cookbook/lua-filters.html)\nfor details.\n\n``` yaml\n---\noutput:\n  word_document:\n    pandoc_args: ['--lua-filter=abstract-section.lua']\n---\n```\n\nMultiple abstracts\n------------------------------------------------------------------\n\nIt is common for certain works to include two abstracts, one in\nEnglish and one in the local language of an academic institution.\nE.g., theses published at many German universities must have a\nGerman \"Zusammenfassung\" in addition to the English \"Abstract\".\n\nThe filter can be configured to support those additional\nabstract-like sections as well. The identifiers of the sections\nmust be listed in the `section-identifiers` field below the\n`abstract-section` metadata entry. E.g.:\n\n``` yaml\n---\nabstract-section:\n  section-identifiers:\n    - abstract\n    - sammanfattning\n---\n```\n\nThis will place the *Abstract* in the `abstract` variable as\nbefore, but will also collect the contents of a *Sammanfattning*\nsection and place it in the `sammanfattning` field, where it can\nbe used for further processing, e.g., with a custom template.\n\n\nLicense\n------------------------------------------------------------------\n\nThis pandoc Lua filter is published under the MIT license, see\nfile `LICENSE` for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpandoc-ext%2Fabstract-section","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpandoc-ext%2Fabstract-section","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpandoc-ext%2Fabstract-section/lists"}