Commit Graph

83 Commits

Author SHA1 Message Date
李通洲 f4c43abbf7 Display (Windows): adds VRR status detection support 2025-10-05 09:17:30 +08:00
李通洲 505ff6ff65 Global: renames fractionTrailingZeros enum to always/never for consistance 2025-09-05 12:27:03 +08:00
李通洲 21b15ee944 Display: rearranges default format; removes scaled resolution 2025-09-02 14:15:37 +08:00
李通洲 3b5e9c74d6 Modules: return bool to indicate whether the detection is succeeded 2025-08-18 13:38:30 +08:00
李通洲 fa4e11c73b JsonConfig: write all flags when generating config file 2025-08-05 16:47:48 +08:00
李通洲 75d2c668d0 Modules: refactor module option handling for static allocation
Moves module option structs out of global config and removes dynamic allocation, using static buffers and size assertions for safer, simpler management.

Refactors module initialization and destruction to work with isolated option structs, eliminating the need for the previous modules container and related code.

Unifies module option header usage and updates detection logic to leverage statically-sized option buffers, improving encapsulation and maintainability.

Simplifies module function signatures and reduces coupling between modules and config.

Enhances future extensibility and reliability by enforcing max size constraints and removing unnecessary indirections.
2025-08-04 14:46:01 +08:00
李通洲 559082806b Modules: export module info 2025-08-04 00:06:28 +08:00
李通洲 6f8d276545 Modules: add init and destroy option callbacks to module info 2025-08-03 18:40:53 +08:00
李通洲 c491c9e8fc Display: add compactMode: null; improve json schema 2025-08-03 10:22:32 +08:00
李通洲 094d736d38 Modules: remove all parseCommandOptions and related stuff 2025-08-03 10:22:32 +08:00
李通洲 980e552eba Display: allow "compactType": null; improve json schema 2025-08-03 10:22:32 +08:00
李通洲 0b02543ef2 JsonConfig: refactor JSON key handling to improve safety and consistency
Also make keys case-sensitive
2025-08-02 18:51:03 +08:00
李通洲 a0174e8666 Global: add new unit related options
1. `--<module>-space-before-unit`
2. `--duration-abbreviation`
3. various code refactoring and cleanups
2025-07-30 15:03:23 +08:00
李通洲 c79b67efc1 Modules: don't report errors when condition key is set 2025-07-18 16:16:38 +08:00
Carter Li 599e0d393d Display: use height to calculate scale factor
Seems more accurate
2025-05-01 21:28:04 +08:00
Ng Zhun Onn 292fa0686f Display: capitalize {type}'s output (#1543)
* Display: capitalize {type}'s output

* Update display.c

* Update json_schema.json

---------

Co-authored-by: Carter Li <CarterLi@users.noreply.github.com>
2025-02-07 21:48:31 +08:00
李通洲 9a36d63d18 Global: refactor code of -h <module>-format 2024-12-11 10:47:02 +08:00
李通洲 601b9706b5 Display: report ppi to 0 if screen size is not available 2024-11-21 21:44:05 +08:00
李通洲 cee880cb83 Display: print preferred resolution & refresh rate in custom format
Fix #1406
2024-11-20 16:39:01 +08:00
李通洲 925c3471c2 Display: add scale factor in custom format 2024-11-20 16:39:01 +08:00
Carter Li fa9290088d Display (Linux): detect preferred resolution and refresh rate 2024-11-20 16:38:53 +08:00
李通洲 dcdf2b570e Display: concat flags 2024-11-15 20:01:56 +08:00
李通洲 97e1b987dd Global: pack all enums and make flag enums unsigned 2024-11-14 11:00:44 +08:00
李通洲 211fd4b197 Display: add hdr-compatible
Fix #1376
2024-11-05 09:59:25 +08:00
李通洲 fd26373c8f Global: overall optimization 2024-10-26 11:42:07 +08:00
李通洲 b257134d74 Chore: introduce macro ARRAY_SIZE 2024-10-18 16:44:41 +08:00
Carter Li 71a8978f41 Display: report platform api used for detection 2024-10-14 14:42:11 +08:00
李通洲 18be6c8fd1 Display: don't use non-ascii charactors
Which cannot be displayed in Linux console
2024-09-30 23:42:08 +08:00
李通洲 5bdae7afc3 Display: display ppi in integer 2024-09-30 23:40:47 +08:00
李通洲 fb0a18dc82 Display (macOS): merge monitor module features 2024-09-30 20:16:24 +08:00
Carter Li bd2b002d14 Display: always print inches in integer 2024-09-22 18:13:10 +08:00
李通洲 37cc2c9c1b Globals: use generic selection when passing format args 2024-09-04 08:53:16 +08:00
Carter Li d15d4c621c Display: honor preciseRefreshRate in custom format
Fix #1211
2024-08-25 18:29:57 +08:00
李通洲 dd66626165 Display: remove detection of WCG enabled 2024-08-14 08:32:13 +08:00
李通洲 3b3c1a9f63 Global: support display predefined icon in custom key format 2024-07-24 14:27:46 +08:00
李通洲 57ffe3bad2 Fastfetch: add icons 2024-07-23 23:02:35 +08:00
李通洲 9559db556d Display: print [HDR] if enabled 2024-07-23 09:27:07 +08:00
李通洲 4fe1bb0b7e Display: detect if WCG enabled 2024-07-20 11:52:07 +08:00
李通洲 672bf0ef54 Display: update JSON output structure 2024-07-18 22:51:46 +08:00
李通洲 c3de293450 Display: print more information 2024-07-18 16:43:19 +08:00
李通洲 d869164d6b Display: show inches instead of full size
Which is shorter
2024-07-16 22:10:05 +08:00
李通洲 c0781dd5f8 Display: print physical size 2024-07-16 16:11:26 +08:00
Carter Li e786cd5d33 Display: detect physical width and height 2024-07-11 20:33:25 +08:00
Carter Li c8451cab52 Global: support for named format arguments
Fix #796
2024-05-28 10:23:29 +08:00
李通洲 217f98a36c Global: tidy json result formats 2024-05-03 13:56:19 +08:00
李通洲 7acdaebee4 Printing: merge ffPrintError and ffPrintErrorString 2024-03-07 11:10:18 +08:00
李通洲 6dcfb6b88f Fastfetch: fully resolve the format arg num issue
Ref: #749
2024-03-07 10:47:28 +08:00
李通洲 5fb4b6dc04 Display: --display-compact-type support *-with-refresh-rate
Ref: https://github.com/fastfetch-cli/fastfetch/discussions/732
2024-02-22 18:45:57 +08:00
李通洲 5e7cfe2976 Display: add option --display-order 2024-02-22 10:47:13 +08:00
李通洲 730c0d1c92 Fastfetch: print module description for --list-modules 2023-11-17 14:12:57 +08:00