From: ejetzer on
For a school project, I'm trying to make a minimalist web browser, and
I chose to use Tk as the rendering toolkit. I made my parser classes
into Tkinter canvases, so that I would only have to call pack and
mainloop functions in order to display the rendering. Right now, two
bugs are affecting the program :
1) When running the full app¹, which fetches a document and then
attempts to display it, I get a TclError :
_tkinter.TclError: bad window path name "{Extensible
Markup Language (XML) 1.0 (Fifth Edition)}"
2) When running only the parsing and rendering test², I get a big
window to open, with nothing displayed. I am not quite familiar with
Tk, so I have no idea of why it acts that way.

1: webbrowser.py
2: xmlparser.py
From: ejetzer on
On 5 avr, 12:36, ejetzer <ejet...(a)gmail.com> wrote:
> For a school project, I'm trying to make a minimalist web browser, and
> I chose to use Tk as the rendering toolkit. I made my parser classes
> into Tkinter canvases, so that I would only have to call pack and
> mainloop functions in order to display the rendering. Right now, two
> bugs are affecting the program :
> 1) When running the full app¹, which fetches a document and then
> attempts to display it, I get a TclError :
>                  _tkinter.TclError: bad window path name "{Extensible
> Markup Language (XML) 1.0 (Fifth Edition)}"
> 2) When running only the parsing and rendering test², I get a big
> window to open, with nothing displayed. I am not quite familiar with
> Tk, so I have no idea of why it acts that way.
>
> 1: webbrowser.py
> 2: xmlparser.py

I just realized I haven't included the Google Code project url :
http://code.google.com/p/smally-browser/source/browse/#svn/trunk
From: Lie Ryan on
On 04/06/10 02:38, ejetzer wrote:
> On 5 avr, 12:36, ejetzer <ejet...(a)gmail.com> wrote:
>> For a school project, I'm trying to make a minimalist web browser, and
>> I chose to use Tk as the rendering toolkit. I made my parser classes
>> into Tkinter canvases, so that I would only have to call pack and
>> mainloop functions in order to display the rendering. Right now, two
>> bugs are affecting the program :
>> 1) When running the full app�, which fetches a document and then
>> attempts to display it, I get a TclError :
>> _tkinter.TclError: bad window path name "{Extensible
>> Markup Language (XML) 1.0 (Fifth Edition)}"
>> 2) When running only the parsing and rendering test�, I get a big
>> window to open, with nothing displayed. I am not quite familiar with
>> Tk, so I have no idea of why it acts that way.
>>
>> 1: webbrowser.py
>> 2: xmlparser.py
>
> I just realized I haven't included the Google Code project url :
> http://code.google.com/p/smally-browser/source/browse/#svn/trunk

Check your indentation xmlparser.py in line 63 to 236, are they supposed
to be correct?
From: ejetzer on
On 5 avr, 22:32, Lie Ryan <lie.1...(a)gmail.com> wrote:
> On 04/06/10 02:38, ejetzer wrote:
>
>
>
> > On 5 avr, 12:36, ejetzer <ejet...(a)gmail.com> wrote:
> >> For a school project, I'm trying to make a minimalist web browser, and
> >> I chose to use Tk as the rendering toolkit. I made my parser classes
> >> into Tkinter canvases, so that I would only have to call pack and
> >> mainloop functions in order to display the rendering. Right now, two
> >> bugs are affecting the program :
> >> 1) When running the full app¹, which fetches a document and then
> >> attempts to display it, I get a TclError :
> >>                  _tkinter.TclError: bad window path name "{Extensible
> >> Markup Language (XML) 1.0 (Fifth Edition)}"
> >> 2) When running only the parsing and rendering test², I get a big
> >> window to open, with nothing displayed. I am not quite familiar with
> >> Tk, so I have no idea of why it acts that way.
>
> >> 1: webbrowser.py
> >> 2: xmlparser.py
>
> > I just realized I haven't included the Google Code project url :
> >http://code.google.com/p/smally-browser/source/browse/#svn/trunk
>
> Check your indentation xmlparser.py in line 63 to 236, are they supposed
> to be correct?

Yes, these are functions that are used exclusively inside the feed
function, so I decided to restrict their namespace. I just realized it
could be confusing, so I placed them in global namsespace.