Show More
@@ -222,20 +222,23 b' class IPythonQtConsoleApp(BaseIPythonApplication):' | |||||
222 | super(IPythonQtConsoleApp, self).parse_command_line(argv) |
|
222 | super(IPythonQtConsoleApp, self).parse_command_line(argv) | |
223 | if argv is None: |
|
223 | if argv is None: | |
224 | argv = sys.argv[1:] |
|
224 | argv = sys.argv[1:] | |
225 |
|
||||
226 | self.kernel_argv = list(argv) # copy |
|
225 | self.kernel_argv = list(argv) # copy | |
227 | # kernel should inherit default config file from frontend |
|
226 | # kernel should inherit default config file from frontend | |
228 | self.kernel_argv.append("--KernelApp.parent_appname='%s'"%self.name) |
|
227 | self.kernel_argv.append("--KernelApp.parent_appname='%s'"%self.name) | |
229 | # Scrub frontend-specific flags |
|
228 | # Scrub frontend-specific flags | |
230 | for a in argv: |
|
|||
231 | if a.startswith('-') and a.lstrip('-') in qt_flags: |
|
|||
232 | self.kernel_argv.remove(a) |
|
|||
233 | swallow_next = False |
|
229 | swallow_next = False | |
|
230 | was_flag = False | |||
|
231 | # copy again, in case some aliases have the same name as a flag | |||
|
232 | # argv = list(self.kernel_argv) | |||
234 | for a in argv: |
|
233 | for a in argv: | |
235 | if swallow_next: |
|
234 | if swallow_next: | |
236 | self.kernel_argv.remove(a) |
|
|||
237 | swallow_next = False |
|
235 | swallow_next = False | |
238 | continue |
|
236 | # last arg was an alias, remove the next one | |
|
237 | # *unless* the last alias has a no-arg flag version, in which | |||
|
238 | # case, don't swallow the next arg if it's also a flag: | |||
|
239 | if not (was_flag and a.startswith('-')): | |||
|
240 | self.kernel_argv.remove(a) | |||
|
241 | continue | |||
239 | if a.startswith('-'): |
|
242 | if a.startswith('-'): | |
240 | split = a.lstrip('-').split('=') |
|
243 | split = a.lstrip('-').split('=') | |
241 | alias = split[0] |
|
244 | alias = split[0] | |
@@ -244,6 +247,12 b' class IPythonQtConsoleApp(BaseIPythonApplication):' | |||||
244 | if len(split) == 1: |
|
247 | if len(split) == 1: | |
245 | # alias passed with arg via space |
|
248 | # alias passed with arg via space | |
246 | swallow_next = True |
|
249 | swallow_next = True | |
|
250 | # could have been a flag that matches an alias, e.g. `existing` | |||
|
251 | # in which case, we might not swallow the next arg | |||
|
252 | was_flag = alias in qt_flags | |||
|
253 | elif alias in qt_flags: | |||
|
254 | # strip flag, but don't swallow next, as flags don't take args | |||
|
255 | self.kernel_argv.remove(a) | |||
247 |
|
256 | |||
248 | def init_connection_file(self): |
|
257 | def init_connection_file(self): | |
249 | """find the connection file, and load the info if found. |
|
258 | """find the connection file, and load the info if found. |
General Comments 0
You need to be logged in to leave comments.
Login now