about summary refs log tree commit diff
Commit message (Collapse)AuthorAgeFilesLines
* refactor: merge headers into one haskell-bindingssternenseemann2022-05-037-275/+248
| | | | | | | buchstabensuppe.h already included bitmap.h, flipdot.h was the only independent one. Since it is relatively simple and contains generally useful view manipulation routines, we can merge it into the main one as well.
* feat(bindings): add Haskell bindings to the UTF-32 buffer APIsternenseemann2022-05-0314-2/+447
|
* refactor: define feature test macros via -D flags instead of in srcsternenseemann2022-05-012-1/+3
|
* feat: use multiple outputs for buchstabensuppe derivationsternenseemann2022-05-011-0/+2
|
* feat: generate and install pkg-config filessternenseemann2022-05-011-0/+4
| | | | | We'll be able to use this for the Haskell bindings and will ease packaging in general.
* chore: port to mesonsternenseemann2022-05-019-108/+70
| | | | | | | | | This means that we can finally build a shared library correctly without to much hassle and will be able to use pkgsStatic as well (provided we fix the dependencies upstream). redo is nice, but, while its dependency tracking is better, you end up scripting a lot in a lot of different places.
* chore: ignore test font directorysternenseemann2022-05-011-1/+3
| | | | | I personally have unifont*.ttf and a few other test fonts in the fonts directory.
* chore: move package definition into an overlaysternenseemann2022-05-012-24/+36
| | | | | | | | | | | | This makes it easier to handle multiple packages in the repository so that independent Nix expressions can all use them without a lot of ugly passing `pkgs` around. By joining the nixpkgs fixpoint we can also experiment with `pkgsStatic` etc. later. BREAKING CHANGE: default.nix now expects the path to nixpkgs as `nixpkgsSrc` instead of a `pkgs` argument.
* chore: adapt to libschrift 0.10.1 HEAD mainsternenseemann2022-03-203-17/+12
| | | | | | sft_extents and sft_hmetrics have been unified into sft_gmetrics which requires a bit of code shuffling, but nothing too dramatic. As a result, we no longer support libschrift 0.10.0.
* fix(github): correct tag name for github-pages-deploy-actionsternenseemann2022-03-201-1/+1
|
* chore(github): update github actionssternenseemann2022-03-202-11/+10
| | | | | | - Update cachix/* to reflect breaking changes in Nix - Adjust github-pages-deploy-action for 4.0.0 breaking changes (mostly unnecessary field renames)
* chore(doc/web): depot 2021-03-11 -> 2021-09-18sternenseemann2021-09-191-1/+2
|
* feat(buchstabensuppe.h): don't depend on external headerssternenseemann2021-03-221-3/+3
| | | | Should make dynamic linking a lot more convenient.
* chore(default.nix): remove overlay for libschriftsternenseemann2021-03-111-15/+1
| | | | | | nixpkgs-unstable and nixos-unstable has libschrift 0.10.0 by now, so this isn't necessary anymore. We will run into breakage however with the next libschrift release it seems.
* doc(web): use htmlman from depot.users.sternisternenseemann2021-03-113-208/+35
| | | | | | | | | | | | In an effort to prevent me from copying the same piece of code into every repository of mine that contains a man page and to prevent me from coming up with hacky, specific solutions, I have cleaned up the piece of code I had for web documentation and added it to tvl's depot: https://code.tvl.fyi/about/users/sterni/htmlman?id=2cd2b58a04cd86e8bf1d72e9c0a67ad8c8e9c8dd It has less features (no html documentation…) and the URLs change, but this a good way forward, I think: The readme and similar stuff can be viewed on GitHub, we only really need man pages.
* doc(README): libschrift 0.10.0 has been releasedsternenseemann2021-01-291-3/+1
|
* feat(buchstabensuppe): port from stb_truetype to libschriftsternenseemann2021-01-1211-5096/+122
| | | | better error handling, cleaner code and better rendering result
* doc(flipdot): mention new functions in readmesternenseemann2020-12-251-2/+4
|
* fix(library): get rid of GNU C extensions to fix build with clangsternenseemann2020-12-256-31/+13
|
* chore(default.o.do): specify dependencies via obj filessternenseemann2020-12-241-5/+6
|
* feat(flipdot): add flipdot utils to libbuchstabensuppesternenseemann2020-12-246-38/+188
|
* feat(bs_render_utf8_string): set errno if rendering failssternenseemann2020-12-231-1/+4
|
* feat(buchstabensuppe): font fallbacksternenseemann2020-12-222-1/+19
| | | | | | | | | | By default we now try to fallback to rendering 0xFFFD if a glyph is missing from a grapheme in all fonts. Also introduces BS_RENDER_NO_FALLBACK flag to disable this behavior. Implementation reuses bs_render_grapheme_append (recursively) which is probably overkill, but is concise and prevents code duplication.
* doc(buchstabensuppe.h): minor steps towards doxygensternenseemann2020-12-202-1/+16
|
* fix(buchstabensuppe): check if font is regular filesternenseemann2020-12-161-0/+5
| | | | This avoids stb_truetype crashing.
* feat(bitmap): allow to specify fallback colorsternenseemann2020-12-163-9/+13
| | | | | | | This changes the prototype of bs_bitmap_get and bs_view_bitarray, but errno is still updated accordingly. fix(bs-renderflipdot): Background is all white using -S or -P with -i
* chore(default.o.do): add missing headers depssternenseemann2020-12-161-0/+7
|
* feat(bs-renderflipdot): scrolling and paging displaysternenseemann2020-12-162-34/+149
| | | | | | | TODO: - render_flipdot has become a somewhat mostrous function at least in terms of parameters and should be refactored. - render_flipdot's functionality could be interesting to expose in an additional mini library of some kind.
* feat(bitmap): make bs_view_t dimensions ints as wellsternenseemann2020-12-161-4/+4
|
* fix(bitmap): fix “resizing” if one dimension is zerosternenseemann2020-12-161-0/+1
|
* feat(doc): style blockquotesternenseemann2020-12-151-0/+6
|
* doc(bs-renderflipdot.1): make mandoc -Tlint happiersternenseemann2020-12-151-13/+25
|
* feat(bs-renderflipdot): specify preferred ip protocol versionsternenseemann2020-12-152-17/+30
|
* feat(doc): respect .gitignoresternenseemann2020-12-151-1/+7
|
* doc(README): link man pagesternenseemann2020-12-151-1/+2
|
* doc(bs-renderflipdot): fix exit status headingsternenseemann2020-12-151-1/+1
|
* fix(doc): fix table width in man page outputsternenseemann2020-12-151-10/+17
|
* fix(doc): path typosternenseemann2020-12-151-1/+1
|
* feat(doc): build web documentation and deploy to github pagessternenseemann2020-12-152-0/+220
| | | | fingers crossed this works first try
* fix(bs-renderflipdot): -f is requiredsternenseemann2020-12-151-1/+1
|
* doc(bs-renderflipdot): add man pagesternenseemann2020-12-152-0/+104
|
* fix(rendering): use baseline_y1 instead of pixel_size - baseline_y0sternenseemann2020-12-151-22/+33
|
* feat(bs-renderflipdot): add options for flipdot dimensionssternenseemann2020-12-151-32/+66
| | | | Improve usage message and arg parsing in general.
* fix(bs_bitmap_extend): fix crash with smaller than current sizesternenseemann2020-12-141-0/+3
|
* doc(bs_bitmap_extend): adapt to new behaviorsternenseemann2020-12-141-3/+3
|
* feat(bs_bitmap_new): accept init param like bs_bitmap_extendsternenseemann2020-12-142-4/+4
|
* feat(bs_bitmap_extend): don't fail if one dimension is smallersternenseemann2020-12-143-21/+4
| | | | | If the requested size is smaller than the actual size in a dimension or both, the actual size in the respective dimension(s) is kept.
* doc(bs-renderflipdot): add section about flipdot interactionsternenseemann2020-12-142-1/+33
|
* chore(demo): remove demo.exesternenseemann2020-12-143-56/+10
| | | | | bs-renderflipdot does the same, but more so it makes sense to remove demo.exe.
* feat(bitmap): add bs_view_bitarray producing flipdot binary formatsternenseemann2020-12-144-1/+275
| | | | | Also adds bs-renderflipdot.exe a demo binary which is able to render text on a flipdot display.