Feature map
Every feature of forbear, where the tutorial teaches it and where the reference describes it.
| Feature | How | Tutorial | Reference |
|---|---|---|---|
| A progress bar | initialize, start, update | 1 | The bar object |
| Range of the bar | min_value, max_value | 1 | Limitations |
| Prefix and suffix | prefix_string, suffix_string | 2 | The line |
| Prefix or suffix changed while running | bar%prefix%string, bar%suffix%string | cookbook | The line |
| Brackets | bracket_left_string, bracket_right_string | 2 | The line |
| Bar characters and width | filled_char_string, empty_char_string, width | 2 | The line |
| Unicode strings | UTF-8 literals or UCS4 kind | 2 | Character kinds |
| Colours and styles | <element>_color_fg, _color_bg, _style | 3 | Colours and styles |
| 24-bit colours | '#rrggbb' for any colour keyword | 3 | 24-bit colours |
| Colour zones | bar_zones | 11 | Zones |
| Rising ramp | bar_profile='ramp' | 11 | Profiles |
| Seven-segment digits | digits, digits_unlit_color | 11 | Segment digits |
| Dashboard themes | theme | 11 | Themes |
| Scanner (pulse with a trail) | pulse_trail | 11 | Pulse trail |
| Smooth bar | partial_blocks | 2 | The line |
| Progress in percent | add_progress_percent | 4 | initialize |
| Progress count | add_progress_count | 4 | initialize |
| Progress speed | add_progress_speed | 4 | Number formats |
| Estimated time of arrival | add_eta, smoothing | 4 | update |
| Start and end time | add_date_time | 4 | initialize |
| Summary at the end | add_summary | 4 | initialize |
| Scale | add_scale_bar | 4 | Number formats |
| Spinners | spinner_string | 5 | Spinners |
| Spinner or percentage alone | width=0 | 5 | The line |
| Lines above the bar | write | 6 | write |
| Output of a library | suspend, resume | 6 | suspend and resume |
| A message at the end of the bar | update(message=) | 6 | update |
| Drawing rate | min_interval, frequency, FORBEAR_MIN_INTERVAL | 6 | update |
| Output unit | output_unit | cookbook | initialize |
| Nested bars | position | 7 | initialize |
| Plain log off a terminal | interactive, FORBEAR_INTERACTIVE | 8 | Terminals and logs |
| A log line every so often | log_interval, FORBEAR_LOG_INTERVAL | 8 | How often the bar is drawn |
| Cursor left visible | hide_cursor | If the program stops | |
| Bars off | disabled, FORBEAR_DISABLE | 8 | Terminals and logs |
| Terminal state | is_stdout_locked | is_stdout_locked | |
| Reusing or copying a bar | destroy, initialize again, = | cookbook | destroy |
| Layout template | template | 9 | Layout templates |
| Fields of the program | field_object, add_field | 9 | Fields of the program |
| Loops of unknown length | indeterminate, finish | 10 | finish |
| A loop left before its end | finish | 10 | finish |
Not available: a bar that runs backwards, a spinner animated by a clock of its own (Fortran has no portable threads).