pdfmd-cli 3.20.4__tar.gz → 3.21.5__tar.gz

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.
Files changed (38) hide show
  1. {pdfmd_cli-3.20.4/pdfmd_cli.egg-info → pdfmd_cli-3.21.5}/PKG-INFO +26 -1
  2. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/README.md +25 -0
  3. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd.py +879 -78
  4. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5/pdfmd_cli.egg-info}/PKG-INFO +26 -1
  5. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_cli.egg-info/SOURCES.txt +3 -1
  6. pdfmd_cli-3.21.5/tests/test_lookup.py +239 -0
  7. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/tests/test_native.py +17 -2
  8. pdfmd_cli-3.21.5/tests/test_sections.py +533 -0
  9. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/LICENSE +0 -0
  10. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_cli.egg-info/dependency_links.txt +0 -0
  11. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_cli.egg-info/entry_points.txt +0 -0
  12. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_cli.egg-info/requires.txt +0 -0
  13. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_cli.egg-info/top_level.txt +0 -0
  14. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/LICENSE +0 -0
  15. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/VENDORED.md +0 -0
  16. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/__init__.py +0 -0
  17. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/_kerning_data.py +0 -0
  18. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/assets/fonts/DejaVuSans-LICENSE.txt +0 -0
  19. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/assets/fonts/DejaVuSans.ttf +0 -0
  20. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/ast.py +0 -0
  21. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/cidfont.py +0 -0
  22. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/embedded.py +0 -0
  23. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/embedded_metrics.py +0 -0
  24. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/emoji.py +0 -0
  25. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/emoji_font.py +0 -0
  26. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/fonts.py +0 -0
  27. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/html_filter.py +0 -0
  28. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/image_loader.py +0 -0
  29. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/layout.py +0 -0
  30. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/parser.py +0 -0
  31. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/pdf.py +0 -0
  32. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/py.typed +0 -0
  33. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/render.py +0 -0
  34. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/truetype.py +0 -0
  35. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pdfmd_inkmd/url_filter.py +0 -0
  36. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/pyproject.toml +0 -0
  37. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/setup.cfg +0 -0
  38. {pdfmd_cli-3.20.4 → pdfmd_cli-3.21.5}/tests/test_packaging.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pdfmd-cli
3
- Version: 3.20.4
3
+ Version: 3.21.5
4
4
  Summary: One command from Markdown to a good-looking PDF: a Pandoc wrapper with smart defaults, project-file discovery and a multi-engine fallback chain
5
5
  Author: Ali Perdekhan
6
6
  License-Expression: MIT
@@ -232,6 +232,31 @@ pdfmd lecture -w # watch: rebuild on every save, until Ctrl+C
232
232
  A bare name is looked up as `<name>.md`. The name can contain dots:
233
233
  `pdfmd notes-v1.2` builds `notes-v1.2.md`.
234
234
 
235
+ If no file has exactly that name, pdfmd also looks at what each document is
236
+ called inside: its title, and any `pdfmd-options: {alias: ...}`. Case, spaces,
237
+ `_`, `-`, accents and script don't matter (`pdfmd animportantdocument` finds
238
+ `An Important Document.md`; `pdfmd glyukoza` finds a document titled
239
+ `Глюкоза`), and a unique *start* of a name or title works too, with a warning
240
+ saying what it matched (`pdfmd animp`, `pdfmd glucose`). A name that fits two
241
+ documents is an error, never a guess; `--no-auto lookup` switches the guessing
242
+ off. An exact file name always wins.
243
+
244
+ ### One section
245
+
246
+ `pdfmd doc#onlyapart` builds just the section whose heading is "Only a Part"
247
+ (down to the next heading of the same or a higher level), written as
248
+ `doc.only-a-part.pdf` beside the document. Headings are named the way files
249
+ are: case, spaces and spelling don't matter, a unique start works (with a
250
+ warning), and so does a `{#label}`. `doc##yield` asks for a level-2 heading,
251
+ `doc#results/yield` for one under another, `doc#a+b` for several, and
252
+ `pdfmd '#yield'` uses the folder's only Markdown file. `pdfmd doc --list-parts`
253
+ shows what can be named. In a document split into parts the same names work
254
+ for headings inside the parts.
255
+
256
+ Anything with a `{#label}` can be named too: `pdfmd doc#fig:setup` builds just
257
+ that figure, `doc#eq:energy` that equation, and likewise a table, a fenced div,
258
+ a code block or a span (the figure's number restarts at 1).
259
+
235
260
  ### Other output formats
236
261
 
237
262
  The format is taken from `-o`'s extension, or given explicitly with `--to`:
@@ -203,6 +203,31 @@ pdfmd lecture -w # watch: rebuild on every save, until Ctrl+C
203
203
  A bare name is looked up as `<name>.md`. The name can contain dots:
204
204
  `pdfmd notes-v1.2` builds `notes-v1.2.md`.
205
205
 
206
+ If no file has exactly that name, pdfmd also looks at what each document is
207
+ called inside: its title, and any `pdfmd-options: {alias: ...}`. Case, spaces,
208
+ `_`, `-`, accents and script don't matter (`pdfmd animportantdocument` finds
209
+ `An Important Document.md`; `pdfmd glyukoza` finds a document titled
210
+ `Глюкоза`), and a unique *start* of a name or title works too, with a warning
211
+ saying what it matched (`pdfmd animp`, `pdfmd glucose`). A name that fits two
212
+ documents is an error, never a guess; `--no-auto lookup` switches the guessing
213
+ off. An exact file name always wins.
214
+
215
+ ### One section
216
+
217
+ `pdfmd doc#onlyapart` builds just the section whose heading is "Only a Part"
218
+ (down to the next heading of the same or a higher level), written as
219
+ `doc.only-a-part.pdf` beside the document. Headings are named the way files
220
+ are: case, spaces and spelling don't matter, a unique start works (with a
221
+ warning), and so does a `{#label}`. `doc##yield` asks for a level-2 heading,
222
+ `doc#results/yield` for one under another, `doc#a+b` for several, and
223
+ `pdfmd '#yield'` uses the folder's only Markdown file. `pdfmd doc --list-parts`
224
+ shows what can be named. In a document split into parts the same names work
225
+ for headings inside the parts.
226
+
227
+ Anything with a `{#label}` can be named too: `pdfmd doc#fig:setup` builds just
228
+ that figure, `doc#eq:energy` that equation, and likewise a table, a fenced div,
229
+ a code block or a span (the figure's number restarts at 1).
230
+
206
231
  ### Other output formats
207
232
 
208
233
  The format is taken from `-o`'s extension, or given explicitly with `--to`: