8 of 9 submenu items of the "Help" menu fail when selected.
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Inkscape |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Inksape 0.46 on Win XP Home SP3
8 of 9 submenu items of the "Help" menu fail when selected.
What looks like a command window briefly flashes on screen and then disappears with no message or results after clicking:
Help>Inkscape Manual
Help>Keys and Mouse Reference
Help>Ask Us a Question
Help>Command Line Options
Help>FAQ
Help>New in This Version
Help>Report a Bug
Help>SVG 1.1 Specification
The Help>Tutorials all work fine, and Help>About Memory and Help>About Inkscape also work.
The window that briefly flashes looks similar to the python startup of Effects>Text>Loren Ipsum which works fine.
Alvin Penner (apenner) wrote : | #1 |
John Adams (geartooth) wrote : | #2 |
The first suggestion fails when executing the command:
C:\Program Files\Inkscape\
The command responds:
'python' is not recognized as an internal or external command,
operable program or batch file.
and no web page opens.
But executing the command:
C:\Program Files\Inkscape\
successfully opens the FAQ wiki web page in firefox.
The rest of the 8 files that begin with webbrowser_... and end with .py also work correctly when executed without 'python' in the command.
I have not tried exit message trapping yet.
Alvin Penner (apenner) wrote : | #3 |
- do you have Python installed separately, independently of Inkscape ?
- it might be worthwhile to put the python directory into the PATH, so the PATH contains something like C:\Program Files\Inkscape\
John Adams (geartooth) wrote : | #4 |
Yes, python is installed separately and independently.
Putting either the independent python directory or the inkscape\Python into the PATH does not work.
Alvin Penner (apenner) wrote : | #5 |
in that case about the only suggestion I have is to trap the exit messages using inkscapec.exe as mentioned above.
however, I should mention that these menu items have been rewritten since the release of 0.46 so they are now all generated by a single python file, and this problem may not exist in the development version.
John Adams (geartooth) wrote : | #6 |
inkscapec.exe does not capture any exit messages.
From a command prompt, running:
C:\Program Files\Inkscape\
will start up inkscape normally, but 8 of 9 still fail as in my first post without any message appearing in the command prompt.
Closing the inkscape application also leaves no message in the command prompt, just a new ready prompt C:\Program Files\Inkscape> waiting for the next command.
Alvin Penner (apenner) wrote : | #7 |
- hmm, very strange, in view of the fact that Lorem Ipsum works.
- just for curiosity, which version of Python had you previously installed, (Inkscape is using version 2.5) ?
- what makes these Help items unique is that they use the import modules webbrowser and threading, which typically would not be used by the other Python extensions.
John Adams (geartooth) wrote : | #8 |
Version of python is:
Python 2.5 (r25:51908, Sep 19 2006, 09:52:17) [MSC v.1310 32 bit (Intel)] on win32
John Adams (geartooth) wrote : | #9 |
additionally:
I just tried the precompiled dev build Inkscape20697-
the same 8 of 9 help menu items fail in exactly the same way in this build.
Alvin Penner (apenner) wrote : | #10 |
very strange; in that case the only thing I can think of is the browser, would it be possible to try this with IE as the default browser?
John Adams (geartooth) wrote : | #11 |
the same 8 of 9 failures seen with default set to firefox 3.0.6
are still failing in default set to IE 7.0.5730.11
and still failing ib default set to safari 3.2.1 (525.27.1)
Alvin Penner (apenner) wrote : | #12 |
in that case, it would be worthwhile to go back to the path setup:
either the path C:\Program Files\Inkscape\
or the path C:\Python25\
should be declared in the path command.
In either case, it should be possible to go into any directory anywhere, and type in the word "python" and have it execute normally.
It should also be possible to go into the directory C:\Program Files\Inkscape\
python webbrowser_faq.py (or whatever the name of the appropriate .py file is)
and have it execute as well. I normally define the path in the \autoexec.bat file, but there are other ways of doing this, depending on your preference.
Lawrence (annon0m0s) wrote : | #13 |
I can confirm that this is happening on Windows Vista Inkscape 0.46 and Inkscape 0.47pre0, built Jul 2 2009. I don't know how long this has been a problem but only noticed it when trying to get the help in 0.47pre0. In both cases a command window opens quickly, perhaps a message is written to the window then the window is closed quickly so no error message is left on the screen. To try to get an error message .46 I opened a command window c:\program files\inkscape\
Inkscape 0.47 final should not be released without working help menus.
Alvin Penner (apenner) wrote : | #14 |
does the DOS command
launch_
run, if you omit the word 'python' ?
Lawrence (annon0m0s) wrote : | #15 |
Running "launch_
I also tried on 0.46 the InkCL.py InkCL.bat to try and capture any output error messages but nothing showed up. That could have happened because the Help related items are opened in another window.
The python Extensions do work. ex running 0.47pre0 create square, object to path, Extension-> Add Nodes, Extension-> Jitter. The Add Nodes and Jitter both work fine.
Alvin Penner (apenner) wrote : | #16 |
yes, what makes these help menu items unique is the fact that they use the python modules 'webbrowser' and 'threading', which I have never seen used elsewhere, so I have no experience with them. Unfortunately, I cannot reproduce this problem on my system, Windows XP. I have python 2.6 installed separately, but the version number is not relevant, I had no problems with python 2.5 either.
tags: | added: extensions-plugins |
Lawrence (annon0m0s) wrote : | #17 |
hi,
This bug still exists in Inkscape 0.47pre4 , built Oct 12 2009 on Windows Vista. This needs to be fixed because users need to be able to get a response when they select the Help-> Inkscape Manual. Of course it is somewhat ironic that the Help-> Report a Bug does not work. A dos window does open to start a python command but it closes quickly and there is no browser window with help.
su_v (suv-lp) wrote : | #18 |
@Lawrence - what is your default browser (system wide default - don't know the win32 specific term)?
Lawrence (annon0m0s) wrote : | #19 |
My default browser is Firefox 3.5.3. The official help window says "Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3" but I am using Windows Vista. Window's Internet Explorer is also installed but is not the default browser.
Lawrence (annon0m0s) wrote : | #20 |
This bug is still happening in 0.47 release "Inkscape 0.47 r22583, built Nov 21 2009". The help menu really needs to work because otherwise new users will stop using inkscape.
Alvin Penner (apenner) wrote : | #21 |
would you be willing to perform a temporary experiment to try to locate the source of the problem? I am attaching a modified version of the file launch_
I am hoping this will tell us where the crash occurred.
Alvin Penner (apenner) wrote : | #22 |
- helpbug.PNG Edit (41.1 KiB, image/png)
when I use this file I get two separate message windows as shown in the attached figure, and then the appropriate web site loads.
Lawrence (annon0m0s) wrote : | #23 |
- screen print of msg dialog. Edit (19.8 KiB, image/png)
Renaming the original launch_
Alvin Penner (apenner) wrote : | #24 |
thanks, that helps a lot. It looks as if the python code ran essentially to completion before the crash occurred. The problem is either related to threading or the webbrowser import, both of which are unique to this extension.
would you be willing to try one more experiment, this one is not destructive:
- open a DOS window, perhaps using Start->Run and typing in the command 'cmd'
- type the command : python
- type the command : import webbrowser
- type the command : webbrowser.open("http://
- type the command : exit()
on my machine this leads to a new browser window opening with Inkscape help.
attached is a trace of what my DOS window looked like after doing this.
.......
C:\>python
Python 2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import webbrowser
>>> webbrowser.open("http://
True
>>> exit()
Lawrence (annon0m0s) wrote : | #25 |
hi, I renamed the original launch_
C:\Users\X>python
Python 2.6.4 (r264:75708, Oct 26 2009, 08:23:19) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import webbrowser
>>> webbrowser.open("http://
True
>>> exit()
C:\Users\X>
When I changed to the Inkscape directory and rerun the commands this is the output. Notice that the python version is ever so slightly different than your version. Mine is 2.5 Sept 2006 but yours is 2.5.2 Apr 2007. The browser does open up with the correct page.
c:\Program Files\Inkscape0
Python 2.5 (r25:51908, Sep 19 2006, 09:52:17) [MSC v.1310 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import webbrowser
>>> webbrowser.open("http://
True
>>>
The Inkscape menu help->keys & mouse reference does not open a browser window.
Lawrence (annon0m0s) wrote : | #26 |
This might help some to figuring out the cause of the problem. I made a copy of launch_
#!/usr/bin/env python
import webbrowser, threading
from optparse import OptionParser
print 'starting'
class VisitWebSiteWit
def __init__(self):
print 'inside init'
parser = OptionParser()
print 'end of init'
def run(self):
print 'start of run url=' + str(self.
print 'end of run'
print 'after class def'
vwswli = VisitWebSiteWit
vwswli.start()
print 'after thread started'
webbrowser.open("http://
Alvin Penner (apenner) wrote : | #27 |
- launch_webbrowser.py Edit (917 bytes, text/x-python)
I am somewhat concerned about the Python version 2.5. I have installed Inkscape 0.47 r22583 (Nov 21 2009) both from a .7z file and also from an .exe file and in both cases I get Python version 2.5.1, not 2.5.
I am attaching a new version of the launch_webbrowser file. Could you run this from inside Inkscape using the Inkscape menu? It will explicitly report the Python version as well as give one extra line of output after running the webbrowser command. My sample output is attached below, obtained when I run this from inside Inkscape. If your Inkscape reports version 2.5 here, I would suggest re-installing Inkscape.
.......
2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit (Intel)]
after thread
{'url': 'http://
before run
after run
Lawrence (annon0m0s) wrote : | #28 |
Instead of doing a screen print a copy / paste of the message output is easier and more readable. This time there is a traceback!
Python is definitely version 2.5. I tried going to the Inkscape\python directory and directly running python
2.5 (r25:51908, Sep 19 2006, 09:52:17) [MSC v.1310 32 bit (Intel)]
after thread
{'url': 'http://
before run
Exception in thread Thread-1 (most likely raised during interpreter shutdown):
Traceback (most recent call last):
File "C:\Program Files\Inkscape0
File "C:\Program Files\Inkscape0
<type 'exceptions.
Running inkscape\python.exe directly
Python 2.5 (r25:51908, Sep 19 2006, 09:52:17) [MSC v.1310 32 bit (Intel)] on win
32
Type "help", "copyright", "credits" or "license" for more information.
>>> import platform
>>> import sys
>>> print platform.
2.5.0
>>> print sys.version[:3]
2.5
>>> print "sys.exec_prefix: "+str(sys.
sys.exec_prefix: C:\Program Files\Inkscape0
>>> print "sys.prefix: "+str(sys.prefix)
sys.prefix: C:\Program Files\Inkscape0
>>>
I will uninstall inkscape and reinstall it. I had downloaded the win32 exe from sourceforge so I expect it to be correct. Thanks for your help. I'll post what happens after the reinstall.
Lawrence (annon0m0s) wrote : | #29 |
Uninstalled inkscape, rebooted, reinstalled from Inkscape-0.47-3.exe downloaded from sourceforge Nov 26, put in the most recent launch_
2.5 (r25:51908, Sep 19 2006, 09:52:17) [MSC v.1310 32 bit (Intel)]
after thread
{'url': 'http://
before run
Exception in thread Thread-1 (most likely raised during interpreter shutdown):
Traceback (most recent call last):
File "C:\Program Files\Inkscape\
File "C:\Program Files\Inkscape\
File "C:\Program Files\Inkscape\
<type 'exceptions.
Alvin Penner (apenner) wrote : | #30 |
Inkscape does not contain python 2.5, it contains python 2.5.1. For example on my machine this is what I get when I interrogate the Inkscape directory.
D:\Program Files\Inkscape\
Volume in drive D is MAIN
Volume Serial Number is 1706-18D7
Directory of D:\Program Files\Inkscape\
05/08/2008 09:50 AM 24,064 python.exe
and in the Inkscape directory itself I have a python.dll file as follows
Directory of D:\Program Files\Inkscape
05/08/2008 09:50 AM 2,113,536 python25.dll
could you confirm that your python.exe is identical to this? This is from Inkscape 0.47 r22583 (Nov 21 2009)
If your Python.exe file is different from this, could you attach it?
Alvin Penner (apenner) wrote : | #31 |
it is possible that you may be running a different version of python than the one that came with Inkscape. In my case Inkscape is in the directory D:\Program Files\Inkscape\. When I run the Help menu extension, then I get the DOS window popup that says (very briefly) 'D:\Program Files\Inkscape\
Could you confirm that the directory it shows in this popup is identical to the directory that Inkscape is installed in?
Lawrence (annon0m0s) wrote : | #32 |
- from inkscape\python Edit (9.0 KiB, application/zip)
hi. The version of Inkscape from the about screen is "Inkscape 0.47 r22583, built Nov 21 2009".
C:\Program Files\Inkscape\
Volume in drive C is S3A6022D501
Volume Serial Number is 3015-4496
Directory of C:\Program Files\Inkscape\
08/05/2008 07:50 AM 24,064 python.exe
08/05/2008 07:50 AM 24,576 pythonw.exe
C:\Program Files\Inkscape>dir python*
Volume in drive C is S3A6022D501
Volume Serial Number is 3015-4496
Directory of C:\Program Files\Inkscape
27/11/2009 05:48 PM <DIR> python
08/05/2008 07:50 AM 2,113,536 python25.dll
When I can read the directory on dos window, it is referring to the inkscape python. The uninstalled 047 was in a slightly different named directory than the current 047 and both dos windows were correctly referring to their own python. Even though the python.exe is the same size I have attached a zipped copy of it.
Alvin Penner (apenner) wrote : | #33 |
- yes, that is definitely the same python.exe as I have. I did a file compare, fc, command on it.
- so if you go to the directory C:\Program Files\Inkscape\
I get
D:\Program Files\Inkscape\
Python 2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit (Intel)] on win32
Lawrence (annon0m0s) wrote : | #34 |
As mentioned earlier but redone just in case:
C:\Program Files\Inkscape\
Python 2.5 (r25:51908, Sep 19 2006, 09:52:17) [MSC v.1310 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> print 'sys.version_info =', sys.version_info
sys.version_info = (2, 5, 0, 'final', 0)
>>> print 'sys.version =', repr(sys.version)
sys.version = '2.5 (r25:51908, Sep 19 2006, 09:52:17) [MSC v.1310 32 bit (Intel)]'
Lawrence (annon0m0s) wrote : | #35 |
Also I tried opening a dos window 'set PYTHONPATH="dummy" ' and starting inkscape.exe from the command line. Still the same problem.
Lawrence (annon0m0s) wrote : | #36 |
I just downloaded Inkscape-
2.5 (r25:51908, Sep 19 2006, 09:52:17) [MSC v.1310 32 bit (Intel)]
after thread
2.5
sys.exec_prefix: C:\ltattrie\
{'url': 'http://
before run
Exception in thread Thread-1 (most likely raised during interpreter shutdown):
Traceback (most recent call last):
File "C:\ltattrie\
File "C:\ltattrie\
<type 'exceptions.
Alvin Penner (apenner) wrote : | #37 |
well, I'm not sure what to suggest. The first thing is to go to Control Panel, Add/Remove programs to confirm that Python 2.5 does not exist and confirm that whatever you have is newer then 2.5.
Also you can go to the directory \Python25\include\ and open the file patchlevel.h to confirm that what you have is newer than 2.5. Also I would do a global search for python.exe using a command like dir/s \python.exe and if there are multiple versions of this file then rename every single one of them to be something else and then confirm that python no longer runs from inkscape, and then re-enable the python.exe in the directory C:\Program Files\Inkscape\
Alvin Penner (apenner) wrote : | #38 |
incidentally the date on my patchlevel.h file is April 18, 2007, which coincides with the date that Python reports. If your file is older than that, then I would re-install Python, just to be sure.
Lawrence (annon0m0s) wrote : | #39 |
Issue resolved for me. The help -> Inkscape manual window and help ->key binding open up browser tabs. Thank you very much for your time and knowledge.
While using Explorer the mouse was moved over Inkscape\python.dll so a popup said the dll was something like version 2.5.11. So where was the version 2.5.0? http://
I had looked through python bugs fix comments for version 2.5.1 but did not find anything that seemed like it would have fixed this problem so that had left me skeptical that going up a .0.1 upgrade would help. But it did resolve my problem. Thanks again.
Most recent Inkscape pic created:
http://
Alvin Penner (apenner) wrote : | #40 |
good to hear! yes, I had forgotten about python25.dll in the \windows\system32\ directory. Certainly if there was an older version of it around, that may well have been the problem.
so, is there any objection if I mark this as Invalid, simply so that it gets taken off the list of things to do?
Lawrence (annon0m0s) wrote : | #41 |
I've marked it invalid. Thanks again.
Changed in inkscape: | |
status: | New → Invalid |
It might be worthwhile to try to run this from a DOS command prompt, to see where the problem lies. share\extension s\ wiki.inkscape. org/wiki/ index.php/ FAQ
- open up DOS with the command cmd
- change to the directory C:\Program Files\Inkscape\
- execute the command : python webbrowser_faq.py
- this should bring up a webbrowser which should attempt to connect to the URL : http://
The URLs for the various items you are trying can be found in 8 files that begin with webbrowser_... and end with .py.
If the above procedure works, then it might be worthwhile to try to trap the Inkscape exit messages in DOS using the methods outlined at http:// kaioa.com/ node/42 or http:// kaioa.com/ node/63