./graphics/pikchr, PIC-like markup language for diagrams

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]


Branch: CURRENT, Version: 1.0.20230526, Package name: pikchr-1.0.20230526, Maintainer: schmonz

Pikchr (pronounced like "picture") is a PIC-like markup language for
diagrams in technical documentation. Pikchr is designed to be embedded
in fenced code blocks of Markdown (or in similar mechanisms in other
markup languages) to provide a convenient means of showing diagrams.


Master sites:


Version history: (Expand)


CVS history: (Expand)


   2023-07-04 04:29:15 by Amitai Schleier | Files touched by this commit (2) | Package updated
Log message:
Update to 1.0.20230526. From the changelog:

- Typo fix, reported on the forum.
- Fixed assorted typos, clarity errors, and formatting problems in the
  docs. Most were reported on the forum by brickviking (here and here)
  but I found and fixed a few more while in there.
- Remove the artificial enlargement of "mono" text, as that seems not to
  be necessary when the output is rendered by Fossil. Must be some kind
  of CSS issue.
- Add support for the "monospace" (alias "mono") text attribute.
- Adjust the font size and text length computations for monospace.
  (Closed-Leaf check-in: 22e2a2c622 user: drh tags: monospace)
- "mono italic" test case added.
- Experimental support for the "mono" and "monospace" text \ 
attributes.
- Add the narrow.pikchr test case. This should have been part of
  [21ca6b843d65c404], I think.
- Doc typo fix reported in /forumpost/4e01fef7d9.
- Add a link to Adamantine Pick, a pikchr extension for the Obsidian
  knowledge-base app.
- Avoid unnecessary rounding of coordinates in the generated SVG. Forum
  post b571590af6.
- Add "External Link" entry for the Lua-based pikchr pandoc filter.
- Add mdbook-pikchr to External Links section.
- Mention the "behind" attribute in the differences and user manual
  documents. Forum post e172c0c950.
- Minor emsdk doc update.
- Added a link to David Weil's node.js pikchr module, sent to me
  off-list.
- Discuss the PIKCHR_TOKEN_LIMIT in the differences page.
- Update the built-in Lemon to the latest code from the SQLite project.
- Added fiddle/README.md, which explains how to get the fiddle app up
  and running.
- Pulled in minor fiddle changes from the fossil tree.
- Changed the /fiddle build to name the output files pikchr.js/wasm
  instead of fiddle-module.js/wasm to avoid having to make manual edits
  when porting them over to fossil.
- Allow any value for HEADING. Convert it to -360..360 before use. Forum
  post 56140a59018db001
- Add Ryan's spider-web Pikchr script as an example.
- Help text typo fix and added a mention that all output goes to stdout,
  as suggested in [e3a1e165ab799e64]. No code changes.
- Added a link to another 3rd-party integration of pikchr: the 8th
  programming language.
- Expanded [43eb7d998415] to permit digits in HTML entities after the
  first character, to allow for sup2, frac12, and similar entities.
  Reported in [dcf1418ef16f].
- Minor doc correction and code style tweak to the previous checkin. No
  functional changes.
- When outputing HTML-escaped text and an ampersand is encountered,
  only transform it to an HTML entity if it looks like it's not one
  already. HTML entities are left as is, noting that we do only a
  syntactic check and not a test for whether the entity is a
  standard/known one. This replaces [aca3d2dc1a00], reverting the doc
  changes made by that checkin.
- Replaced ampersand-deg-semicolon escape sequences in pikchr
  string literals in various docs with a degree symbol to work
  around that escape sequence having been broken by
  [641b4ff2e552183c]. Extended the comment about ampersand escaping
  in pik_append_text(). No code changes. (Closed-Leaf check-in:
  aca3d2dc1a user: stephan tags: mistake)
- Removed some duplicated docs, one copy of which was out of date.
- Extended the wasm binding to optionally make use of all of the
  pikchr() arguments and return more info, e.g. width/height, in the
  result object. Fixed shift-enter behavior.
- Minor fiddle app cleanups made while porting it to fossil.
- Added build of gzip-compressed forms of the fiddle/ files, for use
  with althttpd's new gzip support.
- Updated the fiddle TODOs.
- fiddle: initial impl of auto-update of SVG while typing (enabled with
  new checkbox). Works but may need tweaks for the precise preferred
  timing (currently 800ms debounce) and skiping update for certain
  keys/situations.
- fiddle: made the config checkboxes persistent.
- fiddle: removed a superfluous layer of indirection.
- Fiddle: accounted for case of empty pikchr script, which produces an
  HTML comment as output. Renamed the inherited sqlite-centric symbol
  names to pikchr-centric ones.
- fiddle: simplified some duplicated if/else logic and made
  renderAutoScale=false the default.
- Initial version of a wasm/JS pikchr "fiddle" app. Requires emscripten
  to build. Several TODOs remain but it essentially works.
- Correctly adjust the bounding box when the size of a circle is set
  using "diameter". Fix for ticket [4449371aa4d8ed2b].
- Added new external project links which were posted to /forumpost/8b18c6b6bd.
- Limit the number of tokens that can be processed in a single script to
  avoid an exponential macro-expansion attack, such as described by
  forum thread 6b9b95de35.
- Typo fix in userman.md: s/three/five/
- Fix the built-in abs() function so that it actually works. Add a test case.
- Add links on the homepage to Zellyn Hunter's port of pikchr to Go.
- Add a test case for the ampersand problem fixed in the previous check-in.
- Escape ampersands when emitting text nodes, per report in forum post
  37584617be.
   2021-11-26 20:39:15 by Amitai Schleier | Files touched by this commit (2)
Log message:
Honor LDFLAGS to fix NetBSD build. Ride recent import.
   2021-11-26 10:38:52 by Amitai Schleier | Files touched by this commit (5)
Log message:
Add pikchr, a PIC-like markup language for diagrams.

Pikchr (pronounced like "picture") is a PIC-like markup language for
diagrams in technical documentation. Pikchr is designed to be embedded
in fenced code blocks of Markdown (or in similar mechanisms in other
markup languages) to provide a convenient means of showing diagrams.