Re: XML tag completion script

From: phayz <russelldicken....at.gmail.com>
Date: Wed, 14 Apr 2010 16:01:37 -0700 (PDT)

On Apr 15, 8:58 am, phayz <russelldicken....at.gmail.com> wrote:
> On Apr 14, 4:22 pm, "briancsch....at.gmail.com" <briancsch....at.gmail.com>
> wrote:
>
>
>
>
>
> > New version uploaded here:http://caladbolg.net/textadeptwiki/index.php?n=Main.Xmlcomplete
>
> > It now runs from the beginning of the document to the cursor's current
> > line. This fixes a few bugs by itself. I also fixed the lua pattern
> > because it wasn't properly handling some tags.
>
> > I do, however, refuse to make it handle <br>. It should be <br/>.
> > <br></br> is, therefore, a valid output of my script. Other silly
> > behaviors are possible (read: likely) bugs.
>
> > - Brian
>
> > On Apr 12, 8:05 pm, phayz <russelldicken....at.gmail.com> wrote:
>
> > > On Apr 13, 6:35 am, phayz <russelldicken....at.gmail.com> wrote:
>
> > > > > On Apr 11, 3:41 pm, phayz <russelldicken....at.gmail.com> wrote:
>
> > > > > > On Mar 24, 12:59 pm, phayz <russelldicken....at.gmail.com> wrote:
>
> > > > > > > On Mar 17, 1:10 pm, Brian Schott <briancsch....at.gmail.com> wrote:
>
> > > > > > > > The line that says "require 'common.xmlcomplete'" is what ties the
> > > > > > > > commands to the functions themselves. For this to work you need to place
> > > > > > > > thexmlcomplete.lua in a location that can be found by Textadept. I put
> > > > > > > > mine in ~/.textadept/modules/common (Thus the "common" in the require
> > > > > > > > statement My argument being that this code is common toxml, html, and
> > > > > > > > javadoc comments)
>
> > > > > > > > - Brian
>
> > > > > > > > On 03/15/10 20:00, phayz wrote:
>
> > > > > > > > > I am still unsure of how I enable this script but I need to RTFM a
> > > > > > > > > little more, also peek and poke around Textadept's directories.
>
> > > > > > > > > As I understand I have a Lua script, which needs to be run when
> > > > > > > > > certain key sequences are pressed, and the latter is where the
> > > > > > > > > "commands.lua forxml(placed in ~/.textadept/modules/xml/
> > > > > > > > > commands.lua)" comes into play). What I am still struggling with is
> > > > > > > > > knowing how these two are linked.
>
> > > > > > > > > Regards,
>
> > > > > > > > > Russell Dickenson (AKA phayz)
>
> > > > > > > Brian,
>
> > > > > > > You have been a great help to myself, other TA users also, I expect.
> > > > > > > Could you please help me just a little more? I need a dummies guide to
> > > > > > > enabling this functionality because I have tried many combinations and
> > > > > > > permutations and just can't seem to get it right.
>
> > > > > > > Regards,
>
> > > > > > > Russell Dickenson
>
> > > > > > Brian et al,
>
> > > > > > I am seeing odd behaviour from the xmlcomplete script. While editing a
> > > > > > hypertext document I added a new "<h3>" tag and instead of the closing
> > > > > > "</h3>" being inserted, a "</td>" was inserted instead. I tried
> > > > > > throughout the document to insert several different tags and in most
> > > > > > cases, an "</td>" tag was inserted. The exception was when I put the
> > > > > > cursor at the very end of the file and typed in an "<head>" tag, when
> > > > > > the correct closing tag of "</head>" was inserted. Thinking that the
> > > > > > problem was with this document I created a new sample hypertext file
> > > > > > and inserted a few standard tags. In this file I couldn't recreate the
> > > > > > problem, so it looked to be the original document. I then opened one
> > > > > > of the Textadept manual files, in hypertext format, and again did some
> > > > > > tests. Again, Textadept was inserting the wrong tag - most often a "</
> > > > > > td>", sometimes a "</p>" tag. As an example, I open
> > > > > > "1_Introduction.html", go to the blank line after the unordered list
> > > > > > for "<h1>Manual</h1>", type in a "<h3>" tag and a "</p>" tag is
> > > > > > automatically inserted.
>
> > > > > > This is occurring under both Linux (with latest official Textadept
> > > > > > release) and Windows (with Textadept 2.2 beta).
>
> > > > > > I'll do a little more investigation and see what I can find.
>
> > > > > > Regards,
>
> > > > > > Russell Dickenson
>
> > > > > > > On Apr 13, 3:21 am, "briancsch....at.gmail.com" <briancsch....at.gmail.com> wrote:
> > > > > > > That's a bug. I'll have to figure out what triggers it. Probably the
> > > > > > > lua pattern not detecting tags correctly. The script scans through the
> > > > > > > file and builds a stack, pushing when an open tag is found, popping
> > > > > > > when a close tag is found, and doing nothing when a tag like <this/>
> > > > > > > is found. Using the auto-complete looks at the stack and inserts a
> > > > > > > closing tag for whatever is on top. I won't be able to work on this
> > > > > > > much until Tuesday evening.
>
> > > > > > > - Brian
>
> > > > Brian,
>
> > > > Thanks for your feedback. I have done some diagnostics but haven't yet
> > > > found the reason for the error. My troubleshooting method is very
> > > > crude, so it may take me a while.
>
> > > > Regarding when you can work on this, please take your time. I'm sure
> > > > that, like me, you have many other priorities. TheXMLautocompletion
> > > > script is a great addition to Textadept but life will carry on without
> > > > it. Thanks again for all your help with this and other aspects of
> > > > Textadept.
>
> > > > Regards,
>
> > > > Russell Dickenson
>
> > > I have done some further testing but still don't know for certain the
> > > cause of the problem. My current theory is that you're expecting the
> > > buffer's contents to be validXML/HTML with all tags opened and closed
> > > (if required) in the correct sequence. Of course this is not
> > > unreasonable, since this is a basic requirement for the validity of
> > > such formatting methods. However let's say the document is a work in
> > > progress and that the author makes several mistakes with tags. It
> > > seems that the script then gets confused.
>
> > > I have also used a similar non-official plugin for gedit, named
> > > xmlhelper.py (written, obviously, in Python). If I remember correctly,
> > > that script started searching the active buffer/file BACKWARD through
> > > the file, starting from where the caret was located. It looked for the
> > > most recently opened tag and inserted into the active buffer/file the
> > > matching closing tag. I'm honestly not sure which is the "best" method
> > > but I thought it was worth mentioning. No doubt this is one situation
> > > where there are many methods of achieving the same goal.
>
> > > Regards,
>
> > > Russell Dickenson
>
> Loud cheers of joy could be heard far and wide, as the masses
> celebrated the very gift which Brian of Schott had bestowed upon them.
> Ne'er more were invalid and unwanted tags of markup to darken the sky
> and make the very ground tremblr. Many Centaurs did play upon their
> plan flutes, and many Unicorns did gambol upon the meadow. Even as he
> passed, the men donned their hats and the fair maidens did swooneth if
> his gaze did fall upon them.
>
> Or in other words, thanks, thanks, thanks. I agree with your approach
> with this script. It's to make life a little easier while using
> Textadept. The validity or not of anyXMLor HTML file is the user's
> responsibility.
>
> For me it's now on to make use of more scripts created by generous
> people like yourself.
>
> Regards,
>
> Russell Dickenson

D'oh! Obviously the script I need most desperately is a spell checking
script!

Regards,

Russell Dickenson
Received on Wed 14 Apr 2010 - 19:01:37 EDT

This archive was generated by hypermail 2.2.0 : Thu 08 Mar 2012 - 11:38:55 EST