-
Notifications
You must be signed in to change notification settings - Fork 2
/
TODO
37 lines (21 loc) · 1.17 KB
/
TODO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Things to do before 1.3:
- Mimick cv_middle from existing entries, so that newly added
variables get a proper spacing between variable name and value.
- Mimick cv_after from existing entries, so that newly added
variables get a semicolon, if the rest of the file uses it.
- Add confctl_var_to_line().
- Add confctl_var_find_one(struct confctl_var *parent, const char *path)
- Add confctl_var_move_after(struct confctl_var *cv, struct confctl_var *sibling);
- Build shared library.
- Consider adding some automatic quote handling.
Things to do before calling it done:
- Properly bail out on EOF without closing curly brackets.
- Consider rewriting the parser using regexps; it's getting complicated.
- Currently we always treat names without values as names,
so things like 'meh { 1; 2; 3 }' became 'meh.1=\n meh.2\n meh.3'.
Add an option to make them as values without names, like this:
'meh=1\n meh=2\n meh=3'. This would make nicer output for
JunOS-like config.
- The whole cv_reindent() looks fishy.
- We can't handle '/* comments */' in the value, like this: 'name val /* comment */ ue;'.
- We don't handle '/* comments */' between name and value.