qtconsole ipython widget's execute_file fails if filename contains spaces or quotes #755

Closed
jdmarch opened this Issue Sep 2, 2011 · 3 comments

Projects

None yet

3 participants

@jdmarch
jdmarch commented Sep 2, 2011

(All platforms)

This routine is already a hack, I think only necessary because of remaining issues with backslash handling in Windows, but while it's here, is there any reason not to simply escape any double quotes in the filename (for non-Windows platforms) and wrap the whole thing in double quotes (for all platforms)?

@fperez
Member
fperez commented Dec 6, 2011

On master, this works for me in both the terminal and the qt console:

In [10]: d a\ b
total 4
-rwxr-xr-x 1 fperez 187 2011-12-06 03:03 argv.py*

In [11]: run a\ b/argv.py
argv: ['a b/argv.py']
My PID is: 5547
my name is: __main__

are you still seeing the problem? If so, on which platforms?

@jdmarch jdmarch added a commit to jdmarch/ipython that referenced this issue Dec 8, 2011
@jdmarch jdmarch BUG: Issue #755 qt IPythonWidget.execute_file fails if filename conta…
…ins single and double quotes
ebfa946
@jdmarch
jdmarch commented Dec 8, 2011

Sorry, should have updated this issue after commits.

  1. AFAICT, qtconsole's IPythonWidget.execute_file is not used anywhere in the IPython-qtconsole application. It is available for use in applications which incorporate a qtconsole.
  2. Commits 3ccb8ee and 03159d0 resolved all but an extreme edge case (a filename containing both single and double quotes).
  3. PR #1122 should resolve that final case. Not sure why I was hesitant to make this change originally.
@jdmarch
jdmarch commented Dec 8, 2011

Making this last fix did reveal what appears to be a very minor bug in %run: issue #1123

@jdmarch jdmarch added a commit that referenced this issue Dec 12, 2011
@jdmarch jdmarch BUG: Issue #755 qt IPythonWidget.execute_file fails if filename conta…
…ins single and double quotes
edf5961
@minrk minrk added a commit that closed this issue Dec 12, 2011
@minrk minrk Merge PR #1122 (IPythonWidget.execute_file)
Fixes escaped filename in IPythonWidget.execute_file, when it contains
spaces and/or quotes.

closes #755
closes #1122
b24c9d2
@minrk minrk closed this in b24c9d2 Dec 12, 2011
@mattvonrocketstein mattvonrocketstein pushed a commit to mattvonrocketstein/ipython that referenced this issue Nov 3, 2014
@jdmarch jdmarch BUG: Issue #755 qt IPythonWidget.execute_file fails if filename conta…
…ins single and double quotes
82c0d35
@mattvonrocketstein mattvonrocketstein pushed a commit to mattvonrocketstein/ipython that referenced this issue Nov 3, 2014
@minrk minrk Merge PR #1122 (IPythonWidget.execute_file)
Fixes escaped filename in IPythonWidget.execute_file, when it contains
spaces and/or quotes.

closes #755
closes #1122
5925257
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment