aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'roverlay/config/tree.py')
-rw-r--r--roverlay/config/tree.py16
1 files changed, 10 insertions, 6 deletions
diff --git a/roverlay/config/tree.py b/roverlay/config/tree.py
index 707aa8a..adcdcde 100644
--- a/roverlay/config/tree.py
+++ b/roverlay/config/tree.py
@@ -189,13 +189,17 @@ class ConfigTree ( object ):
var_indent = indent + '* '
if root is None:
return "%s%s is unset\n" % ( var_indent, name )
- elif len ( root ) == 0:
- return "%s%s is empty\n" % ( var_indent, name )
elif isinstance ( root, dict ):
- extra = ''.join ( [
- self._tree_to_str ( n, r, level+1 ) for r, n in root.items()
- ] )
- return "%s%s {\n%s%s}\n" % ( indent, name, extra, indent )
+ if len ( root ) == 0:
+ return "%s%s is empty\n" % ( var_indent, name )
+ else:
+ extra = ''.join ( [
+ self._tree_to_str ( n, r, level+1 ) for r, n in root.items()
+ ] )
+ return "%s%s {\n%s%s}\n" % ( indent, name, extra, indent )
+ elif level == 1:
+ # non-nested config entry
+ return "\n%s%s = '%s'\n\n" % ( var_indent, name, root )
else:
return "%s%s = '%s'\n" % ( var_indent, name, root )
# --- end of _tree_to_str (...) ---