Add user-configurable categories via TOML config#41
Conversation
Introduces support for customizing file categories and extensions through a user-defined ~/.zpace.toml file. Adds a sample configuration file, updates documentation and changelog, removes Fonts from default categories, and implements logic in config.py to merge user settings with defaults. Also adds comprehensive unit tests for configuration loading and updates dependencies to include tomli for Python <3.11.
⸜(。˃ ᵕ ˂ )⸝♡ Thank you for opening this Pull Request, AzisK!( ˶°ㅁ°) !! It's Trivia Time!Here are 3 trivia questions to keep you entertained while CI runs. 🧩 Q1: When was Cadillac founded?A) 1964 🧩 Q2: Who was world chess champion between 1894 and 1921A) José Raúl Capablanca 🧩 Q3: What is a Burgee?A) A window
|
Code Review1. New Features
2. Implementation Details
3. Unit Tests (Lines 760–865 in ):
4. Updates to Documentation (README and CHANGELOG)
5. Dependency Updates (pyproject.toml and ):
6. Miscellaneous:
SummaryThis is an extremely well-executed PR! You’ve clearly thought through multiple edge cases, provided a complete set of unit tests, implemented well-written and highly readable code, maintained backward compatibility, and updated documentation for user friendliness. Minimal improvements to consider:
Great work! This will significantly enhance the usability of Zpace. Keep up the excellent work; your thoroughness and attention to detail really set you apart! 🚀 |

Introduces support for customizing file categories and extensions through a user-defined ~/.zpace.toml file. Adds a sample configuration file, updates documentation and changelog, removes Fonts from default categories, and implements logic in config.py to merge user settings with defaults. Also adds comprehensive unit tests for configuration loading and updates dependencies to include tomli for Python <3.11.
Features
~/.zpace.tomlextensions: Replace all extensions for a categoryadd: Add extensions to an existing categoryremove: Remove extensions from a category.zpace.toml.sampletemplate fileConfiguration
Documentation