Comments (2)
@paul-chambers I never expect that some day I will have an interview with some one asking questions in Argtable3. Now I know how small the world is, and I am glad that I always try my best to answer questions in GitHub. 😄
from argtable3.
@paul-chambers There are several issues to combine both config file parsing and command line parsing in a single library. First, it will make the library too large for people who only want to use the config file parsing API or the command line parsing API of the library. Second, there are already too many config file formats, and creating a new one seems doesn't help the community too much. Third, if we want to build in any existing config file parser, people who use other formats won't be comfortable.
I think config file parsing and command line parsing are better separated, because you'll have freedom to choose any config file parsing library you like. Besides, it should not be too hard to achieve what you want.
For example, you can load the config file and put all the keys and values in an internal dictionary. At the same time, you can override any key by specifying the new value in command-line option:
$ myprog --config myconfig.json --set key=new_value
The new value will override the old value in the internal dictionary. That's how I implement my applications. I've combined the power of argtable3 and many config file parsers, and I'm glad that I can choose whatever config parser I need for a specific project.
from argtable3.
Related Issues (20)
- Missing some information about the differences between v2 and v3 HOT 1
- When to release the new version? HOT 2
- Implicit declaration of getenv_s() HOT 4
- https issues on https://argtable.org/ - https://www.argtable.org/ fine HOT 1
- Add doc/examples to explain how to implement sub-commands
- Enhance CMake scripts to take advantage of vcpkg's manifest mechanism HOT 2
- clang vs gcc attributes HOT 3
- Static analyser: NULL pointer passing. HOT 3
- Use CodeQL to scan security vulnerabilities
- Table entries with empty glossary strings may displayed. HOT 2
- What is the recommended way to get all the args that have not been matched HOT 2
- index out of bound HOT 1
- arg_print_formatted_ds does not reset column count when reaching newline HOT 2
- Minus symbol stripped from negative numbers HOT 2
- Missing include install path in CMake config export HOT 2
- CMake not including header on static build HOT 1
- `-Wpedantic` should be used conditonally on GCC version HOT 7
- Add project to meson WrapDB HOT 6
- Expose arg_basename function as part of the API HOT 2
- Documentation requeset HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from argtable3.