Anonymous avatar Anonymous committed 93bae72

handling default for ask()

Comments (0)

Files changed (1)

     def ask(self, prompt, default=None, starting=None):
         if starting is None:
             starting = ''
-        return call('input("%s", "%s")' % (prompt, starting))
+        if default is not None:
+            prompt = prompt + ('[%s] ' % default)
+        result = call('input("%s", "%s")' % (prompt, starting))
+        if default is not None and result == '':
+            return default
+        return result
 
     def ask_values(self, prompt, values, default=None, starting=None):
         if len(values) < 14:
             if 'cancel' in values:
                 return 'cancel'
             return
-        if not answer:
+        if default is not None and not answer:
             return default
         if answer.isdigit() and 0 <= int(answer) < len(values):
             return values[int(answer)]
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.