@publisle/template-sdk 0.1.3 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2026 VoidReg
3
+ Copyright (c) 2026 Publisle
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -1,15 +1,10 @@
1
1
  # @publisle/template-sdk
2
2
 
3
- Publisle Research profile package.
3
+ Publisle document tooling.
4
4
 
5
- Requires Node.js 24 or later. Framework adapters also require their declared peer dependencies.
6
- This package is part of Publisle, independently versioned at `0.1.3` and published under the npm `latest` tag.
7
- Frozen contract version integers are independent of npm package versions.
8
-
9
- - [Core standard](https://github.com/VoidReg/publisle/blob/main/docs/standards/README.md)
10
- - [Quickstart and package usage](https://github.com/VoidReg/publisle#readme)
11
- - [Distribution and release checklist](https://github.com/VoidReg/publisle/blob/main/docs/guides/releases.md)
12
- - [Research export guide](https://github.com/VoidReg/publisle/blob/main/docs/guides/journal-export.md)
5
+ ```sh
6
+ npm install @publisle/template-sdk
7
+ ```
13
8
 
14
9
  Research tooling is optional and is excluded from Core-only installations. Read any
15
10
  included `NOTICE.md` for third-party licensing obligations.
@@ -0,0 +1,2 @@
1
+ export declare const placeins = "% P L A C E I N S . S T Y ver 2.2 April 18, 2005\n% Donald Arseneau asnd@triumf.ca\n% Keep floats `in their place'; don't let them float into another section.\n% Instructions are below.\n%\n% placeins.sty is freely released to the public domain.\n\n\n\\def\\@fb@botlist{\\@botlist}\n\\def\\@fb@topbarrier{\\suppressfloats[t]}\n\n\\catcode`\\V=14 % `V' is a comment character unless [verbose]\n\n\\@ifundefined{DeclareOption}{}%\n{\\DeclareOption{below}{\\def\\@fb@botlist{}}\n \\DeclareOption{above}{\\def\\@fb@topbarrier{}}\n \\DeclareOption{section}{\\AtBeginDocument{%\n \\expandafter\\renewcommand\\expandafter\\section\\expandafter\n {\\expandafter\\@fb@secFB\\section}%\n \\newcommand\\@fb@secFB{\\FloatBarrier\n \\gdef\\@fb@afterHHook{\\@fb@topbarrier \\gdef\\@fb@afterHHook{}}}\n \\g@addto@macro\\@afterheading{\\@fb@afterHHook}\n \\gdef\\@fb@afterHHook{}\n }}\n \\DeclareOption{verbose}{\\catcode`\\V=9 }% Activate things after `V'\n \\ProvidesPackage{placeins}[2005/04/18 \\space v 2.2]\n \\ProcessOptions \n} % end of \\@ifundefined\n\n\\def\\FloatBarrier{\\par\\begingroup \\let\\@elt\\relax\nV\\edef\\@tempa{\\write\\m@ne{Package placeins Info: Float barrier, from\nV input line \\the\\inputlineno, processed on page \\thepage, lands on\nV page \\noexpand\\thepage. }}\\@tempa\n \\edef\\@tempa{\\@fb@botlist\\@deferlist\\@dbldeferlist}%\n \\ifx\\@tempa\\@empty V\\PackageInfo{placeins}{No floats held,}%\n \\else\n \\ifx\\@fltovf\\relax % my indicator of recursion\n \\if@firstcolumn V\\PackageWarning{placeins}{Some floats are stuck,}%\n \\clearpage \n \\else V\\PackageInfo{placeins}{Eject a column and check again:}%\n \\null\\newpage\\FloatBarrier \n \\fi\n \\else V\\PackageInfo{placeins}{Must dump some floats}%\n \\newpage \\let\\@fltovf\\relax V\\PackageInfo{placeins}{Check again:}%\n \\FloatBarrier % recurse once only\n \\fi\\fi \\endgroup\n \\@fb@topbarrier }\n\n\\catcode`\\V=11\n\\endinput\n\n%====================== BEGIN INSTRUCTIONS ===========================\n\n p l a c e i n s . s t y ver 2.2 April 18, 2005\n Donald Arseneau asnd@triumf.ca\n\n\nPlaceins.sty keeps floats `in their place', preventing them from floating\npast a \"\\FloatBarrier\" command into another section. To use it, declare\n\"\\usepackage{placeins}\" and insert \"\\FloatBarrier\" at places that floats \nshould not move past, perhaps at every \"\\section\". \n\nOption: [section]\n\nA more convenient way to stop floats at section boundaries is to change \nthe definition of \"\\section\" to include \"\\FloatBarrier\", either at the\nbeginning, before \"\\@startsection\", or in the `style' specification (see \nThe LaTeX Companion, section 2.2.2; or 2.3 in the 1st ed). If you specify \n\"\\usepackage[section]{placeins}\", then the \"\\section\" command will be \nredefined with \"\\FloatBarrier\" inserted at the beginning.\n\nOptions: [above] [below]\n\nSomething you may not like is that, by default, \"\\FloatBarrier\" is very \nstrict, and will (try to) prevent a float from appearing above the start \nof the current section or below the start of the next section, even \nthough the float is still on the same page as its intended section. \nEach restriction can be relaxed separately by using the \"[above]\" and \n\"[below]\" package options: \"[above]\" allows floats to appear above their \nsection, if on the same page; \"[below]\" allows below.\n\nNOTE! The original version of placeins.sty acted like it was loaded\nwith the option \"[above]\" specified.\n\nThere is a problem with LaTeX's \"\\suppressfloats\" being out of step with \nthe page breaking (see usenet msg <yfi656pbsn0.fsf@triumf.ca> and thread)\nwhich sometimes allows a float to go above a \"\\FloatBarrier\" placed near\nthe top of a page. Maybe placeins will fix it sometime later.\n\nOption: [verbose]\n\nThere is a package option \"[verbose]\" that causes many messages to be\nwritten in the log file. It might be used to answer the question:\n`How did *that* get *there*?!?'\n\n%====================== END INSTRUCTIONS ========================\n\nTest file integrity: ASCII 32-57, 58-126: !\"#$%&'()*+,-./0123456789\n:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\n";
2
+ //# sourceMappingURL=placeins.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"placeins.d.ts","sourceRoot":"","sources":["../src/placeins.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,QAAQ,uvIACmsI,CAAC"}
@@ -0,0 +1,5 @@
1
+ // placeins 2.2, Donald Arseneau. Public domain; upstream notice retained below.
2
+ // Source: frozen TeX Live 2025 tlnet-final archive/placeins.tar.xz
3
+ // SHA-256 of placeins.sty: e6c6c01e0c057e360c07238cd765117e5d415c26c2ea1cdf141b7ddfaf151b0c
4
+ export const placeins = '% P L A C E I N S . S T Y ver 2.2 April 18, 2005\n% Donald Arseneau asnd@triumf.ca\n% Keep floats `in their place\'; don\'t let them float into another section.\n% Instructions are below.\n%\n% placeins.sty is freely released to the public domain.\n\n\n\\def\\@fb@botlist{\\@botlist}\n\\def\\@fb@topbarrier{\\suppressfloats[t]}\n\n\\catcode`\\V=14 % `V\' is a comment character unless [verbose]\n\n\\@ifundefined{DeclareOption}{}%\n{\\DeclareOption{below}{\\def\\@fb@botlist{}}\n \\DeclareOption{above}{\\def\\@fb@topbarrier{}}\n \\DeclareOption{section}{\\AtBeginDocument{%\n \\expandafter\\renewcommand\\expandafter\\section\\expandafter\n {\\expandafter\\@fb@secFB\\section}%\n \\newcommand\\@fb@secFB{\\FloatBarrier\n \\gdef\\@fb@afterHHook{\\@fb@topbarrier \\gdef\\@fb@afterHHook{}}}\n \\g@addto@macro\\@afterheading{\\@fb@afterHHook}\n \\gdef\\@fb@afterHHook{}\n }}\n \\DeclareOption{verbose}{\\catcode`\\V=9 }% Activate things after `V\'\n \\ProvidesPackage{placeins}[2005/04/18 \\space v 2.2]\n \\ProcessOptions \n} % end of \\@ifundefined\n\n\\def\\FloatBarrier{\\par\\begingroup \\let\\@elt\\relax\nV\\edef\\@tempa{\\write\\m@ne{Package placeins Info: Float barrier, from\nV input line \\the\\inputlineno, processed on page \\thepage, lands on\nV page \\noexpand\\thepage. }}\\@tempa\n \\edef\\@tempa{\\@fb@botlist\\@deferlist\\@dbldeferlist}%\n \\ifx\\@tempa\\@empty V\\PackageInfo{placeins}{No floats held,}%\n \\else\n \\ifx\\@fltovf\\relax % my indicator of recursion\n \\if@firstcolumn V\\PackageWarning{placeins}{Some floats are stuck,}%\n \\clearpage \n \\else V\\PackageInfo{placeins}{Eject a column and check again:}%\n \\null\\newpage\\FloatBarrier \n \\fi\n \\else V\\PackageInfo{placeins}{Must dump some floats}%\n \\newpage \\let\\@fltovf\\relax V\\PackageInfo{placeins}{Check again:}%\n \\FloatBarrier % recurse once only\n \\fi\\fi \\endgroup\n \\@fb@topbarrier }\n\n\\catcode`\\V=11\n\\endinput\n\n%====================== BEGIN INSTRUCTIONS ===========================\n\n p l a c e i n s . s t y ver 2.2 April 18, 2005\n Donald Arseneau asnd@triumf.ca\n\n\nPlaceins.sty keeps floats `in their place\', preventing them from floating\npast a "\\FloatBarrier" command into another section. To use it, declare\n"\\usepackage{placeins}" and insert "\\FloatBarrier" at places that floats \nshould not move past, perhaps at every "\\section". \n\nOption: [section]\n\nA more convenient way to stop floats at section boundaries is to change \nthe definition of "\\section" to include "\\FloatBarrier", either at the\nbeginning, before "\\@startsection", or in the `style\' specification (see \nThe LaTeX Companion, section 2.2.2; or 2.3 in the 1st ed). If you specify \n"\\usepackage[section]{placeins}", then the "\\section" command will be \nredefined with "\\FloatBarrier" inserted at the beginning.\n\nOptions: [above] [below]\n\nSomething you may not like is that, by default, "\\FloatBarrier" is very \nstrict, and will (try to) prevent a float from appearing above the start \nof the current section or below the start of the next section, even \nthough the float is still on the same page as its intended section. \nEach restriction can be relaxed separately by using the "[above]" and \n"[below]" package options: "[above]" allows floats to appear above their \nsection, if on the same page; "[below]" allows below.\n\nNOTE! The original version of placeins.sty acted like it was loaded\nwith the option "[above]" specified.\n\nThere is a problem with LaTeX\'s "\\suppressfloats" being out of step with \nthe page breaking (see usenet msg <yfi656pbsn0.fsf@triumf.ca> and thread)\nwhich sometimes allows a float to go above a "\\FloatBarrier" placed near\nthe top of a page. Maybe placeins will fix it sometime later.\n\nOption: [verbose]\n\nThere is a package option "[verbose]" that causes many messages to be\nwritten in the log file. It might be used to answer the question:\n`How did *that* get *there*?!?\'\n\n%====================== END INSTRUCTIONS ========================\n\nTest file integrity: ASCII 32-57, 58-126: !"#$%&\'()*+,-./0123456789\n:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\n';
5
+ //# sourceMappingURL=placeins.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"placeins.js","sourceRoot":"","sources":["../src/placeins.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,mEAAmE;AACnE,4FAA4F;AAC5F,MAAM,CAAC,MAAM,QAAQ,GACnB,stIAAstI,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAgC,qBAAqB;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,mBAAmB;AAI9E,MAAM,WAAW,YAAY;IAC3B,0EAA0E;IAC1E,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,WAAW,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,0BAA0B,CAAC,EAAE,OAAO,CAAC;IAC9C,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAClB,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,KAC5B,MAAM,CAAC;IACZ,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,CAChB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,KAC5B,MAAM,CAAC;IACZ,QAAQ,CAAC,WAAW,CAAC,EAAE,CACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,KAC5B,MAAM,CAAC;CACb;AACD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,YAAY,GACpB,aAAa,CA0Xf"}
1
+ {"version":3,"file":"render.d.ts","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAgC,qBAAqB;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,mBAAmB;AAK9E,MAAM,WAAW,YAAY;IAC3B,0EAA0E;IAC1E,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,SAAS,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC;IACnC,QAAQ,CAAC,aAAa,CAAC,EAAE,WAAW,CAAC;IACrC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,0BAA0B,CAAC,EAAE,OAAO,CAAC;IAC9C,QAAQ,CAAC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAClB,QAAQ,EAAE,SAAS,MAAM,EAAE,EAC3B,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,KAC5B,MAAM,CAAC;IACZ,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,CAChB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,KAC5B,MAAM,CAAC;IACZ,QAAQ,CAAC,WAAW,CAAC,EAAE,CACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,KAC5B,MAAM,CAAC;CACb;AACD,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,eAAe,EACxB,OAAO,EAAE,YAAY,GACpB,aAAa,CA+Xf"}
package/dist/render.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { placeins } from "./placeins.js";
1
2
  import { toBibtex } from "./bibtex.js";
2
3
  import { latexKey, latexText } from "./escape.js";
3
4
  export function renderLatexArticle(article, context, profile) {
@@ -206,7 +207,7 @@ export function renderLatexArticle(article, context, profile) {
206
207
  : take(cell))
207
208
  .join(" & ") + " \\\\")
208
209
  .join("\n");
209
- target.push(`\\begin{table}[!tb]\n\\caption{${take(block.caption ?? [])}}${label}\n\\centering\n${pdfStandard ? `\\tagpdfsetup{table/header-rows={${Array.from({ length: block.headerRows ?? 0 }, (_, index) => String(index + 1)).join(",")}}}\n` : ""}\\begin{tabularx}{\\columnwidth}{${"X".repeat(width)}}\n\\hline\n${rows}\n\\hline\n\\end{tabularx}\n\\end{table}`);
210
+ target.push(`\\begin{table}[!htbp]\n\\caption{${take(block.caption ?? [])}}${label}\n\\centering\n${pdfStandard ? `\\tagpdfsetup{table/header-rows={${Array.from({ length: block.headerRows ?? 0 }, (_, index) => String(index + 1)).join(",")}}}\n` : ""}\\begin{tabularx}{\\columnwidth}{${"X".repeat(width)}}\n\\hline\n${rows}\n\\hline\n\\end{tabularx}\n\\end{table}`);
210
211
  }
211
212
  else if (block.kind === "list")
212
213
  target.push(`\\begin{${block.ordered ? "enumerate" : "itemize"}}\n${block.items.map((item) => `\\item ${take(item)}`).join("\n")}\n\\end{${block.ordered ? "enumerate" : "itemize"}}`);
@@ -262,17 +263,20 @@ ${unicodePreamble}${needsColor ? "\\usepackage{xcolor}\n" : ""}\\usepackage{amsm
262
263
  % flafter keeps floats at or after their source position, so a figure can
263
264
  % never be hoisted above the abstract region on the first page.
264
265
  \\usepackage{flafter}
266
+ \\usepackage{placeins}
265
267
  \\usepackage[normalem]{ulem}
266
268
  \\usepackage{hyperref}
267
269
  \\hypersetup{hidelinks}
268
270
  \\hypersetup{pdftitle={${latexText(article.title ?? "Untitled")}},pdfauthor={${latexText(article.authors.join(", "))}}}
269
271
  ${profile.author ? profile.author(article, text) : `\\title{${text(article.title ?? "Untitled")}}\n\\author{${authors}${affiliations}}`}
272
+ \\date{}
270
273
  ${profile.preamble ?? ""}
271
274
  \\begin{document}
272
275
  ${profile.frontmatter ? profile.frontmatter(abstract.join("\n\n"), article, text) : `\\maketitle${abstract.join("\n\n").trim() ? `\n\\begin{abstract}\n${abstract.join("\n\n")}\n\\end{abstract}` : ""}`}
273
276
  ${profile.keywords?.(article.subjects ?? [], text) ?? ""}
274
277
  ${body.join("\n\n")}
275
- ${profile.bibliographyStyle ? (context.bibliography.length ? `${profile.automaticBibliographyStyle ? "" : `\\bibliographystyle{${profile.bibliographyStyle}}\n`}\\bibliography{references}` : "") : `\\section*{${profile.direction === "rtl" ? text("المراجع") : "References"}}\n${context.bibliography.map((item) => text(item.text)).join("\n\n")}`}
278
+ ${context.bibliography.length ? "\\FloatBarrier" : ""}
279
+ ${profile.bibliographyStyle ? (context.bibliography.length ? `${profile.automaticBibliographyStyle ? "" : `\\bibliographystyle{${profile.bibliographyStyle}}\n`}\\bibliography{references}` : "") : context.bibliography.length ? `\\section*{${profile.direction === "rtl" ? text("المراجع") : "References"}}\n${context.bibliography.map((item) => text(item.text)).join("\n\n")}` : ""}
276
280
  \\end{document}
277
281
  `;
278
282
  return {
@@ -285,6 +289,7 @@ ${profile.bibliographyStyle ? (context.bibliography.length ? `${profile.automati
285
289
  "amsmath.sty",
286
290
  ...(needsColor ? ["xcolor.sty"] : []),
287
291
  "flafter.sty",
292
+ "placeins.sty",
288
293
  "graphicx.sty",
289
294
  "tabularx.sty",
290
295
  "ulem.sty",
@@ -300,6 +305,7 @@ ${profile.bibliographyStyle ? (context.bibliography.length ? `${profile.automati
300
305
  ],
301
306
  fonts: engine === "lualatex" ? fonts : {},
302
307
  files: {
308
+ "placeins.sty": placeins,
303
309
  "manuscript.tex": manuscript,
304
310
  "references.bib": toBibtex(entries),
305
311
  "BUILD.md": `# Rebuild\n\nRequires latexmk, ${engine}, and ${profile.className}.${pdfStandard ? ` LaTeX format >= 2025-11-01 is required for ${pdfStandard} tagging. Compiling does not run PDF/UA validation.` : ""}\n\nRun: latexmk -${engine === "pdflatex" ? "pdf" : "lualatex"} -norc -interaction=nonstopmode -halt-on-error -no-shell-escape manuscript.tex\n`,
@@ -1 +1 @@
1
- {"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render.js","sourceRoot":"","sources":["../src/render.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@publisle/template-sdk",
3
- "version": "0.1.3",
3
+ "version": "0.1.5",
4
4
  "license": "MIT",
5
5
  "keywords": [
6
6
  "latex",
@@ -19,7 +19,7 @@
19
19
  }
20
20
  },
21
21
  "dependencies": {
22
- "@publisle/schema": "^0.1.1"
22
+ "@publisle/schema": "^0.1.2"
23
23
  },
24
24
  "publishConfig": {
25
25
  "access": "public"
@@ -36,9 +36,9 @@
36
36
  },
37
37
  "repository": {
38
38
  "type": "git",
39
- "url": "git+https://github.com/VoidReg/publisle.git",
39
+ "url": "git+https://github.com/publisle/publisle.git",
40
40
  "directory": "packages/template-sdk"
41
41
  },
42
- "homepage": "https://github.com/VoidReg/publisle#readme",
42
+ "homepage": "https://github.com/publisle/publisle#readme",
43
43
  "types": "./dist/index.d.ts"
44
44
  }
@@ -0,0 +1,5 @@
1
+ // placeins 2.2, Donald Arseneau. Public domain; upstream notice retained below.
2
+ // Source: frozen TeX Live 2025 tlnet-final archive/placeins.tar.xz
3
+ // SHA-256 of placeins.sty: e6c6c01e0c057e360c07238cd765117e5d415c26c2ea1cdf141b7ddfaf151b0c
4
+ export const placeins =
5
+ '% P L A C E I N S . S T Y ver 2.2 April 18, 2005\n% Donald Arseneau asnd@triumf.ca\n% Keep floats `in their place\'; don\'t let them float into another section.\n% Instructions are below.\n%\n% placeins.sty is freely released to the public domain.\n\n\n\\def\\@fb@botlist{\\@botlist}\n\\def\\@fb@topbarrier{\\suppressfloats[t]}\n\n\\catcode`\\V=14 % `V\' is a comment character unless [verbose]\n\n\\@ifundefined{DeclareOption}{}%\n{\\DeclareOption{below}{\\def\\@fb@botlist{}}\n \\DeclareOption{above}{\\def\\@fb@topbarrier{}}\n \\DeclareOption{section}{\\AtBeginDocument{%\n \\expandafter\\renewcommand\\expandafter\\section\\expandafter\n {\\expandafter\\@fb@secFB\\section}%\n \\newcommand\\@fb@secFB{\\FloatBarrier\n \\gdef\\@fb@afterHHook{\\@fb@topbarrier \\gdef\\@fb@afterHHook{}}}\n \\g@addto@macro\\@afterheading{\\@fb@afterHHook}\n \\gdef\\@fb@afterHHook{}\n }}\n \\DeclareOption{verbose}{\\catcode`\\V=9 }% Activate things after `V\'\n \\ProvidesPackage{placeins}[2005/04/18 \\space v 2.2]\n \\ProcessOptions \n} % end of \\@ifundefined\n\n\\def\\FloatBarrier{\\par\\begingroup \\let\\@elt\\relax\nV\\edef\\@tempa{\\write\\m@ne{Package placeins Info: Float barrier, from\nV input line \\the\\inputlineno, processed on page \\thepage, lands on\nV page \\noexpand\\thepage. }}\\@tempa\n \\edef\\@tempa{\\@fb@botlist\\@deferlist\\@dbldeferlist}%\n \\ifx\\@tempa\\@empty V\\PackageInfo{placeins}{No floats held,}%\n \\else\n \\ifx\\@fltovf\\relax % my indicator of recursion\n \\if@firstcolumn V\\PackageWarning{placeins}{Some floats are stuck,}%\n \\clearpage \n \\else V\\PackageInfo{placeins}{Eject a column and check again:}%\n \\null\\newpage\\FloatBarrier \n \\fi\n \\else V\\PackageInfo{placeins}{Must dump some floats}%\n \\newpage \\let\\@fltovf\\relax V\\PackageInfo{placeins}{Check again:}%\n \\FloatBarrier % recurse once only\n \\fi\\fi \\endgroup\n \\@fb@topbarrier }\n\n\\catcode`\\V=11\n\\endinput\n\n%====================== BEGIN INSTRUCTIONS ===========================\n\n p l a c e i n s . s t y ver 2.2 April 18, 2005\n Donald Arseneau asnd@triumf.ca\n\n\nPlaceins.sty keeps floats `in their place\', preventing them from floating\npast a "\\FloatBarrier" command into another section. To use it, declare\n"\\usepackage{placeins}" and insert "\\FloatBarrier" at places that floats \nshould not move past, perhaps at every "\\section". \n\nOption: [section]\n\nA more convenient way to stop floats at section boundaries is to change \nthe definition of "\\section" to include "\\FloatBarrier", either at the\nbeginning, before "\\@startsection", or in the `style\' specification (see \nThe LaTeX Companion, section 2.2.2; or 2.3 in the 1st ed). If you specify \n"\\usepackage[section]{placeins}", then the "\\section" command will be \nredefined with "\\FloatBarrier" inserted at the beginning.\n\nOptions: [above] [below]\n\nSomething you may not like is that, by default, "\\FloatBarrier" is very \nstrict, and will (try to) prevent a float from appearing above the start \nof the current section or below the start of the next section, even \nthough the float is still on the same page as its intended section. \nEach restriction can be relaxed separately by using the "[above]" and \n"[below]" package options: "[above]" allows floats to appear above their \nsection, if on the same page; "[below]" allows below.\n\nNOTE! The original version of placeins.sty acted like it was loaded\nwith the option "[above]" specified.\n\nThere is a problem with LaTeX\'s "\\suppressfloats" being out of step with \nthe page breaking (see usenet msg <yfi656pbsn0.fsf@triumf.ca> and thread)\nwhich sometimes allows a float to go above a "\\FloatBarrier" placed near\nthe top of a page. Maybe placeins will fix it sometime later.\n\nOption: [verbose]\n\nThere is a package option "[verbose]" that causes many messages to be\nwritten in the log file. It might be used to answer the question:\n`How did *that* get *there*?!?\'\n\n%====================== END INSTRUCTIONS ========================\n\nTest file integrity: ASCII 32-57, 58-126: !"#$%&\'()*+,-./0123456789\n:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\n';
package/src/render.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import type { Article, ArticleInline, CitationEntry } from "./article.ts";
2
2
  import type { LatexEngine, SourcePackage, TemplateContext } from "./index.ts";
3
+ import { placeins } from "./placeins.ts";
3
4
  import { toBibtex } from "./bibtex.ts";
4
5
  import { latexKey, latexText } from "./escape.ts";
5
6
  type WritingDirection = "ltr" | "rtl" | "auto";
@@ -287,7 +288,7 @@ export function renderLatexArticle(
287
288
  )
288
289
  .join("\n");
289
290
  target.push(
290
- `\\begin{table}[!tb]\n\\caption{${take(block.caption ?? [])}}${label}\n\\centering\n${pdfStandard ? `\\tagpdfsetup{table/header-rows={${Array.from({ length: block.headerRows ?? 0 }, (_, index) => String(index + 1)).join(",")}}}\n` : ""}\\begin{tabularx}{\\columnwidth}{${"X".repeat(width)}}\n\\hline\n${rows}\n\\hline\n\\end{tabularx}\n\\end{table}`,
291
+ `\\begin{table}[!htbp]\n\\caption{${take(block.caption ?? [])}}${label}\n\\centering\n${pdfStandard ? `\\tagpdfsetup{table/header-rows={${Array.from({ length: block.headerRows ?? 0 }, (_, index) => String(index + 1)).join(",")}}}\n` : ""}\\begin{tabularx}{\\columnwidth}{${"X".repeat(width)}}\n\\hline\n${rows}\n\\hline\n\\end{tabularx}\n\\end{table}`,
291
292
  );
292
293
  } else if (block.kind === "list")
293
294
  target.push(
@@ -356,17 +357,20 @@ ${unicodePreamble}${needsColor ? "\\usepackage{xcolor}\n" : ""}\\usepackage{amsm
356
357
  % flafter keeps floats at or after their source position, so a figure can
357
358
  % never be hoisted above the abstract region on the first page.
358
359
  \\usepackage{flafter}
360
+ \\usepackage{placeins}
359
361
  \\usepackage[normalem]{ulem}
360
362
  \\usepackage{hyperref}
361
363
  \\hypersetup{hidelinks}
362
364
  \\hypersetup{pdftitle={${latexText(article.title ?? "Untitled")}},pdfauthor={${latexText(article.authors.join(", "))}}}
363
365
  ${profile.author ? profile.author(article, text) : `\\title{${text(article.title ?? "Untitled")}}\n\\author{${authors}${affiliations}}`}
366
+ \\date{}
364
367
  ${profile.preamble ?? ""}
365
368
  \\begin{document}
366
369
  ${profile.frontmatter ? profile.frontmatter(abstract.join("\n\n"), article, text) : `\\maketitle${abstract.join("\n\n").trim() ? `\n\\begin{abstract}\n${abstract.join("\n\n")}\n\\end{abstract}` : ""}`}
367
370
  ${profile.keywords?.(article.subjects ?? [], text) ?? ""}
368
371
  ${body.join("\n\n")}
369
- ${profile.bibliographyStyle ? (context.bibliography.length ? `${profile.automaticBibliographyStyle ? "" : `\\bibliographystyle{${profile.bibliographyStyle}}\n`}\\bibliography{references}` : "") : `\\section*{${profile.direction === "rtl" ? text("المراجع") : "References"}}\n${context.bibliography.map((item) => text(item.text)).join("\n\n")}`}
372
+ ${context.bibliography.length ? "\\FloatBarrier" : ""}
373
+ ${profile.bibliographyStyle ? (context.bibliography.length ? `${profile.automaticBibliographyStyle ? "" : `\\bibliographystyle{${profile.bibliographyStyle}}\n`}\\bibliography{references}` : "") : context.bibliography.length ? `\\section*{${profile.direction === "rtl" ? text("المراجع") : "References"}}\n${context.bibliography.map((item) => text(item.text)).join("\n\n")}` : ""}
370
374
  \\end{document}
371
375
  `;
372
376
  return {
@@ -379,6 +383,7 @@ ${profile.bibliographyStyle ? (context.bibliography.length ? `${profile.automati
379
383
  "amsmath.sty",
380
384
  ...(needsColor ? ["xcolor.sty"] : []),
381
385
  "flafter.sty",
386
+ "placeins.sty",
382
387
  "graphicx.sty",
383
388
  "tabularx.sty",
384
389
  "ulem.sty",
@@ -394,6 +399,7 @@ ${profile.bibliographyStyle ? (context.bibliography.length ? `${profile.automati
394
399
  ],
395
400
  fonts: engine === "lualatex" ? fonts : {},
396
401
  files: {
402
+ "placeins.sty": placeins,
397
403
  "manuscript.tex": manuscript,
398
404
  "references.bib": toBibtex(entries),
399
405
  "BUILD.md": `# Rebuild\n\nRequires latexmk, ${engine}, and ${profile.className}.${pdfStandard ? ` LaTeX format >= 2025-11-01 is required for ${pdfStandard} tagging. Compiling does not run PDF/UA validation.` : ""}\n\nRun: latexmk -${engine === "pdflatex" ? "pdf" : "lualatex"} -norc -interaction=nonstopmode -halt-on-error -no-shell-escape manuscript.tex\n`,