You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Adopting YAML for configuration files offers several advantages:
Complex Configuration Structure: Sioyek's configuration involves numerous settings, including colors, paths, user preferences, and additional commands. YAML's hierarchical structure and support for nested data make it well-suited for representing the intricate configuration schema that Sioyek requires.
Readability for Users and Developers: Sioyek's user base likely includes both end-users and developers. YAML's human-readable syntax makes it easy for both groups to understand and modify configurations. This readability is crucial for users tweaking their settings and developers maintaining the codebase.
Flexibility in Data Types: Sioyek's configurations encompass a variety of data types, such as strings, integers, floats, and colors. YAML's support for diverse data types allows for a more natural representation of these configurations, enhancing both clarity and expressiveness.
Ease of Integration into C++ Code: YAML has well-supported libraries in various programming languages, including C++. Integrating a YAML parser into the C++ codebase of Sioyek would be straightforward, simplifying the process of reading and writing configuration files.
Community Adoption: YAML is a well-established and widely adopted configuration format in the software development community. Leveraging a popular standard ensures that Sioyek users and contributors are already familiar with the chosen configuration format.
Future Extensibility: YAML's readability and flexibility make it a future-proof choice. If Sioyek evolves and introduces new configuration options or features, YAML can easily accommodate these changes without sacrificing human readability.
As far as I can tell, this mainly affects the config.h and config.cpp files.
Why not?
Large breaking change
Would need to update a lot of documentation
Could use JSON instead which could potentially be faster but less readable (but why? you're not working with javascript)
(→ do in next release?)
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Why?
Adopting YAML for configuration files offers several advantages:
Complex Configuration Structure: Sioyek's configuration involves numerous settings, including colors, paths, user preferences, and additional commands. YAML's hierarchical structure and support for nested data make it well-suited for representing the intricate configuration schema that Sioyek requires.
Readability for Users and Developers: Sioyek's user base likely includes both end-users and developers. YAML's human-readable syntax makes it easy for both groups to understand and modify configurations. This readability is crucial for users tweaking their settings and developers maintaining the codebase.
Flexibility in Data Types: Sioyek's configurations encompass a variety of data types, such as strings, integers, floats, and colors. YAML's support for diverse data types allows for a more natural representation of these configurations, enhancing both clarity and expressiveness.
Ease of Integration into C++ Code: YAML has well-supported libraries in various programming languages, including C++. Integrating a YAML parser into the C++ codebase of Sioyek would be straightforward, simplifying the process of reading and writing configuration files.
Community Adoption: YAML is a well-established and widely adopted configuration format in the software development community. Leveraging a popular standard ensures that Sioyek users and contributors are already familiar with the chosen configuration format.
Future Extensibility: YAML's readability and flexibility make it a future-proof choice. If Sioyek evolves and introduces new configuration options or features, YAML can easily accommodate these changes without sacrificing human readability.
As far as I can tell, this mainly affects the config.h and config.cpp files.
Why not?
(→ do in next release?)
Beta Was this translation helpful? Give feedback.
All reactions