util/options.hh


Log

Author Commit Date CI Message
Behdad Esfahbod 4a1d4fbf 2025-08-17T17:12:22 harfbuzz.cc hb-shape (#5474) * [util] Respect HB_NO_FEATURES_H macro For builds using harfbuzz.cc and no features file. * Kill PACKAGE_NAME and PACKAGE_VERSION Remnants of autotools. * [BUILD.md] Update
Behdad Esfahbod d47a47e2 2025-03-27T13:59:08 [util] Make --help less verbose again Just the main page gets env-vars, exit-codes, and see-also.
Behdad Esfahbod bd5b8a1f 2025-03-26T21:12:27 [util] Report exit codes in help
Behdad Esfahbod e4410a85 2025-03-26T20:12:30 [util] Simplify envvar reporting
Khaled Hosny a6f56324 2025-03-27T03:12:15 [util] Fix Windows build Windows headers define `environ`.
Behdad Esfahbod 93288a1c 2025-03-26T18:46:35 [util] Fix crasher
Behdad Esfahbod a410a042 2025-03-26T18:09:07 [util] Add environment and see also sections Part of https://github.com/harfbuzz/harfbuzz/issues/5208
Behdad Esfahbod 4d83b238 2025-03-26T13:00:21 [util] Link to website for more info / reporting bugs Part of https://github.com/harfbuzz/harfbuzz/issues/5208
Behdad Esfahbod 75643768 2025-03-26T00:59:54 [util] List available shapers in --help-all Remove it from --version. Part of https://github.com/harfbuzz/harfbuzz/issues/5208
Behdad Esfahbod 29c800bd 2025-03-25T14:30:09 [util] Return diff values for diff failures Need documentation in the help output... Fixes https://github.com/harfbuzz/harfbuzz/issues/5164
Behdad Esfahbod c300bf00 2023-01-22T14:46:20 [hb-info] Move include around
Behdad Esfahbod 4ec3d2e3 2023-01-22T14:12:44 [hb-info List enum nicks in --list-names
Behdad Esfahbod 03e2e586 2023-01-20T11:24:35 [hb-view] Improve color parsing Now supports 3, 4, 6, 8 digit colors.
Behdad Esfahbod 0d98c79b 2022-12-29T21:07:38 [util] Centralize includes again
Behdad Esfahbod 969914b2 2022-12-29T21:01:16 [view] Clean up includes
Behdad Esfahbod cd77846b 2021-09-14T08:35:19 [util] Fix leak of an hb_font_t
Behdad Esfahbod 11b0b688 2021-08-12T11:38:28 [util/hb-subset] Pre-parse font-face so we can use it during main parsing
Behdad Esfahbod c45d2a9c 2021-08-12T11:17:26 [util] Allow setting cli summary / description
Behdad Esfahbod 4f3b7b70 2021-08-12T11:05:31 [util] Remove unused usage
Behdad Esfahbod c0ea4e2d 2021-08-11T18:30:08 [util] Use post_parse to validate
Behdad Esfahbod 7e4fcf1b 2021-08-11T12:12:49 [util] Rename add_main_options
Behdad Esfahbod 62fb1021 2021-08-11T12:03:07 [util] Move add_main_options() invocation
Behdad Esfahbod 7d2e9164 2021-08-07T13:38:19 [util] Move text options into text_options_t Remove now empty options.cc.
Behdad Esfahbod 93bc62e9 2021-08-07T13:13:58 [util] Move output options into output-options.hh
Behdad Esfahbod 5545eea7 2021-08-07T11:04:46 [util] Remove main_font_text_t class, use bare function
Behdad Esfahbod 58c22335 2021-08-06T23:45:59 [util] Move face/font options into face/font-options.hh
Behdad Esfahbod 6edd50ae 2021-08-06T23:36:45 [util] Move option_parser_t code into options.hh
Behdad Esfahbod 798bb89c 2021-08-06T23:29:29 [util] Move shape format options into shape-format.hh
Behdad Esfahbod c3599fde 2021-08-06T23:24:28 [util] Move shape options into shape-options.hh
Behdad Esfahbod cfb2d6ad 2021-08-06T23:14:30 [util] Move view options into view-options.hh
Behdad Esfahbod 167f58a2 2021-08-06T23:03:30 [util] Move subset options into subset-options.hh
Behdad Esfahbod 869e20e0 2021-08-06T18:09:31 [util] separate face options from font options
Behdad Esfahbod 71440dbd 2021-08-05T13:48:59 [util] Move font-size and upem to be extern variables
Behdad Esfahbod 463411a1 2021-08-05T11:44:35 [util] Remove unused option_group_t
Behdad Esfahbod 8588173e 2021-08-05T11:43:25 [util] Rework post_parse() handling
Behdad Esfahbod 3362b48f 2021-08-05T11:30:39 [util] Templatize add_group logic
Behdad Esfahbod fe90fbeb 2021-08-05T11:22:20 [util] Remove unused pre_parse callback logic
Behdad Esfahbod 09e4d7dd 2021-08-05T11:21:20 [util] Simplify output_options_t
Behdad Esfahbod e109f9a6 2021-08-05T11:05:51 [util] Collect cmdline arg options outside of constructor
Behdad Esfahbod e57dd668 2021-08-05T10:33:31 [util] Initialize struct members inline
Behdad Esfahbod 05cf8128 2021-08-01T07:59:25 [util/hb-shape] Fix use of EOF as end-of-line EOF is -1, which was being treated as a valid char (255). Use int instead.
Garret Rieger f9d8e4a9 2021-07-29T15:25:41 [subset] switch ..._set_flags to not take a mask.
Garret Rieger 3d534b14 2021-07-29T11:52:14 [subset] convert subset input flags into bit flags. Store the flags in a bit set. Updates the public api to work with the bit set directly.
Behdad Esfahbod d7541f7b 2021-07-29T00:09:24 [util/hb-shape] Free cached resources on termination
Behdad Esfahbod ad03f34d 2021-07-28T19:05:12 [util/hb-shape] Cache blob/face in batch mode
Behdad Esfahbod 5dae8297 2021-07-28T11:35:40 [util] Minor followup to https://github.com/harfbuzz/harfbuzz/pull/3083
Khaled Hosny 50379fbb 2021-07-28T16:13:49 [util] Don’t split text at new lines in batch mode In batch mode (which is used for testing) we are probably not interested in splitting text into lines as we could have split the string into different tests. This fixes a bunch of AOTS tests that use newlines as input.
Garret Rieger 1bb00cd5 2021-05-26T14:18:32 [subset] add num-iterations flag to util/hb-subset.
Simon Cozens a0203a28 2020-09-17T16:49:59 Use hb_buffer_serialize to trace in utils
Behdad Esfahbod 069c5de9 2020-05-14T18:58:53 [util/hb-view] Add --font-extents Fixes https://github.com/harfbuzz/harfbuzz/issues/2402
Evgeniy Reizner b79ceac3 2019-12-15T16:50:01 Prefer UINT_MAX instead of uint overflow. Also, prefer HB_FEATURE_GLOBAL_START and HB_FEATURE_GLOBAL_END.
Ebrahim Byagowi a0b4ac4d 2019-08-24T17:57:14 Turn 8 spaces to tab across the project According to the current code style of the project
Bruce Mitchener 659eeddb 2019-06-03T22:31:50 Use C++11 override keyword.
Garret Rieger 67064294 2019-05-16T15:13:39 [subset] Add drop-tables option to hb-subset util.
Garret Rieger 0ff3618c 2019-05-17T15:30:01 [subset] Use hb_subset_input_t inside of subset_options_t so that input defaults are shared between the library and cli.
Qunxin Liu e501ea14 2019-04-05T10:05:55 [subset] Subset name table step 3, add --nameids option to guide the selection of which name records to keep in the subset method.
Garret Rieger 490d52f9 2019-01-28T17:43:42 [subset] Add retain-gids option to hb-subset executable.
Behdad Esfahbod 60022ecc 2019-01-26T14:04:51 Fix -Wcast-function-type warnings in util/ with gcc 4.8
Ebrahim Byagowi e4120085 2018-12-17T21:31:01 Remove redundant void from C++ sources (#1486)
Behdad Esfahbod 3f8e7a98 2018-12-12T11:32:57 [util/hb-subset] Add --layout to keep GDEF/GSUB/GPOS Will become default and option removed in the future.
Michiharu Ariza 43ee0e4d 2018-11-06T09:57:17 Merge branch 'master' into cff-subset
Behdad Esfahbod 3ec2e4fa 2018-11-06T10:49:19 [util] Don't terminate string after a a 0 in -u Fixes https://github.com/harfbuzz/harfbuzz/issues/1361
Michiharu Ariza e600e544 2018-11-01T16:13:56 Merge branch 'master' into cff-subset
Michiharu Ariza d56e338a 2018-10-31T22:30:34 CFF1 no-desubroutinize + no-hinting no-desubroutinize option is disabled for now code cleanup (esp. CFF1 width handling) bug fixes & renaming
Behdad Esfahbod 83a61273 2018-10-30T01:24:23 [util] Minor
Ebrahim Byagowi f7a08cd4 2018-10-30T11:29:09 Fix extra semicolon issues and test that on CI (#1330)
Behdad Esfahbod 6131fb62 2018-10-30T00:38:01 [util] Don't close stdin/stdout
Khaled Hosny cf92cb7e 2018-10-19T22:21:39 Use g_strdup instead of strdup Cygwin does not seem to have strdup.
Behdad Esfahbod 1e8fdd28 2018-10-10T16:32:35 Remove HAVE_OT We never tested compiling without it. Just kill it. We always build our own shaper.
Behdad Esfahbod e42cd58c 2018-10-07T20:46:11 Rename invisible_codepoint to invisible_glyph in API Deleted recently added API: hb_buffer_set_invisible_codepoint() hb_buffer_get_invisible_codepoint() hb-shape / hb-view --invisible-codepoint New API: hb_buffer_set_invisible_glyph() hb_buffer_get_invisible_glyph() hb-shape / hb-view --invisible-glyph Fixes https://github.com/harfbuzz/harfbuzz/issues/1216
Behdad Esfahbod 71b65eb2 2018-10-07T18:41:52 Add API for setting invisible-codepoint Fixes https://github.com/harfbuzz/harfbuzz/issues/1216 New API: hb_buffer_set_invisible_codepoint() hb_buffer_get_invisible_codepoint() hb-shape / hb-view --invisible-codepoint
Behdad Esfahbod b5285b34 2018-09-30T12:23:01 [util] Remove unneeded virtual clang warning: ../../util/options.hh:72:13: warning: destination for this 'memset' call is a pointer to dynamic class 'option_parser_t'; vtable pointer will be overwritten [-Wdynamic-class-memaccess] memset (this, 0, sizeof (*this)); ~~~~~~ ^ ../../util/options.hh:72:13: note: explicitly cast the pointer to silence this warning memset (this, 0, sizeof (*this)); ^ (void*)
Behdad Esfahbod 89ed040b 2018-09-30T06:06:26 [util] Fix more non-virtual-destructor warnings
Behdad Esfahbod e910a1ae 2018-09-30T05:46:20 [util] Add empty virtual destructor to option_group_t From clang -Weverything bot: ./options.hh:57:8: warning: 'option_group_t' has virtual functions but non-virtual destructor [-Wnon-virtual-dtor] struct option_group_t ^
Behdad Esfahbod 2382dd07 2018-09-30T05:54:47 Minor
Behdad Esfahbod f90bab85 2018-09-11T14:21:15 [util] Add --ft-load-flags Useful for performance testing. Not hooked to cairo yet. Just changes shaping, not rasterization.
Behdad Esfahbod c77ae408 2018-08-25T22:36:36 Rename hb-*private.hh to hb-*.hh Sorry for the noise, downstream custom builders. Please adjust.
Ebrahim Byagowi d0c2889d 2018-06-18T19:59:33 Revert file blob sanitization and index checking (#1062) As https://github.com/harfbuzz/harfbuzz/pull/1059#issuecomment-397912812 we like to still work with blobs that harfbuzz itself can't handle directly that are failing sanitization currently apparently.
Ebrahim Byagowi aa0c5df4 2018-06-17T16:49:34 Fix reading fonts from stdin (#1060) We were passing the font path directly to freetype so rendering was broken when we are getting the font from stdin. This fixes it by using FT_New_Memory_Face instead. This fixes: * build/util/hb-view /dev/stdin text < font.ttf * build/util/hb-view - text < font.ttf * cat font.ttf | build/util/hb-view - text but doesn't work on * cat font.ttf | build/util/hb-view /dev/stdin text which I will try to fix separately.
Ebrahim Byagowi ce17340b 2018-04-20T10:29:06 Add hb_blob_create_from_file, a new API (#926)
rsheeter 4a1d51ef 2018-02-26T20:23:41 Merge pull request #818 from googlefonts/drophints [subset] Drop hints
Ebrahim Byagowi bb82f013 2018-02-25T12:30:33 [aat] trak sanitization
Rod Sheeter d78393b5 2018-02-23T17:53:26 Merge branch 'master' of https://github.com/harfbuzz/harfbuzz into drophints
Ebrahim Byagowi 4f6f7c3b 2018-02-23T02:54:12 [util] Implement ppem/ptem on hb-{shape,view} (#811)
Rod Sheeter 74e0c13a 2018-02-21T11:19:18 [subset] drop hint tables if so flagged. Still need to dump glyf instructions.
Rod Sheeter 0bd100e1 2018-02-21T10:34:00 [subset] add --hinting flag
Behdad Esfahbod 194140d3 2018-02-08T16:27:57 [util] Minor
Behdad Esfahbod 3b1e97f3 2018-01-10T03:35:20 Add HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES New API: HB_BUFFER_FLAG_REMOVE_DEFAULT_IGNORABLES hb-shape / hb-view --remove-default-ignorables One more text-rendering-tests test passing. Eleven failing.
Behdad Esfahbod 71fd6325 2018-01-10T02:20:14 Add option to buffer serialization to not output glyph advances When advances are not printed, glyph offsets reflect absolute glyph positions. New API: HB_BUFFER_SERIALIZE_FLAG_NO_ADVANCES hb-shape --no-advances
Behdad Esfahbod 17f40b7c 2017-10-27T09:22:30 Include hb-private.hh more consistently Part of fixing https://github.com/behdad/harfbuzz/issues/585
Behdad Esfahbod dbdbfe3d 2017-10-15T12:11:08 Use nullptr instead of NULL
Behdad Esfahbod dad431e7 2017-10-15T10:55:32 [util] Include hb-private.hh Simplifies compatibility issues by centralizing all boilerplate code in hb-private.hh.
Behdad Esfahbod d03f11f2 2017-09-04T20:14:13 Fix buffer_diff for empty buffers If buffers are empty, content type should be ignored. This fixes last of the failing tests: fuzzed.tests. Green again!
Behdad Esfahbod b262ebcc 2017-08-30T17:25:10 [util] Fix cluster sweeping during --verify If *I* get this wrong in 2017, I have no idea how others get their head around cluster math... Fixes tests/arabic-fallback-shaping.tests
Behdad Esfahbod 69d701b0 2017-08-30T17:07:29 [util] When --verify fails, return reconstructed shape results
Behdad Esfahbod 099472e0 2017-08-30T16:45:06 hb_buffer_diff() tweak I like to have a mode where CONTAINS_NOTDEF and CONTAINS_DOTTEDCIRCLE are not returned. Abused a value of -1 for that. hb-shape now uses it. Fixes two of the six tests failing with --verify in test/shaping/run-tests.sh.
Behdad Esfahbod a9e52a1a 2017-08-15T17:30:18 [util] Prefix trace lines with "trace:", and error lines with "error:"
Behdad Esfahbod 7ea10c35 2017-08-15T17:12:28 [util] Respect eot/bot in safe-to-break test; hook up hb_buffer_diff()
Behdad Esfahbod a88e2a73 2017-08-14T14:49:21 [util] Fix leaks
Behdad Esfahbod 05fabbd0 2017-08-11T19:51:06 [unsafe-to-break] Towards verifying unsafe-to-break in --verify We break and shape fragments and reconstruct shape result from them. Remains to compare to original buffer. Going to add some buffer comparison API and use here, instead of open-coding.