`config.json` has been reshuffled so that entries are now represented as a dict with `type` as long as their respective options as keys.
+ Entries order can be rearranged from configuration (closes #57)
+ Entries now have an extra `options` attribute, which contains their own settings
+ Entries can be specified multiple times in the configuration with each one having independent options from the others
+ Implements temporary entry hiding (`disabled` option field)
+ Defaults entry `name` attribute to instantiated class name
+ Allows entry renaming (`name` option field)
+ Adapts documentation of new configuration layout in README
* Various miscellaneous changes to support the new `entry_options` attribute.
* `LanIp` and `WanIp` internally renamed to `LanIP` and `WanIP` respectively
* Sets `Disk.get_df_output_dict` as private method
* Fixes `Raspberry` spelling :)
- Stops providing a global `Configuration` reference to entries (only one to `default_strings` for i18n)
- Sets `use_unicode` option as `Terminal`-specific
- Sets `honor_ansi_color` option as project-global
Co-authored-by: Samuel FORESTIER <dev@samuel.domains>
This patch implements a `-j` option allowing data to be output in JSON format.
Achieving this required Archey's internals to be reworked, allowing more complex operations in entries to be performed and keeping `Output` uncoupled from them.
Co-authored-by: Michael Bromilow <12384431+ingrinder@users.noreply.github.com>
> Closes #61 (multi-GPU support)
* Fixes GPU display order (new order: 3D -> VGA -> Display)
* Adds support for multiple GPUs displayed at once.
* Adds option for multi-line GPU output with new configuration option.
* Modifies `Output` to havean `append` method prototype similar to `list.append`.
* Automatically sets entries' outputs as 'Not detected' when their `value` is falsy.
Co-authored-by: Michael Bromilow <12384431+ingrinder@users.noreply.github.com>
+ Fixes #63 (lines-overlapping in case of undersized terminal)
+ Makes Archey entries inherit from a base (abstract) `Entry` class
+ Allows more than 18 entries to be included in final output