Loading ...
Sorry, an error occurred while loading the content.
 

Re: New release

Expand Messages
  • Peter Heslin
    ... I have no idea. I didn t contribute to that page of the wiki, and I never read it closely. I think that information is wrong. I use color-theme.el to
    Message 1 of 26 , Jul 28, 2004
      On 2004-07-28, drkm <darkman_spam@...> wrote:
      > Peter Heslin <usenet@...> writes:
      >
      > > http://www.emacswiki.org/cgi-bin/wiki/NxmlMode
      >
      > Excerpt :
      >
      > 'Note' the colorization (font-lock) won't work if you change the
      > emacs colors.
      >
      > What is the problem ?

      I have no idea. I didn't contribute to that page of the wiki, and I
      never read it closely. I think that information is wrong. I use
      color-theme.el to change colors and I have never had any problem with
      nxml-mode's font-locking. Maybe it was an old bug. Do you want to
      remove that statement from the wiki?

      Peter
    • drkm
      ... Sorry. You said The latter is probably all wrong, since I wrote it. It confused me. ... Well, I don t know. I never heard about such a problem. And
      Message 2 of 26 , Jul 28, 2004
        Peter Heslin <usenet@...> writes:

        > On 2004-07-28, drkm <darkman_spam@...> wrote:

        >> Peter Heslin <usenet@...> writes:

        >> > http://www.emacswiki.org/cgi-bin/wiki/NxmlMode

        >> Excerpt :

        >> 'Note' the colorization (font-lock) won't work if you change the
        >> emacs colors.

        >> What is the problem ?

        > I have no idea. I didn't contribute to that page of the wiki,

        Sorry. You said "The latter is probably all wrong, since I wrote
        it." It confused me.

        > and I
        > never read it closely. I think that information is wrong. I use
        > color-theme.el to change colors and I have never had any problem with
        > nxml-mode's font-locking. Maybe it was an old bug. Do you want to
        > remove that statement from the wiki?

        Well, I don't know. I never heard about such a problem. And the
        page contains nothing about the problem but the sentence above. So if
        anybody knows if it's a problem currently, probably it's a good idea,
        yes.

        --drkm, en recherche d'un stage : http://www.fgeorges.org/ipl/stage.html
      • James Clark
        ... font-lock won t work properly out of the box if you customize Emacs to use a dark background. This is because the defface definitions I use only have
        Message 3 of 26 , Jul 28, 2004
          > > http://www.emacswiki.org/cgi-bin/wiki/NxmlMode
          >
          > Excerpt :
          >
          > 'Note' the colorization (font-lock) won't work if you change the
          > emacs colors.
          >
          > What is the problem ?

          font-lock won't work properly out of the box if you customize Emacs to
          use a dark background. This is because the defface definitions I use
          only have entries for the light background case. I need to figure out a
          nice default color scheme for a dark background and add it to the
          defface definitions.

          James
          --
          To send me mail, replace auth-only by public in the from address.
        • James Clark
          ... Thanks. I ll add those. Could I suggest making a little web page for nxml-script with just a couple of sentences explaining what it does? It s nice to
          Message 4 of 26 , Jul 28, 2004
            On Wed, 2004-07-28 at 16:43, Peter Heslin wrote:

            > Here are some links that might be useful:
            > http://www.emacswiki.org/cgi-bin/wiki/NxmlMode
            > http://www.emacswiki.org/cgi-bin/wiki/NxmlModeForXHTML

            Thanks. I'll add those.

            Could I suggest making a little web page for nxml-script with just a
            couple of sentences explaining what it does? It's nice to have an HTML
            page to link to, rather than having to link directly to the .el file.

            James
            --
            To send me mail, replace auth-only by public in the from address.
          • Peter Heslin
            ... I forgot to include that link. Here it is: http://www.emacswiki.org/cgi-bin/wiki/NxmlScript Peter
            Message 5 of 26 , Jul 29, 2004
              On 2004-07-29, James Clark <jjc@...> wrote:
              > Could I suggest making a little web page for nxml-script with just a
              > couple of sentences explaining what it does? It's nice to have an HTML
              > page to link to, rather than having to link directly to the .el file.

              I forgot to include that link. Here it is:
              http://www.emacswiki.org/cgi-bin/wiki/NxmlScript

              Peter
            • drkm
              ... I forgot I modified nXML faces. I use a dark background, and Font Lock work, but as you said, all the colors are found in the default face ;-( Here is
              Message 6 of 26 , Jul 29, 2004
                James Clark <jjc@...> writes:

                >> > http://www.emacswiki.org/cgi-bin/wiki/NxmlMode

                >> Excerpt :

                >> 'Note' the colorization (font-lock) won't work if you change the
                >> emacs colors.

                >> What is the problem ?

                > font-lock won't work properly out of the box if you customize Emacs to
                > use a dark background. This is because the defface definitions I use
                > only have entries for the light background case. I need to figure out a
                > nice default color scheme for a dark background and add it to the
                > defface definitions.

                I forgot I modified nXML faces. I use a dark background, and Font
                Lock work, but as you said, all the colors are found in the default
                face ;-(

                Here is what I have in my config-nxml.el (what I have is quite more
                complex, but I think it give an idea) :

                (defvar drkm-nxml:light-blue-color (if window-system
                "#D2D2FF"
                "blue"))
                (defvar drkm-nxml:dark-blue-color "#8A8ACB")
                (defvar drkm-nxml:green-color "#75CA75")

                (set-face-attribute 'nxml-delimited-data-face nil
                :foreground drkm-nxml:dark-blue-color)
                (set-face-attribute 'nxml-name-face nil
                :foreground drkm-nxml:green-color)
                (set-face-attribute 'nxml-ref-face nil
                :foreground drkm-nxml:light-blue-color)
                (set-face-attribute 'nxml-delimiter-face nil
                :foreground drkm-nxml:light-blue-color)

                (copy-face font-lock-comment-face
                'nxml-comment-content-face)
                (copy-face 'nxml-delimiter-face
                'nxml-attribute-colon-face)
                (copy-face font-lock-variable-name-face
                'nxml-attribute-local-name-face)
                (copy-face 'nxml-namespace-attribute-value-face
                'nxml-attribute-prefix-face)
                (copy-face 'nxml-delimiter-face
                'nxml-attribute-value-delimiter-face)

                Because there are a few base faces, it is easy to modify nXML faces
                to work properly. Something like this may be usefull, to have nXML
                font locking works out of the box :

                --- nxml-mode.el.SAVE 2004-07-29 14:00:12.000000000 +0200
                +++ nxml-mode.el 2004-07-29 14:00:30.000000000 +0200
                @@ -210,19 +210,28 @@
                ;; (which we use by default for text), so we use it for attribute
                ;; values, which are similar to text.

                -(defconst nxml-light-blue-color "#9292C9")
                -(defconst nxml-dark-blue-color "#3A3A7B")
                -(defconst nxml-green-color "#257A25")
                +(defconst nxml-light-bg-light-blue-color "#9292C9")
                +(defconst nxml-light-bg-dark-blue-color "#3A3A7B")
                +(defconst nxml-light-bg-green-color "#257A25")
                +(defconst nxml-dark-bg-light-blue-color (if window-system "#D2D2FF" "blue"))
                +(defconst nxml-dark-bg-dark-blue-color "#8A8ACB")
                +(defconst nxml-dark-bg-green-color "#75CA75")

                (defface nxml-delimited-data-face
                - `((((class color) (background light)) (:foreground ,nxml-dark-blue-color)))
                + `((((class color) (background light))
                + (:foreground ,nxml-light-bg-dark-blue-color))
                + (((class color) (background dark))
                + (:foreground ,nxml-dark-bg-dark-blue-color)))
                "Face used to highlight data enclosed between delimiters.
                By default, this is inherited by `nxml-attribute-value-face'
                and `nxml-processing-instruction-content-face'."
                :group 'nxml-highlighting-faces)

                (defface nxml-name-face
                - `((((class color) (background light)) (:foreground ,nxml-green-color)))
                + `((((class color) (background light))
                + (:foreground ,nxml-light-bg-green-color))
                + (((class color) (background dark))
                + (:foreground ,nxml-dark-bg-green-color)))
                "Face used to highlight various names.
                This includes element and attribute names, processing
                instruction targets and the CDATA keyword in a CDATA section.
                @@ -230,13 +239,19 @@
                :group 'nxml-highlighting-faces)

                (defface nxml-ref-face
                - `((((class color) (background light)) (:foreground ,nxml-light-blue-color)))
                + `((((class color) (background light))
                + (:foreground ,nxml-light-bg-light-blue-color))
                + (((class color) (background dark))
                + (:foreground ,nxml-dark-bg-light-blue-color)))
                "Face used to highlight character and entity references.
                This is not used directly, but only via inheritance by other faces."
                :group 'nxml-highlighting-faces)

                (defface nxml-delimiter-face
                - `((((class color) (background light)) (:foreground ,nxml-light-blue-color))
                + `((((class color) (background light))
                + (:foreground ,nxml-light-bg-light-blue-color))
                + (((class color) (background dark))
                + (:foreground ,nxml-dark-bg-light-blue-color))
                (t (:bold t)))
                "Face used to highlight delimiters.
                This is not used directly, but only via inheritance by other faces."

                --drkm, en recherche d'un stage : http://www.fgeorges.org/ipl/stage.html
              • Sidnei da Silva
                Anyone knows if this patch got included in the new release? http://groups.yahoo.com/group/emacs-nxml-mode/message/422 -- Sidnei da Silva
                Message 7 of 26 , Sep 6, 2004
                  Anyone knows if this patch got included in the new release?

                  http://groups.yahoo.com/group/emacs-nxml-mode/message/422

                  --
                  Sidnei da Silva <sidnei@...>
                  http://awkly.org - dreamcatching :: making your dreams come true
                  http://www.enfoldsystems.com
                  http://plone.org/about/team#dreamcatcher

                  <glyph> warner: you want to port twisted to PyMite?
                  <warner> now *that* would be entertaining..
                  <Nafai> ...for various definitions of entertaining
                • James Clark
                  ... No. I decided the current indenting code was a total mess and needed a rewrite, which has been done in the 20040908 release that I have just announced.
                  Message 8 of 26 , Sep 8, 2004
                    On Mon, 2004-09-06 at 18:19, Sidnei da Silva wrote:
                    > Anyone knows if this patch got included in the new release?
                    >
                    > http://groups.yahoo.com/group/emacs-nxml-mode/message/422

                    No. I decided the current indenting code was a total mess and needed a
                    rewrite, which has been done in the 20040908 release that I have just
                    announced.

                    James
                    --
                    To send me mail, replace auth-only by public in the from address.
                  • Sidnei da Silva
                    ... Does the new code result in the same effect as the patch? -- Sidnei da Silva http://awkly.org - dreamcatching :: making your dreams come
                    Message 9 of 26 , Sep 8, 2004
                      On Wed, Sep 08, 2004 at 05:06:37PM +0700, James Clark wrote:
                      | On Mon, 2004-09-06 at 18:19, Sidnei da Silva wrote:
                      | > Anyone knows if this patch got included in the new release?
                      | >
                      | > http://groups.yahoo.com/group/emacs-nxml-mode/message/422
                      |
                      | No. I decided the current indenting code was a total mess and needed a
                      | rewrite, which has been done in the 20040908 release that I have just
                      | announced.

                      Does the new code result in the same effect as the patch?

                      --
                      Sidnei da Silva <sidnei@...>
                      http://awkly.org - dreamcatching :: making your dreams come true
                      http://www.enfoldsystems.com
                      http://plone.org/about/team#dreamcatcher

                      news: gotcha
                    • James Clark
                      ... Similar effect. Why don t you try it and see? James -- To send me mail, replace auth-only by public in the from address.
                      Message 10 of 26 , Sep 8, 2004
                        On Wed, 2004-09-08 at 18:06, Sidnei da Silva wrote:
                        > On Wed, Sep 08, 2004 at 05:06:37PM +0700, James Clark wrote:
                        > | On Mon, 2004-09-06 at 18:19, Sidnei da Silva wrote:
                        > | > Anyone knows if this patch got included in the new release?
                        > | >
                        > | > http://groups.yahoo.com/group/emacs-nxml-mode/message/422
                        > |
                        > | No. I decided the current indenting code was a total mess and needed a
                        > | rewrite, which has been done in the 20040908 release that I have just
                        > | announced.
                        >
                        > Does the new code result in the same effect as the patch?

                        Similar effect. Why don't you try it and see?

                        James
                        --
                        To send me mail, replace auth-only by public in the from address.
                      • Sidnei da Silva
                        ... Seems to be equivalent, except it seems to ignore the xmlns attribute when identing. If you have a different attribute though, it will ident correctly.
                        Message 11 of 26 , Sep 8, 2004
                          On Wed, Sep 08, 2004 at 06:13:09PM +0700, James Clark wrote:
                          | > Does the new code result in the same effect as the patch?
                          |
                          | Similar effect. Why don't you try it and see?

                          Seems to be equivalent, except it seems to ignore the xmlns attribute
                          when identing. If you have a different attribute though, it will ident
                          correctly.

                          <html xmlns="http://www.w3.org/1999/xhtml"
                          xmlns:tal="http://xml.zope.org/namespaces/tal"
                          xmlns:metal="http://xml.zope.org/namespaces/metal"
                          xmlns:i18n="http://xml.zope.org/namespaces/i18n"
                          i18n:domain="plone">

                          <html bla="ble" xmlns="http://www.w3.org/1999/xhtml"
                          xmlns:tal="http://xml.zope.org/namespaces/tal"
                          xmlns:metal="http://xml.zope.org/namespaces/metal"
                          xmlns:i18n="http://xml.zope.org/namespaces/i18n"
                          i18n:domain="plone">

                          --
                          Sidnei da Silva <sidnei@...>
                          http://awkly.org - dreamcatching :: making your dreams come true
                          http://www.enfoldsystems.com
                          http://plone.org/about/team#dreamcatcher

                          <itamar> sex is not digital, it is analog
                        • James Clark
                          ... Try this: Index: nxml-mode.el =================================================================== RCS file: /usr/cvsroot/jclark/elisp/nxml-mode.el,v
                          Message 12 of 26 , Sep 8, 2004
                            On Wed, 2004-09-08 at 19:01, Sidnei da Silva wrote:
                            > On Wed, Sep 08, 2004 at 06:13:09PM +0700, James Clark wrote:
                            > | > Does the new code result in the same effect as the patch?
                            > |
                            > | Similar effect. Why don't you try it and see?
                            >
                            > Seems to be equivalent, except it seems to ignore the xmlns attribute
                            > when identing.

                            Try this:

                            Index: nxml-mode.el
                            ===================================================================
                            RCS file: /usr/cvsroot/jclark/elisp/nxml-mode.el,v
                            retrieving revision 1.120
                            diff -u -r1.120 nxml-mode.el
                            --- nxml-mode.el 8 Sep 2004 09:46:51 -0000 1.120
                            +++ nxml-mode.el 8 Sep 2004 13:04:57 -0000
                            @@ -1677,12 +1677,13 @@
                            (cond ((<= (point) xmltok-start)
                            (goto-char xmltok-start)
                            (setq off nxml-attribute-indent)
                            - (when xmltok-attributes
                            - (let* ((att (car xmltok-attributes))
                            - (start (xmltok-attribute-name-start att)))
                            - (when (< start pos)
                            - (goto-char start)
                            - (setq off 0)))))
                            + (let ((atts (xmltok-merge-attributes)))
                            + (when atts
                            + (let* ((att (car atts))
                            + (start (xmltok-attribute-name-start att)))
                            + (when (< start pos)
                            + (goto-char start)
                            + (setq off 0))))))
                            (t
                            (back-to-indentation))))
                            (+ (current-column) off)))
                            @@ -1692,7 +1693,7 @@
                            Otherwise return nil. START and END are the positions of the start
                            and end of the attribute value containing POS. This expects the
                            xmltok-* variables to be set up as by `xmltok-forward'."
                            - (let ((atts xmltok-attributes)
                            + (let ((atts (xmltok-merge-attributes))
                            att value-start value-end value-boundary)
                            (while atts
                            (setq att (car atts))
                            Index: xmltok.el
                            ===================================================================
                            RCS file: /usr/cvsroot/jclark/elisp/xmltok.el,v
                            retrieving revision 1.58
                            diff -u -r1.58 xmltok.el
                            --- xmltok.el 10 Aug 2004 01:12:13 -0000 1.58
                            +++ xmltok.el 8 Sep 2004 13:04:58 -0000
                            @@ -1877,6 +1877,32 @@
                            (cons (vector type start end)
                            xmltok-prolog-regions)))

                            +(defun xmltok-merge-attributes ()
                            + "Return a list merging `xmltok-attributes' and
                            'xmltok-namespace-attributes'.
                            +The members of the merged list are in order of occurrence in the
                            +document. The list may share list structure with `xmltok-attributes'
                            +and `xmltok-namespace-attributes'."
                            + (cond ((not xmltok-namespace-attributes)
                            + xmltok-attributes)
                            + ((not xmltok-attributes)
                            + xmltok-namespace-attributes)
                            + (t
                            + (let ((atts1 xmltok-attributes)
                            + (atts2 xmltok-namespace-attributes)
                            + merged)
                            + (while (and atts1 atts2)
                            + (cond ((< (xmltok-attribute-name-start (car atts1))
                            + (xmltok-attribute-name-start (car atts2)))
                            + (setq merged (cons (car atts1) merged))
                            + (setq atts1 (cdr atts1)))
                            + (t
                            + (setq merged (cons (car atts2) merged))
                            + (setq atts2 (cdr atts2)))))
                            + (setq merged (nreverse merged))
                            + (cond (atts1 (setq merged (nconc merged atts1)))
                            + (atts2 (setq merged (nconc merged atts2))))
                            + merged))))
                            +
                            ;;; Testing

                            (defun xmltok-forward-test ()

                            --
                            To send me mail, replace auth-only by public in the from address.
                          • Bruce D'Arcus
                            FWIW, I like the new xml menu. ... Bruce
                            Message 13 of 26 , Sep 8, 2004
                              FWIW, I like the new xml menu.

                              I'm curious, James, what you have in mind with this in the TODO:

                              > Take advantage of a:documentation.

                              Bruce
                            • James Clark
                              ... The sort of thing I had in mind was that if point was on an element name or attribute name, there should be a command which displays the documentation in
                              Message 14 of 26 , Sep 8, 2004
                                On Wed, 2004-09-08 at 21:49, Bruce D'Arcus wrote:
                                > FWIW, I like the new xml menu.
                                >
                                > I'm curious, James, what you have in mind with this in the TODO:
                                >
                                > > Take advantage of a:documentation.

                                The sort of thing I had in mind was that if point was on an element name
                                or attribute name, there should be a command which displays the
                                documentation in the schema for that element or attribute. Implementing
                                this would require fixing the schema parser to preserve annotations.

                                James
                                --
                                To send me mail, replace auth-only by public in the from address.
                              • Bruce D'Arcus
                                ... That was my guess. Great idea! Bruce
                                Message 15 of 26 , Sep 8, 2004
                                  On Sep 8, 2004, at 11:19 AM, James Clark wrote:

                                  > The sort of thing I had in mind was that if point was on an element
                                  > name
                                  > or attribute name, there should be a command which displays the
                                  > documentation in the schema for that element or attribute.

                                  That was my guess. Great idea!

                                  Bruce
                                • Sebastian Rahtz
                                  I think I am going mad, can someone else check my logic? The Debian nxml-mode package puts .el files in /usr/share/emacs/site-lisp/nxml-mode, and .elc files in
                                  Message 16 of 26 , Sep 10, 2004
                                    I think I am going mad, can someone else check my logic?

                                    The Debian nxml-mode package puts .el files in
                                    /usr/share/emacs/site-lisp/nxml-mode,
                                    and .elc files in /usr/share/emacs21/site-lisp/nxml-mode. The startup
                                    file first adds
                                    /usr/share/emacs21/site-lisp/nxml-mode to the load-path, and then
                                    /usr/share/emacs/site-lisp/nxml-mode.
                                    This means that the first directory to be found is
                                    /usr/share/emacs/site-lisp/nxml-mode.
                                    When you load-library (eg) "nxml-mode", you therefore get the .el file,
                                    because
                                    it is found first. .elc files are never loaded.

                                    I have checked my current emacs, and all the Debian emacs packages
                                    always load
                                    source versions of elisp, instead of .elc ones.

                                    Have I missed some vital trick?

                                    Sebastian
                                  • Rohan Lloyd
                                    ... I saw your first email yesterday, and thought I d let someone else who actually uses Debian answer, but nobody has, so... Despite not using Debian, I have
                                    Message 17 of 26 , Sep 10, 2004
                                      On 10 Sep 2004, at 10:04 PM, Sebastian Rahtz wrote:

                                      > I think I am going mad, can someone else check my logic?
                                      >
                                      > The Debian nxml-mode package puts .el files in
                                      > /usr/share/emacs/site-lisp/nxml-mode,
                                      > and .elc files in /usr/share/emacs21/site-lisp/nxml-mode. The startup
                                      > file first adds
                                      > /usr/share/emacs21/site-lisp/nxml-mode to the load-path, and then
                                      > /usr/share/emacs/site-lisp/nxml-mode.
                                      > This means that the first directory to be found is
                                      > /usr/share/emacs/site-lisp/nxml-mode.
                                      > When you load-library (eg) "nxml-mode", you therefore get the .el file,
                                      > because
                                      > it is found first. .elc files are never loaded.
                                      >
                                      > I have checked my current emacs, and all the Debian emacs packages
                                      > always load
                                      > source versions of elisp, instead of .elc ones.
                                      >
                                      > Have I missed some vital trick?

                                      I saw your first email yesterday, and thought I'd let someone else who
                                      actually uses Debian answer, but nobody has, so...

                                      Despite not using Debian, I have written several emacs packages
                                      (including nxml-mode) for Fink which is based on Debian (and hopefully
                                      not too dissimilar)

                                      Here is a summary of what should happen in Fink emacs packages

                                      • .el files are installed in emacs/site-lisp/<package>
                                      • as part of the post-install script these are compiled into
                                      <flavor>/site-lisp/<package> for each flavor of emacs installed
                                      • <flavor>/site-lisp/<package> is automatically added to the load-path
                                      by <flavor>/site-lisp/subdirs.el
                                      • emacs/site-lisp is in load-path, but subdirs are not

                                      This means that only the compiled .elc files are in load-path.

                                      I've had a quick look at the debian package, and it manually adds both
                                      emacs/site-lisp/nxml-mode and <flavor>/site-lisp/nxml-mode to
                                      load-path.

                                      Does Debian have <flavor>/site-lisp/sibdirs.el file? If so, it should
                                      not be necessary to add the nxml-mode subdir to load-path

                                      Normally, emacs/site-lisp/<package> would not be added to load-path.
                                      However in the nxml-mode, the char-names directory needs to be found
                                      relative to load-path. There are 2 approaches to this:

                                      • Add emacs/site-lisp/nxml-mode to load-path
                                      • Copy the required files to under the <flavor> dir which is already
                                      in the load-path

                                      The Debian package chose the first option, which seems OK. However
                                      according to the emacs-policy:

                                      9) Emacs lisp load path.

                                      At a minimum, each emacs must have the following directories in the
                                      given order in their load path:

                                      /etc/<flavor>
                                      /etc/emacs
                                      /usr/local/share/emacs/<upstream>/site-lisp
                                      /usr/local/share/emacs/site-lisp
                                      /usr/share/emacs/<flavor>/site-lisp
                                      /usr/share/emacs/site-lisp

                                      where <upstream> is the normal emacs upstream version number for
                                      the relevant flavor like 20.2 or 19.34.

                                      Emacs add-on packages may not modify load-path directly. They must
                                      use (debian-pkg-add-load-path-item <path>). This function will
                                      make sure that their additions end up in the right place -- before
                                      the emacs system directories, but after the /usr/local/
                                      directories. Also, add-on packages will need to either check
                                      (fboundp 'debian-pkg-add-load-path-item) before calling this
                                      function, or add a dependency on emacsen-common (>= 1.4.14).

                                      So it would appear that it should be using
                                      debian-pkg-add-load-path-item to do this.

                                      In summary, I would:

                                      • Check if it really is necessary to add <flavor>/site-lisp/nxml-mode
                                      to load-path
                                      • Change startup file to use debian-pkg-add-load-path-item
                                      • Check that the load-path now has <flavor> directory in path before
                                      the other.

                                      I hope this helps, and I apoligise if it's not applicable to Debian.

                                      --
                                      Rohan Lloyd
                                    • Sebastian Rahtz
                                      Thanks, Rohan, that does actually help. You are confirming my feeling that this is a packaging error. It appears to be shared by some other Debian packages
                                      Message 18 of 26 , Sep 10, 2004
                                        Thanks, Rohan, that does actually help. You are confirming my feeling
                                        that this is a packaging error. It appears to be shared by some other Debian
                                        packages like semantic and speedbar.

                                        Sebastian
                                      Your message has been successfully submitted and would be delivered to recipients shortly.