Commit Graph

41 Commits

Author SHA1 Message Date
Carter Li 3196f5efaa chore: adds defaultOrder to every module's definition 2026-08-04 09:58:31 +08:00
李通洲 61656a1a7a Global: replaces __attribute__ to C23 [[attribute]] 2026-07-11 08:14:21 +08:00
Carter Li 873454191f Global: uses typed enums 2026-07-10 18:09:46 +08:00
Carter Li f6a363f7ad Global: unifies GCC attributes usage 2026-04-09 20:02:04 +08:00
李通洲 831659966f Style: adds Cpp11BracedListStyle: Block 2026-03-31 14:20:21 +08:00
李通洲 e0eba8ce21 Chore: run clang-format
```bash
find . -type f \( -name "*.c" -o -name "*.h" -o -name "*.cpp" -o -name "*.hpp" \) ! -path "src/3rdparty/*" -print0 | xargs -0 clang-format -i
```
2026-03-29 10:03:32 +08:00
Carter Li d60b25e424 Refactor: renames src/util to src/common 2026-01-06 09:48:38 +08:00
李通洲 1e43e35857 Chore: merges common/* into util/* 2026-01-05 17:54:41 +08:00
李通洲 32dcf9487f Option: adds configurable spacing between icon and string keys
Fixes #2004
2025-10-13 09:54:34 +08:00
李通洲 3b5e9c74d6 Modules: return bool to indicate whether the detection is succeeded 2025-08-18 13:38:30 +08:00
李通洲 329cb229f8 Chore: remove unused functions 2025-08-10 23:15:13 +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
李通洲 6f8d276545 Modules: add init and destroy option callbacks to module info 2025-08-03 18:40:53 +08:00
李通洲 094d736d38 Modules: remove all parseCommandOptions and related stuff 2025-08-03 10:22:32 +08:00
李通洲 9a36d63d18 Global: refactor code of -h <module>-format 2024-12-11 10:47:02 +08:00
李通洲 97e1b987dd Global: pack all enums and make flag enums unsigned 2024-11-14 11:00:44 +08:00
李通洲 9b038dc848 Global: fix JSON option modules.keyIcon doesn't work 2024-07-24 15:38:54 +08:00
李通洲 bee7c62000 Global: add option --<module>-key-icon 2024-07-24 14:05:46 +08:00
李通洲 8fa4d7ae6e Fastfetch: add option --key-type <enum> 2024-07-24 11:13:37 +08:00
李通洲 57ffe3bad2 Fastfetch: add icons 2024-07-23 23:02:35 +08:00
Carter Li 81e0af8999 Format: support named color placeholders 2024-05-28 14:03:51 +08:00
李通洲 19b8849bfc Fastfetch: remove the long deprecated flag --set & `-set-keyless 2024-05-08 11:06:03 +08:00
李通洲 730c0d1c92 Fastfetch: print module description for --list-modules 2023-11-17 14:12:57 +08:00
李通洲 ec87790e4f Global: init support for JSON config file migration (WIP) 2023-10-23 16:17:07 +08:00
李通洲 824ada49b6 Global: :%s/generateJson/generateJsonResult/g 2023-10-23 13:32:39 +08:00
李通洲 12208b2c7c Global: improve support of --help *-format
Also fix some bugs found when refactoring
2023-10-07 13:40:40 +08:00
李通洲 bde2d67f25 CMake: disable UBSan 2023-09-26 08:58:16 +08:00
李通洲 14f26879de Global: init --format json support (#527) 2023-09-05 15:29:46 +08:00
李通洲 c7f0172b25 CMake: Add option ENABLE_SYSTEM_YYJSON
Fix: #525
2023-08-19 11:11:50 +08:00
李通洲 67fe1e66b5 Windows: fix build 2023-08-17 17:15:30 +08:00
李通洲 e5e4c8bf88 Fastfetch: refactor command line option parsing code
1. improve performance
2. remove `-c`
3. rename `--recache` to `--logo-recache`, and remove `-r`
2023-08-17 16:10:05 +08:00
李通洲 c888254f70 Modules: major code refactor
Also fix some bugs found when refactoring
2023-08-17 16:10:02 +08:00
李通洲 8ed28673a9 Global: support --module-key-width per module 2023-08-16 13:21:15 +08:00
李通洲 ab3290d9cb WMI (Windows): add --wmi-timeout option 2023-06-25 14:33:13 +08:00
Carter Li 36a2fee9d5 Global: support --*-key-color 2023-06-18 12:32:47 +08:00
Carter Li 2998b1f02e Chore: remove --*-error-format 2023-06-18 11:14:50 +08:00
李通洲 6d6eee9968 JsonConfig: support Logo config (WIP) 2023-06-10 21:35:45 +08:00
李通洲 e812380f20 Logo: move logo command line option parser to a separate file
Prepare for JSON config support
2023-06-10 09:15:15 +08:00
李通洲 04180a7389 Display: init support of JSON config 2023-06-10 09:15:15 +08:00
李通洲 4e3e469ba8 Battery: major code refactoring
ditto
2023-06-10 09:15:15 +08:00
李通洲 6cb073e6a5 OS: major code refactoring
Split `fastfetch.h` to make it possible to print OS module with different options
2023-06-10 09:15:15 +08:00